@charset "UTF-8";
/*
DEV NOTES
Any change I made to the settings I did as such.
The commented title such as 4. Base Typography
I then took whatever settings I adjusted and put them at the top of that section
then came a blank line break and the settings I did not change
*/
@import url("https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,600,700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Alice&family=EB+Garamond:ital,wght@0,400;0,600;1,400;1,600&display=swap");
/* this is the root font size so now 1 rem equals 10px
	font-size: 10px;
  changing it to percentage allow for people with poor or
  limited eye sight to have a better
  experience when viewing website
  allows REMS to be a base of 10
  1.6rem - 1.6rem * 10px = 16px.
*/
:root {
  --border-grey: 2px solid #D1D4D9;
  --border-transparent: 2px solid transparent;
}

html, body {
  overflow-x: hidden;
}

blockquote {
  border: 1px solid #E2E4E7;
  font-style: italic;
  font-size: 2rem;
}
blockquote cite {
  font-style: normal;
  margin-top: 2rem;
}
blockquote cite:first-line {
  font-size: 1.6rem;
  color: #424A55;
  font-weight: 900;
}

/**
 * Foundation for Sites
 * Version 6.6.3
 * https://get.foundation
 * Licensed under MIT Open Source
 */
@media print, screen and (min-width: 40em) {
  .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 {
  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;
  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 {
  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] {
  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=40em&large=64em&xlarge=75em&slarge=80em&xxlarge=90em";
}

html {
  box-sizing: border-box;
  font-size: 10px;
}

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

body {
  margin: 0;
  padding: 0;
  background: #FFFFFF;
  font-family: "EB Garamond", sans-serif;
  font-weight: normal;
  line-height: 1.5;
  color: #424A55;
  -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 {
  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;
          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: 2rem;
  padding-left: 2rem;
  max-width: 120rem;
  margin-left: auto;
  margin-right: auto;
}
@media print, screen and (min-width: 40em) {
  .grid-container {
    padding-right: 1rem;
    padding-left: 1rem;
  }
}
.grid-container.fluid {
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}
@media print, screen and (min-width: 40em) {
  .grid-container.fluid {
    padding-right: 1rem;
    padding-left: 1rem;
  }
}
.grid-container.full {
  padding-right: 0;
  padding-left: 0;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.grid-x {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
}

.cell {
  -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-flex: 1 1 0px;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px;
}
.cell.shrink {
  -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: 40em) {
  .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;
  }
}
.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-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: 40em) {
  .grid-x > .medium-auto {
    -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-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-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-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%;
  }
}
.grid-margin-x:not(.grid-x) > .cell {
  width: auto;
}

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

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

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

.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: 40em) {
  .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%;
  }
}
.grid-margin-x.small-up-1 > .cell {
  width: calc(100% - 4rem);
}

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

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

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

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

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

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

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

@media print, screen and (min-width: 40em) {
  .grid-margin-x.small-up-1 > .cell {
    width: calc(100% - 2rem);
  }

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

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

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

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

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

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

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

  .grid-margin-x.medium-up-1 > .cell {
    width: calc(100% - 2rem);
  }

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

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

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

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

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

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

  .grid-margin-x.medium-up-8 > .cell {
    width: calc(12.5% - 2rem);
  }
}
@media print, screen and (min-width: 64em) {
  .grid-margin-x.large-up-1 > .cell {
    width: calc(100% - 2rem);
  }

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

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

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

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

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

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

  .grid-margin-x.large-up-8 > .cell {
    width: calc(12.5% - 2rem);
  }
}
.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: 40em) {
  .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%;
  }
}

.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: 40em) {
  .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: 40em) {
  .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: 40em) {
  .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 print, screen and (min-width: 40em) {
  .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 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;
  }
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media print, screen and (min-width: 40em) {
  .medium-offset-0 {
    margin-left: 0%;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .grid-margin-x > .medium-offset-11 {
    margin-left: calc(91.6666666667% + 1rem);
  }
}
@media print, screen and (min-width: 64em) {
  .large-offset-0 {
    margin-left: 0%;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .grid-margin-x > .large-offset-11 {
    margin-left: calc(91.6666666667% + 1rem);
  }
}
.grid-y {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: column nowrap;
      -ms-flex-flow: column nowrap;
          flex-flow: column nowrap;
}
.grid-y > .cell {
  height: auto;
  max-height: 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: 40em) {
  .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;
  }
}
.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-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: 40em) {
  .grid-y > .medium-auto {
    -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-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-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-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%;
  }
}

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

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

.grid-frame {
  overflow: hidden;
  position: relative;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -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-flex;
  display: -ms-flexbox;
  display: flex;
  -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: 40em) {
  .medium-grid-frame {
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -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-flex;
    display: -ms-flexbox;
    display: flex;
    -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-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-flex;
    display: -ms-flexbox;
    display: flex;
    -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;
  }
}
.grid-y.grid-frame {
  width: auto;
  overflow: hidden;
  position: relative;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  height: 100vh;
}
@media print, screen and (min-width: 40em) {
  .grid-y.medium-grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -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-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: 40em) {
  .cell .grid-y.medium-grid-frame {
    height: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .cell .grid-y.large-grid-frame {
    height: 100%;
  }
}

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

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

@media print, screen and (min-width: 40em) {
  .grid-margin-y.medium-grid-frame {
    height: calc(100vh + 2rem);
  }
}
@media print, screen and (min-width: 64em) {
  .grid-margin-y.large-grid-frame {
    height: calc(100vh + 2rem);
  }
}
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.8;
  text-rendering: optimizeLegibility;
}

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

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

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

h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
  font-family: "EB Garamond", sans-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: #E2E4E7;
}

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

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

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

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

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

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

@media print, screen and (min-width: 64em) {
  h1, .h1 {
    font-size: 4rem;
  }

  h2, .h2 {
    font-size: 3rem;
  }

  h3, .h3 {
    font-size: 2.4rem;
  }

  h4, .h4 {
    font-size: 2.2rem;
  }

  h5, .h5 {
    font-size: 2rem;
  }

  h6, .h6 {
    font-size: 1.6rem;
  }
}
a {
  line-height: inherit;
  color: #1B4E74;
  text-decoration: none;
  cursor: pointer;
}
a:hover, a:focus {
  color: #174364;
}
a img {
  border: 0;
}

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

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

li {
  font-size: inherit;
}

ul {
  margin-left: 4.25rem;
  list-style-type: none;
}

ol {
  margin-left: 4.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: 900;
}

blockquote {
  margin: 0 0 1rem;
  padding: 4rem 5rem 4rem 5rem;
  border-left: 1px solid #E2E4E7;
}
blockquote, blockquote p {
  line-height: 1.8;
  color: #1B4E74;
}

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

figure {
  margin: 0;
}

kbd {
  margin: 0;
  padding: 0.2rem 0.4rem 0;
  background-color: #E2E4E7;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  color: #242424;
}

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

.lead {
  font-size: 12.5px;
  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;
}

.cite-block, cite {
  display: block;
  color: #ABAEB4;
  font-size: 1.4rem;
}
.cite-block:before, cite:before {
  content: "";
}

.code-inline, code {
  border: 1px solid #E2E4E7;
  background-color: #E2E4E7;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: normal;
  color: #242424;
  display: inline;
  max-width: 100%;
  word-wrap: break-word;
  padding: 0.2rem 0.5rem 0.1rem;
}

.code-block {
  border: 1px solid #E2E4E7;
  background-color: #E2E4E7;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: normal;
  color: #242424;
  display: block;
  overflow: auto;
  white-space: pre;
  padding: 1rem;
  margin-bottom: 1.5rem;
}

.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: 40em) {
  .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;
  }
}
.show-for-print {
  display: none !important;
}

@media print {
  * {
    background: transparent !important;
    color: black !important;
    color-adjust: economy;
    box-shadow: none !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 #ABAEB4;
    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, .wp-block-button .wp-block-button__link {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 1rem 0;
  padding: 0.85em 1em;
  border: 1px solid transparent;
  border-radius: 0;
  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;
}
[data-whatinput=mouse] .button, [data-whatinput=mouse] .wp-block-button .wp-block-button__link, .wp-block-button [data-whatinput=mouse] .wp-block-button__link {
  outline: 0;
}
.button.tiny, .wp-block-button .tiny.wp-block-button__link {
  font-size: 0.6rem;
}
.button.small, .wp-block-button .small.wp-block-button__link {
  font-size: 0.75rem;
}
.button.large, .wp-block-button .large.wp-block-button__link {
  font-size: 1.25rem;
}
.button.expanded, .wp-block-button .expanded.wp-block-button__link {
  display: block;
  width: 100%;
  margin-right: 0;
  margin-left: 0;
}
.button, .wp-block-button .wp-block-button__link, .button.disabled, .button[disabled], .button.disabled:hover, .button[disabled]:hover, .button.disabled:focus, .button[disabled]:focus {
  background-color: transparent;
  color: #424A55;
}
.button:hover, .wp-block-button .wp-block-button__link:hover, .button:focus, .wp-block-button .wp-block-button__link:focus {
  background-color: rgba(0, 0, 0, 0);
  color: #424A55;
}
.button.primary, .wp-block-button .primary.wp-block-button__link, .button.primary.disabled, .button.primary[disabled], .button.primary.disabled:hover, .button.primary[disabled]:hover, .button.primary.disabled:focus, .button.primary[disabled]:focus {
  background-color: #242424;
  color: #424A55;
}
.button.primary:hover, .wp-block-button .primary.wp-block-button__link:hover, .button.primary:focus, .wp-block-button .primary.wp-block-button__link:focus {
  background-color: #1d1d1d;
  color: #424A55;
}
.button.secondary, .wp-block-button .secondary.wp-block-button__link, .button.secondary.disabled, .button.secondary[disabled], .button.secondary.disabled:hover, .button.secondary[disabled]:hover, .button.secondary.disabled:focus, .button.secondary[disabled]:focus {
  background-color: #F7F7F7;
  color: #242424;
}
.button.secondary:hover, .wp-block-button .secondary.wp-block-button__link:hover, .button.secondary:focus, .wp-block-button .secondary.wp-block-button__link:focus {
  background-color: #c6c6c6;
  color: #242424;
}
.button.success, .wp-block-button .success.wp-block-button__link, .button.success.disabled, .button.success[disabled], .button.success.disabled:hover, .button.success[disabled]:hover, .button.success.disabled:focus, .button.success[disabled]:focus {
  background-color: #3adb76;
  color: #242424;
}
.button.success:hover, .wp-block-button .success.wp-block-button__link:hover, .button.success:focus, .wp-block-button .success.wp-block-button__link:focus {
  background-color: #22bb5b;
  color: #242424;
}
.button.warning, .wp-block-button .warning.wp-block-button__link, .button.warning.disabled, .button.warning[disabled], .button.warning.disabled:hover, .button.warning[disabled]:hover, .button.warning.disabled:focus, .button.warning[disabled]:focus {
  background-color: #ffae00;
  color: #242424;
}
.button.warning:hover, .wp-block-button .warning.wp-block-button__link:hover, .button.warning:focus, .wp-block-button .warning.wp-block-button__link:focus {
  background-color: #cc8b00;
  color: #242424;
}
.button.alert, .wp-block-button .alert.wp-block-button__link, .button.alert.disabled, .button.alert[disabled], .button.alert.disabled:hover, .button.alert[disabled]:hover, .button.alert.disabled:focus, .button.alert[disabled]:focus {
  background-color: #cc4b37;
  color: #242424;
}
.button.alert:hover, .wp-block-button .alert.wp-block-button__link:hover, .button.alert:focus, .wp-block-button .alert.wp-block-button__link:focus {
  background-color: #a53b2a;
  color: #242424;
}
.button.hollow, .wp-block-button .hollow.wp-block-button__link, .wp-block-button.is-style-outline .wp-block-button__link, .button.hollow:hover, .button.hollow:focus, .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, .wp-block-button .hollow.wp-block-button__link, .wp-block-button.is-style-outline .wp-block-button__link, .button.hollow.disabled, .button.hollow[disabled], .button.hollow.disabled:hover, .button.hollow[disabled]:hover, .button.hollow.disabled:focus, .button.hollow[disabled]:focus {
  border: 1px solid transparent;
  color: transparent;
}
.button.hollow:hover, .wp-block-button .hollow.wp-block-button__link:hover, .wp-block-button.is-style-outline .wp-block-button__link:hover, .button.hollow:focus, .wp-block-button .hollow.wp-block-button__link:focus, .wp-block-button.is-style-outline .wp-block-button__link:focus {
  border-color: rgba(0, 0, 0, 0);
  color: rgba(0, 0, 0, 0);
}
.button.hollow.primary, .wp-block-button .hollow.primary.wp-block-button__link, .wp-block-button.is-style-outline .primary.wp-block-button__link, .button.hollow.primary.disabled, .button.hollow.primary[disabled], .button.hollow.primary.disabled:hover, .button.hollow.primary[disabled]:hover, .button.hollow.primary.disabled:focus, .button.hollow.primary[disabled]:focus {
  border: 1px solid #242424;
  color: #242424;
}
.button.hollow.primary:hover, .wp-block-button .hollow.primary.wp-block-button__link:hover, .wp-block-button.is-style-outline .primary.wp-block-button__link:hover, .button.hollow.primary:focus, .wp-block-button .hollow.primary.wp-block-button__link:focus, .wp-block-button.is-style-outline .primary.wp-block-button__link:focus {
  border-color: #121212;
  color: #121212;
}
.button.hollow.secondary, .wp-block-button .hollow.secondary.wp-block-button__link, .wp-block-button.is-style-outline .secondary.wp-block-button__link, .button.hollow.secondary.disabled, .button.hollow.secondary[disabled], .button.hollow.secondary.disabled:hover, .button.hollow.secondary[disabled]:hover, .button.hollow.secondary.disabled:focus, .button.hollow.secondary[disabled]:focus {
  border: 1px solid #F7F7F7;
  color: #F7F7F7;
}
.button.hollow.secondary:hover, .wp-block-button .hollow.secondary.wp-block-button__link:hover, .wp-block-button.is-style-outline .secondary.wp-block-button__link:hover, .button.hollow.secondary:focus, .wp-block-button .hollow.secondary.wp-block-button__link:focus, .wp-block-button.is-style-outline .secondary.wp-block-button__link:focus {
  border-color: #7c7c7c;
  color: #7c7c7c;
}
.button.hollow.success, .wp-block-button .hollow.success.wp-block-button__link, .wp-block-button.is-style-outline .success.wp-block-button__link, .button.hollow.success.disabled, .button.hollow.success[disabled], .button.hollow.success.disabled:hover, .button.hollow.success[disabled]:hover, .button.hollow.success.disabled:focus, .button.hollow.success[disabled]:focus {
  border: 1px solid #3adb76;
  color: #3adb76;
}
.button.hollow.success:hover, .wp-block-button .hollow.success.wp-block-button__link:hover, .wp-block-button.is-style-outline .success.wp-block-button__link:hover, .button.hollow.success:focus, .wp-block-button .hollow.success.wp-block-button__link:focus, .wp-block-button.is-style-outline .success.wp-block-button__link:focus {
  border-color: #157539;
  color: #157539;
}
.button.hollow.warning, .wp-block-button .hollow.warning.wp-block-button__link, .wp-block-button.is-style-outline .warning.wp-block-button__link, .button.hollow.warning.disabled, .button.hollow.warning[disabled], .button.hollow.warning.disabled:hover, .button.hollow.warning[disabled]:hover, .button.hollow.warning.disabled:focus, .button.hollow.warning[disabled]:focus {
  border: 1px solid #ffae00;
  color: #ffae00;
}
.button.hollow.warning:hover, .wp-block-button .hollow.warning.wp-block-button__link:hover, .wp-block-button.is-style-outline .warning.wp-block-button__link:hover, .button.hollow.warning:focus, .wp-block-button .hollow.warning.wp-block-button__link:focus, .wp-block-button.is-style-outline .warning.wp-block-button__link:focus {
  border-color: #805700;
  color: #805700;
}
.button.hollow.alert, .wp-block-button .hollow.alert.wp-block-button__link, .wp-block-button.is-style-outline .alert.wp-block-button__link, .button.hollow.alert.disabled, .button.hollow.alert[disabled], .button.hollow.alert.disabled:hover, .button.hollow.alert[disabled]:hover, .button.hollow.alert.disabled:focus, .button.hollow.alert[disabled]:focus {
  border: 1px solid #cc4b37;
  color: #cc4b37;
}
.button.hollow.alert:hover, .wp-block-button .hollow.alert.wp-block-button__link:hover, .wp-block-button.is-style-outline .alert.wp-block-button__link:hover, .button.hollow.alert:focus, .wp-block-button .hollow.alert.wp-block-button__link:focus, .wp-block-button.is-style-outline .alert.wp-block-button__link:focus {
  border-color: #67251a;
  color: #67251a;
}
.button.clear, .wp-block-button .clear.wp-block-button__link, .button.clear:hover, .button.clear:focus, .button.clear.disabled, .button.clear.disabled:hover, .button.clear.disabled:focus, .button.clear[disabled], .button.clear[disabled]:hover, .button.clear[disabled]:focus {
  border-color: transparent;
  background-color: transparent;
}
.button.clear, .wp-block-button .clear.wp-block-button__link, .button.clear.disabled, .button.clear[disabled], .button.clear.disabled:hover, .button.clear[disabled]:hover, .button.clear.disabled:focus, .button.clear[disabled]:focus {
  color: transparent;
}
.button.clear:hover, .wp-block-button .clear.wp-block-button__link:hover, .button.clear:focus, .wp-block-button .clear.wp-block-button__link:focus {
  color: rgba(0, 0, 0, 0);
}
.button.clear.primary, .wp-block-button .clear.primary.wp-block-button__link, .button.clear.primary.disabled, .button.clear.primary[disabled], .button.clear.primary.disabled:hover, .button.clear.primary[disabled]:hover, .button.clear.primary.disabled:focus, .button.clear.primary[disabled]:focus {
  color: #242424;
}
.button.clear.primary:hover, .wp-block-button .clear.primary.wp-block-button__link:hover, .button.clear.primary:focus, .wp-block-button .clear.primary.wp-block-button__link:focus {
  color: #121212;
}
.button.clear.secondary, .wp-block-button .clear.secondary.wp-block-button__link, .button.clear.secondary.disabled, .button.clear.secondary[disabled], .button.clear.secondary.disabled:hover, .button.clear.secondary[disabled]:hover, .button.clear.secondary.disabled:focus, .button.clear.secondary[disabled]:focus {
  color: #F7F7F7;
}
.button.clear.secondary:hover, .wp-block-button .clear.secondary.wp-block-button__link:hover, .button.clear.secondary:focus, .wp-block-button .clear.secondary.wp-block-button__link:focus {
  color: #7c7c7c;
}
.button.clear.success, .wp-block-button .clear.success.wp-block-button__link, .button.clear.success.disabled, .button.clear.success[disabled], .button.clear.success.disabled:hover, .button.clear.success[disabled]:hover, .button.clear.success.disabled:focus, .button.clear.success[disabled]:focus {
  color: #3adb76;
}
.button.clear.success:hover, .wp-block-button .clear.success.wp-block-button__link:hover, .button.clear.success:focus, .wp-block-button .clear.success.wp-block-button__link:focus {
  color: #157539;
}
.button.clear.warning, .wp-block-button .clear.warning.wp-block-button__link, .button.clear.warning.disabled, .button.clear.warning[disabled], .button.clear.warning.disabled:hover, .button.clear.warning[disabled]:hover, .button.clear.warning.disabled:focus, .button.clear.warning[disabled]:focus {
  color: #ffae00;
}
.button.clear.warning:hover, .wp-block-button .clear.warning.wp-block-button__link:hover, .button.clear.warning:focus, .wp-block-button .clear.warning.wp-block-button__link:focus {
  color: #805700;
}
.button.clear.alert, .wp-block-button .clear.alert.wp-block-button__link, .button.clear.alert.disabled, .button.clear.alert[disabled], .button.clear.alert.disabled:hover, .button.clear.alert[disabled]:hover, .button.clear.alert.disabled:focus, .button.clear.alert[disabled]:focus {
  color: #cc4b37;
}
.button.clear.alert:hover, .wp-block-button .clear.alert.wp-block-button__link:hover, .button.clear.alert:focus, .wp-block-button .clear.alert.wp-block-button__link:focus {
  color: #67251a;
}
.button.disabled, .wp-block-button .disabled.wp-block-button__link, .button[disabled], .wp-block-button [disabled].wp-block-button__link {
  opacity: 0.25;
  cursor: not-allowed;
}
.button.dropdown::after, .wp-block-button .dropdown.wp-block-button__link::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, .wp-block-button .dropdown.hollow.wp-block-button__link::after, .wp-block-button.is-style-outline .dropdown.wp-block-button__link::after, .button.dropdown.clear::after, .wp-block-button .dropdown.clear.wp-block-button__link::after {
  border-top-color: transparent;
}
.button.dropdown.hollow.primary::after, .wp-block-button .dropdown.hollow.primary.wp-block-button__link::after, .wp-block-button.is-style-outline .dropdown.primary.wp-block-button__link::after, .button.dropdown.clear.primary::after, .wp-block-button .dropdown.clear.primary.wp-block-button__link::after {
  border-top-color: #242424;
}
.button.dropdown.hollow.secondary::after, .wp-block-button .dropdown.hollow.secondary.wp-block-button__link::after, .wp-block-button.is-style-outline .dropdown.secondary.wp-block-button__link::after, .button.dropdown.clear.secondary::after, .wp-block-button .dropdown.clear.secondary.wp-block-button__link::after {
  border-top-color: #F7F7F7;
}
.button.dropdown.hollow.success::after, .wp-block-button .dropdown.hollow.success.wp-block-button__link::after, .wp-block-button.is-style-outline .dropdown.success.wp-block-button__link::after, .button.dropdown.clear.success::after, .wp-block-button .dropdown.clear.success.wp-block-button__link::after {
  border-top-color: #3adb76;
}
.button.dropdown.hollow.warning::after, .wp-block-button .dropdown.hollow.warning.wp-block-button__link::after, .wp-block-button.is-style-outline .dropdown.warning.wp-block-button__link::after, .button.dropdown.clear.warning::after, .wp-block-button .dropdown.clear.warning.wp-block-button__link::after {
  border-top-color: #ffae00;
}
.button.dropdown.hollow.alert::after, .wp-block-button .dropdown.hollow.alert.wp-block-button__link::after, .wp-block-button.is-style-outline .dropdown.alert.wp-block-button__link::after, .button.dropdown.clear.alert::after, .wp-block-button .dropdown.clear.alert.wp-block-button__link::after {
  border-top-color: #cc4b37;
}
.button.arrow-only::after, .wp-block-button .arrow-only.wp-block-button__link::after {
  top: -0.1em;
  float: none;
  margin-left: 0;
}

a.button:hover, .wp-block-button a.wp-block-button__link:hover, a.button:focus, .wp-block-button a.wp-block-button__link: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;
  box-sizing: border-box;
  width: 100%;
  height: 4.2rem;
  margin: 0 0 1.6rem;
  padding: 0.8rem;
  border: 2px solid #FFFFFF;
  border-radius: 0;
  background-color: transparent;
  box-shadow: inset 0 1px 2px rgba(255, 255, 255, 0.1);
  font-family: inherit;
  font-size: 1.8rem;
  font-weight: 900;
  line-height: 1.5;
  color: #FFFFFF;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  -webkit-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 #FFFFFF;
  background-color: #FFFFFF;
  box-shadow: none;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
}

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

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

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

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

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

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

::placeholder {
  color: #FFFFFF;
}

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

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

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

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

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

.help-text {
  margin-top: -0.8rem;
  font-size: 1.8rem;
  font-style: italic;
  color: #FFFFFF;
}

.input-group {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin-bottom: 1.6rem;
  -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 #FFFFFF;
  background: #FFFFFF;
  color: #424A55;
  text-align: center;
  white-space: nowrap;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  -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-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-flex;
  display: -ms-flexbox;
  display: flex;
  -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;
              -ms-grid-row-align: stretch;
          align-self: stretch;
  height: auto;
  padding-top: 0;
  padding-bottom: 0;
  font-size: 1.8rem;
}

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

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

.fieldset {
  margin: 1.8rem 0;
  padding: 2rem;
  border: 1px solid #FFFFFF;
}
.fieldset legend {
  margin: 0;
  margin-left: -0.3rem;
  padding: 0 0.3rem;
}

select {
  height: 4.2rem;
  margin: 0 0 1.6rem;
  padding: 0.8rem;
  -webkit-appearance: none;
          appearance: none;
  border: 2px solid #FFFFFF;
  border-radius: 0;
  background-color: transparent;
  font-family: inherit;
  font-size: 1.8rem;
  font-weight: 900;
  line-height: 1.5;
  color: #FFFFFF;
  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%28171, 174, 180%29'></polygon></svg>");
  background-origin: content-box;
  background-position: right -1.6rem center;
  background-repeat: no-repeat;
  background-size: 9px 6px;
  padding-right: 2.4rem;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
}
@media screen and (min-width: 0\0 ) {
  select {
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAMBJREFUeNrEllsOhCAMRVszC9IlzU7KCmVHTJsoMWYMUtpyv9BgbuXQB5ZSdgBYYY4ycgBivk8KYFsQMfMiTTBP4o3nUzCKzOabLJbLy2/g31evGkAginR4/ZegKH5qX3bJCscA3t0x3kgO5tQFyhhFf50xRqFLbyMUNJQzgyjGS/wgCpvKqkRBpuWrE4V9d+1E4dPUXqIg107SQOE/2DRQxMwTDygIInVDET9T3lCoj/6j/VCmGjZOl2lKpZ8AAwDQP7zIimDGFQAAAABJRU5ErkJggg==");
  }
}
select:focus {
  outline: none;
  border: 1px solid #FFFFFF;
  background-color: #FFFFFF;
  box-shadow: none;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
}
select:disabled {
  background-color: #FFFFFF;
  cursor: not-allowed;
}
select::-ms-expand {
  display: none;
}
select[multiple] {
  height: auto;
  background-image: none;
}
select:not([multiple]) {
  padding-top: 0;
  padding-bottom: 0;
}

.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):-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.8rem;
  margin-bottom: 1.6rem;
  font-size: 1.2rem;
  font-weight: 900;
  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 #E2E4E7;
  border-bottom: 0;
  font-size: 1.2rem;
  line-height: 1;
  color: #242424;
}
:last-child:not(.is-active) > .accordion-title {
  border-bottom: 1px solid #E2E4E7;
  border-radius: 0 0 0 0;
}
.accordion-title:hover, .accordion-title:focus {
  background-color: #E2E4E7;
}
.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 #E2E4E7;
  border-bottom: 0;
  background-color: #FFFFFF;
  color: #424A55;
}
:last-child > .accordion-content:last-child {
  border-bottom: 1px solid #E2E4E7;
}

.accordion-menu li {
  width: 100%;
}
.accordion-menu a {
  padding: 0.7rem 1rem;
}
.accordion-menu .is-accordion-submenu a {
  padding: 0.7rem 1rem;
}
.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);
          transform: rotate(180deg);
  -webkit-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);
          transform: scaleY(-1);
  -webkit-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
}

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

.badge {
  display: inline-block;
  min-width: 2.1em;
  padding: 0.3em;
  border-radius: 50%;
  font-size: 0.6rem;
  text-align: center;
  background: #242424;
  color: #FFFFFF;
}
.badge.primary {
  background: #242424;
  color: #FFFFFF;
}
.badge.secondary {
  background: #F7F7F7;
  color: #242424;
}
.badge.success {
  background: #3adb76;
  color: #242424;
}
.badge.warning {
  background: #ffae00;
  color: #242424;
}
.badge.alert {
  background: #cc4b37;
  color: #FFFFFF;
}

.breadcrumbs {
  margin: 0 0 1rem 0;
  list-style: none;
}
.breadcrumbs::before, .breadcrumbs::after {
  display: table;
  content: " ";
  -webkit-flex-basis: 0;
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
}
.breadcrumbs::after {
  clear: both;
}
.breadcrumbs li {
  float: left;
  font-size: 1.1rem;
  color: #242424;
  cursor: default;
  text-transform: uppercase;
}
.breadcrumbs li:not(:last-child)::after {
  position: relative;
  margin: 0 0.75rem;
  opacity: 1;
  content: "/";
  color: #E2E4E7;
}
.breadcrumbs a {
  color: #242424;
}
.breadcrumbs a:hover {
  text-decoration: underline;
}
.breadcrumbs .disabled {
  color: #E2E4E7;
  cursor: not-allowed;
}

.button-group {
  margin-bottom: 1rem;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
.button-group::before, .button-group::after {
  display: table;
  content: " ";
  -webkit-flex-basis: 0;
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
}
.button-group::after {
  clear: both;
}
.button-group::before, .button-group::after {
  display: none;
}
.button-group .button, .button-group .wp-block-button .wp-block-button__link, .wp-block-button .button-group .wp-block-button__link {
  margin: 0;
  margin-right: 1px;
  margin-bottom: 1px;
  font-size: 0.9rem;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
.button-group .button:last-child, .button-group .wp-block-button .wp-block-button__link:last-child, .wp-block-button .button-group .wp-block-button__link:last-child {
  margin-right: 0;
}
.button-group.tiny .button, .button-group.tiny .wp-block-button .wp-block-button__link, .wp-block-button .button-group.tiny .wp-block-button__link {
  font-size: 0.6rem;
}
.button-group.small .button, .button-group.small .wp-block-button .wp-block-button__link, .wp-block-button .button-group.small .wp-block-button__link {
  font-size: 0.75rem;
}
.button-group.large .button, .button-group.large .wp-block-button .wp-block-button__link, .wp-block-button .button-group.large .wp-block-button__link {
  font-size: 1.25rem;
}
.button-group.expanded .button, .button-group.expanded .wp-block-button .wp-block-button__link, .wp-block-button .button-group.expanded .wp-block-button__link {
  -webkit-flex: 1 1 0px;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px;
  margin-right: 0;
}
.button-group.primary .button, .button-group.primary .wp-block-button .wp-block-button__link, .wp-block-button .button-group.primary .wp-block-button__link, .button-group.primary .button.disabled, .button-group.primary .button[disabled], .button-group.primary .button.disabled:hover, .button-group.primary .button[disabled]:hover, .button-group.primary .button.disabled:focus, .button-group.primary .button[disabled]:focus {
  background-color: #242424;
  color: #424A55;
}
.button-group.primary .button:hover, .button-group.primary .wp-block-button .wp-block-button__link:hover, .wp-block-button .button-group.primary .wp-block-button__link:hover, .button-group.primary .button:focus, .button-group.primary .wp-block-button .wp-block-button__link:focus, .wp-block-button .button-group.primary .wp-block-button__link:focus {
  background-color: #1d1d1d;
  color: #424A55;
}
.button-group.secondary .button, .button-group.secondary .wp-block-button .wp-block-button__link, .wp-block-button .button-group.secondary .wp-block-button__link, .button-group.secondary .button.disabled, .button-group.secondary .button[disabled], .button-group.secondary .button.disabled:hover, .button-group.secondary .button[disabled]:hover, .button-group.secondary .button.disabled:focus, .button-group.secondary .button[disabled]:focus {
  background-color: #F7F7F7;
  color: #242424;
}
.button-group.secondary .button:hover, .button-group.secondary .wp-block-button .wp-block-button__link:hover, .wp-block-button .button-group.secondary .wp-block-button__link:hover, .button-group.secondary .button:focus, .button-group.secondary .wp-block-button .wp-block-button__link:focus, .wp-block-button .button-group.secondary .wp-block-button__link:focus {
  background-color: #c6c6c6;
  color: #242424;
}
.button-group.success .button, .button-group.success .wp-block-button .wp-block-button__link, .wp-block-button .button-group.success .wp-block-button__link, .button-group.success .button.disabled, .button-group.success .button[disabled], .button-group.success .button.disabled:hover, .button-group.success .button[disabled]:hover, .button-group.success .button.disabled:focus, .button-group.success .button[disabled]:focus {
  background-color: #3adb76;
  color: #242424;
}
.button-group.success .button:hover, .button-group.success .wp-block-button .wp-block-button__link:hover, .wp-block-button .button-group.success .wp-block-button__link:hover, .button-group.success .button:focus, .button-group.success .wp-block-button .wp-block-button__link:focus, .wp-block-button .button-group.success .wp-block-button__link:focus {
  background-color: #22bb5b;
  color: #242424;
}
.button-group.warning .button, .button-group.warning .wp-block-button .wp-block-button__link, .wp-block-button .button-group.warning .wp-block-button__link, .button-group.warning .button.disabled, .button-group.warning .button[disabled], .button-group.warning .button.disabled:hover, .button-group.warning .button[disabled]:hover, .button-group.warning .button.disabled:focus, .button-group.warning .button[disabled]:focus {
  background-color: #ffae00;
  color: #242424;
}
.button-group.warning .button:hover, .button-group.warning .wp-block-button .wp-block-button__link:hover, .wp-block-button .button-group.warning .wp-block-button__link:hover, .button-group.warning .button:focus, .button-group.warning .wp-block-button .wp-block-button__link:focus, .wp-block-button .button-group.warning .wp-block-button__link:focus {
  background-color: #cc8b00;
  color: #242424;
}
.button-group.alert .button, .button-group.alert .wp-block-button .wp-block-button__link, .wp-block-button .button-group.alert .wp-block-button__link, .button-group.alert .button.disabled, .button-group.alert .button[disabled], .button-group.alert .button.disabled:hover, .button-group.alert .button[disabled]:hover, .button-group.alert .button.disabled:focus, .button-group.alert .button[disabled]:focus {
  background-color: #cc4b37;
  color: #242424;
}
.button-group.alert .button:hover, .button-group.alert .wp-block-button .wp-block-button__link:hover, .wp-block-button .button-group.alert .wp-block-button__link:hover, .button-group.alert .button:focus, .button-group.alert .wp-block-button .wp-block-button__link:focus, .wp-block-button .button-group.alert .wp-block-button__link:focus {
  background-color: #a53b2a;
  color: #242424;
}
.button-group.hollow .button, .wp-block-button.is-style-outline .button-group.wp-block-button__link .button, .button-group.hollow .wp-block-button .wp-block-button__link, .wp-block-button .button-group.hollow .wp-block-button__link, .wp-block-button.is-style-outline .button-group.wp-block-button__link .wp-block-button__link, .button-group.hollow .button:hover, .button-group.hollow .button:focus, .button-group.hollow .button.disabled, .button-group.hollow .button.disabled:hover, .button-group.hollow .button.disabled:focus, .button-group.hollow .button[disabled], .button-group.hollow .button[disabled]:hover, .button-group.hollow .button[disabled]:focus {
  background-color: transparent;
}
.button-group.hollow .button, .wp-block-button.is-style-outline .button-group.wp-block-button__link .button, .button-group.hollow .wp-block-button .wp-block-button__link, .wp-block-button .button-group.hollow .wp-block-button__link, .wp-block-button.is-style-outline .button-group.wp-block-button__link .wp-block-button__link, .button-group.hollow .button.disabled, .button-group.hollow .button[disabled], .button-group.hollow .button.disabled:hover, .button-group.hollow .button[disabled]:hover, .button-group.hollow .button.disabled:focus, .button-group.hollow .button[disabled]:focus {
  border: 1px solid transparent;
  color: transparent;
}
.button-group.hollow .button:hover, .wp-block-button.is-style-outline .button-group.wp-block-button__link .button:hover, .button-group.hollow .wp-block-button .wp-block-button__link:hover, .wp-block-button .button-group.hollow .wp-block-button__link:hover, .wp-block-button.is-style-outline .button-group.wp-block-button__link .wp-block-button__link:hover, .button-group.hollow .button:focus, .wp-block-button.is-style-outline .button-group.wp-block-button__link .button:focus, .button-group.hollow .wp-block-button .wp-block-button__link:focus, .wp-block-button .button-group.hollow .wp-block-button__link:focus, .wp-block-button.is-style-outline .button-group.wp-block-button__link .wp-block-button__link:focus {
  border-color: rgba(0, 0, 0, 0);
  color: rgba(0, 0, 0, 0);
}
.button-group.hollow.primary .button, .wp-block-button.is-style-outline .button-group.primary.wp-block-button__link .button, .button-group.hollow.primary .wp-block-button .wp-block-button__link, .wp-block-button .button-group.hollow.primary .wp-block-button__link, .wp-block-button.is-style-outline .button-group.primary.wp-block-button__link .wp-block-button__link, .button-group.hollow.primary .button.disabled, .button-group.hollow.primary .button[disabled], .button-group.hollow.primary .button.disabled:hover, .button-group.hollow.primary .button[disabled]:hover, .button-group.hollow.primary .button.disabled:focus, .button-group.hollow.primary .button[disabled]:focus, .button-group.hollow .button.primary, .wp-block-button.is-style-outline .button-group.wp-block-button__link .button.primary, .button-group.hollow .wp-block-button .primary.wp-block-button__link, .wp-block-button .button-group.hollow .primary.wp-block-button__link, .wp-block-button.is-style-outline .button-group.wp-block-button__link .primary.wp-block-button__link, .button-group.hollow .button.primary.disabled, .button-group.hollow .button.primary[disabled], .button-group.hollow .button.primary.disabled:hover, .button-group.hollow .button.primary[disabled]:hover, .button-group.hollow .button.primary.disabled:focus, .button-group.hollow .button.primary[disabled]:focus {
  border: 1px solid #242424;
  color: #242424;
}
.button-group.hollow.primary .button:hover, .wp-block-button.is-style-outline .button-group.primary.wp-block-button__link .button:hover, .button-group.hollow.primary .wp-block-button .wp-block-button__link:hover, .wp-block-button .button-group.hollow.primary .wp-block-button__link:hover, .wp-block-button.is-style-outline .button-group.primary.wp-block-button__link .wp-block-button__link:hover, .button-group.hollow.primary .button:focus, .wp-block-button.is-style-outline .button-group.primary.wp-block-button__link .button:focus, .button-group.hollow.primary .wp-block-button .wp-block-button__link:focus, .wp-block-button .button-group.hollow.primary .wp-block-button__link:focus, .wp-block-button.is-style-outline .button-group.primary.wp-block-button__link .wp-block-button__link:focus, .button-group.hollow .button.primary:hover, .wp-block-button.is-style-outline .button-group.wp-block-button__link .button.primary:hover, .button-group.hollow .wp-block-button .primary.wp-block-button__link:hover, .wp-block-button .button-group.hollow .primary.wp-block-button__link:hover, .wp-block-button.is-style-outline .button-group.wp-block-button__link .primary.wp-block-button__link:hover, .button-group.hollow .button.primary:focus, .wp-block-button.is-style-outline .button-group.wp-block-button__link .button.primary:focus, .button-group.hollow .wp-block-button .primary.wp-block-button__link:focus, .wp-block-button .button-group.hollow .primary.wp-block-button__link:focus, .wp-block-button.is-style-outline .button-group.wp-block-button__link .primary.wp-block-button__link:focus {
  border-color: #121212;
  color: #121212;
}
.button-group.hollow.secondary .button, .wp-block-button.is-style-outline .button-group.secondary.wp-block-button__link .button, .button-group.hollow.secondary .wp-block-button .wp-block-button__link, .wp-block-button .button-group.hollow.secondary .wp-block-button__link, .wp-block-button.is-style-outline .button-group.secondary.wp-block-button__link .wp-block-button__link, .button-group.hollow.secondary .button.disabled, .button-group.hollow.secondary .button[disabled], .button-group.hollow.secondary .button.disabled:hover, .button-group.hollow.secondary .button[disabled]:hover, .button-group.hollow.secondary .button.disabled:focus, .button-group.hollow.secondary .button[disabled]:focus, .button-group.hollow .button.secondary, .wp-block-button.is-style-outline .button-group.wp-block-button__link .button.secondary, .button-group.hollow .wp-block-button .secondary.wp-block-button__link, .wp-block-button .button-group.hollow .secondary.wp-block-button__link, .wp-block-button.is-style-outline .button-group.wp-block-button__link .secondary.wp-block-button__link, .button-group.hollow .button.secondary.disabled, .button-group.hollow .button.secondary[disabled], .button-group.hollow .button.secondary.disabled:hover, .button-group.hollow .button.secondary[disabled]:hover, .button-group.hollow .button.secondary.disabled:focus, .button-group.hollow .button.secondary[disabled]:focus {
  border: 1px solid #F7F7F7;
  color: #F7F7F7;
}
.button-group.hollow.secondary .button:hover, .wp-block-button.is-style-outline .button-group.secondary.wp-block-button__link .button:hover, .button-group.hollow.secondary .wp-block-button .wp-block-button__link:hover, .wp-block-button .button-group.hollow.secondary .wp-block-button__link:hover, .wp-block-button.is-style-outline .button-group.secondary.wp-block-button__link .wp-block-button__link:hover, .button-group.hollow.secondary .button:focus, .wp-block-button.is-style-outline .button-group.secondary.wp-block-button__link .button:focus, .button-group.hollow.secondary .wp-block-button .wp-block-button__link:focus, .wp-block-button .button-group.hollow.secondary .wp-block-button__link:focus, .wp-block-button.is-style-outline .button-group.secondary.wp-block-button__link .wp-block-button__link:focus, .button-group.hollow .button.secondary:hover, .wp-block-button.is-style-outline .button-group.wp-block-button__link .button.secondary:hover, .button-group.hollow .wp-block-button .secondary.wp-block-button__link:hover, .wp-block-button .button-group.hollow .secondary.wp-block-button__link:hover, .wp-block-button.is-style-outline .button-group.wp-block-button__link .secondary.wp-block-button__link:hover, .button-group.hollow .button.secondary:focus, .wp-block-button.is-style-outline .button-group.wp-block-button__link .button.secondary:focus, .button-group.hollow .wp-block-button .secondary.wp-block-button__link:focus, .wp-block-button .button-group.hollow .secondary.wp-block-button__link:focus, .wp-block-button.is-style-outline .button-group.wp-block-button__link .secondary.wp-block-button__link:focus {
  border-color: #7c7c7c;
  color: #7c7c7c;
}
.button-group.hollow.success .button, .wp-block-button.is-style-outline .button-group.success.wp-block-button__link .button, .button-group.hollow.success .wp-block-button .wp-block-button__link, .wp-block-button .button-group.hollow.success .wp-block-button__link, .wp-block-button.is-style-outline .button-group.success.wp-block-button__link .wp-block-button__link, .button-group.hollow.success .button.disabled, .button-group.hollow.success .button[disabled], .button-group.hollow.success .button.disabled:hover, .button-group.hollow.success .button[disabled]:hover, .button-group.hollow.success .button.disabled:focus, .button-group.hollow.success .button[disabled]:focus, .button-group.hollow .button.success, .wp-block-button.is-style-outline .button-group.wp-block-button__link .button.success, .button-group.hollow .wp-block-button .success.wp-block-button__link, .wp-block-button .button-group.hollow .success.wp-block-button__link, .wp-block-button.is-style-outline .button-group.wp-block-button__link .success.wp-block-button__link, .button-group.hollow .button.success.disabled, .button-group.hollow .button.success[disabled], .button-group.hollow .button.success.disabled:hover, .button-group.hollow .button.success[disabled]:hover, .button-group.hollow .button.success.disabled:focus, .button-group.hollow .button.success[disabled]:focus {
  border: 1px solid #3adb76;
  color: #3adb76;
}
.button-group.hollow.success .button:hover, .wp-block-button.is-style-outline .button-group.success.wp-block-button__link .button:hover, .button-group.hollow.success .wp-block-button .wp-block-button__link:hover, .wp-block-button .button-group.hollow.success .wp-block-button__link:hover, .wp-block-button.is-style-outline .button-group.success.wp-block-button__link .wp-block-button__link:hover, .button-group.hollow.success .button:focus, .wp-block-button.is-style-outline .button-group.success.wp-block-button__link .button:focus, .button-group.hollow.success .wp-block-button .wp-block-button__link:focus, .wp-block-button .button-group.hollow.success .wp-block-button__link:focus, .wp-block-button.is-style-outline .button-group.success.wp-block-button__link .wp-block-button__link:focus, .button-group.hollow .button.success:hover, .wp-block-button.is-style-outline .button-group.wp-block-button__link .button.success:hover, .button-group.hollow .wp-block-button .success.wp-block-button__link:hover, .wp-block-button .button-group.hollow .success.wp-block-button__link:hover, .wp-block-button.is-style-outline .button-group.wp-block-button__link .success.wp-block-button__link:hover, .button-group.hollow .button.success:focus, .wp-block-button.is-style-outline .button-group.wp-block-button__link .button.success:focus, .button-group.hollow .wp-block-button .success.wp-block-button__link:focus, .wp-block-button .button-group.hollow .success.wp-block-button__link:focus, .wp-block-button.is-style-outline .button-group.wp-block-button__link .success.wp-block-button__link:focus {
  border-color: #157539;
  color: #157539;
}
.button-group.hollow.warning .button, .wp-block-button.is-style-outline .button-group.warning.wp-block-button__link .button, .button-group.hollow.warning .wp-block-button .wp-block-button__link, .wp-block-button .button-group.hollow.warning .wp-block-button__link, .wp-block-button.is-style-outline .button-group.warning.wp-block-button__link .wp-block-button__link, .button-group.hollow.warning .button.disabled, .button-group.hollow.warning .button[disabled], .button-group.hollow.warning .button.disabled:hover, .button-group.hollow.warning .button[disabled]:hover, .button-group.hollow.warning .button.disabled:focus, .button-group.hollow.warning .button[disabled]:focus, .button-group.hollow .button.warning, .wp-block-button.is-style-outline .button-group.wp-block-button__link .button.warning, .button-group.hollow .wp-block-button .warning.wp-block-button__link, .wp-block-button .button-group.hollow .warning.wp-block-button__link, .wp-block-button.is-style-outline .button-group.wp-block-button__link .warning.wp-block-button__link, .button-group.hollow .button.warning.disabled, .button-group.hollow .button.warning[disabled], .button-group.hollow .button.warning.disabled:hover, .button-group.hollow .button.warning[disabled]:hover, .button-group.hollow .button.warning.disabled:focus, .button-group.hollow .button.warning[disabled]:focus {
  border: 1px solid #ffae00;
  color: #ffae00;
}
.button-group.hollow.warning .button:hover, .wp-block-button.is-style-outline .button-group.warning.wp-block-button__link .button:hover, .button-group.hollow.warning .wp-block-button .wp-block-button__link:hover, .wp-block-button .button-group.hollow.warning .wp-block-button__link:hover, .wp-block-button.is-style-outline .button-group.warning.wp-block-button__link .wp-block-button__link:hover, .button-group.hollow.warning .button:focus, .wp-block-button.is-style-outline .button-group.warning.wp-block-button__link .button:focus, .button-group.hollow.warning .wp-block-button .wp-block-button__link:focus, .wp-block-button .button-group.hollow.warning .wp-block-button__link:focus, .wp-block-button.is-style-outline .button-group.warning.wp-block-button__link .wp-block-button__link:focus, .button-group.hollow .button.warning:hover, .wp-block-button.is-style-outline .button-group.wp-block-button__link .button.warning:hover, .button-group.hollow .wp-block-button .warning.wp-block-button__link:hover, .wp-block-button .button-group.hollow .warning.wp-block-button__link:hover, .wp-block-button.is-style-outline .button-group.wp-block-button__link .warning.wp-block-button__link:hover, .button-group.hollow .button.warning:focus, .wp-block-button.is-style-outline .button-group.wp-block-button__link .button.warning:focus, .button-group.hollow .wp-block-button .warning.wp-block-button__link:focus, .wp-block-button .button-group.hollow .warning.wp-block-button__link:focus, .wp-block-button.is-style-outline .button-group.wp-block-button__link .warning.wp-block-button__link:focus {
  border-color: #805700;
  color: #805700;
}
.button-group.hollow.alert .button, .wp-block-button.is-style-outline .button-group.alert.wp-block-button__link .button, .button-group.hollow.alert .wp-block-button .wp-block-button__link, .wp-block-button .button-group.hollow.alert .wp-block-button__link, .wp-block-button.is-style-outline .button-group.alert.wp-block-button__link .wp-block-button__link, .button-group.hollow.alert .button.disabled, .button-group.hollow.alert .button[disabled], .button-group.hollow.alert .button.disabled:hover, .button-group.hollow.alert .button[disabled]:hover, .button-group.hollow.alert .button.disabled:focus, .button-group.hollow.alert .button[disabled]:focus, .button-group.hollow .button.alert, .wp-block-button.is-style-outline .button-group.wp-block-button__link .button.alert, .button-group.hollow .wp-block-button .alert.wp-block-button__link, .wp-block-button .button-group.hollow .alert.wp-block-button__link, .wp-block-button.is-style-outline .button-group.wp-block-button__link .alert.wp-block-button__link, .button-group.hollow .button.alert.disabled, .button-group.hollow .button.alert[disabled], .button-group.hollow .button.alert.disabled:hover, .button-group.hollow .button.alert[disabled]:hover, .button-group.hollow .button.alert.disabled:focus, .button-group.hollow .button.alert[disabled]:focus {
  border: 1px solid #cc4b37;
  color: #cc4b37;
}
.button-group.hollow.alert .button:hover, .wp-block-button.is-style-outline .button-group.alert.wp-block-button__link .button:hover, .button-group.hollow.alert .wp-block-button .wp-block-button__link:hover, .wp-block-button .button-group.hollow.alert .wp-block-button__link:hover, .wp-block-button.is-style-outline .button-group.alert.wp-block-button__link .wp-block-button__link:hover, .button-group.hollow.alert .button:focus, .wp-block-button.is-style-outline .button-group.alert.wp-block-button__link .button:focus, .button-group.hollow.alert .wp-block-button .wp-block-button__link:focus, .wp-block-button .button-group.hollow.alert .wp-block-button__link:focus, .wp-block-button.is-style-outline .button-group.alert.wp-block-button__link .wp-block-button__link:focus, .button-group.hollow .button.alert:hover, .wp-block-button.is-style-outline .button-group.wp-block-button__link .button.alert:hover, .button-group.hollow .wp-block-button .alert.wp-block-button__link:hover, .wp-block-button .button-group.hollow .alert.wp-block-button__link:hover, .wp-block-button.is-style-outline .button-group.wp-block-button__link .alert.wp-block-button__link:hover, .button-group.hollow .button.alert:focus, .wp-block-button.is-style-outline .button-group.wp-block-button__link .button.alert:focus, .button-group.hollow .wp-block-button .alert.wp-block-button__link:focus, .wp-block-button .button-group.hollow .alert.wp-block-button__link:focus, .wp-block-button.is-style-outline .button-group.wp-block-button__link .alert.wp-block-button__link:focus {
  border-color: #67251a;
  color: #67251a;
}
.button-group.clear .button, .button-group.clear .wp-block-button .wp-block-button__link, .wp-block-button .button-group.clear .wp-block-button__link, .button-group.clear .button:hover, .button-group.clear .button:focus, .button-group.clear .button.disabled, .button-group.clear .button.disabled:hover, .button-group.clear .button.disabled:focus, .button-group.clear .button[disabled], .button-group.clear .button[disabled]:hover, .button-group.clear .button[disabled]:focus {
  border-color: transparent;
  background-color: transparent;
}
.button-group.clear .button, .button-group.clear .wp-block-button .wp-block-button__link, .wp-block-button .button-group.clear .wp-block-button__link, .button-group.clear .button.disabled, .button-group.clear .button[disabled], .button-group.clear .button.disabled:hover, .button-group.clear .button[disabled]:hover, .button-group.clear .button.disabled:focus, .button-group.clear .button[disabled]:focus {
  color: transparent;
}
.button-group.clear .button:hover, .button-group.clear .wp-block-button .wp-block-button__link:hover, .wp-block-button .button-group.clear .wp-block-button__link:hover, .button-group.clear .button:focus, .button-group.clear .wp-block-button .wp-block-button__link:focus, .wp-block-button .button-group.clear .wp-block-button__link:focus {
  color: rgba(0, 0, 0, 0);
}
.button-group.clear.primary .button, .button-group.clear.primary .wp-block-button .wp-block-button__link, .wp-block-button .button-group.clear.primary .wp-block-button__link, .button-group.clear.primary .button.disabled, .button-group.clear.primary .button[disabled], .button-group.clear.primary .button.disabled:hover, .button-group.clear.primary .button[disabled]:hover, .button-group.clear.primary .button.disabled:focus, .button-group.clear.primary .button[disabled]:focus, .button-group.clear .button.primary, .button-group.clear .wp-block-button .primary.wp-block-button__link, .wp-block-button .button-group.clear .primary.wp-block-button__link, .button-group.clear .button.primary.disabled, .button-group.clear .button.primary[disabled], .button-group.clear .button.primary.disabled:hover, .button-group.clear .button.primary[disabled]:hover, .button-group.clear .button.primary.disabled:focus, .button-group.clear .button.primary[disabled]:focus {
  color: #242424;
}
.button-group.clear.primary .button:hover, .button-group.clear.primary .wp-block-button .wp-block-button__link:hover, .wp-block-button .button-group.clear.primary .wp-block-button__link:hover, .button-group.clear.primary .button:focus, .button-group.clear.primary .wp-block-button .wp-block-button__link:focus, .wp-block-button .button-group.clear.primary .wp-block-button__link:focus, .button-group.clear .button.primary:hover, .button-group.clear .wp-block-button .primary.wp-block-button__link:hover, .wp-block-button .button-group.clear .primary.wp-block-button__link:hover, .button-group.clear .button.primary:focus, .button-group.clear .wp-block-button .primary.wp-block-button__link:focus, .wp-block-button .button-group.clear .primary.wp-block-button__link:focus {
  color: #121212;
}
.button-group.clear.secondary .button, .button-group.clear.secondary .wp-block-button .wp-block-button__link, .wp-block-button .button-group.clear.secondary .wp-block-button__link, .button-group.clear.secondary .button.disabled, .button-group.clear.secondary .button[disabled], .button-group.clear.secondary .button.disabled:hover, .button-group.clear.secondary .button[disabled]:hover, .button-group.clear.secondary .button.disabled:focus, .button-group.clear.secondary .button[disabled]:focus, .button-group.clear .button.secondary, .button-group.clear .wp-block-button .secondary.wp-block-button__link, .wp-block-button .button-group.clear .secondary.wp-block-button__link, .button-group.clear .button.secondary.disabled, .button-group.clear .button.secondary[disabled], .button-group.clear .button.secondary.disabled:hover, .button-group.clear .button.secondary[disabled]:hover, .button-group.clear .button.secondary.disabled:focus, .button-group.clear .button.secondary[disabled]:focus {
  color: #F7F7F7;
}
.button-group.clear.secondary .button:hover, .button-group.clear.secondary .wp-block-button .wp-block-button__link:hover, .wp-block-button .button-group.clear.secondary .wp-block-button__link:hover, .button-group.clear.secondary .button:focus, .button-group.clear.secondary .wp-block-button .wp-block-button__link:focus, .wp-block-button .button-group.clear.secondary .wp-block-button__link:focus, .button-group.clear .button.secondary:hover, .button-group.clear .wp-block-button .secondary.wp-block-button__link:hover, .wp-block-button .button-group.clear .secondary.wp-block-button__link:hover, .button-group.clear .button.secondary:focus, .button-group.clear .wp-block-button .secondary.wp-block-button__link:focus, .wp-block-button .button-group.clear .secondary.wp-block-button__link:focus {
  color: #7c7c7c;
}
.button-group.clear.success .button, .button-group.clear.success .wp-block-button .wp-block-button__link, .wp-block-button .button-group.clear.success .wp-block-button__link, .button-group.clear.success .button.disabled, .button-group.clear.success .button[disabled], .button-group.clear.success .button.disabled:hover, .button-group.clear.success .button[disabled]:hover, .button-group.clear.success .button.disabled:focus, .button-group.clear.success .button[disabled]:focus, .button-group.clear .button.success, .button-group.clear .wp-block-button .success.wp-block-button__link, .wp-block-button .button-group.clear .success.wp-block-button__link, .button-group.clear .button.success.disabled, .button-group.clear .button.success[disabled], .button-group.clear .button.success.disabled:hover, .button-group.clear .button.success[disabled]:hover, .button-group.clear .button.success.disabled:focus, .button-group.clear .button.success[disabled]:focus {
  color: #3adb76;
}
.button-group.clear.success .button:hover, .button-group.clear.success .wp-block-button .wp-block-button__link:hover, .wp-block-button .button-group.clear.success .wp-block-button__link:hover, .button-group.clear.success .button:focus, .button-group.clear.success .wp-block-button .wp-block-button__link:focus, .wp-block-button .button-group.clear.success .wp-block-button__link:focus, .button-group.clear .button.success:hover, .button-group.clear .wp-block-button .success.wp-block-button__link:hover, .wp-block-button .button-group.clear .success.wp-block-button__link:hover, .button-group.clear .button.success:focus, .button-group.clear .wp-block-button .success.wp-block-button__link:focus, .wp-block-button .button-group.clear .success.wp-block-button__link:focus {
  color: #157539;
}
.button-group.clear.warning .button, .button-group.clear.warning .wp-block-button .wp-block-button__link, .wp-block-button .button-group.clear.warning .wp-block-button__link, .button-group.clear.warning .button.disabled, .button-group.clear.warning .button[disabled], .button-group.clear.warning .button.disabled:hover, .button-group.clear.warning .button[disabled]:hover, .button-group.clear.warning .button.disabled:focus, .button-group.clear.warning .button[disabled]:focus, .button-group.clear .button.warning, .button-group.clear .wp-block-button .warning.wp-block-button__link, .wp-block-button .button-group.clear .warning.wp-block-button__link, .button-group.clear .button.warning.disabled, .button-group.clear .button.warning[disabled], .button-group.clear .button.warning.disabled:hover, .button-group.clear .button.warning[disabled]:hover, .button-group.clear .button.warning.disabled:focus, .button-group.clear .button.warning[disabled]:focus {
  color: #ffae00;
}
.button-group.clear.warning .button:hover, .button-group.clear.warning .wp-block-button .wp-block-button__link:hover, .wp-block-button .button-group.clear.warning .wp-block-button__link:hover, .button-group.clear.warning .button:focus, .button-group.clear.warning .wp-block-button .wp-block-button__link:focus, .wp-block-button .button-group.clear.warning .wp-block-button__link:focus, .button-group.clear .button.warning:hover, .button-group.clear .wp-block-button .warning.wp-block-button__link:hover, .wp-block-button .button-group.clear .warning.wp-block-button__link:hover, .button-group.clear .button.warning:focus, .button-group.clear .wp-block-button .warning.wp-block-button__link:focus, .wp-block-button .button-group.clear .warning.wp-block-button__link:focus {
  color: #805700;
}
.button-group.clear.alert .button, .button-group.clear.alert .wp-block-button .wp-block-button__link, .wp-block-button .button-group.clear.alert .wp-block-button__link, .button-group.clear.alert .button.disabled, .button-group.clear.alert .button[disabled], .button-group.clear.alert .button.disabled:hover, .button-group.clear.alert .button[disabled]:hover, .button-group.clear.alert .button.disabled:focus, .button-group.clear.alert .button[disabled]:focus, .button-group.clear .button.alert, .button-group.clear .wp-block-button .alert.wp-block-button__link, .wp-block-button .button-group.clear .alert.wp-block-button__link, .button-group.clear .button.alert.disabled, .button-group.clear .button.alert[disabled], .button-group.clear .button.alert.disabled:hover, .button-group.clear .button.alert[disabled]:hover, .button-group.clear .button.alert.disabled:focus, .button-group.clear .button.alert[disabled]:focus {
  color: #cc4b37;
}
.button-group.clear.alert .button:hover, .button-group.clear.alert .wp-block-button .wp-block-button__link:hover, .wp-block-button .button-group.clear.alert .wp-block-button__link:hover, .button-group.clear.alert .button:focus, .button-group.clear.alert .wp-block-button .wp-block-button__link:focus, .wp-block-button .button-group.clear.alert .wp-block-button__link:focus, .button-group.clear .button.alert:hover, .button-group.clear .wp-block-button .alert.wp-block-button__link:hover, .wp-block-button .button-group.clear .alert.wp-block-button__link:hover, .button-group.clear .button.alert:focus, .button-group.clear .wp-block-button .alert.wp-block-button__link:focus, .wp-block-button .button-group.clear .alert.wp-block-button__link:focus {
  color: #67251a;
}
.button-group.no-gaps .button, .button-group.no-gaps .wp-block-button .wp-block-button__link, .wp-block-button .button-group.no-gaps .wp-block-button__link {
  margin-right: -0.1rem;
}
.button-group.no-gaps .button + .button, .button-group.no-gaps .wp-block-button .wp-block-button__link + .button, .wp-block-button .button-group.no-gaps .wp-block-button__link + .button, .button-group.no-gaps .wp-block-button .button + .wp-block-button__link, .wp-block-button .button-group.no-gaps .button + .wp-block-button__link, .button-group.no-gaps .wp-block-button .wp-block-button__link + .wp-block-button__link, .wp-block-button .button-group.no-gaps .wp-block-button__link + .wp-block-button__link {
  border-left-color: transparent;
}
.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 .wp-block-button .wp-block-button__link, .wp-block-button .button-group.stacked .wp-block-button__link, .button-group.stacked-for-small .button, .button-group.stacked-for-small .wp-block-button .wp-block-button__link, .wp-block-button .button-group.stacked-for-small .wp-block-button__link, .button-group.stacked-for-medium .button, .button-group.stacked-for-medium .wp-block-button .wp-block-button__link, .wp-block-button .button-group.stacked-for-medium .wp-block-button__link {
  -webkit-flex: 0 0 100%;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
}
.button-group.stacked .button:last-child, .button-group.stacked .wp-block-button .wp-block-button__link:last-child, .wp-block-button .button-group.stacked .wp-block-button__link:last-child, .button-group.stacked-for-small .button:last-child, .button-group.stacked-for-small .wp-block-button .wp-block-button__link:last-child, .wp-block-button .button-group.stacked-for-small .wp-block-button__link:last-child, .button-group.stacked-for-medium .button:last-child, .button-group.stacked-for-medium .wp-block-button .wp-block-button__link:last-child, .wp-block-button .button-group.stacked-for-medium .wp-block-button__link:last-child {
  margin-bottom: 0;
}
.button-group.stacked.expanded .button, .button-group.stacked.expanded .wp-block-button .wp-block-button__link, .wp-block-button .button-group.stacked.expanded .wp-block-button__link, .button-group.stacked-for-small.expanded .button, .button-group.stacked-for-small.expanded .wp-block-button .wp-block-button__link, .wp-block-button .button-group.stacked-for-small.expanded .wp-block-button__link, .button-group.stacked-for-medium.expanded .button, .button-group.stacked-for-medium.expanded .wp-block-button .wp-block-button__link, .wp-block-button .button-group.stacked-for-medium.expanded .wp-block-button__link {
  -webkit-flex: 1 1 0px;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px;
  margin-right: 0;
}
@media print, screen and (min-width: 40em) {
  .button-group.stacked-for-small .button, .button-group.stacked-for-small .wp-block-button .wp-block-button__link, .wp-block-button .button-group.stacked-for-small .wp-block-button__link {
    -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, .button-group.stacked-for-medium .wp-block-button .wp-block-button__link, .wp-block-button .button-group.stacked-for-medium .wp-block-button__link {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    margin-bottom: 0;
  }
}
@media print, screen and (max-width: 39.99875em) {
  .button-group.stacked-for-small.expanded {
    display: block;
  }
  .button-group.stacked-for-small.expanded .button, .button-group.stacked-for-small.expanded .wp-block-button .wp-block-button__link, .wp-block-button .button-group.stacked-for-small.expanded .wp-block-button__link {
    display: block;
    margin-right: 0;
  }
}
@media print, screen and (max-width: 63.99875em) {
  .button-group.stacked-for-medium.expanded {
    display: block;
  }
  .button-group.stacked-for-medium.expanded .button, .button-group.stacked-for-medium.expanded .wp-block-button .wp-block-button__link, .wp-block-button .button-group.stacked-for-medium.expanded .wp-block-button__link {
    display: block;
    margin-right: 0;
  }
}

.callout {
  position: relative;
  margin: 0 0 1rem 0;
  padding: 1rem;
  border: 1px solid rgba(36, 36, 36, 0.25);
  border-radius: 0;
  background-color: white;
  color: #424A55;
}
.callout > :first-child {
  margin-top: 0;
}
.callout > :last-child {
  margin-bottom: 0;
}
.callout.primary {
  background-color: #dedede;
  color: #424A55;
}
.callout.secondary {
  background-color: #fefefe;
  color: #424A55;
}
.callout.success {
  background-color: #e1faea;
  color: #424A55;
}
.callout.warning {
  background-color: #fff3d9;
  color: #424A55;
}
.callout.alert {
  background-color: #f7e4e1;
  color: #424A55;
}
.callout.small {
  padding-top: 0.5rem;
  padding-right: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 0.5rem;
}
.callout.large {
  padding-top: 3rem;
  padding-right: 3rem;
  padding-bottom: 3rem;
  padding-left: 3rem;
}

.card {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  margin-bottom: 1rem;
  border: 1px solid #E2E4E7;
  border-radius: 0;
  background: #FFFFFF;
  box-shadow: none;
  overflow: hidden;
  color: #424A55;
}
.card > :last-child {
  margin-bottom: 0;
}

.card-divider {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex: 0 1 auto;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto;
  padding: 1rem;
  background: #E2E4E7;
}
.card-divider > :last-child {
  margin-bottom: 0;
}

.card-section {
  -webkit-flex: 1 0 auto;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
  padding: 1rem;
}
.card-section > :last-child {
  margin-bottom: 0;
}

.card-image {
  min-height: 1px;
}

.close-button {
  position: absolute;
  z-index: 10;
  color: #ABAEB4;
  cursor: pointer;
}
[data-whatinput=mouse] .close-button {
  outline: 0;
}
.close-button:hover, .close-button:focus {
  color: #242424;
}
.close-button.small {
  right: 0.66rem;
  top: 0.33em;
  font-size: 1.5em;
  line-height: 1;
}

.close-button, .close-button.medium {
  right: 1rem;
  top: 0.5rem;
  font-size: 2em;
  line-height: 1;
}

.menu {
  padding: 0;
  margin: 0;
  list-style: none;
  position: relative;
  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,
.menu .wp-block-button .wp-block-button__link,
.wp-block-button .menu .wp-block-button__link {
  line-height: 1;
  text-decoration: none;
  display: block;
  padding: 0.7rem 1rem;
}
.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-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
}
.menu.vertical {
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
.menu.expanded li {
  -webkit-flex: 1 1 0px;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px;
}
.menu.simple {
  -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: 40em) {
  .menu.medium-horizontal {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -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-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .menu.medium-expanded li {
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
  }
  .menu.medium-simple li {
    -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-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-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .menu.large-expanded li {
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
  }
  .menu.large-simple li {
    -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-flex;
  display: -ms-flexbox;
  display: flex;
}
.menu.icon-top a, .menu.icon-right a, .menu.icon-bottom a, .menu.icon-left a {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.menu.icon-left li a {
  -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-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-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;
              -ms-grid-row-align: stretch;
          align-self: stretch;
  margin-bottom: 0.25rem;
  text-align: center;
}
.menu.icon-bottom li a {
  -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;
              -ms-grid-row-align: stretch;
          align-self: stretch;
  margin-bottom: 0.25rem;
  text-align: center;
}
.menu .is-active > a {
  background: #242424;
  color: #FFFFFF;
}
.menu .active > a {
  background: #242424;
  color: #FFFFFF;
}
.menu.align-left {
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.menu.align-right li {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.menu.align-right li .submenu li {
  -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-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.menu.align-center li .submenu li {
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.menu .menu-text {
  padding: 0.7rem 1rem;
  font-weight: bold;
  line-height: 1;
  color: inherit;
}

.menu-centered > .menu {
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.menu-centered > .menu li {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.menu-centered > .menu li .submenu li {
  -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;
  box-shadow: 0 7px 0 #FFFFFF, 0 14px 0 #FFFFFF;
  content: "";
}
.menu-icon:hover::after {
  background: #E2E4E7;
  box-shadow: 0 7px 0 #E2E4E7, 0 14px 0 #E2E4E7;
}

.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: #242424;
  box-shadow: 0 7px 0 #242424, 0 14px 0 #242424;
  content: "";
}
.menu-icon.dark:hover::after {
  background: #ABAEB4;
  box-shadow: 0 7px 0 #ABAEB4, 0 14px 0 #ABAEB4;
}

.is-drilldown {
  position: relative;
  overflow: hidden;
}
.is-drilldown li {
  display: block;
}
.is-drilldown.animate-height {
  transition: height 0.5s;
}

.drilldown a {
  padding: 0.7rem 1rem;
  background: #FFFFFF;
}
.drilldown .is-drilldown-submenu {
  position: absolute;
  top: 0;
  left: 100%;
  z-index: -1;
  width: 100%;
  background: #FFFFFF;
  transition: -webkit-transform 0.15s linear;
  transition: transform 0.15s linear;
  transition: transform 0.15s linear, -webkit-transform 0.15s linear;
}
.drilldown .is-drilldown-submenu.is-active {
  z-index: 1;
  display: block;
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
}
.drilldown .is-drilldown-submenu.is-closing {
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
}
.drilldown .is-drilldown-submenu a {
  padding: 0.7rem 1rem;
}
.drilldown .nested.is-drilldown-submenu {
  margin-right: 0;
  margin-left: 0;
}
.drilldown .drilldown-submenu-cover-previous {
  min-height: 100%;
}
.drilldown .is-drilldown-submenu-parent > a {
  position: relative;
}
.drilldown .is-drilldown-submenu-parent > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: "";
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #242424;
  position: absolute;
  top: 50%;
  margin-top: -6px;
  right: 1rem;
}
.drilldown.align-left .is-drilldown-submenu-parent > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: "";
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #1B4E74;
  right: 1rem;
  left: auto;
}
.drilldown.align-right .is-drilldown-submenu-parent > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: "";
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #1B4E74 transparent transparent;
  right: auto;
  left: 1rem;
}
.drilldown .js-drilldown-back > a::before {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: "";
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #242424 transparent transparent;
  display: inline-block;
  vertical-align: middle;
  margin-right: 0.75rem;
}

.dropdown-pane {
  position: absolute;
  z-index: 10;
  display: none;
  width: 300px;
  padding: 1rem;
  visibility: hidden;
  border: 1px solid #E2E4E7;
  border-radius: 0;
  background-color: #FFFFFF;
  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: 1.5rem;
}
.dropdown.menu > li.is-dropdown-submenu-parent > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: "";
  border-bottom-width: 0;
  border-top-style: solid;
  border-color: #1B4E74 transparent transparent;
  right: 5px;
  left: auto;
  margin-top: -3px;
}
[data-whatinput=mouse] .dropdown.menu a {
  outline: 0;
}
.dropdown.menu > li > a {
  padding: 0.7rem 1rem;
}
.dropdown.menu > li.is-active > a {
  background: transparent;
  color: #242424;
}
.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 6px;
  content: "";
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #1B4E74 transparent transparent;
  right: auto;
  left: 5px;
}
.dropdown.menu.vertical > li.opens-right > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: "";
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #1B4E74;
}
@media print, screen and (min-width: 40em) {
  .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: 1.5rem;
  }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: "";
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #1B4E74 transparent transparent;
    right: 5px;
    left: auto;
    margin-top: -3px;
  }
  .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 6px;
    content: "";
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #1B4E74 transparent transparent;
    right: auto;
    left: 5px;
  }
  .dropdown.menu.medium-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: "";
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #1B4E74;
  }
}
@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: 1.5rem;
  }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: "";
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #1B4E74 transparent transparent;
    right: 5px;
    left: auto;
    margin-top: -3px;
  }
  .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 6px;
    content: "";
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #1B4E74 transparent transparent;
    right: auto;
    left: 5px;
  }
  .dropdown.menu.large-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: "";
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #1B4E74;
  }
}
.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: -6px;
}
.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: 200px;
  border: 1px solid #E2E4E7;
  background: #FFFFFF;
}
.dropdown .is-dropdown-submenu a {
  padding: 0.7rem 1rem;
}
.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 6px;
  content: "";
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #1B4E74 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 6px;
  content: "";
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #1B4E74;
}
.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: 1.6rem;
  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: #242424;
  color: #FFFFFF;
}
.label.primary {
  background: #242424;
  color: #FFFFFF;
}
.label.secondary {
  background: #F7F7F7;
  color: #242424;
}
.label.success {
  background: #3adb76;
  color: #242424;
}
.label.warning {
  background: #ffae00;
  color: #242424;
}
.label.alert {
  background: #cc4b37;
  color: #FFFFFF;
}

.media-object {
  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 print, screen and (max-width: 39.99875em) {
  .media-object.stack-for-small {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}

.media-object-section {
  -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 print, screen and (max-width: 39.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-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%;
  transition: opacity 0.5s ease, visibility 0.5s ease;
  background: rgba(255, 255, 255, 0.25);
  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;
  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: #E2E4E7;
}
[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: 13;
}
.off-canvas.is-transition-overlap.is-open {
  box-shadow: 0 0 10px rgba(36, 36, 36, 0.7);
}
.off-canvas.is-open {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}
.off-canvas-absolute {
  position: absolute;
  z-index: 12;
  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: #E2E4E7;
}
[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: 13;
}
.off-canvas-absolute.is-transition-overlap.is-open {
  box-shadow: 0 0 10px rgba(36, 36, 36, 0.7);
}
.off-canvas-absolute.is-open {
  -webkit-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);
          transform: translateX(-250px);
}
.off-canvas-content .off-canvas.position-left {
  -webkit-transform: translateX(-250px);
          transform: translateX(-250px);
}
.off-canvas-content .off-canvas.position-left.is-transition-overlap.is-open {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

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

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

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

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

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

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

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

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

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

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

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

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

@media print, screen and (min-width: 40em) {
  .position-left.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible;
  }
  .position-left.reveal-for-medium .close-button {
    display: none;
  }
  .off-canvas-content .position-left.reveal-for-medium {
    -webkit-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;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible;
  }
  .position-right.reveal-for-medium .close-button {
    display: none;
  }
  .off-canvas-content .position-right.reveal-for-medium {
    -webkit-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;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible;
  }
  .position-top.reveal-for-medium .close-button {
    display: none;
  }
  .off-canvas-content .position-top.reveal-for-medium {
    -webkit-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;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible;
  }
  .position-bottom.reveal-for-medium .close-button {
    display: none;
  }
  .off-canvas-content .position-bottom.reveal-for-medium {
    -webkit-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;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible;
  }
  .position-left.reveal-for-large .close-button {
    display: none;
  }
  .off-canvas-content .position-left.reveal-for-large {
    -webkit-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;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible;
  }
  .position-right.reveal-for-large .close-button {
    display: none;
  }
  .off-canvas-content .position-right.reveal-for-large {
    -webkit-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;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible;
  }
  .position-top.reveal-for-large .close-button {
    display: none;
  }
  .off-canvas-content .position-top.reveal-for-large {
    -webkit-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;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible;
  }
  .position-bottom.reveal-for-large .close-button {
    display: none;
  }
  .off-canvas-content .position-bottom.reveal-for-large {
    -webkit-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 print, screen and (min-width: 40em) {
  .off-canvas.in-canvas-for-medium {
    visibility: visible;
    height: auto;
    position: static;
    background: none;
    width: auto;
    overflow: visible;
    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 {
    box-shadow: none;
    -webkit-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;
    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 {
    box-shadow: none;
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas.in-canvas-for-large .close-button {
    display: none;
  }
}
.orbit {
  position: relative;
}

.orbit-container {
  position: relative;
  height: 0;
  margin: 0;
  list-style: none;
  overflow: hidden;
}

.orbit-slide {
  width: 100%;
  position: absolute;
}
.orbit-slide.no-motionui.is-active {
  top: 0;
  left: 0;
}

.orbit-figure {
  margin: 0;
}

.orbit-image {
  width: 100%;
  max-width: 100%;
  margin: 0;
}

.orbit-caption {
  position: absolute;
  bottom: 0;
  width: 100%;
  margin-bottom: 0;
  padding: 1rem;
  background-color: rgba(36, 36, 36, 0.5);
  color: #FFFFFF;
}

.orbit-next, .orbit-previous {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 10;
  padding: 1rem;
  color: #FFFFFF;
}
[data-whatinput=mouse] .orbit-next, [data-whatinput=mouse] .orbit-previous {
  outline: 0;
}
.orbit-next:hover, .orbit-previous:hover, .orbit-next:active, .orbit-previous:active, .orbit-next:focus, .orbit-previous:focus {
  background-color: transparent;
}

.orbit-previous {
  left: 0;
}

.orbit-next {
  left: auto;
  right: 0;
}

.orbit-bullets {
  position: relative;
  margin-top: 0.8rem;
  margin-bottom: 0.8rem;
  text-align: center;
}
[data-whatinput=mouse] .orbit-bullets {
  outline: 0;
}
.orbit-bullets button {
  width: 1.2rem;
  height: 1.2rem;
  margin: 0.1rem;
  border-radius: 50%;
  background-color: #ABAEB4;
}
.orbit-bullets button:hover {
  background-color: #b41212;
}
.orbit-bullets button.is-active {
  background-color: #b41212;
}

.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-order: 1;
      -ms-flex-order: 1;
          order: 1;
}
.pagination::after {
  clear: both;
}
.pagination li {
  margin-right: 0.1rem;
  border-radius: 0;
  font-size: 1.4rem;
  display: none;
}
.pagination li:last-child, .pagination li:first-child {
  display: inline-block;
}
@media print, screen and (min-width: 40em) {
  .pagination li {
    display: inline-block;
  }
}
.pagination a,
.pagination button {
  display: block;
  padding: 0.3rem 1rem;
  border-radius: 0;
  color: #242424;
}
.pagination a:hover,
.pagination button:hover {
  background: #E2E4E7;
}
.pagination .current {
  padding: 0.3rem 1rem;
  background: #242424;
  color: #FFFFFF;
  cursor: default;
}
.pagination .disabled {
  padding: 0.3rem 1rem;
  color: #E2E4E7;
  cursor: not-allowed;
}
.pagination .disabled:hover {
  background: transparent;
}
.pagination .ellipsis::after {
  padding: 0.3rem 1rem;
  content: "…";
  color: #242424;
}

.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: "»";
}

.progress {
  height: 1rem;
  margin-bottom: 1rem;
  border-radius: 0;
  background-color: #E2E4E7;
}
.progress.primary .progress-meter {
  background-color: #242424;
}
.progress.secondary .progress-meter {
  background-color: #F7F7F7;
}
.progress.success .progress-meter {
  background-color: #3adb76;
}
.progress.warning .progress-meter {
  background-color: #ffae00;
}
.progress.alert .progress-meter {
  background-color: #cc4b37;
}

.progress-meter {
  position: relative;
  display: block;
  width: 0%;
  height: 100%;
  background-color: #242424;
}

.progress-meter-text {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  margin: 0;
  font-size: 0.75rem;
  font-weight: bold;
  color: #FFFFFF;
  white-space: nowrap;
}

.slider {
  position: relative;
  height: 0.5rem;
  margin-top: 1.25rem;
  margin-bottom: 2.25rem;
  background-color: #E2E4E7;
  cursor: pointer;
  -webkit-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -ms-touch-action: none;
      touch-action: none;
}

.slider-fill {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  max-width: 100%;
  height: 0.5rem;
  background-color: #E2E4E7;
  transition: all 0.2s ease-in-out;
}
.slider-fill.is-dragging {
  transition: all 0s linear;
}

.slider-handle {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
  z-index: 1;
  display: inline-block;
  width: 1.4rem;
  height: 1.4rem;
  border-radius: 0;
  background-color: #242424;
  transition: all 0.2s ease-in-out;
  -ms-touch-action: manipulation;
      touch-action: manipulation;
}
[data-whatinput=mouse] .slider-handle {
  outline: 0;
}
.slider-handle:hover {
  background-color: #1f1f1f;
}
.slider-handle.is-dragging {
  transition: all 0s linear;
}

.slider.disabled,
.slider[disabled] {
  opacity: 0.25;
  cursor: not-allowed;
}

.slider.vertical {
  display: inline-block;
  width: 0.5rem;
  height: 12.5rem;
  margin: 0 1.25rem;
  -webkit-transform: scale(1, -1);
          transform: scale(1, -1);
}
.slider.vertical .slider-fill {
  top: 0;
  width: 0.5rem;
  max-height: 100%;
}
.slider.vertical .slider-handle {
  position: absolute;
  top: 0;
  left: 50%;
  width: 1.4rem;
  height: 1.4rem;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.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: #242424;
  overflow-y: auto;
}

.reveal {
  z-index: 1006;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  display: none;
  padding: 1rem;
  border: 1px solid #E2E4E7;
  border-radius: 0;
  background-color: #FFFFFF;
  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: 40em) {
  .reveal {
    min-height: 0;
  }
}
.reveal .column {
  min-width: 0;
}
.reveal > :last-child {
  margin-bottom: 0;
}
@media print, screen and (min-width: 40em) {
  .reveal {
    width: 600px;
    max-width: 120rem;
  }
}
.reveal.collapse {
  padding: 0;
}
@media print, screen and (min-width: 40em) {
  .reveal.tiny {
    width: 30%;
    max-width: 120rem;
  }
}
@media print, screen and (min-width: 40em) {
  .reveal.small {
    width: 50%;
    max-width: 120rem;
  }
}
@media print, screen and (min-width: 40em) {
  .reveal.large {
    width: 90%;
    max-width: 120rem;
  }
}
.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 print, screen and (max-width: 39.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;
}

.switch {
  height: 2rem;
  position: relative;
  margin-bottom: 1rem;
  outline: 0;
  font-size: 1.4rem;
  font-weight: bold;
  color: #FFFFFF;
  -webkit-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.switch-input {
  position: absolute;
  margin-bottom: 0;
  opacity: 0;
}

.switch-paddle {
  position: relative;
  display: block;
  width: 4rem;
  height: 2rem;
  border-radius: 0;
  background: #E2E4E7;
  transition: all 0.25s ease-out;
  font-weight: inherit;
  color: inherit;
  cursor: pointer;
}
input + .switch-paddle {
  margin: 0;
}
.switch-paddle::after {
  position: absolute;
  top: 0.25rem;
  left: 0.25rem;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  border-radius: 0;
  background: #FFFFFF;
  transition: all 0.25s ease-out;
  content: "";
}
input:checked ~ .switch-paddle {
  background: #242424;
}
input:checked ~ .switch-paddle::after {
  left: 2.25rem;
}
input:disabled ~ .switch-paddle {
  cursor: not-allowed;
  opacity: 0.5;
}
[data-whatinput=mouse] input:focus ~ .switch-paddle {
  outline: 0;
}

.switch-inactive, .switch-active {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.switch-active {
  left: 8%;
  display: none;
}
input:checked + label > .switch-active {
  display: block;
}

.switch-inactive {
  right: 15%;
}
input:checked + label > .switch-inactive {
  display: none;
}

.switch.tiny {
  height: 1.5rem;
}
.switch.tiny .switch-paddle {
  width: 3rem;
  height: 1.5rem;
  font-size: 1rem;
}
.switch.tiny .switch-paddle::after {
  top: 0.25rem;
  left: 0.25rem;
  width: 1rem;
  height: 1rem;
}
.switch.tiny input:checked ~ .switch-paddle::after {
  left: 1.75rem;
}

.switch.small {
  height: 1.75rem;
}
.switch.small .switch-paddle {
  width: 3.5rem;
  height: 1.75rem;
  font-size: 1.2rem;
}
.switch.small .switch-paddle::after {
  top: 0.25rem;
  left: 0.25rem;
  width: 1.25rem;
  height: 1.25rem;
}
.switch.small input:checked ~ .switch-paddle::after {
  left: 2rem;
}

.switch.large {
  height: 2.5rem;
}
.switch.large .switch-paddle {
  width: 5rem;
  height: 2.5rem;
  font-size: 1.6rem;
}
.switch.large .switch-paddle::after {
  top: 0.25rem;
  left: 0.25rem;
  width: 2rem;
  height: 2rem;
}
.switch.large input:checked ~ .switch-paddle::after {
  left: 2.75rem;
}

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.8rem 1rem 1rem;
  font-weight: 900;
}

thead {
  background: #f9f9f9;
  color: #424A55;
}

tfoot {
  background: #f2f2f2;
  color: #424A55;
}

thead tr,
tfoot tr {
  background: transparent;
}
thead th,
thead td,
tfoot th,
tfoot td {
  padding: 0.8rem 1rem 1rem;
  font-weight: 900;
  text-align: left;
}

tbody th,
tbody td {
  padding: 0.8rem 1rem 1rem;
}

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 print, 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 #E2E4E7;
  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-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: #242424;
}
.tabs.primary > li > a {
  color: #FFFFFF;
}
.tabs.primary > li > a:hover, .tabs.primary > li > a:focus {
  background: #2f2f2f;
}

.tabs-title {
  float: left;
}
.tabs-title > a {
  display: block;
  padding: 1.25rem 1.5rem;
  font-size: 1.2rem;
  line-height: 1;
  color: #242424;
}
[data-whatinput=mouse] .tabs-title > a {
  outline: 0;
}
.tabs-title > a:hover {
  background: #FFFFFF;
  color: #1f1f1f;
}
.tabs-title > a:focus, .tabs-title > a[aria-selected=true] {
  background: #E2E4E7;
  color: #242424;
}

.tabs-content {
  border: 1px solid #E2E4E7;
  border-top: 0;
  background: #FFFFFF;
  color: #424A55;
  transition: all 0.5s ease;
}

.tabs-content.vertical {
  border: 1px solid #E2E4E7;
  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;
  box-shadow: 0 0 0 1px rgba(36, 36, 36, 0.2);
  line-height: 0;
}

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

.title-bar {
  padding: 0.5rem;
  background: #242424;
  color: #FFFFFF;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -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-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;
}

.has-tip {
  position: relative;
  display: inline-block;
  border-bottom: dotted 1px #ABAEB4;
  font-weight: 900;
  cursor: help;
}

.tooltip {
  position: absolute;
  top: calc(100% + 0.6495rem);
  z-index: 1200;
  max-width: 10rem;
  padding: 0.75rem;
  border-radius: 0;
  background-color: #242424;
  font-size: 80%;
  color: #FFFFFF;
}
.tooltip::before {
  position: absolute;
}
.tooltip.bottom::before {
  display: block;
  width: 0;
  height: 0;
  border: inset 0.75rem;
  content: "";
  border-top-width: 0;
  border-bottom-style: solid;
  border-color: transparent transparent #242424;
  bottom: 100%;
}
.tooltip.bottom.align-center::before {
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.tooltip.top::before {
  display: block;
  width: 0;
  height: 0;
  border: inset 0.75rem;
  content: "";
  border-bottom-width: 0;
  border-top-style: solid;
  border-color: #242424 transparent transparent;
  top: 100%;
  bottom: auto;
}
.tooltip.top.align-center::before {
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.tooltip.left::before {
  display: block;
  width: 0;
  height: 0;
  border: inset 0.75rem;
  content: "";
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #242424;
  left: 100%;
}
.tooltip.left.align-center::before {
  bottom: auto;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.tooltip.right::before {
  display: block;
  width: 0;
  height: 0;
  border: inset 0.75rem;
  content: "";
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #242424 transparent transparent;
  right: 100%;
  left: auto;
}
.tooltip.right.align-center::before {
  bottom: auto;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.tooltip.align-top::before {
  bottom: auto;
  top: 10%;
}
.tooltip.align-bottom::before {
  bottom: 10%;
  top: auto;
}
.tooltip.align-left::before {
  left: 10%;
  right: auto;
}
.tooltip.align-right::before {
  left: auto;
  right: 10%;
}

.top-bar {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -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: #E2E4E7;
}
.top-bar input {
  max-width: 200px;
  margin-right: 1rem;
}
.top-bar .input-group-field {
  width: 100%;
  margin-right: 0;
}
.top-bar input.button, .top-bar .wp-block-button input.wp-block-button__link, .wp-block-button .top-bar input.wp-block-button__link {
  width: auto;
}
.top-bar .top-bar-left,
.top-bar .top-bar-right {
  -webkit-flex: 0 0 100%;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
  max-width: 100%;
}
@media print, screen and (min-width: 40em) {
  .top-bar {
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
  }
  .top-bar .top-bar-left {
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
    margin-right: auto;
  }
  .top-bar .top-bar-right {
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto;
    margin-left: auto;
  }
}
@media print, 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-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%;
  }
}
@media print, screen and (max-width: 74.99875em) {
  .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-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%;
  }
}

.top-bar-title {
  -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-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}

.hide {
  display: none !important;
}

.invisible {
  visibility: hidden;
}

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

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

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

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

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

@media screen and (max-width: 39.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 print, screen and (min-width: 64em) and (max-width: 74.99875em) {
  .hide-for-large-only {
    display: none !important;
  }
}

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

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

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

.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-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

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

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

.align-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-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

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

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

.align-top {
  -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-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-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

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

.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;
              -ms-grid-row-align: stretch;
          align-self: stretch;
}

.align-center-middle {
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: 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-order: 1;
      -ms-flex-order: 1;
          order: 1;
}

.small-order-2 {
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2;
}

.small-order-3 {
  -webkit-order: 3;
      -ms-flex-order: 3;
          order: 3;
}

.small-order-4 {
  -webkit-order: 4;
      -ms-flex-order: 4;
          order: 4;
}

.small-order-5 {
  -webkit-order: 5;
      -ms-flex-order: 5;
          order: 5;
}

.small-order-6 {
  -webkit-order: 6;
      -ms-flex-order: 6;
          order: 6;
}

@media print, screen and (min-width: 40em) {
  .medium-order-1 {
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }

  .medium-order-2 {
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }

  .medium-order-3 {
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3;
  }

  .medium-order-4 {
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4;
  }

  .medium-order-5 {
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5;
  }

  .medium-order-6 {
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6;
  }
}
@media print, screen and (min-width: 64em) {
  .large-order-1 {
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }

  .large-order-2 {
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }

  .large-order-3 {
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3;
  }

  .large-order-4 {
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4;
  }

  .large-order-5 {
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5;
  }

  .large-order-6 {
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6;
  }
}
.flex-container {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

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

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

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

.flex-dir-row {
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
}

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

.flex-dir-column {
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}

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

@media print, screen and (min-width: 40em) {
  .medium-flex-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }

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

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

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

  .medium-flex-dir-row {
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
  }

  .medium-flex-dir-row-reverse {
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }

  .medium-flex-dir-column {
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }

  .medium-flex-dir-column-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-flex;
    display: -ms-flexbox;
    display: flex;
  }

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

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

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

  .large-flex-dir-row {
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
  }

  .large-flex-dir-row-reverse {
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }

  .large-flex-dir-column {
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }

  .large-flex-dir-column-reverse {
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}
.slide-in-down.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  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);
          transform: translateY(0);
}

.slide-in-left.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
  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);
          transform: translateX(0);
}

.slide-in-up.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
  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);
          transform: translateY(0);
}

.slide-in-right.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
  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);
          transform: translateX(0);
}

.slide-out-down.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  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%);
          transform: translateY(100%);
}

.slide-out-right.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  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%);
          transform: translateX(100%);
}

.slide-out-up.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  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%);
          transform: translateY(-100%);
}

.slide-out-left.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  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%);
          transform: translateX(-100%);
}

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

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

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

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

.hinge-in-from-top.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  -webkit-transform-origin: top;
          transform-origin: top;
  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 {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  -webkit-transform-origin: right;
          transform-origin: right;
  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 {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(90deg);
          transform: perspective(2000px) rotateX(90deg);
  -webkit-transform-origin: bottom;
          transform-origin: bottom;
  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 {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(90deg);
          transform: perspective(2000px) rotateY(90deg);
  -webkit-transform-origin: left;
          transform-origin: left;
  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 {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  -webkit-transform-origin: center;
          transform-origin: center;
  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 {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  -webkit-transform-origin: center;
          transform-origin: center;
  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 {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: top;
          transform-origin: top;
  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 {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: right;
          transform-origin: right;
  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 {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: bottom;
          transform-origin: bottom;
  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 {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: left;
          transform-origin: left;
  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 {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: center;
          transform-origin: center;
  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 {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: center;
          transform-origin: center;
  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 {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: scale(0.5);
          transform: scale(0.5);
  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);
          transform: scale(1);
  opacity: 1;
}

.scale-in-down.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: scale(1.5);
          transform: scale(1.5);
  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);
          transform: scale(1);
  opacity: 1;
}

.scale-out-up.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: scale(1);
          transform: scale(1);
  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);
          transform: scale(1.5);
  opacity: 0;
}

.scale-out-down.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: scale(1);
          transform: scale(1);
  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);
          transform: scale(0.5);
  opacity: 0;
}

.spin-in.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: rotate(-0.75turn);
          transform: rotate(-0.75turn);
  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);
          transform: rotate(0);
  opacity: 1;
}

.spin-out.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: rotate(0);
          transform: rotate(0);
  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);
          transform: rotate(0.75turn);
  opacity: 0;
}

.spin-in-ccw.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: rotate(0.75turn);
          transform: rotate(0.75turn);
  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);
          transform: rotate(0);
  opacity: 1;
}

.spin-out-ccw.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: rotate(0);
          transform: rotate(0);
  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);
          transform: rotate(-0.75turn);
  opacity: 0;
}

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

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

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

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

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

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

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

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

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

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

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

.long-delay {
  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;
}

/*
  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;
  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: 3.2rem;
}
body.admin-bar.offcanvas .off-canvas.is-open {
  top: 4.6rem;
}
@media screen and (min-width: 48.9375em) {
  body.admin-bar.offcanvas .off-canvas.is-open {
    top: 3.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: 1rem 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-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  margin-right: -2rem;
  margin-left: -2rem;
}
@media print, screen and (min-width: 40em) {
  .gallery {
    margin-right: -1rem;
    margin-left: -1rem;
  }
}
.gallery.gallery-columns-1 > .gallery-item {
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: calc(50% - 4rem);
  margin-left: 2rem;
  margin-right: 2rem;
}
@media print, screen and (min-width: 40em) {
  .gallery.gallery-columns-1 > .gallery-item {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: calc(25% - 3rem);
    margin-left: 1.5rem;
    margin-right: 1.5rem;
  }
}
@media print, screen and (min-width: 64em) {
  .gallery.gallery-columns-1 > .gallery-item {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: calc(100% - 3rem);
    margin-left: 1.5rem;
    margin-right: 1.5rem;
  }
}
.gallery.gallery-columns-2 > .gallery-item {
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: calc(50% - 4rem);
  margin-left: 2rem;
  margin-right: 2rem;
}
@media print, screen and (min-width: 40em) {
  .gallery.gallery-columns-2 > .gallery-item {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: calc(25% - 3rem);
    margin-left: 1.5rem;
    margin-right: 1.5rem;
  }
}
@media print, screen and (min-width: 64em) {
  .gallery.gallery-columns-2 > .gallery-item {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: calc(50% - 3rem);
    margin-left: 1.5rem;
    margin-right: 1.5rem;
  }
}
.gallery.gallery-columns-3 > .gallery-item {
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: calc(50% - 4rem);
  margin-left: 2rem;
  margin-right: 2rem;
}
@media print, screen and (min-width: 40em) {
  .gallery.gallery-columns-3 > .gallery-item {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: calc(25% - 3rem);
    margin-left: 1.5rem;
    margin-right: 1.5rem;
  }
}
@media print, screen and (min-width: 64em) {
  .gallery.gallery-columns-3 > .gallery-item {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: calc(33.3333333333% - 3rem);
    margin-left: 1.5rem;
    margin-right: 1.5rem;
  }
}
.gallery.gallery-columns-4 > .gallery-item {
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: calc(50% - 4rem);
  margin-left: 2rem;
  margin-right: 2rem;
}
@media print, screen and (min-width: 40em) {
  .gallery.gallery-columns-4 > .gallery-item {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: calc(25% - 3rem);
    margin-left: 1.5rem;
    margin-right: 1.5rem;
  }
}
@media print, screen and (min-width: 64em) {
  .gallery.gallery-columns-4 > .gallery-item {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: calc(25% - 3rem);
    margin-left: 1.5rem;
    margin-right: 1.5rem;
  }
}
.gallery.gallery-columns-5 > .gallery-item {
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: calc(50% - 4rem);
  margin-left: 2rem;
  margin-right: 2rem;
}
@media print, screen and (min-width: 40em) {
  .gallery.gallery-columns-5 > .gallery-item {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: calc(25% - 3rem);
    margin-left: 1.5rem;
    margin-right: 1.5rem;
  }
}
@media print, screen and (min-width: 64em) {
  .gallery.gallery-columns-5 > .gallery-item {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: calc(20% - 3rem);
    margin-left: 1.5rem;
    margin-right: 1.5rem;
  }
}
.gallery.gallery-columns-6 > .gallery-item {
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: calc(50% - 4rem);
  margin-left: 2rem;
  margin-right: 2rem;
}
@media print, screen and (min-width: 40em) {
  .gallery.gallery-columns-6 > .gallery-item {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: calc(25% - 3rem);
    margin-left: 1.5rem;
    margin-right: 1.5rem;
  }
}
@media print, screen and (min-width: 64em) {
  .gallery.gallery-columns-6 > .gallery-item {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: calc(16.6666666667% - 3rem);
    margin-left: 1.5rem;
    margin-right: 1.5rem;
  }
}
.gallery.gallery-columns-7 > .gallery-item {
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: calc(50% - 4rem);
  margin-left: 2rem;
  margin-right: 2rem;
}
@media print, screen and (min-width: 40em) {
  .gallery.gallery-columns-7 > .gallery-item {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: calc(25% - 3rem);
    margin-left: 1.5rem;
    margin-right: 1.5rem;
  }
}
@media print, screen and (min-width: 64em) {
  .gallery.gallery-columns-7 > .gallery-item {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: calc(14.2857142857% - 3rem);
    margin-left: 1.5rem;
    margin-right: 1.5rem;
  }
}
.gallery.gallery-columns-8 > .gallery-item {
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: calc(50% - 4rem);
  margin-left: 2rem;
  margin-right: 2rem;
}
@media print, screen and (min-width: 40em) {
  .gallery.gallery-columns-8 > .gallery-item {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: calc(25% - 3rem);
    margin-left: 1.5rem;
    margin-right: 1.5rem;
  }
}
@media print, screen and (min-width: 64em) {
  .gallery.gallery-columns-8 > .gallery-item {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: calc(12.5% - 3rem);
    margin-left: 1.5rem;
    margin-right: 1.5rem;
  }
}
.gallery.gallery-columns-9 > .gallery-item {
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: calc(50% - 4rem);
  margin-left: 2rem;
  margin-right: 2rem;
}
@media print, screen and (min-width: 40em) {
  .gallery.gallery-columns-9 > .gallery-item {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: calc(25% - 3rem);
    margin-left: 1.5rem;
    margin-right: 1.5rem;
  }
}
@media print, screen and (min-width: 64em) {
  .gallery.gallery-columns-9 > .gallery-item {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: calc(11.1111111111% - 3rem);
    margin-left: 1.5rem;
    margin-right: 1.5rem;
  }
}
.gallery .gallery-icon > a {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 1rem;
  border: solid 4px #FFFFFF;
  border-radius: 0;
  box-shadow: 0 0 0 1px rgba(36, 36, 36, 0.2);
  line-height: 0;
  transition: box-shadow 200ms ease-out;
}
.gallery .gallery-icon > a:hover, .gallery .gallery-icon > a:focus {
  box-shadow: 0 0 6px 1px rgba(36, 36, 36, 0.5);
}
.gallery .gallery-icon > a image {
  box-shadow: none;
}
.gallery .gallery-icon > img {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 1rem;
  border: solid 4px #FFFFFF;
  border-radius: 0;
  box-shadow: 0 0 0 1px rgba(36, 36, 36, 0.2);
  line-height: 0;
}

/*
Frontend styles for gutenberg blocks
*/
/** === Base Color Palatte === */
.has-primary-background-color {
  background-color: #242424;
}

.has-primary-color {
  color: #242424;
}

.has-secondary-background-color {
  background-color: #F7F7F7;
}

.has-secondary-color {
  color: #F7F7F7;
}

.has-success-background-color {
  background-color: #3adb76;
}

.has-success-color {
  color: #3adb76;
}

.has-warning-background-color {
  background-color: #ffae00;
}

.has-warning-color {
  color: #ffae00;
}

.has-alert-background-color {
  background-color: #cc4b37;
}

.has-alert-color {
  color: #cc4b37;
}

/** === Button === */
.wp-block-button .wp-block-button__link.has-primary-background-color {
  background-color: #242424;
}
.wp-block-button .wp-block-button__link.has-primary-color {
  color: #242424;
}
.wp-block-button .wp-block-button__link.has-secondary-background-color {
  background-color: #F7F7F7;
}
.wp-block-button .wp-block-button__link.has-secondary-color {
  color: #F7F7F7;
}
.wp-block-button .wp-block-button__link.has-success-background-color {
  background-color: #3adb76;
}
.wp-block-button .wp-block-button__link.has-success-color {
  color: #3adb76;
}
.wp-block-button .wp-block-button__link.has-warning-background-color {
  background-color: #ffae00;
}
.wp-block-button .wp-block-button__link.has-warning-color {
  color: #ffae00;
}
.wp-block-button .wp-block-button__link.has-alert-background-color {
  background-color: #cc4b37;
}
.wp-block-button .wp-block-button__link.has-alert-color {
  color: #cc4b37;
}
.wp-block-button.is-style-squared .wp-block-button__link {
  border-radius: 0;
}
/** === File === */
.wp-block-file .wp-block-file__button {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 1rem 0;
  padding: 0.85em 1em;
  border: 1px solid transparent;
  border-radius: 0;
  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;
}
[data-whatinput=mouse] .wp-block-file .wp-block-file__button {
  outline: 0;
}
.wp-block-file .wp-block-file__button, .wp-block-file .wp-block-file__button.disabled, .wp-block-file .wp-block-file__button[disabled], .wp-block-file .wp-block-file__button.disabled:hover, .wp-block-file .wp-block-file__button[disabled]:hover, .wp-block-file .wp-block-file__button.disabled:focus, .wp-block-file .wp-block-file__button[disabled]:focus {
  background-color: transparent;
  color: #424A55;
}
.wp-block-file .wp-block-file__button:hover, .wp-block-file .wp-block-file__button:focus {
  background-color: rgba(0, 0, 0, 0);
  color: #424A55;
}

/*
Font family and base font style set in settings.scss in GLOBAL

@import url('https://fonts.googleapis.com/css?family=Source+Sans+Pro&display=swap');
$body-font-family: 'Source Sans Pro', sans-serif;
$global-font-size: 10px;

*/
h1, h2, h3, h4, h5 h6 {
  font-weight: 900;
  color: #242424;
}

.img--bg {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

@-webkit-keyframes moveLefttoRight {
  0% {
    -webkit-transform: translateX(-1rem);
            transform: translateX(-1rem);
  }
  50% {
    -webkit-transform: translateX(0.8rem);
            transform: translateX(0.8rem);
  }
  100% {
    -webkit-transform: translateX(-1rem);
            transform: translateX(-1rem);
  }
}

@keyframes moveLefttoRight {
  0% {
    -webkit-transform: translateX(-1rem);
            transform: translateX(-1rem);
  }
  50% {
    -webkit-transform: translateX(0.8rem);
            transform: translateX(0.8rem);
  }
  100% {
    -webkit-transform: translateX(-1rem);
            transform: translateX(-1rem);
  }
}
@-webkit-keyframes moveRighttoLeft {
  0% {
    -webkit-transform: rotate(-180deg) translateX(-1rem);
            transform: rotate(-180deg) translateX(-1rem);
  }
  50% {
    -webkit-transform: rotate(-180deg) translateX(0.8rem);
            transform: rotate(-180deg) translateX(0.8rem);
  }
  100% {
    -webkit-transform: rotate(-180deg) translateX(-1rem);
            transform: rotate(-180deg) translateX(-1rem);
  }
}
@keyframes moveRighttoLeft {
  0% {
    -webkit-transform: rotate(-180deg) translateX(-1rem);
            transform: rotate(-180deg) translateX(-1rem);
  }
  50% {
    -webkit-transform: rotate(-180deg) translateX(0.8rem);
            transform: rotate(-180deg) translateX(0.8rem);
  }
  100% {
    -webkit-transform: rotate(-180deg) translateX(-1rem);
            transform: rotate(-180deg) translateX(-1rem);
  }
}
@-webkit-keyframes moveUpDown {
  0% {
    -webkit-transform: rotate(-90deg) translateX(-1rem);
            transform: rotate(-90deg) translateX(-1rem);
  }
  50% {
    -webkit-transform: rotate(-90deg) translateX(1rem);
            transform: rotate(-90deg) translateX(1rem);
  }
  100% {
    -webkit-transform: rotate(-90deg) translateX(-1rem);
            transform: rotate(-90deg) translateX(-1rem);
  }
}
@keyframes moveUpDown {
  0% {
    -webkit-transform: rotate(-90deg) translateX(-1rem);
            transform: rotate(-90deg) translateX(-1rem);
  }
  50% {
    -webkit-transform: rotate(-90deg) translateX(1rem);
            transform: rotate(-90deg) translateX(1rem);
  }
  100% {
    -webkit-transform: rotate(-90deg) translateX(-1rem);
            transform: rotate(-90deg) translateX(-1rem);
  }
}
.bounce--light {
  transition: all 0.2s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
.bounce--light:hover {
  -webkit-transform: scale(1.05) translateY(-0.5rem);
          transform: scale(1.05) translateY(-0.5rem);
}

@-webkit-keyframes load6 {
  0% {
    box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em;
  }
  5%, 95% {
    box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em;
  }
  10%, 59% {
    box-shadow: 0 -0.83em 0 -0.4em, -0.087em -0.825em 0 -0.42em, -0.173em -0.812em 0 -0.44em, -0.256em -0.789em 0 -0.46em, -0.297em -0.775em 0 -0.477em;
  }
  20% {
    box-shadow: 0 -0.83em 0 -0.4em, -0.338em -0.758em 0 -0.42em, -0.555em -0.617em 0 -0.44em, -0.671em -0.488em 0 -0.46em, -0.749em -0.34em 0 -0.477em;
  }
  38% {
    box-shadow: 0 -0.83em 0 -0.4em, -0.377em -0.74em 0 -0.42em, -0.645em -0.522em 0 -0.44em, -0.775em -0.297em 0 -0.46em, -0.82em -0.09em 0 -0.477em;
  }
  100% {
    box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em;
  }
}

@keyframes load6 {
  0% {
    box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em;
  }
  5%, 95% {
    box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em;
  }
  10%, 59% {
    box-shadow: 0 -0.83em 0 -0.4em, -0.087em -0.825em 0 -0.42em, -0.173em -0.812em 0 -0.44em, -0.256em -0.789em 0 -0.46em, -0.297em -0.775em 0 -0.477em;
  }
  20% {
    box-shadow: 0 -0.83em 0 -0.4em, -0.338em -0.758em 0 -0.42em, -0.555em -0.617em 0 -0.44em, -0.671em -0.488em 0 -0.46em, -0.749em -0.34em 0 -0.477em;
  }
  38% {
    box-shadow: 0 -0.83em 0 -0.4em, -0.377em -0.74em 0 -0.42em, -0.645em -0.522em 0 -0.44em, -0.775em -0.297em 0 -0.46em, -0.82em -0.09em 0 -0.477em;
  }
  100% {
    box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em;
  }
}
@-webkit-keyframes round {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes round {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
button,
.button,
.wp-block-button .wp-block-button__link {
  position: relative;
  font-size: 1.6rem;
  width: 14rem;
  height: 4.25rem;
  font-weight: 900;
  white-space: nowrap;
}
button::before,
.button::before,
.wp-block-button .wp-block-button__link::before {
  content: "";
  display: block;
  width: 40px;
  height: 40px;
  position: absolute;
  left: -30px;
  top: 3px;
}
button::after,
.button::after,
.wp-block-button .wp-block-button__link::after {
  content: "";
  position: absolute;
  left: -23px;
  top: 16px;
  height: 2rem;
  width: 2.75rem;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("./images/arrows/arrow--orange.svg");
}
button:hover,
.button:hover,
.wp-block-button .wp-block-button__link:hover {
  cursor: pointer;
}
button:hover::after,
.button:hover::after,
.wp-block-button .wp-block-button__link:hover::after {
  background-image: url("./images/arrows/arrow--white.svg");
}

button::before,
.button::before,
.wp-block-button .wp-block-button__link::before {
  border: 2px solid #1B4E74;
}
button::after,
.button::after,
.wp-block-button .wp-block-button__link::after {
  color: #1B4E74;
}
button:hover::before,
.button:hover::before,
.wp-block-button .wp-block-button__link:hover::before {
  border: 2px solid #b41212;
  background-color: #b41212;
}
button--top,
.button--top {
  width: 12rem;
  font-size: 1.4rem;
  color: #1B4E74;
  white-space: normal;
}
@media screen and (min-width: 80em) {
  button--top,
.button--top {
    width: 8rem;
  }
}
button--top::before,
.button--top::before {
  left: -3rem;
  top: 5px;
}
@media screen and (min-width: 80em) {
  button--top::before,
.button--top::before {
    left: 2rem;
    top: -3.5rem;
  }
}
button--top::after,
.button--top::after {
  content: "";
  position: absolute;
  left: -20px;
  top: 15px;
  height: 2rem;
  width: 2.75rem;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("./images/arrows/arrow--blue.svg");
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
}
@media screen and (min-width: 80em) {
  button--top::after,
.button--top::after {
    left: 30px;
    top: -25px;
  }
}
button--top:hover,
.button--top:hover {
  color: #b41212;
}
button--grey::before,
.button--grey::before {
  border: 2px solid #ABAEB4;
}
button--grey::after,
.button--grey::after {
  content: "";
  position: absolute;
  left: -23px;
  top: 16px;
  height: 2rem;
  width: 2.75rem;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("./images/arrows/arrow--grey.svg");
}
button--grey:hover::before,
.button--grey:hover::before {
  background-color: #FFFFFF;
  border: 2px solid #b41212;
}
button--grey:hover::after,
.button--grey:hover::after {
  background-image: url("./images/arrows/arrow--orange.svg");
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
  top: 10px;
}
button--grey__next::after,
.button--grey__next::after {
  left: -23px;
  top: 10px;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
  width: 2.8rem;
}
button--grey__next:hover::after,
.button--grey__next:hover::after {
  left: -23px;
  top: 16px;
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
  width: 2.8rem;
}
button--blue::after,
.button--blue::after {
  content: "";
  background-image: url("./images/arrows/arrow--blue.svg");
}
button--orange::before,
.button--orange::before {
  border: 2px solid #b41212;
}
button--orange::after,
.button--orange::after {
  color: #FFFFFF;
}
button--orange:hover::before,
.button--orange:hover::before {
  background-color: #b41212;
}
button--orange:hover::after,
.button--orange:hover::after {
  color: blue;
}
button--black::before,
.button--black::before {
  border: 2px solid #242424;
}
button--black::after,
.button--black::after {
  color: #FFFFFF;
  background-image: url("./images/arrows/arrow--black.svg");
}
button--black:hover::before,
.button--black:hover::before {
  background-color: #242424;
  border-color: #242424;
}
button--black:hover::after,
.button--black:hover::after {
  color: blue;
}
button--white::before,
.button--white::before {
  border: 2px solid #FFFFFF;
}
button--white::after,
.button--white::after {
  color: #FFFFFF;
  background-image: url("./images/arrows/arrow--white.svg");
}
button--white:hover::before,
.button--white:hover::before {
  background-color: #FFFFFF;
  border: 2px solid #FFFFFF;
}
button--white:hover::after,
.button--white:hover::after {
  background-image: url("./images/arrows/arrow--blue.svg");
}
button.art--filter,
.button.art--filter,
.wp-block-button .art--filter.wp-block-button__link {
  color: inherit;
  display: block;
  margin: 0 auto 2rem;
}

/*
Swiper button styles for News Carousel
*/
.swiper-button {
  background-image: none;
  width: 11rem;
  height: 4rem;
  font-weight: bold;
}
.swiper-button:active, .swiper-button:focus {
  outline: none;
}
.swiper-button::before {
  content: "";
  display: block;
  width: 40px;
  height: 40px;
  position: absolute;
  left: -30px;
  top: 3px;
  border: 2px solid #ABAEB4;
}
.swiper-button::after {
  content: "";
  position: absolute;
  left: -23px;
  top: 16px;
  height: 2rem;
  width: 2.75rem;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("./images/arrows/arrow--grey.svg");
}
.swiper-button:hover {
  cursor: pointer;
}
.swiper-button:hover::before {
  background-color: #FFFFFF;
  border: 2px solid #b41212;
}
.swiper-button-prev {
  left: 20%;
}
@media print, screen and (min-width: 64em) {
  .swiper-button-prev {
    left: 92%;
    top: 0rem;
    width: 2rem;
  }
}
.swiper-button-prev::after {
  left: -23px;
  top: 16px;
  height: 2rem;
  width: 2.75rem;
}
.swiper-button-prev:hover::after {
  background-image: url("./images/arrows/arrow--orange.svg");
  -webkit-transform: rotate(-180deg);
          transform: rotate(-180deg);
  top: 10px;
}
.swiper-button-next {
  left: 90%;
}
.swiper-button-next::after {
  -webkit-transform: rotate(-180deg);
          transform: rotate(-180deg);
  left: -23px;
  top: 10px;
  height: 2rem;
  width: 2.75rem;
}
@media print, screen and (min-width: 64em) {
  .swiper-button-next {
    left: 96.5%;
    top: 0rem;
  }
}
.swiper-button-next:hover::after {
  background-image: url("./images/arrows/arrow--orange.svg");
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
  top: 16px;
  height: 2rem;
  width: 2.8rem;
}

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

.wp-block-button {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.wp-block-button .wp-block-button__link::after {
  content: "";
  background-image: url("./images/arrows/arrow--blue.svg");
}

.ui-group.districtSelect {
  display: none;
}

.cards-container {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
}
.cards-container .card {
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: calc(100% - 4rem);
  margin-left: 2rem;
  margin-right: 2rem;
}
.cards-container .card .card-content {
  padding: 1rem;
}
@media print, screen and (min-width: 40em) {
  .cards-container .card {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: calc(33.3333333333% - 0.7rem);
    margin-left: 0.35rem;
    margin-right: 0.35rem;
  }
}

.card h4 {
  transition: color 0.5s;
  padding: 1rem 0 0 0;
  margin: 1rem 0 0 0;
}
@media print, screen and (min-width: 64em) {
  .card h4 {
    margin: 1rem 0 0 2rem;
  }
}
.card .date {
  color: #b41212;
  font-size: 1.6rem;
  position: absolute;
  top: 22.25rem;
  left: 0;
  background: #FFFFFF;
  padding: 0.5rem 1rem 0 1rem;
}
@media print, screen and (min-width: 40em) {
  .card .date {
    top: 11.75rem;
  }
}
@media print, screen and (min-width: 64em) {
  .card .date {
    top: 22rem;
    font-size: 1.4rem;
    left: 0.5rem;
  }
}
.card .author {
  color: #424A55;
  font-size: 1.8rem;
  margin: 2rem 0 0 0;
  font-weight: 600;
}
@media print, screen and (min-width: 40em) {
  .card .author {
    font-size: 1.4rem;
  }
}
@media print, screen and (min-width: 64em) {
  .card .author {
    margin: 2rem 2rem 3rem 2rem;
  }
}

.staff--member {
  text-align: center;
  margin: 0 0 2rem 0;
}
.staff--member h4 {
  margin: 0;
}
.staff--member .card {
  border: var(--border-transparent);
}
.staff--member img {
  display: block;
  margin: 0 auto;
  width: 100%;
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 40em) {
  .staff--member img {
    object-fit: cover;
    width: auto;
  }
}
@media print, screen and (min-width: 40em) {
  .staff--member .card--backup {
    height: 36.4rem;
  }
}
.staff--member__name {
  color: #1B4E74;
  margin-bottom: 0;
}
.staff--member__title {
  font-size: 1.6rem;
  color: #424A55;
  margin-bottom: 0;
}
.staff--member__email {
  font-size: 1.4rem;
  color: #ABAEB4;
  position: relative;
  width: 100%;
}
.staff--member__email::after {
  content: "";
  position: absolute;
  bottom: -5px;
  left: 50%;
  background: none repeat scroll 0 0 transparent;
  display: block;
  height: 2px;
  width: 0;
  background: #ABAEB4;
  transition: width 0.3s ease 0s, left 0.3s ease 0s;
}
.staff--member__email:hover {
  color: #ABAEB4;
}
.staff--member__email:hover::after {
  width: 100%;
  left: 0;
}

.directors h2 {
  text-align: center;
}
@media print, screen and (min-width: 40em) {
  .directors h2 {
    margin: 2.5rem 0;
  }
}
.directors__board {
  background-color: #1B4E74;
  text-align: center;
  position: relative;
  padding: 2rem 0;
}
.directors__board::before {
  content: "";
  height: 100%;
  width: 210%;
  position: absolute;
  top: 0;
  right: -100%;
  z-index: -1;
  background-color: inherit;
}
.directors__board::after {
  content: "";
  height: 100%;
  width: 210%;
  position: absolute;
  top: 0;
  left: -100%;
  z-index: -1;
  background-color: inherit;
}
@media print, screen and (min-width: 40em) {
  .directors__board {
    text-align: left;
    padding: 3rem 1rem;
  }
  .directors__board::before {
    content: none;
  }
  .directors__board:after {
    content: " ";
    position: absolute;
    top: 15px;
    left: 15px;
    background-color: transparent;
    border: var(--border-grey);
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .directors__board {
    padding: 5rem 5rem 5rem 10rem;
  }
}
.directors__board .card {
  background-color: #1B4E74;
  border: var(--border-transparent);
}
.directors__board--name {
  color: #FFFFFF;
  margin-bottom: 0;
  font-size: 1.8rem;
}
.directors__board--title {
  color: #5D7EBB;
  font-size: 1.6rem;
}

.psac {
  text-align: center;
  margin: 8rem 2rem;
}
@media print, screen and (min-width: 40em) {
  .psac {
    margin: 6rem 2rem;
  }
}
@media print, screen and (min-width: 64em) {
  .psac {
    margin: 8rem 2rem 6rem 2rem;
  }
}
.psac--text {
  margin: 2rem 0 4rem 0;
}
@media print, screen and (min-width: 40em) {
  .psac--text {
    padding: 0 12rem;
  }
}
@media print, screen and (min-width: 64em) {
  .psac--text {
    padding: 0 32rem;
  }
}
.psac a {
  width: 5rem;
  height: 5rem;
  margin: 0 auto;
  display: block;
}

body.page .featured-hero, body.category .featured-hero {
  padding: 13rem 0 11rem 0;
}
@media print, screen and (min-width: 40em) {
  body.page .featured-hero, body.category .featured-hero {
    height: 20rem;
    padding: 10rem 0;
  }
}
@media print, screen and (min-width: 64em) {
  body.page .featured-hero, body.category .featured-hero {
    height: 30rem;
    padding: 15rem 0;
  }
}
body.page .featured-hero .main-container, body.category .featured-hero .main-container {
  padding-right: 1rem;
  padding-left: 1rem;
}
body.page .featured-hero .meta-entry-info, body.category .featured-hero .meta-entry-info {
  margin: 0;
  padding: 0;
}

body:not(.home) .featured-hero {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding: 20rem 0 6rem 0;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media print, screen and (min-width: 64em) {
  body:not(.home) .featured-hero {
    padding: 25rem 0 10rem 0;
  }
}
body:not(.home) .featured-hero h1.entry-title {
  text-align: center;
  color: #FFFFFF;
  margin-top: 0;
  line-height: 1;
}
@media print, screen and (min-width: 40em) {
  body:not(.home) .featured-hero h1.entry-title {
    line-height: 1.4;
  }
}
body:not(.home) .featured-hero h2.entry-title {
  color: #FFFFFF;
  height: 15rem;
}
@media print, screen and (min-width: 64em) {
  body:not(.home) .featured-hero h2.entry-title {
    height: 12rem;
  }
}
body:not(.home) .featured-hero h3.entry-title {
  color: #FFFFFF;
  padding: 1rem 0;
  height: 12rem;
}
@media print, screen and (min-width: 64em) {
  body:not(.home) .featured-hero h3.entry-title {
    height: 8rem;
  }
}
body:not(.home) .featured-hero .meta-entry-info {
  color: #FFFFFF;
  padding: 0;
  margin: 0;
}
@media print, screen and (min-width: 64em) {
  body:not(.home) .featured-hero .meta-entry-info {
    padding: 0 23rem;
    margin: -4rem 0 0 0;
  }
}
body:not(.home) .featured-hero .meta-entry-info .sausage {
  color: #b41212;
  font-size: 3rem;
}
body:not(.home) .featured-hero .meta-entry-info .byline-author {
  font-size: 1.4rem;
  font-weight: 600;
}

.featured--banner {
  position: relative;
  margin: 14rem 0 5rem 0;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding: 0 0 4rem 0;
}
@media print, screen and (min-width: 40em) {
  .featured--banner {
    height: 42.75rem;
    margin: 8rem 0 3rem 0;
    padding: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .featured--banner {
    height: 70rem;
    margin: 0 0 0 0;
  }
}
.featured--banner__container {
  position: relative;
}
.featured--banner__container--small {
  position: relative;
  background: linear-gradient(to top, #193d5c 90%, #FFFFFF 90%);
  z-index: 1;
}
@media print, screen and (min-width: 40em) {
  .featured--banner__container--small {
    background-image: url(./images/backgrounds/capitol.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    width: 50%;
    max-width: 60rem;
  }
}
.featured--banner__container--small img {
  width: 90%;
  margin: 0 auto;
  display: block;
  position: relative;
  z-index: 2;
}
@media print, screen and (min-width: 40em) {
  .featured--banner__container--small img {
    display: none;
  }
}
.featured--banner__content {
  color: #FFFFFF;
  padding: 3rem 6rem;
  width: 39rem;
}
@media print, screen and (min-width: 40em) {
  .featured--banner__content {
    padding: 13rem 6rem;
  }
}
@media print, screen and (min-width: 64em) {
  .featured--banner__content {
    width: 54rem;
    padding: 0;
    margin: 29rem 0 0 3rem;
  }
}
@media screen and (min-width: 90em) {
  .featured--banner__content {
    width: 80%;
    padding: 0;
    margin: 29rem 0 0 10rem;
  }
}
.featured--banner__content h2 {
  font-size: 2.6rem;
  color: #FFFFFF;
}
@media print, screen and (min-width: 64em) {
  .featured--banner__content h2 {
    font-size: 4rem;
  }
}
.featured--banner__content h2 span {
  display: inline-block;
}
.featured--banner__content p {
  font-size: 1.6rem;
  color: #FFFFFF;
}
@media print, screen and (min-width: 64em) {
  .featured--banner__content p {
    font-size: 1.8rem;
  }
}
.featured--banner__content button {
  color: #FFFFFF;
  margin: 2rem 3rem;
  z-index: 90;
}

.art--banner {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  height: 10rem;
  padding: 33rem 0 45rem 0;
  color: #FFFFFF;
}
@media print, screen and (min-width: 40em) {
  .art--banner {
    height: 20rem;
    padding: 30rem 0;
  }
}
@media print, screen and (min-width: 64em) {
  .art--banner {
    height: 30rem;
    padding: 25rem 0;
  }
}
.art--banner__title {
  color: #FFFFFF;
}
.art--banner__content {
  font-size: 1.8rem;
  text-align: center;
  color: #FFFFFF;
  padding: 0 3rem;
  margin: -23rem 0 2rem 0;
}
@media print, screen and (min-width: 40em) {
  .art--banner__content {
    margin: -16rem 0 0 0;
  }
}
@media print, screen and (min-width: 64em) {
  .art--banner__content {
    padding: 0 8rem;
  }
}
.art--banner__content p {
  margin: 3rem 0;
}
@media print, screen and (min-width: 64em) {
  .art--banner__content .art--content__text {
    padding: 0 8rem;
  }
}
@media print, screen and (min-width: 64em) {
  .art--banner .flex-child-auto {
    width: 50%;
    margin: -9rem 0 0 0;
  }
}

.dotted {
  border-style: dashed;
  margin: 2rem 0;
}

.meta-data-container {
  border-bottom: 2px solid #D8DBDF;
  margin: 0 0 3rem 0;
  font-size: 1.4rem;
  color: #1B4E74;
  padding: 0 0 1rem 0;
  font-weight: 700;
  letter-spacing: 0.5px;
}
@media print, screen and (min-width: 64em) {
  .meta-data-container {
    margin-left: 23rem;
    margin-right: 23rem;
    letter-spacing: 1px;
  }
}
.meta-data-container .share {
  float: right;
}
@media print, screen and (min-width: 64em) {
  .meta-data-container .share {
    margin: 0 1.75rem 0 0;
  }
}
.meta-data-container .share--icon {
  margin: 0;
  display: inline-block;
  margin: 0 0 0 1rem;
  position: relative;
  z-index: 0;
}
@media print, screen and (min-width: 64em) {
  .meta-data-container .share--icon {
    margin: 0 0 0 6rem;
  }
}
.meta-data-container .share .meta--icon {
  position: absolute;
  display: none;
}
@media print, screen and (min-width: 64em) {
  .meta-data-container .share .meta--icon {
    display: inline-block;
  }
}
.meta-data-container .share .meta--icon__pdf {
  left: 10rem;
  top: 5px;
}
.meta-data-container .share .meta--icon__print {
  left: 4rem;
  top: 4px;
}
.meta-data-container .share .meta--icon__share {
  left: 4rem;
  top: -2px;
}
.meta-data-container .share .printfriendly {
  margin: 0;
}
.meta-data-container .share .printfriendly .noslimstat {
  color: #1B4E74;
  font-weight: 700;
}
.meta-data-container .share .addtoany_shortcode a {
  font-size: 1.4rem;
  padding: 0;
  vertical-align: baseline;
  font-weight: 700;
}
.meta-data-container .share .addtoany_shortcode:nth-of-type(2) {
  display: none;
}

.section- {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media print, screen and (min-width: 40em) {
  .section- {
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
.section--table {
  -webkit-align-self: flex-start;
      -ms-flex-item-align: start;
          align-self: flex-start;
  padding: 0 7.5rem;
}
@media print, screen and (min-width: 64em) {
  .section--table {
    margin: 1rem 0 0 0;
  }
}
.section--table__heading {
  margin-bottom: 1.5rem;
}
.section--table__heading, .section--table__list {
  color: #1B4E74;
}
.section--table__heading:hover, .section--table__heading:active, .section--table__list:hover, .section--table__list:active {
  color: #b41212;
}
.section--table__content p {
  font-size: 1.5rem;
  margin: 0 0 2rem 0;
  line-height: 1.4;
}
@media print, screen and (min-width: 40em) {
  .section--table__content p {
    font-size: 1.3rem;
  }
}

form {
  position: relative;
}
form [type=text]:focus,
form [type=password]:focus,
form [type=date]:focus,
form [type=datetime]:focus,
form [type=datetime-local]:focus,
form [type=month]:focus,
form [type=week]:focus,
form [type=email]:focus,
form [type=number]:focus,
form [type=search]:focus,
form [type=tel]:focus,
form [type=time]:focus,
form [type=url]:focus,
form [type=color]:focus,
form select:focus {
  color: #424A55;
  font-weight: normal;
}
form [type=text]:focus::-webkit-input-placeholder,
form [type=password]:focus::-webkit-input-placeholder,
form [type=date]:focus::-webkit-input-placeholder,
form [type=datetime]:focus::-webkit-input-placeholder,
form [type=datetime-local]:focus::-webkit-input-placeholder,
form [type=month]:focus::-webkit-input-placeholder,
form [type=week]:focus::-webkit-input-placeholder,
form [type=email]:focus::-webkit-input-placeholder,
form [type=number]:focus::-webkit-input-placeholder,
form [type=search]:focus::-webkit-input-placeholder,
form [type=tel]:focus::-webkit-input-placeholder,
form [type=time]:focus::-webkit-input-placeholder,
form [type=url]:focus::-webkit-input-placeholder,
form [type=color]:focus::-webkit-input-placeholder,
form select:focus::-webkit-input-placeholder {
  color: #424A55;
}
form [type=text]:focus::-webkit-input-placeholder,
form [type=password]:focus::-webkit-input-placeholder,
form [type=date]:focus::-webkit-input-placeholder,
form [type=datetime]:focus::-webkit-input-placeholder,
form [type=datetime-local]:focus::-webkit-input-placeholder,
form [type=month]:focus::-webkit-input-placeholder,
form [type=week]:focus::-webkit-input-placeholder,
form [type=email]:focus::-webkit-input-placeholder,
form [type=number]:focus::-webkit-input-placeholder,
form [type=search]:focus::-webkit-input-placeholder,
form [type=tel]:focus::-webkit-input-placeholder,
form [type=time]:focus::-webkit-input-placeholder,
form [type=url]:focus::-webkit-input-placeholder,
form [type=color]:focus::-webkit-input-placeholder,
form select:focus::-webkit-input-placeholder {
  color: #424A55;
}
form [type=text]:hover,
form [type=password]:hover,
form [type=date]:hover,
form [type=datetime]:hover,
form [type=datetime-local]:hover,
form [type=month]:hover,
form [type=week]:hover,
form [type=email]:hover,
form [type=number]:hover,
form [type=search]:hover,
form [type=tel]:hover,
form [type=time]:hover,
form [type=url]:hover,
form [type=color]:hover,
form select:hover {
  cursor: pointer;
}
form select {
  background-image: url("./images/backgrounds/chevron.svg");
}
form input[type=submit] {
  display: none;
}
form label {
  pointer-events: all;
}
form .form__button {
  -webkit-transform: translate(40%);
          transform: translate(40%);
}
@media print, screen and (min-width: 64em) {
  form .form__button {
    position: absolute;
    left: 75%;
    top: 5.5rem;
    -webkit-transform: none;
            transform: none;
  }
}
form .form__button .button, form .form__button .wp-block-button .wp-block-button__link, .wp-block-button form .form__button .wp-block-button__link {
  color: #242424;
  font-size: 1.8rem;
}
form #signup-row-1 input {
  border-color: #242424;
  color: #000;
}
@media print, screen and (min-width: 64em) {
  form #signup-row-1 input {
    width: 48%;
  }
}
form #signup-row-1 input::-webkit-input-placeholder {
  color: #242424;
}
form #signup-row-1 input:-ms-input-placeholder {
  color: #242424;
}
form #signup-row-1 input::placeholder {
  color: #242424;
}
@media print, screen and (min-width: 64em) {
  form #signup-row-1 [type=text] {
    float: left;
  }
  form #signup-row-1 [type=email] {
    float: right;
  }
}
form .mc4wp-form-fields {
  position: relative;
}
form .mc4wp-form-fields #signup-row-2 select,
form .mc4wp-form-fields #signup-row-2 input {
  border-color: #242424;
  color: #000;
}
@media print, screen and (min-width: 64em) {
  form .mc4wp-form-fields #signup-row-2 select,
form .mc4wp-form-fields #signup-row-2 input {
    width: 30%;
  }
}
@media print, screen and (min-width: 64em) {
  form .mc4wp-form-fields #signup-row-2 [type=text] {
    position: absolute;
    left: 33%;
    top: 5.8rem;
  }
}
form .mc4wp-form-fields #signup-row-2 [type=text]::-webkit-input-placeholder {
  color: #242424;
}
form .mc4wp-form-fields #signup-row-2 [type=text]:-ms-input-placeholder {
  color: #242424;
}
form .mc4wp-form-fields #signup-row-2 [type=text]::placeholder {
  color: #242424;
}

button.passster-submit:after {
  display: none;
}

button.passster-submit:before {
  display: none;
}

.passster-form {
  background: transparent !important;
}

.passster-form form.password-form {
  width: 50% !important;
  margin: 0 auto !important;
}

.navigation-form {
  margin: 4rem;
}
.navigation-form label {
  font-size: 1.8rem;
  font-weight: bold;
  position: absolute;
  top: 0rem;
}
.navigation-form input[type=text]:focus ~ label {
  display: none;
}
.navigation-form input[type=text]:active ~ label {
  display: none;
}
.navigation-form input[type=submit]:focus ~ label {
  display: none;
}
.navigation-form input[type=submit]:active ~ label {
  display: none;
}
.navigation-form input[type=text] {
  border-top: 1px solid #13334c;
  border-left: 1px solid #13334c;
  border-right: 1px solid #13334c;
  border-bottom: 2px solid #FFFFFF;
  box-shadow: none;
  color: #FFFFFF;
  background: #13334c;
}
.navigation-form input[type=submit] {
  position: absolute;
  top: 0rem;
  right: 1rem;
  padding: 5px 15px;
  background: transparent;
  color: transparent;
  border: 0 none;
  cursor: pointer;
  border-radius: 5px;
  z-index: 10;
}
.navigation-form input[type=submit]:focus, .navigation-form input[type=submit]:active {
  outline: none;
}
.navigation-form .magnifying-glass-container {
  position: absolute;
  top: -1.5rem;
  right: 1rem;
}
.navigation-form .magnifying-glass-container .magnifying-glass {
  position: absolute;
  top: 0.8em;
  right: 0.9em;
  font-size: 2.25em;
  display: inline-block;
  width: 0.4em;
  box-sizing: content-box;
  height: 0.4em;
  border: 0.1em solid #FFFFFF;
  border-radius: 0.35em;
}
.navigation-form .magnifying-glass-container .magnifying-glass::before {
  content: "";
  display: inline-block;
  position: absolute;
  right: -0.25em;
  bottom: -0.1em;
  border-width: 0;
  background: #FFFFFF;
  width: 0.3em;
  height: 0.08em;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.navigation--search {
  background-color: #f1eee7;
  margin: 0 0 1rem 0;
}
.navigation--search__form {
  height: 8rem;
  width: 8rem;
}
@media screen and (min-width: 1382px) {
  .navigation--search__form {
    height: 102px;
    width: 102px;
  }
}
.navigation--search__form label,
.navigation--search__form input[type=text] {
  display: none;
}
.navigation--search__form input[type=submit] {
  display: block;
  position: absolute;
  left: 10.75%;
  top: 3.5rem;
  height: 5rem;
  width: 5rem;
  opacity: 0;
  z-index: 1;
  cursor: pointer;
}
.navigation--search__form input[type=checkbox] {
  height: 8rem;
  width: 8rem;
  position: relative;
  z-index: 100;
  opacity: 0;
  cursor: pointer;
}
.navigation--search__form .magnifying-glass-container {
  position: absolute;
  top: 8px;
  right: 7px;
  cursor: pointer;
}
@media screen and (min-width: 1382px) {
  .navigation--search__form .magnifying-glass-container {
    top: 2rem;
    right: 17%;
  }
}
.navigation--search__form .magnifying-glass-container .magnifying-glass {
  position: absolute;
  top: 0.8em;
  right: 0.9em;
  font-size: 2.25em;
  display: inline-block;
  width: 20px;
  box-sizing: content-box;
  height: 20px;
  border: 0.1em solid #242424;
  border-radius: 999px;
}
.navigation--search__form .magnifying-glass-container .magnifying-glass::before {
  content: "";
  display: inline-block;
  position: absolute;
  right: -0.25em;
  bottom: -1px;
  border-width: 0;
  background: #242424;
  width: 0.3em;
  height: 0.08em;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.navigation--search__form .navigation--search__overlay {
  background-color: #FFFFFF;
  height: 11.5rem;
  position: fixed;
  top: 0;
  left: 0;
  opacity: 0;
  width: 100%;
  overflow-y: hidden;
  z-index: -1;
}
.navigation--search__form input[type=checkbox]:checked + .navigation--search__overlay {
  opacity: 1;
  z-index: 1;
}
.navigation--search__form input[type=checkbox]:checked + .navigation--search__overlay::before, .navigation--search__form input[type=checkbox]:checked + .navigation--search__overlay::after {
  content: "";
  position: absolute;
  width: 2rem;
  height: 2px;
  background-color: #424A55;
  border-radius: 2px;
  top: 6rem;
  left: 92%;
}
.navigation--search__form input[type=checkbox]:checked + .navigation--search__overlay::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.navigation--search__form input[type=checkbox]:checked + .navigation--search__overlay::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.navigation--search__form input[type=checkbox]:checked + .navigation--search__overlay input[type=text] {
  display: block;
  width: 70%;
  height: 6rem;
  position: absolute;
  top: 3rem;
  left: 20rem;
  z-index: 2;
}
.navigation--search__form input[type=checkbox]:checked + .navigation--search__overlay label {
  display: block;
  color: #424A55;
  font-size: 3rem;
  position: absolute;
  top: 3rem;
  left: 21rem;
  z-index: 0;
  font-weight: normal;
}
.navigation--search__form input[type=checkbox]:checked + .navigation--search__overlay input[type=text]:active + label {
  display: none;
}
.navigation--search__form input[type=checkbox]:checked + .navigation--search__overlay input[type=text]:focus + label {
  display: none;
}
.navigation--search__form input[type=checkbox]:checked + .navigation--search__overlay .magnifying-glass-overlay {
  position: absolute;
  top: 3.5rem;
  left: 20rem;
  right: 100%;
}
.navigation--search__form input[type=checkbox]:checked + .navigation--search__overlay .magnifying-glass-overlay .magnifying-glass {
  border: 0.1em solid #424A55;
}
.navigation--search__form input[type=checkbox]:checked + .navigation--search__overlay .magnifying-glass-overlay .magnifying-glass::before {
  background: #424A55;
}
.navigation--search__form input[type=checkbox]:checked ~ .magnifying-glass-container {
  display: none;
}

.grecaptcha-badge {
  display: none !important;
}
@media print, screen and (min-width: 40em) {
  .grecaptcha-badge {
    display: block !important;
  }
}

form.searchandfilter select {
  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%28171, 174, 180%29'></polygon></svg>");
}

form.searchfilterevent select {
  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%28171, 174, 180%29'></polygon></svg>");
}

.wufoo-form-container {
  height: 120rem !important;
  margin: 0 auto 5rem auto !important;
}

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

.header {
  position: relative;
  z-index: 100;
}

@media print, screen and (min-width: 64em) {
  .navigation {
    position: fixed;
    width: 100%;
  }
}
.navigation-mobile {
  display: block;
}
@media print, screen and (min-width: 64em) {
  .navigation-mobile {
    display: none;
  }
}
.navigation-desktop {
  display: none;
}
@media print, screen and (min-width: 64em) {
  .navigation-desktop {
    display: block;
  }
}
.navigation-mobile {
  position: fixed;
  height: 14rem;
  background: #FFFFFF;
  width: 100%;
}
.navigation-mobile__logo img {
  width: 13rem;
  margin: 1rem 0 0 1rem;
}
@media screen and (max-width: 1024px) {
  .navigation-mobile__logo img {
    width: 25rem;
    margin: 10px auto;
    display: block;
  }
}
.navigation-mobile__hamburger {
  position: absolute;
  left: 85%;
  top: 1rem;
}
@media print, screen and (min-width: 40em) {
  .navigation-mobile__hamburger {
    left: 90%;
  }
}
.navigation-mobile__hamburger .navigation__checkbox {
  display: none;
}
.navigation-mobile__hamburger .navigation__icon {
  position: relative;
  margin-top: 3.5rem;
}
.navigation-mobile__hamburger .navigation__icon, .navigation-mobile__hamburger .navigation__icon::before, .navigation-mobile__hamburger .navigation__icon::after {
  width: 2rem;
  height: 2px;
  background-color: #1B4E74;
  display: inline-block;
}
.navigation-mobile__hamburger .navigation__icon::before, .navigation-mobile__hamburger .navigation__icon::after {
  content: "";
  position: absolute;
  left: 0;
  transition: all 0.8s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.navigation-mobile__hamburger .navigation__icon::before {
  top: -0.8rem;
}
.navigation-mobile__hamburger .navigation__icon::after {
  top: 0.8rem;
}
.navigation-mobile__hamburger .navigation__checkbox:checked + .navigation__button .navigation__icon {
  background-color: transparent;
}
.navigation-mobile__hamburger .navigation__checkbox:checked + .navigation__button .navigation__icon::before {
  top: 0;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
  background-color: #FFFFFF;
  z-index: 100;
  position: fixed;
  left: 86%;
  top: 4rem;
}
@media print, screen and (min-width: 40em) {
  .navigation-mobile__hamburger .navigation__checkbox:checked + .navigation__button .navigation__icon::before {
    left: 90%;
  }
}
.navigation-mobile__hamburger .navigation__checkbox:checked + .navigation__button .navigation__icon::after {
  top: 0;
  -webkit-transform: rotate(-135deg);
          transform: rotate(-135deg);
  background-color: #FFFFFF;
  z-index: 100;
  position: fixed;
  left: 86%;
  top: 4rem;
}
@media print, screen and (min-width: 40em) {
  .navigation-mobile__hamburger .navigation__checkbox:checked + .navigation__button .navigation__icon::after {
    left: 90%;
  }
}
.navigation-mobile .navigation__overlay {
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 20;
  opacity: 0;
  width: 0;
  transition: all 0.8s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  overflow-y: hidden;
}
.navigation-mobile .navigation__overlay .navigation__list {
  margin: 5rem 0;
}
.navigation-mobile .navigation__overlay .navigation__item {
  margin: 2.5rem 0;
  font-weight: 600;
  font-size: 2rem;
  text-align: center;
  position: relative;
}
.navigation-mobile .navigation__overlay .button-dropdown {
  position: absolute;
  left: 80%;
  top: -1rem;
  color: #FFFFFF;
  font-size: 3rem;
}
@media print, screen and (min-width: 40em) {
  .navigation-mobile .navigation__overlay .button-dropdown {
    left: 70%;
  }
}
.navigation-mobile .navigation__overlay .sub-menu--mobile .item {
  height: 0;
  opacity: 0;
  transition: all 0.5s ease-in;
}
.navigation-mobile .navigation__overlay .sub-menu--mobile .open {
  height: 100%;
  opacity: 1;
  transition: all 0.5s ease-out;
}
.navigation-mobile .navigation__overlay .sub-menu--mobile .title--sub {
  color: #FFFFFF;
  font-size: 1.8rem;
}
.navigation-mobile .navigation__overlay .navigation__link {
  color: #FFFFFF;
}
.navigation-mobile .navigation__overlay .navigation__link--login svg {
  margin: 0 0 0 0.5rem;
}
.navigation-mobile .navigation__overlay .navigation__link--login svg ellipse,
.navigation-mobile .navigation__overlay .navigation__link--login svg path {
  fill: #FFFFFF;
}
.navigation-mobile .navigation__overlay .bottom-list {
  text-align: center;
}
.navigation-mobile .navigation__overlay .bottom-list .navigation__link {
  margin: 2rem;
  font-size: 1.6rem;
  font-weight: 600;
}
.navigation-mobile .navigation__checkbox:checked ~ .navigation__overlay {
  opacity: 1;
  width: 100%;
  height: 100vh;
  background-color: #13334C;
}
.navigation .navigation-desktop {
  margin: 0 8rem 0 8rem;
  background-color: #FFFFFF;
  box-shadow: 0 1rem 0.5rem rgba(36, 36, 36, 0.1);
}
.navigation .navigation-desktop__list {
  background-image: linear-gradient(to right, #FFFFFF, #f8f7f4);
  width: 100%;
  height: 42px;
  padding: 1rem 2rem;
  position: relative;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.navigation .navigation-desktop__list::before {
  content: "";
  background: linear-gradient(to right, #FFFFFF, #ced2d9);
  display: none;
  height: 1.5px;
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
}
.navigation .navigation-desktop__list .navigation__link {
  font-size: 1.2rem;
  color: #242424;
  font-weight: 700;
  text-transform: uppercase;
}
.navigation .navigation-desktop__list .navigation__link:hover {
  font-weight: 900;
}
.navigation .navigation-desktop__list .navigation__link:not(:last-child) {
  padding: 0 1rem;
}
.navigation .navigation-desktop__list .navigation__link:last-child {
  padding: 0 0 0 1rem;
}
.navigation .navigation-desktop__list .navigation__link--login svg {
  margin: 0 0 0 0.5rem;
}
.navigation-menu {
  width: 100%;
  height: 80px;
  position: relative;
}
@media screen and (min-width: 1382px) {
  .navigation-menu {
    height: 102px;
  }
}
.navigation-menu img {
  height: 8rem;
  position: absolute;
  top: -27px;
  left: 3rem;
}
@media screen and (min-width: 1382px) {
  .navigation-menu img {
    top: -40px;
    height: 131px;
  }
}
.navigation-menu .navigation__list {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-align-content: center;
      -ms-flex-line-pack: center;
          align-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-left: 25%;
}
@media screen and (min-width: 1382px) {
  .navigation-menu .navigation__list {
    margin-left: 37%;
  }
}
.navigation-menu .navigation__item {
  list-style: none;
  -webkit-flex: 0 1 auto;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto;
  -webkit-align-self: auto;
      -ms-flex-item-align: auto;
              -ms-grid-row-align: auto;
          align-self: auto;
  font-size: 1.5rem;
  font-weight: 400;
  text-align: center;
  cursor: pointer;
  height: 3rem;
}
.navigation-menu .navigation__item .title {
  color: #1B4E74;
  border-bottom: 3px solid transparent;
  letter-spacing: 0.5px;
  font-size: 14px;
  font-weight: 600;
}
@media screen and (min-width: 1382px) {
  .navigation-menu .navigation__item .title {
    font-size: 17px;
  }
}
.navigation-menu .navigation__item .sub-menu {
  display: none;
  background-color: #FFFFFF;
  margin: 1rem 0 0 0;
  padding: 1rem 1rem 0.5rem 1rem;
  text-align: center;
  z-index: 10;
  color: #1B4E74;
  font-weight: normal;
  position: absolute;
  box-shadow: 0 1rem 0.5rem rgba(36, 36, 36, 0.1);
  width: 185px;
}
.navigation-menu .navigation__item .sub-menu .item {
  margin: 0 0 1rem 0;
}
.navigation-menu .navigation__item .sub-menu a:hover {
  font-weight: bold;
  color: #1B4E74;
}
.navigation-menu .navigation__item:hover {
  padding: 4.5rem 0;
}
.navigation-menu .navigation__item:hover .navigation__item-img {
  height: 2.25rem;
  width: 100%;
  background-repeat: no-repeat;
  background-position: top;
  background-size: 1.6rem;
  margin: -2.25rem 0 0 0;
}
.navigation-menu .navigation__item:hover .navigation__item-img1 {
  background-image: url("./images/navIcons/aboutus.svg");
}
.navigation-menu .navigation__item:hover .navigation__item-img2 {
  background-image: url("./images/navIcons/news.svg");
}
.navigation-menu .navigation__item:hover .navigation__item-img3 {
  background-image: url("./images/navIcons/reform.svg");
}
.navigation-menu .navigation__item:hover .navigation__item-img4 {
  background-image: url("./images/navIcons/art.svg");
}
.navigation-menu .navigation__item:hover .navigation__item-img5 {
  background-image: url("./images/navIcons/events.svg");
}
.navigation-menu .navigation__item:hover .navigation__item-img6 {
  background-image: url("./images/navIcons/resources.svg");
}
.navigation-menu .navigation__item:hover .title {
  color: #b41212;
  padding: 0 0 11px 0;
  border-bottom: 3px solid currentColor;
}
.navigation-menu .navigation__item:hover .sub-menu {
  display: block;
}

*::selection {
  background-color: #1B4E74;
  color: #FFFFFF;
}

.main-container {
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 120rem;
  margin-left: auto;
  margin-right: auto;
}
@media print, screen and (min-width: 40em) {
  .main-container {
    padding-right: 1rem;
    padding-left: 1rem;
  }
}

.main-grid {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  margin-top: 1rem;
}
.main-grid.sidebar-left .main-content {
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
}
.main-grid.sidebar-left .sidebar {
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2;
}
@media print, screen and (min-width: 40em) {
  .main-grid.sidebar-left .main-content {
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
  .main-grid.sidebar-left .sidebar {
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }
}
.main-grid .main-content-full-width {
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: calc(100% - 4rem);
  margin-left: 2rem;
  margin-right: 2rem;
}
.main-grid .main-content {
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: calc(100% - 4rem);
  margin-left: 2rem;
  margin-right: 2rem;
  font-size: 1.8rem;
}
.main-grid .main-content a {
  font-weight: 900;
}
.main-grid .main-content iframe {
  width: 100%;
  height: 100%;
}
@media print, screen and (min-width: 40em) {
  .main-grid .main-content iframe {
    width: 50rem;
    height: 28.1rem;
    display: block;
    margin: 0 auto;
  }
}
.main-grid .main-content li {
  position: relative;
}
.main-grid .main-content li::before {
  content: "";
  border: 2px solid #1B4E74;
  width: 1rem;
  height: 1rem;
  display: block;
  position: absolute;
  left: -20px;
  top: 11px;
}
.main-grid .main-content .wp-block-image img {
  display: block;
  margin: 0 auto;
  width: 100%;
}
@media print, screen and (min-width: 40em) {
  .main-grid .main-content .wp-block-image img {
    max-width: 40rem;
  }
}
@media print, screen and (min-width: 64em) {
  .main-grid .main-content .wp-block-image img {
    max-width: 70rem;
  }
}
.main-grid .main-content .wp-block-image figcaption {
  color: #ABAEB4;
  font-size: 1.4rem;
  text-align: center;
  margin: 1rem auto;
}
@media print, screen and (min-width: 40em) {
  .main-grid .main-content .wp-block-image figcaption {
    max-width: 40rem;
  }
}
@media print, screen and (min-width: 64em) {
  .main-grid .main-content .wp-block-image figcaption {
    max-width: 70rem;
  }
}
@media print, screen and (min-width: 64em) {
  .main-grid .main-content ul, .main-grid .main-content ol {
    margin-left: 28.25rem;
    margin-right: 23rem;
  }
}
@media print, screen and (min-width: 64em) {
  .main-grid .main-content ul ul, .main-grid .main-content ul ol, .main-grid .main-content ol ul, .main-grid .main-content ol ol {
    margin-left: 2.25rem;
    margin-right: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .main-grid .main-content blockquote {
    margin: 4rem 10rem 4rem 10rem;
  }
}
@media print, screen and (min-width: 64em) {
  .main-grid .main-content {
    /*
    THIS IS VERY IMPORTANT!
    it keeps the articles (feature panels),
    blockquotes, figures (images), and ul from being
     affected by the margin R and L effects
    */
  }
  .main-grid .main-content .entry-content .pf-content > :not(article):not(blockquote):not(figure):not(ul):not(.wp-block-image):not(.wp-block-query) {
    margin: 1rem 23rem 0 23rem;
  }
}
@media print, screen and (min-width: 64em) {
  .main-grid .section- .entry-content .pf-content > :not(article):not(blockquote):not(figure):not(ul):not(.wp-block-image) {
    margin: 1rem 9rem 0 9rem;
  }
}
.main-grid .sidebar {
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: calc(100% - 4rem);
  margin-left: 2rem;
  margin-right: 2rem;
}
@media print, screen and (min-width: 40em) {
  .main-grid .sidebar {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: calc(33.3333333333% - 2rem);
    margin-left: 1rem;
    margin-right: 1rem;
    margin-top: 1rem;
  }
}

.image-placeholder {
  width: 100%;
  height: 240px;
  background-image: url("https://www.congressionalinstitute.org/wp-content/uploads/2019/09/CI_Blogpost_Image_1.png");
  background-size: cover;
}

.footer {
  color: #FFFFFF;
  margin: 9rem 0 0 0;
  position: relative;
}
@media print, screen and (min-width: 64em) {
  .footer {
    margin: 3rem 0 0 0;
  }
}
.footer__picture {
  position: absolute;
  z-index: -1;
  bottom: 96rem;
  right: 0;
}
@media print, screen and (min-width: 40em) {
  .footer__picture {
    bottom: 94rem;
  }
}
@media print, screen and (min-width: 64em) {
  .footer__picture {
    bottom: 42rem;
  }
}
.footer__picture img {
  display: block;
  width: auto;
  height: 45rem;
  max-width: 100rem;
}
@media print, screen and (min-width: 64em) {
  .footer__picture img {
    height: 65rem;
  }
}
.footer__button {
  position: absolute;
  top: -6rem;
  left: 50%;
  -webkit-transform: translate(-50%);
          transform: translate(-50%);
  text-align: center;
  z-index: 10;
}
@media screen and (min-width: 80em) {
  .footer__button {
    position: fixed;
    left: 97.5%;
    top: calc(100% - 49rem);
  }
}
.footer__form {
  background: url("./images/backgrounds/CI_HeaderImage_Standard.png");
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  padding: 3rem;
  margin: 0 3rem 0 3rem;
  position: relative;
}
.footer__form .form-button {
  color: #242424;
}
@media print, screen and (min-width: 64em) {
  .footer__form {
    height: 28rem;
    padding: 8rem 4rem 8rem 4rem;
    max-width: 114rem;
    margin: auto;
  }
}
.footer__form::before {
  content: "";
  display: block;
  height: 75%;
  width: 100vw;
  background-color: #13334c;
  position: absolute;
  bottom: 0;
  right: -3rem;
  z-index: -1;
}
@media print, screen and (min-width: 64em) {
  .footer__form::before {
    height: 65%;
    right: 100%;
  }
}
.footer__form::after {
  content: "";
  display: block;
  height: 75%;
  width: 100vw;
  background-color: #13334c;
  position: absolute;
  bottom: 0;
  left: -3rem;
  z-index: -1;
}
@media print, screen and (min-width: 64em) {
  .footer__form::after {
    height: 65%;
    left: 100%;
  }
}
.footer__form .flex-child-auto {
  position: relative;
}
.footer__form h3 {
  width: 60%;
  margin: 0 auto;
  text-align: center;
  padding-bottom: 2rem;
  color: #242424;
}
@media print, screen and (min-width: 64em) {
  .footer__form h3 {
    width: 100%;
    margin: 4rem 0 0 0;
  }
}
.footer__contact {
  text-align: center;
  background-color: #13334c;
  color: #A7C1E4;
  font-size: 1.6rem;
  font-weight: 900;
  padding: 3rem;
}
@media print, screen and (min-width: 64em) {
  .footer__contact {
    text-align: left;
    padding: 4rem 5rem 0 5rem;
  }
}
.footer__contact a {
  color: #FFFFFF;
  font-size: 1.6rem;
  font-weight: inherit;
  letter-spacing: 0.5px;
}
.footer__contact--ele {
  margin-bottom: 2rem;
}
.footer__contact--ele .info {
  font-size: 1.4rem;
  letter-spacing: 0.5px;
  color: #FFFFFF;
}
@media print, screen and (min-width: 64em) {
  .footer__contact--top {
    padding: 2rem 3rem 2rem 3rem;
  }
}
.footer__contact--top .logo {
  width: 125px;
  height: 52px;
}
@media print, screen and (min-width: 64em) {
  .footer__contact--top .logo {
    width: 170px;
    height: 70px;
  }
}
.footer__contact--top .footer__contact--ele:nth-child(2) {
  -webkit-order: 3;
      -ms-flex-order: 3;
          order: 3;
}
.footer__contact--top .footer__contact--ele:nth-child(3) {
  -webkit-order: 4;
      -ms-flex-order: 4;
          order: 4;
}
.footer__contact--top .footer__contact--ele:nth-child(4) {
  -webkit-order: 5;
      -ms-flex-order: 5;
          order: 5;
}
.footer__contact--top .footer__contact--ele:nth-child(5) {
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2;
}
@media print, screen and (min-width: 40em) {
  .footer__contact--top .footer__contact--ele:nth-child(2) {
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
  .footer__contact--top .footer__contact--ele:nth-child(3) {
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3;
  }
  .footer__contact--top .footer__contact--ele:nth-child(4) {
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4;
  }
  .footer__contact--top .footer__contact--ele:nth-child(5) {
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5;
  }
}
.footer__contact--top .footer__contact--ele .navigation-form {
  margin: 2rem;
}
@media print, screen and (min-width: 64em) {
  .footer__contact--top .footer__contact--ele .navigation-form {
    margin: 2rem 0 0 0;
  }
}
.footer__contact--top .footer__contact--ele .navigation-form input[type=text] {
  font-size: 1.6rem;
}
.footer__contact--top .footer__contact--ele .navigation-form input[type=text]::-webkit-input-placeholder {
  position: relative;
  top: -1rem;
  left: -0.5rem;
}
.footer__contact--top .footer__contact--ele .navigation-form input[type=text]:-ms-input-placeholder {
  position: relative;
  top: -1rem;
  left: -0.5rem;
}
.footer__contact--top .footer__contact--ele .navigation-form input[type=text]::placeholder {
  position: relative;
  top: -1rem;
  left: -0.5rem;
}
.footer__contact--top .footer__contact--ele .navigation-form input[type=text]:active::-webkit-input-placeholder {
  color: transparent;
}
.footer__contact--top .footer__contact--ele .navigation-form input[type=text]:active:-ms-input-placeholder {
  color: transparent;
}
.footer__contact--top .footer__contact--ele .navigation-form input[type=text]:active::placeholder {
  color: transparent;
}
.footer__contact--top .footer__contact--ele .navigation-form input[type=text]:focus::-webkit-input-placeholder {
  color: transparent;
}
.footer__contact--top .footer__contact--ele .navigation-form input[type=text]:focus:-ms-input-placeholder {
  color: transparent;
}
.footer__contact--top .footer__contact--ele .navigation-form input[type=text]:focus::placeholder {
  color: transparent;
}
.footer__contact--top .footer__contact--ele .navigation-form input[type=submit] {
  display: block;
  width: 5rem;
  height: 5rem;
  z-index: 11;
  opacity: 0;
  cursor: pointer;
  right: 0;
  top: 0;
}
.footer__contact--top .footer__contact--ele .navigation-form .magnifying-glass-container {
  top: -2.5rem;
  right: -2rem;
  z-index: 1;
}
@media print, screen and (min-width: 64em) {
  .footer__contact--top .footer__contact--ele .navigation-form .magnifying-glass-container {
    top: -2rem;
  }
}
.footer__contact--top .footer__contact--ele .navigation-form .magnifying-glass-container .magnifying-glass {
  height: 0.3em;
  width: 0.3em;
  font-size: 1.5em;
  top: 3rem;
  left: -4rem;
}
.footer__contact--bottom {
  position: relative;
  font-size: 1.2rem;
  padding: 2rem 0 2rem 0rem;
}
@media print, screen and (min-width: 64em) {
  .footer__contact--bottom {
    padding: 2rem 0 4rem 0;
  }
}
.footer__contact--bottom::before {
  content: "";
  position: absolute;
  border-top: 1px solid #fff;
  top: 0;
  right: -3rem;
  width: 100vw;
}
@media print, screen and (min-width: 64em) {
  .footer__contact--bottom::before {
    right: 0;
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .footer__contact--bottom--ele:nth-child(1) {
    position: absolute;
    left: 3rem;
  }
  .footer__contact--bottom--ele:nth-child(2) {
    position: absolute;
    right: 3rem;
  }
}
.footer__contact--bottom--ele .fa {
  font-size: 2rem;
  text-align: center;
  text-decoration: none;
  padding: 0.5rem 0.25rem 0 1rem;
  margin-left: 1rem;
}
.footer__contact--bottom--ele .fa-facebook {
  background: #FFFFFF;
  border-top: 1px solid #FFFFFF;
  border-right: 1px solid #FFFFFF;
  border-left: 1px solid #FFFFFF;
  color: #13334c;
  border-radius: 4px;
  margin-left: 2rem;
}
.footer__contact--bottom--ele .fa-twitter,
.footer__contact--bottom--ele .fa-x-twitter {
  color: #FFFFFF;
  font-size: 2.5rem;
}
.footer__contact--bottom--ele .link {
  font-size: inherit;
  color: #FFFFFF;
  margin: 2rem 0;
}
@media print, screen and (min-width: 64em) {
  .footer__contact--bottom--ele .link {
    margin: 0rem 3rem 0rem 0;
  }
  .footer__contact--bottom--ele .link:nth-child(3) {
    float: right;
  }
}

.featurepanel {
  position: relative;
  margin: 0rem 0rem 4.5rem 0rem;
  padding-bottom: 0.5rem;
}
@media print, screen and (min-width: 64em) {
  .featurepanel {
    margin: 7rem 0;
    height: 100%;
    min-height: 40rem;
  }
}
.featurepanel::before {
  content: "";
  box-sizing: border-box;
  border: var(--border-grey);
  position: absolute;
  top: 45px;
  left: -15px;
  width: 110%;
  height: 96%;
  z-index: -1;
}
@media print, screen and (min-width: 40em) {
  .featurepanel::before {
    width: 105%;
    height: 95%;
  }
}
@media print, screen and (min-width: 64em) {
  .featurepanel::before {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}
.featurepanel__text {
  padding: 1rem 0 5rem 0;
}
@media print, screen and (min-width: 64em) {
  .featurepanel__text {
    padding: 5rem 5rem 2rem 8rem;
  }
}
.featurepanel__text h2 {
  margin: 1rem 0;
  letter-spacing: 0.5px;
}
@media print, screen and (min-width: 64em) {
  .featurepanel__text h2 {
    margin: 0 0 2rem 0;
    width: 110%;
  }
}
.featurepanel__text--main {
  margin: 0 0 3rem 0;
}
.featurepanel__text--sub {
  color: #1B4E74;
  font-size: 1.6rem;
  font-weight: bold;
}
@media print, screen and (min-width: 64em) {
  .featurepanel h3 {
    padding-bottom: 1.5rem;
  }
}
.featurepanel .flex-child-auto .orbit-image {
  object-fit: contain;
  min-width: 20rem;
  min-height: 20rem;
  max-height: 50rem;
  max-width: 60rem;
}
@media print, screen and (min-width: 40em) {
  .featurepanel .flex-child-auto .orbit-image {
    margin: 0 auto;
    display: block;
  }
}
@media print, screen and (min-width: 64em) {
  .featurepanel .flex-child-auto .orbit-image {
    height: 100%;
    max-width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .featurepanel .flex-child-auto {
    width: 50%;
    position: relative;
  }
}
.featurepanel__button {
  display: block;
  margin: auto;
}
@media print, screen and (min-width: 64em) {
  .featurepanel__button {
    position: absolute;
    left: 10.5rem;
  }
}
.featurepanel__image {
  position: relative;
  min-height: 22rem;
}
.featurepanel__image .orbit-slide {
  position: unset;
}
@media print, screen and (min-width: 64em) {
  .featurepanel__image--left {
    max-height: 40rem;
  }
  .featurepanel__image--left img {
    position: absolute;
    right: 15px;
    top: -16px;
  }
  .featurepanel__image--left .orbit-bullets {
    text-align: right;
    margin: 32.8rem 5rem 0 0;
  }
  .featurepanel__image--right {
    max-height: 40rem;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
  .featurepanel__image--right img {
    position: absolute;
    left: 15px;
    top: -16px;
  }
  .featurepanel__image--right .orbit-bullets {
    text-align: left;
    margin: 32.8rem 0 0 5rem;
  }
}
.featurepanel .orbit-bullets button {
  border-radius: 0%;
  width: 5.2rem;
  height: 0.5rem;
  cursor: pointer;
}
.featurepanel .orbit-bullets button::before {
  content: "";
  position: absolute;
  width: inherit;
  left: 0;
  top: -1.5rem;
  z-index: 1;
  border: 0px solid transparent;
}
.featurepanel .orbit-bullets button:hover {
  background-color: #FFFFFF;
}
.featurepanel .orbit-bullets button:hover::before {
  background-color: transparent;
}
.featurepanel .orbit-bullets--button::after {
  content: none;
}
.featurepanel--alt {
  min-height: 30rem;
}
.featurepanel--alt::before {
  content: none;
}
.featurepanel--alt .button--container {
  min-height: 40rem;
  background-color: #1B4E74;
  padding: 2rem 0;
}
@media print, screen and (min-width: 40em) {
  .featurepanel--alt .button--container {
    min-height: 0;
    padding: 4rem 0;
  }
}
.featurepanel--alt .button--container .button--items {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  height: 100%;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
}
.featurepanel--alt .button--container .button--item {
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  width: 100%;
  height: 6rem;
  position: relative;
}
@media print, screen and (min-width: 40em) {
  .featurepanel--alt .button--container .button--item {
    width: 50%;
    height: 8rem;
  }
}
.featurepanel--alt .button--container .featurepanel__button {
  color: #FFFFFF;
  width: 17rem;
  text-align: left;
}
@media print, screen and (min-width: 40em) {
  .featurepanel--alt .button--container .featurepanel__button {
    position: relative;
    left: 0;
  }
}
.featurepanel--banner {
  background-color: #4361A1;
  color: #FFFFFF;
  margin: 2rem 0rem 7.5rem 0rem;
}
.featurepanel--banner::before {
  height: 97%;
}
@media print, screen and (min-width: 64em) {
  .featurepanel--banner {
    margin: 8rem 0rem 11rem 0rem;
    padding: 3rem 0;
  }
  .featurepanel--banner::before {
    height: 100%;
    width: 100%;
    z-index: 1;
    top: 2rem;
    left: 2rem;
  }
}
.featurepanel--banner .featurepanel__text {
  padding: 2rem;
}
@media print, screen and (min-width: 64em) {
  .featurepanel--banner .featurepanel__text {
    padding: 9rem 5rem 1rem 10rem;
  }
}
.featurepanel--banner .featurepanel__text h2 {
  text-align: center;
  color: #FFFFFF;
}
@media print, screen and (min-width: 64em) {
  .featurepanel--banner .featurepanel__text h2 {
    text-align: left;
  }
}
.featurepanel--banner .featurepanel__image img {
  width: 100%;
}
@media print, screen and (min-width: 40em) {
  .featurepanel--banner .featurepanel__image img {
    max-width: 40rem;
    max-height: 44rem;
    object-fit: contain;
    display: block;
    margin: 0 auto;
  }
}
@media print, screen and (min-width: 64em) {
  .featurepanel--banner .featurepanel__image img {
    width: auto;
    left: 12rem;
    top: 3rem;
    height: 450px;
  }
}
.featurepanel--banner .featurepanel__button {
  color: inherit;
}
.featurepanel--banner .button--items {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  height: 100%;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
}
@media print, screen and (min-width: 64em) {
  .featurepanel--banner .button--items {
    margin: 7rem 0 0 -8rem;
  }
}
.featurepanel--banner .button--item {
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  width: 100%;
  height: 6rem;
  position: relative;
}
@media print, screen and (min-width: 40em) {
  .featurepanel--banner .button--item {
    width: 33.33%;
    height: 8rem;
  }
}
.featurepanel--banner .featurepanel__button {
  text-align: left;
  z-index: 1;
}
.featurepanel--textpanel .featurepanel__text {
  padding: 0 0 4rem 0;
}
@media print, screen and (min-width: 64em) {
  .featurepanel--textpanel .featurepanel__text {
    padding: 4rem 6rem;
  }
}
.featurepanel--textpanel .featurepanel__text h2 {
  margin: 7rem 0 0 0;
  text-align: center;
}
@media print, screen and (min-width: 64em) {
  .featurepanel--textpanel .featurepanel__text h2 {
    margin: 9rem 0 1.5rem 0;
    text-align: left;
  }
}
.featurepanel--textpanel .featurepanel__text--main {
  text-align: center;
}
@media print, screen and (min-width: 64em) {
  .featurepanel--textpanel .featurepanel__text--main {
    text-align: left;
  }
}
.featurepanel--textpanel .featurepanel__text .featurepanel__text-sub {
  margin: 0 0 2rem 0;
}
.featurepanel--textpanel .featurepanel__text .featurepanel__text-sub .subtext {
  font-size: 1.8rem;
}
.featurepanel--textpanel .featurepanel__text .featurepanel__text-sub .subtext-orange {
  color: #b41212;
  font-weight: bold;
  margin-bottom: 0;
}
@media print, screen and (min-width: 64em) {
  .featurepanel--textpanel .featurepanel__text .featurepanel__text-sub .subtext-orange {
    font-size: 1.6rem;
  }
}

.mgsize {
  margin: -3.2rem 0 0 0;
}
.mgsize--medium {
  margin: -6.2rem 0 0 0;
}
@media print, screen and (min-width: 40em) {
  .mgsize--medium {
    margin: -6.2rem 0 5rem 0;
  }
}
.mgsize--large {
  margin: -9.2rem 0 0 0;
}
@media print, screen and (min-width: 40em) {
  .mgsize--large {
    margin: -9.2rem 0 5rem 0;
  }
}

.newscarousel {
  height: 50rem;
  position: relative;
  margin: 3rem 0 0 0;
}
@media print, screen and (min-width: 64em) {
  .newscarousel {
    height: 45rem;
    margin: 9rem 3rem 0 3rem;
  }
}
.newscarousel::before {
  content: "";
  position: absolute;
  border: var(--border-grey);
  height: 45rem;
  width: 115%;
  left: -25px;
}
@media print, screen and (min-width: 40em) {
  .newscarousel::before {
    width: 107%;
  }
}
@media print, screen and (min-width: 64em) {
  .newscarousel::before {
    content: none;
  }
}
@media print, screen and (min-width: 64em) {
  .newscarousel__panel {
    width: 50%;
  }
}
.newscarousel__panel--textbox {
  padding: 2rem 0;
}
@media print, screen and (min-width: 64em) {
  .newscarousel__panel--textbox {
    background: #FFFFFF;
    position: absolute;
    top: 35px;
    padding: 4.5rem 4.5rem 2.5rem 3.5rem;
    width: 70rem;
  }
}
@media print, screen and (min-width: 64em) {
  .newscarousel__panel--textbox::before {
    content: "";
    position: absolute;
    border: var(--border-grey);
    height: 100%;
    width: 100%;
    left: -15px;
    top: 20px;
  }
}
@media print, screen and (min-width: 64em) {
  .newscarousel__panel--image {
    float: right;
  }
}
.newscarousel__panel--image img {
  width: 100%;
  height: 22.5rem;
  object-fit: cover;
}
@media print, screen and (min-width: 64em) {
  .newscarousel__panel--image img {
    height: 37rem;
  }
}
.newscarousel .orbit-controls {
  position: relative;
}
@media print, screen and (min-width: 64em) {
  .newscarousel .orbit-controls button {
    width: auto;
  }
}
.newscarousel .orbit-controls .orbit-previous,
.newscarousel .orbit-controls .orbit-next {
  top: -2.5rem;
}
.newscarousel .orbit-controls .orbit-previous:hover,
.newscarousel .orbit-controls .orbit-next:hover {
  background-color: transparent;
}
.newscarousel .orbit-controls .orbit-next {
  left: 97%;
}
.newscarousel .orbit-controls .orbit-previous {
  left: 75%;
}
@media print, screen and (min-width: 40em) {
  .newscarousel .orbit-controls .orbit-previous {
    left: 90%;
  }
}
@media print, screen and (min-width: 64em) {
  .newscarousel .orbit-controls .orbit-previous {
    left: 88%;
  }
}
.newscarousel p {
  color: #b41212;
  font-size: 1.6rem;
  font-weight: 900;
}
@media print, screen and (min-width: 64em) {
  .newscarousel p {
    font-size: 1.4rem;
    margin: 1.25rem 0;
  }
}
.newscarousel h2 {
  height: 13rem;
  width: auto;
}
@media print, screen and (min-width: 40em) {
  .newscarousel h2 {
    width: 63rem;
  }
}
@media print, screen and (min-width: 64em) {
  .newscarousel h2 {
    height: 14rem;
  }
}
.newscarousel a {
  position: relative;
  z-index: 10;
  color: #1B4E74;
}
.newscarousel a::after {
  content: "";
  position: absolute;
  bottom: -5px;
  left: 50%;
  background: none repeat scroll 0 0 transparent;
  display: block;
  height: 2px;
  width: 0;
  background: #1B4E74;
  transition: width 0.3s ease 0s, left 0.3s ease 0s;
}
.newscarousel a:hover::after {
  width: 100%;
  left: 0;
}
@media print, screen and (min-width: 64em) {
  .newscarousel a {
    font-size: 1.6rem;
  }
}

.newsfilmstrip {
  margin: 0 0 4rem 0;
}
@media print, screen and (min-width: 64em) {
  .newsfilmstrip {
    margin: 10rem 0 3rem 0;
  }
}
.newsfilmstrip h2 {
  text-align: center;
}
@media print, screen and (min-width: 64em) {
  .newsfilmstrip h2 {
    text-align: left;
    margin: 0 0 -2rem 1rem;
  }
}
.newsfilmstrip--button {
  text-align: center;
  margin: -1rem 0 0 0;
}
.newsfilmstrip--movement {
  position: relative;
  height: 5rem;
  margin: 0 auto;
  display: block;
  width: 25rem;
}
@media print, screen and (min-width: 64em) {
  .newsfilmstrip--movement {
    width: 100%;
  }
}
.newsfilmstrip .card {
  border: var(--border-transparent);
  position: relative;
}
@media print, screen and (min-width: 64em) {
  .newsfilmstrip .card {
    width: 36rem;
    height: 100%;
  }
}
.newsfilmstrip .card::before {
  content: "";
  border: var(--border-transparent);
  position: absolute;
  height: 91%;
  width: 99%;
  top: 2rem;
}
.newsfilmstrip .card:hover {
  transition: all 0.5s ease-out;
}
.newsfilmstrip .card:hover::before {
  border: var(--border-grey);
}
.newsfilmstrip .card:hover h4 {
  color: #b41212;
}
.newsfilmstrip .card-section {
  position: relative;
}
.newsfilmstrip .card-section .img {
  width: 36.6rem;
  height: 24.4rem;
}
@media print, screen and (min-width: 40em) {
  .newsfilmstrip .card-section .img {
    height: 13.6rem;
    width: 19.4rem;
  }
}
@media print, screen and (min-width: 64em) {
  .newsfilmstrip .card-section .img {
    width: 34rem;
    height: 23.9rem;
  }
}

.newsfilter {
  margin: 5rem 0 3rem 0;
}
.newsfilter .no-posts {
  display: block;
  margin: 10rem auto;
  text-align: center;
}
.newsfilter h3 {
  text-align: center;
}
@media print, screen and (min-width: 64em) {
  .newsfilter h3 {
    margin: 0 0 2rem 1.25rem;
    text-align: left;
  }
}
.newsfilter .card {
  border: 1px solid transparent;
  position: relative;
  background: transparent;
}
@media print, screen and (min-width: 64em) {
  .newsfilter .card {
    width: 36rem;
    height: 100%;
  }
}
.newsfilter .card::before {
  content: "";
  border: 1px solid transparent;
  position: absolute;
  height: 91%;
  width: 100%;
  top: 2rem;
}
.newsfilter .card:hover {
  transition: all 0.5s ease-out;
}
.newsfilter .card:hover::before {
  border: var(--border-grey);
}
.newsfilter .card:hover h4 {
  color: #b41212;
}
.newsfilter .card-section {
  position: relative;
}
.newsfilter .card-section .img {
  width: 273px;
  height: 181px;
}
@media print, screen and (min-width: 64em) {
  .newsfilter .card-section .img {
    width: 366px;
    height: 244px;
  }
}
.newsfilter .card-section .date {
  top: 16rem;
  left: 0;
}
@media print, screen and (min-width: 40em) {
  .newsfilter .card-section .date {
    top: 16rem;
  }
}
@media print, screen and (min-width: 64em) {
  .newsfilter .card-section .date {
    top: 22.5rem;
    left: 0.5rem;
  }
}

.pagination--container,
.wp-block-query-pagination {
  margin-top: 3rem;
  text-align: center;
}
.pagination--container .page-numbers,
.wp-block-query-pagination .page-numbers {
  display: none;
}
.pagination--container .prev,
.pagination--container .next,
.pagination--container .current,
.pagination--container .wp-block-query-pagination-previous,
.pagination--container .wp-block-query-pagination-next,
.wp-block-query-pagination .prev,
.wp-block-query-pagination .next,
.wp-block-query-pagination .current,
.wp-block-query-pagination .wp-block-query-pagination-previous,
.wp-block-query-pagination .wp-block-query-pagination-next {
  display: inline;
}
@media print, screen and (min-width: 40em) {
  .pagination--container .page-numbers,
.wp-block-query-pagination .page-numbers {
    display: inline;
  }
}
.pagination--container .page-numbers,
.wp-block-query-pagination .page-numbers {
  color: #242424;
  margin: 0 1rem;
  border: 2px solid #242424;
  padding: 1rem 1.75rem;
}
.pagination--container .page-numbers:hover,
.wp-block-query-pagination .page-numbers:hover {
  color: #b41212;
  border: 2px solid #b41212;
}
.pagination--container .dots,
.wp-block-query-pagination .dots {
  border: 1px solid transparent;
  padding: 1rem 1.5rem;
}
.pagination--container .dots:hover,
.wp-block-query-pagination .dots:hover {
  color: #424A55;
  border: 1px solid transparent;
}
.pagination--container .prev,
.pagination--container .wp-block-query-pagination-previous,
.wp-block-query-pagination .prev,
.wp-block-query-pagination .wp-block-query-pagination-previous {
  position: relative;
  color: transparent;
  border: 2px solid #424A55;
  padding: 1rem 1.75rem;
  text-indent: -9999px;
}
.pagination--container .prev::after,
.pagination--container .wp-block-query-pagination-previous::after,
.wp-block-query-pagination .prev::after,
.wp-block-query-pagination .wp-block-query-pagination-previous::after {
  content: "";
  position: absolute;
  left: 8px;
  top: 9px;
  height: 2rem;
  width: 2.75rem;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("./images/arrows/arrow--black.svg");
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.pagination--container .prev:hover,
.pagination--container .wp-block-query-pagination-previous:hover,
.wp-block-query-pagination .prev:hover,
.wp-block-query-pagination .wp-block-query-pagination-previous:hover {
  color: transparent;
  border: 2px solid #b41212;
  background: #b41212;
}
.pagination--container .prev:hover::after,
.pagination--container .wp-block-query-pagination-previous:hover::after,
.wp-block-query-pagination .prev:hover::after,
.wp-block-query-pagination .wp-block-query-pagination-previous:hover::after {
  background-image: url("./images/arrows/arrow--white.svg");
}
.pagination--container .next,
.pagination--container .wp-block-query-pagination-next,
.wp-block-query-pagination .next,
.wp-block-query-pagination .wp-block-query-pagination-next {
  position: relative;
  color: transparent;
  border: 2px solid #424A55;
  padding: 1rem 1.75rem;
  text-indent: -9999px;
}
.pagination--container .next:hover,
.pagination--container .wp-block-query-pagination-next:hover,
.wp-block-query-pagination .next:hover,
.wp-block-query-pagination .wp-block-query-pagination-next:hover {
  color: transparent;
  border: 2px solid #b41212;
  background: #b41212;
}
.pagination--container .next:hover::after,
.pagination--container .wp-block-query-pagination-next:hover::after,
.wp-block-query-pagination .next:hover::after,
.wp-block-query-pagination .wp-block-query-pagination-next:hover::after {
  background-image: url("./images/arrows/arrow--white.svg");
}
.pagination--container .next::after,
.pagination--container .wp-block-query-pagination-next::after,
.wp-block-query-pagination .next::after,
.wp-block-query-pagination .wp-block-query-pagination-next::after {
  content: "";
  position: absolute;
  left: 8px;
  top: 15px;
  height: 2rem;
  width: 2.75rem;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("./images/arrows/arrow--black.svg");
}
.pagination--container .current,
.wp-block-query-pagination .current {
  color: #FFFFFF;
  background: #b41212;
  font-size: 2rem;
  line-height: 41px;
  padding: 5px 11px;
}
.pagination--container .current:hover,
.wp-block-query-pagination .current:hover {
  background: #b41212;
  color: #FFFFFF;
  border: 2px solid #b41212;
}

@media print, screen and (min-width: 40em) {
  .teasercards .card--heading {
    text-align: center;
  }
}

.main-container .pagination,
.main-container .pagination--container {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 50px;
}
.main-container .pagination a,
.main-container .pagination span,
.main-container .pagination--container a,
.main-container .pagination--container span {
  border: 2px solid #000 !important;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 40px;
  width: 40px;
}
.main-container .pagination li,
.main-container .pagination span,
.main-container .pagination--container li,
.main-container .pagination--container span {
  margin: 0;
  padding: 0;
  background: 0;
  border: 0;
}
.main-container .pagination li:before,
.main-container .pagination span:before,
.main-container .pagination--container li:before,
.main-container .pagination--container span:before {
  padding: 0 !important;
  background: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  display: none !important;
}

.main-container .pagination--container span.current {
  background: #b41212;
  font-weight: bold;
}

.main-container .pagination--container a.next.page-numbers,
.main-container .pagination--container a.prev.page-numbers {
  border: 0 !important;
}
.main-container .pagination--container a.next.page-numbers:after,
.main-container .pagination--container a.prev.page-numbers:after {
  top: 8px !important;
}

.main-container .pagination--container a.next.page-numbers:after {
  top: 13px !important;
}

.social__container {
  margin: 7rem 0;
}
@media print, screen and (min-width: 40em) {
  .social__container {
    margin: 9rem 0 7rem 0;
  }
}
.social__container h2 {
  text-align: center;
  color: #242424;
  margin: 2rem 0;
}
@media print, screen and (min-width: 40em) {
  .social__container h2 {
    margin: 0 0 5rem 0;
  }
}
.social__container--panel {
  position: relative;
  height: 15rem;
  width: 100%;
  margin: 1rem 0 3rem 0;
}
.social__container--panel:hover {
  box-shadow: 0 1rem 2rem rgba(36, 36, 36, 0.4);
  -webkit-transform: translateY(-1rem);
          transform: translateY(-1rem);
}
@media print, screen and (min-width: 40em) {
  .social__container--panel {
    margin: 0 1rem 3rem 1rem;
    width: 66rem;
  }
}
.social__container--panel .img-grey {
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
}
.social__container--panel .social__link--img {
  max-width: 100%;
  max-height: 100%;
  height: 15rem;
  width: 38rem;
  object-fit: cover;
}
@media print, screen and (min-width: 40em) {
  .social__container--panel .social__link--img {
    width: 66rem;
  }
}
.social__container--panel div {
  position: absolute;
  left: 50%;
  top: 40%;
  -webkit-transform: translate(-40%, -50%);
          transform: translate(-40%, -50%);
}
.social__container--panel p {
  position: absolute;
  left: 50%;
  top: 80%;
  -webkit-transform: translate(-50%, -80%);
          transform: translate(-50%, -80%);
  font-size: 2rem;
  color: #FFFFFF;
}
.social__container .fa {
  font-size: 4rem;
  text-decoration: none;
  padding: 0.5rem 0.5rem 0 1.5rem;
}
.social__container .fa--facebook {
  background: url("./images/backgrounds/facebookicon.svg");
  background-repeat: no-repeat;
  background-size: cover;
  padding: 2rem;
}
.social__container .fa-twitter, .social__container .fa-x-twitter, .social__container .fa-linkedin, .social__container .fa-instagram {
  color: #FFFFFF;
}

.readmore {
  margin: 4rem 0 8rem 0;
  position: relative;
}
@media print, screen and (min-width: 64em) {
  .readmore {
    margin: 8rem 7rem 4rem 4rem;
    padding: 3rem 0 10rem 0;
  }
}
.readmore::before {
  content: "";
  box-sizing: border-box;
  border: 1px solid #D1D4D9;
  position: absolute;
  top: 45px;
  left: -15px;
  width: 110%;
  height: 100%;
  z-index: -1;
}
@media print, screen and (min-width: 40em) {
  .readmore::before {
    width: 105%;
  }
}
@media print, screen and (min-width: 64em) {
  .readmore::before {
    top: -25px;
    left: 95px;
    width: 90%;
  }
}
.readmore__panel {
  /*
  perhaps your curious why text is ease-out and expanded is ease-in
  https://css-tricks.com/ease-out-in-ease-in-out/ has a great article on it
  ease-in: when things are moving out.
  ease-out: when things are moving in
  */
}
.readmore__panel img {
  display: block;
  margin: auto;
}
@media print, screen and (min-width: 64em) {
  .readmore__panel img {
    float: left;
    max-width: 28rem;
    max-height: 35rem;
  }
}
.readmore__panel--noimage {
  margin: 7rem 0 0 0;
}
.readmore__panel--text {
  position: relative;
  max-height: 25rem;
  overflow: hidden;
  transition: max-height 0.5s ease-out;
}
@media print, screen and (min-width: 64em) {
  .readmore__panel--text {
    max-height: 30rem;
  }
}
@media print, screen and (min-width: 64em) {
  .readmore__panel--text ul {
    margin-left: 4.25rem !important;
    margin-right: 0 !important;
  }
}
.readmore__panel--text.-expanded {
  max-height: 100%;
  transition: max-height 0.5s ease-in;
}
.readmore__panel--text:not(.-expanded)::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: linear-gradient(rgba(255, 255, 255, 0), white);
}
@media print, screen and (min-width: 64em) {
  .readmore__panel--main {
    margin: 0 10rem 0 30rem;
  }
}
.readmore__panel h3 {
  color: #1B4E74;
  margin-top: 1.5rem;
}
.readmore__panel .expand-button {
  font-weight: 900;
  text-align: center;
  margin: 2rem 0 0 0;
  font-size: 1.6rem;
}
.readmore__panel .expand-button:hover {
  cursor: pointer;
}
@media print, screen and (min-width: 64em) {
  .readmore__panel .expand-button {
    position: absolute;
    left: 50%;
  }
}
.readmore__panel .plus::before, .readmore__panel .minus::before {
  color: #1B4E74;
  font-weight: bold;
}
.readmore__panel .plus::before {
  content: "+ ";
}
.readmore__panel .minus::before {
  content: "− ";
}

@media print, screen and (min-width: 64em) {
  .whitepaper {
    margin: 0 0 6rem 0;
  }
}
.whitepaper h2 {
  text-align: center;
  margin: 1.5rem;
}
@media print, screen and (min-width: 40em) {
  .whitepaper h2 {
    text-align: left;
    margin: 1.5rem 0;
  }
}
.whitepaper .card {
  border: var(--border-transparent);
  background: transparent;
}
.whitepaper .card:hover {
  border: var(--border-grey);
  background: #FFFFFF;
}
.whitepaper .card:hover h4 {
  color: #b41212;
}
@media print, screen and (min-width: 40em) {
  .whitepaper h4, .whitepaper .author {
    margin-left: 2rem;
  }
}
.whitepaper .date {
  position: static;
  background: transparent;
  padding: 0;
}
@media print, screen and (min-width: 64em) {
  .whitepaper .date {
    padding: 0.5rem 1rem 0 1rem;
  }
}
.whitepaper--button {
  text-align: center;
}

.informational {
  margin: 4rem 0;
}
.informational .none {
  display: none;
}
.informational__tab {
  padding: 4rem 1rem;
  position: relative;
}
@media print, screen and (min-width: 64em) {
  .informational__tab {
    width: 50%;
    height: auto;
    padding: 0;
    min-height: 70rem;
  }
}
.informational__tab p {
  font-size: 1.8rem;
  margin: 2rem 0;
}
.informational .tab--blue {
  background-color: #1B4E74;
  color: #FFFFFF;
  position: relative;
}
.informational .tab--blue::before {
  content: "";
  height: 100%;
  width: 210%;
  position: absolute;
  top: 0;
  right: -100%;
  z-index: -1;
  background-color: inherit;
}
.informational .tab--blue::after {
  content: "";
  height: 100%;
  width: 210%;
  position: absolute;
  top: 0;
  left: -100%;
  z-index: -1;
  background-color: inherit;
}
.informational .tab--blue h2 {
  color: #FFFFFF;
}
@media print, screen and (min-width: 64em) {
  .informational .tab--blue {
    padding: 10rem 8rem 6rem 2rem;
  }
}
.informational .tab--grey {
  background-color: #F7F7F7;
  color: #242424;
  position: relative;
}
.informational .tab--grey::before {
  content: "";
  height: 100%;
  width: 210%;
  position: absolute;
  top: 0;
  right: -100%;
  z-index: -1;
  background-color: inherit;
}
.informational .tab--grey::after {
  content: "";
  height: 100%;
  width: 210%;
  position: absolute;
  top: 0;
  left: -100%;
  z-index: -1;
  background-color: inherit;
}
@media print, screen and (min-width: 64em) {
  .informational .tab--grey {
    padding: 13rem 2rem 6rem 8rem;
  }
}
.informational .tab--grey li {
  list-style: none;
  margin: 0 0 2rem 2rem;
}
.informational .tab--grey li::before {
  top: 9px;
}
.informational .tab--grey h4 {
  margin: 0 0 2rem 0;
}
.informational .area--name__buttons {
  display: none;
}
@media print, screen and (min-width: 64em) {
  .informational .area--name__buttons {
    position: absolute;
    right: 0;
    width: 100%;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-justify-content: space-around;
        -ms-flex-pack: distribute;
            justify-content: space-around;
  }
  .informational .area--name__buttons .area--name__row {
    -webkit-flex: 1 1 33.33%;
        -ms-flex: 1 1 33.33%;
            flex: 1 1 33.33%;
  }
  .informational .area--name__buttons label {
    font-size: 1.8rem;
    border-radius: 20px;
    font-weight: 600;
    height: 4rem;
    padding: 0.25rem 1.5rem;
    background: linear-gradient(to right, #FFFFFF 0%, #FFFFFF 50%, #1B4E74 50%, #1B4E74 100%);
    display: inline-block;
    background-size: 215% 100%;
    background-position: 99% 10%;
    transition: background-position 0.5s;
    margin: 1rem;
  }
  .informational .area--name__buttons label:hover {
    background-position: 0 0;
    color: #b41212;
  }
  .informational .area--name__buttons input[type=radio]:checked + label {
    color: #1B4E74;
    background: #FFFFFF;
  }
}
.informational .area--name__select select {
  background-color: #1B4E74;
}
@media print, screen and (min-width: 64em) {
  .informational .area--name__select select {
    display: none;
  }
}
.informational .triangle {
  position: relative;
}
.informational .triangle::after {
  content: "";
  position: absolute;
  top: -4rem;
  left: 50%;
  -webkit-transform: translate(-50%);
          transform: translate(-50%);
  width: 0;
  height: 0;
  border-left: 2rem solid transparent;
  border-right: 2rem solid transparent;
  border-top: 2rem solid #1B4E74;
}
@media print, screen and (min-width: 64em) {
  .informational .triangle::after {
    content: "";
    position: absolute;
    top: 15%;
    left: -6rem;
    border-top: 2rem solid transparent;
    border-left: 2rem solid #1B4E74;
    border-bottom: 2rem solid transparent;
  }
}

@media print, screen and (min-width: 64em) {
  .filter__heading {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}

.filter {
  text-align: center;
}
@media print, screen and (min-width: 64em) {
  .filter {
    text-align: left;
    margin: -0.5rem -5rem 0 0;
  }
}
.filter p {
  display: block;
}
@media print, screen and (min-width: 64em) {
  .filter p {
    margin: 0.5rem 0;
  }
}
.filter .ui-group {
  margin: 0 3rem;
}
@media print, screen and (min-width: 40em) {
  .filter .ui-group {
    margin: 0 19rem;
  }
}
@media print, screen and (min-width: 64em) {
  .filter .ui-group {
    margin: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .filter .ui-group:last-of-type {
    margin: -0.35rem 2rem 0 3rem;
  }
}
.filter select {
  border: 2px solid #ABAEB4;
  color: #424A55;
  padding: 0.7rem;
  background-position: right 0.4rem center;
}
@media print, screen and (min-width: 64em) {
  .filter select {
    width: 27rem;
  }
}
.filter select option {
  font-weight: 700;
  color: #063471;
}

.search--banner__results .filter {
  margin: 0;
}
@media print, screen and (min-width: 64em) {
  .search--banner__results .filter {
    margin: 7rem 0 0 7rem;
  }
}
.search--banner__results .filter .flex-child-auto .button, .search--banner__results .filter .flex-child-auto .wp-block-button .wp-block-button__link, .wp-block-button .search--banner__results .filter .flex-child-auto .wp-block-button__link {
  color: #FFFFFF;
}
@media print, screen and (min-width: 64em) {
  .search--banner__results .filter .flex-child-auto .button, .search--banner__results .filter .flex-child-auto .wp-block-button .wp-block-button__link, .wp-block-button .search--banner__results .filter .flex-child-auto .wp-block-button__link {
    margin: -0.35rem 2rem 0 2rem;
  }
}
@media print, screen and (min-width: 64em) {
  .search--banner__results .filter .flex-child-auto {
    margin: 0 -5rem;
  }
}
.search--banner__results .filter p {
  text-align: center;
  font-size: 1.8rem;
}
.search--banner__results .filter select {
  border: 1px solid #FFFFFF;
  color: #FFFFFF;
}
.search--banner__results .filter select:focus {
  background: transparent;
}
@media print, screen and (min-width: 64em) {
  .search--banner__results .filter select {
    width: 24rem;
  }
}

.main-grid .main-content .m-archive-block__filters {
  margin: 25px 0 40px;
}
@media screen and (min-width: 640px) {
  .main-grid .main-content .m-archive-block__filters {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}
.main-grid .main-content .m-archive-block__filters select {
  color: #2857aa;
  width: 100%;
  border: 2px solid #2857aa;
  margin: 0 0 10px;
}
@media screen and (min-width: 640px) {
  .main-grid .main-content .m-archive-block__filters select {
    width: 183px;
    margin: 0;
  }
}
.main-grid .main-content .m-archive-block__filters ul {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 0 !important;
  width: 100%;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.main-grid .main-content .m-archive-block__filters ul li {
  list-style: none;
  text-align: center;
  width: 33.33%;
  color: #2857aa;
  cursor: pointer;
  border-bottom: 2px solid transparent;
}
@media screen and (min-width: 640px) {
  .main-grid .main-content .m-archive-block__filters ul li {
    margin: 0 20px;
  }
}
.main-grid .main-content .m-archive-block__filters ul li:hover, .main-grid .main-content .m-archive-block__filters ul li.archive-selected {
  font-weight: bold;
  border-bottom-color: #2857aa;
}
.main-grid .main-content .m-archive-block__filters ul li:before {
  display: none !important;
}
.main-grid .main-content .m-archive-block__date {
  font-weight: bold;
  font-size: 15px;
  margin-bottom: 10px;
  display: block;
}
.main-grid .main-content .m-archive-block__result {
  margin-bottom: 60px;
}
.main-grid .main-content .m-archive-block__result iframe {
  width: 100%;
  height: 382px;
  margin-bottom: 20px;
}
.main-grid .main-content .m-archive-block__result h2 {
  color: #2857aa;
  font-size: 25px;
}
.main-grid .main-content .m-archive-block__result p {
  color: #2857aa;
}
.main-grid .main-content .m-archive-block__result--thumb {
  display: block;
  height: 217px;
  width: 100%;
  background-size: cover;
  margin-right: 20px;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  margin-bottom: 20px;
  background-repeat: no-repeat;
}
@media screen and (min-width: 640px) {
  .main-grid .main-content .m-archive-block__result--thumb {
    width: 166px;
    margin-bottom: 0;
    background-position: center;
    background-size: contain;
  }
}
.main-grid .main-content .m-archive-block__result.blog-post {
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: 1px solid #dedede;
  margin-bottom: 26px;
  padding-bottom: 26px;
}
@media screen and (min-width: 640px) {
  .main-grid .main-content .m-archive-block__result.blog-post {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}
.main-grid .main-content .m-archive-block__result.blog-post:last-child {
  border-bottom: 0;
  margin-bottom: 0;
  padding-bottom: 0;
}
.main-grid .main-content .m-archive-block__result.blog-post h2 {
  font-weight: 600;
}
.main-grid .main-content .m-archive-block__result.blog-post .m-archive-block__result--thumb {
  height: 150px;
  width: 100%;
}
@media screen and (min-width: 640px) {
  .main-grid .main-content .m-archive-block__result.blog-post .m-archive-block__result--thumb {
    width: 150px;
  }
}
.main-grid .main-content .m-archive-block__result.pdf {
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: 1px solid #dedede;
  margin-bottom: 26px;
  padding-bottom: 26px;
  margin: 0 20px 26px;
}
@media screen and (min-width: 640px) {
  .main-grid .main-content .m-archive-block__result.pdf {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}
.main-grid .main-content .m-archive-block__result.pdf:last-child {
  border-bottom: 0;
  margin-bottom: 0;
  padding-bottom: 0;
}
.main-grid .main-content .m-archive-block__result.pdf h3 {
  font-size: 20px;
}
.main-grid .main-content .m-archive-block__result.pdf p {
  color: #000;
  margin-bottom: 20px;
}
.main-grid .main-content .m-archive-block__result.pdf img {
  margin-right: 20px;
}
.main-grid .main-content .m-archive-block__result.pdf a {
  display: inline-block;
  width: 106px;
  text-align: center;
  border: 2px solid #2857aa;
  margin-right: 18px;
  padding: 5px;
  font-weight: 600;
}
.main-grid .main-content .m-archive-block__result.pdf a:hover {
  color: #fff;
  background: #2857aa;
}

.m-art-comp__meet {
  background: #f4f4f4;
  padding: 30px;
  border-radius: 10px;
}
.m-art-comp__meet .wp-block-button {
  margin: 0 auto;
  display: block;
}
.m-art-comp__meet .wp-block-button__link {
  background: #fff;
  width: auto;
  border: 1px solid #2857aa;
  color: #2857aa;
  font-size: 20px;
  border-radius: 10px;
  font-weight: normal !important;
  height: auto;
  margin: 0 auto;
  padding: 20px 50px;
}
.m-art-comp__meet .wp-block-button__link:before, .m-art-comp__meet .wp-block-button__link:after {
  display: none;
}
.m-art-comp__nav {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 10px auto 46px;
  padding: 0;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #1e4385;
}
@media screen and (max-width: 640px) {
  .m-art-comp__nav {
    display: none;
  }
}
.m-art-comp__nav a {
  border: 1px solid;
  margin: 0 5px;
  display: block;
  list-style: none;
  padding: 5px 10px;
  text-align: center;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  font-size: 16px;
  font-weight: 600 !important;
  color: #1e4385;
}
.m-art-comp__nav a:hover {
  background: #1e4385;
  color: #fff;
}
.m-art-comp__nav li {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  width: 100%;
  max-width: 206px;
}
.m-art-comp__nav li:before {
  display: none !important;
}
.m-art-comp__intro {
  margin: 0 15px !important;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media screen and (max-width: 940px) {
  .m-art-comp__intro {
    display: block;
    margin-top: 50px !important;
  }
}
.m-art-comp__intro h3 {
  color: #1B4E74;
}
.m-art-comp__buttons {
  background: #f2f2f2;
  border-radius: 10px;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  margin: 0 0 20px !important;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
@media screen and (max-width: 640px) {
  .m-art-comp__buttons {
    display: block;
  }
}
.m-art-comp__buttons.video a:before {
  background: url("./images/arrows/arrow--video.svg") no-repeat;
  height: 37px;
  width: 51px;
}
.m-art-comp__buttons li {
  list-style: none;
  width: 50%;
}
.m-art-comp__buttons li:before {
  display: none !important;
}
.m-art-comp__buttons a {
  font-weight: 500 !important;
  padding: 24px 13px;
  display: block;
  line-height: 20px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 16px;
}
.m-art-comp__buttons a:before {
  display: block;
  content: "";
  height: 33px;
  width: 33px;
  background: url("./images/arrows/arrow--link.svg") no-repeat;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  margin-right: 10px;
}
.m-art-comp__quote {
  border: 0;
  padding: 0;
  margin: 80px 0 80px !important;
}
@media screen and (min-width: 940px) {
  .m-art-comp__quote {
    margin: 80px 10rem 80px !important;
  }
}
.m-art-comp__press {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: 1rem 0 0 !important;
}
@media screen and (min-width: 1024px) {
  .m-art-comp__press {
    margin: 1rem 209px 0 !important;
  }
}
.m-art-comp__press li {
  list-style: none;
}
@media screen and (min-width: 640px) {
  .m-art-comp__press li {
    width: 50%;
  }
}
.m-art-comp__press li:before {
  display: none !important;
}
.m-art-comp__press a {
  display: block;
  font-weight: 500 !important;
  color: #2857aa;
  margin-bottom: 20px;
}
@media screen and (min-width: 1024px) {
  .m-art-comp__press a {
    padding: 20px;
    margin-bottom: 0;
  }
}
.m-art-comp__press a:hover {
  background: #f5f5f5;
}
.m-art-comp__separator {
  margin: 75px 0 !important;
  border-bottom: 1px solid #000;
}
@media screen and (min-width: 1024px) {
  .m-art-comp__separator {
    margin: 75px 23rem !important;
  }
}
.m-art-comp__title {
  color: #2857aa;
  font-size: 25px;
  font-weight: 600;
}
.m-art-comp__slider {
  background: #f1f1f1;
  padding: 18px;
  margin: 95px 0 !important;
}
@media screen and (min-width: 1392px) {
  .m-art-comp__slider {
    padding: 35px 76px 68px;
    margin: 95px -125px !important;
  }
}
.m-art-comp__slider .slick-prev {
  left: -47px;
  background: url("./images/arrows/arrow--slider--prev.svg") no-repeat;
}
.m-art-comp__slider .slick-next {
  background: url("./images/arrows/arrow--slider--next.svg") no-repeat;
  right: -47px;
}
.m-art-comp__slider .slick-arrow {
  height: 38px;
  width: 20px;
  background-size: cover;
}
@media screen and (min-width: 1392px) {
  .m-art-comp__slider .slick-arrow {
    height: 52px;
    width: 27px;
  }
}
.m-art-comp__slider .slick-arrow:hover {
  opacity: 0.5;
}
.m-art-comp__slider .slick-arrow:before, .m-art-comp__slider .slick-arrow:after {
  display: none !important;
}
.m-art-comp__slider h2 {
  max-width: 642px;
  margin: 0 auto 35px;
  font-size: 25px;
  font-weight: 500;
}
@media screen and (max-width: 1392px) {
  .m-art-comp__slider h2 {
    text-align: center;
  }
}
.m-art-comp__slider h2 a {
  font-size: 2.5rem;
  font-weight: 300 !important;
  display: inline-block;
  border-bottom: 1px dotted;
}
.m-art-comp__slider--slides {
  margin: 0 !important;
}
.m-art-comp__slider--slide {
  padding: 0 11px;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.m-art-comp__slider--slide:before {
  display: none !important;
}
.m-art-comp__slider--slide img {
  width: auto;
  height: 223px;
}

@media screen and (min-width: 640px) {
  .anchor:before,
#virtual-reception,
#about,
#press {
    padding-top: 170px !important;
    margin-top: -170px !important;
  }
}

html {
  scroll-behavior: smooth;
}

.signup {
  color: #FFFFFF;
  margin: 9rem 0 0 0;
  position: relative;
}
@media print, screen and (min-width: 64em) {
  .signup {
    margin: 3rem 0 0 0;
  }
}
.signup__picture {
  position: absolute;
  z-index: -1;
  bottom: 96rem;
  right: 0;
}
@media print, screen and (min-width: 40em) {
  .signup__picture {
    bottom: 94rem;
  }
}
@media print, screen and (min-width: 64em) {
  .signup__picture {
    bottom: 42rem;
  }
}
.signup__picture img {
  display: block;
  width: auto;
  height: 45rem;
  max-width: 100rem;
}
@media print, screen and (min-width: 64em) {
  .signup__picture img {
    height: 65rem;
  }
}
.signup__button {
  position: absolute;
  top: -6rem;
  left: 50%;
  -webkit-transform: translate(-50%);
          transform: translate(-50%);
  text-align: center;
  z-index: 10;
}
@media screen and (min-width: 80em) {
  .signup__button {
    position: fixed;
    left: 97.5%;
    top: calc(100% - 49rem);
  }
}
.signup__form {
  background: #193d5c url("./images/backgrounds/CI_HeaderImage_Standard.png");
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  padding: 3rem;
  margin: 0 !important;
  position: relative;
}
@media print, screen and (min-width: 64em) {
  .signup__form {
    height: 28rem;
    padding: 8rem 4rem 8rem 4rem;
    max-width: 100vw;
    left: 50%;
    right: 50%;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
    clear: both;
  }
}
.signup__form .button, .signup__form .wp-block-button .wp-block-button__link, .wp-block-button .signup__form .wp-block-button__link {
  color: #ffffff !important;
}
.signup__form .wp-block-group__inner-container {
  max-width: 680px;
  margin-left: auto;
  margin-right: auto;
}
.signup__form .flex-child-auto {
  position: relative;
}
.signup__form h3 {
  width: 60%;
  margin: 0 auto;
  text-align: center;
  padding-bottom: 2rem;
  color: #FFFFFF;
}
@media print, screen and (min-width: 64em) {
  .signup__form h3 {
    width: 100%;
    margin: 4rem 0 0 0;
  }
}
.signup__contact {
  text-align: center;
  background-color: #1B4E74;
  color: #A7C1E4;
  font-size: 1.6rem;
  font-weight: 900;
  padding: 3rem;
}
@media print, screen and (min-width: 64em) {
  .signup__contact {
    text-align: left;
    padding: 4rem 5rem 0 5rem;
  }
}
.signup__contact a {
  color: #FFFFFF;
  font-size: 1.6rem;
  font-weight: inherit;
  letter-spacing: 0.5px;
}
.signup__contact--ele {
  margin-bottom: 2rem;
}
.signup__contact--ele .info {
  font-size: 1.4rem;
  letter-spacing: 0.5px;
}
@media print, screen and (min-width: 64em) {
  .signup__contact--top {
    padding: 2rem 3rem 2rem 3rem;
  }
}
.signup__contact--top .logo {
  width: 125px;
  height: 52px;
}
@media print, screen and (min-width: 64em) {
  .signup__contact--top .logo {
    width: 170px;
    height: 70px;
  }
}
.signup__contact--top .footer__contact--ele:nth-child(2) {
  -webkit-order: 3;
      -ms-flex-order: 3;
          order: 3;
}
.signup__contact--top .footer__contact--ele:nth-child(3) {
  -webkit-order: 4;
      -ms-flex-order: 4;
          order: 4;
}
.signup__contact--top .footer__contact--ele:nth-child(4) {
  -webkit-order: 5;
      -ms-flex-order: 5;
          order: 5;
}
.signup__contact--top .footer__contact--ele:nth-child(5) {
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2;
}
@media print, screen and (min-width: 40em) {
  .signup__contact--top .footer__contact--ele:nth-child(2) {
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
  .signup__contact--top .footer__contact--ele:nth-child(3) {
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3;
  }
  .signup__contact--top .footer__contact--ele:nth-child(4) {
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4;
  }
  .signup__contact--top .footer__contact--ele:nth-child(5) {
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5;
  }
}
.signup__contact--top .footer__contact--ele .navigation-form {
  margin: 2rem;
}
@media print, screen and (min-width: 64em) {
  .signup__contact--top .footer__contact--ele .navigation-form {
    margin: 2rem 0 0 0;
  }
}
.signup__contact--top .footer__contact--ele .navigation-form input[type=text] {
  font-size: 1.6rem;
}
.signup__contact--top .footer__contact--ele .navigation-form input[type=text]::-webkit-input-placeholder {
  position: relative;
  top: -1rem;
  left: -0.5rem;
}
.signup__contact--top .footer__contact--ele .navigation-form input[type=text]:-ms-input-placeholder {
  position: relative;
  top: -1rem;
  left: -0.5rem;
}
.signup__contact--top .footer__contact--ele .navigation-form input[type=text]::placeholder {
  position: relative;
  top: -1rem;
  left: -0.5rem;
}
.signup__contact--top .footer__contact--ele .navigation-form input[type=text]:active::-webkit-input-placeholder {
  color: transparent;
}
.signup__contact--top .footer__contact--ele .navigation-form input[type=text]:active:-ms-input-placeholder {
  color: transparent;
}
.signup__contact--top .footer__contact--ele .navigation-form input[type=text]:active::placeholder {
  color: transparent;
}
.signup__contact--top .footer__contact--ele .navigation-form input[type=text]:focus::-webkit-input-placeholder {
  color: transparent;
}
.signup__contact--top .footer__contact--ele .navigation-form input[type=text]:focus:-ms-input-placeholder {
  color: transparent;
}
.signup__contact--top .footer__contact--ele .navigation-form input[type=text]:focus::placeholder {
  color: transparent;
}
.signup__contact--top .footer__contact--ele .navigation-form input[type=submit] {
  display: block;
  width: 5rem;
  height: 5rem;
  z-index: 11;
  opacity: 0;
  cursor: pointer;
  right: 0;
  top: 0;
}
.signup__contact--top .footer__contact--ele .navigation-form .magnifying-glass-container {
  top: -2.5rem;
  right: -2rem;
  z-index: 1;
}
@media print, screen and (min-width: 64em) {
  .signup__contact--top .footer__contact--ele .navigation-form .magnifying-glass-container {
    top: -2rem;
  }
}
.signup__contact--top .footer__contact--ele .navigation-form .magnifying-glass-container .magnifying-glass {
  height: 0.3em;
  width: 0.3em;
  font-size: 1.5em;
  top: 3rem;
  left: -4rem;
}
.signup__contact--bottom {
  position: relative;
  font-size: 1.2rem;
  padding: 2rem 0 2rem 0rem;
}
@media print, screen and (min-width: 64em) {
  .signup__contact--bottom {
    padding: 2rem 0 4rem 0;
  }
}
.signup__contact--bottom::before {
  content: "";
  position: absolute;
  border-top: 1px solid #A7C1E4;
  top: 0;
  right: -3rem;
  width: 100vw;
}
@media print, screen and (min-width: 64em) {
  .signup__contact--bottom::before {
    right: 40px;
    width: 95%;
  }
}
@media print, screen and (min-width: 64em) {
  .signup__contact--bottom--ele:nth-child(1) {
    position: absolute;
    left: 3rem;
  }
  .signup__contact--bottom--ele:nth-child(2) {
    position: absolute;
    right: 3rem;
  }
}
.signup__contact--bottom--ele .fa {
  font-size: 2rem;
  text-align: center;
  text-decoration: none;
  padding: 0.5rem 0.25rem 0 1rem;
  margin-left: 1rem;
}
.signup__contact--bottom--ele .fa-facebook {
  background: #A7C1E4;
  border-top: 1px solid #A7C1E4;
  border-right: 1px solid #A7C1E4;
  border-left: 1px solid #A7C1E4;
  color: #1B4E74;
  border-radius: 4px;
}
.signup__contact--bottom--ele .fa-twitter,
.signup__contact--bottom--ele .fa-x-twitter {
  color: #A7C1E4;
  font-size: 2.5rem;
}
.signup__contact--bottom--ele .link {
  font-size: inherit;
  color: inherit;
  margin: 2rem 0;
}
@media print, screen and (min-width: 64em) {
  .signup__contact--bottom--ele .link {
    margin: 0rem 3rem 0rem 0;
  }
  .signup__contact--bottom--ele .link:nth-child(3) {
    float: right;
  }
}

.m-accordion {
  list-style: none;
  margin: 0 auto !important;
  padding: 0 !important;
  max-width: 842px;
}
.m-accordion__block-title {
  text-align: center;
  margin: 45px auto !important;
  color: #173c87;
  font-weight: 700;
  max-width: 842px;
}
.m-accordion__title {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.m-accordion__title strong {
  display: block;
  background: #063471;
  padding: 11px 18px;
  color: #FFFFFF;
  width: auto;
  width: 100%;
}
.m-accordion__title span {
  background: #3357b5;
  width: 53px;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-weight: bold;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  color: #FFFFFF;
  font-family: sans-serif;
  font-size: 30px;
  margin-left: 7px;
}
.m-accordion__title span:hover {
  cursor: pointer;
}
.m-accordion__description {
  display: none;
  padding: 18px 0;
}
.m-accordion .m-accordion__plus {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.m-accordion .m-accordion__minus {
  display: none;
}
.m-accordion__item {
  margin-bottom: 7px;
  list-style: none;
}
.m-accordion__item.active .m-accordion__plus {
  display: none;
}
.m-accordion__item.active .m-accordion__minus {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.m-accordion__item:hover {
  cursor: pointer;
}
.m-accordion__item:before {
  display: none !important;
}

.pum-container {
  background: url("./images/backgrounds/CI_HeaderImage_Standard.png") right bottom !important;
  background-size: cover !important;
  padding: 3rem !important;
  max-width: 500px !important;
  color: #fff;
}
.pum-container .pum-title {
  color: #fff !important;
  font-weight: bold;
}
.pum-container .pum-close {
  color: #fff !important;
  margin-top: 14px;
  font-size: 44px !important;
}
.pum-container .pum-close:before, .pum-container .pum-close:after {
  display: none !important;
  font-size: 44px !important;
}
.pum-container input, .pum-container select {
  width: 49% !important;
  margin-right: 2%;
  margin-bottom: 2%;
}
.pum-container .form__button {
  position: static;
  margin-left: 30px;
  color: #fff;
}
.pum-container p {
  color: #fff !important;
  margin-bottom: 30px;
}

.m-popup__row {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.m-popup__row input, .m-popup__row select {
  width: 49%;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}

.wp-block-post-template {
  margin: 0 !important;
}
.wp-block-post-template li:before {
  display: none !important;
}
.wp-block-post-template:after {
  content: "";
  display: block;
  height: 1px;
  width: 45%;
  background: #979797;
  margin: 85px auto;
}

.wp-container-12.wp-block-query li {
  border-bottom: 1px solid #979797;
  padding-bottom: 20px;
  margin-bottom: 30px;
}
.wp-container-12.wp-block-query li:last-child {
  border-bottom: 0;
}
.wp-container-12.wp-block-query .wp-block-post-template:after {
  display: none !important;
}

.wp-block-query-pagination {
  margin: 0 auto;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.wp-block-query-pagination .wp-block-query-pagination-previous,
.wp-block-query-pagination .wp-block-query-pagination-next {
  padding: 9px 22px;
}

.wp-block-cover {
  width: 100vw;
  margin: -309px 0 3.5rem calc(50% - 50vw) !important;
}
@media screen and (min-width: 1190px) {
  .wp-block-cover {
    min-height: 590px;
  }
}
@media screen and (max-width: 1190px) {
  .wp-block-cover {
    min-height: 600px;
  }
}
.wp-block-cover .wp-block-cover__inner-container {
  background: #1E4385;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  position: absolute;
}
.wp-block-cover .wp-block-cover__inner-container p {
  line-height: 28px;
}
@media screen and (max-width: 1190px) {
  .wp-block-cover .wp-block-cover__inner-container {
    bottom: 0;
    right: 0;
    left: 0;
    padding: 20px 39px;
  }
}
@media screen and (min-width: 1190px) {
  .wp-block-cover .wp-block-cover__inner-container {
    padding-left: 111px;
    width: 50%;
    top: 0;
    bottom: 0;
    right: 0;
    padding-bottom: 130px;
    padding: 0 0 111px 111px;
  }
  .wp-block-cover .wp-block-cover__inner-container p {
    margin-bottom: 0;
  }
}
@media screen and (min-width: 1190px) {
  .wp-block-cover .wp-block-cover__inner-container .wp-block-group {
    max-width: 424px;
  }
}

.staff .grid-x {
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.staff--member {
  text-align: center;
  margin: 0 0 2rem 0;
}

.staff--member h4 {
  margin: 0;
}

.staff--member .card {
  border: var(--border-transparent);
}

.staff--member img {
  display: block;
  margin: 0 auto;
  width: 100%;
  margin-bottom: 1rem;
}

@media print, screen and (min-width: 40em) {
  .staff--member img {
    object-fit: cover;
    width: auto;
  }
}
@media print, screen and (min-width: 40em) {
  .staff--member .card--backup {
    height: 36.4rem;
  }
}
.staff--member__name {
  color: #1B4E74;
  margin-bottom: 0;
}

.staff--member__title {
  font-size: 1.6rem;
  color: #424A55;
  margin-bottom: 0;
}

.staff--member__email {
  font-size: 1.4rem;
  color: #ABAEB4;
  position: relative;
  width: 100%;
}

.staff--member__email::after {
  content: "";
  position: absolute;
  bottom: -5px;
  left: 50%;
  background: none repeat scroll 0 0 transparent;
  display: block;
  height: 2px;
  width: 0;
  background: #ABAEB4;
  transition: width 0.3s ease 0s, left 0.3s ease 0s;
}

.staff--member__email:hover {
  color: #ABAEB4;
}

.staff--member__email:hover::after {
  width: 100%;
  left: 0;
}

.marketing-banner {
  position: relative;
  width: 100%;
  min-height: 350px;
  height: 100%;
  z-index: 2;
  margin: 0 0 13rem 0;
}
.marketing-banner button,
.marketing-banner .button,
.marketing-banner .wp-block-button .wp-block-button__link,
.wp-block-button .marketing-banner .wp-block-button__link {
  color: #FFFFFF;
}
@media print, screen and (min-width: 40em) {
  .marketing-banner {
    max-width: 1110px;
    display: block;
    margin: 0 auto;
    margin-top: 5rem;
    margin-bottom: 13rem;
  }
}
@media print, screen and (min-width: 64em) {
  .marketing-banner {
    margin-top: 2rem;
    margin-bottom: 10rem;
  }
  .marketing-banner:after {
    content: " ";
    position: absolute;
    top: 15px;
    left: 15px;
    right: -15px;
    bottom: -15px;
    border: var(--border-grey);
  }
}
@media screen and (max-width: 639px) {
  .marketing-banner {
    overflow: hidden;
  }
}
.marketing-banner__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(65, 87, 106, 0.8);
}
.marketing-banner .banner-img img {
  width: 100%;
}
@media print, screen and (min-width: 40em) {
  .marketing-banner .banner-img img {
    max-width: 1110px;
    display: block;
    margin: 0 auto;
  }
}
.marketing-banner-content {
  margin: 0 6rem;
  text-align: center;
  color: #FFFFFF;
  position: absolute;
  top: 6rem;
  z-index: 100;
}
.marketing-banner-content h3, .marketing-banner-content h4 {
  color: #FFFFFF;
  margin: 0 0 0 0;
}
.marketing-banner-content h3 {
  font-size: 3rem;
}
@media screen and (min-width: 64em) {
  .marketing-banner-content h3 {
    font-size: 3.4rem;
  }
}
.marketing-banner-content h4 {
  font-size: 2rem;
}
@media screen and (min-width: 64em) {
  .marketing-banner-content h4 {
    font-size: 2.4rem;
  }
}
@media print, screen and (min-width: 40em) {
  .marketing-banner-content {
    top: 9rem;
  }
}
@media screen and (max-width: 750px) {
  .marketing-banner-content {
    top: 2rem;
  }
}
@media screen and (max-width: 950px) {
  .marketing-banner-content {
    top: 4rem;
  }
}
@media screen and (max-width: 639px) {
  .marketing-banner-content {
    margin: 0 2rem;
  }
}
.marketing-banner-content button {
  width: 0;
}
.marketing-banner-content .button--orange {
  color: #FFFFFF;
}
.marketing-banner-content p {
  font-size: 1.8rem;
}
@media screen and (max-width: 540px) {
  .marketing-banner-content p {
    font-size: 1.6rem;
    line-height: 1.4;
  }
}
@media print, screen and (min-width: 40em) {
  .marketing-banner-content p {
    margin: 2rem;
  }
}
@media screen and (max-width: 950px) {
  .marketing-banner-content p {
    font-size: 1.5rem;
    line-height: 1.5;
  }
}
@media print, screen and (min-width: 64em) {
  .marketing-banner-content p {
    margin: 4rem 16rem;
  }
}
.marketing-banner-content .content--links {
  margin: 2rem auto;
  display: block;
}
.marketing-banner-content .content--links .button--orange {
  width: 13rem;
}
@media print, screen and (min-width: 40em) {
  .marketing-banner-content .content--links {
    width: 70%;
  }
}
.marketing-banner-content .marketing-banner-link {
  font-size: 1.8rem;
  color: #b41212;
  font-weight: 800;
  position: relative;
}
.marketing-banner-content .marketing-banner-link::after {
  content: "";
  position: absolute;
  bottom: -5px;
  left: 50%;
  background: none repeat scroll 0 0 transparent;
  display: block;
  height: 2px;
  width: 0;
  background: #b41212;
  transition: width 0.3s ease 0s, left 0.3s ease 0s;
}
.marketing-banner-content .marketing-banner-link:hover::after {
  width: 100%;
  left: 0;
}

.linkedin-feed h3 {
  text-align: center;
  margin-top: 3rem;
}

.kitchen-sink-header {
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: calc(100% - 4rem);
  margin-left: 2rem;
  margin-right: 2rem;
}

.kitchen-sink-components {
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: calc(100% - 4rem);
  margin-left: 2rem;
  margin-right: 2rem;
}
.kitchen-sink-components hr {
  margin: 3rem 0;
}
@media print, screen and (min-width: 64em) {
  .kitchen-sink-components {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: calc(75% - 2rem);
    margin-left: 1rem;
    margin-right: 1rem;
  }
}

.kitchen-sink-nav {
  display: none;
}
@media print, screen and (min-width: 64em) {
  .kitchen-sink-nav {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: calc(25% - 2rem);
    margin-left: 1rem;
    margin-right: 1rem;
    display: block;
    float: right;
  }
  .kitchen-sink-nav .docs-sub-menu {
    font-size: 0.85rem;
    margin-top: 1rem;
  }
  .kitchen-sink-nav .docs-menu-title {
    text-transform: uppercase;
    font-size: 0.75rem;
    color: #ABAEB4;
    font-weight: bold;
    line-height: 1;
    padding-left: 0.9rem;
    margin-bottom: 0.5rem;
    border-top: 1px solid #E2E4E7;
    margin-top: 1rem;
    padding-top: 1.5rem;
  }
  .kitchen-sink-nav .docs-toc {
    width: 100%;
    padding-left: 4rem;
    padding-right: 1rem;
  }
  .kitchen-sink-nav .docs-toc .active {
    background: #2199e8;
    color: white;
  }
  .kitchen-sink-nav .docs-toc .docs-sub-menu:first-child .docs-menu-title {
    margin-top: 0;
    border-top: 0;
    padding-top: 0;
  }
}

.kitchen-sink-grid .grid-x {
  background: #d6ecfa;
  font-size: 12px;
  line-height: 2rem;
  margin-bottom: 1.5rem;
}
.kitchen-sink-grid .grid-x .cell, .kitchen-sink-grid .grid-x :nth-child(odd) {
  background: #7bc1ef;
  color: #0a0a0a;
}
.kitchen-sink-grid .grid-x .cell:nth-child(even) {
  background: #1779ba;
  color: #fefefe;
}

#search-results .search--box {
  margin: 3rem 0;
  padding: 0 0 2rem 0;
  border-bottom: var(--border-grey);
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-justify-content: space-around;
      -ms-flex-pack: distribute;
          justify-content: space-around;
}
@media print, screen and (min-width: 64em) {
  #search-results .search--box {
    padding: 0 0 3rem 0;
  }
}
@media print, screen and (min-width: 64em) {
  #search-results .search--box {
    margin-left: 15rem;
    margin-right: 15rem;
    min-height: 15rem;
  }
}
#search-results .search--box__item {
  width: 100%;
}
#search-results .search--box__item:nth-child(1) {
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
}
#search-results .search--box__item:nth-child(2) {
  -webkit-order: 3;
      -ms-flex-order: 3;
          order: 3;
}
#search-results .search--box__item:nth-child(3) {
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2;
}
@media print, screen and (min-width: 64em) {
  #search-results .search--box__item:nth-child(1) {
    width: 20%;
  }
  #search-results .search--box__item:nth-child(2) {
    width: 80%;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
  #search-results .search--box__item:nth-child(3) {
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3;
    position: relative;
  }
}
#search-results .search--box__item .search--img {
  margin: 1rem 0;
  height: 21.5rem;
  width: 29.5rem;
}
@media print, screen and (min-width: 64em) {
  #search-results .search--box__item .search--img {
    height: 11.2rem;
    width: 16.9rem;
    position: absolute;
    left: 67rem;
    top: -11.5rem;
  }
}
#search-results .search--box__item .date {
  color: #b41212;
  font-size: 1.6rem;
  font-weight: bold;
}
@media print, screen and (min-width: 64em) {
  #search-results .search--box__item h4 {
    width: 45rem;
  }
}
#search-results .search--box__item .title {
  color: #242424;
}
#search-results .search--box__item .author {
  color: #ABAEB4;
  font-size: 1.8rem;
}
#search-results .pagination .current {
  background: #b41212;
  color: #FFFFFF;
  font-weight: bold;
  font-size: 2rem;
}
#search-results .pagination .current::before {
  content: none;
}
#search-results .pagination .ellipsis::before {
  content: none;
}
#search-results .pagination a:hover {
  background: none;
  position: relative;
  z-index: 12;
}
#search-results .pagination li {
  position: relative;
  z-index: 1;
  margin-right: 1.5rem;
}
#search-results .pagination li::before {
  border: 2px solid #242424;
  width: 3.5rem;
  height: 3.5rem;
  left: -2px;
  top: 3px;
}
#search-results .pagination li:hover {
  cursor: pointer;
}
#search-results .pagination li:hover a {
  color: #b41212;
}
#search-results .pagination li:hover::before {
  border: 2px solid #b41212;
}
#search-results .pagination li a {
  font-size: 2rem;
  position: relative;
  z-index: 1;
}
#search-results .pagination .pagination-next a::after {
  content: "↗︎";
  margin: 0rem 0rem 0 -1rem;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
#search-results .pagination .pagination-previous a::before {
  content: "↗︎";
  margin: 0rem 0rem 0 -0.5rem;
  -webkit-transform: rotate(225deg);
          transform: rotate(225deg);
}

.search--banner {
  padding: 22rem 0;
}
.search--banner__results {
  margin: -9rem 0 0 0;
}
@media print, screen and (min-width: 64em) {
  .search--banner__results {
    margin: -6rem 0 0 0;
  }
}
.search--banner__results .search-form {
  position: relative;
}
.search--banner__results .search-form input[type=text] {
  border: none;
  border-bottom: 1.5px solid #FFFFFF;
  box-shadow: none;
  width: 70%;
  display: block;
  margin: 0 auto;
  color: #FFFFFF;
}
.search--banner__results .search-form input[type=text]::-webkit-input-placeholder {
  color: #FFFFFF;
  font-weight: 600;
}
.search--banner__results .search-form input[type=text]:-ms-input-placeholder {
  color: #FFFFFF;
  font-weight: 600;
}
.search--banner__results .search-form input[type=text]::placeholder {
  color: #FFFFFF;
  font-weight: 600;
}
@media print, screen and (min-width: 64em) {
  .search--banner__results .search-form input[type=text] {
    width: 40%;
    margin: 0 0 1rem 19rem;
  }
}
.search--banner__results .search-form input[type=text]:focus {
  background-color: transparent;
}
.search--banner__results .search-form input[type=submit] {
  opacity: 0;
  display: block;
  position: absolute;
  left: 80%;
  top: 4.5rem;
  z-index: 10;
}
@media print, screen and (min-width: 64em) {
  .search--banner__results .search-form input[type=submit] {
    left: 53.5%;
  }
}
.search--banner__results .results-show {
  font-size: 1.4rem;
  font-weight: 600;
  text-align: center;
}
@media print, screen and (min-width: 40em) {
  .search--banner__results .results-show {
    text-align: left;
    margin: 0 0 1rem 12rem;
  }
}
@media print, screen and (min-width: 64em) {
  .search--banner__results .results-show {
    margin: 0 0 1rem 19rem;
  }
}
.search--banner__results .magnifying-glass__container {
  position: absolute;
  left: 80%;
  top: 4.5rem;
  z-index: 1;
}
@media print, screen and (min-width: 64em) {
  .search--banner__results .magnifying-glass__container {
    left: 53.5%;
  }
}
.search--banner__results .magnifying-glass {
  font-size: 2.5em;
  display: inline-block;
  width: 0.4em;
  box-sizing: content-box;
  height: 0.4em;
  border: 0.1em solid #FFFFFF;
  position: relative;
  border-radius: 0.35em;
}
.search--banner__results .magnifying-glass::before {
  content: "";
  display: inline-block;
  position: absolute;
  right: -0.25em;
  bottom: -0.1em;
  border-width: 0;
  background: #FFFFFF;
  width: 0.35em;
  height: 0.08em;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

#search-results .pagination li.pagination-next a,
#search-results .pagination li.pagination-previous a {
  border: 0 !important;
}

#search-results .pagination li.pagination-previous a:before {
  background: url("./images/arrows/arrow--black.svg") center no-repeat;
  -webkit-transform: none;
          transform: none;
  content: "";
  height: 25px;
  width: 25px;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

#search-results .pagination li.pagination-next a:after {
  background: url("./images/arrows/arrow--black.svg") center no-repeat;
  -webkit-transform: none;
          transform: none;
  content: "";
  height: 25px;
  width: 25px;
}

.pagination .ellipsis:after {
  height: 40px;
  width: 40px;
  display: block;
  border: 2px solid #000;
}

.page-not-found {
  margin: 5rem 0;
}
.page-not-found__text {
  color: #FFFFFF;
  font-size: 2rem;
  font-weight: 900;
  text-align: center;
  padding: 31rem 0 0 0;
}
@media print, screen and (min-width: 64em) {
  .page-not-found__text {
    font-size: 2.4rem;
  }
}
.page-not-found__image {
  background-image: url("./images/backgrounds/404.jpg");
  height: 500px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media print, screen and (min-width: 64em) {
  .page-not-found__image {
    margin: 0 6rem;
  }
}
.page-not-found__image button {
  color: #FFFFFF;
  display: block;
  margin: 3rem auto;
}
.page-not-found__image button:hover {
  color: #FFFFFF;
}

.page-content--none {
  display: block;
  margin: 0 auto;
  text-align: center;
}
@media print, screen and (min-width: 64em) {
  .page-content--none {
    height: 30vh;
  }
}

.art-container {
  padding-top: 2rem;
}
@media print, screen and (min-width: 40em) {
  .art-container {
    padding-right: 2rem;
    padding-left: 2rem;
    max-width: 120rem;
    margin-left: auto;
    margin-right: auto;
  }
}
@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .art-container {
    padding-right: 1rem;
    padding-left: 1rem;
  }
}
@media print, screen and (min-width: 40em) {
  .art-container .art-grid {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
  }
}
@media print, screen and (min-width: 40em) {
  .art-container .art-grid .art-content {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: calc(100% - 2rem);
    margin-left: 1rem;
    margin-right: 1rem;
  }
}

#art__competition--masonry {
  -webkit-column-count: 2;
          column-count: 2;
  -webkit-column-gap: 0;
          column-gap: 0;
  margin: 0 1rem;
}
@media print, screen and (min-width: 40em) {
  #art__competition--masonry {
    -webkit-column-count: 3;
            column-count: 3;
  }
}
@media print, screen and (min-width: 64em) {
  #art__competition--masonry {
    -webkit-column-count: 4;
            column-count: 4;
    -webkit-column-gap: 1rem;
            column-gap: 1rem;
  }
}
#art__competition--masonry .art__competition--item {
  position: relative;
  width: 50%;
}
@media print, screen and (min-width: 40em) {
  #art__competition--masonry .art__competition--item {
    width: 33.33%;
  }
}
@media print, screen and (min-width: 64em) {
  #art__competition--masonry .art__competition--item {
    width: 25%;
  }
}
#art__competition--masonry .art__competition--item:hover .item--content {
  opacity: 1;
}
#art__competition--masonry .art__competition--item:hover .art__competition--container img {
  border: 5px solid #b41212;
}
#art__competition--masonry .art__competition--item:focus, #art__competition--masonry .art__competition--item:active {
  outline: none;
}
#art__competition--masonry .art__competition--item .art__competition--container {
  position: relative;
  display: inline-block;
}
#art__competition--masonry .art__competition--item .art__competition--container img {
  border: 5px solid transparent;
  transition: border 0.3s ease;
}
#art__competition--masonry .art__competition--item .item--content {
  opacity: 0;
  position: absolute;
  bottom: 0;
  width: 100%;
  background: #b41212;
  color: #FFFFFF;
  transition: opacity 0.3s ease;
}
#art__competition--masonry .art__competition--item .item--content p {
  margin: -0.5rem 0 0 1rem;
}
#art__competition--masonry .art__competition--item .item--content__thin {
  font-size: 1.8rem;
}
#art__competition--masonry .art__competition--item .item--content__thick {
  font-size: 1.6rem;
  font-weight: bold;
}
#art__competition--masonry .art__competition--item .item--content__then {
  font-size: 1.4rem;
}

.art__modal--reveal {
  display: none;
}
.art__modal--reveal:target {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: #242424;
  z-index: 140;
}
@media print, screen and (min-width: 64em) {
  .art__modal--reveal:target {
    background: rgba(36, 36, 36, 0.8);
  }
}

.art__modal {
  margin: 10rem 2rem 0 2rem;
}
.art__modal:active, .art__modal:focus {
  outline: none;
}
@media print, screen and (min-width: 40em) {
  .art__modal {
    margin: 10rem 20rem 0 20rem;
  }
}
@media print, screen and (min-width: 64em) {
  .art__modal {
    margin: 0 45rem;
  }
}
@media print, screen and (min-width: 64em) {
  .art__modal img {
    max-width: 40vw;
    max-height: 80vh;
  }
}
.art__modal p {
  color: #FFFFFF;
  margin: -0.5rem 0 0 0;
}
.art__modal .modal--content--title {
  font-size: 2.4rem;
  font-weight: bold;
}
.art__modal .art__modal--content .modal--content--thin {
  font-size: 1.6rem;
}
.art__modal .art__modal--content .modal--content--thick {
  font-weight: 600;
  font-size: 1.8rem;
}
.art__modal .art__modal--content .modal--content--then {
  font-size: 1.6rem;
  color: #b41212;
}
@media print, screen and (min-width: 64em) {
  .art__modal .art__modal--content .modal--content--then {
    text-align: right;
  }
}
@media print, screen and (min-width: 64em) {
  .art__modal .art__modal--content .content--container--left {
    float: left;
  }
}
@media print, screen and (min-width: 64em) {
  .art__modal .art__modal--content .content--container--right {
    float: right;
  }
}
.art__modal .close--link {
  position: relative;
  float: right;
}
.art__modal .close-button {
  font-size: 4rem;
  color: #FFFFFF;
  right: 0;
  top: -4rem;
}

@media print, screen and (min-width: 64em) {
  .reveal-overlay {
    background-color: rgba(36, 36, 36, 0.7);
  }
}

.alm-btn-wrap::after {
  content: none !important;
}

button.loader--wheel::before, button.loader--wheel::after {
  content: none;
}

.loader--wheel {
  color: #1B4E74;
  font-size: 5rem;
  text-indent: -9999em;
  overflow: hidden;
  width: 1em;
  height: 1em;
  border-radius: 50%;
  margin: 72px auto;
  position: relative;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  -webkit-animation: load6 1.7s infinite ease, round 1.7s infinite ease;
          animation: load6 1.7s infinite ease, round 1.7s infinite ease;
  display: block;
}

.art__competition--controls p {
  text-align: center;
  font-size: 1.8rem;
}
.art__competition--controls .art__competition--select {
  width: 50%;
  display: block;
  margin: 0 auto 2rem;
  font-size: 1.4rem;
  background: transparent;
  position: relative;
  z-index: 10;
  color: #FFFFFF;
}
.art__competition--controls .art__competition--select option {
  color: #063471;
}
.art__competition--controls .ui-group {
  position: relative;
}
.art__competition--controls .ui-group::before {
  content: "";
  background-image: url("./images/backgrounds/double_chevrons.svg");
  background-repeat: no-repeat;
  height: 5rem;
  width: 5rem;
  position: absolute;
  left: 69%;
  top: 1.5rem;
  z-index: 0;
}

.page-template-surviving-inside-congress {
  background: url("../dist/images/backgrounds/background-surviving.png") top no-repeat;
  background-size: 100% 805px;
}
.page-template-surviving-inside-congress .main-content ul {
  list-style: none !important;
  margin-left: 0;
  padding-left: 0;
}
.page-template-surviving-inside-congress .main-content ul li {
  background: url("../dist/images/cap_dome.svg") no-repeat;
  background-size: 15px;
  background-position: 0 1px;
  padding-left: 25px;
}
.page-template-surviving-inside-congress .footer {
  margin-top: 0;
}
@media screen and (max-width: 640px) {
  .page-template-surviving-inside-congress {
    background-size: 100% 600px;
  }
}
.page-template-surviving-inside-congress .navigation-mobile {
  background: #a52e29;
}
.page-template-surviving-inside-congress .navigation-mobile img {
  -webkit-filter: brightness(0) invert(1);
          filter: brightness(0) invert(1);
}
.page-template-surviving-inside-congress .navigation-mobile .navigation-mobile__hamburger .navigation__icon,
.page-template-surviving-inside-congress .navigation-mobile .navigation-mobile__hamburger .navigation__icon::before,
.page-template-surviving-inside-congress .navigation-mobile .navigation-mobile__hamburger .navigation__icon::after {
  background-color: #FFFFFF;
}
.page-template-surviving-inside-congress .navigation {
  background: #a52e29;
}
.page-template-surviving-inside-congress .navigation .navigation-desktop {
  box-shadow: none;
  background: transparent;
}
.page-template-surviving-inside-congress .navigation .navigation-desktop__list {
  background: none;
}
.page-template-surviving-inside-congress .navigation .navigation__item-img {
  -webkit-filter: brightness(0) invert(1);
          filter: brightness(0) invert(1);
}
.page-template-surviving-inside-congress .navigation--search {
  background: none;
}
.page-template-surviving-inside-congress .navigation-menu .navigation__item .title {
  color: #FFFFFF;
}
.page-template-surviving-inside-congress .navigation-menu img {
  -webkit-filter: brightness(0) invert(1);
          filter: brightness(0) invert(1);
}
.page-template-surviving-inside-congress .navigation-menu .navigation__item:hover {
  padding: 0;
}
.page-template-surviving-inside-congress .navigation .navigation-desktop__list .navigation__link {
  color: #FFFFFF;
}
.page-template-surviving-inside-congress .navigation--search__form .magnifying-glass-container .magnifying-glass::before {
  background: #FFFFFF;
}
.page-template-surviving-inside-congress .navigation--search__form .magnifying-glass-container .magnifying-glass {
  border-color: #FFFFFF;
}
.page-template-surviving-inside-congress .main-grid .main-content ul,
.page-template-surviving-inside-congress .main-grid .main-content ol .main-grid .main-content p {
  margin-left: 0;
  margin-right: 0;
}
.page-template-surviving-inside-congress .main-grid .main-content .entry-content .pf-content > :not(article):not(blockquote):not(figure):not(ul):not(.wp-block-image):not(.wp-block-query) {
  max-width: 1085px;
  width: 100%;
  margin: 0 auto;
}
.page-template-surviving-inside-congress .wp-block-button__link {
  background: #FFFFFF;
  width: 100%;
  font-size: 20px;
  border-radius: 10px;
  font-weight: 500;
  padding: 0;
  height: auto;
  padding: 10px;
}
.page-template-surviving-inside-congress .wp-block-button__link:before, .page-template-surviving-inside-congress .wp-block-button__link:after {
  display: none;
}
.page-template-surviving-inside-congress .wp-block-button__link:hover {
  background: #FFFFFF;
  opacity: 0.5;
}
.page-template-surviving-inside-congress .wp-block-list {
  list-style: disc;
}
.page-template-surviving-inside-congress .wp-block-list li {
  font-size: 20px;
  line-height: 28px;
  margin-bottom: 37px;
}
.page-template-surviving-inside-congress .wp-block-list li:before {
  display: none;
}

.m-surviving__intro {
  max-width: 1080px;
  width: 100%;
  gap: 100px;
  margin: 185px auto auto !important;
}
@media screen and (max-width: 1070px) {
  .m-surviving__intro {
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    background: #a52e29;
    margin: 185px 0 70px calc(50% - 50vw) !important;
    width: 100vw !important;
    padding: 50px;
    gap: 50px;
  }
}
.m-surviving__intro a {
  color: #FFFFFF;
  border-bottom: 1px solid #FFFFFF;
}
.m-surviving__intro p.has-text-align-center {
  max-width: 366px;
  margin: 0 auto;
}
.m-surviving__intro figure {
  margin: -50px;
}
.m-surviving__intro .wp-block-buttons {
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.m-surviving__intro .wp-block-buttons p {
  font-size: 18px;
}
.m-surviving__intro .wp-block-buttons > .wp-block-button {
  display: block;
}
.m-surviving__intro h1 {
  line-height: 46px;
  margin-bottom: 10px;
}
@media screen and (max-width: 1105px) {
  .m-surviving__intro h1 {
    font-size: 40px !important;
    line-height: 50px;
  }
}
.m-surviving__intro p,
.m-surviving__intro h1,
.m-surviving__intro h2 {
  color: #FFFFFF;
}
.m-surviving__intro p {
  margin-bottom: 20px;
  line-height: 32px;
}
@media screen and (min-width: 1070px) {
  .m-surviving__book {
    margin-top: -90px !important;
  }
}
.m-surviving__book .wp-block-columns {
  gap: 100px;
}
@media screen and (max-width: 1070px) {
  .m-surviving__book .wp-block-columns {
    gap: 0;
  }
}
.m-surviving__book h2 {
  max-width: 530px;
  margin: 0 auto 20px;
  font-size: 36px !important;
  line-height: 40px !important;
}
.m-surviving__book .wp-block-button__link {
  background: #9d2c28;
  color: #FFFFFF;
  padding: 10px 20px;
  line-height: auto;
  margin-bottom: 50px;
}
.m-surviving__book .wp-block-button__link:hover {
  background: #9d2c28;
  opacity: 0.5;
  color: #FFFFFF;
}
.m-surviving__book hr {
  margin: 0 0 50px;
}
.m-surviving__full {
  max-width: 100vw !important;
  width: 100vw !important;
  margin: 0 0 0 calc(50% - 50vw) !important;
  padding: 90px;
  background: url("../src/images/backgrounds/background_surviving_blue.jpg") top right no-repeat #f1eee8;
  background-size: cover;
}
@media screen and (max-width: 1070px) {
  .m-surviving__full {
    padding: 50px;
  }
}
.m-surviving__full p {
  color: #FFFFFF;
  font-size: 20px;
  line-height: 32px;
  max-width: 875px;
  margin: 0 auto;
}
.m-surviving__full h2 {
  color: #FFFFFF;
  margin-bottom: 55px;
}
.m-surviving__full .wp-block-group {
  max-width: 1085px;
  margin: 0 auto;
}
.m-surviving__talking {
  gap: 170px;
}
@media screen and (max-width: 1070px) {
  .m-surviving__talking {
    gap: 50px;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}
.m-surviving__talking--left .wp-block-group__inner-container {
  padding: 10px;
  margin-bottom: 30px;
  padding: 20px 25px;
}
.m-surviving__talking--left .wp-block-group__inner-container p {
  line-height: 28px;
  font-size: 20px;
}
.m-surviving__talking--right h2 {
  margin-bottom: 40px;
}
.m-surviving__talking--right figure {
  width: 147px;
  margin: 30px 0;
}
.m-surviving__talking--right figure img {
  margin: 0;
}
.m-surviving__cite {
  position: relative;
  margin-left: 23px;
  font-size: 16px !important;
}
.m-surviving__cite:before {
  content: "—";
  display: block;
  position: absolute;
  top: 0;
  left: -23px;
}
.m-surviving__citation {
  position: relative;
  margin-left: 23px;
  font-size: 16px !important;
}
.m-surviving__citation:before {
  content: "—";
  display: block;
  position: absolute;
  top: 0;
  left: -23px;
}
.m-surviving__quote {
  position: relative;
}
@media screen and (max-width: 1070px) {
  .m-surviving__quote {
    max-width: 90%;
    margin: 0 auto;
    font-size: 20px !important;
  }
}
.m-surviving__quote:before {
  content: "“";
  position: absolute;
  top: -70px;
  left: -50px;
  font-size: 121px;
  color: #bfbfbf;
}
@media screen and (max-width: 1070px) {
  .m-surviving-cover__desktop {
    display: none;
  }
}
@media screen and (min-width: 1070px) {
  .m-surviving-cover__mobile {
    display: none;
  }
}
.m-surviving__form {
  background: red;
  max-width: 100vw !important;
  width: 100vw !important;
  margin: 0 0 0 calc(50% - 50vw) !important;
  padding: 118px 50px;
  background: url("../src/images/backgrounds/background-surviving2.jpg") top right no-repeat #f1eee8;
  background-size: cover;
}
@media screen and (max-width: 1070px) {
  .m-surviving__form {
    background: url("../src/images/backgrounds/background_surviving2-mobile.jpg") top right no-repeat #f1eee8;
    padding: 50px;
    background-size: cover;
  }
}
.m-surviving__form .wp-block-columns {
  max-width: 1085px;
  margin: 0 auto;
}
.m-surviving__form h3 {
  background: #242424;
  color: #FFFFFF;
  display: inline-block;
  padding: 5px 15px;
  font-size: 20px;
  margin-bottom: 20px;
}
.m-surviving__form h2 {
  font-size: 36px;
  margin-bottom: 30px;
}
.m-surviving__form h2.gform_title {
  display: none;
}
.m-surviving__form form label {
  display: none !important;
}
.m-surviving__form form .gform_footer .top_label {
  position: relative;
}
.m-surviving__form form input {
  border: 1px solid #242424;
  margin-bottom: 5px;
}
.m-surviving__form form input:after {
  content: "";
  height: 20px;
  width: 20px;
  background: #000;
  display: block;
  position: relative;
}
.m-surviving__form form input::-webkit-input-placeholder {
  color: #242424;
}
.m-surviving__form form input:-ms-input-placeholder {
  color: #242424;
}
.m-surviving__form form input::placeholder {
  color: #242424;
}
.m-surviving__form form input[type=submit] {
  display: block;
}

.linkedin-feed {
  max-width: 1024px;
  width: 100%;
  margin: 0 auto;
}
.linkedin-feed button::before,
.linkedin-feed .button::before,
.wp-block-button .linkedin-feed .wp-block-button__link::before,
.linkedin-feed .wp-block-button .wp-block-button__link::before,
.linkedin-feed button::after,
.linkedin-feed .button::after,
.wp-block-button .linkedin-feed .wp-block-button__link::after,
.linkedin-feed .wp-block-button .wp-block-button__link::after {
  display: none;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC5jc3MiLCJnbG9iYWwvX3NldHRpbmdzLnNjc3MiLCJnbG9iYWwvX2NvbG9ycy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3VuZGF0aW9uLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2JyZWFrcG9pbnQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcmV2ZWFsLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3ZlbmRvci9ub3JtYWxpemUuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvX2dsb2JhbC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fY2xhc3Nlcy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19ndXR0ZXJzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2dyaWQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fY2VsbC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19sYXlvdXQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fY29sbGFwc2Uuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fcG9zaXRpb24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fZnJhbWUuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYmFzZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19oZWxwZXJzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2FsaWdubWVudC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19wcmludC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX3RleHQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2NoZWNrYm94LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19sYWJlbC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9faGVscC10ZXh0LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19pbnB1dC1ncm91cC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fZmllbGRzZXQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX3NlbGVjdC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fZXJyb3Iuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2NvbG9yLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2FjY29yZGlvbi1tZW51LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYmFkZ2Uuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnJlYWRjcnVtYnMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLWdyb3VwLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2NhbGxvdXQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2FyZC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19jbG9zZS1idXR0b24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVudS1pY29uLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2RyaWxsZG93bi5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcm9wZG93bi5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcm9wZG93bi1tZW51LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Jlc3BvbnNpdmUtZW1iZWQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbGFiZWwuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVkaWEtb2JqZWN0LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb3JiaXQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19wcm9ncmVzcy1iYXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fc2xpZGVyLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3N0aWNreS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zd2l0Y2guc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFibGUuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFicy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190aHVtYm5haWwuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGl0bGUtYmFyLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Rvb2x0aXAuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdG9wLWJhci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2ZsZXguc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fZmxleC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvX2NsYXNzZXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3V0aWwvX2tleWZyYW1lLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fc2xpZGUuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL19mYWRlLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9faGluZ2Uuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL196b29tLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fc3Bpbi5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fYW5pbWF0aW9uLnNjc3MiLCJhcHAuc2NzcyIsImdsb2JhbC9fYWNjZXNzaWJpbGl0eS5zY3NzIiwiZ2xvYmFsL193cC1hZG1pbi5zY3NzIiwiZ2xvYmFsL193cC1vdmVycmlkZXMuc2NzcyIsImdsb2JhbC9fZ3V0ZW5iZXJnLnNjc3MiLCJnbG9iYWwvX3R5cG9ncmFwaHkuc2NzcyIsImdsb2JhbC9fYW5pbWF0aW9ucy5zY3NzIiwiY29tcG9uZW50cy9fYnV0dG9ucy5zY3NzIiwiY29tcG9uZW50cy9fY2FyZHMuc2NzcyIsImNvbXBvbmVudHMvX2ZlYXR1cmVkLWltYWdlLnNjc3MiLCJjb21wb25lbnRzL19kaXZpZGVycy5zY3NzIiwiY29tcG9uZW50cy9fZm9ybXMuc2NzcyIsImNvbXBvbmVudHMvX2xpbmtzLnNjc3MiLCJjb21wb25lbnRzL19uYXZpZ2F0aW9uLnNjc3MiLCJjb21wb25lbnRzL19jb250ZW50LnNjc3MiLCJjb21wb25lbnRzL19mb290ZXIuc2NzcyIsImNvbXBvbmVudHMvX2ZlYXR1cmUtcGFuZWwuc2NzcyIsImNvbXBvbmVudHMvX25ld3MtY2Fyb3VzZWwuc2NzcyIsImNvbXBvbmVudHMvX3NvY2lhbG1lZGlhLnNjc3MiLCJjb21wb25lbnRzL19yZWFkLW1vcmUuc2NzcyIsImNvbXBvbmVudHMvX3doaXRlcGFwZXJzLnNjc3MiLCJjb21wb25lbnRzL19pbmZvcm1hdGlvbmFsLnNjc3MiLCJjb21wb25lbnRzL19maWx0ZXIuc2NzcyIsImNvbXBvbmVudHMvX2FyY2hpdmUuc2NzcyIsImNvbXBvbmVudHMvX2FydC1jb21wLnNjc3MiLCJjb21wb25lbnRzL19zaWdudXAuc2NzcyIsImNvbXBvbmVudHMvX2FjY29yZGlvbi5zY3NzIiwiY29tcG9uZW50cy9fcG9wdXAuc2NzcyIsImNvbXBvbmVudHMvX3F1ZXJ5LWxvb3Auc2NzcyIsImNvbXBvbmVudHMvX2Jsb2NrLWNvdmVyLnNjc3MiLCJjb21wb25lbnRzL19zdGFmZi5zY3NzIiwicGFnZXMvX2Zyb250LnNjc3MiLCJwYWdlcy9fa2l0Y2hlbi1zaW5rLnNjc3MiLCJwYWdlcy9fc2VhcmNoLnNjc3MiLCJwYWdlcy9fNDA0LnNjc3MiLCJwYWdlcy9fYXJ0LnNjc3MiLCJwYWdlcy9fc3Vydml2aW5nLnNjc3MiLCJwYWdlcy9fbGlua2VkaW4tZmVlZC5zY3NzIl0sIm5hbWVzIjpbXSwi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LHlCQUFBO1FBQUEsOEJBQUE7WUFBQSxpQkFBQTtHVHlVTDtDQUNGO0FTN1RHO0VHNkNGLHVCQUFBO01BQUEsbUJBQUE7VUFBQSxlQUFBO0NabVJEOztBU2pUSztFR3lFRixxQkFUTTtDWnFQVDs7QVNyVEs7RUd5RUYsc0JBVE07Q1p5UFQ7O0FTelRLO0VHeUVGLFdBVE07Q1o2UFQ7O0FTN1RLO0VHeUVGLHNCQVRNO0NaaVFUOztBU2pVSztFR3lFRixzQkFUTTtDWnFRVDs7QVNyVUs7RUd5RUYsV0FUTTtDWnlRVDs7QVN6VUs7RUd5RUYsc0JBVE07Q1o2UVQ7O0FTN1VLO0VHeUVGLHNCQVRNO0NaaVJUOztBU2pWSztFR3lFRixXQVRNO0NacVJUOztBU3JWSztFR3lFRixzQkFUTTtDWnlSVDs7QVN6Vks7RUd5RUYsc0JBVE07Q1o2UlQ7O0FTN1ZLO0VHeUVGLFlBVE07Q1ppU1Q7O0FJNVFPO0VLekdGO0lHa0RKLHNCQUFBO1FBQUEsa0JBQUE7WUFBQSxjQUFBO0lBMkNFLFlBVE07R1p1U1A7O0VTdFhDO0lHNkNGLHVCQUFBO1FBQUEsbUJBQUE7WUFBQSxlQUFBO0daNlVDOztFU3BYRztJR2tGRixZQVRNO0daK1NQOztFUy9XRztJR3lFRixxQkFUTTtHWm1UUDs7RVNuWEc7SUd5RUYsc0JBVE07R1p1VFA7O0VTdlhHO0lHeUVGLFdBVE07R1oyVFA7O0VTM1hHO0lHeUVGLHNCQVRNO0daK1RQOztFUy9YRztJR3lFRixzQkFUTTtHWm1VUDs7RVNuWUc7SUd5RUYsV0FUTTtHWnVVUDs7RVN2WUc7SUd5RUYsc0JBVE07R1oyVVA7O0VTM1lHO0lHeUVGLHNCQVRNO0daK1VQOztFUy9ZRztJR3lFRixXQVRNO0dabVZQOztFU25aRztJR3lFRixzQkFUTTtHWnVWUDs7RVN2Wkc7SUd5RUYsc0JBVE07R1oyVlA7O0VTM1pHO0lHeUVGLFlBVE07R1orVlA7Q0FDRjtBSTNVTztFS3pHRjtJR2tESixzQkFBQTtRQUFBLGtCQUFBO1lBQUEsY0FBQTtJQTJDRSxZQVRNO0dacVdQOztFU3BiQztJRzZDRix1QkFBQTtRQUFBLG1CQUFBO1lBQUEsZUFBQTtHWjJZQzs7RVNsYkc7SUdrRkYsWUFUTTtHWjZXUDs7RVM3YUc7SUd5RUYscUJBVE07R1ppWFA7O0VTamJHO0lHeUVGLHNCQVRNO0dacVhQOztFU3JiRztJR3lFRixXQVRNO0daeVhQOztFU3piRztJR3lFRixzQkFUTTtHWjZYUDs7RVM3Ykc7SUd5RUYsc0JBVE07R1ppWVA7O0VTamNHO0lHeUVGLFdBVE07R1pxWVA7O0VTcmNHO0lHeUVGLHNCQVRNO0daeVlQOztFU3pjRztJR3lFRixzQkFUTTtHWjZZUDs7RVM3Y0c7SUd5RUYsV0FUTTtHWmlaUDs7RVNqZEc7SUd5RUYsc0JBVE07R1pxWlA7O0VTcmRHO0lHeUVGLHNCQVRNO0daeVpQOztFU3pkRztJR3lFRixZQVRNO0daNlpQO0NBQ0Y7QVN0ZEM7RUFDRSxZQUFBO0NUd2RIOztBU3BkQztFQUNFLGFBQUE7Q1R1ZEg7O0FTemJDO0VDdkdNLG1CQUFBO0VBQUEsb0JBQUE7Q1ZxaUJQO0FJclpPO0VLekNOO0lDdkdNLG1CQUFBO0lBQUEsb0JBQUE7R1YwaUJMO0NBQ0Y7QVNoY0c7RUd5QkEseUJBVE07RUZsSEosa0JBQUE7RUFBQSxtQkFBQTtDVnVpQkw7QUloYU87RUs5QkE7SUdrQkoseUJBVE07SUZsSEosa0JBQUE7SUFBQSxtQkFBQTtHVjZpQkg7Q0FDRjtBU3hlQztFR3FERSxZQVRNO0NaK2JUO0FTdmVDO0VHaURFLFlBVE07Q1prY1Q7QVNsZUc7RUd5Q0Esa0NBVE07Q1pxY1Q7QVNyZUc7RUd5Q0EsbUNBVE07Q1p3Y1Q7QVN4ZUc7RUd5Q0Esd0JBVE07Q1oyY1Q7QVMzZUc7RUd5Q0EsbUNBVE07Q1o4Y1Q7QVM5ZUc7RUd5Q0EsbUNBVE07Q1ppZFQ7QVNqZkc7RUd5Q0Esd0JBVE07Q1pvZFQ7QVNwZkc7RUd5Q0EsbUNBVE07Q1p1ZFQ7QVN2Zkc7RUd5Q0EsbUNBVE07Q1owZFQ7QVMxZkc7RUd5Q0Esd0JBVE07Q1o2ZFQ7QVM3Zkc7RUd5Q0EsbUNBVE07Q1pnZVQ7QVNoZ0JHO0VHeUNBLG1DQVRNO0NabWVUO0FTbmdCRztFR3lDQSx5QkFUTTtDWnNlVDtBSWpkTztFS2pFTjtJR3FERSxZQVRNO0daMGVQO0VTbGhCRDtJR2lERSxZQVRNO0daNmVQO0VTN2dCQztJR3lDQSxrQ0FUTTtHWmdmUDtFU2hoQkM7SUd5Q0EsbUNBVE07R1ptZlA7RVNuaEJDO0lHeUNBLHdCQVRNO0dac2ZQO0VTdGhCQztJR3lDQSxtQ0FUTTtHWnlmUDtFU3poQkM7SUd5Q0EsbUNBVE07R1o0ZlA7RVM1aEJDO0lHeUNBLHdCQVRNO0daK2ZQO0VTL2hCQztJR3lDQSxtQ0FUTTtHWmtnQlA7RVNsaUJDO0lHeUNBLG1DQVRNO0dacWdCUDtFU3JpQkM7SUd5Q0Esd0JBVE07R1p3Z0JQO0VTeGlCQztJR3lDQSxtQ0FUTTtHWjJnQlA7RVMzaUJDO0lHeUNBLG1DQVRNO0daOGdCUDtFUzlpQkM7SUd5Q0EseUJBVE07R1ppaEJQO0VTN2pCRDtJR3FERSxZQVRNO0dab2hCUDtFUzVqQkQ7SUdpREUsWUFUTTtHWnVoQlA7RVN2akJDO0lHeUNBLGtDQVRNO0daMGhCUDtFUzFqQkM7SUd5Q0EsbUNBVE07R1o2aEJQO0VTN2pCQztJR3lDQSx3QkFUTTtHWmdpQlA7RVNoa0JDO0lHeUNBLG1DQVRNO0dabWlCUDtFU25rQkM7SUd5Q0EsbUNBVE07R1pzaUJQO0VTdGtCQztJR3lDQSx3QkFUTTtHWnlpQlA7RVN6a0JDO0lHeUNBLG1DQVRNO0daNGlCUDtFUzVrQkM7SUd5Q0EsbUNBVE07R1oraUJQO0VTL2tCQztJR3lDQSx3QkFUTTtHWmtqQlA7RVNsbEJDO0lHeUNBLG1DQVRNO0dacWpCUDtFU3JsQkM7SUd5Q0EsbUNBVE07R1p3akJQO0VTeGxCQztJR3lDQSx5QkFUTTtHWjJqQlA7Q0FDRjtBSXZpQk87RUtqRU47SUdxREUsWUFUTTtHWmdrQlA7RVN4bUJEO0lHaURFLFlBVE07R1pta0JQO0VTbm1CQztJR3lDQSxrQ0FUTTtHWnNrQlA7RVN0bUJDO0lHeUNBLG1DQVRNO0daeWtCUDtFU3ptQkM7SUd5Q0Esd0JBVE07R1o0a0JQO0VTNW1CQztJR3lDQSxtQ0FUTTtHWitrQlA7RVMvbUJDO0lHeUNBLG1DQVRNO0daa2xCUDtFU2xuQkM7SUd5Q0Esd0JBVE07R1pxbEJQO0VTcm5CQztJR3lDQSxtQ0FUTTtHWndsQlA7RVN4bkJDO0lHeUNBLG1DQVRNO0daMmxCUDtFUzNuQkM7SUd5Q0Esd0JBVE07R1o4bEJQO0VTOW5CQztJR3lDQSxtQ0FUTTtHWmltQlA7RVNqb0JDO0lHeUNBLG1DQVRNO0dab21CUDtFU3BvQkM7SUd5Q0EseUJBVE07R1p1bUJQO0NBQ0Y7O0FTcmxCRztFQzlJSSxvQkFBQTtFQUFBLG1CQUFBO0NWd3VCUDtBSXhsQk87RUtGSjtJQzlJSSxvQkFBQTtJQUFBLG1CQUFBO0dWNnVCTDtDQUNGO0FTMWxCRztFQ3BKSSxvQkFBQTtFQUFBLG1CQUFBO0NWa3ZCUDtBSWxtQk87RUtJSjtJQ3BKSSxvQkFBQTtJQUFBLG1CQUFBO0dWdXZCTDtDQUNGO0FTL2xCRztFQ3pKSSxvQkFBQTtFQUFBLG1CQUFBO0NWNHZCUDtBSTVtQk87RUtTSjtJQ3pKSSxvQkFBQTtJQUFBLG1CQUFBO0dWaXdCTDtDQUNGOztBYWx3QkM7RURvSUUsWUFUTTtDWjJvQlQ7O0FhdHdCQztFRG9JRSxXQVRNO0NaK29CVDs7QWExd0JDO0VEb0lFLHNCQVRNO0NabXBCVDs7QWE5d0JDO0VEb0lFLFdBVE07Q1p1cEJUOztBYWx4QkM7RURvSUUsV0FUTTtDWjJwQlQ7O0FhdHhCQztFRG9JRSxzQkFUTTtDWitwQlQ7O0FhMXhCQztFRG9JRSxzQkFUTTtDWm1xQlQ7O0FhOXhCQztFRG9JRSxhQVRNO0NadXFCVDs7QUlscEJPO0VTaEpOO0lEb0lFLFlBVE07R1o0cUJQOztFYXZ5QkQ7SURvSUUsV0FUTTtHWmdyQlA7O0VhM3lCRDtJRG9JRSxzQkFUTTtHWm9yQlA7O0VhL3lCRDtJRG9JRSxXQVRNO0dad3JCUDs7RWFuekJEO0lEb0lFLFdBVE07R1o0ckJQOztFYXZ6QkQ7SURvSUUsc0JBVE07R1pnc0JQOztFYTN6QkQ7SURvSUUsc0JBVE07R1pvc0JQOztFYS96QkQ7SURvSUUsYUFUTTtHWndzQlA7Q0FDRjtBSXByQk87RVNoSk47SURvSUUsWUFUTTtHWjZzQlA7O0VheDBCRDtJRG9JRSxXQVRNO0daaXRCUDs7RWE1MEJEO0lEb0lFLHNCQVRNO0dacXRCUDs7RWFoMUJEO0lEb0lFLFdBVE07R1p5dEJQOztFYXAxQkQ7SURvSUUsV0FUTTtHWjZ0QlA7O0VheDFCRDtJRG9JRSxzQkFUTTtHWml1QlA7O0VhNTFCRDtJRG9JRSxzQkFUTTtHWnF1QlA7O0VhaDJCRDtJRG9JRSxhQVRNO0daeXVCUDtDQUNGO0FhcjJCQztFRG9JRSx5QkFUTTtDWjZ1QlQ7O0FheDJCQztFRG9JRSx3QkFUTTtDWml2QlQ7O0FhNTJCQztFRG9JRSxtQ0FUTTtDWnF2QlQ7O0FhaDNCQztFRG9JRSx3QkFUTTtDWnl2QlQ7O0FhcDNCQztFRG9JRSx3QkFUTTtDWjZ2QlQ7O0FheDNCQztFRG9JRSxtQ0FUTTtDWml3QlQ7O0FhNTNCQztFRG9JRSxtQ0FUTTtDWnF3QlQ7O0FhaDRCQztFRG9JRSwwQkFUTTtDWnl3QlQ7O0FJcHZCTztFU2hKTjtJRG9JRSx5QkFUTTtHWjh3QlA7O0VhejRCRDtJRG9JRSx3QkFUTTtHWmt4QlA7O0VhNzRCRDtJRG9JRSxtQ0FUTTtHWnN4QlA7O0VhajVCRDtJRG9JRSx3QkFUTTtHWjB4QlA7O0VhcjVCRDtJRG9JRSx3QkFUTTtHWjh4QlA7O0VhejVCRDtJRG9JRSxtQ0FUTTtHWmt5QlA7O0VhNzVCRDtJRG9JRSxtQ0FUTTtHWnN5QlA7O0VhajZCRDtJRG9JRSwwQkFUTTtHWjB5QlA7O0VhcjZCRDtJRG9JRSx5QkFUTTtHWjh5QlA7O0VhejZCRDtJRG9JRSx3QkFUTTtHWmt6QlA7O0VhNzZCRDtJRG9JRSxtQ0FUTTtHWnN6QlA7O0VhajdCRDtJRG9JRSx3QkFUTTtHWjB6QlA7O0VhcjdCRDtJRG9JRSx3QkFUTTtHWjh6QlA7O0VhejdCRDtJRG9JRSxtQ0FUTTtHWmswQlA7O0VhNzdCRDtJRG9JRSxtQ0FUTTtHWnMwQlA7O0VhajhCRDtJRG9JRSwwQkFUTTtHWjAwQlA7Q0FDRjtBSXR6Qk87RVNoSk47SURvSUUseUJBVE07R1orMEJQOztFYTE4QkQ7SURvSUUsd0JBVE07R1ptMUJQOztFYTk4QkQ7SURvSUUsbUNBVE07R1p1MUJQOztFYWw5QkQ7SURvSUUsd0JBVE07R1oyMUJQOztFYXQ5QkQ7SURvSUUsd0JBVE07R1orMUJQOztFYTE5QkQ7SURvSUUsbUNBVE07R1ptMkJQOztFYTk5QkQ7SURvSUUsbUNBVE07R1p1MkJQOztFYWwrQkQ7SURvSUUsMEJBVE07R1oyMkJQO0NBQ0Y7QVNoeUJLO0VLOU1FLGdCQUFBO0VBQUEsZUFBQTtDZGsvQlA7QWMvK0JLO0VBRUksZ0JBQUE7RUFBQSxlQUFBO0NkaS9CVDtBYzM5Qlc7RUZnSFIscUJBVE07Q1p1M0JUO0FjOTlCVztFRmdIUixzQkFUTTtDWjAzQlQ7QWNqK0JXO0VGZ0hSLFdBVE07Q1o2M0JUO0FjcCtCVztFRmdIUixzQkFUTTtDWmc0QlQ7QWN2K0JXO0VGZ0hSLHNCQVRNO0NabTRCVDtBYzErQlc7RUZnSFIsV0FUTTtDWnM0QlQ7QWM3K0JXO0VGZ0hSLHNCQVRNO0NaeTRCVDtBY2gvQlc7RUZnSFIsc0JBVE07Q1o0NEJUO0Fjbi9CVztFRmdIUixXQVRNO0NaKzRCVDtBY3QvQlc7RUZnSFIsc0JBVE07Q1prNUJUO0Fjei9CVztFRmdIUixzQkFUTTtDWnE1QlQ7QWM1L0JXO0VGZ0hSLFlBVE07Q1p3NUJUO0FJbjRCTztFVTVISTtJRmdIUixxQkFUTTtHWjQ1QlA7RWNuZ0NTO0lGZ0hSLHNCQVRNO0daKzVCUDtFY3RnQ1M7SUZnSFIsV0FUTTtHWms2QlA7RWN6Z0NTO0lGZ0hSLHNCQVRNO0dacTZCUDtFYzVnQ1M7SUZnSFIsc0JBVE07R1p3NkJQO0VjL2dDUztJRmdIUixXQVRNO0daMjZCUDtFY2xoQ1M7SUZnSFIsc0JBVE07R1o4NkJQO0VjcmhDUztJRmdIUixzQkFUTTtHWmk3QlA7RWN4aENTO0lGZ0hSLFdBVE07R1pvN0JQO0VjM2hDUztJRmdIUixzQkFUTTtHWnU3QlA7RWM5aENTO0lGZ0hSLHNCQVRNO0daMDdCUDtFY2ppQ1M7SUZnSFIsWUFUTTtHWjY3QlA7Q0FDRjtBSXo2Qk87RVU1SEk7SUZnSFIscUJBVE07R1prOEJQO0VjemlDUztJRmdIUixzQkFUTTtHWnE4QlA7RWM1aUNTO0lGZ0hSLFdBVE07R1p3OEJQO0VjL2lDUztJRmdIUixzQkFUTTtHWjI4QlA7RWNsakNTO0lGZ0hSLHNCQVRNO0daODhCUDtFY3JqQ1M7SUZnSFIsV0FUTTtHWmk5QlA7RWN4akNTO0lGZ0hSLHNCQVRNO0dabzlCUDtFYzNqQ1M7SUZnSFIsc0JBVE07R1p1OUJQO0VjOWpDUztJRmdIUixXQVRNO0daMDlCUDtFY2prQ1M7SUZnSFIsc0JBVE07R1o2OUJQO0VjcGtDUztJRmdIUixzQkFUTTtHWmcrQlA7RWN2a0NTO0lGZ0hSLFlBVE07R1ptK0JQO0NBQ0Y7O0FTbDVCSztFSzdLRSxnQkFBQTtFQUFBLGVBQUE7Q2Rva0NQO0FjamtDSztFQUVJLGlCQUFBO0VBQUEsZ0JBQUE7Q2Rta0NUOztBSXg5Qk87RUt1REY7SUs5TUUsZ0JBQUE7SUFBQSxlQUFBO0dkcW5DTDtFY2xuQ0c7SUFFSSxnQkFBQTtJQUFBLGVBQUE7R2RvbkNQO0NBQ0Y7QUluK0JPO0VVcklJO0lGeUhSLHFCQVRNO0daNC9CUDtFYzVtQ1M7SUZ5SFIsc0JBVE07R1orL0JQO0VjL21DUztJRnlIUixXQVRNO0daa2dDUDtFY2xuQ1M7SUZ5SFIsc0JBVE07R1pxZ0NQO0Vjcm5DUztJRnlIUixzQkFUTTtHWndnQ1A7RWN4bkNTO0lGeUhSLFdBVE07R1oyZ0NQO0VjM25DUztJRnlIUixzQkFUTTtHWjhnQ1A7RWM5bkNTO0lGeUhSLHNCQVRNO0daaWhDUDtFY2pvQ1M7SUZ5SFIsV0FUTTtHWm9oQ1A7RWNwb0NTO0lGeUhSLHNCQVRNO0dadWhDUDtFY3ZvQ1M7SUZ5SFIsc0JBVE07R1owaENQO0VjMW9DUztJRnlIUixZQVRNO0daNmhDUDtDQUNGO0FJemdDTztFVTVISTtJRmdIUixxQkFUTTtHWmtpQ1A7RWN6b0NTO0lGZ0hSLHNCQVRNO0dacWlDUDtFYzVvQ1M7SUZnSFIsV0FUTTtHWndpQ1A7RWMvb0NTO0lGZ0hSLHNCQVRNO0daMmlDUDtFY2xwQ1M7SUZnSFIsc0JBVE07R1o4aUNQO0VjcnBDUztJRmdIUixXQVRNO0daaWpDUDtFY3hwQ1M7SUZnSFIsc0JBVE07R1pvakNQO0VjM3BDUztJRmdIUixzQkFUTTtHWnVqQ1A7RWM5cENTO0lGZ0hSLFdBVE07R1owakNQO0VjanFDUztJRmdIUixzQkFUTTtHWjZqQ1A7RWNwcUNTO0lGZ0hSLHNCQVRNO0daZ2tDUDtFY3ZxQ1M7SUZnSFIsWUFUTTtHWm1rQ1A7Q0FDRjtBSS9pQ087RVU1SEk7SUZnSFIscUJBVE07R1p3a0NQO0VjL3FDUztJRmdIUixzQkFUTTtHWjJrQ1A7RWNsckNTO0lGZ0hSLFdBVE07R1o4a0NQO0VjcnJDUztJRmdIUixzQkFUTTtHWmlsQ1A7RWN4ckNTO0lGZ0hSLHNCQVRNO0dab2xDUDtFYzNyQ1M7SUZnSFIsV0FUTTtHWnVsQ1A7RWM5ckNTO0lGZ0hSLHNCQVRNO0daMGxDUDtFY2pzQ1M7SUZnSFIsc0JBVE07R1o2bENQO0VjcHNDUztJRmdIUixXQVRNO0daZ21DUDtFY3ZzQ1M7SUZnSFIsc0JBVE07R1ptbUNQO0VjMXNDUztJRmdIUixzQkFUTTtHWnNtQ1A7RWM3c0NTO0lGZ0hSLFlBVE07R1p5bUNQO0NBQ0Y7O0FJcmxDTztFSzZERjtJSzdLRSxnQkFBQTtJQUFBLGVBQUE7R2Qyc0NMO0VjeHNDRztJQUVJLGlCQUFBO0lBQUEsZ0JBQUE7R2Qwc0NQO0NBQ0Y7O0FJaG1DTztFS3VERjtJSzlNRSxnQkFBQTtJQUFBLGVBQUE7R2Q2dkNMO0VjMXZDRztJQUVJLGdCQUFBO0lBQUEsZUFBQTtHZDR2Q1A7Q0FDRjtBSTNtQ087RVVySUk7SUZ5SFIscUJBVE07R1pvb0NQO0VjcHZDUztJRnlIUixzQkFUTTtHWnVvQ1A7RWN2dkNTO0lGeUhSLFdBVE07R1owb0NQO0VjMXZDUztJRnlIUixzQkFUTTtHWjZvQ1A7RWM3dkNTO0lGeUhSLHNCQVRNO0daZ3BDUDtFY2h3Q1M7SUZ5SFIsV0FUTTtHWm1wQ1A7RWNud0NTO0lGeUhSLHNCQVRNO0dac3BDUDtFY3R3Q1M7SUZ5SFIsc0JBVE07R1p5cENQO0VjendDUztJRnlIUixXQVRNO0daNHBDUDtFYzV3Q1M7SUZ5SFIsc0JBVE07R1orcENQO0VjL3dDUztJRnlIUixzQkFUTTtHWmtxQ1A7RWNseENTO0lGeUhSLFlBVE07R1pxcUNQO0NBQ0Y7QUlqcENPO0VVcklJO0lGeUhSLHFCQVRNO0daMHFDUDtFYzF4Q1M7SUZ5SFIsc0JBVE07R1o2cUNQO0VjN3hDUztJRnlIUixXQVRNO0daZ3JDUDtFY2h5Q1M7SUZ5SFIsc0JBVE07R1ptckNQO0VjbnlDUztJRnlIUixzQkFUTTtHWnNyQ1A7RWN0eUNTO0lGeUhSLFdBVE07R1p5ckNQO0VjenlDUztJRnlIUixzQkFUTTtHWjRyQ1A7RWM1eUNTO0lGeUhSLHNCQVRNO0daK3JDUDtFYy95Q1M7SUZ5SFIsV0FUTTtHWmtzQ1A7RWNsekNTO0lGeUhSLHNCQVRNO0dacXNDUDtFY3J6Q1M7SUZ5SFIsc0JBVE07R1p3c0NQO0VjeHpDUztJRnlIUixZQVRNO0daMnNDUDtDQUNGO0FJdnJDTztFVTVISTtJRmdIUixxQkFUTTtHWmd0Q1A7RWN2ekNTO0lGZ0hSLHNCQVRNO0dabXRDUDtFYzF6Q1M7SUZnSFIsV0FUTTtHWnN0Q1A7RWM3ekNTO0lGZ0hSLHNCQVRNO0daeXRDUDtFY2gwQ1M7SUZnSFIsc0JBVE07R1o0dENQO0VjbjBDUztJRmdIUixXQVRNO0daK3RDUDtFY3QwQ1M7SUZnSFIsc0JBVE07R1prdUNQO0VjejBDUztJRmdIUixzQkFUTTtHWnF1Q1A7RWM1MENTO0lGZ0hSLFdBVE07R1p3dUNQO0VjLzBDUztJRmdIUixzQkFUTTtHWjJ1Q1A7RWNsMUNTO0lGZ0hSLHNCQVRNO0daOHVDUDtFY3IxQ1M7SUZnSFIsWUFUTTtHWml2Q1A7Q0FDRjs7QUk3dENPO0VLNkRGO0lLN0tFLGdCQUFBO0lBQUEsZUFBQTtHZG0xQ0w7RWNoMUNHO0lBRUksaUJBQUE7SUFBQSxnQkFBQTtHZGsxQ1A7Q0FDRjs7QVM3cENLO0VNdk1GLGdCQUFBO0NmdzJDSDs7QVM3cENLO0VNM01GLDZCQUFBO0NmNDJDSDs7QVNycUNLO0VNdk1GLDJCQUFBO0NmZzNDSDs7QVNycUNLO0VNM01GLHdDQUFBO0NmbzNDSDs7QVM3cUNLO0VNdk1GLDRCQUFBO0NmdzNDSDs7QVM3cUNLO0VNM01GLHlDQUFBO0NmNDNDSDs7QVNyckNLO0VNdk1GLGlCQUFBO0NmZzRDSDs7QVNyckNLO0VNM01GLDhCQUFBO0NmbzRDSDs7QVM3ckNLO0VNdk1GLDRCQUFBO0NmdzRDSDs7QVM3ckNLO0VNM01GLHlDQUFBO0NmNDRDSDs7QVNyc0NLO0VNdk1GLDRCQUFBO0NmZzVDSDs7QVNyc0NLO0VNM01GLHlDQUFBO0NmbzVDSDs7QVM3c0NLO0VNdk1GLGlCQUFBO0NmdzVDSDs7QVM3c0NLO0VNM01GLDhCQUFBO0NmNDVDSDs7QVNydENLO0VNdk1GLDRCQUFBO0NmZzZDSDs7QVNydENLO0VNM01GLHlDQUFBO0NmbzZDSDs7QVM3dENLO0VNdk1GLDRCQUFBO0NmdzZDSDs7QVM3dENLO0VNM01GLHlDQUFBO0NmNDZDSDs7QVNydUNLO0VNdk1GLGlCQUFBO0NmZzdDSDs7QVNydUNLO0VNM01GLDhCQUFBO0NmbzdDSDs7QVM3dUNLO0VNdk1GLDRCQUFBO0NmdzdDSDs7QVM3dUNLO0VNM01GLHlDQUFBO0NmNDdDSDs7QVNydkNLO0VNdk1GLDRCQUFBO0NmZzhDSDs7QVNydkNLO0VNM01GLHlDQUFBO0NmbzhDSDs7QUl4MENPO0VLMkVGO0lNdk1GLGdCQUFBO0dmeThDRDs7RVM5dkNHO0lNM01GLDZCQUFBO0dmNjhDRDs7RVN0d0NHO0lNdk1GLDJCQUFBO0dmaTlDRDs7RVN0d0NHO0lNM01GLHdDQUFBO0dmcTlDRDs7RVM5d0NHO0lNdk1GLDRCQUFBO0dmeTlDRDs7RVM5d0NHO0lNM01GLHlDQUFBO0dmNjlDRDs7RVN0eENHO0lNdk1GLGlCQUFBO0dmaStDRDs7RVN0eENHO0lNM01GLDhCQUFBO0dmcStDRDs7RVM5eENHO0lNdk1GLDRCQUFBO0dmeStDRDs7RVM5eENHO0lNM01GLHlDQUFBO0dmNitDRDs7RVN0eUNHO0lNdk1GLDRCQUFBO0dmaS9DRDs7RVN0eUNHO0lNM01GLHlDQUFBO0dmcS9DRDs7RVM5eUNHO0lNdk1GLGlCQUFBO0dmeS9DRDs7RVM5eUNHO0lNM01GLDhCQUFBO0dmNi9DRDs7RVN0ekNHO0lNdk1GLDRCQUFBO0dmaWdERDs7RVN0ekNHO0lNM01GLHlDQUFBO0dmcWdERDs7RVM5ekNHO0lNdk1GLDRCQUFBO0dmeWdERDs7RVM5ekNHO0lNM01GLHlDQUFBO0dmNmdERDs7RVN0MENHO0lNdk1GLGlCQUFBO0dmaWhERDs7RVN0MENHO0lNM01GLDhCQUFBO0dmcWhERDs7RVM5MENHO0lNdk1GLDRCQUFBO0dmeWhERDs7RVM5MENHO0lNM01GLHlDQUFBO0dmNmhERDs7RVN0MUNHO0lNdk1GLDRCQUFBO0dmaWlERDs7RVN0MUNHO0lNM01GLHlDQUFBO0dmcWlERDtDQUNGO0FJMTZDTztFSzJFRjtJTXZNRixnQkFBQTtHZjBpREQ7O0VTLzFDRztJTTNNRiw2QkFBQTtHZjhpREQ7O0VTdjJDRztJTXZNRiwyQkFBQTtHZmtqREQ7O0VTdjJDRztJTTNNRix3Q0FBQTtHZnNqREQ7O0VTLzJDRztJTXZNRiw0QkFBQTtHZjBqREQ7O0VTLzJDRztJTTNNRix5Q0FBQTtHZjhqREQ7O0VTdjNDRztJTXZNRixpQkFBQTtHZmtrREQ7O0VTdjNDRztJTTNNRiw4QkFBQTtHZnNrREQ7O0VTLzNDRztJTXZNRiw0QkFBQTtHZjBrREQ7O0VTLzNDRztJTTNNRix5Q0FBQTtHZjhrREQ7O0VTdjRDRztJTXZNRiw0QkFBQTtHZmtsREQ7O0VTdjRDRztJTTNNRix5Q0FBQTtHZnNsREQ7O0VTLzRDRztJTXZNRixpQkFBQTtHZjBsREQ7O0VTLzRDRztJTTNNRiw4QkFBQTtHZjhsREQ7O0VTdjVDRztJTXZNRiw0QkFBQTtHZmttREQ7O0VTdjVDRztJTTNNRix5Q0FBQTtHZnNtREQ7O0VTLzVDRztJTXZNRiw0QkFBQTtHZjBtREQ7O0VTLzVDRztJTTNNRix5Q0FBQTtHZjhtREQ7O0VTdjZDRztJTXZNRixpQkFBQTtHZmtuREQ7O0VTdjZDRztJTTNNRiw4QkFBQTtHZnNuREQ7O0VTLzZDRztJTXZNRiw0QkFBQTtHZjBuREQ7O0VTLzZDRztJTTNNRix5Q0FBQTtHZjhuREQ7O0VTdjdDRztJTXZNRiw0QkFBQTtHZmtvREQ7O0VTdjdDRztJTTNNRix5Q0FBQTtHZnNvREQ7Q0FDRjtBUzE2Q0M7RUUvT0Esc0JBQUE7RUFBQSxxQkFBQTtFQUFBLGNBQUE7RUFDQSxpQ0FBQTtNQUFBLDZCQUFBO1VBQUEseUJBQUE7Q1g0cEREO0FTMTZDRztFRzlJRixhQUFBO0VBQ0EsaUJBQUE7Q1oyakREO0FTMTZDRztFR3JIQSxhQVRNO0NaMmlEVDtBU3o2Q0c7RUd6SEEsYUFUTTtDWjhpRFQ7QVM5NUNLO0VBQ0UseUJBQUE7TUFBQSw4QkFBQTtVQUFBLGlCQUFBO0NUZzZDUDtBSTVoRE87RUsySEY7SUFDRSx5QkFBQTtRQUFBLDhCQUFBO1lBQUEsaUJBQUE7R1RvNkNMO0NBQ0Y7QUlqaURPO0VLMkhGO0lBQ0UseUJBQUE7UUFBQSw4QkFBQTtZQUFBLGlCQUFBO0dUeTZDTDtDQUNGO0FTOTVDSztFRy9MSix1QkFBQTtNQUFBLG1CQUFBO1VBQUEsZUFBQTtDWmdtREQ7QVNsNUNPO0VHbktKLHNCQVRNO0NaaWtEVDtBU3I1Q087RUduS0osdUJBVE07Q1pva0RUO0FTeDVDTztFR25LSixZQVRNO0NadWtEVDtBUzM1Q087RUduS0osdUJBVE07Q1owa0RUO0FTOTVDTztFR25LSix1QkFUTTtDWjZrRFQ7QVNqNkNPO0VHbktKLFlBVE07Q1pnbERUO0FTcDZDTztFR25LSix1QkFUTTtDWm1sRFQ7QVN2NkNPO0VHbktKLHVCQVRNO0Nac2xEVDtBUzE2Q087RUduS0osWUFUTTtDWnlsRFQ7QVM3NkNPO0VHbktKLHVCQVRNO0NaNGxEVDtBU2g3Q087RUduS0osdUJBVE07Q1orbERUO0FTbjdDTztFR25LSixhQVRNO0Naa21EVDtBSTdrRE87RUttSUE7SUcxTE4sc0JBQUE7UUFBQSxrQkFBQTtZQUFBLGNBQUE7SUEyQ0UsYUFUTTtHWnVtRFA7RVMxOENHO0lHL0xKLHVCQUFBO1FBQUEsbUJBQUE7WUFBQSxlQUFBO0daNG9EQztFU3Y4Q0s7SUcxSkosYUFUTTtHWjZtRFA7RVNqOENLO0lHbktKLHNCQVRNO0daZ25EUDtFU3A4Q0s7SUduS0osdUJBVE07R1ptbkRQO0VTdjhDSztJR25LSixZQVRNO0dac25EUDtFUzE4Q0s7SUduS0osdUJBVE07R1p5bkRQO0VTNzhDSztJR25LSix1QkFUTTtHWjRuRFA7RVNoOUNLO0lHbktKLFlBVE07R1orbkRQO0VTbjlDSztJR25LSix1QkFUTTtHWmtvRFA7RVN0OUNLO0lHbktKLHVCQVRNO0dacW9EUDtFU3o5Q0s7SUduS0osWUFUTTtHWndvRFA7RVM1OUNLO0lHbktKLHVCQVRNO0daMm9EUDtFUy85Q0s7SUduS0osdUJBVE07R1o4b0RQO0VTbCtDSztJR25LSixhQVRNO0daaXBEUDtDQUNGO0FJN25ETztFS21JQTtJRzFMTixzQkFBQTtRQUFBLGtCQUFBO1lBQUEsY0FBQTtJQTJDRSxhQVRNO0dadXBEUDtFUzEvQ0c7SUcvTEosdUJBQUE7UUFBQSxtQkFBQTtZQUFBLGVBQUE7R1o0ckRDO0VTdi9DSztJRzFKSixhQVRNO0daNnBEUDtFU2ovQ0s7SUduS0osc0JBVE07R1pncURQO0VTcC9DSztJR25LSix1QkFUTTtHWm1xRFA7RVN2L0NLO0lHbktKLFlBVE07R1pzcURQO0VTMS9DSztJR25LSix1QkFUTTtHWnlxRFA7RVM3L0NLO0lHbktKLHVCQVRNO0daNHFEUDtFU2hnREs7SUduS0osWUFUTTtHWitxRFA7RVNuZ0RLO0lHbktKLHVCQVRNO0daa3JEUDtFU3RnREs7SUduS0osdUJBVE07R1pxckRQO0VTemdESztJR25LSixZQVRNO0dad3JEUDtFUzVnREs7SUduS0osdUJBVE07R1oyckRQO0VTL2dESztJR25LSix1QkFUTTtHWjhyRFA7RVNsaERLO0lHbktKLGFBVE07R1ppc0RQO0NBQ0Y7O0FTMWdESztFQ25URSxrQkFBQTtFQUFBLHFCQUFBO0NWazBEUDtBSWxyRE87RUttS0Y7SUNuVEUsa0JBQUE7SUFBQSxxQkFBQTtHVnUwREw7Q0FDRjtBU2hoREs7RUN4VEUsa0JBQUE7RUFBQSxxQkFBQTtDVjQwRFA7QUk1ckRPO0VLd0tGO0lDeFRFLGtCQUFBO0lBQUEscUJBQUE7R1ZpMURMO0NBQ0Y7O0FTM3VEQztFQ3ZHTSxrQkFBQTtFQUFBLHFCQUFBO0NWdTFEUDtBSXZzRE87RUt6Q047SUN2R00sa0JBQUE7SUFBQSxxQkFBQTtHVjQxREw7Q0FDRjtBU2x2REc7RUd5QkEsMEJBVE07RUZsSEosaUJBQUE7RUFBQSxvQkFBQTtDVnkxREw7QUlsdERPO0VLOUJBO0lHa0JKLDBCQVRNO0lGbEhKLGlCQUFBO0lBQUEsb0JBQUE7R1YrMURIO0NBQ0Y7QVMxeERDO0VHcURFLGFBVE07Q1ppdkRUO0FTenhEQztFR2lERSxhQVRNO0Nab3ZEVDtBU3B4REc7RUd5Q0EsbUNBVE07Q1p1dkRUO0FTdnhERztFR3lDQSxvQ0FUTTtDWjB2RFQ7QVMxeERHO0VHeUNBLHlCQVRNO0NaNnZEVDtBUzd4REc7RUd5Q0Esb0NBVE07Q1pnd0RUO0FTaHlERztFR3lDQSxvQ0FUTTtDWm13RFQ7QVNueURHO0VHeUNBLHlCQVRNO0Nac3dEVDtBU3R5REc7RUd5Q0Esb0NBVE07Q1p5d0RUO0FTenlERztFR3lDQSxvQ0FUTTtDWjR3RFQ7QVM1eURHO0VHeUNBLHlCQVRNO0NaK3dEVDtBUy95REc7RUd5Q0Esb0NBVE07Q1preERUO0FTbHpERztFR3lDQSxvQ0FUTTtDWnF4RFQ7QVNyekRHO0VHeUNBLDBCQVRNO0Nad3hEVDtBSW53RE87RUtqRU47SUdxREUsYUFUTTtHWjR4RFA7RVNwMEREO0lHaURFLGFBVE07R1oreERQO0VTL3pEQztJR3lDQSxtQ0FUTTtHWmt5RFA7RVNsMERDO0lHeUNBLG9DQVRNO0dacXlEUDtFU3IwREM7SUd5Q0EseUJBVE07R1p3eURQO0VTeDBEQztJR3lDQSxvQ0FUTTtHWjJ5RFA7RVMzMERDO0lHeUNBLG9DQVRNO0daOHlEUDtFUzkwREM7SUd5Q0EseUJBVE07R1ppekRQO0VTajFEQztJR3lDQSxvQ0FUTTtHWm96RFA7RVNwMURDO0lHeUNBLG9DQVRNO0dadXpEUDtFU3YxREM7SUd5Q0EseUJBVE07R1owekRQO0VTMTFEQztJR3lDQSxvQ0FUTTtHWjZ6RFA7RVM3MURDO0lHeUNBLG9DQVRNO0daZzBEUDtFU2gyREM7SUd5Q0EsMEJBVE07R1ptMERQO0VTLzJERDtJR3FERSxhQVRNO0daczBEUDtFUzkyREQ7SUdpREUsYUFUTTtHWnkwRFA7RVN6MkRDO0lHeUNBLG1DQVRNO0daNDBEUDtFUzUyREM7SUd5Q0Esb0NBVE07R1orMERQO0VTLzJEQztJR3lDQSx5QkFUTTtHWmsxRFA7RVNsM0RDO0lHeUNBLG9DQVRNO0dacTFEUDtFU3IzREM7SUd5Q0Esb0NBVE07R1p3MURQO0VTeDNEQztJR3lDQSx5QkFUTTtHWjIxRFA7RVMzM0RDO0lHeUNBLG9DQVRNO0daODFEUDtFUzkzREM7SUd5Q0Esb0NBVE07R1ppMkRQO0VTajREQztJR3lDQSx5QkFUTTtHWm8yRFA7RVNwNERDO0lHeUNBLG9DQVRNO0dadTJEUDtFU3Y0REM7SUd5Q0Esb0NBVE07R1owMkRQO0VTMTREQztJR3lDQSwwQkFUTTtHWjYyRFA7Q0FDRjtBSXoxRE87RUtqRU47SUdxREUsYUFUTTtHWmszRFA7RVMxNUREO0lHaURFLGFBVE07R1pxM0RQO0VTcjVEQztJR3lDQSxtQ0FUTTtHWnczRFA7RVN4NURDO0lHeUNBLG9DQVRNO0daMjNEUDtFUzM1REM7SUd5Q0EseUJBVE07R1o4M0RQO0VTOTVEQztJR3lDQSxvQ0FUTTtHWmk0RFA7RVNqNkRDO0lHeUNBLG9DQVRNO0dabzREUDtFU3A2REM7SUd5Q0EseUJBVE07R1p1NERQO0VTdjZEQztJR3lDQSxvQ0FUTTtHWjA0RFA7RVMxNkRDO0lHeUNBLG9DQVRNO0daNjREUDtFUzc2REM7SUd5Q0EseUJBVE07R1pnNURQO0VTaDdEQztJR3lDQSxvQ0FUTTtHWm01RFA7RVNuN0RDO0lHeUNBLG9DQVRNO0daczVEUDtFU3Q3REM7SUd5Q0EsMEJBVE07R1p5NURQO0NBQ0Y7O0FTL3NEQztFT3RWRSxpQkFBQTtFQUNBLG1CQUFBO0VBQ0EsMEJBQUE7TUFBQSxzQkFBQTtVQUFBLGtCQUFBO0VBQ0Es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VjJyRUw7Q0FDRjtBU2psRUc7RUd5QkEsMEJBVE07RUZsSEosaUJBQUE7RUFBQSxvQkFBQTtDVndyRUw7QUlqakVPO0VLOUJBO0lHa0JKLDBCQVRNO0lGbEhKLGlCQUFBO0lBQUEsb0JBQUE7R1Y4ckVIO0NBQ0Y7QVN6bkVDO0VHcURFLGFBVE07Q1pnbEVUO0FTeG5FQztFR2lERSxhQVRNO0NabWxFVDtBU25uRUc7RUd5Q0EsbUNBVE07Q1pzbEVUO0FTdG5FRztFR3lDQSxvQ0FUTTtDWnlsRVQ7QVN6bkVHO0VHeUNBLHlCQVRNO0NaNGxFVDtBUzVuRUc7RUd5Q0Esb0NBVE07Q1orbEVUO0FTL25FRztFR3lDQSxvQ0FUTTtDWmttRVQ7QVNsb0VHO0VHeUNBLHlCQVRNO0NacW1FVDtBU3JvRUc7RUd5Q0Esb0NBVE07Q1p3bUVUO0FTeG9FRztFR3lDQSxvQ0FUTTtDWjJtRVQ7QVMzb0VHO0VHeUNBLHlCQVRNO0NaOG1FVDtBUzlvRUc7RUd5Q0Esb0NBVE07Q1ppbkVUO0FTanBFRztFR3lDQSxvQ0FUTTtDWm9uRVQ7QVNwcEVHO0VHeUNBLDBCQVRNO0NadW5FVDtBSWxtRU87RUtqRU47SUdxREUsYUFUTTtHWjJuRVA7RVNucUVEO0lHaURFLGFBVE07R1o4bkVQO0VTOXBFQztJR3lDQSxtQ0FUTTtHWmlvRVA7RVNqcUVDO0lHeUNBLG9DQVRNO0dab29FUDtFU3BxRUM7SUd5Q0EseUJBVE07R1p1b0VQO0VTdnFFQztJR3lDQSxvQ0FUTTtHWjBvRVA7RVMxcUVDO0lHeUNBLG9DQVRNO0daNm9FUDtFUzdxRUM7SUd5Q0EseUJBVE07R1pncEVQO0VTaHJFQztJR3lDQSxvQ0FUTTtHWm1wRVA7RVNuckVDO0lHeUNBLG9DQVRNO0dac3BFUDtFU3RyRUM7SUd5Q0EseUJBVE07R1p5cEVQO0VTenJFQztJR3lDQSxvQ0FUTTtHWjRwRVA7RVM1ckVDO0lHeUNBLG9DQVRNO0daK3BFUDtFUy9yRUM7SUd5Q0EsMEJBVE07R1prcUVQO0VTOXNFRDtJR3FERSxhQVRNO0dacXFFUDtFUzdzRUQ7SUdpREUsYUFUTTtHWndxRVA7RVN4c0VDO0lHeUNBLG1DQVRNO0daMnFFUDtFUzNzRUM7SUd5Q0Esb0NBVE07R1o4cUVQO0VTOXNFQztJR3lDQSx5QkFUTTtHWmlyRVA7RVNqdEVDO0lHeUNBLG9DQVRNO0dab3JFUDtFU3B0RUM7SUd5Q0Esb0NBVE07R1p1ckVQO0VTdnRFQztJR3lDQSx5QkFUTTtHWjByRVA7RVMxdEVDO0lHeUNBLG9DQVRNO0daNnJFUDtFUzd0RUM7SUd5Q0Esb0NBVE07R1pnc0VQO0VTaHVFQztJR3lDQSx5QkFUTTtHWm1zRVA7RVNudUVDO0lHeUNBLG9DQVRNO0dac3NFUDtFU3R1RUM7SUd5Q0Esb0NBVE07R1p5c0VQO0VTenVFQztJR3lDQSwwQkFUTTtHWjRzRVA7Q0FDRjtBSXhyRU87RUtqRU47SUdxREUsYUFUTTtHWml0RVA7RVN6dkVEO0lHaURFLGFBVE07R1pvdEVQO0VTcHZFQztJR3lDQSxtQ0FUTTtHWnV0RVA7RVN2dkVDO0lHeUNBLG9DQVRNO0daMHRFUDtFUzF2RUM7SUd5Q0EseUJBVE07R1o2dEVQO0VTN3ZFQztJR3lDQSxvQ0FUTTtHWmd1RVA7RVNod0VDO0lHeUNBLG9DQVRNO0dabXVFUDtFU253RUM7SUd5Q0EseUJBVE07R1pzdUVQO0VTdHdFQztJR3lDQSxvQ0FUTTtHWnl1RVA7RVN6d0VDO0lHeUNBLG9DQVRNO0daNHVFUDtFUzV3RUM7SUd5Q0EseUJBVE07R1ordUVQO0VTL3dFQztJR3lDQSxvQ0FUTTtHWmt2RVA7RVNseEVDO0lHeUNBLG9DQVRNO0dacXZFUDtFU3J4RUM7SUd5Q0EsMEJBVE07R1p3dkVQO0NBQ0Y7O0FTcitERztFTzVZSSwyQkFBQTtDaEJxM0VQO0FJeHVFTztFSytQSjtJTzVZSSwyQkFBQTtHaEJ5M0VMO0NBQ0Y7QUk3dUVPO0VLK1BKO0lPNVlJLDJCQUFBO0doQjgzRUw7Q0FDRjs7QUlsdkVPO0VLbVFGO0lPaFpFLDJCQUFBO0doQm80RUw7Q0FDRjtBSXh2RU87RUttUUY7SU9oWkUsMkJBQUE7R2hCeTRFTDtDQUNGO0FpQjFzRUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFtQkUsVUFBQTtFQUNBLFdBQUE7Q2pCNHNFSDs7QWlCeHNFQztFQUNFLG9CaEIxQ3NCO0VnQjRDdEIsbUJBQUE7RUFDQSxpQmhCMUVtQjtFZ0IyRW5CLG1DaEI3Q3VCO0NEdXZFMUI7O0FpQnRzRUM7O0VBRUUsbUJBQUE7RUFDQSxxQkFBQTtDakJ5c0VIOztBaUJyc0VDOztFQUVFLGlCaEJqSmlCO0VnQmtKakIscUJBQUE7Q2pCd3NFSDs7QWlCcHNFQztFQUNFLGVoQm5FYztFZ0JvRWQscUJBQUE7Q2pCdXNFSDs7QWlCbnNFQzs7Ozs7O0VBTUUsdUNoQjdNZTtFZ0I4TWYsbUJoQnJGZ0I7RWdCc0ZoQixvQmhCM0ptQjtFZ0I0Sm5CLGVoQnJGVztFZ0JzRlgsbUNoQm5Gb0I7Q0R5eEV2QjtBaUJwc0VHOzs7Ozs7RUFDRSxlQUFBO0VBQ0EsZWYxUk87Q0ZxK0VaOztBaUJsc0VPO0VBSUksa0JBRGlCO0VBYWpCLGlCQUFBO0VBUUEsY0FBQTtFQU9BLHNCQUFBO0NqQjBxRVg7O0FpQnpzRU87RUFJSSxrQkFEaUI7RUFhakIsaUJBQUE7RUFRQSxjQUFBO0VBT0Esc0JBQUE7Q2pCaXJFWDs7QWlCaHRFTztFQUlJLGtCQURpQjtFQWFqQixpQkFBQTtFQVFBLGNBQUE7RUFPQSxzQkFBQTtDakJ3ckVYOztBaUJ2dEVPO0VBSUksZ0JBRGlCO0VBYWpCLGlCQUFBO0VBUUEsY0FBQTtFQU9BLHNCQUFBO0NqQityRVg7O0FpQjl0RU87RUFJSSxnQkFEaUI7RUFhakIsaUJBQUE7RUFRQSxjQUFBO0VBT0Esc0JBQUE7Q2pCc3NFWDs7QWlCcnVFTztFQUlJLGtCQURpQjtFQWFqQixpQkFBQTtFQVFBLGNBQUE7RUFPQSxzQkFBQTtDakI2c0VYOztBSTMyRU87RWErSEE7SUFJSSxnQkFEaUI7R2pCOHVFMUI7O0VpQmp2RUs7SUFJSSxnQkFEaUI7R2pCa3ZFMUI7O0VpQnJ2RUs7SUFJSSxrQkFEaUI7R2pCc3ZFMUI7O0VpQnp2RUs7SUFJSSxrQkFEaUI7R2pCMHZFMUI7O0VpQjd2RUs7SUFJSSxnQkFEaUI7R2pCOHZFMUI7O0VpQmp3RUs7SUFJSSxrQkFEaUI7R2pCa3dFMUI7Q0FDRjtBaUIvdEVDO0VBQ0UscUJBQUE7RUFDQSxlZmhVYTtFZWlVYixzQmhCOUhxQjtFZ0JnSXJCLGdCQUFBO0NqQmd1RUg7QWlCOXRFRztFQUVFLGVoQnJJZTtDRG8yRXBCO0FpQnp0RUc7RUFDRSxVQUFBO0NqQjJ0RUw7O0FpQnR0RUM7RUFDRSxZQUFBO0VBRUEsa0JoQmhQVztFZ0JpUFgsVUFBQTtFQUNBLGtCaEJqSlE7RWdCbUpSLGNBQUE7RUFDQSxnQkFBQTtFQUNBLGlDaEJ0SlE7RWdCdUpSLGVBQUE7Q2pCdXRFSDs7QWlCbnRFQzs7O0VBR0Usb0JoQjFLc0I7RWdCMkt0Qiw2QmhCM0prQjtFZ0I0SmxCLGlCaEJ6TW1CO0NEKzVFdEI7O0FpQmx0RUM7RUFDRSxtQkFBQTtDakJxdEVIOztBaUJqdEVDO0VBQ0UscUJoQm5NZTtFZ0JvTWYsc0JoQnJNYztDRHk1RWpCOztBaUJodEVDO0VBQ0UscUJoQnpNZTtDRDQ1RWxCOztBaUI5c0VHO0VBQ0UscUJoQmpMb0I7RWdCa0xwQixpQkFBQTtDakJpdEVMOztBaUI1c0VDO0VBQ0Usb0JoQnZMcUI7Q0RzNEV4QjtBaUI3c0VHO0VBQ0Usc0JoQnhMd0I7RWdCeUx4QixpQmhCblNlO0NEay9FcEI7O0FpQjFzRUM7RUFDRSxpQkFBQTtFQUNBLDZCaEJyUGlCO0VnQnNQakIsK0JBcE9nQjtDakJpN0VuQjtBaUIzc0VHO0VBQ0UsaUJoQnJQaUI7RWdCc1BqQixlZm5aVztDRmdtRmhCOztBaUIvckVDO0VBQ0Usa0NoQjlNYTtFZ0IrTWIsYUFBQTtFQUNBLHNCQUFBO0NqQmtzRUg7O0FpQjlyRUM7RUFDRSxVQUFBO0NqQmlzRUg7O0FpQnRyRUM7RUFDRSxVQUFBO0VBQ0EseUJoQnBPZ0I7RWdCc09oQiwwQmZwY1M7RWVzY1QsNkRoQnZRb0I7RWdCd1FwQixlZjFjSTtDRmlvRlA7O0FrQnJnRkM7RUFDRSxtQmpCZ0htQjtFaUIvR25CLHNCakJnSHNCO0VpQjlHdEIsb0JqQkptQjtFaUJLbkIsaUJqQnlHbUI7RWlCeEduQixlaEJoSVM7Q0Z1b0ZaOztBa0JuZ0ZDO0VBQ0Usa0JqQmlHYTtFaUJoR2IsaUJqQmlHYztDRHE2RWpCOztBa0JsZ0ZDO0VBQ0Usa0JqQmtHYTtFaUJqR2IsZUFBQTtDbEJxZ0ZIO0FrQm5nRkc7RUFDRSxrQkFBQTtDbEJxZ0ZMOztBa0IvL0VHO0VBQ0UsZUFBQTtFQUNBLGlCQUFBO0NsQmtnRkw7O0FrQjkvRUM7RUFqRkEsZUFBQTtFQUNBLGVoQjNFVztFZ0I0RVgsa0JqQjJGZTtDRHcvRWhCO0FrQmpsRkM7RUFDRSxZakIwRmtCO0NEeS9FckI7O0FrQm5nRkM7RUF6RUEsMEJqQnVIWTtFaUJ0SFosMEJoQnRGVztFZ0J3RlgsNkRqQnVHc0I7RWlCdEd0QixvQmpCZ0NxQjtFaUIvQnJCLGVoQjdGTTtFZ0JtR04sZ0JBQUE7RUFDQSxnQkFBQTtFQUNBLHNCQUFBO0VBRUEsOEJqQnlHYTtDRGcrRWQ7O0FrQjFnRkM7RUE5RUEsMEJqQnVIWTtFaUJ0SFosMEJoQnRGVztFZ0J3RlgsNkRqQnVHc0I7RWlCdEd0QixvQmpCZ0NxQjtFaUIvQnJCLGVoQjdGTTtFZ0I2R04sZUFBQTtFQUNBLGVBQUE7RUFDQSxpQkFBQTtFQUVBLGNBNUNtQjtFQTZDbkIsc0JBekN5QjtDbEJvbkYxQjs7QW1CeHJGUztFQUNFLGlCQVJVO0NuQm1zRnJCOztBbUI1ckZTO0VBQ0Usa0JBUlU7Q25CdXNGckI7O0FtQmhzRlM7RUFDRSxtQkFSVTtDbkIyc0ZyQjs7QW1CcHNGUztFQUNFLG9CQVJVO0NuQitzRnJCOztBSXRpRk87RWV2S0U7SUFDRSxpQkFIVTtHbkJvdEZuQjs7RW1CbHRGTztJQUNFLGtCQUhVO0duQnd0Rm5COztFbUJ0dEZPO0lBQ0UsbUJBSFU7R25CNHRGbkI7O0VtQjF0Rk87SUFDRSxvQkFIVTtHbkJndUZuQjtDQUNGO0FJeGpGTztFZXZLRTtJQUNFLGlCQUhVO0duQnF1Rm5COztFbUJudUZPO0lBQ0Usa0JBSFU7R25CeXVGbkI7O0VtQnZ1Rk87SUFDRSxtQkFIVTtHbkI2dUZuQjs7RW1CM3VGTztJQUNFLG9C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QmxYTztDRmdnR3BCO0FxQi9vRlc7RUFDRSwwQm5CbFhPO0NGbWdHcEI7QXFCbHBGVztFQUNFLDBCbkJsWE87Q0ZzZ0dwQjtBcUJycEZXO0VBQ0UsMEJuQmxYTztDRnlnR3BCO0FxQnhwRlc7RUFDRSwwQm5CbFhPO0NGNGdHcEI7QXFCbHBGRztFQUNFLFlBQUE7RUFDQSxZQUFBO0VBQ0EsZUFBQTtDckJvcEZMOztBcUIvb0ZHO0VBRUUsc0JBQUE7Q3JCaXBGTDs7QXNCNzdGQzs7RUFyQ0EsZUFBQTtFQUNBLHVCQUFBO0VBQ0EsWUFBQTtFQUNBLGVBTFM7RUFNVCxtQkFBQTtFQUNBLGdCckJzWWM7RXFCcFlkLDBCckI4V2E7RXFCN1diLGlCckJ1Q2M7RXFCdENkLDhCckIwV2lCO0VxQnpXakIscURyQmtZYTtFcUJoWWIscUJyQjRYa0I7RXFCM1hsQixrQnJCb1dnQjtFcUJuV2hCLGlCckJ1Qm1CO0VxQnRCbkIsaUJyQnlCa0I7RXFCeEJsQixlcEI3Rk07RW9CZ0dKLDREckIyWGU7RXFCdFdmLHlCQUFBO1VBQUEsaUJBQUE7Q3RCKzhGSDtBc0JoK0ZDOztFQUNFLGNBQUE7RUFDQSwwQnJCNlZpQjtFcUI1VmpCLDBCcEJ2R0k7RW9Cd0dKLGlCckI0VmlCO0VxQnpWZiw0RHJCZ1hhO0NEaW5GbEI7O0FzQm45RkM7RUFDRSxnQkFBQTtDdEJzOUZIO0FzQnA5Rkc7RUFDRSxhQUFBO0N0QnM5Rkw7O0FzQi84Rkc7OztFQUVFLDBCcEJ0SUU7RW9CdUlGLG9CckJtVmtCO0NEZ29GdkI7O0FzQjk4RkM7O0VBRUUseUJBQUE7VUFBQSxpQkFBQTtFQUNBLGlCckJuQlk7Q0RvK0ZmOztBc0I3OEZDO0VBQ0UsdUJBQUE7Q3RCZzlGSDs7QXNCLzdGQztFQUNFLGVwQnRLSTtDRndtR1A7O0FzQm44RkM7RUFDRSxlcEJ0S0k7Q0Z3bUdQOztBc0JuOEZDO0VBQ0UsZXBCdEtJO0NGd21HUDs7QXVCem1HQzs7O0VBR0UsbUJBQUE7Q3ZCNG1HSDs7QXVCeG1HQzs7RUFFRSxzQkFBQTtFQUNBLHlCQUFBO0VBRUEsb0JBQUE7RUFD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QTtFQUNBLGtCQUFBO0M1QnV0R0g7O0E2QjV2R0M7RUFDRSxzQjVCa051QjtFNEJqTnZCLDBCQUFBO0M3Qit2R0g7QTZCN3ZHRztFQUNFLGU1QjhNcUI7Q0RpakcxQjtBNkJod0dHO0VBQ0UsZTVCOE1xQjtDRGlqRzFCO0E2Qmh3R0c7RUFDRSxlNUI4TXFCO0NEaWpHMUI7O0E2QnJ1R0c7RUFDRSxlNUJvTHFCO0NEb2pHMUI7O0E2Qm51R0M7RUF6QkEsY0FBQTtFQUNBLG9CQUFBO0VBQ0Esc0I1QnlaYTtFNEJ2WmIsa0I1QnNNc0I7RTRCck10QixpQjVCK0RtQjtFNEI5RG5CLGU1Qm1Na0I7Q0Q0akduQjtBNkJ6dUdHO0VBQ0UsZUFBQTtDN0IydUdMOztBOEI1cUdDO0VBeEZBLGVBQUE7RUFDQSxvQjVCbkRNO0U0Qm9ETixzQkFBQTtDOUJ3d0dEO0E4QnJ3R0c7RUFDRSxvQkFBQTtDOUJ1d0dMOztBOEJod0dDO0VBQ0UsdUJBQUE7QzlCbXdHSDtBOEJod0dDO0VBQ0UsdUJBQUE7QzlCa3dHSDs7QThCcHJHQztFQWxFQSxtQkFBQTtFQUNBLGVBQUE7RUFDQSxzQjdCaUx1QjtFNkIvS3ZCLDBCN0JpTHlCO0U2QmhMekIsaUJBQUE7RUFFQSxrQjdCeUswQjtFNkJ4SzFCLGVBQUE7RUFDQSxlQ2VrQjtDL0J5dUduQjtBOEJ0dkdDO0VBQ0UsaUM3QnlLdUI7RTZCeEt2Qix1QkFBQTtDOUJ3dkdIO0E4QnJ2R0M7RUFFRSwwQjVCaEdTO0NGczFHWjtBOEJsdkdHO0VBQ0UsbUJBQUE7RUFDQSxTQUFBO0VBQ0EsWUFBQTtFQUNBLG9CQUFBO0VBQ0EsYUFuR21CO0M5QnUxR3hCO0E4Qmp2R0c7RUFDRSxhQW5Hb0I7QzlCczFHekI7O0E4QjVzR0M7RUEzQkEsY0FBQTtFQUNBLGM3QjJJMEI7RTZCekkxQiwwQjdCdUl5QjtFNkJ0SXpCLGlCQUFBO0VBQ0EsMEI1QmhJTTtFNEJrSU4sZTVCdEhpQjtDRisxR2xCO0E4QnZ1R0M7RUFDRSxpQzdCZ0l1QjtDRHltRzFCOztBZ0N0eUdHO0VBTUUsWUFBQTtDaENveUdMO0Fn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QjtFK0M5YXhCLHNCL0MrYTJCO0UrQzlhM0IsbUJBQUE7Q2hEeTZKRDtBUXQySkM7RUFDRSxXQUFBO0NSdzJKSDtBZ0QxNkpDO0VBQ0UsYy9Dd2FvQjtFK0N2YXBCLGUvQ3Vhb0I7RStDdGFwQixlL0N1YWtCO0UrQ3JhbEIsbUJBQUE7RUFDQSwwQjlDbklTO0NGOGlLWjtBZ0R6NkpHO0VBQ0UsMEI5Q2xIYTtDRjZoS2xCO0FnRHg2Skc7RUFDRSwwQjlDdEhhO0NGZ2lLbEI7O0FpRHQ1SkM7RUFuRkEsZUFBQTtFQUNBLG9CaEQyQ2M7Q0RrOEpmO0FRMzVKQztFQUVFLGVBQUE7RUFDQSxhQUFBO0VBR0Usc0JBQUE7TUFBQSwyQkFBQTtVQUFBLGNBQUE7RUFDQSxpQkFBQTtNQUFBLGtCQUFBO1VBQUEsU0FBQTtDUjA1Skw7QVF0NUpDO0VBQ0UsWUFBQTtDUnc1Skg7QWlEbi9KQztFQUNFLHFCaERzZXNCO0VnRHJldEIsaUJoRDBDWTtFZ0R6Q1osa0JoRGdlbUI7RWdEMWRqQixjQUFBO0NqRGcvSkw7QWlEOStKSztFQUVFLHNCQUFBO0NqRCsrSlA7QUl0NkpPO0U2Q3RGTjtJQXVCTSxzQkFBQTtHakR5K0pMO0NBQ0Y7QWlEcCtKQzs7RUFFRSxlQUFBO0VBQ0EscUJoRHNjc0I7RWdEcmN0QixpQmhEV1k7RWdEVlosZS9DbkhJO0NGeWxLUDtBaURwK0pHOztFQUNFLG9CL0NuSE87Q0YwbEtaO0FpRDE3Skc7RUFsQ0YscUJoRHNid0I7RWdEcmJ4QixvQmxCekJrQjtFa0IwQmxCLGUvQ2xJTTtFK0NtSU4sZ0JBQUE7Q2pEKzlKRDtBaUQ1N0pHO0VBM0JGLHFCaEQyYXdCO0VnRDFheEIsZS9DMUlXO0UrQzJJWCxvQkFBQTtDakQwOUpEO0FpRHg5SkM7RUFDRSx3QkFBQTtDakQwOUpIO0FpRGg4Skc7RUFqQkYscUJoRDZad0I7RWdENVp4QixhQUFBO0VBQ0EsZS9DNUpNO0NGZ25LUDs7QWlELzdKRzs7RUFFRSxzQkFBQTtFQUNBLHFCQUFBO0VBQ0EsYUF6SHNCO0NqRDJqSzNCOztBaUQvN0pHOztFQUVFLHNCQUFB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MnlLakI7QXFEenhLQztFQUNFLGNBbEJxQjtDckQ2eUt4Qjs7QXFEaHZLQztFQTNEQSxnQnBEOGxCb0I7Q0RpdEpyQjtBcUQ3eUtDO0VBQ0UsY0FSYTtFQVNiLGdCcEQwbEJrQjtFb0R6bEJsQixrQkF1RHFCO0NyRHd2S3hCO0FxRDV5S0M7RUFDRSxhcEQwbEJtQjtFb0R6bEJuQixjcER5bEJtQjtFb0R4bEJuQixlQWZhO0VBZ0JiLGdCQWZjO0NyRDZ6S2pCO0FxRDN5S0M7RUFDRSxXQWxCcUI7Q3JEK3pLeEI7O0FxRDl2S0M7RUEvREEsZXBEK2xCb0I7Q0RrdUpyQjtBcUQvektDO0VBQ0UsWUFSYTtFQVNiLGVwRDJsQmtCO0VvRDFsQmxCLGtCQTJEcUI7Q3JEc3dLeEI7QXFEOXpLQztFQUNFLGFwRDBsQm1CO0VvRHpsQm5CLGNwRHlsQm1CO0VvRHhsQm5CLFlBZmE7RUFnQmIsYUFmYztDckQrMEtqQjtBcUQ3ektDO0VBQ0UsY0FsQnFCO0NyRGkxS3hCOztBc0RodUtDO0VBOUdBLDBCQUFBO0VBQ0EsWUFBQTtFQUNBLG9CckRuRWM7RXFEb0VkLGlCckRoRWM7Q0RrNUtmO0FzRDE2S0M7OztFQUdFLDBCckQ2ckJXO0VxRDVyQlgsMEJwRHhHSTtDRm9oTFA7O0FzRHg2S0M7RUFDRSwwQnJEd3JCWTtFcUR2ckJaLGlCckRJaUI7Q0R1NktwQjs7QXNEdjZLQztFQUNFLG9CckR5ckJvQjtFcUR4ckJwQixlcER4R2U7Q0ZraExsQjs7QXNEdDZLQztFQUNFLG9CckRxckJvQjtFcURwckJwQixlcEQ5R2U7Q0Z1aExsQjs7QXNEbDZLRzs7RUFDRSx3QkFBQTtDdERzNktMO0FzRGw2S0c7Ozs7RUFFRSwwQnJENnBCVTtFcUQ1cEJWLGlCckR2QmU7RXFEd0JmLGlCQUFBO0N0RHM2S0w7O0FzRGg2S0c7O0VBRUUsMEJyRG1wQlU7Q0RneEpmOztBc0R6K0tLO0VBQ0UsaUJBQUE7RUFDQSwwQnJENHRCbUI7Q0RneEoxQjs7QXNENzVLSztFQUVFLDBCcEQvSkE7Q0Y4akxQO0FzRGwrS0M7RUFDRSxpQkFBQTtFQUNBLGlDckRzc0JXO0VxRHJzQlgsMEJwRC9GSTtDRm1rTFA7O0FJNzVLTztFa0Q0R0o7SUFDRSxjQUFBO0d0RHF6S0g7RXNEanpLRDtJQUNFLGNBQUE7R3REbXpLRDtFc0RoektEOzs7SUFHRSxlQUFBO0d0RGt6S0Q7RXNEL3lLRDtJQUNFLGNBQUE7R3REaXpLRDtDQUNGOztBc0RueUtDO0VBdkdBLGVBQUE7RUFDQSxZQUFBO0VBQ0EsaUJBQUE7Q3REODRLRDs7QXNEdjRLRztFQUNFLDBCckR5bEJpQjtDRGl6SnRCO0FzRHA0S0c7RUFDRSwwQnJEb2xCaUI7Q0Rrekp0QjtBc0RoNEtHO0VBQ0UsMEJyRHFrQlk7Q0Q2ekpqQjtBc0QzM0tLO0VBQ0UsMEJyRDhqQmlCO0NEK3pKeEI7O0FzRDl5S0M7RUFDRSxpQkFBQTtDdERpektIOztBdUR0K0tDO0VBakZBLFV0RG93Qlc7RXNEbndCWCwwQkFBQTtFQUNBLG9CckR0RE07RXFEdUROLHNCQUFBO0N2RDJqTEQ7QVFuOUtDO0VBRUUsZUFBQTtFQUNBLGFBQUE7RUFHRSxzQkFBQTtNQUFBLDJCQUFBO1VBQUEsY0FBQTtFQUNBLGlCQUFBO01BQUEsa0JBQUE7VUFBQSxTQUFBO0NSazlLTDtBUTk4S0M7RUFDRSxZQUFBO0NSZzlLSDs7QXVEL2pMQztFQUNFLGVBQUE7RUFDQSxZQUFBO0VBQ0EsWUFBQTtDdkRra0xIOztBdURqL0tHO0VBQ0UsV0FBQTtDdkRvL0tMO0F1RGwvS0s7RUFDRSx3QkFBQTtDdkRvL0tQOztBdUQ5K0tDO0VBQ0Usb0J4Qm5EZ0I7Qy9Cb2lMbkI7QXVELytLRztFQUNFLGVBQUE7Q3ZEaS9LTDtBdUQvK0tLO0VBRUUsb0JBQUE7Q3ZEZy9LUDs7QXVEMytLQztFQTNGQSxZQUFBO0N2RDBrTEQ7QXVEeGtMQztFQUVFLGVBQUE7RUFDQSx3QnREOHVCZTtFc0Q3dUJmLGtCdEQydUJpQjtFc0QxdUJqQixlQUFBO0VBQ0EsZXhCb0JnQjtDL0JxakxuQjtBUTk5S0M7RUFDRSxXQUFBO0NSZytLSDtBdUQxa0xHO0VBQ0Usb0JyRHZGRTtFcUR3RkYsZUFBQTtDdkQ0a0xMO0F1RHprTEc7RUFFRSxvQnJEM0ZPO0VxRDRGUCxleEJVYztDL0Jna0xuQjs7QXVENy9LQztFQWxFQSwwQkFBQTtFQUNBLGNBQUE7RUFDQSxvQnJEM0dNO0VxRDRHTixlckRoR2lCO0VxRGlHakIsMEJBQUE7Q3ZEbWtMRDs7QXVEamdMQztFQTNEQSwwQkFBQTtFQUNBLGVBQUE7Q3ZEZ2tMRDs7QXVEbGdMQztFQXZEQSxjQUFBO0VBQ0EsY3REdXNCb0I7Q0RzM0pyQjtBdUQzakxDO0VBQ0UsZUFBQTtDdkQ2akxIOztBd0Q1b0xDO0VBekJBLHNCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxvQnZEOEZjO0V1RDVGZCwwQnZENnlCaUI7RXVENXlCakIsaUJ2RCtGYztFdUQ5RmQsNEN2RDZ5QmlCO0V1RDN5QmpCLGVBQUE7Q3hEdXFMRDs7QXdEbHBMQztFQWpCQSxzQ3ZEeXlCcUI7Q0Q4M0p0QjtBd0RycUxDO0VBRUUsOEN2RG95QnFCO0NEazRKeEI7QXdEbnFMQztFQUNFLGlCQUFBO0N4RHFxTEg7O0F5RHRyTEM7RUFDRSxnQnhEd3pCZTtFd0R2ekJmLG9CdkQ5Qkk7RXVEK0JKLGV2RDlCSTtFdURpQ0Ysc0JBQUE7RUFBQSxxQkFBQTtFQUFBLGNBQUE7RUFDQSxvQ0FBQTtNQUFBLHFCQUFBO1VBQUEsNEJBQUE7RUFDQSw0QkFBQTtNQUFBLHVCQUFBO1VBQUEsb0JBQUE7Q3pEdXJMTDtBeURqckxHO0VBQ0UscUJ4RDh5QmtCO0V3RDd5QmxCLHNCeEQ2eUJrQjtDRHM0SnZCOztBeUQ5cUxHOztFQUVFLHNCQUFBO01BQUEsa0JBQUE7VUFBQSxjQUFBO0N6RGlyTEw7O0F5RDlxTEc7RUFDRSxrQkFBQTtDekRpckxMOztBeURucUxDO0VBQ0Usc0JBQUE7RUFDQSx1QkFBQTtFQUNBLGtCeEQ4d0J3QjtDRHc1SjNCOztBMEQvbExDO0VBbkdBLG1CQUFBO0VBQ0Esc0JBQUE7RUFFQSxrQ3pEaXpCc0I7RXlEaHpCdEIsaUJ6RG1FbUI7RXlEbEVuQixhekQ2eUJlO0NEdzVKaEI7O0EwRG5tTEM7RUE5RkEsbUJBQUE7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RztFQ3hCRiw0QkFQUTtNQU9SLDZCQVBRO2NBT1IsNEJBUFE7VUFPUixvQkFQUTtDOURnaU1UOztBNkQzL0xDO0VDL0NBLGdDQWhCUTtNQWdCUixzQkFoQlE7VUFnQlIsd0JBaEJRO0VBaUJSLDRCQVJRO01BUVIsdUJBUlE7VUFRUixvQkFSUTtFRHdETiw4QkFBQTtNQUFBLDJCQUFBO1VBQUEsc0JBQUE7QzdEKy9MSDs7QTZEei9MSztFQ2hDSixpQkQrQmU7TUMvQmYsa0JEK0JlO1VDL0JmLFNEK0JlO0M3RDgvTGhCOztBNkQ3L0xLO0VDaENKLGlCRCtCZTtNQy9CZixrQkQrQmU7VUMvQmYsU0QrQmU7QzdEa2dNaEI7O0E2RGpnTUs7RUNoQ0osaUJEK0JlO01DL0JmLGtCRCtCZTtVQy9CZixTRCtCZTtDN0RzZ01oQjs7QTZEcmdNSztFQ2hDSixpQkQrQmU7TUMvQmYsa0JEK0JlO1VDL0JmLFNEK0JlO0M3RDBnTWhCOztBNkR6Z01LO0VDaENKLGlCRCtCZTtNQy9CZixrQkQrQmU7VUMvQmYsU0QrQmU7QzdEOGdNaEI7O0E2RDdnTUs7RUNoQ0osaUJEK0JlO01DL0JmLGtCRCtCZTtVQy9CZixTRCtCZTtDN0RraE1oQjs7QUkvOExPO0V5RGxFRjtJQ2hDSixpQkQrQmU7UUMvQmYsa0JEK0JlO1lDL0JmLFNEK0JlO0c3RHVoTWQ7O0U2RHRoTUc7SUNoQ0osaUJEK0JlO1FDL0JmLGtCRCtCZTtZQy9CZixTRCtCZTtHN0QyaE1kOztFNkQxaE1HO0lDaENKLGlCRCtCZTtRQy9CZixrQkQrQmU7WUMvQmYsU0QrQmU7RzdEK2hNZDs7RTZEOWhNRztJQ2hDSixpQkQrQmU7UUMvQmYsa0JEK0JlO1lDL0JmLFNEK0JlO0c3RG1pTWQ7O0U2RGxpTUc7SUNoQ0osaUJEK0JlO1FDL0JmLGtCRCtCZTtZQy9CZixTRCtCZTtHN0R1aU1kOztFNkR0aU1HO0lDaENKLGlCRCtCZTtRQy9CZixrQkQrQmU7WUMvQmYsU0QrQmU7RzdEMmlNZDtDQUNGO0FJeitMTztFeURsRUY7SUNoQ0osaUJEK0JlO1FDL0JmLGtCRCtCZTtZQy9CZixTRCtCZTtHN0Rnak1kOztFNkQvaU1HO0lDaENKLGlCRCtCZTtRQy9CZixrQkQrQmU7WUMvQmYsU0QrQmU7RzdEb2pNZDs7RTZEbmpNRztJQ2hDSixpQkQrQmU7UUMvQmYsa0JEK0JlO1lDL0JmLFNEK0JlO0c3RHdqTWQ7O0U2RHZqTUc7SUNoQ0osaUJEK0JlO1FDL0JmLGtCRCtCZTtZQy9CZixTRCtCZTtHN0Q0ak1kOztFNkQzak1HO0lDaENKLGlCRCtCZTtRQy9CZixrQkQrQmU7WUMvQmYsU0QrQmU7RzdEZ2tNZDs7RTZEL2pNRztJQ2hDSixpQkQrQmU7UUMvQmYsa0JEK0JlO1lDL0JmLFNEK0JlO0c3RG9rTWQ7Q0FDRjtBNkRqcU1DO0VDWUEsc0JBQUE7RUFBQSxxQkFBQTtFQUFBLGNBQUE7QzlEd3BNRDs7QTZEaHFNQztFQUNFLHVCQUFBO01BQUEsbUJBQUE7VUFBQSxlQUFBO0M3RG1xTUg7O0E2RGhxTUM7RUFDRSx1QkFBQTtNQUFBLG1CQUFBO1VBQUEsZUFBQTtDN0RtcU1IOztBNkRocU1DO0VBQ0UsdUJBQUE7TUFBQSxtQkFBQTtVQUFBLGVBQUE7QzdEbXFNSDs7QTZEL3BNRztFQ3NERiw0QkFwRW1CO01Bb0VuQix3QkFwRW1CO1VBb0VuQixvQkFwRW1CO0M5RGlyTXBCOztBNkRucU1HO0VDc0RGLG9DQXBFbUI7TUFvRW5CLGdDQXBFbUI7VUFvRW5CLDRCQXBFbUI7QzlEcXJNcEI7O0E2RHZxTUc7RUNzREYsK0JBcEVtQjtNQW9FbkIsMkJBcEVtQjtVQW9FbkIsdUJBcEVtQjtDOUR5ck1wQjs7QTZEM3FNRztFQ3NERix1Q0FwRW1CO01Bb0VuQixtQ0FwRW1CO1VBb0VuQiwrQkFwRW1CO0M5RDZyTXBCOztBSWppTU87RXlEcElFO0lDZlIsc0JBQUE7SUFBQSxxQkFBQTtJQUFBLGNBQUE7RzlEeXJNQzs7RTZEdHFNTztJQUNFLHVCQUFBO1FBQUEsbUJBQUE7WUFBQSxlQUFBO0c3RHlxTVQ7O0U2RHRxTU87SUFDRSx1QkFBQTtRQUFBLG1CQUFBO1lBQUEsZUFBQTtHN0R5cU1UOztFNkR0cU1P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b0J2RDhGYztFdUQ1RmQsMEJ2RDZ5QmlCO0V1RDV5QmpCLGlCdkQrRmM7RXVEOUZkLDRDdkQ2eUJpQjtFdUQzeUJqQixlQUFBO0VBSUEsc0N2RHl5QnFCO0NENHdNdEI7QXdEbmpPQztFQUVFLDhDdkRveUJxQjtDRGd4TXhCO0F3RGpqT0M7RUFDRSxpQkFBQTtDeERtak9IO0EyRXBqT0M7RW5CbkJBLHNCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxvQnZEOEZjO0V1RDVGZCwwQnZENnlCaUI7RXVENXlCakIsaUJ2RCtGYztFdUQ5RmQsNEN2RDZ5QmlCO0V1RDN5QmpCLGVBQUE7Q3hEd2tPRDs7QTRFbG5PRDs7RUFBQTtBQUlBLGlDQUFBO0FBR0U7RUFDSSwwQjFFNEJlO0NGc2xPcEI7O0E0RS9tT0M7RUFDSSxlMUV3QmU7Q0YwbE9wQjs7QTRFdm5PQztFQUNJLDBCMUU0QmU7Q0Y4bE9wQjs7QTRFdm5PQztFQUNJLGUxRXdCZTtDRmttT3BCOztBNEUvbk9DO0VBQ0ksMEIxRTRCZTtDRnNtT3BCOztBNEUvbk9DO0VBQ0ksZTFFd0JlO0NGMG1PcEI7O0E0RXZvT0M7RUFDSSwwQjFFNEJlO0NGOG1PcEI7O0E0RXZvT0M7RUFDSSxlMUV3QmU7Q0Zrbk9wQjs7QTRFL29PQztFQUNJLDBCMUU0QmU7Q0Zzbk9wQjs7QTRFL29PQztFQUNJLGUxRXdCZTtDRjBuT3BCOztBNEU5b09ELHFCQUFBO0FBUU07RUFDSSwwQjFFV1c7Q0Yrbk9wQjtBNEV2b09LO0VBQ0ksZTFFT1c7Q0Zrb09wQjtBNEU5b09LO0VBQ0ksMEIxRVdXO0NGcW9PcEI7QTRFN29PSztFQUNJLGUxRU9XO0NGd29PcEI7QTRFcHBPSztFQUNJLDBCMUVXVztDRjJvT3BCO0E0RW5wT0s7RUFDSSxlMUVPVztDRjhvT3BCO0E0RTFwT0s7RUFDSSwwQjFFV1c7Q0ZpcE9wQjtBNEV6cE9LO0VBQ0ksZTFFT1c7Q0ZvcE9wQjtBNEVocU9LO0VBQ0ksMEIxRVdXO0NGdXBPcEI7QTRFL3BPSztFQUNJLGUxRU9XO0NGMHBPcEI7QTRFM3BPQTtFQUNDLGlCQUFBO0M1RTZw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N2tRRztFQUNFLGVoRjFGVztDRnlxUWhCO0FrRjdrUUs7RUFDRSxlaEZ0Rlc7Q0ZxcVFsQjtBa0Z4a1FLO0VBQ0Usa0JBQUE7RUFDQSxtQkFBQTtFQUNBLGlCQUFBO0NsRjBrUVA7QUl6aFFPO0U4RXBERjtJQU1JLGtCQUFBO0dsRjJrUVA7Q0FDRjs7QW1GOXNRRDtFQUNFLG1CQUFBO0NuRml0UUQ7QW1GanNRRzs7Ozs7Ozs7Ozs7Ozs7O0VBQ0UsZWpGSWE7RWlGSGIsb0JsRmtIaUI7Q0QrbFF0QjtBbUZodFFLOzs7Ozs7Ozs7Ozs7Ozs7RUFDRSxlakZDVztDRit0UWxCO0FtRjd0UUc7Ozs7Ozs7Ozs7Ozs7OztFQUNFLGVqRkhhO0NGZ3ZRbEI7QW1GM3VRRzs7Ozs7Ozs7Ozs7Ozs7O0VBQ0UsZ0JBQUE7Q25GMnZRTDtBbUZ4dlFDO0VBRUUsMERBQUE7Q25GeXZRSDtBbUZ2dlFDO0VBQ0UsY0FBQTtDbkZ5dlFIO0FtRnR2UUM7RUFDRSxvQkFBQTtDbkZ3dlFIO0FtRnJ2UUM7RUFDRSxrQ0FBQTtVQUFBLDBCQUFBO0NuRnV2UUg7QUlublFPO0UrRXJJTjtJQUlJLG1CQUFBO0lBQ0EsVUFBQTtJQUNBLFlBQUE7SUFDQSx3QkFBQTtZQUFBLGdCQUFBO0duRnd2UUg7Q0FDRjtBbUZ0dlFHO0VBQ0UsZWpGN0NFO0VpRjhDRixrQkFBQTtDbkZ3dlFMO0FtRm52UUc7RUFDRSxzQmpGcERFO0VpRnFERixZQUFBO0NuRnF2UUw7QUlub1FPO0UrRXBISjtJQUlJLFdBQUE7R25GdXZRTDtDQUNGO0FtRnR2UUs7RUFDRSxlakYxREE7Q0ZrelFQO0FtRnp2UUs7RUFDRSxlakYxREE7Q0ZrelFQO0FtRnp2UUs7RUFDRSxlakYxREE7Q0ZrelFQO0FJM29RTztFK0V6R0Y7SUFDRSxZQUFBO0duRnV2UUw7RW1GcHZRRztJQUNFLGFBQUE7R25Gc3ZRTDtDQUNGO0FtRmx2UUM7RUFDRSxtQkFBQTtDbkZvdlFIO0FtRmp2UUs7O0VBRUUsc0JqRjlFQTtFaUYrRUEsWUFBQTtDbkZtdlFQO0FJM3BRTztFK0UzRkY7O0lBS0ksV0FB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QSxtQkFBQTtDNUdtL1lmO0E0R2wvWWU7RUFDSSxZQUFBO0VBQ0EsYUFBQTtFQUNBLFlBQUE7RUFDQSxpQkFBQTtFQUNBLGVBQUE7RUFDQSxtQkFBQTtDNUdvL1luQjtBNEdsL1llO0VBQ0ksZTFHbFdaO0NGczFaUDtBNEdyL1llO0VBQ0ksZTFHbFdaO0NGczFaUDtBNEdyL1llO0VBQ0ksZTFHbFdaO0NGczFaUDtBNEdsL1llO0VBQ0ksZUFBQTtDNUdvL1luQjs7QTZHbDJaRDtFQUNFLGtCQUFBO0VBQ0EsWUFBQTtFQUNBLGVBQUE7QzdHcTJaRDtBNkduMlpDOzs7Ozs7OztFQU1FLGNBQUE7QzdHdTJaSCIsImZpbGUiOiJhcHAuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLypcbkRFViBOT1RFU1xuQW55IGNoYW5nZSBJIG1hZGUgdG8gdGhlIHNldHRpbmdzIEkgZGlkIGFzIHN1Y2guXG5UaGUgY29tbWVudGVkIHRpdGxlIHN1Y2ggYXMgNC4gQmFzZSBUeXBvZ3JhcGh5XG5JIHRoZW4gdG9vayB3aGF0ZXZlciBzZXR0aW5ncyBJIGFkanVzdGVkIGFuZCBwdXQgdGhlbSBhdCB0aGUgdG9wIG9mIHRoYXQgc2VjdGlvblxudGhlbiBjYW1lIGEgYmxhbmsgbGluZSBicmVhayBhbmQgdGhlIHNldHRpbmdzIEkgZGlkIG5vdCBjaGFuZ2VcbiovXG5AaW1wb3J0IHVybChcImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1Tb3VyY2UrU2FucytQcm86NDAwLDYwMCw3MDAmZGlzcGxheT1zd2FwXCIpO1xuQGltcG9ydCB1cmwoXCJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2NzczI/ZmFtaWx5PUFsaWNlJmZhbWlseT1FQitHYXJhbW9uZDppdGFsLHdnaHRAMCw0MDA7MCw2MDA7MSw0MDA7MSw2MDAmZGlzcGxheT1zd2FwXCIpO1xuLyogdGhpcyBpcyB0aGUgcm9vdCBmb250IHNpemUgc28gbm93IDEgcmVtIGVxdWFscyAxMHB4XG5cdGZvbnQtc2l6ZTogMTBweDtcbiAgY2hhbmdpbmcgaXQgdG8gcGVyY2VudGFnZSBhbGxvdyBmb3IgcGVvcGxlIHdpdGggcG9vciBvclxuICBsaW1pdGVkIGV5ZSBzaWdodCB0byBoYXZlIGEgYmV0dGVyXG4gIGV4cGVyaWVuY2Ugd2hlbiB2aWV3aW5nIHdlYnNpdGVcbiAgYWxsb3dzIFJFTVMgdG8gYmUgYSBiYXNlIG9mIDEwXG4gIDEuNnJlbSAtIDEuNnJlbSAqIDEwcHggPSAxNnB4LlxuKi9cbjpyb290IHtcbiAgLS1ib3JkZXItZ3JleTogMnB4IHNvbGlkICNEMUQ0RDk7XG4gIC0tYm9yZGVyLXRyYW5zcGFyZW50OiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbmh0bWwsIGJvZHkge1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG59XG5cbmJsb2NrcXVvdGUge1xuICBib3JkZXI6IDFweCBzb2xpZCAjRTJFNEU3O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbn1cbmJsb2NrcXVvdGUgY2l0ZSB7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbn1cbmJsb2NrcXVvdGUgY2l0ZTpmaXJzdC1saW5lIHtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGNvbG9yOiAjNDI0QTU1O1xuICBmb250LXdlaWdodDogOTAwO1xufVxuXG4vKipcbiAqIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4gKiBWZXJzaW9uIDYuNi4zXG4gKiBodHRwczovL2dldC5mb3VuZGF0aW9uXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcbiAqL1xuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnJldmVhbC5sYXJnZSwgLnJldmVhbC5zbWFsbCwgLnJldmVhbC50aW55LCAucmV2ZWFsIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG4vKiEgbm9ybWFsaXplLmNzcyB2OC4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbn1cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7XG59XG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIG1hcmdpbjogMDtcbn1cblxuYnV0dG9uLFxuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbmJ1dHRvbixcblt0eXBlPWJ1dHRvbl0sXG5bdHlwZT1yZXNldF0sXG5bdHlwZT1zdWJtaXRdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG59XG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPWJ1dHRvbl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1yZXNldF06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1zdWJtaXRdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1idXR0b25dOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9cmVzZXRdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9c3VibWl0XTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG59XG5cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xufVxuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuW3R5cGU9Y2hlY2tib3hdLFxuW3R5cGU9cmFkaW9dIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZzogMDtcbn1cblxuW3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPW51bWJlcl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cblt0eXBlPXNlYXJjaF0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG59XG5cblt0eXBlPXNlYXJjaF06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgZm9udDogaW5oZXJpdDtcbn1cblxuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmZvdW5kYXRpb24tbXEge1xuICBmb250LWZhbWlseTogXCJzbWFsbD0wZW0mbWVkaXVtPTQwZW0mbGFyZ2U9NjRlbSZ4bGFyZ2U9NzVlbSZzbGFyZ2U9ODBlbSZ4eGxhcmdlPTkwZW1cIjtcbn1cblxuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZvbnQtc2l6ZTogMTBweDtcbn1cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDtcbn1cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgZm9udC1mYW1pbHk6IFwiRUIgR2FyYW1vbmRcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICM0MjRBNTU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG5pbWcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xufVxuXG50ZXh0YXJlYSB7XG4gIGhlaWdodDogYXV0bztcbiAgbWluLWhlaWdodDogNTBweDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuc2VsZWN0IHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi5tYXBfY2FudmFzIGltZyxcbi5tYXBfY2FudmFzIGVtYmVkLFxuLm1hcF9jYW52YXMgb2JqZWN0LFxuLm1xYS1kaXNwbGF5IGltZyxcbi5tcWEtZGlzcGxheSBlbWJlZCxcbi5tcWEtZGlzcGxheSBvYmplY3Qge1xuICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuYnV0dG9uIHtcbiAgcGFkZGluZzogMDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGN1cnNvcjogYXV0bztcbn1cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gYnV0dG9uIHtcbiAgb3V0bGluZTogMDtcbn1cblxucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xufVxuXG4uaXMtdmlzaWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi5pcy1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5ncmlkLWNvbnRhaW5lciB7XG4gIHBhZGRpbmctcmlnaHQ6IDJyZW07XG4gIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgbWF4LXdpZHRoOiAxMjByZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ3JpZC1jb250YWluZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICB9XG59XG4uZ3JpZC1jb250YWluZXIuZmx1aWQge1xuICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xuICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLWNvbnRhaW5lci5mbHVpZCB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gIH1cbn1cbi5ncmlkLWNvbnRhaW5lci5mdWxsIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi5ncmlkLXgge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xufVxuXG4uY2VsbCB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBtaW4taGVpZ2h0OiAwcHg7XG4gIG1pbi13aWR0aDogMHB4O1xuICB3aWR0aDogMTAwJTtcbn1cbi5jZWxsLmF1dG8ge1xuICBmbGV4OiAxIDEgMHB4O1xufVxuLmNlbGwuc2hyaW5rIHtcbiAgZmxleDogMCAwIGF1dG87XG59XG5cbi5ncmlkLXggPiAuYXV0byB7XG4gIHdpZHRoOiBhdXRvO1xufVxuLmdyaWQteCA+IC5zaHJpbmsge1xuICB3aWR0aDogYXV0bztcbn1cblxuLmdyaWQteCA+IC5zbWFsbC1zaHJpbmssIC5ncmlkLXggPiAuc21hbGwtZnVsbCwgLmdyaWQteCA+IC5zbWFsbC0xLCAuZ3JpZC14ID4gLnNtYWxsLTIsIC5ncmlkLXggPiAuc21hbGwtMywgLmdyaWQteCA+IC5zbWFsbC00LCAuZ3JpZC14ID4gLnNtYWxsLTUsIC5ncmlkLXggPiAuc21hbGwtNiwgLmdyaWQteCA+IC5zbWFsbC03LCAuZ3JpZC14ID4gLnNtYWxsLTgsIC5ncmlkLXggPiAuc21hbGwtOSwgLmdyaWQteCA+IC5zbWFsbC0xMCwgLmdyaWQteCA+IC5zbWFsbC0xMSwgLmdyaWQteCA+IC5zbWFsbC0xMiB7XG4gIGZsZXgtYmFzaXM6IGF1dG87XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLXggPiAubWVkaXVtLXNocmluaywgLmdyaWQteCA+IC5tZWRpdW0tZnVsbCwgLmdyaWQteCA+IC5tZWRpdW0tMSwgLmdyaWQteCA+IC5tZWRpdW0tMiwgLmdyaWQteCA+IC5tZWRpdW0tMywgLmdyaWQteCA+IC5tZWRpdW0tNCwgLmdyaWQteCA+IC5tZWRpdW0tNSwgLmdyaWQteCA+IC5tZWRpdW0tNiwgLmdyaWQteCA+IC5tZWRpdW0tNywgLmdyaWQteCA+IC5tZWRpdW0tOCwgLmdyaWQteCA+IC5tZWRpdW0tOSwgLmdyaWQteCA+IC5tZWRpdW0tMTAsIC5ncmlkLXggPiAubWVkaXVtLTExLCAuZ3JpZC14ID4gLm1lZGl1bS0xMiB7XG4gICAgZmxleC1iYXNpczogYXV0bztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQteCA+IC5sYXJnZS1zaHJpbmssIC5ncmlkLXggPiAubGFyZ2UtZnVsbCwgLmdyaWQteCA+IC5sYXJnZS0xLCAuZ3JpZC14ID4gLmxhcmdlLTIsIC5ncmlkLXggPiAubGFyZ2UtMywgLmdyaWQteCA+IC5sYXJnZS00LCAuZ3JpZC14ID4gLmxhcmdlLTUsIC5ncmlkLXggPiAubGFyZ2UtNiwgLmdyaWQteCA+IC5sYXJnZS03LCAuZ3JpZC14ID4gLmxhcmdlLTgsIC5ncmlkLXggPiAubGFyZ2UtOSwgLmdyaWQteCA+IC5sYXJnZS0xMCwgLmdyaWQteCA+IC5sYXJnZS0xMSwgLmdyaWQteCA+IC5sYXJnZS0xMiB7XG4gICAgZmxleC1iYXNpczogYXV0bztcbiAgfVxufVxuLmdyaWQteCA+IC5zbWFsbC0xMiwgLmdyaWQteCA+IC5zbWFsbC0xMSwgLmdyaWQteCA+IC5zbWFsbC0xMCwgLmdyaWQteCA+IC5zbWFsbC05LCAuZ3JpZC14ID4gLnNtYWxsLTgsIC5ncmlkLXggPiAuc21hbGwtNywgLmdyaWQteCA+IC5zbWFsbC02LCAuZ3JpZC14ID4gLnNtYWxsLTUsIC5ncmlkLXggPiAuc21hbGwtNCwgLmdyaWQteCA+IC5zbWFsbC0zLCAuZ3JpZC14ID4gLnNtYWxsLTIsIC5ncmlkLXggPiAuc21hbGwtMSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xufVxuXG4uZ3JpZC14ID4gLnNtYWxsLTEge1xuICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcbn1cblxuLmdyaWQteCA+IC5zbWFsbC0yIHtcbiAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xufVxuXG4uZ3JpZC14ID4gLnNtYWxsLTMge1xuICB3aWR0aDogMjUlO1xufVxuXG4uZ3JpZC14ID4gLnNtYWxsLTQge1xuICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG59XG5cbi5ncmlkLXggPiAuc21hbGwtNSB7XG4gIHdpZHRoOiA0MS42NjY2NjY2NjY3JTtcbn1cblxuLmdyaWQteCA+IC5zbWFsbC02IHtcbiAgd2lkdGg6IDUwJTtcbn1cblxuLmdyaWQteCA+IC5zbWFsbC03IHtcbiAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xufVxuXG4uZ3JpZC14ID4gLnNtYWxsLTgge1xuICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XG59XG5cbi5ncmlkLXggPiAuc21hbGwtOSB7XG4gIHdpZHRoOiA3NSU7XG59XG5cbi5ncmlkLXggPiAuc21hbGwtMTAge1xuICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XG59XG5cbi5ncmlkLXggPiAuc21hbGwtMTEge1xuICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XG59XG5cbi5ncmlkLXggPiAuc21hbGwtMTIge1xuICB3aWR0aDogMTAwJTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyaWQteCA+IC5tZWRpdW0tYXV0byB7XG4gICAgZmxleDogMSAxIDBweDtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gIC5ncmlkLXggPiAubWVkaXVtLTEyLCAuZ3JpZC14ID4gLm1lZGl1bS0xMSwgLmdyaWQteCA+IC5tZWRpdW0tMTAsIC5ncmlkLXggPiAubWVkaXVtLTksIC5ncmlkLXggPiAubWVkaXVtLTgsIC5ncmlkLXggPiAubWVkaXVtLTcsIC5ncmlkLXggPiAubWVkaXVtLTYsIC5ncmlkLXggPiAubWVkaXVtLTUsIC5ncmlkLXggPiAubWVkaXVtLTQsIC5ncmlkLXggPiAubWVkaXVtLTMsIC5ncmlkLXggPiAubWVkaXVtLTIsIC5ncmlkLXggPiAubWVkaXVtLTEsIC5ncmlkLXggPiAubWVkaXVtLXNocmluayB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gIH1cblxuICAuZ3JpZC14ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG5cbiAgLmdyaWQteCA+IC5tZWRpdW0tMSB7XG4gICAgd2lkdGg6IDguMzMzMzMzMzMzMyU7XG4gIH1cblxuICAuZ3JpZC14ID4gLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cblxuICAuZ3JpZC14ID4gLm1lZGl1bS0zIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG5cbiAgLmdyaWQteCA+IC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG5cbiAgLmdyaWQteCA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICB9XG5cbiAgLmdyaWQteCA+IC5tZWRpdW0tNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuXG4gIC5ncmlkLXggPiAubWVkaXVtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuXG4gIC5ncmlkLXggPiAubWVkaXVtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5ncmlkLXggPiAubWVkaXVtLTkge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cblxuICAuZ3JpZC14ID4gLm1lZGl1bS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG5cbiAgLmdyaWQteCA+IC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5ncmlkLXggPiAubWVkaXVtLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQteCA+IC5sYXJnZS1hdXRvIHtcbiAgICBmbGV4OiAxIDEgMHB4O1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG5cbiAgLmdyaWQteCA+IC5sYXJnZS0xMiwgLmdyaWQteCA+IC5sYXJnZS0xMSwgLmdyaWQteCA+IC5sYXJnZS0xMCwgLmdyaWQteCA+IC5sYXJnZS05LCAuZ3JpZC14ID4gLmxhcmdlLTgsIC5ncmlkLXggPiAubGFyZ2UtNywgLmdyaWQteCA+IC5sYXJnZS02LCAuZ3JpZC14ID4gLmxhcmdlLTUsIC5ncmlkLXggPiAubGFyZ2UtNCwgLmdyaWQteCA+IC5sYXJnZS0zLCAuZ3JpZC14ID4gLmxhcmdlLTIsIC5ncmlkLXggPiAubGFyZ2UtMSwgLmdyaWQteCA+IC5sYXJnZS1zaHJpbmsge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICB9XG5cbiAgLmdyaWQteCA+IC5sYXJnZS1zaHJpbmsge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG5cbiAgLmdyaWQteCA+IC5sYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuXG4gIC5ncmlkLXggPiAubGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG5cbiAgLmdyaWQteCA+IC5sYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG5cbiAgLmdyaWQteCA+IC5sYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cblxuICAuZ3JpZC14ID4gLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5ncmlkLXggPiAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuXG4gIC5ncmlkLXggPiAubGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG5cbiAgLmdyaWQteCA+IC5sYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cblxuICAuZ3JpZC14ID4gLmxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cblxuICAuZ3JpZC14ID4gLmxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XG4gIH1cblxuICAuZ3JpZC14ID4gLmxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cblxuICAuZ3JpZC14ID4gLmxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuLmdyaWQtbWFyZ2luLXg6bm90KC5ncmlkLXgpID4gLmNlbGwge1xuICB3aWR0aDogYXV0bztcbn1cblxuLmdyaWQtbWFyZ2luLXk6bm90KC5ncmlkLXkpID4gLmNlbGwge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5ncmlkLW1hcmdpbi14IHtcbiAgbWFyZ2luLWxlZnQ6IC0ycmVtO1xuICBtYXJnaW4tcmlnaHQ6IC0ycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXgge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xcmVtO1xuICB9XG59XG4uZ3JpZC1tYXJnaW4teCA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDRyZW0pO1xuICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXggPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDJyZW0pO1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgfVxufVxuLmdyaWQtbWFyZ2luLXggPiAuYXV0byB7XG4gIHdpZHRoOiBhdXRvO1xufVxuLmdyaWQtbWFyZ2luLXggPiAuc2hyaW5rIHtcbiAgd2lkdGg6IGF1dG87XG59XG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xIHtcbiAgd2lkdGg6IGNhbGMoOC4zMzMzMzMzMzMzJSAtIDRyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMiB7XG4gIHdpZHRoOiBjYWxjKDE2LjY2NjY2NjY2NjclIC0gNHJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0zIHtcbiAgd2lkdGg6IGNhbGMoMjUlIC0gNHJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC00IHtcbiAgd2lkdGg6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSA0cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTUge1xuICB3aWR0aDogY2FsYyg0MS42NjY2NjY2NjY3JSAtIDRyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNiB7XG4gIHdpZHRoOiBjYWxjKDUwJSAtIDRyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNyB7XG4gIHdpZHRoOiBjYWxjKDU4LjMzMzMzMzMzMzMlIC0gNHJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC04IHtcbiAgd2lkdGg6IGNhbGMoNjYuNjY2NjY2NjY2NyUgLSA0cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTkge1xuICB3aWR0aDogY2FsYyg3NSUgLSA0cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEwIHtcbiAgd2lkdGg6IGNhbGMoODMuMzMzMzMzMzMzMyUgLSA0cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTExIHtcbiAgd2lkdGg6IGNhbGMoOTEuNjY2NjY2NjY2NyUgLSA0cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEyIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDRyZW0pO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXggPiAuYXV0byB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc2hyaW5rIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xIHtcbiAgICB3aWR0aDogY2FsYyg4LjMzMzMzMzMzMzMlIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMiB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjY2NjY2NyUgLSAycmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0zIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAycmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC00IHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTUge1xuICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY2NjY2NjclIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNiB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IGNhbGMoNTguMzMzMzMzMzMzMyUgLSAycmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC04IHtcbiAgICB3aWR0aDogY2FsYyg2Ni42NjY2NjY2NjY3JSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTkge1xuICAgIHdpZHRoOiBjYWxjKDc1JSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEwIHtcbiAgICB3aWR0aDogY2FsYyg4My4zMzMzMzMzMzMzJSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTExIHtcbiAgICB3aWR0aDogY2FsYyg5MS42NjY2NjY2NjY3JSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEyIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLWF1dG8ge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogY2FsYyg4LjMzMzMzMzMzMzMlIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTIge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY2NjY2NjclIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTMge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS00IHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS01IHtcbiAgICB3aWR0aDogY2FsYyg0MS42NjY2NjY2NjY3JSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS02IHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAycmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IGNhbGMoNTguMzMzMzMzMzMzMyUgLSAycmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IGNhbGMoNjYuNjY2NjY2NjY2NyUgLSAycmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IGNhbGMoNzUlIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogY2FsYyg4My4zMzMzMzMzMzMzJSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xMSB7XG4gICAgd2lkdGg6IGNhbGMoOTEuNjY2NjY2NjY2NyUgLSAycmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMTIge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAycmVtKTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtYXV0byB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utc2hyaW5rIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0xIHtcbiAgICB3aWR0aDogY2FsYyg4LjMzMzMzMzMzMzMlIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMiB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjY2NjY2NyUgLSAycmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0zIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAycmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS00IHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTUge1xuICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY2NjY2NjclIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtNyB7XG4gICAgd2lkdGg6IGNhbGMoNTguMzMzMzMzMzMzMyUgLSAycmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS04IHtcbiAgICB3aWR0aDogY2FsYyg2Ni42NjY2NjY2NjY3JSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTkge1xuICAgIHdpZHRoOiBjYWxjKDc1JSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTEwIHtcbiAgICB3aWR0aDogY2FsYyg4My4zMzMzMzMzMzMzJSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTExIHtcbiAgICB3aWR0aDogY2FsYyg5MS42NjY2NjY2NjY3JSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTEyIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMnJlbSk7XG4gIH1cbn1cblxuLmdyaWQtcGFkZGluZy14IC5ncmlkLXBhZGRpbmcteCB7XG4gIG1hcmdpbi1yaWdodDogLTJyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMnJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLXBhZGRpbmcteCAuZ3JpZC1wYWRkaW5nLXgge1xuICAgIG1hcmdpbi1yaWdodDogLTFyZW07XG4gICAgbWFyZ2luLWxlZnQ6IC0xcmVtO1xuICB9XG59XG4uZ3JpZC1jb250YWluZXI6bm90KC5mdWxsKSA+IC5ncmlkLXBhZGRpbmcteCB7XG4gIG1hcmdpbi1yaWdodDogLTJyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMnJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLWNvbnRhaW5lcjpub3QoLmZ1bGwpID4gLmdyaWQtcGFkZGluZy14IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xcmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAtMXJlbTtcbiAgfVxufVxuLmdyaWQtcGFkZGluZy14ID4gLmNlbGwge1xuICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xuICBwYWRkaW5nLWxlZnQ6IDJyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ3JpZC1wYWRkaW5nLXggPiAuY2VsbCB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gIH1cbn1cblxuLnNtYWxsLXVwLTEgPiAuY2VsbCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc21hbGwtdXAtMiA+IC5jZWxsIHtcbiAgd2lkdGg6IDUwJTtcbn1cblxuLnNtYWxsLXVwLTMgPiAuY2VsbCB7XG4gIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbn1cblxuLnNtYWxsLXVwLTQgPiAuY2VsbCB7XG4gIHdpZHRoOiAyNSU7XG59XG5cbi5zbWFsbC11cC01ID4gLmNlbGwge1xuICB3aWR0aDogMjAlO1xufVxuXG4uc21hbGwtdXAtNiA+IC5jZWxsIHtcbiAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xufVxuXG4uc21hbGwtdXAtNyA+IC5jZWxsIHtcbiAgd2lkdGg6IDE0LjI4NTcxNDI4NTclO1xufVxuXG4uc21hbGwtdXAtOCA+IC5jZWxsIHtcbiAgd2lkdGg6IDEyLjUlO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAubWVkaXVtLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuXG4gIC5tZWRpdW0tdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cblxuICAubWVkaXVtLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuXG4gIC5tZWRpdW0tdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjAlO1xuICB9XG5cbiAgLm1lZGl1bS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5tZWRpdW0tdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTQuMjg1NzE0Mjg1NyU7XG4gIH1cblxuICAubWVkaXVtLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEyLjUlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5sYXJnZS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cblxuICAubGFyZ2UtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cblxuICAubGFyZ2UtdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG5cbiAgLmxhcmdlLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDIwJTtcbiAgfVxuXG4gIC5sYXJnZS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5sYXJnZS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNC4yODU3MTQyODU3JTtcbiAgfVxuXG4gIC5sYXJnZS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMi41JTtcbiAgfVxufVxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMSA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDRyZW0pO1xufVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0yID4gLmNlbGwge1xuICB3aWR0aDogY2FsYyg1MCUgLSA0cmVtKTtcbn1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMyA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSA0cmVtKTtcbn1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNCA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoMjUlIC0gNHJlbSk7XG59XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTUgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDIwJSAtIDRyZW0pO1xufVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC02ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxNi42NjY2NjY2NjY3JSAtIDRyZW0pO1xufVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC03ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxNC4yODU3MTQyODU3JSAtIDRyZW0pO1xufVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC04ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxMi41JSAtIDRyZW0pO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAycmVtKTtcbiAgfVxuXG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMnJlbSk7XG4gIH1cblxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzMzMzMzMlIC0gMnJlbSk7XG4gIH1cblxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDJyZW0pO1xuICB9XG5cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyMCUgLSAycmVtKTtcbiAgfVxuXG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjY2NjY2NyUgLSAycmVtKTtcbiAgfVxuXG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTQuMjg1NzE0Mjg1NyUgLSAycmVtKTtcbiAgfVxuXG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTIuNSUgLSAycmVtKTtcbiAgfVxuXG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAycmVtKTtcbiAgfVxuXG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDJyZW0pO1xuICB9XG5cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSAycmVtKTtcbiAgfVxuXG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDJyZW0pO1xuICB9XG5cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjAlIC0gMnJlbSk7XG4gIH1cblxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NjY2NjY3JSAtIDJyZW0pO1xuICB9XG5cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTQuMjg1NzE0Mjg1NyUgLSAycmVtKTtcbiAgfVxuXG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMnJlbSk7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDJyZW0pO1xuICB9XG5cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAycmVtKTtcbiAgfVxuXG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSAycmVtKTtcbiAgfVxuXG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMnJlbSk7XG4gIH1cblxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDJyZW0pO1xuICB9XG5cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NjY2NjY3JSAtIDJyZW0pO1xuICB9XG5cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNC4yODU3MTQyODU3JSAtIDJyZW0pO1xuICB9XG5cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMi41JSAtIDJyZW0pO1xuICB9XG59XG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuY2VsbCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEge1xuICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcbn1cbi5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMiB7XG4gIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbn1cbi5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMyB7XG4gIHdpZHRoOiAyNSU7XG59XG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTQge1xuICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG59XG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTUge1xuICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XG59XG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTYge1xuICB3aWR0aDogNTAlO1xufVxuLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC03IHtcbiAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xufVxuLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC04IHtcbiAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xufVxuLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC05IHtcbiAgd2lkdGg6IDc1JTtcbn1cbi5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTAge1xuICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XG59XG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTExIHtcbiAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xufVxuLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMiB7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMSB7XG4gICAgd2lkdGg6IDguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTMge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS02IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLnNtYWxsLXBhZGRpbmctY29sbGFwc2Uge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLnNtYWxsLXBhZGRpbmctY29sbGFwc2UgPiAuY2VsbCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0zIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC03IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTkge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTMge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS02IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLm1lZGl1bS1wYWRkaW5nLWNvbGxhcHNlID4gLmNlbGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmNlbGwge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xIHtcbiAgICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTMge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC02IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtcGFkZGluZy1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5sYXJnZS1wYWRkaW5nLWNvbGxhcHNlID4gLmNlbGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cbi5zbWFsbC1vZmZzZXQtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwJTtcbn1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTAge1xuICBtYXJnaW4tbGVmdDogY2FsYygwJSArIDJyZW0pO1xufVxuXG4uc21hbGwtb2Zmc2V0LTEge1xuICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMzMzJTtcbn1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTEge1xuICBtYXJnaW4tbGVmdDogY2FsYyg4LjMzMzMzMzMzMzMlICsgMnJlbSk7XG59XG5cbi5zbWFsbC1vZmZzZXQtMiB7XG4gIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NjY3JTtcbn1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTIge1xuICBtYXJnaW4tbGVmdDogY2FsYygxNi42NjY2NjY2NjY3JSArIDJyZW0pO1xufVxuXG4uc21hbGwtb2Zmc2V0LTMge1xuICBtYXJnaW4tbGVmdDogMjUlO1xufVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMyB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDI1JSArIDJyZW0pO1xufVxuXG4uc21hbGwtb2Zmc2V0LTQge1xuICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMzMyU7XG59XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC00IHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoMzMuMzMzMzMzMzMzMyUgKyAycmVtKTtcbn1cblxuLnNtYWxsLW9mZnNldC01IHtcbiAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY2NjclO1xufVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtNSB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDQxLjY2NjY2NjY2NjclICsgMnJlbSk7XG59XG5cbi5zbWFsbC1vZmZzZXQtNiB7XG4gIG1hcmdpbi1sZWZ0OiA1MCU7XG59XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC02IHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlICsgMnJlbSk7XG59XG5cbi5zbWFsbC1vZmZzZXQtNyB7XG4gIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMzMzJTtcbn1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTcge1xuICBtYXJnaW4tbGVmdDogY2FsYyg1OC4zMzMzMzMzMzMzJSArIDJyZW0pO1xufVxuXG4uc21hbGwtb2Zmc2V0LTgge1xuICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjY2NyU7XG59XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC04IHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoNjYuNjY2NjY2NjY2NyUgKyAycmVtKTtcbn1cblxuLnNtYWxsLW9mZnNldC05IHtcbiAgbWFyZ2luLWxlZnQ6IDc1JTtcbn1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTkge1xuICBtYXJnaW4tbGVmdDogY2FsYyg3NSUgKyAycmVtKTtcbn1cblxuLnNtYWxsLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMzMzJTtcbn1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTEwIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoODMuMzMzMzMzMzMzMyUgKyAycmVtKTtcbn1cblxuLnNtYWxsLW9mZnNldC0xMSB7XG4gIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NjY3JTtcbn1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTExIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoOTEuNjY2NjY2NjY2NyUgKyAycmVtKTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlO1xuICB9XG5cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygwJSArIDFyZW0pO1xuICB9XG5cbiAgLm1lZGl1bS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMzMyU7XG4gIH1cblxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDguMzMzMzMzMzMzMyUgKyAxcmVtKTtcbiAgfVxuXG4gIC5tZWRpdW0tb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTYuNjY2NjY2NjY2NyUgKyAxcmVtKTtcbiAgfVxuXG4gIC5tZWRpdW0tb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cblxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDI1JSArIDFyZW0pO1xuICB9XG5cbiAgLm1lZGl1bS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG5cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygzMy4zMzMzMzMzMzMzJSArIDFyZW0pO1xuICB9XG5cbiAgLm1lZGl1bS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY2NjclO1xuICB9XG5cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg0MS42NjY2NjY2NjY3JSArIDFyZW0pO1xuICB9XG5cbiAgLm1lZGl1bS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuXG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlICsgMXJlbSk7XG4gIH1cblxuICAubWVkaXVtLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMzMyU7XG4gIH1cblxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDU4LjMzMzMzMzMzMzMlICsgMXJlbSk7XG4gIH1cblxuICAubWVkaXVtLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cblxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDY2LjY2NjY2NjY2NjclICsgMXJlbSk7XG4gIH1cblxuICAubWVkaXVtLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG5cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg3NSUgKyAxcmVtKTtcbiAgfVxuXG4gIC5tZWRpdW0tb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMzMyU7XG4gIH1cblxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4My4zMzMzMzMzMzMzJSArIDFyZW0pO1xuICB9XG5cbiAgLm1lZGl1bS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDkxLjY2NjY2NjY2NjclICsgMXJlbSk7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlO1xuICB9XG5cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDAlICsgMXJlbSk7XG4gIH1cblxuICAubGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xuICB9XG5cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDguMzMzMzMzMzMzMyUgKyAxcmVtKTtcbiAgfVxuXG4gIC5sYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY2NjclO1xuICB9XG5cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDE2LjY2NjY2NjY2NjclICsgMXJlbSk7XG4gIH1cblxuICAubGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cblxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMjUlICsgMXJlbSk7XG4gIH1cblxuICAubGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuXG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygzMy4zMzMzMzMzMzMzJSArIDFyZW0pO1xuICB9XG5cbiAgLmxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cblxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNDEuNjY2NjY2NjY2NyUgKyAxcmVtKTtcbiAgfVxuXG4gIC5sYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuXG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAxcmVtKTtcbiAgfVxuXG4gIC5sYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG5cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDU4LjMzMzMzMzMzMzMlICsgMXJlbSk7XG4gIH1cblxuICAubGFyZ2Utb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg2Ni42NjY2NjY2NjY3JSArIDFyZW0pO1xuICB9XG5cbiAgLmxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG5cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDc1JSArIDFyZW0pO1xuICB9XG5cbiAgLmxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG5cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4My4zMzMzMzMzMzMzJSArIDFyZW0pO1xuICB9XG5cbiAgLmxhcmdlLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY2NjclO1xuICB9XG5cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg5MS42NjY2NjY2NjY3JSArIDFyZW0pO1xuICB9XG59XG4uZ3JpZC15IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xufVxuLmdyaWQteSA+IC5jZWxsIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXgtaGVpZ2h0OiBub25lO1xufVxuLmdyaWQteSA+IC5hdXRvIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuLmdyaWQteSA+IC5zaHJpbmsge1xuICBoZWlnaHQ6IGF1dG87XG59XG4uZ3JpZC15ID4gLnNtYWxsLXNocmluaywgLmdyaWQteSA+IC5zbWFsbC1mdWxsLCAuZ3JpZC15ID4gLnNtYWxsLTEsIC5ncmlkLXkgPiAuc21hbGwtMiwgLmdyaWQteSA+IC5zbWFsbC0zLCAuZ3JpZC15ID4gLnNtYWxsLTQsIC5ncmlkLXkgPiAuc21hbGwtNSwgLmdyaWQteSA+IC5zbWFsbC02LCAuZ3JpZC15ID4gLnNtYWxsLTcsIC5ncmlkLXkgPiAuc21hbGwtOCwgLmdyaWQteSA+IC5zbWFsbC05LCAuZ3JpZC15ID4gLnNtYWxsLTEwLCAuZ3JpZC15ID4gLnNtYWxsLTExLCAuZ3JpZC15ID4gLnNtYWxsLTEyIHtcbiAgZmxleC1iYXNpczogYXV0bztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLXkgPiAubWVkaXVtLXNocmluaywgLmdyaWQteSA+IC5tZWRpdW0tZnVsbCwgLmdyaWQteSA+IC5tZWRpdW0tMSwgLmdyaWQteSA+IC5tZWRpdW0tMiwgLmdyaWQteSA+IC5tZWRpdW0tMywgLmdyaWQteSA+IC5tZWRpdW0tNCwgLmdyaWQteSA+IC5tZWRpdW0tNSwgLmdyaWQteSA+IC5tZWRpdW0tNiwgLmdyaWQteSA+IC5tZWRpdW0tNywgLmdyaWQteSA+IC5tZWRpdW0tOCwgLmdyaWQteSA+IC5tZWRpdW0tOSwgLmdyaWQteSA+IC5tZWRpdW0tMTAsIC5ncmlkLXkgPiAubWVkaXVtLTExLCAuZ3JpZC15ID4gLm1lZGl1bS0xMiB7XG4gICAgZmxleC1iYXNpczogYXV0bztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQteSA+IC5sYXJnZS1zaHJpbmssIC5ncmlkLXkgPiAubGFyZ2UtZnVsbCwgLmdyaWQteSA+IC5sYXJnZS0xLCAuZ3JpZC15ID4gLmxhcmdlLTIsIC5ncmlkLXkgPiAubGFyZ2UtMywgLmdyaWQteSA+IC5sYXJnZS00LCAuZ3JpZC15ID4gLmxhcmdlLTUsIC5ncmlkLXkgPiAubGFyZ2UtNiwgLmdyaWQteSA+IC5sYXJnZS03LCAuZ3JpZC15ID4gLmxhcmdlLTgsIC5ncmlkLXkgPiAubGFyZ2UtOSwgLmdyaWQteSA+IC5sYXJnZS0xMCwgLmdyaWQteSA+IC5sYXJnZS0xMSwgLmdyaWQteSA+IC5sYXJnZS0xMiB7XG4gICAgZmxleC1iYXNpczogYXV0bztcbiAgfVxufVxuLmdyaWQteSA+IC5zbWFsbC0xMiwgLmdyaWQteSA+IC5zbWFsbC0xMSwgLmdyaWQteSA+IC5zbWFsbC0xMCwgLmdyaWQteSA+IC5zbWFsbC05LCAuZ3JpZC15ID4gLnNtYWxsLTgsIC5ncmlkLXkgPiAuc21hbGwtNywgLmdyaWQteSA+IC5zbWFsbC02LCAuZ3JpZC15ID4gLnNtYWxsLTUsIC5ncmlkLXkgPiAuc21hbGwtNCwgLmdyaWQteSA+IC5zbWFsbC0zLCAuZ3JpZC15ID4gLnNtYWxsLTIsIC5ncmlkLXkgPiAuc21hbGwtMSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xufVxuLmdyaWQteSA+IC5zbWFsbC0xIHtcbiAgaGVpZ2h0OiA4LjMzMzMzMzMzMzMlO1xufVxuLmdyaWQteSA+IC5zbWFsbC0yIHtcbiAgaGVpZ2h0OiAxNi42NjY2NjY2NjY3JTtcbn1cbi5ncmlkLXkgPiAuc21hbGwtMyB7XG4gIGhlaWdodDogMjUlO1xufVxuLmdyaWQteSA+IC5zbWFsbC00IHtcbiAgaGVpZ2h0OiAzMy4zMzMzMzMzMzMzJTtcbn1cbi5ncmlkLXkgPiAuc21hbGwtNSB7XG4gIGhlaWdodDogNDEuNjY2NjY2NjY2NyU7XG59XG4uZ3JpZC15ID4gLnNtYWxsLTYge1xuICBoZWlnaHQ6IDUwJTtcbn1cbi5ncmlkLXkgPiAuc21hbGwtNyB7XG4gIGhlaWdodDogNTguMzMzMzMzMzMzMyU7XG59XG4uZ3JpZC15ID4gLnNtYWxsLTgge1xuICBoZWlnaHQ6IDY2LjY2NjY2NjY2NjclO1xufVxuLmdyaWQteSA+IC5zbWFsbC05IHtcbiAgaGVpZ2h0OiA3NSU7XG59XG4uZ3JpZC15ID4gLnNtYWxsLTEwIHtcbiAgaGVpZ2h0OiA4My4zMzMzMzMzMzMzJTtcbn1cbi5ncmlkLXkgPiAuc21hbGwtMTEge1xuICBoZWlnaHQ6IDkxLjY2NjY2NjY2NjclO1xufVxuLmdyaWQteSA+IC5zbWFsbC0xMiB7XG4gIGhlaWdodDogMTAwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLXkgPiAubWVkaXVtLWF1dG8ge1xuICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5ncmlkLXkgPiAubWVkaXVtLTEyLCAuZ3JpZC15ID4gLm1lZGl1bS0xMSwgLmdyaWQteSA+IC5tZWRpdW0tMTAsIC5ncmlkLXkgPiAubWVkaXVtLTksIC5ncmlkLXkgPiAubWVkaXVtLTgsIC5ncmlkLXkgPiAubWVkaXVtLTcsIC5ncmlkLXkgPiAubWVkaXVtLTYsIC5ncmlkLXkgPiAubWVkaXVtLTUsIC5ncmlkLXkgPiAubWVkaXVtLTQsIC5ncmlkLXkgPiAubWVkaXVtLTMsIC5ncmlkLXkgPiAubWVkaXVtLTIsIC5ncmlkLXkgPiAubWVkaXVtLTEsIC5ncmlkLXkgPiAubWVkaXVtLXNocmluayB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gIH1cbiAgLmdyaWQteSA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQteSA+IC5tZWRpdW0tMSB7XG4gICAgaGVpZ2h0OiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5ncmlkLXkgPiAubWVkaXVtLTIge1xuICAgIGhlaWdodDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmdyaWQteSA+IC5tZWRpdW0tMyB7XG4gICAgaGVpZ2h0OiAyNSU7XG4gIH1cbiAgLmdyaWQteSA+IC5tZWRpdW0tNCB7XG4gICAgaGVpZ2h0OiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC15ID4gLm1lZGl1bS01IHtcbiAgICBoZWlnaHQ6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5ncmlkLXkgPiAubWVkaXVtLTYge1xuICAgIGhlaWdodDogNTAlO1xuICB9XG4gIC5ncmlkLXkgPiAubWVkaXVtLTcge1xuICAgIGhlaWdodDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmdyaWQteSA+IC5tZWRpdW0tOCB7XG4gICAgaGVpZ2h0OiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC15ID4gLm1lZGl1bS05IHtcbiAgICBoZWlnaHQ6IDc1JTtcbiAgfVxuICAuZ3JpZC15ID4gLm1lZGl1bS0xMCB7XG4gICAgaGVpZ2h0OiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC15ID4gLm1lZGl1bS0xMSB7XG4gICAgaGVpZ2h0OiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC15ID4gLm1lZGl1bS0xMiB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC15ID4gLmxhcmdlLWF1dG8ge1xuICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5ncmlkLXkgPiAubGFyZ2UtMTIsIC5ncmlkLXkgPiAubGFyZ2UtMTEsIC5ncmlkLXkgPiAubGFyZ2UtMTAsIC5ncmlkLXkgPiAubGFyZ2UtOSwgLmdyaWQteSA+IC5sYXJnZS04LCAuZ3JpZC15ID4gLmxhcmdlLTcsIC5ncmlkLXkgPiAubGFyZ2UtNiwgLmdyaWQteSA+IC5sYXJnZS01LCAuZ3JpZC15ID4gLmxhcmdlLTQsIC5ncmlkLXkgPiAubGFyZ2UtMywgLmdyaWQteSA+IC5sYXJnZS0yLCAuZ3JpZC15ID4gLmxhcmdlLTEsIC5ncmlkLXkgPiAubGFyZ2Utc2hyaW5rIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgfVxuICAuZ3JpZC15ID4gLmxhcmdlLXNocmluayB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5ncmlkLXkgPiAubGFyZ2UtMSB7XG4gICAgaGVpZ2h0OiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5ncmlkLXkgPiAubGFyZ2UtMiB7XG4gICAgaGVpZ2h0OiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC15ID4gLmxhcmdlLTMge1xuICAgIGhlaWdodDogMjUlO1xuICB9XG4gIC5ncmlkLXkgPiAubGFyZ2UtNCB7XG4gICAgaGVpZ2h0OiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC15ID4gLmxhcmdlLTUge1xuICAgIGhlaWdodDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmdyaWQteSA+IC5sYXJnZS02IHtcbiAgICBoZWlnaHQ6IDUwJTtcbiAgfVxuICAuZ3JpZC15ID4gLmxhcmdlLTcge1xuICAgIGhlaWdodDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmdyaWQteSA+IC5sYXJnZS04IHtcbiAgICBoZWlnaHQ6IDY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5ncmlkLXkgPiAubGFyZ2UtOSB7XG4gICAgaGVpZ2h0OiA3NSU7XG4gIH1cbiAgLmdyaWQteSA+IC5sYXJnZS0xMCB7XG4gICAgaGVpZ2h0OiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC15ID4gLmxhcmdlLTExIHtcbiAgICBoZWlnaHQ6IDkxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5ncmlkLXkgPiAubGFyZ2UtMTIge1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG4uZ3JpZC1wYWRkaW5nLXkgLmdyaWQtcGFkZGluZy15IHtcbiAgbWFyZ2luLXRvcDogLTJyZW07XG4gIG1hcmdpbi1ib3R0b206IC0ycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyaWQtcGFkZGluZy15IC5ncmlkLXBhZGRpbmcteSB7XG4gICAgbWFyZ2luLXRvcDogLTFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogLTFyZW07XG4gIH1cbn1cbi5ncmlkLXBhZGRpbmcteSA+IC5jZWxsIHtcbiAgcGFkZGluZy10b3A6IDJyZW07XG4gIHBhZGRpbmctYm90dG9tOiAycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyaWQtcGFkZGluZy15ID4gLmNlbGwge1xuICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICB9XG59XG5cbi5ncmlkLW1hcmdpbi15IHtcbiAgbWFyZ2luLXRvcDogLTJyZW07XG4gIG1hcmdpbi1ib3R0b206IC0ycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkge1xuICAgIG1hcmdpbi10b3A6IC0xcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IC0xcmVtO1xuICB9XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA0cmVtKTtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMnJlbSk7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMSB7XG4gIGhlaWdodDogY2FsYyg4LjMzMzMzMzMzMzMlIC0gNHJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0yIHtcbiAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY2NjY2NjclIC0gNHJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHtcbiAgaGVpZ2h0OiBjYWxjKDI1JSAtIDRyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gIGhlaWdodDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDRyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7XG4gIGhlaWdodDogY2FsYyg0MS42NjY2NjY2NjY3JSAtIDRyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNiB7XG4gIGhlaWdodDogY2FsYyg1MCUgLSA0cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTcge1xuICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMzMzMzMyUgLSA0cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTgge1xuICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjY2NjY2NyUgLSA0cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkge1xuICBoZWlnaHQ6IGNhbGMoNzUlIC0gNHJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMCB7XG4gIGhlaWdodDogY2FsYyg4My4zMzMzMzMzMzMzJSAtIDRyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTEge1xuICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjY2NjY2NyUgLSA0cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA0cmVtKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLW1hcmdpbi15ID4gLmF1dG8ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zaHJpbmsge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xIHtcbiAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMzMzMzMzJSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTIge1xuICAgIGhlaWdodDogY2FsYygxNi42NjY2NjY2NjY3JSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMge1xuICAgIGhlaWdodDogY2FsYygyNSUgLSAycmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC00IHtcbiAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSAycmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC01IHtcbiAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjY2NjY2NyUgLSAycmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzMzMzMzMlIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOCB7XG4gICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY2NjY2NjclIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOSB7XG4gICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEwIHtcbiAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMzMzMzMyUgLSAycmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY2NjY2NjclIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLWF1dG8ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEge1xuICAgIGhlaWdodDogY2FsYyg4LjMzMzMzMzMzMzMlIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTIge1xuICAgIGhlaWdodDogY2FsYygxNi42NjY2NjY2NjY3JSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0zIHtcbiAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTQge1xuICAgIGhlaWdodDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS01IHtcbiAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjY2NjY2NyUgLSAycmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNiB7XG4gICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS03IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMzMzMzMyUgLSAycmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOCB7XG4gICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY2NjY2NjclIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTkge1xuICAgIGhlaWdodDogY2FsYyg3NSUgLSAycmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTAge1xuICAgIGhlaWdodDogY2FsYyg4My4zMzMzMzMzMzMzJSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY2NjY2NjclIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEyIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDJyZW0pO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS1hdXRvIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2Utc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMzMzMzMyUgLSAycmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0yIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjY2NjY2NyUgLSAycmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0zIHtcbiAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNCB7XG4gICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzMzMzMzMlIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNSB7XG4gICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY2NjY2NjclIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNiB7XG4gICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTcge1xuICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMzMzMzMzJSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTgge1xuICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NjY2NjY3JSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTkge1xuICAgIGhlaWdodDogY2FsYyg3NSUgLSAycmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMCB7XG4gICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzMzMzMzMlIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTEge1xuICAgIGhlaWdodDogY2FsYyg5MS42NjY2NjY2NjY3JSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEyIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDJyZW0pO1xuICB9XG59XG5cbi5ncmlkLWZyYW1lIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHdpZHRoOiAxMDB2dztcbn1cblxuLmNlbGwgLmdyaWQtZnJhbWUge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmNlbGwtYmxvY2sge1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG59XG5cbi5jZWxsLWJsb2NrLXkge1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xufVxuXG4uY2VsbC1ibG9jay1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xufVxuLmNlbGwtYmxvY2stY29udGFpbmVyID4gLmdyaWQteCB7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLWdyaWQtZnJhbWUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIHdpZHRoOiAxMDB2dztcbiAgfVxuXG4gIC5jZWxsIC5tZWRpdW0tZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAubWVkaXVtLWNlbGwtYmxvY2sge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcbiAgfVxuXG4gIC5tZWRpdW0tY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICB9XG4gIC5tZWRpdW0tY2VsbC1ibG9jay1jb250YWluZXIgPiAuZ3JpZC14IHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG5cbiAgLm1lZGl1bS1jZWxsLWJsb2NrLXkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLWdyaWQtZnJhbWUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIHdpZHRoOiAxMDB2dztcbiAgfVxuXG4gIC5jZWxsIC5sYXJnZS1ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5sYXJnZS1jZWxsLWJsb2NrIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG4gIH1cblxuICAubGFyZ2UtY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICB9XG4gIC5sYXJnZS1jZWxsLWJsb2NrLWNvbnRhaW5lciA+IC5ncmlkLXgge1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cblxuICAubGFyZ2UtY2VsbC1ibG9jay15IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG4gIH1cbn1cbi5ncmlkLXkuZ3JpZC1mcmFtZSB7XG4gIHdpZHRoOiBhdXRvO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgaGVpZ2h0OiAxMDB2aDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLXkubWVkaXVtLWdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGhlaWdodDogMTAwdmg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLXkubGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgfVxufVxuXG4uY2VsbCAuZ3JpZC15LmdyaWQtZnJhbWUge1xuICBoZWlnaHQ6IDEwMCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuY2VsbCAuZ3JpZC15Lm1lZGl1bS1ncmlkLWZyYW1lIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jZWxsIC5ncmlkLXkubGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbi5ncmlkLW1hcmdpbi15IHtcbiAgbWFyZ2luLXRvcDogLTJyZW07XG4gIG1hcmdpbi1ib3R0b206IC0ycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkge1xuICAgIG1hcmdpbi10b3A6IC0xcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IC0xcmVtO1xuICB9XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA0cmVtKTtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMnJlbSk7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMSB7XG4gIGhlaWdodDogY2FsYyg4LjMzMzMzMzMzMzMlIC0gNHJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0yIHtcbiAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY2NjY2NjclIC0gNHJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHtcbiAgaGVpZ2h0OiBjYWxjKDI1JSAtIDRyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gIGhlaWdodDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDRyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7XG4gIGhlaWdodDogY2FsYyg0MS42NjY2NjY2NjY3JSAtIDRyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNiB7XG4gIGhlaWdodDogY2FsYyg1MCUgLSA0cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTcge1xuICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMzMzMzMyUgLSA0cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTgge1xuICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjY2NjY2NyUgLSA0cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkge1xuICBoZWlnaHQ6IGNhbGMoNzUlIC0gNHJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMCB7XG4gIGhlaWdodDogY2FsYyg4My4zMzMzMzMzMzMzJSAtIDRyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTEge1xuICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjY2NjY2NyUgLSA0cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA0cmVtKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLW1hcmdpbi15ID4gLmF1dG8ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zaHJpbmsge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xIHtcbiAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMzMzMzMzJSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTIge1xuICAgIGhlaWdodDogY2FsYygxNi42NjY2NjY2NjY3JSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMge1xuICAgIGhlaWdodDogY2FsYygyNSUgLSAycmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC00IHtcbiAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSAycmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC01IHtcbiAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjY2NjY2NyUgLSAycmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzMzMzMzMlIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOCB7XG4gICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY2NjY2NjclIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOSB7XG4gICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEwIHtcbiAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMzMzMzMyUgLSAycmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY2NjY2NjclIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLWF1dG8ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEge1xuICAgIGhlaWdodDogY2FsYyg4LjMzMzMzMzMzMzMlIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTIge1xuICAgIGhlaWdodDogY2FsYygxNi42NjY2NjY2NjY3JSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0zIHtcbiAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTQge1xuICAgIGhlaWdodDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS01IHtcbiAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjY2NjY2NyUgLSAycmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNiB7XG4gICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS03IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMzMzMzMyUgLSAycmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOCB7XG4gICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY2NjY2NjclIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTkge1xuICAgIGhlaWdodDogY2FsYyg3NSUgLSAycmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTAge1xuICAgIGhlaWdodDogY2FsYyg4My4zMzMzMzMzMzMzJSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY2NjY2NjclIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEyIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDJyZW0pO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS1hdXRvIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2Utc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMzMzMzMyUgLSAycmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0yIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjY2NjY2NyUgLSAycmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0zIHtcbiAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNCB7XG4gICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzMzMzMzMlIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNSB7XG4gICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY2NjY2NjclIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNiB7XG4gICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTcge1xuICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMzMzMzMzJSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTgge1xuICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NjY2NjY3JSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTkge1xuICAgIGhlaWdodDogY2FsYyg3NSUgLSAycmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMCB7XG4gICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzMzMzMzMlIC0gMnJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTEge1xuICAgIGhlaWdodDogY2FsYyg5MS42NjY2NjY2NjY3JSAtIDJyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEyIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDJyZW0pO1xuICB9XG59XG5cbi5ncmlkLWZyYW1lLmdyaWQtbWFyZ2luLXkge1xuICBoZWlnaHQ6IGNhbGMoMTAwdmggKyA0cmVtKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLWZyYW1lLmdyaWQtbWFyZ2luLXkge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCArIDJyZW0pO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAycmVtKTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ3JpZC1tYXJnaW4teS5tZWRpdW0tZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMnJlbSk7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLW1hcmdpbi15LmxhcmdlLWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCArIDJyZW0pO1xuICB9XG59XG5kaXYsXG5kbCxcbmR0LFxuZGQsXG51bCxcbm9sLFxubGksXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYsXG5wcmUsXG5mb3JtLFxucCxcbmJsb2NrcXVvdGUsXG50aCxcbnRkIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG5wIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogMS44O1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xufVxuXG5lbSxcbmkge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5zdHJvbmcsXG5iIHtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5oMSwgLmgxLFxuaDIsIC5oMixcbmgzLCAuaDMsXG5oNCwgLmg0LFxuaDUsIC5oNSxcbmg2LCAuaDYge1xuICBmb250LWZhbWlseTogXCJFQiBHYXJhbW9uZFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xufVxuaDEgc21hbGwsIC5oMSBzbWFsbCxcbmgyIHNtYWxsLCAuaDIgc21hbGwsXG5oMyBzbWFsbCwgLmgzIHNtYWxsLFxuaDQgc21hbGwsIC5oNCBzbWFsbCxcbmg1IHNtYWxsLCAuaDUgc21hbGwsXG5oNiBzbWFsbCwgLmg2IHNtYWxsIHtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGNvbG9yOiAjRTJFNEU3O1xufVxuXG5oMSwgLmgxIHtcbiAgZm9udC1zaXplOiAzLjJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuaDIsIC5oMiB7XG4gIGZvbnQtc2l6ZTogMi40cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbmgzLCAuaDMge1xuICBmb250LXNpemU6IDIuM3JlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5oNCwgLmg0IHtcbiAgZm9udC1zaXplOiAycmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbmg1LCAuaDUge1xuICBmb250LXNpemU6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuaDYsIC5oNiB7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIGgxLCAuaDEge1xuICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgfVxuXG4gIGgyLCAuaDIge1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgfVxuXG4gIGgzLCAuaDMge1xuICAgIGZvbnQtc2l6ZTogMi40cmVtO1xuICB9XG5cbiAgaDQsIC5oNCB7XG4gICAgZm9udC1zaXplOiAyLjJyZW07XG4gIH1cblxuICBoNSwgLmg1IHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gIH1cblxuICBoNiwgLmg2IHtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgfVxufVxuYSB7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogIzFCNEU3NDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5hOmhvdmVyLCBhOmZvY3VzIHtcbiAgY29sb3I6ICMxNzQzNjQ7XG59XG5hIGltZyB7XG4gIGJvcmRlcjogMDtcbn1cblxuaHIge1xuICBjbGVhcjogYm90aDtcbiAgbWF4LXdpZHRoOiAxMjByZW07XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAycmVtIGF1dG87XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNFMkU0RTc7XG4gIGJvcmRlci1sZWZ0OiAwO1xufVxuXG51bCxcbm9sLFxuZGwge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xuICBsaW5lLWhlaWdodDogMS44O1xufVxuXG5saSB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbn1cblxudWwge1xuICBtYXJnaW4tbGVmdDogNC4yNXJlbTtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG5vbCB7XG4gIG1hcmdpbi1sZWZ0OiA0LjI1cmVtO1xufVxuXG51bCB1bCwgdWwgb2wsIG9sIHVsLCBvbCBvbCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5kbCBkdCB7XG4gIG1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbn1cblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIHBhZGRpbmc6IDRyZW0gNXJlbSA0cmVtIDVyZW07XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI0UyRTRFNztcbn1cbmJsb2NrcXVvdGUsIGJsb2NrcXVvdGUgcCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjg7XG4gIGNvbG9yOiAjMUI0RTc0O1xufVxuXG5hYmJyLCBhYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgIzI0MjQyNDtcbiAgY3Vyc29yOiBoZWxwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDtcbn1cblxua2JkIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwLjJyZW0gMC40cmVtIDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFMkU0RTc7XG4gIGZvbnQtZmFtaWx5OiBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgQ291cmllciwgbW9ub3NwYWNlO1xuICBjb2xvcjogIzI0MjQyNDtcbn1cblxuLnN1YmhlYWRlciB7XG4gIG1hcmdpbi10b3A6IDAuMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBjb2xvcjogI0FCQUVCNDtcbn1cblxuLmxlYWQge1xuICBmb250LXNpemU6IDEyLjVweDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbn1cblxuLnN0YXQge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5wICsgLnN0YXQge1xuICBtYXJnaW4tdG9wOiAtMXJlbTtcbn1cblxudWwubm8tYnVsbGV0LCBvbC5uby1idWxsZXQge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmNpdGUtYmxvY2ssIGNpdGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICNBQkFFQjQ7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xufVxuLmNpdGUtYmxvY2s6YmVmb3JlLCBjaXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG5cbi5jb2RlLWlubGluZSwgY29kZSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNFMkU0RTc7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFMkU0RTc7XG4gIGZvbnQtZmFtaWx5OiBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgQ291cmllciwgbW9ub3NwYWNlO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjb2xvcjogIzI0MjQyNDtcbiAgZGlzcGxheTogaW5saW5lO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgcGFkZGluZzogMC4ycmVtIDAuNXJlbSAwLjFyZW07XG59XG5cbi5jb2RlLWJsb2NrIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0UyRTRFNztcbiAgYmFja2dyb3VuZC1jb2xvcjogI0UyRTRFNztcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjMjQyNDI0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBwcmU7XG4gIHBhZGRpbmc6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cblxuLnRleHQtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi50ZXh0LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi50ZXh0LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnRleHQtanVzdGlmeSB7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgLm1lZGl1bS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuXG4gIC5tZWRpdW0tdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC5tZWRpdW0tdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgLmxhcmdlLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG5cbiAgLmxhcmdlLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAubGFyZ2UtdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICB9XG59XG4uc2hvdy1mb3ItcHJpbnQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSBwcmludCB7XG4gICoge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgY29sb3ItYWRqdXN0OiBlY29ub215O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmhpZGUtZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICB0YWJsZS5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDtcbiAgfVxuXG4gIHRoZWFkLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDtcbiAgfVxuXG4gIHRib2R5LnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDtcbiAgfVxuXG4gIHRyLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDtcbiAgfVxuXG4gIHRkLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG4gIH1cblxuICB0aC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICB9XG5cbiAgYSxcbmE6dmlzaXRlZCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cblxuICBhW2hyZWZdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjtcbiAgfVxuXG4gIC5pciBhOmFmdGVyLFxuYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOmFmdGVyLFxuYVtocmVmXj1cIiNcIl06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICBhYmJyW3RpdGxlXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiO1xuICB9XG5cbiAgcHJlLFxuYmxvY2txdW90ZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0FCQUVCNDtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gIH1cblxuICB0aGVhZCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwO1xuICB9XG5cbiAgdHIsXG5pbWcge1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgfVxuXG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cblxuICBAcGFnZSB7XG4gICAgbWFyZ2luOiAwLjVjbTtcbiAgfVxuICBwLFxuaDIsXG5oMyB7XG4gICAgb3JwaGFuczogMztcbiAgICB3aWRvd3M6IDM7XG4gIH1cblxuICBoMixcbmgzIHtcbiAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcbiAgfVxuXG4gIC5wcmludC1icmVhay1pbnNpZGUge1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdXRvO1xuICB9XG59XG4uYnV0dG9uLCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgcGFkZGluZzogMC44NWVtIDFlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAuYnV0dG9uLCBbZGF0YS13aGF0aW5wdXQ9bW91c2VdIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiBbZGF0YS13aGF0aW5wdXQ9bW91c2VdIC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICBvdXRsaW5lOiAwO1xufVxuLmJ1dHRvbi50aW55LCAud3AtYmxvY2stYnV0dG9uIC50aW55LndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gIGZvbnQtc2l6ZTogMC42cmVtO1xufVxuLmJ1dHRvbi5zbWFsbCwgLndwLWJsb2NrLWJ1dHRvbiAuc21hbGwud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xufVxuLmJ1dHRvbi5sYXJnZSwgLndwLWJsb2NrLWJ1dHRvbiAubGFyZ2Uud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuLmJ1dHRvbi5leHBhbmRlZCwgLndwLWJsb2NrLWJ1dHRvbiAuZXhwYW5kZWQud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLmJ1dHRvbiwgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjNDI0QTU1O1xufVxuLmJ1dHRvbjpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICBjb2xvcjogIzQyNEE1NTtcbn1cbi5idXR0b24ucHJpbWFyeSwgLndwLWJsb2NrLWJ1dHRvbiAucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24ucHJpbWFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5wcmltYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLnByaW1hcnlbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24ucHJpbWFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjQyNDI0O1xuICBjb2xvcjogIzQyNEE1NTtcbn1cbi5idXR0b24ucHJpbWFyeTpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24ucHJpbWFyeTpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWQxZDFkO1xuICBjb2xvcjogIzQyNEE1NTtcbn1cbi5idXR0b24uc2Vjb25kYXJ5LCAud3AtYmxvY2stYnV0dG9uIC5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLnNlY29uZGFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5zZWNvbmRhcnlbZGlzYWJsZWRdLCAuYnV0dG9uLnNlY29uZGFyeS5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5zZWNvbmRhcnlbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLnNlY29uZGFyeS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5zZWNvbmRhcnlbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y3RjdGNztcbiAgY29sb3I6ICMyNDI0MjQ7XG59XG4uYnV0dG9uLnNlY29uZGFyeTpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5zZWNvbmRhcnk6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzZjNmM2O1xuICBjb2xvcjogIzI0MjQyNDtcbn1cbi5idXR0b24uc3VjY2VzcywgLndwLWJsb2NrLWJ1dHRvbiAuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24uc3VjY2Vzcy5kaXNhYmxlZCwgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXSwgLmJ1dHRvbi5zdWNjZXNzLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLnN1Y2Nlc3NbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uc3VjY2Vzc1tkaXNhYmxlZF06Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FkYjc2O1xuICBjb2xvcjogIzI0MjQyNDtcbn1cbi5idXR0b24uc3VjY2Vzczpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24uc3VjY2Vzczpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjJiYjViO1xuICBjb2xvcjogIzI0MjQyNDtcbn1cbi5idXR0b24ud2FybmluZywgLndwLWJsb2NrLWJ1dHRvbiAud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24ud2FybmluZy5kaXNhYmxlZCwgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXSwgLmJ1dHRvbi53YXJuaW5nLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLndhcm5pbmdbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24ud2FybmluZ1tkaXNhYmxlZF06Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZTAwO1xuICBjb2xvcjogIzI0MjQyNDtcbn1cbi5idXR0b24ud2FybmluZzpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24ud2FybmluZzpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M4YjAwO1xuICBjb2xvcjogIzI0MjQyNDtcbn1cbi5idXR0b24uYWxlcnQsIC53cC1ibG9jay1idXR0b24gLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi5hbGVydC5kaXNhYmxlZCwgLmJ1dHRvbi5hbGVydFtkaXNhYmxlZF0sIC5idXR0b24uYWxlcnQuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uYWxlcnRbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmFsZXJ0LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmFsZXJ0W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7XG4gIGNvbG9yOiAjMjQyNDI0O1xufVxuLmJ1dHRvbi5hbGVydDpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmFsZXJ0OmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTUzYjJhO1xuICBjb2xvcjogIzI0MjQyNDtcbn1cbi5idXR0b24uaG9sbG93LCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi5ob2xsb3c6aG92ZXIsIC5idXR0b24uaG9sbG93OmZvY3VzLCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uaG9sbG93LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uYnV0dG9uLmhvbGxvdywgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24uaG9sbG93LmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ1dHRvbi5ob2xsb3c6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmhvbGxvdzpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xufVxuLmJ1dHRvbi5ob2xsb3cucHJpbWFyeSwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5LmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeS5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93LnByaW1hcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uaG9sbG93LnByaW1hcnlbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzI0MjQyNDtcbiAgY29sb3I6ICMyNDI0MjQ7XG59XG4uYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24uaG9sbG93LnByaW1hcnk6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzEyMTIxMjtcbiAgY29sb3I6ICMxMjEyMTI7XG59XG4uYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnksIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24uaG9sbG93LnNlY29uZGFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnlbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjRjdGN0Y3O1xuICBjb2xvcjogI0Y3RjdGNztcbn1cbi5idXR0b24uaG9sbG93LnNlY29uZGFyeTpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjN2M3YzdjO1xuICBjb2xvcjogIzdjN2M3Yztcbn1cbi5idXR0b24uaG9sbG93LnN1Y2Nlc3MsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzcy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzc1tkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LnN1Y2Nlc3MuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3NbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMzYWRiNzY7XG4gIGNvbG9yOiAjM2FkYjc2O1xufVxuLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMxNTc1Mzk7XG4gIGNvbG9yOiAjMTU3NTM5O1xufVxuLmJ1dHRvbi5ob2xsb3cud2FybmluZywgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93Lndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cud2FybmluZy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cud2FybmluZ1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93Lndhcm5pbmcuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uaG9sbG93Lndhcm5pbmdbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmYWUwMDtcbiAgY29sb3I6ICNmZmFlMDA7XG59XG4uYnV0dG9uLmhvbGxvdy53YXJuaW5nOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24uaG9sbG93Lndhcm5pbmc6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzgwNTcwMDtcbiAgY29sb3I6ICM4MDU3MDA7XG59XG4uYnV0dG9uLmhvbGxvdy5hbGVydCwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24uaG9sbG93LmFsZXJ0LmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5hbGVydFtkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LmFsZXJ0LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5hbGVydFtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93LmFsZXJ0LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvdy5hbGVydFtkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2M0YjM3O1xuICBjb2xvcjogI2NjNGIzNztcbn1cbi5idXR0b24uaG9sbG93LmFsZXJ0OmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjNjcyNTFhO1xuICBjb2xvcjogIzY3MjUxYTtcbn1cbi5idXR0b24uY2xlYXIsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi5jbGVhcjpob3ZlciwgLmJ1dHRvbi5jbGVhcjpmb2N1cywgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ1dHRvbi5jbGVhciwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXIuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdOmZvY3VzIHtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ1dHRvbi5jbGVhcjpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmNsZWFyOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbn1cbi5idXR0b24uY2xlYXIucHJpbWFyeSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24uY2xlYXIucHJpbWFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnByaW1hcnlbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnByaW1hcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXIucHJpbWFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICBjb2xvcjogIzI0MjQyNDtcbn1cbi5idXR0b24uY2xlYXIucHJpbWFyeTpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICBjb2xvcjogIzEyMTIxMjtcbn1cbi5idXR0b24uY2xlYXIuc2Vjb25kYXJ5LCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnlbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeS5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnlbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnlbZGlzYWJsZWRdOmZvY3VzIHtcbiAgY29sb3I6ICNGN0Y3Rjc7XG59XG4uYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICBjb2xvcjogIzdjN2M3Yztcbn1cbi5idXR0b24uY2xlYXIuc3VjY2VzcywgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24uY2xlYXIuc3VjY2Vzcy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3NbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3MuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXIuc3VjY2Vzc1tkaXNhYmxlZF06Zm9jdXMge1xuICBjb2xvcjogIzNhZGI3Njtcbn1cbi5idXR0b24uY2xlYXIuc3VjY2Vzczpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICBjb2xvcjogIzE1NzUzOTtcbn1cbi5idXR0b24uY2xlYXIud2FybmluZywgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24uY2xlYXIud2FybmluZy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci53YXJuaW5nW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci53YXJuaW5nLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyLndhcm5pbmdbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyLndhcm5pbmcuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXIud2FybmluZ1tkaXNhYmxlZF06Zm9jdXMge1xuICBjb2xvcjogI2ZmYWUwMDtcbn1cbi5idXR0b24uY2xlYXIud2FybmluZzpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICBjb2xvcjogIzgwNTcwMDtcbn1cbi5idXR0b24uY2xlYXIuYWxlcnQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi5jbGVhci5hbGVydC5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hbGVydFtkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuYWxlcnQuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uY2xlYXIuYWxlcnRbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyLmFsZXJ0LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmNsZWFyLmFsZXJ0W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGNvbG9yOiAjY2M0YjM3O1xufVxuLmJ1dHRvbi5jbGVhci5hbGVydDpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICBjb2xvcjogIzY3MjUxYTtcbn1cbi5idXR0b24uZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbltkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gW2Rpc2FibGVkXS53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICBvcGFjaXR5OiAwLjI1O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuLmJ1dHRvbi5kcm9wZG93bjo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24gLmRyb3Bkb3duLndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCAwLjRlbTtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogI0ZGRkZGRiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDAuNGVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLWxlZnQ6IDFlbTtcbn1cbi5idXR0b24uZHJvcGRvd24uaG9sbG93OjphZnRlciwgLndwLWJsb2NrLWJ1dHRvbiAuZHJvcGRvd24uaG9sbG93LndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuZHJvcGRvd24ud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhcjo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24gLmRyb3Bkb3duLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idXR0b24uZHJvcGRvd24uaG9sbG93LnByaW1hcnk6OmFmdGVyLCAud3AtYmxvY2stYnV0dG9uIC5kcm9wZG93bi5ob2xsb3cucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6OmFmdGVyLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmRyb3Bkb3duLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhci5wcmltYXJ5OjphZnRlciwgLndwLWJsb2NrLWJ1dHRvbiAuZHJvcGRvd24uY2xlYXIucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzI0MjQyNDtcbn1cbi5idXR0b24uZHJvcGRvd24uaG9sbG93LnNlY29uZGFyeTo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24gLmRyb3Bkb3duLmhvbGxvdy5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5kcm9wZG93bi5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhci5zZWNvbmRhcnk6OmFmdGVyLCAud3AtYmxvY2stYnV0dG9uIC5kcm9wZG93bi5jbGVhci5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNGN0Y3Rjc7XG59XG4uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5zdWNjZXNzOjphZnRlciwgLndwLWJsb2NrLWJ1dHRvbiAuZHJvcGRvd24uaG9sbG93LnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5kcm9wZG93bi5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIuc3VjY2Vzczo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24gLmRyb3Bkb3duLmNsZWFyLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICMzYWRiNzY7XG59XG4uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy53YXJuaW5nOjphZnRlciwgLndwLWJsb2NrLWJ1dHRvbiAuZHJvcGRvd24uaG9sbG93Lndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5kcm9wZG93bi53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIud2FybmluZzo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24gLmRyb3Bkb3duLmNsZWFyLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNmZmFlMDA7XG59XG4uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5hbGVydDo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24gLmRyb3Bkb3duLmhvbGxvdy5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6OmFmdGVyLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmRyb3Bkb3duLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIuYWxlcnQ6OmFmdGVyLCAud3AtYmxvY2stYnV0dG9uIC5kcm9wZG93bi5jbGVhci5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2NjNGIzNztcbn1cbi5idXR0b24uYXJyb3ctb25seTo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24gLmFycm93LW9ubHkud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciB7XG4gIHRvcDogLTAuMWVtO1xuICBmbG9hdDogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbmEuYnV0dG9uOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIGEud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCBhLmJ1dHRvbjpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiBhLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuW3R5cGU9dGV4dF0sIFt0eXBlPXBhc3N3b3JkXSwgW3R5cGU9ZGF0ZV0sIFt0eXBlPWRhdGV0aW1lXSwgW3R5cGU9ZGF0ZXRpbWUtbG9jYWxdLCBbdHlwZT1tb250aF0sIFt0eXBlPXdlZWtdLCBbdHlwZT1lbWFpbF0sIFt0eXBlPW51bWJlcl0sIFt0eXBlPXNlYXJjaF0sIFt0eXBlPXRlbF0sIFt0eXBlPXRpbWVdLCBbdHlwZT11cmxdLCBbdHlwZT1jb2xvcl0sXG50ZXh0YXJlYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0LjJyZW07XG4gIG1hcmdpbjogMCAwIDEuNnJlbTtcbiAgcGFkZGluZzogMC44cmVtO1xuICBib3JkZXI6IDJweCBzb2xpZCAjRkZGRkZGO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5bdHlwZT10ZXh0XTpmb2N1cywgW3R5cGU9cGFzc3dvcmRdOmZvY3VzLCBbdHlwZT1kYXRlXTpmb2N1cywgW3R5cGU9ZGF0ZXRpbWVdOmZvY3VzLCBbdHlwZT1kYXRldGltZS1sb2NhbF06Zm9jdXMsIFt0eXBlPW1vbnRoXTpmb2N1cywgW3R5cGU9d2Vla106Zm9jdXMsIFt0eXBlPWVtYWlsXTpmb2N1cywgW3R5cGU9bnVtYmVyXTpmb2N1cywgW3R5cGU9c2VhcmNoXTpmb2N1cywgW3R5cGU9dGVsXTpmb2N1cywgW3R5cGU9dGltZV06Zm9jdXMsIFt0eXBlPXVybF06Zm9jdXMsIFt0eXBlPWNvbG9yXTpmb2N1cyxcbnRleHRhcmVhOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0ZGRkZGRjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG59XG5cbnRleHRhcmVhIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxudGV4dGFyZWFbcm93c10ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbmlucHV0OmRpc2FibGVkLCBpbnB1dFtyZWFkb25seV0sXG50ZXh0YXJlYTpkaXNhYmxlZCxcbnRleHRhcmVhW3JlYWRvbmx5XSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cblt0eXBlPXN1Ym1pdF0sXG5bdHlwZT1idXR0b25dIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuaW5wdXRbdHlwZT1zZWFyY2hdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG5bdHlwZT1maWxlXSxcblt0eXBlPWNoZWNrYm94XSxcblt0eXBlPXJhZGlvXSB7XG4gIG1hcmdpbjogMCAwIDEuNnJlbTtcbn1cblxuW3R5cGU9Y2hlY2tib3hdICsgbGFiZWwsXG5bdHlwZT1yYWRpb10gKyBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBtYXJnaW4tbGVmdDogMC44cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDEuNnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblt0eXBlPWNoZWNrYm94XSArIGxhYmVsW2Zvcl0sXG5bdHlwZT1yYWRpb10gKyBsYWJlbFtmb3JdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5sYWJlbCA+IFt0eXBlPWNoZWNrYm94XSxcbmxhYmVsID4gW3R5cGU9cmFkaW9dIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjhyZW07XG59XG5cblt0eXBlPWZpbGVdIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjg7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxubGFiZWwubWlkZGxlIHtcbiAgbWFyZ2luOiAwIDAgMS42cmVtO1xuICBwYWRkaW5nOiAxcmVtIDA7XG59XG5cbi5oZWxwLXRleHQge1xuICBtYXJnaW4tdG9wOiAtMC44cmVtO1xuICBmb250LXNpemU6IDEuOHJlbTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuLmlucHV0LWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDEuNnJlbTtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG59XG4uaW5wdXQtZ3JvdXAgPiA6Zmlyc3QtY2hpbGQsIC5pbnB1dC1ncm91cCA+IDpmaXJzdC1jaGlsZC5pbnB1dC1ncm91cC1idXR0b24gPiAqIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDtcbn1cbi5pbnB1dC1ncm91cCA+IDpsYXN0LWNoaWxkLCAuaW5wdXQtZ3JvdXAgPiA6bGFzdC1jaGlsZC5pbnB1dC1ncm91cC1idXR0b24gPiAqIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDtcbn1cblxuLmlucHV0LWdyb3VwLWJ1dHRvbiBhLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBpbnB1dCxcbi5pbnB1dC1ncm91cC1idXR0b24gYnV0dG9uLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBsYWJlbCwgLmlucHV0LWdyb3VwLWJ1dHRvbiwgLmlucHV0LWdyb3VwLWZpZWxkLCAuaW5wdXQtZ3JvdXAtbGFiZWwge1xuICBtYXJnaW46IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5pbnB1dC1ncm91cC1sYWJlbCB7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0ZGRkZGRjtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgY29sb3I6ICM0MjRBNTU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMCAwIGF1dG87XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uaW5wdXQtZ3JvdXAtbGFiZWw6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmlnaHQ6IDA7XG59XG4uaW5wdXQtZ3JvdXAtbGFiZWw6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1sZWZ0OiAwO1xufVxuXG4uaW5wdXQtZ3JvdXAtZmllbGQge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBmbGV4OiAxIDEgMHB4O1xuICBtaW4td2lkdGg6IDA7XG59XG5cbi5pbnB1dC1ncm91cC1idXR0b24ge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMCAwIGF1dG87XG59XG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGEsXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGlucHV0LFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBidXR0b24sXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGxhYmVsIHtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xufVxuXG5maWVsZHNldCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG5sZWdlbmQge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDAuOHJlbTtcbn1cblxuLmZpZWxkc2V0IHtcbiAgbWFyZ2luOiAxLjhyZW0gMDtcbiAgcGFkZGluZzogMnJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0ZGRkZGRjtcbn1cbi5maWVsZHNldCBsZWdlbmQge1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi1sZWZ0OiAtMC4zcmVtO1xuICBwYWRkaW5nOiAwIDAuM3JlbTtcbn1cblxuc2VsZWN0IHtcbiAgaGVpZ2h0OiA0LjJyZW07XG4gIG1hcmdpbjogMCAwIDEuNnJlbTtcbiAgcGFkZGluZzogMC44cmVtO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDJweCBzb2xpZCAjRkZGRkZGO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZlcnNpb249JzEuMScgd2lkdGg9JzMyJyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMzIgMjQnPjxwb2x5Z29uIHBvaW50cz0nMCwwIDMyLDAgMTYsMjQnIHN0eWxlPSdmaWxsOiByZ2IlMjgxNzEsIDE3NCwgMTgwJTI5Jz48L3BvbHlnb24+PC9zdmc+XCIpO1xuICBiYWNrZ3JvdW5kLW9yaWdpbjogY29udGVudC1ib3g7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IC0xLjZyZW0gY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDlweCA2cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDIuNHJlbTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwXFwwICkge1xuICBzZWxlY3Qge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBTUJKUkVGVWVOckVsbHNPaENBTVJWc3pDOUlselU3S0NtVkhUSnNvTVdZTVV0cHl2OUJnYnVYUUI1WlNkZ0JZWVk0eWNnQml2azhLWUZzUU1mTWlUVEJQNG8zblV6Q0t6T2FiTEpiTHkyL2czMWV2R2tBZ2luUjQvWmVnS0g1cVgzYkpDc2NBM3QweDNrZ081dFFGeWhoRmY1MHhScUZMYnlNVU5KUXpneWpHUy93Z0Nwdktxa1JCcHVXckU0VjlkKzFFNGRQVVhxSWcxMDdTUU9FLzJEUlF4TXdURHlnSUluVkRFVDlUM2xDb2ovNmovVkNtR2paT2wybEtwWjhBQXdEUVA3eklpbURHRlFBQUFBQkpSVTVFcmtKZ2dnPT1cIik7XG4gIH1cbn1cbnNlbGVjdDpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNGRkZGRkY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xufVxuc2VsZWN0OmRpc2FibGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbnNlbGVjdDo6LW1zLWV4cGFuZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5zZWxlY3RbbXVsdGlwbGVdIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuc2VsZWN0Om5vdChbbXVsdGlwbGVdKSB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLmlzLWludmFsaWQtaW5wdXQ6bm90KDpmb2N1cykge1xuICBib3JkZXItY29sb3I6ICNjYzRiMzc7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWVkZWI7XG59XG4uaXMtaW52YWxpZC1pbnB1dDpub3QoOmZvY3VzKTo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2NjNGIzNztcbn1cblxuLmlzLWludmFsaWQtbGFiZWwge1xuICBjb2xvcjogI2NjNGIzNztcbn1cblxuLmZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAtMC44cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjZyZW07XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBjb2xvcjogI2NjNGIzNztcbn1cbi5mb3JtLWVycm9yLmlzLXZpc2libGUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmFjY29yZGlvbiB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG4uYWNjb3JkaW9uW2Rpc2FibGVkXSAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLmFjY29yZGlvbi1pdGVtOmZpcnN0LWNoaWxkID4gOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDtcbn1cbi5hY2NvcmRpb24taXRlbTpsYXN0LWNoaWxkID4gOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAwO1xufVxuXG4uYWNjb3JkaW9uLXRpdGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMS4yNXJlbSAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjRTJFNEU3O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBmb250LXNpemU6IDEuMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAjMjQyNDI0O1xufVxuOmxhc3QtY2hpbGQ6bm90KC5pcy1hY3RpdmUpID4gLmFjY29yZGlvbi10aXRsZSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRTJFNEU3O1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAwO1xufVxuLmFjY29yZGlvbi10aXRsZTpob3ZlciwgLmFjY29yZGlvbi10aXRsZTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFMkU0RTc7XG59XG4uYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICByaWdodDogMXJlbTtcbiAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgY29udGVudDogXCIrXCI7XG59XG4uaXMtYWN0aXZlID4gLmFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHtcbiAgY29udGVudDogXCLigJNcIjtcbn1cblxuLmFjY29yZGlvbi1jb250ZW50IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0UyRTRFNztcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgY29sb3I6ICM0MjRBNTU7XG59XG46bGFzdC1jaGlsZCA+IC5hY2NvcmRpb24tY29udGVudDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNFMkU0RTc7XG59XG5cbi5hY2NvcmRpb24tbWVudSBsaSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmFjY29yZGlvbi1tZW51IGEge1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbn1cbi5hY2NvcmRpb24tbWVudSAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUgYSB7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtO1xufVxuLmFjY29yZGlvbi1tZW51IC5uZXN0ZWQuaXMtYWNjb3JkaW9uLXN1Ym1lbnUge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xufVxuLmFjY29yZGlvbi1tZW51LmFsaWduLXJpZ2h0IC5uZXN0ZWQuaXMtYWNjb3JkaW9uLXN1Ym1lbnUge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLmFjY29yZGlvbi1tZW51IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQ6bm90KC5oYXMtc3VibWVudS10b2dnbGUpID4gYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5hY2NvcmRpb24tbWVudSAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50Om5vdCguaGFzLXN1Ym1lbnUtdG9nZ2xlKSA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgNnB4O1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAjRkZGRkZGIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tdG9wOiAtM3B4O1xuICByaWdodDogMXJlbTtcbn1cbi5hY2NvcmRpb24tbWVudS5hbGlnbi1sZWZ0IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIHJpZ2h0OiAxcmVtO1xuICBsZWZ0OiBhdXRvO1xufVxuLmFjY29yZGlvbi1tZW51LmFsaWduLXJpZ2h0IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAxcmVtO1xufVxuLmFjY29yZGlvbi1tZW51IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnRbYXJpYS1leHBhbmRlZD10cnVlXSA+IGE6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbn1cblxuLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmhhcy1zdWJtZW51LXRvZ2dsZSA+IGEge1xuICBtYXJnaW4tcmlnaHQ6IDQwcHg7XG59XG5cbi5zdWJtZW51LXRvZ2dsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnN1Ym1lbnUtdG9nZ2xlOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogI0ZGRkZGRiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIG1hcmdpbjogYXV0bztcbn1cblxuLnN1Ym1lbnUtdG9nZ2xlW2FyaWEtZXhwYW5kZWQ9dHJ1ZV06OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZVkoLTEpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xufVxuXG4uc3VibWVudS10b2dnbGUtdGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLXdpZHRoOiAyLjFlbTtcbiAgcGFkZGluZzogMC4zZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgZm9udC1zaXplOiAwLjZyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogIzI0MjQyNDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4uYmFkZ2UucHJpbWFyeSB7XG4gIGJhY2tncm91bmQ6ICMyNDI0MjQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLmJhZGdlLnNlY29uZGFyeSB7XG4gIGJhY2tncm91bmQ6ICNGN0Y3Rjc7XG4gIGNvbG9yOiAjMjQyNDI0O1xufVxuLmJhZGdlLnN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kOiAjM2FkYjc2O1xuICBjb2xvcjogIzI0MjQyNDtcbn1cbi5iYWRnZS53YXJuaW5nIHtcbiAgYmFja2dyb3VuZDogI2ZmYWUwMDtcbiAgY29sb3I6ICMyNDI0MjQ7XG59XG4uYmFkZ2UuYWxlcnQge1xuICBiYWNrZ3JvdW5kOiAjY2M0YjM3O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuLmJyZWFkY3J1bWJzIHtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuLmJyZWFkY3J1bWJzOjpiZWZvcmUsIC5icmVhZGNydW1iczo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG4gIGZsZXgtYmFzaXM6IDA7XG4gIG9yZGVyOiAxO1xufVxuLmJyZWFkY3J1bWJzOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuLmJyZWFkY3J1bWJzIGxpIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xuICBjb2xvcjogIzI0MjQyNDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuLmJyZWFkY3J1bWJzIGxpOm5vdCg6bGFzdC1jaGlsZCk6OmFmdGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDAgMC43NXJlbTtcbiAgb3BhY2l0eTogMTtcbiAgY29udGVudDogXCIvXCI7XG4gIGNvbG9yOiAjRTJFNEU3O1xufVxuLmJyZWFkY3J1bWJzIGEge1xuICBjb2xvcjogIzI0MjQyNDtcbn1cbi5icmVhZGNydW1icyBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4uYnJlYWRjcnVtYnMgLmRpc2FibGVkIHtcbiAgY29sb3I6ICNFMkU0RTc7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5idXR0b24tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBmbGV4LWdyb3c6IDE7XG59XG4uYnV0dG9uLWdyb3VwOjpiZWZvcmUsIC5idXR0b24tZ3JvdXA6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBmbGV4LWJhc2lzOiAwO1xuICBvcmRlcjogMTtcbn1cbi5idXR0b24tZ3JvdXA6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG4uYnV0dG9uLWdyb3VwOjpiZWZvcmUsIC5idXR0b24tZ3JvdXA6OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5idXR0b24tZ3JvdXAgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cCAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgbWFyZ2luOiAwO1xuICBtYXJnaW4tcmlnaHQ6IDFweDtcbiAgbWFyZ2luLWJvdHRvbTogMXB4O1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgZmxleDogMCAwIGF1dG87XG59XG4uYnV0dG9uLWdyb3VwIC5idXR0b246bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6bGFzdC1jaGlsZCwgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwIC53cC1ibG9jay1idXR0b25fX2xpbms6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi5idXR0b24tZ3JvdXAudGlueSAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnRpbnkgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAudGlueSAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgZm9udC1zaXplOiAwLjZyZW07XG59XG4uYnV0dG9uLWdyb3VwLnNtYWxsIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc21hbGwgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuc21hbGwgLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbn1cbi5idXR0b24tZ3JvdXAubGFyZ2UgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5sYXJnZSAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5sYXJnZSAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICBmbGV4OiAxIDEgMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4uYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNDI0MjQ7XG4gIGNvbG9yOiAjNDI0QTU1O1xufVxuLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAucHJpbWFyeSAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAucHJpbWFyeSAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFkMWQxZDtcbiAgY29sb3I6ICM0MjRBNTU7XG59XG4uYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGN0Y3Rjc7XG4gIGNvbG9yOiAjMjQyNDI0O1xufVxuLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC5idXR0b246Zm9jdXMsIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M2YzZjNjtcbiAgY29sb3I6ICMyNDI0MjQ7XG59XG4uYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG4gIGNvbG9yOiAjMjQyNDI0O1xufVxuLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIyYmI1YjtcbiAgY29sb3I6ICMyNDI0MjQ7XG59XG4uYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLndhcm5pbmcgLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7XG4gIGNvbG9yOiAjMjQyNDI0O1xufVxuLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAud2FybmluZyAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC53YXJuaW5nIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLndhcm5pbmcgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAud2FybmluZyAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjOGIwMDtcbiAgY29sb3I6ICMyNDI0MjQ7XG59XG4uYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b24sIC5idXR0b24tZ3JvdXAuYWxlcnQgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuYWxlcnQgLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7XG4gIGNvbG9yOiAjMjQyNDI0O1xufVxuLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmFsZXJ0IC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmFsZXJ0IC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbi1ncm91cC5hbGVydCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5hbGVydCAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E1M2IyYTtcbiAgY29sb3I6ICMyNDI0MjQ7XG59XG4uYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmJ1dHRvbi1ncm91cC53cC1ibG9jay1idXR0b25fX2xpbmsgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93IC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYnV0dG9uLWdyb3VwLndwLWJsb2NrLWJ1dHRvbl9fbGluayAud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b25bZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmJ1dHRvbi1ncm91cC53cC1ibG9jay1idXR0b25fX2xpbmsgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93IC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYnV0dG9uLWdyb3VwLndwLWJsb2NrLWJ1dHRvbl9fbGluayAud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b25bZGlzYWJsZWRdOmZvY3VzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b246aG92ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYnV0dG9uLWdyb3VwLndwLWJsb2NrLWJ1dHRvbl9fbGluayAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5ob2xsb3cgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5idXR0b24tZ3JvdXAud3AtYmxvY2stYnV0dG9uX19saW5rIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b246Zm9jdXMsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYnV0dG9uLWdyb3VwLndwLWJsb2NrLWJ1dHRvbl9fbGluayAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5ob2xsb3cgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5idXR0b24tZ3JvdXAud3AtYmxvY2stYnV0dG9uX19saW5rIC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xufVxuLmJ1dHRvbi1ncm91cC5ob2xsb3cucHJpbWFyeSAuYnV0dG9uLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmJ1dHRvbi1ncm91cC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluayAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5wcmltYXJ5IC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmhvbGxvdy5wcmltYXJ5IC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYnV0dG9uLWdyb3VwLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rIC53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24tZ3JvdXAuaG9sbG93LnByaW1hcnkgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5ob2xsb3cucHJpbWFyeSAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cucHJpbWFyeSAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5wcmltYXJ5IC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5wcmltYXJ5IC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93LnByaW1hcnkgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ucHJpbWFyeSwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5idXR0b24tZ3JvdXAud3AtYmxvY2stYnV0dG9uX19saW5rIC5idXR0b24ucHJpbWFyeSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLndwLWJsb2NrLWJ1dHRvbiAucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5ob2xsb3cgLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmJ1dHRvbi1ncm91cC53cC1ibG9jay1idXR0b25fX2xpbmsgLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ucHJpbWFyeVtkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ucHJpbWFyeS5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5wcmltYXJ5LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnByaW1hcnlbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzI0MjQyNDtcbiAgY29sb3I6ICMyNDI0MjQ7XG59XG4uYnV0dG9uLWdyb3VwLmhvbGxvdy5wcmltYXJ5IC5idXR0b246aG92ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYnV0dG9uLWdyb3VwLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93LnByaW1hcnkgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93LnByaW1hcnkgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5idXR0b24tZ3JvdXAucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbmsgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cucHJpbWFyeSAuYnV0dG9uOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmJ1dHRvbi1ncm91cC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluayAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5wcmltYXJ5IC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmhvbGxvdy5wcmltYXJ5IC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYnV0dG9uLWdyb3VwLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rIC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ucHJpbWFyeTpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5idXR0b24tZ3JvdXAud3AtYmxvY2stYnV0dG9uX19saW5rIC5idXR0b24ucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLndwLWJsb2NrLWJ1dHRvbiAucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5ob2xsb3cgLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmJ1dHRvbi1ncm91cC53cC1ibG9jay1idXR0b25fX2xpbmsgLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnByaW1hcnk6Zm9jdXMsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYnV0dG9uLWdyb3VwLndwLWJsb2NrLWJ1dHRvbl9fbGluayAuYnV0dG9uLnByaW1hcnk6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC53cC1ibG9jay1idXR0b24gLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93IC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5idXR0b24tZ3JvdXAud3AtYmxvY2stYnV0dG9uX19saW5rIC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzEyMTIxMjtcbiAgY29sb3I6ICMxMjEyMTI7XG59XG4uYnV0dG9uLWdyb3VwLmhvbGxvdy5zZWNvbmRhcnkgLmJ1dHRvbiwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluayAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zZWNvbmRhcnkgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93LnNlY29uZGFyeSAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rIC53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24tZ3JvdXAuaG9sbG93LnNlY29uZGFyeSAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zZWNvbmRhcnkgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93LnNlY29uZGFyeSAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zZWNvbmRhcnkgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93LnNlY29uZGFyeSAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zZWNvbmRhcnkgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc2Vjb25kYXJ5LCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmJ1dHRvbi1ncm91cC53cC1ibG9jay1idXR0b25fX2xpbmsgLmJ1dHRvbi5zZWNvbmRhcnksIC5idXR0b24tZ3JvdXAuaG9sbG93IC53cC1ibG9jay1idXR0b24gLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5ob2xsb3cgLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYnV0dG9uLWdyb3VwLndwLWJsb2NrLWJ1dHRvbl9fbGluayAuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNGN0Y3Rjc7XG4gIGNvbG9yOiAjRjdGN0Y3O1xufVxuLmJ1dHRvbi1ncm91cC5ob2xsb3cuc2Vjb25kYXJ5IC5idXR0b246aG92ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbmsgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc2Vjb25kYXJ5IC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zZWNvbmRhcnkgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluayAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zZWNvbmRhcnkgLmJ1dHRvbjpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluayAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zZWNvbmRhcnkgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93LnNlY29uZGFyeSAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rIC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc2Vjb25kYXJ5OmhvdmVyLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmJ1dHRvbi1ncm91cC53cC1ibG9jay1idXR0b25fX2xpbmsgLmJ1dHRvbi5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC53cC1ibG9jay1idXR0b24gLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5ob2xsb3cgLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYnV0dG9uLWdyb3VwLndwLWJsb2NrLWJ1dHRvbl9fbGluayAuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zZWNvbmRhcnk6Zm9jdXMsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYnV0dG9uLWdyb3VwLndwLWJsb2NrLWJ1dHRvbl9fbGluayAuYnV0dG9uLnNlY29uZGFyeTpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLndwLWJsb2NrLWJ1dHRvbiAuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5idXR0b24tZ3JvdXAud3AtYmxvY2stYnV0dG9uX19saW5rIC5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjN2M3YzdjO1xuICBjb2xvcjogIzdjN2M3Yztcbn1cbi5idXR0b24tZ3JvdXAuaG9sbG93LnN1Y2Nlc3MgLmJ1dHRvbiwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5idXR0b24tZ3JvdXAuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbmsgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc3VjY2VzcyAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5ob2xsb3cuc3VjY2VzcyAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmJ1dHRvbi1ncm91cC5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluayAud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zdWNjZXNzIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93LnN1Y2Nlc3MgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93LnN1Y2Nlc3MgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc3VjY2VzcyAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc3VjY2VzcyAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zdWNjZXNzIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnN1Y2Nlc3MsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYnV0dG9uLWdyb3VwLndwLWJsb2NrLWJ1dHRvbl9fbGluayAuYnV0dG9uLnN1Y2Nlc3MsIC5idXR0b24tZ3JvdXAuaG9sbG93IC53cC1ibG9jay1idXR0b24gLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93IC5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5idXR0b24tZ3JvdXAud3AtYmxvY2stYnV0dG9uX19saW5rIC5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zdWNjZXNzLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnN1Y2Nlc3NbZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc3VjY2Vzc1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc3VjY2Vzcy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMzYWRiNzY7XG4gIGNvbG9yOiAjM2FkYjc2O1xufVxuLmJ1dHRvbi1ncm91cC5ob2xsb3cuc3VjY2VzcyAuYnV0dG9uOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmJ1dHRvbi1ncm91cC5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluayAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zdWNjZXNzIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zdWNjZXNzIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYnV0dG9uLWdyb3VwLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93LnN1Y2Nlc3MgLmJ1dHRvbjpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5idXR0b24tZ3JvdXAuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbmsgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc3VjY2VzcyAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5ob2xsb3cuc3VjY2VzcyAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmJ1dHRvbi1ncm91cC5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluayAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnN1Y2Nlc3M6aG92ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYnV0dG9uLWdyb3VwLndwLWJsb2NrLWJ1dHRvbl9fbGluayAuYnV0dG9uLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC53cC1ibG9jay1idXR0b24gLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93IC5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5idXR0b24tZ3JvdXAud3AtYmxvY2stYnV0dG9uX19saW5rIC5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zdWNjZXNzOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmJ1dHRvbi1ncm91cC53cC1ibG9jay1idXR0b25fX2xpbmsgLmJ1dHRvbi5zdWNjZXNzOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAud3AtYmxvY2stYnV0dG9uIC5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYnV0dG9uLWdyb3VwLndwLWJsb2NrLWJ1dHRvbl9fbGluayAuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMxNTc1Mzk7XG4gIGNvbG9yOiAjMTU3NTM5O1xufVxuLmJ1dHRvbi1ncm91cC5ob2xsb3cud2FybmluZyAuYnV0dG9uLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmJ1dHRvbi1ncm91cC53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluayAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy53YXJuaW5nIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmhvbGxvdy53YXJuaW5nIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYnV0dG9uLWdyb3VwLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rIC53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24tZ3JvdXAuaG9sbG93Lndhcm5pbmcgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5ob2xsb3cud2FybmluZyAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cud2FybmluZyAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy53YXJuaW5nIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy53YXJuaW5nIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93Lndhcm5pbmcgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ud2FybmluZywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5idXR0b24tZ3JvdXAud3AtYmxvY2stYnV0dG9uX19saW5rIC5idXR0b24ud2FybmluZywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLndwLWJsb2NrLWJ1dHRvbiAud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5ob2xsb3cgLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmJ1dHRvbi1ncm91cC53cC1ibG9jay1idXR0b25fX2xpbmsgLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ud2FybmluZ1tkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ud2FybmluZy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi53YXJuaW5nLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLndhcm5pbmdbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmYWUwMDtcbiAgY29sb3I6ICNmZmFlMDA7XG59XG4uYnV0dG9uLWdyb3VwLmhvbGxvdy53YXJuaW5nIC5idXR0b246aG92ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYnV0dG9uLWdyb3VwLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93Lndhcm5pbmcgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93Lndhcm5pbmcgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5idXR0b24tZ3JvdXAud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbmsgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cud2FybmluZyAuYnV0dG9uOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmJ1dHRvbi1ncm91cC53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluayAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy53YXJuaW5nIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmhvbGxvdy53YXJuaW5nIC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYnV0dG9uLWdyb3VwLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rIC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ud2FybmluZzpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5idXR0b24tZ3JvdXAud3AtYmxvY2stYnV0dG9uX19saW5rIC5idXR0b24ud2FybmluZzpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLndwLWJsb2NrLWJ1dHRvbiAud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5ob2xsb3cgLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmJ1dHRvbi1ncm91cC53cC1ibG9jay1idXR0b25fX2xpbmsgLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLndhcm5pbmc6Zm9jdXMsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYnV0dG9uLWdyb3VwLndwLWJsb2NrLWJ1dHRvbl9fbGluayAuYnV0dG9uLndhcm5pbmc6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC53cC1ibG9jay1idXR0b24gLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93IC53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5idXR0b24tZ3JvdXAud3AtYmxvY2stYnV0dG9uX19saW5rIC53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzgwNTcwMDtcbiAgY29sb3I6ICM4MDU3MDA7XG59XG4uYnV0dG9uLWdyb3VwLmhvbGxvdy5hbGVydCAuYnV0dG9uLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmJ1dHRvbi1ncm91cC5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbmsgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuYWxlcnQgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93LmFsZXJ0IC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYnV0dG9uLWdyb3VwLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluayAud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5hbGVydCAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5hbGVydCAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuYWxlcnQgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuYWxlcnQgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93LmFsZXJ0IC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93LmFsZXJ0IC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmFsZXJ0LCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmJ1dHRvbi1ncm91cC53cC1ibG9jay1idXR0b25fX2xpbmsgLmJ1dHRvbi5hbGVydCwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLndwLWJsb2NrLWJ1dHRvbiAuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93IC5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYnV0dG9uLWdyb3VwLndwLWJsb2NrLWJ1dHRvbl9fbGluayAuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmFsZXJ0LmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmFsZXJ0W2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5hbGVydC5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5hbGVydFtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uYWxlcnQuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uYWxlcnRbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjNGIzNztcbiAgY29sb3I6ICNjYzRiMzc7XG59XG4uYnV0dG9uLWdyb3VwLmhvbGxvdy5hbGVydCAuYnV0dG9uOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmJ1dHRvbi1ncm91cC5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbmsgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuYWxlcnQgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93LmFsZXJ0IC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYnV0dG9uLWdyb3VwLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluayAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5hbGVydCAuYnV0dG9uOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmJ1dHRvbi1ncm91cC5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbmsgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cuYWxlcnQgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93LmFsZXJ0IC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYnV0dG9uLWdyb3VwLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluayAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmFsZXJ0OmhvdmVyLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmJ1dHRvbi1ncm91cC53cC1ibG9jay1idXR0b25fX2xpbmsgLmJ1dHRvbi5hbGVydDpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLndwLWJsb2NrLWJ1dHRvbiAuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93IC5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYnV0dG9uLWdyb3VwLndwLWJsb2NrLWJ1dHRvbl9fbGluayAuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmFsZXJ0OmZvY3VzLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmJ1dHRvbi1ncm91cC53cC1ibG9jay1idXR0b25fX2xpbmsgLmJ1dHRvbi5hbGVydDpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLndwLWJsb2NrLWJ1dHRvbiAuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93IC5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYnV0dG9uLWdyb3VwLndwLWJsb2NrLWJ1dHRvbl9fbGluayAuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjNjcyNTFhO1xuICBjb2xvcjogIzY3MjUxYTtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5jbGVhciAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5jbGVhciAud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmNsZWFyIC53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMge1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuY2xlYXIgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmNsZWFyIC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIucHJpbWFyeSAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnByaW1hcnkgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuY2xlYXIucHJpbWFyeSAud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnByaW1hcnkgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5jbGVhci5wcmltYXJ5IC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnByaW1hcnkgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci5wcmltYXJ5IC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnByaW1hcnkgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhci5wcmltYXJ5IC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24ucHJpbWFyeSwgLmJ1dHRvbi1ncm91cC5jbGVhciAud3AtYmxvY2stYnV0dG9uIC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmNsZWFyIC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGNvbG9yOiAjMjQyNDI0O1xufVxuLmJ1dHRvbi1ncm91cC5jbGVhci5wcmltYXJ5IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIucHJpbWFyeSAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5jbGVhci5wcmltYXJ5IC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIucHJpbWFyeSAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnByaW1hcnkgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuY2xlYXIucHJpbWFyeSAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24ucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAud3AtYmxvY2stYnV0dG9uIC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmNsZWFyIC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnByaW1hcnk6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLndwLWJsb2NrLWJ1dHRvbiAucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5jbGVhciAucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICBjb2xvcjogIzEyMTIxMjtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIuc2Vjb25kYXJ5IC5idXR0b24sIC5idXR0b24tZ3JvdXAuY2xlYXIuc2Vjb25kYXJ5IC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmNsZWFyLnNlY29uZGFyeSAud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnNlY29uZGFyeSAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnNlY29uZGFyeSAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhci5zZWNvbmRhcnkgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci5zZWNvbmRhcnkgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIuc2Vjb25kYXJ5IC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIuc2Vjb25kYXJ5IC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc2Vjb25kYXJ5LCAuYnV0dG9uLWdyb3VwLmNsZWFyIC53cC1ibG9jay1idXR0b24gLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5jbGVhciAuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnNlY29uZGFyeS5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnNlY29uZGFyeVtkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zZWNvbmRhcnlbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc2Vjb25kYXJ5LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGNvbG9yOiAjRjdGN0Y3O1xufVxuLmJ1dHRvbi1ncm91cC5jbGVhci5zZWNvbmRhcnkgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci5zZWNvbmRhcnkgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuY2xlYXIuc2Vjb25kYXJ5IC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIuc2Vjb25kYXJ5IC5idXR0b246Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIuc2Vjb25kYXJ5IC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmNsZWFyLnNlY29uZGFyeSAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC53cC1ibG9jay1idXR0b24gLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5jbGVhciAuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnNlY29uZGFyeTpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciAud3AtYmxvY2stYnV0dG9uIC5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuY2xlYXIgLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICBjb2xvcjogIzdjN2M3Yztcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIuc3VjY2VzcyAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnN1Y2Nlc3MgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuY2xlYXIuc3VjY2VzcyAud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnN1Y2Nlc3MgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5jbGVhci5zdWNjZXNzIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnN1Y2Nlc3MgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci5zdWNjZXNzIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnN1Y2Nlc3MgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhci5zdWNjZXNzIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc3VjY2VzcywgLmJ1dHRvbi1ncm91cC5jbGVhciAud3AtYmxvY2stYnV0dG9uIC5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmNsZWFyIC5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGNvbG9yOiAjM2FkYjc2O1xufVxuLmJ1dHRvbi1ncm91cC5jbGVhci5zdWNjZXNzIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIuc3VjY2VzcyAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5jbGVhci5zdWNjZXNzIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIuc3VjY2VzcyAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnN1Y2Nlc3MgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuY2xlYXIuc3VjY2VzcyAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAud3AtYmxvY2stYnV0dG9uIC5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmNsZWFyIC5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnN1Y2Nlc3M6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLndwLWJsb2NrLWJ1dHRvbiAuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5jbGVhciAuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICBjb2xvcjogIzE1NzUzOTtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIud2FybmluZyAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmNsZWFyLndhcm5pbmcgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuY2xlYXIud2FybmluZyAud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLWdyb3VwLmNsZWFyLndhcm5pbmcgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5jbGVhci53YXJuaW5nIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyLndhcm5pbmcgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci53YXJuaW5nIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLndhcm5pbmcgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhci53YXJuaW5nIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24ud2FybmluZywgLmJ1dHRvbi1ncm91cC5jbGVhciAud3AtYmxvY2stYnV0dG9uIC53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmNsZWFyIC53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGNvbG9yOiAjZmZhZTAwO1xufVxuLmJ1dHRvbi1ncm91cC5jbGVhci53YXJuaW5nIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIud2FybmluZyAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5jbGVhci53YXJuaW5nIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIud2FybmluZyAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyLndhcm5pbmcgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuY2xlYXIud2FybmluZyAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24ud2FybmluZzpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAud3AtYmxvY2stYnV0dG9uIC53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmNsZWFyIC53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLndhcm5pbmc6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLndwLWJsb2NrLWJ1dHRvbiAud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5jbGVhciAud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICBjb2xvcjogIzgwNTcwMDtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIuYWxlcnQgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5jbGVhci5hbGVydCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5jbGVhci5hbGVydCAud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLWdyb3VwLmNsZWFyLmFsZXJ0IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIuYWxlcnQgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuY2xlYXIuYWxlcnQgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci5hbGVydCAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci5hbGVydCAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyLmFsZXJ0IC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uYWxlcnQsIC5idXR0b24tZ3JvdXAuY2xlYXIgLndwLWJsb2NrLWJ1dHRvbiAuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuY2xlYXIgLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmFsZXJ0LmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uYWxlcnRbZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uYWxlcnQuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5hbGVydFtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5hbGVydC5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmFsZXJ0W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGNvbG9yOiAjY2M0YjM3O1xufVxuLmJ1dHRvbi1ncm91cC5jbGVhci5hbGVydCAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLmFsZXJ0IC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmNsZWFyLmFsZXJ0IC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIuYWxlcnQgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhci5hbGVydCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5jbGVhci5hbGVydCAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uYWxlcnQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLndwLWJsb2NrLWJ1dHRvbiAuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuY2xlYXIgLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmFsZXJ0OmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC53cC1ibG9jay1idXR0b24gLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmNsZWFyIC5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICBjb2xvcjogIzY3MjUxYTtcbn1cbi5idXR0b24tZ3JvdXAubm8tZ2FwcyAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLm5vLWdhcHMgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAubm8tZ2FwcyAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC4xcmVtO1xufVxuLmJ1dHRvbi1ncm91cC5uby1nYXBzIC5idXR0b24gKyAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLm5vLWdhcHMgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rICsgLmJ1dHRvbiwgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLm5vLWdhcHMgLndwLWJsb2NrLWJ1dHRvbl9fbGluayArIC5idXR0b24sIC5idXR0b24tZ3JvdXAubm8tZ2FwcyAud3AtYmxvY2stYnV0dG9uIC5idXR0b24gKyAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAubm8tZ2FwcyAuYnV0dG9uICsgLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi1ncm91cC5uby1nYXBzIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluayArIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5uby1nYXBzIC53cC1ibG9jay1idXR0b25fX2xpbmsgKyAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ1dHRvbi1ncm91cC5zdGFja2VkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSB7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cbi5idXR0b24tZ3JvdXAuc3RhY2tlZCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuc3RhY2tlZCAud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0gLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0gLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICBmbGV4OiAwIDAgMTAwJTtcbn1cbi5idXR0b24tZ3JvdXAuc3RhY2tlZCAuYnV0dG9uOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6bGFzdC1jaGlsZCwgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnN0YWNrZWQgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIC5idXR0b246bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6bGFzdC1jaGlsZCwgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIC53cC1ibG9jay1idXR0b25fX2xpbms6bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0gLmJ1dHRvbjpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6bGFzdC1jaGlsZCwgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAud3AtYmxvY2stYnV0dG9uX19saW5rOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLmJ1dHRvbi1ncm91cC5zdGFja2VkLmV4cGFuZGVkIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC5leHBhbmRlZCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5zdGFja2VkLmV4cGFuZGVkIC53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCAud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gIGZsZXg6IDEgMSAwcHg7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0gLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtLmV4cGFuZGVkIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtLmV4cGFuZGVkIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmNhbGxvdXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgcGFkZGluZzogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgzNiwgMzYsIDM2LCAwLjI1KTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGNvbG9yOiAjNDI0QTU1O1xufVxuLmNhbGxvdXQgPiA6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLmNhbGxvdXQgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uY2FsbG91dC5wcmltYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RlZGVkZTtcbiAgY29sb3I6ICM0MjRBNTU7XG59XG4uY2FsbG91dC5zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBjb2xvcjogIzQyNEE1NTtcbn1cbi5jYWxsb3V0LnN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTFmYWVhO1xuICBjb2xvcjogIzQyNEE1NTtcbn1cbi5jYWxsb3V0Lndhcm5pbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmM2Q5O1xuICBjb2xvcjogIzQyNEE1NTtcbn1cbi5jYWxsb3V0LmFsZXJ0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZTRlMTtcbiAgY29sb3I6ICM0MjRBNTU7XG59XG4uY2FsbG91dC5zbWFsbCB7XG4gIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG59XG4uY2FsbG91dC5sYXJnZSB7XG4gIHBhZGRpbmctdG9wOiAzcmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgcGFkZGluZy1sZWZ0OiAzcmVtO1xufVxuXG4uY2FyZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXgtZ3JvdzogMTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0UyRTRFNztcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6ICM0MjRBNTU7XG59XG4uY2FyZCA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtZGl2aWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICBwYWRkaW5nOiAxcmVtO1xuICBiYWNrZ3JvdW5kOiAjRTJFNEU3O1xufVxuLmNhcmQtZGl2aWRlciA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtc2VjdGlvbiB7XG4gIGZsZXg6IDEgMCBhdXRvO1xuICBwYWRkaW5nOiAxcmVtO1xufVxuLmNhcmQtc2VjdGlvbiA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtaW1hZ2Uge1xuICBtaW4taGVpZ2h0OiAxcHg7XG59XG5cbi5jbG9zZS1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xuICBjb2xvcjogI0FCQUVCNDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAuY2xvc2UtYnV0dG9uIHtcbiAgb3V0bGluZTogMDtcbn1cbi5jbG9zZS1idXR0b246aG92ZXIsIC5jbG9zZS1idXR0b246Zm9jdXMge1xuICBjb2xvcjogIzI0MjQyNDtcbn1cbi5jbG9zZS1idXR0b24uc21hbGwge1xuICByaWdodDogMC42NnJlbTtcbiAgdG9wOiAwLjMzZW07XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uY2xvc2UtYnV0dG9uLCAuY2xvc2UtYnV0dG9uLm1lZGl1bSB7XG4gIHJpZ2h0OiAxcmVtO1xuICB0b3A6IDAuNXJlbTtcbiAgZm9udC1zaXplOiAyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4ubWVudSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdIC5tZW51IGxpIHtcbiAgb3V0bGluZTogMDtcbn1cbi5tZW51IGEsXG4ubWVudSAuYnV0dG9uLFxuLm1lbnUgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLFxuLndwLWJsb2NrLWJ1dHRvbiAubWVudSAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtO1xufVxuLm1lbnUgaW5wdXQsXG4ubWVudSBzZWxlY3QsXG4ubWVudSBhLFxuLm1lbnUgYnV0dG9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5tZW51IGlucHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLm1lbnUsIC5tZW51Lmhvcml6b250YWwge1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG59XG4ubWVudS52ZXJ0aWNhbCB7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuLm1lbnUuZXhwYW5kZWQgbGkge1xuICBmbGV4OiAxIDEgMHB4O1xufVxuLm1lbnUuc2ltcGxlIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5tZW51LnNpbXBsZSBsaSArIGxpIHtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG59XG4ubWVudS5zaW1wbGUgYSB7XG4gIHBhZGRpbmc6IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVudS5tZWRpdW0taG9yaXpvbnRhbCB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbiAgLm1lbnUubWVkaXVtLXZlcnRpY2FsIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG4gIC5tZW51Lm1lZGl1bS1leHBhbmRlZCBsaSB7XG4gICAgZmxleDogMSAxIDBweDtcbiAgfVxuICAubWVudS5tZWRpdW0tc2ltcGxlIGxpIHtcbiAgICBmbGV4OiAxIDEgMHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWVudS5sYXJnZS1ob3Jpem9udGFsIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAubWVudS5sYXJnZS12ZXJ0aWNhbCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuICAubWVudS5sYXJnZS1leHBhbmRlZCBsaSB7XG4gICAgZmxleDogMSAxIDBweDtcbiAgfVxuICAubWVudS5sYXJnZS1zaW1wbGUgbGkge1xuICAgIGZsZXg6IDEgMSAwcHg7XG4gIH1cbn1cbi5tZW51Lm5lc3RlZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG59XG4ubWVudS5pY29ucyBhIHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5tZW51Lmljb24tdG9wIGEsIC5tZW51Lmljb24tcmlnaHQgYSwgLm1lbnUuaWNvbi1ib3R0b20gYSwgLm1lbnUuaWNvbi1sZWZ0IGEge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLm1lbnUuaWNvbi1sZWZ0IGxpIGEge1xuICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG59XG4ubWVudS5pY29uLWxlZnQgbGkgYSBpbWcsXG4ubWVudS5pY29uLWxlZnQgbGkgYSBpLFxuLm1lbnUuaWNvbi1sZWZ0IGxpIGEgc3ZnIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtO1xufVxuLm1lbnUuaWNvbi1yaWdodCBsaSBhIHtcbiAgZmxleC1mbG93OiByb3cgbm93cmFwO1xufVxuLm1lbnUuaWNvbi1yaWdodCBsaSBhIGltZyxcbi5tZW51Lmljb24tcmlnaHQgbGkgYSBpLFxuLm1lbnUuaWNvbi1yaWdodCBsaSBhIHN2ZyB7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xufVxuLm1lbnUuaWNvbi10b3AgbGkgYSB7XG4gIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbn1cbi5tZW51Lmljb24tdG9wIGxpIGEgaW1nLFxuLm1lbnUuaWNvbi10b3AgbGkgYSBpLFxuLm1lbnUuaWNvbi10b3AgbGkgYSBzdmcge1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4ubWVudS5pY29uLWJvdHRvbSBsaSBhIHtcbiAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xufVxuLm1lbnUuaWNvbi1ib3R0b20gbGkgYSBpbWcsXG4ubWVudS5pY29uLWJvdHRvbSBsaSBhIGksXG4ubWVudS5pY29uLWJvdHRvbSBsaSBhIHN2ZyB7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5tZW51IC5pcy1hY3RpdmUgPiBhIHtcbiAgYmFja2dyb3VuZDogIzI0MjQyNDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4ubWVudSAuYWN0aXZlID4gYSB7XG4gIGJhY2tncm91bmQ6ICMyNDI0MjQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLm1lbnUuYWxpZ24tbGVmdCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cbi5tZW51LmFsaWduLXJpZ2h0IGxpIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cbi5tZW51LmFsaWduLXJpZ2h0IGxpIC5zdWJtZW51IGxpIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuLm1lbnUuYWxpZ24tcmlnaHQudmVydGljYWwgbGkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG4ubWVudS5hbGlnbi1yaWdodC52ZXJ0aWNhbCBsaSAuc3VibWVudSBsaSB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLm1lbnUuYWxpZ24tcmlnaHQgLm5lc3RlZCB7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4ubWVudS5hbGlnbi1jZW50ZXIgbGkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi5tZW51LmFsaWduLWNlbnRlciBsaSAuc3VibWVudSBsaSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cbi5tZW51IC5tZW51LXRleHQge1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLm1lbnUtY2VudGVyZWQgPiAubWVudSB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLm1lbnUtY2VudGVyZWQgPiAubWVudSBsaSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLm1lbnUtY2VudGVyZWQgPiAubWVudSBsaSAuc3VibWVudSBsaSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cblxuLm5vLWpzIFtkYXRhLXJlc3BvbnNpdmUtbWVudV0gdWwge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubWVudS1pY29uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDE2cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5tZW51LWljb246OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGJveC1zaGFkb3c6IDAgN3B4IDAgI0ZGRkZGRiwgMCAxNHB4IDAgI0ZGRkZGRjtcbiAgY29udGVudDogXCJcIjtcbn1cbi5tZW51LWljb246aG92ZXI6OmFmdGVyIHtcbiAgYmFja2dyb3VuZDogI0UyRTRFNztcbiAgYm94LXNoYWRvdzogMCA3cHggMCAjRTJFNEU3LCAwIDE0cHggMCAjRTJFNEU3O1xufVxuXG4ubWVudS1pY29uLmRhcmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMTZweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLm1lbnUtaWNvbi5kYXJrOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMnB4O1xuICBiYWNrZ3JvdW5kOiAjMjQyNDI0O1xuICBib3gtc2hhZG93OiAwIDdweCAwICMyNDI0MjQsIDAgMTRweCAwICMyNDI0MjQ7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG4ubWVudS1pY29uLmRhcms6aG92ZXI6OmFmdGVyIHtcbiAgYmFja2dyb3VuZDogI0FCQUVCNDtcbiAgYm94LXNoYWRvdzogMCA3cHggMCAjQUJBRUI0LCAwIDE0cHggMCAjQUJBRUI0O1xufVxuXG4uaXMtZHJpbGxkb3duIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLmlzLWRyaWxsZG93biBsaSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmlzLWRyaWxsZG93bi5hbmltYXRlLWhlaWdodCB7XG4gIHRyYW5zaXRpb246IGhlaWdodCAwLjVzO1xufVxuXG4uZHJpbGxkb3duIGEge1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbn1cbi5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDEwMCU7XG4gIHotaW5kZXg6IC0xO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhcjtcbn1cbi5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51LmlzLWFjdGl2ZSB7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xufVxuLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUuaXMtY2xvc2luZyB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbn1cbi5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51IGEge1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbn1cbi5kcmlsbGRvd24gLm5lc3RlZC5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4uZHJpbGxkb3duIC5kcmlsbGRvd24tc3VibWVudS1jb3Zlci1wcmV2aW91cyB7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG59XG4uZHJpbGxkb3duIC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMyNDI0MjQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6IC02cHg7XG4gIHJpZ2h0OiAxcmVtO1xufVxuLmRyaWxsZG93bi5hbGlnbi1sZWZ0IC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzFCNEU3NDtcbiAgcmlnaHQ6IDFyZW07XG4gIGxlZnQ6IGF1dG87XG59XG4uZHJpbGxkb3duLmFsaWduLXJpZ2h0IC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzFCNEU3NCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDFyZW07XG59XG4uZHJpbGxkb3duIC5qcy1kcmlsbGRvd24tYmFjayA+IGE6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzI0MjQyNCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07XG59XG5cbi5kcm9wZG93bi1wYW5lIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDMwMHB4O1xuICBwYWRkaW5nOiAxcmVtO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJvcmRlcjogMXB4IHNvbGlkICNFMkU0RTc7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbi5kcm9wZG93bi1wYW5lLmlzLW9wZW5pbmcge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5kcm9wZG93bi1wYW5lLmlzLW9wZW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLmRyb3Bkb3duLXBhbmUudGlueSB7XG4gIHdpZHRoOiAxMDBweDtcbn1cblxuLmRyb3Bkb3duLXBhbmUuc21hbGwge1xuICB3aWR0aDogMjAwcHg7XG59XG5cbi5kcm9wZG93bi1wYW5lLmxhcmdlIHtcbiAgd2lkdGg6IDQwMHB4O1xufVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMTAwJTtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87XG59XG4uZHJvcGRvd24ubWVudSA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB0b3A6IDEwMCU7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAwO1xufVxuLmRyb3Bkb3duLm1lbnUgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbn1cbi5kcm9wZG93bi5tZW51ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogIzFCNEU3NCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgcmlnaHQ6IDVweDtcbiAgbGVmdDogYXV0bztcbiAgbWFyZ2luLXRvcDogLTNweDtcbn1cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gLmRyb3Bkb3duLm1lbnUgYSB7XG4gIG91dGxpbmU6IDA7XG59XG4uZHJvcGRvd24ubWVudSA+IGxpID4gYSB7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtO1xufVxuLmRyb3Bkb3duLm1lbnUgPiBsaS5pcy1hY3RpdmUgPiBhIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjMjQyNDI0O1xufVxuLm5vLWpzIC5kcm9wZG93bi5tZW51IHVsIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5kcm9wZG93bi5tZW51IC5uZXN0ZWQuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgdG9wOiAwO1xufVxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAxMDAlO1xuICBsZWZ0OiBhdXRvO1xufVxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDEwMCU7XG59XG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICByaWdodDogMTRweDtcbn1cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgNnB4O1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMUI0RTc0IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICByaWdodDogYXV0bztcbiAgbGVmdDogNXB4O1xufVxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgNnB4O1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMUI0RTc0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1ob3Jpem9udGFsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogIzFCNEU3NCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogNXB4O1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogLTNweDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwO1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMTRweDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMUI0RTc0IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDVweDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzFCNEU3NDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjMUI0RTc0IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiA1cHg7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlO1xuICB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IDE0cHg7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMUI0RTc0IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDVweDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMUI0RTc0O1xuICB9XG59XG4uZHJvcGRvd24ubWVudS5hbGlnbi1yaWdodCAuaXMtZHJvcGRvd24tc3VibWVudS5maXJzdC1zdWIge1xuICB0b3A6IDEwMCU7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvO1xufVxuXG4uaXMtZHJvcGRvd24tbWVudS52ZXJ0aWNhbCB7XG4gIHdpZHRoOiAxMDBweDtcbn1cbi5pcy1kcm9wZG93bi1tZW51LnZlcnRpY2FsLmFsaWduLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgYTo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICByaWdodDogNXB4O1xuICBsZWZ0OiBhdXRvO1xuICBtYXJnaW4tdG9wOiAtNnB4O1xufVxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLWlubmVyID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IGF1dG87XG59XG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgcmlnaHQ6IDEwMCU7XG4gIGxlZnQ6IGF1dG87XG59XG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAxMDAlO1xufVxuXG4uaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAxMDAlO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBub25lO1xuICBtaW4td2lkdGg6IDIwMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjRTJFNEU3O1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xufVxuLmRyb3Bkb3duIC5pcy1kcm9wZG93bi1zdWJtZW51IGEge1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbn1cbi5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgcmlnaHQ6IDE0cHg7XG59XG4uaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgNnB4O1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMUI0RTc0IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICByaWdodDogYXV0bztcbiAgbGVmdDogNXB4O1xufVxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMxQjRFNzQ7XG59XG4uaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIG1hcmdpbi10b3A6IC0xcHg7XG59XG4uaXMtZHJvcGRvd24tc3VibWVudSA+IGxpIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uaXMtZHJvcGRvd24tc3VibWVudS5qcy1kcm9wZG93bi1hY3RpdmUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnJlc3BvbnNpdmUtZW1iZWQsXG4uZmxleC12aWRlbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAxLjZyZW07XG4gIHBhZGRpbmctYm90dG9tOiA3NSU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4ucmVzcG9uc2l2ZS1lbWJlZCBpZnJhbWUsXG4ucmVzcG9uc2l2ZS1lbWJlZCBvYmplY3QsXG4ucmVzcG9uc2l2ZS1lbWJlZCBlbWJlZCxcbi5yZXNwb25zaXZlLWVtYmVkIHZpZGVvLFxuLmZsZXgtdmlkZW8gaWZyYW1lLFxuLmZsZXgtdmlkZW8gb2JqZWN0LFxuLmZsZXgtdmlkZW8gZW1iZWQsXG4uZmxleC12aWRlbyB2aWRlbyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLnJlc3BvbnNpdmUtZW1iZWQud2lkZXNjcmVlbixcbi5mbGV4LXZpZGVvLndpZGVzY3JlZW4ge1xuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xufVxuXG4ubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgYmFja2dyb3VuZDogIzI0MjQyNDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4ubGFiZWwucHJpbWFyeSB7XG4gIGJhY2tncm91bmQ6ICMyNDI0MjQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLmxhYmVsLnNlY29uZGFyeSB7XG4gIGJhY2tncm91bmQ6ICNGN0Y3Rjc7XG4gIGNvbG9yOiAjMjQyNDI0O1xufVxuLmxhYmVsLnN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kOiAjM2FkYjc2O1xuICBjb2xvcjogIzI0MjQyNDtcbn1cbi5sYWJlbC53YXJuaW5nIHtcbiAgYmFja2dyb3VuZDogI2ZmYWUwMDtcbiAgY29sb3I6ICMyNDI0MjQ7XG59XG4ubGFiZWwuYWxlcnQge1xuICBiYWNrZ3JvdW5kOiAjY2M0YjM3O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuLm1lZGlhLW9iamVjdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZsZXgtd3JhcDogbm93cmFwO1xufVxuLm1lZGlhLW9iamVjdCBpbWcge1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAubWVkaWEtb2JqZWN0LnN0YWNrLWZvci1zbWFsbCB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG59XG5cbi5tZWRpYS1vYmplY3Qtc2VjdGlvbiB7XG4gIGZsZXg6IDAgMSBhdXRvO1xufVxuLm1lZGlhLW9iamVjdC1zZWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbn1cbi5tZWRpYS1vYmplY3Qtc2VjdGlvbjpsYXN0LWNoaWxkOm5vdCg6bnRoLWNoaWxkKDIpKSB7XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbn1cbi5tZWRpYS1vYmplY3Qtc2VjdGlvbiA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zdGFjay1mb3Itc21hbGwgLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIC5zdGFjay1mb3Itc21hbGwgLm1lZGlhLW9iamVjdC1zZWN0aW9uIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbi5tZWRpYS1vYmplY3Qtc2VjdGlvbi5tYWluLXNlY3Rpb24ge1xuICBmbGV4OiAxIDEgMHB4O1xufVxuXG4uaXMtb2ZmLWNhbnZhcy1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmpzLW9mZi1jYW52YXMtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2UsIHZpc2liaWxpdHkgMC41cyBlYXNlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpO1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uanMtb2ZmLWNhbnZhcy1vdmVybGF5LmlzLXZpc2libGUge1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuLmpzLW9mZi1jYW52YXMtb3ZlcmxheS5pcy1jbG9zYWJsZSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5qcy1vZmYtY2FudmFzLW92ZXJsYXkuaXMtb3ZlcmxheS1hYnNvbHV0ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5qcy1vZmYtY2FudmFzLW92ZXJsYXkuaXMtb3ZlcmxheS1maXhlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbn1cblxuLm9mZi1jYW52YXMtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLm9mZi1jYW52YXMge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEyO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tncm91bmQ6ICNFMkU0RTc7XG59XG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdIC5vZmYtY2FudmFzIHtcbiAgb3V0bGluZTogMDtcbn1cbi5vZmYtY2FudmFzLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gIHotaW5kZXg6IDEyO1xufVxuLm9mZi1jYW52YXMuaXMtY2xvc2VkIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLm9mZi1jYW52YXMuaXMtdHJhbnNpdGlvbi1vdmVybGFwIHtcbiAgei1pbmRleDogMTM7XG59XG4ub2ZmLWNhbnZhcy5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMzYsIDM2LCAzNiwgMC43KTtcbn1cbi5vZmYtY2FudmFzLmlzLW9wZW4ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cbi5vZmYtY2FudmFzLWFic29sdXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgZWFzZTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAjRTJFNEU3O1xufVxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAub2ZmLWNhbnZhcy1hYnNvbHV0ZSB7XG4gIG91dGxpbmU6IDA7XG59XG4ub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy10cmFuc2l0aW9uLXB1c2gge1xuICB6LWluZGV4OiAxMjtcbn1cbi5vZmYtY2FudmFzLWFic29sdXRlLmlzLWNsb3NlZCB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi5vZmYtY2FudmFzLWFic29sdXRlLmlzLXRyYW5zaXRpb24tb3ZlcmxhcCB7XG4gIHotaW5kZXg6IDEzO1xufVxuLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDM2LCAzNiwgMzYsIDAuNyk7XG59XG4ub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy1vcGVuIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG59XG5cbi5wb3NpdGlvbi1sZWZ0IHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHdpZHRoOiAyNTBweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNTBweCk7XG59XG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWxlZnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1MHB4KTtcbn1cbi5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tbGVmdC5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tbGVmdC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI1MHB4KTtcbn1cblxuLnBvc2l0aW9uLWxlZnQuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgLTEzcHggMCAyMHB4IC0xM3B4IHJnYmEoMzYsIDM2LCAzNiwgMC4yNSk7XG59XG5cbi5wb3NpdGlvbi1yaWdodCB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgd2lkdGg6IDI1MHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjUwcHgpO1xufVxuLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1yaWdodCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNTBweCk7XG59XG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXJpZ2h0LmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG59XG5cbi5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi1yaWdodC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNTBweCk7XG59XG5cbi5wb3NpdGlvbi1yaWdodC5pcy10cmFuc2l0aW9uLXB1c2gge1xuICBib3gtc2hhZG93OiBpbnNldCAxM3B4IDAgMjBweCAtMTNweCByZ2JhKDM2LCAzNiwgMzYsIDAuMjUpO1xufVxuXG4ucG9zaXRpb24tdG9wIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgaGVpZ2h0OiAyNTBweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNTBweCk7XG59XG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXRvcCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjUwcHgpO1xufVxuLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi10b3AuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLXRvcC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI1MHB4KTtcbn1cblxuLnBvc2l0aW9uLXRvcC5pcy10cmFuc2l0aW9uLXB1c2gge1xuICBib3gtc2hhZG93OiBpbnNldCAwIC0xM3B4IDIwcHggLTEzcHggcmdiYSgzNiwgMzYsIDM2LCAwLjI1KTtcbn1cblxuLnBvc2l0aW9uLWJvdHRvbSB7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIGhlaWdodDogMjUwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNTBweCk7XG59XG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWJvdHRvbSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNTBweCk7XG59XG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWJvdHRvbS5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tYm90dG9tLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1MHB4KTtcbn1cblxuLnBvc2l0aW9uLWJvdHRvbS5pcy10cmFuc2l0aW9uLXB1c2gge1xuICBib3gtc2hhZG93OiBpbnNldCAwIDEzcHggMjBweCAtMTNweCByZ2JhKDM2LCAzNiwgMzYsIDAuMjUpO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgdHJhbnNmb3JtOiBub25lO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG4ub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy10cmFuc2l0aW9uLW92ZXJsYXAsIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGVhc2U7XG59XG4ub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cbi5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMuaXMtb3BlbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLW1lZGl1bSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtbGVmdCB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1MHB4O1xuICB9XG5cbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tbGVmdDogMjUwcHg7XG4gIH1cblxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtcmlnaHQge1xuICAgIG1hcmdpbi1yaWdodDogMjUwcHg7XG4gIH1cblxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4O1xuICB9XG5cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXRvcCB7XG4gICAgbWFyZ2luLXRvcDogMjUwcHg7XG4gIH1cblxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbWVkaXVtIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogMjUwcHg7XG4gIH1cblxuICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtYm90dG9tIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNTBweDtcbiAgfVxuXG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNTBweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWxlZnQge1xuICAgIG1hcmdpbi1sZWZ0OiAyNTBweDtcbiAgfVxuXG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tbGVmdDogMjUwcHg7XG4gIH1cblxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtcmlnaHQge1xuICAgIG1hcmdpbi1yaWdodDogMjUwcHg7XG4gIH1cblxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1yaWdodDogMjUwcHg7XG4gIH1cblxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtdG9wIHtcbiAgICBtYXJnaW4tdG9wOiAyNTBweDtcbiAgfVxuXG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1sYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi10b3A6IDI1MHB4O1xuICB9XG5cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWJvdHRvbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7XG4gIH1cblxuICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNTBweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtLnBvc2l0aW9uLWxlZnQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtLnBvc2l0aW9uLXJpZ2h0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bS5wb3NpdGlvbi10b3AsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtLnBvc2l0aW9uLWJvdHRvbSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZS5wb3NpdGlvbi1sZWZ0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlLnBvc2l0aW9uLXJpZ2h0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlLnBvc2l0aW9uLXRvcCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZS5wb3NpdGlvbi1ib3R0b20ge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLm9yYml0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ub3JiaXQtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLm9yYml0LXNsaWRlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5vcmJpdC1zbGlkZS5uby1tb3Rpb251aS5pcy1hY3RpdmUge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG59XG5cbi5vcmJpdC1maWd1cmUge1xuICBtYXJnaW46IDA7XG59XG5cbi5vcmJpdC1pbWFnZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcbn1cblxuLm9yYml0LWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzYsIDM2LCAzNiwgMC41KTtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5cbi5vcmJpdC1uZXh0LCAub3JiaXQtcHJldmlvdXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHotaW5kZXg6IDEwO1xuICBwYWRkaW5nOiAxcmVtO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gLm9yYml0LW5leHQsIFtkYXRhLXdoYXRpbnB1dD1tb3VzZV0gLm9yYml0LXByZXZpb3VzIHtcbiAgb3V0bGluZTogMDtcbn1cbi5vcmJpdC1uZXh0OmhvdmVyLCAub3JiaXQtcHJldmlvdXM6aG92ZXIsIC5vcmJpdC1uZXh0OmFjdGl2ZSwgLm9yYml0LXByZXZpb3VzOmFjdGl2ZSwgLm9yYml0LW5leHQ6Zm9jdXMsIC5vcmJpdC1wcmV2aW91czpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4ub3JiaXQtcHJldmlvdXMge1xuICBsZWZ0OiAwO1xufVxuXG4ub3JiaXQtbmV4dCB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwO1xufVxuXG4ub3JiaXQtYnVsbGV0cyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogMC44cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjhyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gLm9yYml0LWJ1bGxldHMge1xuICBvdXRsaW5lOiAwO1xufVxuLm9yYml0LWJ1bGxldHMgYnV0dG9uIHtcbiAgd2lkdGg6IDEuMnJlbTtcbiAgaGVpZ2h0OiAxLjJyZW07XG4gIG1hcmdpbjogMC4xcmVtO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNBQkFFQjQ7XG59XG4ub3JiaXQtYnVsbGV0cyBidXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjQxMjEyO1xufVxuLm9yYml0LWJ1bGxldHMgYnV0dG9uLmlzLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiNDEyMTI7XG59XG5cbi5wYWdpbmF0aW9uIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4ucGFnaW5hdGlvbjo6YmVmb3JlLCAucGFnaW5hdGlvbjo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG4gIGZsZXgtYmFzaXM6IDA7XG4gIG9yZGVyOiAxO1xufVxuLnBhZ2luYXRpb246OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG4ucGFnaW5hdGlvbiBsaSB7XG4gIG1hcmdpbi1yaWdodDogMC4xcmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5wYWdpbmF0aW9uIGxpOmxhc3QtY2hpbGQsIC5wYWdpbmF0aW9uIGxpOmZpcnN0LWNoaWxkIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnBhZ2luYXRpb24gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuLnBhZ2luYXRpb24gYSxcbi5wYWdpbmF0aW9uIGJ1dHRvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwLjNyZW0gMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgY29sb3I6ICMyNDI0MjQ7XG59XG4ucGFnaW5hdGlvbiBhOmhvdmVyLFxuLnBhZ2luYXRpb24gYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI0UyRTRFNztcbn1cbi5wYWdpbmF0aW9uIC5jdXJyZW50IHtcbiAgcGFkZGluZzogMC4zcmVtIDFyZW07XG4gIGJhY2tncm91bmQ6ICMyNDI0MjQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4ucGFnaW5hdGlvbiAuZGlzYWJsZWQge1xuICBwYWRkaW5nOiAwLjNyZW0gMXJlbTtcbiAgY29sb3I6ICNFMkU0RTc7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG4ucGFnaW5hdGlvbiAuZGlzYWJsZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cbi5wYWdpbmF0aW9uIC5lbGxpcHNpczo6YWZ0ZXIge1xuICBwYWRkaW5nOiAwLjNyZW0gMXJlbTtcbiAgY29udGVudDogXCLigKZcIjtcbiAgY29sb3I6ICMyNDI0MjQ7XG59XG5cbi5wYWdpbmF0aW9uLXByZXZpb3VzIGE6OmJlZm9yZSxcbi5wYWdpbmF0aW9uLXByZXZpb3VzLmRpc2FibGVkOjpiZWZvcmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICBjb250ZW50OiBcIsKrXCI7XG59XG5cbi5wYWdpbmF0aW9uLW5leHQgYTo6YWZ0ZXIsXG4ucGFnaW5hdGlvbi1uZXh0LmRpc2FibGVkOjphZnRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgY29udGVudDogXCLCu1wiO1xufVxuXG4ucHJvZ3Jlc3Mge1xuICBoZWlnaHQ6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFMkU0RTc7XG59XG4ucHJvZ3Jlc3MucHJpbWFyeSAucHJvZ3Jlc3MtbWV0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjQyNDI0O1xufVxuLnByb2dyZXNzLnNlY29uZGFyeSAucHJvZ3Jlc3MtbWV0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjdGN0Y3O1xufVxuLnByb2dyZXNzLnN1Y2Nlc3MgLnByb2dyZXNzLW1ldGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNhZGI3Njtcbn1cbi5wcm9ncmVzcy53YXJuaW5nIC5wcm9ncmVzcy1tZXRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7XG59XG4ucHJvZ3Jlc3MuYWxlcnQgLnByb2dyZXNzLW1ldGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGIzNztcbn1cblxuLnByb2dyZXNzLW1ldGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNDI0MjQ7XG59XG5cbi5wcm9ncmVzcy1tZXRlci10ZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLnNsaWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwLjVyZW07XG4gIG1hcmdpbi10b3A6IDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDIuMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNFMkU0RTc7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHRvdWNoLWFjdGlvbjogbm9uZTtcbn1cblxuLnNsaWRlci1maWxsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDAuNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0UyRTRFNztcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG59XG4uc2xpZGVyLWZpbGwuaXMtZHJhZ2dpbmcge1xuICB0cmFuc2l0aW9uOiBhbGwgMHMgbGluZWFyO1xufVxuXG4uc2xpZGVyLWhhbmRsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMS40cmVtO1xuICBoZWlnaHQ6IDEuNHJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI0MjQyNDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xufVxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAuc2xpZGVyLWhhbmRsZSB7XG4gIG91dGxpbmU6IDA7XG59XG4uc2xpZGVyLWhhbmRsZTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxZjFmMWY7XG59XG4uc2xpZGVyLWhhbmRsZS5pcy1kcmFnZ2luZyB7XG4gIHRyYW5zaXRpb246IGFsbCAwcyBsaW5lYXI7XG59XG5cbi5zbGlkZXIuZGlzYWJsZWQsXG4uc2xpZGVyW2Rpc2FibGVkXSB7XG4gIG9wYWNpdHk6IDAuMjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5zbGlkZXIudmVydGljYWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAwLjVyZW07XG4gIGhlaWdodDogMTIuNXJlbTtcbiAgbWFyZ2luOiAwIDEuMjVyZW07XG4gIHRyYW5zZm9ybTogc2NhbGUoMSwgLTEpO1xufVxuLnNsaWRlci52ZXJ0aWNhbCAuc2xpZGVyLWZpbGwge1xuICB0b3A6IDA7XG4gIHdpZHRoOiAwLjVyZW07XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG59XG4uc2xpZGVyLnZlcnRpY2FsIC5zbGlkZXItaGFuZGxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDUwJTtcbiAgd2lkdGg6IDEuNHJlbTtcbiAgaGVpZ2h0OiAxLjRyZW07XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuLnN0aWNreS1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5zdGlja3kge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi5zdGlja3kuaXMtc3R1Y2sge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDU7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnN0aWNreS5pcy1zdHVjay5pcy1hdC10b3Age1xuICB0b3A6IDA7XG59XG4uc3RpY2t5LmlzLXN0dWNrLmlzLWF0LWJvdHRvbSB7XG4gIGJvdHRvbTogMDtcbn1cblxuLnN0aWNreS5pcy1hbmNob3JlZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IGF1dG87XG59XG4uc3RpY2t5LmlzLWFuY2hvcmVkLmlzLWF0LWJvdHRvbSB7XG4gIGJvdHRvbTogMDtcbn1cblxuaHRtbC5pcy1yZXZlYWwtb3BlbiB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXk6IGhpZGRlbjtcbn1cbmh0bWwuaXMtcmV2ZWFsLW9wZW4uemYtaGFzLXNjcm9sbCB7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cbmh0bWwuaXMtcmV2ZWFsLW9wZW4gYm9keSB7XG4gIG92ZXJmbG93LXk6IGhpZGRlbjtcbn1cblxuLnJldmVhbC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwMDU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNDI0MjQ7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi5yZXZlYWwge1xuICB6LWluZGV4OiAxMDA2O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNFMkU0RTc7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAxMDBweDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gLnJldmVhbCB7XG4gIG91dGxpbmU6IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucmV2ZWFsIHtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICB9XG59XG4ucmV2ZWFsIC5jb2x1bW4ge1xuICBtaW4td2lkdGg6IDA7XG59XG4ucmV2ZWFsID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnJldmVhbCB7XG4gICAgd2lkdGg6IDYwMHB4O1xuICAgIG1heC13aWR0aDogMTIwcmVtO1xuICB9XG59XG4ucmV2ZWFsLmNvbGxhcHNlIHtcbiAgcGFkZGluZzogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5yZXZlYWwudGlueSB7XG4gICAgd2lkdGg6IDMwJTtcbiAgICBtYXgtd2lkdGg6IDEyMHJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnJldmVhbC5zbWFsbCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBtYXgtd2lkdGg6IDEyMHJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnJldmVhbC5sYXJnZSB7XG4gICAgd2lkdGg6IDkwJTtcbiAgICBtYXgtd2lkdGg6IDEyMHJlbTtcbiAgfVxufVxuLnJldmVhbC5mdWxsIHtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiBub25lO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAucmV2ZWFsIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG59XG4ucmV2ZWFsLndpdGhvdXQtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbn1cblxuLnN3aXRjaCB7XG4gIGhlaWdodDogMnJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBvdXRsaW5lOiAwO1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLnN3aXRjaC1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnN3aXRjaC1wYWRkbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogNHJlbTtcbiAgaGVpZ2h0OiAycmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiAjRTJFNEU3O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1vdXQ7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuaW5wdXQgKyAuc3dpdGNoLXBhZGRsZSB7XG4gIG1hcmdpbjogMDtcbn1cbi5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwLjI1cmVtO1xuICBsZWZ0OiAwLjI1cmVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEuNXJlbTtcbiAgaGVpZ2h0OiAxLjVyZW07XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLW91dDtcbiAgY29udGVudDogXCJcIjtcbn1cbmlucHV0OmNoZWNrZWQgfiAuc3dpdGNoLXBhZGRsZSB7XG4gIGJhY2tncm91bmQ6ICMyNDI0MjQ7XG59XG5pbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgbGVmdDogMi4yNXJlbTtcbn1cbmlucHV0OmRpc2FibGVkIH4gLnN3aXRjaC1wYWRkbGUge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICBvcGFjaXR5OiAwLjU7XG59XG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdIGlucHV0OmZvY3VzIH4gLnN3aXRjaC1wYWRkbGUge1xuICBvdXRsaW5lOiAwO1xufVxuXG4uc3dpdGNoLWluYWN0aXZlLCAuc3dpdGNoLWFjdGl2ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLnN3aXRjaC1hY3RpdmUge1xuICBsZWZ0OiA4JTtcbiAgZGlzcGxheTogbm9uZTtcbn1cbmlucHV0OmNoZWNrZWQgKyBsYWJlbCA+IC5zd2l0Y2gtYWN0aXZlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5zd2l0Y2gtaW5hY3RpdmUge1xuICByaWdodDogMTUlO1xufVxuaW5wdXQ6Y2hlY2tlZCArIGxhYmVsID4gLnN3aXRjaC1pbmFjdGl2ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zd2l0Y2gudGlueSB7XG4gIGhlaWdodDogMS41cmVtO1xufVxuLnN3aXRjaC50aW55IC5zd2l0Y2gtcGFkZGxlIHtcbiAgd2lkdGg6IDNyZW07XG4gIGhlaWdodDogMS41cmVtO1xuICBmb250LXNpemU6IDFyZW07XG59XG4uc3dpdGNoLnRpbnkgLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgdG9wOiAwLjI1cmVtO1xuICBsZWZ0OiAwLjI1cmVtO1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAxcmVtO1xufVxuLnN3aXRjaC50aW55IGlucHV0OmNoZWNrZWQgfiAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICBsZWZ0OiAxLjc1cmVtO1xufVxuXG4uc3dpdGNoLnNtYWxsIHtcbiAgaGVpZ2h0OiAxLjc1cmVtO1xufVxuLnN3aXRjaC5zbWFsbCAuc3dpdGNoLXBhZGRsZSB7XG4gIHdpZHRoOiAzLjVyZW07XG4gIGhlaWdodDogMS43NXJlbTtcbiAgZm9udC1zaXplOiAxLjJyZW07XG59XG4uc3dpdGNoLnNtYWxsIC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gIHRvcDogMC4yNXJlbTtcbiAgbGVmdDogMC4yNXJlbTtcbiAgd2lkdGg6IDEuMjVyZW07XG4gIGhlaWdodDogMS4yNXJlbTtcbn1cbi5zd2l0Y2guc21hbGwgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gIGxlZnQ6IDJyZW07XG59XG5cbi5zd2l0Y2gubGFyZ2Uge1xuICBoZWlnaHQ6IDIuNXJlbTtcbn1cbi5zd2l0Y2gubGFyZ2UgLnN3aXRjaC1wYWRkbGUge1xuICB3aWR0aDogNXJlbTtcbiAgaGVpZ2h0OiAyLjVyZW07XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xufVxuLnN3aXRjaC5sYXJnZSAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICB0b3A6IDAuMjVyZW07XG4gIGxlZnQ6IDAuMjVyZW07XG4gIHdpZHRoOiAycmVtO1xuICBoZWlnaHQ6IDJyZW07XG59XG4uc3dpdGNoLmxhcmdlIGlucHV0OmNoZWNrZWQgfiAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICBsZWZ0OiAyLjc1cmVtO1xufVxuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxudGhlYWQsXG50Ym9keSxcbnRmb290IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2YyZjJmMjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmc6IDAuOHJlbSAxcmVtIDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG59XG5cbnRoZWFkIHtcbiAgYmFja2dyb3VuZDogI2Y5ZjlmOTtcbiAgY29sb3I6ICM0MjRBNTU7XG59XG5cbnRmb290IHtcbiAgYmFja2dyb3VuZDogI2YyZjJmMjtcbiAgY29sb3I6ICM0MjRBNTU7XG59XG5cbnRoZWFkIHRyLFxudGZvb3QgdHIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cbnRoZWFkIHRoLFxudGhlYWQgdGQsXG50Zm9vdCB0aCxcbnRmb290IHRkIHtcbiAgcGFkZGluZzogMC44cmVtIDFyZW0gMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxudGJvZHkgdGgsXG50Ym9keSB0ZCB7XG4gIHBhZGRpbmc6IDAuOHJlbSAxcmVtIDFyZW07XG59XG5cbnRib2R5IHRyOm50aC1jaGlsZChldmVuKSB7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7XG59XG5cbnRhYmxlLnVuc3RyaXBlZCB0Ym9keSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG59XG50YWJsZS51bnN0cmlwZWQgdGJvZHkgdHIge1xuICBib3JkZXItYm90dG9tOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2YyZjJmMjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgdGFibGUuc3RhY2sgdGhlYWQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgdGFibGUuc3RhY2sgdGZvb3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgdGFibGUuc3RhY2sgdHIsXG50YWJsZS5zdGFjayB0aCxcbnRhYmxlLnN0YWNrIHRkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICB0YWJsZS5zdGFjayB0ZCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxufVxuXG50YWJsZS5zY3JvbGwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG5cbnRhYmxlLmhvdmVyIHRoZWFkIHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNDtcbn1cbnRhYmxlLmhvdmVyIHRmb290IHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VkZWRlZDtcbn1cbnRhYmxlLmhvdmVyIHRib2R5IHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmFmYTtcbn1cbnRhYmxlLmhvdmVyOm5vdCgudW5zdHJpcGVkKSB0cjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZGVkZWQ7XG59XG5cbi50YWJsZS1zY3JvbGwge1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG4udGFicyB7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAxcHggc29saWQgI0UyRTRFNztcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuLnRhYnM6OmJlZm9yZSwgLnRhYnM6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBmbGV4LWJhc2lzOiAwO1xuICBvcmRlcjogMTtcbn1cbi50YWJzOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4udGFicy52ZXJ0aWNhbCA+IGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBub25lO1xuICB3aWR0aDogYXV0bztcbn1cblxuLnRhYnMuc2ltcGxlID4gbGkgPiBhIHtcbiAgcGFkZGluZzogMDtcbn1cbi50YWJzLnNpbXBsZSA+IGxpID4gYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4udGFicy5wcmltYXJ5IHtcbiAgYmFja2dyb3VuZDogIzI0MjQyNDtcbn1cbi50YWJzLnByaW1hcnkgPiBsaSA+IGEge1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi50YWJzLnByaW1hcnkgPiBsaSA+IGE6aG92ZXIsIC50YWJzLnByaW1hcnkgPiBsaSA+IGE6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjMmYyZjJmO1xufVxuXG4udGFicy10aXRsZSB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuLnRhYnMtdGl0bGUgPiBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDEuMjVyZW0gMS41cmVtO1xuICBmb250LXNpemU6IDEuMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAjMjQyNDI0O1xufVxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAudGFicy10aXRsZSA+IGEge1xuICBvdXRsaW5lOiAwO1xufVxuLnRhYnMtdGl0bGUgPiBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgY29sb3I6ICMxZjFmMWY7XG59XG4udGFicy10aXRsZSA+IGE6Zm9jdXMsIC50YWJzLXRpdGxlID4gYVthcmlhLXNlbGVjdGVkPXRydWVdIHtcbiAgYmFja2dyb3VuZDogI0UyRTRFNztcbiAgY29sb3I6ICMyNDI0MjQ7XG59XG5cbi50YWJzLWNvbnRlbnQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjRTJFNEU3O1xuICBib3JkZXItdG9wOiAwO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBjb2xvcjogIzQyNEE1NTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbn1cblxuLnRhYnMtY29udGVudC52ZXJ0aWNhbCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNFMkU0RTc7XG4gIGJvcmRlci1sZWZ0OiAwO1xufVxuXG4udGFicy1wYW5lbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6IDFyZW07XG59XG4udGFicy1wYW5lbC5pcy1hY3RpdmUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnRodW1ibmFpbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXI6IHNvbGlkIDRweCAjRkZGRkZGO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgzNiwgMzYsIDM2LCAwLjIpO1xuICBsaW5lLWhlaWdodDogMDtcbn1cblxuYS50aHVtYm5haWwge1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDIwMG1zIGVhc2Utb3V0O1xufVxuYS50aHVtYm5haWw6aG92ZXIsIGEudGh1bWJuYWlsOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDZweCAxcHggcmdiYSgzNiwgMzYsIDM2LCAwLjUpO1xufVxuYS50aHVtYm5haWwgaW1hZ2Uge1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4udGl0bGUtYmFyIHtcbiAgcGFkZGluZzogMC41cmVtO1xuICBiYWNrZ3JvdW5kOiAjMjQyNDI0O1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLnRpdGxlLWJhciAubWVudS1pY29uIHtcbiAgbWFyZ2luLWxlZnQ6IDAuMjVyZW07XG4gIG1hcmdpbi1yaWdodDogMC4yNXJlbTtcbn1cblxuLnRpdGxlLWJhci1sZWZ0LFxuLnRpdGxlLWJhci1yaWdodCB7XG4gIGZsZXg6IDEgMSAwcHg7XG59XG5cbi50aXRsZS1iYXItcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLnRpdGxlLWJhci10aXRsZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5oYXMtdGlwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggI0FCQUVCNDtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgY3Vyc29yOiBoZWxwO1xufVxuXG4udG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBjYWxjKDEwMCUgKyAwLjY0OTVyZW0pO1xuICB6LWluZGV4OiAxMjAwO1xuICBtYXgtd2lkdGg6IDEwcmVtO1xuICBwYWRkaW5nOiAwLjc1cmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjQyNDI0O1xuICBmb250LXNpemU6IDgwJTtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udG9vbHRpcDo6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLnRvb2x0aXAuYm90dG9tOjpiZWZvcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCAwLjc1cmVtO1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMjQyNDI0O1xuICBib3R0b206IDEwMCU7XG59XG4udG9vbHRpcC5ib3R0b20uYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cbi50b29sdGlwLnRvcDo6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgMC43NXJlbTtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogIzI0MjQyNCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgdG9wOiAxMDAlO1xuICBib3R0b206IGF1dG87XG59XG4udG9vbHRpcC50b3AuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cbi50b29sdGlwLmxlZnQ6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDAuNzVyZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMyNDI0MjQ7XG4gIGxlZnQ6IDEwMCU7XG59XG4udG9vbHRpcC5sZWZ0LmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgYm90dG9tOiBhdXRvO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuLnRvb2x0aXAucmlnaHQ6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDAuNzVyZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMyNDI0MjQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHJpZ2h0OiAxMDAlO1xuICBsZWZ0OiBhdXRvO1xufVxuLnRvb2x0aXAucmlnaHQuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICBib3R0b206IGF1dG87XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG4udG9vbHRpcC5hbGlnbi10b3A6OmJlZm9yZSB7XG4gIGJvdHRvbTogYXV0bztcbiAgdG9wOiAxMCU7XG59XG4udG9vbHRpcC5hbGlnbi1ib3R0b206OmJlZm9yZSB7XG4gIGJvdHRvbTogMTAlO1xuICB0b3A6IGF1dG87XG59XG4udG9vbHRpcC5hbGlnbi1sZWZ0OjpiZWZvcmUge1xuICBsZWZ0OiAxMCU7XG4gIHJpZ2h0OiBhdXRvO1xufVxuLnRvb2x0aXAuYWxpZ24tcmlnaHQ6OmJlZm9yZSB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAxMCU7XG59XG5cbi50b3AtYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMC41cmVtO1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG4udG9wLWJhcixcbi50b3AtYmFyIHVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0UyRTRFNztcbn1cbi50b3AtYmFyIGlucHV0IHtcbiAgbWF4LXdpZHRoOiAyMDBweDtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xufVxuLnRvcC1iYXIgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi50b3AtYmFyIGlucHV0LmJ1dHRvbiwgLnRvcC1iYXIgLndwLWJsb2NrLWJ1dHRvbiBpbnB1dC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLnRvcC1iYXIgaW5wdXQud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgd2lkdGg6IGF1dG87XG59XG4udG9wLWJhciAudG9wLWJhci1sZWZ0LFxuLnRvcC1iYXIgLnRvcC1iYXItcmlnaHQge1xuICBmbGV4OiAwIDAgMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnRvcC1iYXIge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG4gIC50b3AtYmFyIC50b3AtYmFyLWxlZnQge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxuICAudG9wLWJhciAudG9wLWJhci1yaWdodCB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC50b3AtYmFyLnN0YWNrZWQtZm9yLW1lZGl1bSB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG4gIC50b3AtYmFyLnN0YWNrZWQtZm9yLW1lZGl1bSAudG9wLWJhci1sZWZ0LFxuLnRvcC1iYXIuc3RhY2tlZC1mb3ItbWVkaXVtIC50b3AtYmFyLXJpZ2h0IHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSB7XG4gIC50b3AtYmFyLnN0YWNrZWQtZm9yLWxhcmdlIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cbiAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbGFyZ2UgLnRvcC1iYXItbGVmdCxcbi50b3AtYmFyLnN0YWNrZWQtZm9yLWxhcmdlIC50b3AtYmFyLXJpZ2h0IHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLnRvcC1iYXItdGl0bGUge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgbWFyZ2luOiAwLjVyZW0gMXJlbSAwLjVyZW0gMDtcbn1cblxuLnRvcC1iYXItbGVmdCxcbi50b3AtYmFyLXJpZ2h0IHtcbiAgZmxleDogMCAwIGF1dG87XG59XG5cbi5oaWRlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuaGlkZS1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDBlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc2hvdy1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5oaWRlLWZvci1tZWRpdW0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zaG93LWZvci1tZWRpdW0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2hvdy1mb3ItbWVkaXVtLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaGlkZS1mb3ItbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5zaG93LWZvci1sYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1heC13aWR0aDogNzQuOTk4NzVlbSkge1xuICAuaGlkZS1mb3ItbGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNob3ctZm9yLWxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uc2hvdy1mb3Itc3IsXG4uc2hvdy1vbi1mb2N1cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5zaG93LW9uLWZvY3VzOmFjdGl2ZSwgLnNob3ctb24tZm9jdXM6Zm9jdXMge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBjbGlwOiBhdXRvICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWwgIWltcG9ydGFudDtcbn1cblxuLnNob3ctZm9yLWxhbmRzY2FwZSxcbi5oaWRlLWZvci1wb3J0cmFpdCB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4uaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uaGlkZS1mb3ItbGFuZHNjYXBlLFxuLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbi5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4uc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmFsaWduLWxlZnQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG5cbi5hbGlnbi1yaWdodCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5cbi5hbGlnbi1jZW50ZXIge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmFsaWduLWp1c3RpZnkge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi5hbGlnbi1zcGFjZWQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbn1cblxuLmFsaWduLWxlZnQudmVydGljYWwubWVudSA+IGxpID4gYSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cblxuLmFsaWduLXJpZ2h0LnZlcnRpY2FsLm1lbnUgPiBsaSA+IGEge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuXG4uYWxpZ24tY2VudGVyLnZlcnRpY2FsLm1lbnUgPiBsaSA+IGEge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmFsaWduLXRvcCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuXG4uYWxpZ24tc2VsZi10b3Age1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xufVxuXG4uYWxpZ24tYm90dG9tIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xufVxuXG4uYWxpZ24tc2VsZi1ib3R0b20ge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbn1cblxuLmFsaWduLW1pZGRsZSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5hbGlnbi1zZWxmLW1pZGRsZSB7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbn1cblxuLmFsaWduLXN0cmV0Y2gge1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbn1cblxuLmFsaWduLXNlbGYtc3RyZXRjaCB7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG59XG5cbi5hbGlnbi1jZW50ZXItbWlkZGxlIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnNtYWxsLW9yZGVyLTEge1xuICBvcmRlcjogMTtcbn1cblxuLnNtYWxsLW9yZGVyLTIge1xuICBvcmRlcjogMjtcbn1cblxuLnNtYWxsLW9yZGVyLTMge1xuICBvcmRlcjogMztcbn1cblxuLnNtYWxsLW9yZGVyLTQge1xuICBvcmRlcjogNDtcbn1cblxuLnNtYWxsLW9yZGVyLTUge1xuICBvcmRlcjogNTtcbn1cblxuLnNtYWxsLW9yZGVyLTYge1xuICBvcmRlcjogNjtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1vcmRlci0xIHtcbiAgICBvcmRlcjogMTtcbiAgfVxuXG4gIC5tZWRpdW0tb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7XG4gIH1cblxuICAubWVkaXVtLW9yZGVyLTMge1xuICAgIG9yZGVyOiAzO1xuICB9XG5cbiAgLm1lZGl1bS1vcmRlci00IHtcbiAgICBvcmRlcjogNDtcbiAgfVxuXG4gIC5tZWRpdW0tb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7XG4gIH1cblxuICAubWVkaXVtLW9yZGVyLTYge1xuICAgIG9yZGVyOiA2O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2Utb3JkZXItMSB7XG4gICAgb3JkZXI6IDE7XG4gIH1cblxuICAubGFyZ2Utb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7XG4gIH1cblxuICAubGFyZ2Utb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7XG4gIH1cblxuICAubGFyZ2Utb3JkZXItNCB7XG4gICAgb3JkZXI6IDQ7XG4gIH1cblxuICAubGFyZ2Utb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7XG4gIH1cblxuICAubGFyZ2Utb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7XG4gIH1cbn1cbi5mbGV4LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5mbGV4LWNoaWxkLWF1dG8ge1xuICBmbGV4OiAxIDEgYXV0bztcbn1cblxuLmZsZXgtY2hpbGQtZ3JvdyB7XG4gIGZsZXg6IDEgMCBhdXRvO1xufVxuXG4uZmxleC1jaGlsZC1zaHJpbmsge1xuICBmbGV4OiAwIDEgYXV0bztcbn1cblxuLmZsZXgtZGlyLXJvdyB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG59XG5cbi5mbGV4LWRpci1yb3ctcmV2ZXJzZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbn1cblxuLmZsZXgtZGlyLWNvbHVtbiB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1mbGV4LWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuXG4gIC5tZWRpdW0tZmxleC1jaGlsZC1hdXRvIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgfVxuXG4gIC5tZWRpdW0tZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxuXG4gIC5tZWRpdW0tZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG5cbiAgLm1lZGl1bS1mbGV4LWRpci1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cblxuICAubWVkaXVtLWZsZXgtZGlyLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIH1cblxuICAubWVkaXVtLWZsZXgtZGlyLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuXG4gIC5tZWRpdW0tZmxleC1kaXItY29sdW1uLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLWZsZXgtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG5cbiAgLmxhcmdlLWZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gIH1cblxuICAubGFyZ2UtZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxuXG4gIC5sYXJnZS1mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gIH1cblxuICAubGFyZ2UtZmxleC1kaXItcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG5cbiAgLmxhcmdlLWZsZXgtZGlyLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIH1cblxuICAubGFyZ2UtZmxleC1kaXItY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG5cbiAgLmxhcmdlLWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gIH1cbn1cbi5zbGlkZS1pbi1kb3duLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWRlLWluLWRvd24ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG59XG5cbi5zbGlkZS1pbi1sZWZ0Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWRlLWluLWxlZnQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG59XG5cbi5zbGlkZS1pbi11cC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWRlLWluLXVwLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xufVxuXG4uc2xpZGUtaW4tcmlnaHQubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGlkZS1pbi1yaWdodC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbn1cblxuLnNsaWRlLW91dC1kb3duLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpZGUtb3V0LWRvd24ubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG59XG5cbi5zbGlkZS1vdXQtcmlnaHQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGlkZS1vdXQtcmlnaHQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG59XG5cbi5zbGlkZS1vdXQtdXAubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGlkZS1vdXQtdXAubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xufVxuXG4uc2xpZGUtb3V0LWxlZnQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGlkZS1vdXQtbGVmdC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG59XG5cbi5mYWRlLWluLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xufVxuXG4uZmFkZS1pbi5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5mYWRlLW91dC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbn1cblxuLmZhZGUtb3V0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLWluLWZyb20tdG9wLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3A7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLWluLWZyb20tdG9wLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLWluLWZyb20tcmlnaHQubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1pbi1mcm9tLXJpZ2h0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLWluLWZyb20tYm90dG9tLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCg5MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2UtaW4tZnJvbS1ib3R0b20ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2UtaW4tZnJvbS1sZWZ0Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSg5MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLWluLWZyb20tbGVmdC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1pbi1mcm9tLW1pZGRsZS14Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLWluLWZyb20tbWlkZGxlLXgubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2UtaW4tZnJvbS1taWRkbGUteS5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1pbi1mcm9tLW1pZGRsZS15Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLW91dC1mcm9tLXRvcC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS10b3AubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCg5MGRlZyk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1yaWdodC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLW91dC1mcm9tLXJpZ2h0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tYm90dG9tLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b207XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLW91dC1mcm9tLWJvdHRvbS5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1sZWZ0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1sZWZ0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS14Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS14Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tbWlkZGxlLXkubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tbWlkZGxlLXkubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSg5MGRlZyk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zY2FsZS1pbi11cC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zY2FsZS1pbi11cC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zY2FsZS1pbi1kb3duLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNjYWxlLWluLWRvd24ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc2NhbGUtb3V0LXVwLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zY2FsZS1vdXQtdXAubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zY2FsZS1vdXQtZG93bi5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc2NhbGUtb3V0LWRvd24ubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zcGluLWluLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMC43NXR1cm4pO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zcGluLWluLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zcGluLW91dC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnNwaW4tb3V0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMC43NXR1cm4pO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc3Bpbi1pbi1jY3cubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKDAuNzV0dXJuKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc3Bpbi1pbi1jY3cubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnNwaW4tb3V0LWNjdy5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnNwaW4tb3V0LWNjdy5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0wLjc1dHVybik7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zbG93IHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNzUwbXMgIWltcG9ydGFudDtcbn1cblxuLmZhc3Qge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyNTBtcyAhaW1wb3J0YW50O1xufVxuXG4ubGluZWFyIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhciAhaW1wb3J0YW50O1xufVxuXG4uZWFzZSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlICFpbXBvcnRhbnQ7XG59XG5cbi5lYXNlLWluIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4gIWltcG9ydGFudDtcbn1cblxuLmVhc2Utb3V0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0ICFpbXBvcnRhbnQ7XG59XG5cbi5lYXNlLWluLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dCAhaW1wb3J0YW50O1xufVxuXG4uYm91bmNlLWluIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50O1xufVxuXG4uYm91bmNlLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjUxNSwgMC44NDUpICFpbXBvcnRhbnQ7XG59XG5cbi5ib3VuY2UtaW4tb3V0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc2LCAtMC4yNDUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50O1xufVxuXG4uc2hvcnQtZGVsYXkge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAzMDBtcyAhaW1wb3J0YW50O1xufVxuXG4ubG9uZy1kZWxheSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDcwMG1zICFpbXBvcnRhbnQ7XG59XG5cbi5zaGFrZSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzaGFrZS03O1xufVxuQGtleWZyYW1lcyBzaGFrZS03IHtcbiAgMCUsIDEwJSwgMjAlLCAzMCUsIDQwJSwgNTAlLCA2MCUsIDcwJSwgODAlLCA5MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg3JSk7XG4gIH1cbiAgNSUsIDE1JSwgMjUlLCAzNSUsIDQ1JSwgNTUlLCA2NSUsIDc1JSwgODUlLCA5NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNyUpO1xuICB9XG59XG5cbi5zcGluLWN3IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNwaW4tY3ctMXR1cm47XG59XG5Aa2V5ZnJhbWVzIHNwaW4tY3ctMXR1cm4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTF0dXJuKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgfVxufVxuXG4uc3Bpbi1jY3cge1xuICBhbmltYXRpb24tbmFtZTogc3Bpbi1jY3ctMXR1cm47XG59XG5Aa2V5ZnJhbWVzIHNwaW4tY2N3LTF0dXJuIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0xdHVybik7XG4gIH1cbn1cblxuLndpZ2dsZSB7XG4gIGFuaW1hdGlvbi1uYW1lOiB3aWdnbGUtN2RlZztcbn1cbkBrZXlmcmFtZXMgd2lnZ2xlLTdkZWcge1xuICA0MCUsIDUwJSwgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg3ZGVnKTtcbiAgfVxuICAzNSUsIDQ1JSwgNTUlLCA2NSUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC03ZGVnKTtcbiAgfVxuICAwJSwgMzAlLCA3MCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB9XG59XG5cbi5zaGFrZSxcbi5zcGluLWN3LFxuLnNwaW4tY2N3LFxuLndpZ2dsZSB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNTAwbXM7XG59XG5cbi5pbmZpbml0ZSB7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xufVxuXG4uc2xvdyB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNzUwbXMgIWltcG9ydGFudDtcbn1cblxuLmZhc3Qge1xuICBhbmltYXRpb24tZHVyYXRpb246IDI1MG1zICFpbXBvcnRhbnQ7XG59XG5cbi5saW5lYXIge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXIgIWltcG9ydGFudDtcbn1cblxuLmVhc2Uge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlICFpbXBvcnRhbnQ7XG59XG5cbi5lYXNlLWluIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbiAhaW1wb3J0YW50O1xufVxuXG4uZWFzZS1vdXQge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dCAhaW1wb3J0YW50O1xufVxuXG4uZWFzZS1pbi1vdXQge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dCAhaW1wb3J0YW50O1xufVxuXG4uYm91bmNlLWluIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC4yNCwgMS4yNDUpICFpbXBvcnRhbnQ7XG59XG5cbi5ib3VuY2Utb3V0IHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC41MTUsIDAuODQ1KSAhaW1wb3J0YW50O1xufVxuXG4uYm91bmNlLWluLW91dCB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc2LCAtMC4yNDUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50O1xufVxuXG4uc2hvcnQtZGVsYXkge1xuICBhbmltYXRpb24tZGVsYXk6IDMwMG1zICFpbXBvcnRhbnQ7XG59XG5cbi5sb25nLWRlbGF5IHtcbiAgYW5pbWF0aW9uLWRlbGF5OiA3MDBtcyAhaW1wb3J0YW50O1xufVxuXG4vKlxuICBDdXN0b20gc3R5bGVzOlxuICBBZGQgeW91ciBzY3NzIGZpbGVzIGJlbG93IHRvIHN0cnVjdHVyZSB5b3VyIHByb2plY3Qgc3R5bGVzXG4qL1xuLnNjcmVlbi1yZWFkZXItdGV4dCB7XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4O1xuICB3aWR0aDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uc2NyZWVuLXJlYWRlci10ZXh0OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBib3gtc2hhZG93OiAwIDAgMnB4IDJweCByZ2JhKDAsIDAsIDAsIDAuNik7XG4gIGNsaXA6IGF1dG8gIWltcG9ydGFudDtcbiAgY29sb3I6ICMyMTc1OWI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBoZWlnaHQ6IGF1dG87XG4gIGxlZnQ6IDVweDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgcGFkZGluZzogMTVweCAyM3B4IDE0cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdG9wOiA1cHg7XG4gIHdpZHRoOiBhdXRvO1xuICB6LWluZGV4OiAxMDAwMDA7XG59XG5cbiN3cGFkbWluYmFyIHtcbiAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7XG59XG5cbmJvZHkuYWRtaW4tYmFyLmYtdG9wYmFyLWZpeGVkIC5zdGlja3kuZml4ZWQge1xuICBtYXJnaW4tdG9wOiAzLjJyZW07XG59XG5ib2R5LmFkbWluLWJhci5vZmZjYW52YXMgLm9mZi1jYW52YXMuaXMtb3BlbiB7XG4gIHRvcDogNC42cmVtO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDguOTM3NWVtKSB7XG4gIGJvZHkuYWRtaW4tYmFyLm9mZmNhbnZhcyAub2ZmLWNhbnZhcy5pcy1vcGVuIHtcbiAgICB0b3A6IDMuMnJlbTtcbiAgfVxufVxuXG4ud3AtY2FwdGlvbiA+IGZpZ2NhcHRpb24ge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBjb2xvcjogIzk5OTtcbiAgcGFkZGluZzogMC4yNXJlbSAwO1xufVxuXG5wLndwLWNhcHRpb24tdGV4dCB7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICBjb2xvcjogIzY2NjtcbiAgcGFkZGluZzogMXJlbSAwO1xufVxuXG4uYWxpZ25sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gIG1hcmdpbjogMDtcbn1cblxuLmFsaWducmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgbWFyZ2luOiAwO1xufVxuXG4uYWxpZ25jZW50ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLmdhbGxlcnkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC0ycmVtO1xuICBtYXJnaW4tbGVmdDogLTJyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ2FsbGVyeSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXJlbTtcbiAgICBtYXJnaW4tbGVmdDogLTFyZW07XG4gIH1cbn1cbi5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy0xID4gLmdhbGxlcnktaXRlbSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogY2FsYyg1MCUgLSA0cmVtKTtcbiAgbWFyZ2luLWxlZnQ6IDJyZW07XG4gIG1hcmdpbi1yaWdodDogMnJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy0xID4gLmdhbGxlcnktaXRlbSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gM3JlbSk7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTEgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gM3JlbSk7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbTtcbiAgfVxufVxuLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTIgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBjYWxjKDUwJSAtIDRyZW0pO1xuICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTIgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogY2FsYygyNSUgLSAzcmVtKTtcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMS41cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtMiA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDNyZW0pO1xuICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW07XG4gIH1cbn1cbi5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy0zID4gLmdhbGxlcnktaXRlbSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogY2FsYyg1MCUgLSA0cmVtKTtcbiAgbWFyZ2luLWxlZnQ6IDJyZW07XG4gIG1hcmdpbi1yaWdodDogMnJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy0zID4gLmdhbGxlcnktaXRlbSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gM3JlbSk7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTMgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDNyZW0pO1xuICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW07XG4gIH1cbn1cbi5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy00ID4gLmdhbGxlcnktaXRlbSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogY2FsYyg1MCUgLSA0cmVtKTtcbiAgbWFyZ2luLWxlZnQ6IDJyZW07XG4gIG1hcmdpbi1yaWdodDogMnJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy00ID4gLmdhbGxlcnktaXRlbSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gM3JlbSk7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTQgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogY2FsYygyNSUgLSAzcmVtKTtcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMS41cmVtO1xuICB9XG59XG4uZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtNSA+IC5nYWxsZXJ5LWl0ZW0ge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IGNhbGMoNTAlIC0gNHJlbSk7XG4gIG1hcmdpbi1sZWZ0OiAycmVtO1xuICBtYXJnaW4tcmlnaHQ6IDJyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtNSA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDNyZW0pO1xuICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy01ID4gLmdhbGxlcnktaXRlbSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGNhbGMoMjAlIC0gM3JlbSk7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbTtcbiAgfVxufVxuLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTYgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBjYWxjKDUwJSAtIDRyZW0pO1xuICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTYgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogY2FsYygyNSUgLSAzcmVtKTtcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMS41cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtNiA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY2NjY2NjclIC0gM3JlbSk7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbTtcbiAgfVxufVxuLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTcgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBjYWxjKDUwJSAtIDRyZW0pO1xuICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTcgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogY2FsYygyNSUgLSAzcmVtKTtcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMS41cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtNyA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxNDI4NTclIC0gM3JlbSk7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbTtcbiAgfVxufVxuLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTggPiAuZ2FsbGVyeS1pdGVtIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBjYWxjKDUwJSAtIDRyZW0pO1xuICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTggPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogY2FsYygyNSUgLSAzcmVtKTtcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMS41cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtOCA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gM3JlbSk7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbTtcbiAgfVxufVxuLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTkgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBjYWxjKDUwJSAtIDRyZW0pO1xuICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTkgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogY2FsYygyNSUgLSAzcmVtKTtcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMS41cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtOSA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBjYWxjKDExLjExMTExMTExMTElIC0gM3JlbSk7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbTtcbiAgfVxufVxuLmdhbGxlcnkgLmdhbGxlcnktaWNvbiA+IGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyOiBzb2xpZCA0cHggI0ZGRkZGRjtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMzYsIDM2LCAzNiwgMC4yKTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQ7XG59XG4uZ2FsbGVyeSAuZ2FsbGVyeS1pY29uID4gYTpob3ZlciwgLmdhbGxlcnkgLmdhbGxlcnktaWNvbiA+IGE6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgNnB4IDFweCByZ2JhKDM2LCAzNiwgMzYsIDAuNSk7XG59XG4uZ2FsbGVyeSAuZ2FsbGVyeS1pY29uID4gYSBpbWFnZSB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG4uZ2FsbGVyeSAuZ2FsbGVyeS1pY29uID4gaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlcjogc29saWQgNHB4ICNGRkZGRkY7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDM2LCAzNiwgMzYsIDAuMik7XG4gIGxpbmUtaGVpZ2h0OiAwO1xufVxuXG4vKlxuRnJvbnRlbmQgc3R5bGVzIGZvciBndXRlbmJlcmcgYmxvY2tzXG4qL1xuLyoqID09PSBCYXNlIENvbG9yIFBhbGF0dGUgPT09ICovXG4uaGFzLXByaW1hcnktYmFja2dyb3VuZC1jb2xvciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNDI0MjQ7XG59XG5cbi5oYXMtcHJpbWFyeS1jb2xvciB7XG4gIGNvbG9yOiAjMjQyNDI0O1xufVxuXG4uaGFzLXNlY29uZGFyeS1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y3RjdGNztcbn1cblxuLmhhcy1zZWNvbmRhcnktY29sb3Ige1xuICBjb2xvcjogI0Y3RjdGNztcbn1cblxuLmhhcy1zdWNjZXNzLWJhY2tncm91bmQtY29sb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FkYjc2O1xufVxuXG4uaGFzLXN1Y2Nlc3MtY29sb3Ige1xuICBjb2xvcjogIzNhZGI3Njtcbn1cblxuLmhhcy13YXJuaW5nLWJhY2tncm91bmQtY29sb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZTAwO1xufVxuXG4uaGFzLXdhcm5pbmctY29sb3Ige1xuICBjb2xvcjogI2ZmYWUwMDtcbn1cblxuLmhhcy1hbGVydC1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGIzNztcbn1cblxuLmhhcy1hbGVydC1jb2xvciB7XG4gIGNvbG9yOiAjY2M0YjM3O1xufVxuXG4vKiogPT09IEJ1dHRvbiA9PT0gKi9cbi53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluay5oYXMtcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI0MjQyNDtcbn1cbi53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluay5oYXMtcHJpbWFyeS1jb2xvciB7XG4gIGNvbG9yOiAjMjQyNDI0O1xufVxuLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLmhhcy1zZWNvbmRhcnktYmFja2dyb3VuZC1jb2xvciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGN0Y3Rjc7XG59XG4ud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmsuaGFzLXNlY29uZGFyeS1jb2xvciB7XG4gIGNvbG9yOiAjRjdGN0Y3O1xufVxuLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLmhhcy1zdWNjZXNzLWJhY2tncm91bmQtY29sb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FkYjc2O1xufVxuLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLmhhcy1zdWNjZXNzLWNvbG9yIHtcbiAgY29sb3I6ICMzYWRiNzY7XG59XG4ud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmsuaGFzLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7XG59XG4ud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmsuaGFzLXdhcm5pbmctY29sb3Ige1xuICBjb2xvcjogI2ZmYWUwMDtcbn1cbi53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluay5oYXMtYWxlcnQtYmFja2dyb3VuZC1jb2xvciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7XG59XG4ud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmsuaGFzLWFsZXJ0LWNvbG9yIHtcbiAgY29sb3I6ICNjYzRiMzc7XG59XG4ud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLXNxdWFyZWQgLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4vKiogPT09IEZpbGUgPT09ICovXG4ud3AtYmxvY2stZmlsZSAud3AtYmxvY2stZmlsZV9fYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIHBhZGRpbmc6IDAuODVlbSAxZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gLndwLWJsb2NrLWZpbGUgLndwLWJsb2NrLWZpbGVfX2J1dHRvbiB7XG4gIG91dGxpbmU6IDA7XG59XG4ud3AtYmxvY2stZmlsZSAud3AtYmxvY2stZmlsZV9fYnV0dG9uLCAud3AtYmxvY2stZmlsZSAud3AtYmxvY2stZmlsZV9fYnV0dG9uLmRpc2FibGVkLCAud3AtYmxvY2stZmlsZSAud3AtYmxvY2stZmlsZV9fYnV0dG9uW2Rpc2FibGVkXSwgLndwLWJsb2NrLWZpbGUgLndwLWJsb2NrLWZpbGVfX2J1dHRvbi5kaXNhYmxlZDpob3ZlciwgLndwLWJsb2NrLWZpbGUgLndwLWJsb2NrLWZpbGVfX2J1dHRvbltkaXNhYmxlZF06aG92ZXIsIC53cC1ibG9jay1maWxlIC53cC1ibG9jay1maWxlX19idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC53cC1ibG9jay1maWxlIC53cC1ibG9jay1maWxlX19idXR0b25bZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjNDI0QTU1O1xufVxuLndwLWJsb2NrLWZpbGUgLndwLWJsb2NrLWZpbGVfX2J1dHRvbjpob3ZlciwgLndwLWJsb2NrLWZpbGUgLndwLWJsb2NrLWZpbGVfX2J1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIGNvbG9yOiAjNDI0QTU1O1xufVxuXG4vKlxuRm9udCBmYW1pbHkgYW5kIGJhc2UgZm9udCBzdHlsZSBzZXQgaW4gc2V0dGluZ3Muc2NzcyBpbiBHTE9CQUxcblxuQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1Tb3VyY2UrU2FucytQcm8mZGlzcGxheT1zd2FwJyk7XG4kYm9keS1mb250LWZhbWlseTogJ1NvdXJjZSBTYW5zIFBybycsIHNhbnMtc2VyaWY7XG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTBweDtcblxuKi9cbmgxLCBoMiwgaDMsIGg0LCBoNSBoNiB7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGNvbG9yOiAjMjQyNDI0O1xufVxuXG4uaW1nLS1iZyB7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuQGtleWZyYW1lcyBtb3ZlTGVmdHRvUmlnaHQge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xcmVtKTtcbiAgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwLjhyZW0pO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMXJlbSk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgbW92ZVJpZ2h0dG9MZWZ0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpIHRyYW5zbGF0ZVgoLTFyZW0pO1xuICB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZykgdHJhbnNsYXRlWCgwLjhyZW0pO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpIHRyYW5zbGF0ZVgoLTFyZW0pO1xuICB9XG59XG5Aa2V5ZnJhbWVzIG1vdmVVcERvd24ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKSB0cmFuc2xhdGVYKC0xcmVtKTtcbiAgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZykgdHJhbnNsYXRlWCgxcmVtKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpIHRyYW5zbGF0ZVgoLTFyZW0pO1xuICB9XG59XG4uYm91bmNlLS1saWdodCB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG4uYm91bmNlLS1saWdodDpob3ZlciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wNSkgdHJhbnNsYXRlWSgtMC41cmVtKTtcbn1cblxuQGtleWZyYW1lcyBsb2FkNiB7XG4gIDAlIHtcbiAgICBib3gtc2hhZG93OiAwIC0wLjgzZW0gMCAtMC40ZW0sIDAgLTAuODNlbSAwIC0wLjQyZW0sIDAgLTAuODNlbSAwIC0wLjQ0ZW0sIDAgLTAuODNlbSAwIC0wLjQ2ZW0sIDAgLTAuODNlbSAwIC0wLjQ3N2VtO1xuICB9XG4gIDUlLCA5NSUge1xuICAgIGJveC1zaGFkb3c6IDAgLTAuODNlbSAwIC0wLjRlbSwgMCAtMC44M2VtIDAgLTAuNDJlbSwgMCAtMC44M2VtIDAgLTAuNDRlbSwgMCAtMC44M2VtIDAgLTAuNDZlbSwgMCAtMC44M2VtIDAgLTAuNDc3ZW07XG4gIH1cbiAgMTAlLCA1OSUge1xuICAgIGJveC1zaGFkb3c6IDAgLTAuODNlbSAwIC0wLjRlbSwgLTAuMDg3ZW0gLTAuODI1ZW0gMCAtMC40MmVtLCAtMC4xNzNlbSAtMC44MTJlbSAwIC0wLjQ0ZW0sIC0wLjI1NmVtIC0wLjc4OWVtIDAgLTAuNDZlbSwgLTAuMjk3ZW0gLTAuNzc1ZW0gMCAtMC40NzdlbTtcbiAgfVxuICAyMCUge1xuICAgIGJveC1zaGFkb3c6IDAgLTAuODNlbSAwIC0wLjRlbSwgLTAuMzM4ZW0gLTAuNzU4ZW0gMCAtMC40MmVtLCAtMC41NTVlbSAtMC42MTdlbSAwIC0wLjQ0ZW0sIC0wLjY3MWVtIC0wLjQ4OGVtIDAgLTAuNDZlbSwgLTAuNzQ5ZW0gLTAuMzRlbSAwIC0wLjQ3N2VtO1xuICB9XG4gIDM4JSB7XG4gICAgYm94LXNoYWRvdzogMCAtMC44M2VtIDAgLTAuNGVtLCAtMC4zNzdlbSAtMC43NGVtIDAgLTAuNDJlbSwgLTAuNjQ1ZW0gLTAuNTIyZW0gMCAtMC40NGVtLCAtMC43NzVlbSAtMC4yOTdlbSAwIC0wLjQ2ZW0sIC0wLjgyZW0gLTAuMDllbSAwIC0wLjQ3N2VtO1xuICB9XG4gIDEwMCUge1xuICAgIGJveC1zaGFkb3c6IDAgLTAuODNlbSAwIC0wLjRlbSwgMCAtMC44M2VtIDAgLTAuNDJlbSwgMCAtMC44M2VtIDAgLTAuNDRlbSwgMCAtMC44M2VtIDAgLTAuNDZlbSwgMCAtMC44M2VtIDAgLTAuNDc3ZW07XG4gIH1cbn1cbkBrZXlmcmFtZXMgcm91bmQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuYnV0dG9uLFxuLmJ1dHRvbixcbi53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIHdpZHRoOiAxNHJlbTtcbiAgaGVpZ2h0OiA0LjI1cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuYnV0dG9uOjpiZWZvcmUsXG4uYnV0dG9uOjpiZWZvcmUsXG4ud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC0zMHB4O1xuICB0b3A6IDNweDtcbn1cbmJ1dHRvbjo6YWZ0ZXIsXG4uYnV0dG9uOjphZnRlcixcbi53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC0yM3B4O1xuICB0b3A6IDE2cHg7XG4gIGhlaWdodDogMnJlbTtcbiAgd2lkdGg6IDIuNzVyZW07XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi9pbWFnZXMvYXJyb3dzL2Fycm93LS1vcmFuZ2Uuc3ZnXCIpO1xufVxuYnV0dG9uOmhvdmVyLFxuLmJ1dHRvbjpob3Zlcixcbi53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbmJ1dHRvbjpob3Zlcjo6YWZ0ZXIsXG4uYnV0dG9uOmhvdmVyOjphZnRlcixcbi53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlcjo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuL2ltYWdlcy9hcnJvd3MvYXJyb3ctLXdoaXRlLnN2Z1wiKTtcbn1cblxuYnV0dG9uOjpiZWZvcmUsXG4uYnV0dG9uOjpiZWZvcmUsXG4ud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6OmJlZm9yZSB7XG4gIGJvcmRlcjogMnB4IHNvbGlkICMxQjRFNzQ7XG59XG5idXR0b246OmFmdGVyLFxuLmJ1dHRvbjo6YWZ0ZXIsXG4ud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6OmFmdGVyIHtcbiAgY29sb3I6ICMxQjRFNzQ7XG59XG5idXR0b246aG92ZXI6OmJlZm9yZSxcbi5idXR0b246aG92ZXI6OmJlZm9yZSxcbi53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlcjo6YmVmb3JlIHtcbiAgYm9yZGVyOiAycHggc29saWQgI2I0MTIxMjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2I0MTIxMjtcbn1cbmJ1dHRvbi0tdG9wLFxuLmJ1dHRvbi0tdG9wIHtcbiAgd2lkdGg6IDEycmVtO1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgY29sb3I6ICMxQjRFNzQ7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIGJ1dHRvbi0tdG9wLFxuLmJ1dHRvbi0tdG9wIHtcbiAgICB3aWR0aDogOHJlbTtcbiAgfVxufVxuYnV0dG9uLS10b3A6OmJlZm9yZSxcbi5idXR0b24tLXRvcDo6YmVmb3JlIHtcbiAgbGVmdDogLTNyZW07XG4gIHRvcDogNXB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICBidXR0b24tLXRvcDo6YmVmb3JlLFxuLmJ1dHRvbi0tdG9wOjpiZWZvcmUge1xuICAgIGxlZnQ6IDJyZW07XG4gICAgdG9wOiAtMy41cmVtO1xuICB9XG59XG5idXR0b24tLXRvcDo6YWZ0ZXIsXG4uYnV0dG9uLS10b3A6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtMjBweDtcbiAgdG9wOiAxNXB4O1xuICBoZWlnaHQ6IDJyZW07XG4gIHdpZHRoOiAyLjc1cmVtO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4vaW1hZ2VzL2Fycm93cy9hcnJvdy0tYmx1ZS5zdmdcIik7XG4gIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIGJ1dHRvbi0tdG9wOjphZnRlcixcbi5idXR0b24tLXRvcDo6YWZ0ZXIge1xuICAgIGxlZnQ6IDMwcHg7XG4gICAgdG9wOiAtMjVweDtcbiAgfVxufVxuYnV0dG9uLS10b3A6aG92ZXIsXG4uYnV0dG9uLS10b3A6aG92ZXIge1xuICBjb2xvcjogI2I0MTIxMjtcbn1cbmJ1dHRvbi0tZ3JleTo6YmVmb3JlLFxuLmJ1dHRvbi0tZ3JleTo6YmVmb3JlIHtcbiAgYm9yZGVyOiAycHggc29saWQgI0FCQUVCNDtcbn1cbmJ1dHRvbi0tZ3JleTo6YWZ0ZXIsXG4uYnV0dG9uLS1ncmV5OjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogLTIzcHg7XG4gIHRvcDogMTZweDtcbiAgaGVpZ2h0OiAycmVtO1xuICB3aWR0aDogMi43NXJlbTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuL2ltYWdlcy9hcnJvd3MvYXJyb3ctLWdyZXkuc3ZnXCIpO1xufVxuYnV0dG9uLS1ncmV5OmhvdmVyOjpiZWZvcmUsXG4uYnV0dG9uLS1ncmV5OmhvdmVyOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICBib3JkZXI6IDJweCBzb2xpZCAjYjQxMjEyO1xufVxuYnV0dG9uLS1ncmV5OmhvdmVyOjphZnRlcixcbi5idXR0b24tLWdyZXk6aG92ZXI6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi9pbWFnZXMvYXJyb3dzL2Fycm93LS1vcmFuZ2Uuc3ZnXCIpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICB0b3A6IDEwcHg7XG59XG5idXR0b24tLWdyZXlfX25leHQ6OmFmdGVyLFxuLmJ1dHRvbi0tZ3JleV9fbmV4dDo6YWZ0ZXIge1xuICBsZWZ0OiAtMjNweDtcbiAgdG9wOiAxMHB4O1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICB3aWR0aDogMi44cmVtO1xufVxuYnV0dG9uLS1ncmV5X19uZXh0OmhvdmVyOjphZnRlcixcbi5idXR0b24tLWdyZXlfX25leHQ6aG92ZXI6OmFmdGVyIHtcbiAgbGVmdDogLTIzcHg7XG4gIHRvcDogMTZweDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIHdpZHRoOiAyLjhyZW07XG59XG5idXR0b24tLWJsdWU6OmFmdGVyLFxuLmJ1dHRvbi0tYmx1ZTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuL2ltYWdlcy9hcnJvd3MvYXJyb3ctLWJsdWUuc3ZnXCIpO1xufVxuYnV0dG9uLS1vcmFuZ2U6OmJlZm9yZSxcbi5idXR0b24tLW9yYW5nZTo6YmVmb3JlIHtcbiAgYm9yZGVyOiAycHggc29saWQgI2I0MTIxMjtcbn1cbmJ1dHRvbi0tb3JhbmdlOjphZnRlcixcbi5idXR0b24tLW9yYW5nZTo6YWZ0ZXIge1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbmJ1dHRvbi0tb3JhbmdlOmhvdmVyOjpiZWZvcmUsXG4uYnV0dG9uLS1vcmFuZ2U6aG92ZXI6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiNDEyMTI7XG59XG5idXR0b24tLW9yYW5nZTpob3Zlcjo6YWZ0ZXIsXG4uYnV0dG9uLS1vcmFuZ2U6aG92ZXI6OmFmdGVyIHtcbiAgY29sb3I6IGJsdWU7XG59XG5idXR0b24tLWJsYWNrOjpiZWZvcmUsXG4uYnV0dG9uLS1ibGFjazo6YmVmb3JlIHtcbiAgYm9yZGVyOiAycHggc29saWQgIzI0MjQyNDtcbn1cbmJ1dHRvbi0tYmxhY2s6OmFmdGVyLFxuLmJ1dHRvbi0tYmxhY2s6OmFmdGVyIHtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4vaW1hZ2VzL2Fycm93cy9hcnJvdy0tYmxhY2suc3ZnXCIpO1xufVxuYnV0dG9uLS1ibGFjazpob3Zlcjo6YmVmb3JlLFxuLmJ1dHRvbi0tYmxhY2s6aG92ZXI6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNDI0MjQ7XG4gIGJvcmRlci1jb2xvcjogIzI0MjQyNDtcbn1cbmJ1dHRvbi0tYmxhY2s6aG92ZXI6OmFmdGVyLFxuLmJ1dHRvbi0tYmxhY2s6aG92ZXI6OmFmdGVyIHtcbiAgY29sb3I6IGJsdWU7XG59XG5idXR0b24tLXdoaXRlOjpiZWZvcmUsXG4uYnV0dG9uLS13aGl0ZTo6YmVmb3JlIHtcbiAgYm9yZGVyOiAycHggc29saWQgI0ZGRkZGRjtcbn1cbmJ1dHRvbi0td2hpdGU6OmFmdGVyLFxuLmJ1dHRvbi0td2hpdGU6OmFmdGVyIHtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4vaW1hZ2VzL2Fycm93cy9hcnJvdy0td2hpdGUuc3ZnXCIpO1xufVxuYnV0dG9uLS13aGl0ZTpob3Zlcjo6YmVmb3JlLFxuLmJ1dHRvbi0td2hpdGU6aG92ZXI6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNGRkZGRkY7XG59XG5idXR0b24tLXdoaXRlOmhvdmVyOjphZnRlcixcbi5idXR0b24tLXdoaXRlOmhvdmVyOjphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4vaW1hZ2VzL2Fycm93cy9hcnJvdy0tYmx1ZS5zdmdcIik7XG59XG5idXR0b24uYXJ0LS1maWx0ZXIsXG4uYnV0dG9uLmFydC0tZmlsdGVyLFxuLndwLWJsb2NrLWJ1dHRvbiAuYXJ0LS1maWx0ZXIud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0byAycmVtO1xufVxuXG4vKlxuU3dpcGVyIGJ1dHRvbiBzdHlsZXMgZm9yIE5ld3MgQ2Fyb3VzZWxcbiovXG4uc3dpcGVyLWJ1dHRvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIHdpZHRoOiAxMXJlbTtcbiAgaGVpZ2h0OiA0cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi5zd2lwZXItYnV0dG9uOmFjdGl2ZSwgLnN3aXBlci1idXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuLnN3aXBlci1idXR0b246OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC0zMHB4O1xuICB0b3A6IDNweDtcbiAgYm9yZGVyOiAycHggc29saWQgI0FCQUVCNDtcbn1cbi5zd2lwZXItYnV0dG9uOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogLTIzcHg7XG4gIHRvcDogMTZweDtcbiAgaGVpZ2h0OiAycmVtO1xuICB3aWR0aDogMi43NXJlbTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuL2ltYWdlcy9hcnJvd3MvYXJyb3ctLWdyZXkuc3ZnXCIpO1xufVxuLnN3aXBlci1idXR0b246aG92ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uc3dpcGVyLWJ1dHRvbjpob3Zlcjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgYm9yZGVyOiAycHggc29saWQgI2I0MTIxMjtcbn1cbi5zd2lwZXItYnV0dG9uLXByZXYge1xuICBsZWZ0OiAyMCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc3dpcGVyLWJ1dHRvbi1wcmV2IHtcbiAgICBsZWZ0OiA5MiU7XG4gICAgdG9wOiAwcmVtO1xuICAgIHdpZHRoOiAycmVtO1xuICB9XG59XG4uc3dpcGVyLWJ1dHRvbi1wcmV2OjphZnRlciB7XG4gIGxlZnQ6IC0yM3B4O1xuICB0b3A6IDE2cHg7XG4gIGhlaWdodDogMnJlbTtcbiAgd2lkdGg6IDIuNzVyZW07XG59XG4uc3dpcGVyLWJ1dHRvbi1wcmV2OmhvdmVyOjphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4vaW1hZ2VzL2Fycm93cy9hcnJvdy0tb3JhbmdlLnN2Z1wiKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG4gIHRvcDogMTBweDtcbn1cbi5zd2lwZXItYnV0dG9uLW5leHQge1xuICBsZWZ0OiA5MCU7XG59XG4uc3dpcGVyLWJ1dHRvbi1uZXh0OjphZnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpO1xuICBsZWZ0OiAtMjNweDtcbiAgdG9wOiAxMHB4O1xuICBoZWlnaHQ6IDJyZW07XG4gIHdpZHRoOiAyLjc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnN3aXBlci1idXR0b24tbmV4dCB7XG4gICAgbGVmdDogOTYuNSU7XG4gICAgdG9wOiAwcmVtO1xuICB9XG59XG4uc3dpcGVyLWJ1dHRvbi1uZXh0OmhvdmVyOjphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4vaW1hZ2VzL2Fycm93cy9hcnJvdy0tb3JhbmdlLnN2Z1wiKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIHRvcDogMTZweDtcbiAgaGVpZ2h0OiAycmVtO1xuICB3aWR0aDogMi44cmVtO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYnRuLWhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLndwLWJsb2NrLWJ1dHRvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4vaW1hZ2VzL2Fycm93cy9hcnJvdy0tYmx1ZS5zdmdcIik7XG59XG5cbi51aS1ncm91cC5kaXN0cmljdFNlbGVjdCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jYXJkcy1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xufVxuLmNhcmRzLWNvbnRhaW5lciAuY2FyZCB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogY2FsYygxMDAlIC0gNHJlbSk7XG4gIG1hcmdpbi1sZWZ0OiAycmVtO1xuICBtYXJnaW4tcmlnaHQ6IDJyZW07XG59XG4uY2FyZHMtY29udGFpbmVyIC5jYXJkIC5jYXJkLWNvbnRlbnQge1xuICBwYWRkaW5nOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmNhcmRzLWNvbnRhaW5lciAuY2FyZCB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSAwLjdyZW0pO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjM1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMC4zNXJlbTtcbiAgfVxufVxuXG4uY2FyZCBoNCB7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuNXM7XG4gIHBhZGRpbmc6IDFyZW0gMCAwIDA7XG4gIG1hcmdpbjogMXJlbSAwIDAgMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jYXJkIGg0IHtcbiAgICBtYXJnaW46IDFyZW0gMCAwIDJyZW07XG4gIH1cbn1cbi5jYXJkIC5kYXRlIHtcbiAgY29sb3I6ICNiNDEyMTI7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMjIuMjVyZW07XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtIDAgMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5jYXJkIC5kYXRlIHtcbiAgICB0b3A6IDExLjc1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY2FyZCAuZGF0ZSB7XG4gICAgdG9wOiAyMnJlbTtcbiAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICBsZWZ0OiAwLjVyZW07XG4gIH1cbn1cbi5jYXJkIC5hdXRob3Ige1xuICBjb2xvcjogIzQyNEE1NTtcbiAgZm9udC1zaXplOiAxLjhyZW07XG4gIG1hcmdpbjogMnJlbSAwIDAgMDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5jYXJkIC5hdXRob3Ige1xuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY2FyZCAuYXV0aG9yIHtcbiAgICBtYXJnaW46IDJyZW0gMnJlbSAzcmVtIDJyZW07XG4gIH1cbn1cblxuLnN0YWZmLS1tZW1iZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbjogMCAwIDJyZW0gMDtcbn1cbi5zdGFmZi0tbWVtYmVyIGg0IHtcbiAgbWFyZ2luOiAwO1xufVxuLnN0YWZmLS1tZW1iZXIgLmNhcmQge1xuICBib3JkZXI6IHZhcigtLWJvcmRlci10cmFuc3BhcmVudCk7XG59XG4uc3RhZmYtLW1lbWJlciBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnN0YWZmLS1tZW1iZXIgaW1nIHtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnN0YWZmLS1tZW1iZXIgLmNhcmQtLWJhY2t1cCB7XG4gICAgaGVpZ2h0OiAzNi40cmVtO1xuICB9XG59XG4uc3RhZmYtLW1lbWJlcl9fbmFtZSB7XG4gIGNvbG9yOiAjMUI0RTc0O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnN0YWZmLS1tZW1iZXJfX3RpdGxlIHtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGNvbG9yOiAjNDI0QTU1O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnN0YWZmLS1tZW1iZXJfX2VtYWlsIHtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIGNvbG9yOiAjQUJBRUI0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnN0YWZmLS1tZW1iZXJfX2VtYWlsOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAtNXB4O1xuICBsZWZ0OiA1MCU7XG4gIGJhY2tncm91bmQ6IG5vbmUgcmVwZWF0IHNjcm9sbCAwIDAgdHJhbnNwYXJlbnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDJweDtcbiAgd2lkdGg6IDA7XG4gIGJhY2tncm91bmQ6ICNBQkFFQjQ7XG4gIHRyYW5zaXRpb246IHdpZHRoIDAuM3MgZWFzZSAwcywgbGVmdCAwLjNzIGVhc2UgMHM7XG59XG4uc3RhZmYtLW1lbWJlcl9fZW1haWw6aG92ZXIge1xuICBjb2xvcjogI0FCQUVCNDtcbn1cbi5zdGFmZi0tbWVtYmVyX19lbWFpbDpob3Zlcjo6YWZ0ZXIge1xuICB3aWR0aDogMTAwJTtcbiAgbGVmdDogMDtcbn1cblxuLmRpcmVjdG9ycyBoMiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5kaXJlY3RvcnMgaDIge1xuICAgIG1hcmdpbjogMi41cmVtIDA7XG4gIH1cbn1cbi5kaXJlY3RvcnNfX2JvYXJkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFCNEU3NDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDJyZW0gMDtcbn1cbi5kaXJlY3RvcnNfX2JvYXJkOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAyMTAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IC0xMDAlO1xuICB6LWluZGV4OiAtMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbn1cbi5kaXJlY3RvcnNfX2JvYXJkOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDIxMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAtMTAwJTtcbiAgei1pbmRleDogLTE7XG4gIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZGlyZWN0b3JzX19ib2FyZCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwYWRkaW5nOiAzcmVtIDFyZW07XG4gIH1cbiAgLmRpcmVjdG9yc19fYm9hcmQ6OmJlZm9yZSB7XG4gICAgY29udGVudDogbm9uZTtcbiAgfVxuICAuZGlyZWN0b3JzX19ib2FyZDphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTVweDtcbiAgICBsZWZ0OiAxNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogdmFyKC0tYm9yZGVyLWdyZXkpO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZGlyZWN0b3JzX19ib2FyZCB7XG4gICAgcGFkZGluZzogNXJlbSA1cmVtIDVyZW0gMTByZW07XG4gIH1cbn1cbi5kaXJlY3RvcnNfX2JvYXJkIC5jYXJkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFCNEU3NDtcbiAgYm9yZGVyOiB2YXIoLS1ib3JkZXItdHJhbnNwYXJlbnQpO1xufVxuLmRpcmVjdG9yc19fYm9hcmQtLW5hbWUge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiAxLjhyZW07XG59XG4uZGlyZWN0b3JzX19ib2FyZC0tdGl0bGUge1xuICBjb2xvcjogIzVEN0VCQjtcbiAgZm9udC1zaXplOiAxLjZyZW07XG59XG5cbi5wc2FjIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IDhyZW0gMnJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wc2FjIHtcbiAgICBtYXJnaW46IDZyZW0gMnJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBzYWMge1xuICAgIG1hcmdpbjogOHJlbSAycmVtIDZyZW0gMnJlbTtcbiAgfVxufVxuLnBzYWMtLXRleHQge1xuICBtYXJnaW46IDJyZW0gMCA0cmVtIDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucHNhYy0tdGV4dCB7XG4gICAgcGFkZGluZzogMCAxMnJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBzYWMtLXRleHQge1xuICAgIHBhZGRpbmc6IDAgMzJyZW07XG4gIH1cbn1cbi5wc2FjIGEge1xuICB3aWR0aDogNXJlbTtcbiAgaGVpZ2h0OiA1cmVtO1xuICBtYXJnaW46IDAgYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbmJvZHkucGFnZSAuZmVhdHVyZWQtaGVybywgYm9keS5jYXRlZ29yeSAuZmVhdHVyZWQtaGVybyB7XG4gIHBhZGRpbmc6IDEzcmVtIDAgMTFyZW0gMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIGJvZHkucGFnZSAuZmVhdHVyZWQtaGVybywgYm9keS5jYXRlZ29yeSAuZmVhdHVyZWQtaGVybyB7XG4gICAgaGVpZ2h0OiAyMHJlbTtcbiAgICBwYWRkaW5nOiAxMHJlbSAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICBib2R5LnBhZ2UgLmZlYXR1cmVkLWhlcm8sIGJvZHkuY2F0ZWdvcnkgLmZlYXR1cmVkLWhlcm8ge1xuICAgIGhlaWdodDogMzByZW07XG4gICAgcGFkZGluZzogMTVyZW0gMDtcbiAgfVxufVxuYm9keS5wYWdlIC5mZWF0dXJlZC1oZXJvIC5tYWluLWNvbnRhaW5lciwgYm9keS5jYXRlZ29yeSAuZmVhdHVyZWQtaGVybyAubWFpbi1jb250YWluZXIge1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICBwYWRkaW5nLWxlZnQ6IDFyZW07XG59XG5ib2R5LnBhZ2UgLmZlYXR1cmVkLWhlcm8gLm1ldGEtZW50cnktaW5mbywgYm9keS5jYXRlZ29yeSAuZmVhdHVyZWQtaGVybyAubWV0YS1lbnRyeS1pbmZvIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG5ib2R5Om5vdCguaG9tZSkgLmZlYXR1cmVkLWhlcm8ge1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHBhZGRpbmc6IDIwcmVtIDAgNnJlbSAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIGJvZHk6bm90KC5ob21lKSAuZmVhdHVyZWQtaGVybyB7XG4gICAgcGFkZGluZzogMjVyZW0gMCAxMHJlbSAwO1xuICB9XG59XG5ib2R5Om5vdCguaG9tZSkgLmZlYXR1cmVkLWhlcm8gaDEuZW50cnktdGl0bGUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBtYXJnaW4tdG9wOiAwO1xuICBsaW5lLWhlaWdodDogMTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIGJvZHk6bm90KC5ob21lKSAuZmVhdHVyZWQtaGVybyBoMS5lbnRyeS10aXRsZSB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgfVxufVxuYm9keTpub3QoLmhvbWUpIC5mZWF0dXJlZC1oZXJvIGgyLmVudHJ5LXRpdGxlIHtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGhlaWdodDogMTVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICBib2R5Om5vdCguaG9tZSkgLmZlYXR1cmVkLWhlcm8gaDIuZW50cnktdGl0bGUge1xuICAgIGhlaWdodDogMTJyZW07XG4gIH1cbn1cbmJvZHk6bm90KC5ob21lKSAuZmVhdHVyZWQtaGVybyBoMy5lbnRyeS10aXRsZSB7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBwYWRkaW5nOiAxcmVtIDA7XG4gIGhlaWdodDogMTJyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICBib2R5Om5vdCguaG9tZSkgLmZlYXR1cmVkLWhlcm8gaDMuZW50cnktdGl0bGUge1xuICAgIGhlaWdodDogOHJlbTtcbiAgfVxufVxuYm9keTpub3QoLmhvbWUpIC5mZWF0dXJlZC1oZXJvIC5tZXRhLWVudHJ5LWluZm8ge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgYm9keTpub3QoLmhvbWUpIC5mZWF0dXJlZC1oZXJvIC5tZXRhLWVudHJ5LWluZm8ge1xuICAgIHBhZGRpbmc6IDAgMjNyZW07XG4gICAgbWFyZ2luOiAtNHJlbSAwIDAgMDtcbiAgfVxufVxuYm9keTpub3QoLmhvbWUpIC5mZWF0dXJlZC1oZXJvIC5tZXRhLWVudHJ5LWluZm8gLnNhdXNhZ2Uge1xuICBjb2xvcjogI2I0MTIxMjtcbiAgZm9udC1zaXplOiAzcmVtO1xufVxuYm9keTpub3QoLmhvbWUpIC5mZWF0dXJlZC1oZXJvIC5tZXRhLWVudHJ5LWluZm8gLmJ5bGluZS1hdXRob3Ige1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmZlYXR1cmVkLS1iYW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMTRyZW0gMCA1cmVtIDA7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgcGFkZGluZzogMCAwIDRyZW0gMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5mZWF0dXJlZC0tYmFubmVyIHtcbiAgICBoZWlnaHQ6IDQyLjc1cmVtO1xuICAgIG1hcmdpbjogOHJlbSAwIDNyZW0gMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZmVhdHVyZWQtLWJhbm5lciB7XG4gICAgaGVpZ2h0OiA3MHJlbTtcbiAgICBtYXJnaW46IDAgMCAwIDA7XG4gIH1cbn1cbi5mZWF0dXJlZC0tYmFubmVyX19jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uZmVhdHVyZWQtLWJhbm5lcl9fY29udGFpbmVyLS1zbWFsbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgIzE5M2Q1YyA5MCUsICNGRkZGRkYgOTAlKTtcbiAgei1pbmRleDogMTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5mZWF0dXJlZC0tYmFubmVyX19jb250YWluZXItLXNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi9pbWFnZXMvYmFja2dyb3VuZHMvY2FwaXRvbC5wbmcpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBtYXgtd2lkdGg6IDYwcmVtO1xuICB9XG59XG4uZmVhdHVyZWQtLWJhbm5lcl9fY29udGFpbmVyLS1zbWFsbCBpbWcge1xuICB3aWR0aDogOTAlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5mZWF0dXJlZC0tYmFubmVyX19jb250YWluZXItLXNtYWxsIGltZyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLmZlYXR1cmVkLS1iYW5uZXJfX2NvbnRlbnQge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgcGFkZGluZzogM3JlbSA2cmVtO1xuICB3aWR0aDogMzlyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZmVhdHVyZWQtLWJhbm5lcl9fY29udGVudCB7XG4gICAgcGFkZGluZzogMTNyZW0gNnJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZlYXR1cmVkLS1iYW5uZXJfX2NvbnRlbnQge1xuICAgIHdpZHRoOiA1NHJlbTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMjlyZW0gMCAwIDNyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmZlYXR1cmVkLS1iYW5uZXJfX2NvbnRlbnQge1xuICAgIHdpZHRoOiA4MCU7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDI5cmVtIDAgMCAxMHJlbTtcbiAgfVxufVxuLmZlYXR1cmVkLS1iYW5uZXJfX2NvbnRlbnQgaDIge1xuICBmb250LXNpemU6IDIuNnJlbTtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZmVhdHVyZWQtLWJhbm5lcl9fY29udGVudCBoMiB7XG4gICAgZm9udC1zaXplOiA0cmVtO1xuICB9XG59XG4uZmVhdHVyZWQtLWJhbm5lcl9fY29udGVudCBoMiBzcGFuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLmZlYXR1cmVkLS1iYW5uZXJfX2NvbnRlbnQgcCB7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mZWF0dXJlZC0tYmFubmVyX19jb250ZW50IHAge1xuICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICB9XG59XG4uZmVhdHVyZWQtLWJhbm5lcl9fY29udGVudCBidXR0b24ge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgbWFyZ2luOiAycmVtIDNyZW07XG4gIHotaW5kZXg6IDkwO1xufVxuXG4uYXJ0LS1iYW5uZXIge1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGhlaWdodDogMTByZW07XG4gIHBhZGRpbmc6IDMzcmVtIDAgNDVyZW0gMDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYXJ0LS1iYW5uZXIge1xuICAgIGhlaWdodDogMjByZW07XG4gICAgcGFkZGluZzogMzByZW0gMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFydC0tYmFubmVyIHtcbiAgICBoZWlnaHQ6IDMwcmVtO1xuICAgIHBhZGRpbmc6IDI1cmVtIDA7XG4gIH1cbn1cbi5hcnQtLWJhbm5lcl9fdGl0bGUge1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5hcnQtLWJhbm5lcl9fY29udGVudCB7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBwYWRkaW5nOiAwIDNyZW07XG4gIG1hcmdpbjogLTIzcmVtIDAgMnJlbSAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFydC0tYmFubmVyX19jb250ZW50IHtcbiAgICBtYXJnaW46IC0xNnJlbSAwIDAgMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFydC0tYmFubmVyX19jb250ZW50IHtcbiAgICBwYWRkaW5nOiAwIDhyZW07XG4gIH1cbn1cbi5hcnQtLWJhbm5lcl9fY29udGVudCBwIHtcbiAgbWFyZ2luOiAzcmVtIDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXJ0LS1iYW5uZXJfX2NvbnRlbnQgLmFydC0tY29udGVudF9fdGV4dCB7XG4gICAgcGFkZGluZzogMCA4cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXJ0LS1iYW5uZXIgLmZsZXgtY2hpbGQtYXV0byB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBtYXJnaW46IC05cmVtIDAgMCAwO1xuICB9XG59XG5cbi5kb3R0ZWQge1xuICBib3JkZXItc3R5bGU6IGRhc2hlZDtcbiAgbWFyZ2luOiAycmVtIDA7XG59XG5cbi5tZXRhLWRhdGEtY29udGFpbmVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNEOERCREY7XG4gIG1hcmdpbjogMCAwIDNyZW0gMDtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIGNvbG9yOiAjMUI0RTc0O1xuICBwYWRkaW5nOiAwIDAgMXJlbSAwO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWV0YS1kYXRhLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLWxlZnQ6IDIzcmVtO1xuICAgIG1hcmdpbi1yaWdodDogMjNyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgfVxufVxuLm1ldGEtZGF0YS1jb250YWluZXIgLnNoYXJlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1ldGEtZGF0YS1jb250YWluZXIgLnNoYXJlIHtcbiAgICBtYXJnaW46IDAgMS43NXJlbSAwIDA7XG4gIH1cbn1cbi5tZXRhLWRhdGEtY29udGFpbmVyIC5zaGFyZS0taWNvbiB7XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDAgMCAwIDFyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tZXRhLWRhdGEtY29udGFpbmVyIC5zaGFyZS0taWNvbiB7XG4gICAgbWFyZ2luOiAwIDAgMCA2cmVtO1xuICB9XG59XG4ubWV0YS1kYXRhLWNvbnRhaW5lciAuc2hhcmUgLm1ldGEtLWljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWV0YS1kYXRhLWNvbnRhaW5lciAuc2hhcmUgLm1ldGEtLWljb24ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuLm1ldGEtZGF0YS1jb250YWluZXIgLnNoYXJlIC5tZXRhLS1pY29uX19wZGYge1xuICBsZWZ0OiAxMHJlbTtcbiAgdG9wOiA1cHg7XG59XG4ubWV0YS1kYXRhLWNvbnRhaW5lciAuc2hhcmUgLm1ldGEtLWljb25fX3ByaW50IHtcbiAgbGVmdDogNHJlbTtcbiAgdG9wOiA0cHg7XG59XG4ubWV0YS1kYXRhLWNvbnRhaW5lciAuc2hhcmUgLm1ldGEtLWljb25fX3NoYXJlIHtcbiAgbGVmdDogNHJlbTtcbiAgdG9wOiAtMnB4O1xufVxuLm1ldGEtZGF0YS1jb250YWluZXIgLnNoYXJlIC5wcmludGZyaWVuZGx5IHtcbiAgbWFyZ2luOiAwO1xufVxuLm1ldGEtZGF0YS1jb250YWluZXIgLnNoYXJlIC5wcmludGZyaWVuZGx5IC5ub3NsaW1zdGF0IHtcbiAgY29sb3I6ICMxQjRFNzQ7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG4ubWV0YS1kYXRhLWNvbnRhaW5lciAuc2hhcmUgLmFkZHRvYW55X3Nob3J0Y29kZSBhIHtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIHBhZGRpbmc6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbi5tZXRhLWRhdGEtY29udGFpbmVyIC5zaGFyZSAuYWRkdG9hbnlfc2hvcnRjb2RlOm50aC1vZi10eXBlKDIpIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnNlY3Rpb24tIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zZWN0aW9uLSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxufVxuLnNlY3Rpb24tLXRhYmxlIHtcbiAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgcGFkZGluZzogMCA3LjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2VjdGlvbi0tdGFibGUge1xuICAgIG1hcmdpbjogMXJlbSAwIDAgMDtcbiAgfVxufVxuLnNlY3Rpb24tLXRhYmxlX19oZWFkaW5nIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xufVxuLnNlY3Rpb24tLXRhYmxlX19oZWFkaW5nLCAuc2VjdGlvbi0tdGFibGVfX2xpc3Qge1xuICBjb2xvcjogIzFCNEU3NDtcbn1cbi5zZWN0aW9uLS10YWJsZV9faGVhZGluZzpob3ZlciwgLnNlY3Rpb24tLXRhYmxlX19oZWFkaW5nOmFjdGl2ZSwgLnNlY3Rpb24tLXRhYmxlX19saXN0OmhvdmVyLCAuc2VjdGlvbi0tdGFibGVfX2xpc3Q6YWN0aXZlIHtcbiAgY29sb3I6ICNiNDEyMTI7XG59XG4uc2VjdGlvbi0tdGFibGVfX2NvbnRlbnQgcCB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBtYXJnaW46IDAgMCAycmVtIDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc2VjdGlvbi0tdGFibGVfX2NvbnRlbnQgcCB7XG4gICAgZm9udC1zaXplOiAxLjNyZW07XG4gIH1cbn1cblxuZm9ybSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbmZvcm0gW3R5cGU9dGV4dF06Zm9jdXMsXG5mb3JtIFt0eXBlPXBhc3N3b3JkXTpmb2N1cyxcbmZvcm0gW3R5cGU9ZGF0ZV06Zm9jdXMsXG5mb3JtIFt0eXBlPWRhdGV0aW1lXTpmb2N1cyxcbmZvcm0gW3R5cGU9ZGF0ZXRpbWUtbG9jYWxdOmZvY3VzLFxuZm9ybSBbdHlwZT1tb250aF06Zm9jdXMsXG5mb3JtIFt0eXBlPXdlZWtdOmZvY3VzLFxuZm9ybSBbdHlwZT1lbWFpbF06Zm9jdXMsXG5mb3JtIFt0eXBlPW51bWJlcl06Zm9jdXMsXG5mb3JtIFt0eXBlPXNlYXJjaF06Zm9jdXMsXG5mb3JtIFt0eXBlPXRlbF06Zm9jdXMsXG5mb3JtIFt0eXBlPXRpbWVdOmZvY3VzLFxuZm9ybSBbdHlwZT11cmxdOmZvY3VzLFxuZm9ybSBbdHlwZT1jb2xvcl06Zm9jdXMsXG5mb3JtIHNlbGVjdDpmb2N1cyB7XG4gIGNvbG9yOiAjNDI0QTU1O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuZm9ybSBbdHlwZT10ZXh0XTpmb2N1czo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcbmZvcm0gW3R5cGU9cGFzc3dvcmRdOmZvY3VzOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxuZm9ybSBbdHlwZT1kYXRlXTpmb2N1czo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcbmZvcm0gW3R5cGU9ZGF0ZXRpbWVdOmZvY3VzOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxuZm9ybSBbdHlwZT1kYXRldGltZS1sb2NhbF06Zm9jdXM6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsXG5mb3JtIFt0eXBlPW1vbnRoXTpmb2N1czo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcbmZvcm0gW3R5cGU9d2Vla106Zm9jdXM6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsXG5mb3JtIFt0eXBlPWVtYWlsXTpmb2N1czo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcbmZvcm0gW3R5cGU9bnVtYmVyXTpmb2N1czo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcbmZvcm0gW3R5cGU9c2VhcmNoXTpmb2N1czo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcbmZvcm0gW3R5cGU9dGVsXTpmb2N1czo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcbmZvcm0gW3R5cGU9dGltZV06Zm9jdXM6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsXG5mb3JtIFt0eXBlPXVybF06Zm9jdXM6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsXG5mb3JtIFt0eXBlPWNvbG9yXTpmb2N1czo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcbmZvcm0gc2VsZWN0OmZvY3VzOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICM0MjRBNTU7XG59XG5mb3JtIFt0eXBlPXRleHRdOmZvY3VzOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxuZm9ybSBbdHlwZT1wYXNzd29yZF06Zm9jdXM6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsXG5mb3JtIFt0eXBlPWRhdGVdOmZvY3VzOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxuZm9ybSBbdHlwZT1kYXRldGltZV06Zm9jdXM6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsXG5mb3JtIFt0eXBlPWRhdGV0aW1lLWxvY2FsXTpmb2N1czo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcbmZvcm0gW3R5cGU9bW9udGhdOmZvY3VzOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxuZm9ybSBbdHlwZT13ZWVrXTpmb2N1czo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcbmZvcm0gW3R5cGU9ZW1haWxdOmZvY3VzOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxuZm9ybSBbdHlwZT1udW1iZXJdOmZvY3VzOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxuZm9ybSBbdHlwZT1zZWFyY2hdOmZvY3VzOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxuZm9ybSBbdHlwZT10ZWxdOmZvY3VzOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxuZm9ybSBbdHlwZT10aW1lXTpmb2N1czo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcbmZvcm0gW3R5cGU9dXJsXTpmb2N1czo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcbmZvcm0gW3R5cGU9Y29sb3JdOmZvY3VzOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxuZm9ybSBzZWxlY3Q6Zm9jdXM6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzQyNEE1NTtcbn1cbmZvcm0gW3R5cGU9dGV4dF06aG92ZXIsXG5mb3JtIFt0eXBlPXBhc3N3b3JkXTpob3ZlcixcbmZvcm0gW3R5cGU9ZGF0ZV06aG92ZXIsXG5mb3JtIFt0eXBlPWRhdGV0aW1lXTpob3ZlcixcbmZvcm0gW3R5cGU9ZGF0ZXRpbWUtbG9jYWxdOmhvdmVyLFxuZm9ybSBbdHlwZT1tb250aF06aG92ZXIsXG5mb3JtIFt0eXBlPXdlZWtdOmhvdmVyLFxuZm9ybSBbdHlwZT1lbWFpbF06aG92ZXIsXG5mb3JtIFt0eXBlPW51bWJlcl06aG92ZXIsXG5mb3JtIFt0eXBlPXNlYXJjaF06aG92ZXIsXG5mb3JtIFt0eXBlPXRlbF06aG92ZXIsXG5mb3JtIFt0eXBlPXRpbWVdOmhvdmVyLFxuZm9ybSBbdHlwZT11cmxdOmhvdmVyLFxuZm9ybSBbdHlwZT1jb2xvcl06aG92ZXIsXG5mb3JtIHNlbGVjdDpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbmZvcm0gc2VsZWN0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi9pbWFnZXMvYmFja2dyb3VuZHMvY2hldnJvbi5zdmdcIik7XG59XG5mb3JtIGlucHV0W3R5cGU9c3VibWl0XSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5mb3JtIGxhYmVsIHtcbiAgcG9pbnRlci1ldmVudHM6IGFsbDtcbn1cbmZvcm0gLmZvcm1fX2J1dHRvbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDQwJSk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICBmb3JtIC5mb3JtX19idXR0b24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiA3NSU7XG4gICAgdG9wOiA1LjVyZW07XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5mb3JtIC5mb3JtX19idXR0b24gLmJ1dHRvbiwgZm9ybSAuZm9ybV9fYnV0dG9uIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiBmb3JtIC5mb3JtX19idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gIGNvbG9yOiAjMjQyNDI0O1xuICBmb250LXNpemU6IDEuOHJlbTtcbn1cbmZvcm0gI3NpZ251cC1yb3ctMSBpbnB1dCB7XG4gIGJvcmRlci1jb2xvcjogIzI0MjQyNDtcbiAgY29sb3I6ICMwMDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICBmb3JtICNzaWdudXAtcm93LTEgaW5wdXQge1xuICAgIHdpZHRoOiA0OCU7XG4gIH1cbn1cbmZvcm0gI3NpZ251cC1yb3ctMSBpbnB1dDo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzI0MjQyNDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIGZvcm0gI3NpZ251cC1yb3ctMSBbdHlwZT10ZXh0XSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgZm9ybSAjc2lnbnVwLXJvdy0xIFt0eXBlPWVtYWlsXSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5mb3JtIC5tYzR3cC1mb3JtLWZpZWxkcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbmZvcm0gLm1jNHdwLWZvcm0tZmllbGRzICNzaWdudXAtcm93LTIgc2VsZWN0LFxuZm9ybSAubWM0d3AtZm9ybS1maWVsZHMgI3NpZ251cC1yb3ctMiBpbnB1dCB7XG4gIGJvcmRlci1jb2xvcjogIzI0MjQyNDtcbiAgY29sb3I6ICMwMDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICBmb3JtIC5tYzR3cC1mb3JtLWZpZWxkcyAjc2lnbnVwLXJvdy0yIHNlbGVjdCxcbmZvcm0gLm1jNHdwLWZvcm0tZmllbGRzICNzaWdudXAtcm93LTIgaW5wdXQge1xuICAgIHdpZHRoOiAzMCU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIGZvcm0gLm1jNHdwLWZvcm0tZmllbGRzICNzaWdudXAtcm93LTIgW3R5cGU9dGV4dF0ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAzMyU7XG4gICAgdG9wOiA1LjhyZW07XG4gIH1cbn1cbmZvcm0gLm1jNHdwLWZvcm0tZmllbGRzICNzaWdudXAtcm93LTIgW3R5cGU9dGV4dF06OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICMyNDI0MjQ7XG59XG5cbmJ1dHRvbi5wYXNzc3Rlci1zdWJtaXQ6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5idXR0b24ucGFzc3N0ZXItc3VibWl0OmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5wYXNzc3Rlci1mb3JtIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cblxuLnBhc3NzdGVyLWZvcm0gZm9ybS5wYXNzd29yZC1mb3JtIHtcbiAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICBtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xufVxuXG4ubmF2aWdhdGlvbi1mb3JtIHtcbiAgbWFyZ2luOiA0cmVtO1xufVxuLm5hdmlnYXRpb24tZm9ybSBsYWJlbCB7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDByZW07XG59XG4ubmF2aWdhdGlvbi1mb3JtIGlucHV0W3R5cGU9dGV4dF06Zm9jdXMgfiBsYWJlbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ubmF2aWdhdGlvbi1mb3JtIGlucHV0W3R5cGU9dGV4dF06YWN0aXZlIH4gbGFiZWwge1xuICBkaXNwbGF5OiBub25lO1xufVxuLm5hdmlnYXRpb24tZm9ybSBpbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXMgfiBsYWJlbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ubmF2aWdhdGlvbi1mb3JtIGlucHV0W3R5cGU9c3VibWl0XTphY3RpdmUgfiBsYWJlbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ubmF2aWdhdGlvbi1mb3JtIGlucHV0W3R5cGU9dGV4dF0ge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzEzMzM0YztcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjMTMzMzRjO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjMTMzMzRjO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI0ZGRkZGRjtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGJhY2tncm91bmQ6ICMxMzMzNGM7XG59XG4ubmF2aWdhdGlvbi1mb3JtIGlucHV0W3R5cGU9c3VibWl0XSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwcmVtO1xuICByaWdodDogMXJlbTtcbiAgcGFkZGluZzogNXB4IDE1cHg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMCBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNXB4O1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIHotaW5kZXg6IDEwO1xufVxuLm5hdmlnYXRpb24tZm9ybSBpbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXMsIC5uYXZpZ2F0aW9uLWZvcm0gaW5wdXRbdHlwZT1zdWJtaXRdOmFjdGl2ZSB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG4ubmF2aWdhdGlvbi1mb3JtIC5tYWduaWZ5aW5nLWdsYXNzLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtMS41cmVtO1xuICByaWdodDogMXJlbTtcbn1cbi5uYXZpZ2F0aW9uLWZvcm0gLm1hZ25pZnlpbmctZ2xhc3MtY29udGFpbmVyIC5tYWduaWZ5aW5nLWdsYXNzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDAuOGVtO1xuICByaWdodDogMC45ZW07XG4gIGZvbnQtc2l6ZTogMi4yNWVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAwLjRlbTtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMC40ZW07XG4gIGJvcmRlcjogMC4xZW0gc29saWQgI0ZGRkZGRjtcbiAgYm9yZGVyLXJhZGl1czogMC4zNWVtO1xufVxuLm5hdmlnYXRpb24tZm9ybSAubWFnbmlmeWluZy1nbGFzcy1jb250YWluZXIgLm1hZ25pZnlpbmctZ2xhc3M6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogLTAuMjVlbTtcbiAgYm90dG9tOiAtMC4xZW07XG4gIGJvcmRlci13aWR0aDogMDtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgd2lkdGg6IDAuM2VtO1xuICBoZWlnaHQ6IDAuMDhlbTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xufVxuXG4ubmF2aWdhdGlvbi0tc2VhcmNoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxZWVlNztcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xufVxuLm5hdmlnYXRpb24tLXNlYXJjaF9fZm9ybSB7XG4gIGhlaWdodDogOHJlbTtcbiAgd2lkdGg6IDhyZW07XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzgycHgpIHtcbiAgLm5hdmlnYXRpb24tLXNlYXJjaF9fZm9ybSB7XG4gICAgaGVpZ2h0OiAxMDJweDtcbiAgICB3aWR0aDogMTAycHg7XG4gIH1cbn1cbi5uYXZpZ2F0aW9uLS1zZWFyY2hfX2Zvcm0gbGFiZWwsXG4ubmF2aWdhdGlvbi0tc2VhcmNoX19mb3JtIGlucHV0W3R5cGU9dGV4dF0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLm5hdmlnYXRpb24tLXNlYXJjaF9fZm9ybSBpbnB1dFt0eXBlPXN1Ym1pdF0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAxMC43NSU7XG4gIHRvcDogMy41cmVtO1xuICBoZWlnaHQ6IDVyZW07XG4gIHdpZHRoOiA1cmVtO1xuICBvcGFjaXR5OiAwO1xuICB6LWluZGV4OiAxO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4ubmF2aWdhdGlvbi0tc2VhcmNoX19mb3JtIGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgaGVpZ2h0OiA4cmVtO1xuICB3aWR0aDogOHJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxMDA7XG4gIG9wYWNpdHk6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5uYXZpZ2F0aW9uLS1zZWFyY2hfX2Zvcm0gLm1hZ25pZnlpbmctZ2xhc3MtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDhweDtcbiAgcmlnaHQ6IDdweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTM4MnB4KSB7XG4gIC5uYXZpZ2F0aW9uLS1zZWFyY2hfX2Zvcm0gLm1hZ25pZnlpbmctZ2xhc3MtY29udGFpbmVyIHtcbiAgICB0b3A6IDJyZW07XG4gICAgcmlnaHQ6IDE3JTtcbiAgfVxufVxuLm5hdmlnYXRpb24tLXNlYXJjaF9fZm9ybSAubWFnbmlmeWluZy1nbGFzcy1jb250YWluZXIgLm1hZ25pZnlpbmctZ2xhc3Mge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMC44ZW07XG4gIHJpZ2h0OiAwLjllbTtcbiAgZm9udC1zaXplOiAyLjI1ZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDIwcHg7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDIwcHg7XG4gIGJvcmRlcjogMC4xZW0gc29saWQgIzI0MjQyNDtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG59XG4ubmF2aWdhdGlvbi0tc2VhcmNoX19mb3JtIC5tYWduaWZ5aW5nLWdsYXNzLWNvbnRhaW5lciAubWFnbmlmeWluZy1nbGFzczo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAtMC4yNWVtO1xuICBib3R0b206IC0xcHg7XG4gIGJvcmRlci13aWR0aDogMDtcbiAgYmFja2dyb3VuZDogIzI0MjQyNDtcbiAgd2lkdGg6IDAuM2VtO1xuICBoZWlnaHQ6IDAuMDhlbTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xufVxuLm5hdmlnYXRpb24tLXNlYXJjaF9fZm9ybSAubmF2aWdhdGlvbi0tc2VhcmNoX19vdmVybGF5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgaGVpZ2h0OiAxMS41cmVtO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgb3BhY2l0eTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgei1pbmRleDogLTE7XG59XG4ubmF2aWdhdGlvbi0tc2VhcmNoX19mb3JtIGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQgKyAubmF2aWdhdGlvbi0tc2VhcmNoX19vdmVybGF5IHtcbiAgb3BhY2l0eTogMTtcbiAgei1pbmRleDogMTtcbn1cbi5uYXZpZ2F0aW9uLS1zZWFyY2hfX2Zvcm0gaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCArIC5uYXZpZ2F0aW9uLS1zZWFyY2hfX292ZXJsYXk6OmJlZm9yZSwgLm5hdmlnYXRpb24tLXNlYXJjaF9fZm9ybSBpbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkICsgLm5hdmlnYXRpb24tLXNlYXJjaF9fb3ZlcmxheTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAycmVtO1xuICBoZWlnaHQ6IDJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQyNEE1NTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB0b3A6IDZyZW07XG4gIGxlZnQ6IDkyJTtcbn1cbi5uYXZpZ2F0aW9uLS1zZWFyY2hfX2Zvcm0gaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCArIC5uYXZpZ2F0aW9uLS1zZWFyY2hfX292ZXJsYXk6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cbi5uYXZpZ2F0aW9uLS1zZWFyY2hfX2Zvcm0gaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCArIC5uYXZpZ2F0aW9uLS1zZWFyY2hfX292ZXJsYXk6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbn1cbi5uYXZpZ2F0aW9uLS1zZWFyY2hfX2Zvcm0gaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCArIC5uYXZpZ2F0aW9uLS1zZWFyY2hfX292ZXJsYXkgaW5wdXRbdHlwZT10ZXh0XSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogNzAlO1xuICBoZWlnaHQ6IDZyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAzcmVtO1xuICBsZWZ0OiAyMHJlbTtcbiAgei1pbmRleDogMjtcbn1cbi5uYXZpZ2F0aW9uLS1zZWFyY2hfX2Zvcm0gaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCArIC5uYXZpZ2F0aW9uLS1zZWFyY2hfX292ZXJsYXkgbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICM0MjRBNTU7XG4gIGZvbnQtc2l6ZTogM3JlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDNyZW07XG4gIGxlZnQ6IDIxcmVtO1xuICB6LWluZGV4OiAwO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuLm5hdmlnYXRpb24tLXNlYXJjaF9fZm9ybSBpbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkICsgLm5hdmlnYXRpb24tLXNlYXJjaF9fb3ZlcmxheSBpbnB1dFt0eXBlPXRleHRdOmFjdGl2ZSArIGxhYmVsIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5uYXZpZ2F0aW9uLS1zZWFyY2hfX2Zvcm0gaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCArIC5uYXZpZ2F0aW9uLS1zZWFyY2hfX292ZXJsYXkgaW5wdXRbdHlwZT10ZXh0XTpmb2N1cyArIGxhYmVsIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5uYXZpZ2F0aW9uLS1zZWFyY2hfX2Zvcm0gaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCArIC5uYXZpZ2F0aW9uLS1zZWFyY2hfX292ZXJsYXkgLm1hZ25pZnlpbmctZ2xhc3Mtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAzLjVyZW07XG4gIGxlZnQ6IDIwcmVtO1xuICByaWdodDogMTAwJTtcbn1cbi5uYXZpZ2F0aW9uLS1zZWFyY2hfX2Zvcm0gaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCArIC5uYXZpZ2F0aW9uLS1zZWFyY2hfX292ZXJsYXkgLm1hZ25pZnlpbmctZ2xhc3Mtb3ZlcmxheSAubWFnbmlmeWluZy1nbGFzcyB7XG4gIGJvcmRlcjogMC4xZW0gc29saWQgIzQyNEE1NTtcbn1cbi5uYXZpZ2F0aW9uLS1zZWFyY2hfX2Zvcm0gaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCArIC5uYXZpZ2F0aW9uLS1zZWFyY2hfX292ZXJsYXkgLm1hZ25pZnlpbmctZ2xhc3Mtb3ZlcmxheSAubWFnbmlmeWluZy1nbGFzczo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogIzQyNEE1NTtcbn1cbi5uYXZpZ2F0aW9uLS1zZWFyY2hfX2Zvcm0gaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCB+IC5tYWduaWZ5aW5nLWdsYXNzLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5ncmVjYXB0Y2hhLWJhZGdlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyZWNhcHRjaGEtYmFkZ2Uge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuZm9ybS5zZWFyY2hhbmRmaWx0ZXIgc2VsZWN0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZlcnNpb249JzEuMScgd2lkdGg9JzMyJyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMzIgMjQnPjxwb2x5Z29uIHBvaW50cz0nMCwwIDMyLDAgMTYsMjQnIHN0eWxlPSdmaWxsOiByZ2IlMjgxNzEsIDE3NCwgMTgwJTI5Jz48L3BvbHlnb24+PC9zdmc+XCIpO1xufVxuXG5mb3JtLnNlYXJjaGZpbHRlcmV2ZW50IHNlbGVjdCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2ZXJzaW9uPScxLjEnIHdpZHRoPSczMicgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDMyIDI0Jz48cG9seWdvbiBwb2ludHM9JzAsMCAzMiwwIDE2LDI0JyBzdHlsZT0nZmlsbDogcmdiJTI4MTcxLCAxNzQsIDE4MCUyOSc+PC9wb2x5Z29uPjwvc3ZnPlwiKTtcbn1cblxuLnd1Zm9vLWZvcm0tY29udGFpbmVyIHtcbiAgaGVpZ2h0OiAxMjByZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwIGF1dG8gNXJlbSBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gYTpmb2N1cywgYnV0dG9uOmZvY3VzIFtkYXRhLXdoYXRpbnB1dD10b3VjaF0gYTpmb2N1cyxcbmJ1dHRvbjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5oZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDEwMDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm5hdmlnYXRpb24ge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuLm5hdmlnYXRpb24tbW9iaWxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubmF2aWdhdGlvbi1tb2JpbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi5uYXZpZ2F0aW9uLWRlc2t0b3Age1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm5hdmlnYXRpb24tZGVza3RvcCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbi5uYXZpZ2F0aW9uLW1vYmlsZSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgaGVpZ2h0OiAxNHJlbTtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgd2lkdGg6IDEwMCU7XG59XG4ubmF2aWdhdGlvbi1tb2JpbGVfX2xvZ28gaW1nIHtcbiAgd2lkdGg6IDEzcmVtO1xuICBtYXJnaW46IDFyZW0gMCAwIDFyZW07XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgLm5hdmlnYXRpb24tbW9iaWxlX19sb2dvIGltZyB7XG4gICAgd2lkdGg6IDI1cmVtO1xuICAgIG1hcmdpbjogMTBweCBhdXRvO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4ubmF2aWdhdGlvbi1tb2JpbGVfX2hhbWJ1cmdlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogODUlO1xuICB0b3A6IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubmF2aWdhdGlvbi1tb2JpbGVfX2hhbWJ1cmdlciB7XG4gICAgbGVmdDogOTAlO1xuICB9XG59XG4ubmF2aWdhdGlvbi1tb2JpbGVfX2hhbWJ1cmdlciAubmF2aWdhdGlvbl9fY2hlY2tib3gge1xuICBkaXNwbGF5OiBub25lO1xufVxuLm5hdmlnYXRpb24tbW9iaWxlX19oYW1idXJnZXIgLm5hdmlnYXRpb25fX2ljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6IDMuNXJlbTtcbn1cbi5uYXZpZ2F0aW9uLW1vYmlsZV9faGFtYnVyZ2VyIC5uYXZpZ2F0aW9uX19pY29uLCAubmF2aWdhdGlvbi1tb2JpbGVfX2hhbWJ1cmdlciAubmF2aWdhdGlvbl9faWNvbjo6YmVmb3JlLCAubmF2aWdhdGlvbi1tb2JpbGVfX2hhbWJ1cmdlciAubmF2aWdhdGlvbl9faWNvbjo6YWZ0ZXIge1xuICB3aWR0aDogMnJlbTtcbiAgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxQjRFNzQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5uYXZpZ2F0aW9uLW1vYmlsZV9faGFtYnVyZ2VyIC5uYXZpZ2F0aW9uX19pY29uOjpiZWZvcmUsIC5uYXZpZ2F0aW9uLW1vYmlsZV9faGFtYnVyZ2VyIC5uYXZpZ2F0aW9uX19pY29uOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuOHMgY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7XG59XG4ubmF2aWdhdGlvbi1tb2JpbGVfX2hhbWJ1cmdlciAubmF2aWdhdGlvbl9faWNvbjo6YmVmb3JlIHtcbiAgdG9wOiAtMC44cmVtO1xufVxuLm5hdmlnYXRpb24tbW9iaWxlX19oYW1idXJnZXIgLm5hdmlnYXRpb25fX2ljb246OmFmdGVyIHtcbiAgdG9wOiAwLjhyZW07XG59XG4ubmF2aWdhdGlvbi1tb2JpbGVfX2hhbWJ1cmdlciAubmF2aWdhdGlvbl9fY2hlY2tib3g6Y2hlY2tlZCArIC5uYXZpZ2F0aW9uX19idXR0b24gLm5hdmlnYXRpb25fX2ljb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5uYXZpZ2F0aW9uLW1vYmlsZV9faGFtYnVyZ2VyIC5uYXZpZ2F0aW9uX19jaGVja2JveDpjaGVja2VkICsgLm5hdmlnYXRpb25fX2J1dHRvbiAubmF2aWdhdGlvbl9faWNvbjo6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICB6LWluZGV4OiAxMDA7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogODYlO1xuICB0b3A6IDRyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubmF2aWdhdGlvbi1tb2JpbGVfX2hhbWJ1cmdlciAubmF2aWdhdGlvbl9fY2hlY2tib3g6Y2hlY2tlZCArIC5uYXZpZ2F0aW9uX19idXR0b24gLm5hdmlnYXRpb25fX2ljb246OmJlZm9yZSB7XG4gICAgbGVmdDogOTAlO1xuICB9XG59XG4ubmF2aWdhdGlvbi1tb2JpbGVfX2hhbWJ1cmdlciAubmF2aWdhdGlvbl9fY2hlY2tib3g6Y2hlY2tlZCArIC5uYXZpZ2F0aW9uX19idXR0b24gLm5hdmlnYXRpb25fX2ljb246OmFmdGVyIHtcbiAgdG9wOiAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTM1ZGVnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgei1pbmRleDogMTAwO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDg2JTtcbiAgdG9wOiA0cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm5hdmlnYXRpb24tbW9iaWxlX19oYW1idXJnZXIgLm5hdmlnYXRpb25fX2NoZWNrYm94OmNoZWNrZWQgKyAubmF2aWdhdGlvbl9fYnV0dG9uIC5uYXZpZ2F0aW9uX19pY29uOjphZnRlciB7XG4gICAgbGVmdDogOTAlO1xuICB9XG59XG4ubmF2aWdhdGlvbi1tb2JpbGUgLm5hdmlnYXRpb25fX292ZXJsYXkge1xuICBoZWlnaHQ6IDEwMHZoO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMjA7XG4gIG9wYWNpdHk6IDA7XG4gIHdpZHRoOiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC44cyBjdWJpYy1iZXppZXIoMC42OCwgLTAuNTUsIDAuMjY1LCAxLjU1KTtcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xufVxuLm5hdmlnYXRpb24tbW9iaWxlIC5uYXZpZ2F0aW9uX19vdmVybGF5IC5uYXZpZ2F0aW9uX19saXN0IHtcbiAgbWFyZ2luOiA1cmVtIDA7XG59XG4ubmF2aWdhdGlvbi1tb2JpbGUgLm5hdmlnYXRpb25fX292ZXJsYXkgLm5hdmlnYXRpb25fX2l0ZW0ge1xuICBtYXJnaW46IDIuNXJlbSAwO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXNpemU6IDJyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLm5hdmlnYXRpb24tbW9iaWxlIC5uYXZpZ2F0aW9uX19vdmVybGF5IC5idXR0b24tZHJvcGRvd24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDgwJTtcbiAgdG9wOiAtMXJlbTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGZvbnQtc2l6ZTogM3JlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5uYXZpZ2F0aW9uLW1vYmlsZSAubmF2aWdhdGlvbl9fb3ZlcmxheSAuYnV0dG9uLWRyb3Bkb3duIHtcbiAgICBsZWZ0OiA3MCU7XG4gIH1cbn1cbi5uYXZpZ2F0aW9uLW1vYmlsZSAubmF2aWdhdGlvbl9fb3ZlcmxheSAuc3ViLW1lbnUtLW1vYmlsZSAuaXRlbSB7XG4gIGhlaWdodDogMDtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbjtcbn1cbi5uYXZpZ2F0aW9uLW1vYmlsZSAubmF2aWdhdGlvbl9fb3ZlcmxheSAuc3ViLW1lbnUtLW1vYmlsZSAub3BlbiB7XG4gIGhlaWdodDogMTAwJTtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1vdXQ7XG59XG4ubmF2aWdhdGlvbi1tb2JpbGUgLm5hdmlnYXRpb25fX292ZXJsYXkgLnN1Yi1tZW51LS1tb2JpbGUgLnRpdGxlLS1zdWIge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgZm9udC1zaXplOiAxLjhyZW07XG59XG4ubmF2aWdhdGlvbi1tb2JpbGUgLm5hdmlnYXRpb25fX292ZXJsYXkgLm5hdmlnYXRpb25fX2xpbmsge1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5uYXZpZ2F0aW9uLW1vYmlsZSAubmF2aWdhdGlvbl9fb3ZlcmxheSAubmF2aWdhdGlvbl9fbGluay0tbG9naW4gc3ZnIHtcbiAgbWFyZ2luOiAwIDAgMCAwLjVyZW07XG59XG4ubmF2aWdhdGlvbi1tb2JpbGUgLm5hdmlnYXRpb25fX292ZXJsYXkgLm5hdmlnYXRpb25fX2xpbmstLWxvZ2luIHN2ZyBlbGxpcHNlLFxuLm5hdmlnYXRpb24tbW9iaWxlIC5uYXZpZ2F0aW9uX19vdmVybGF5IC5uYXZpZ2F0aW9uX19saW5rLS1sb2dpbiBzdmcgcGF0aCB7XG4gIGZpbGw6ICNGRkZGRkY7XG59XG4ubmF2aWdhdGlvbi1tb2JpbGUgLm5hdmlnYXRpb25fX292ZXJsYXkgLmJvdHRvbS1saXN0IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLm5hdmlnYXRpb24tbW9iaWxlIC5uYXZpZ2F0aW9uX19vdmVybGF5IC5ib3R0b20tbGlzdCAubmF2aWdhdGlvbl9fbGluayB7XG4gIG1hcmdpbjogMnJlbTtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4ubmF2aWdhdGlvbi1tb2JpbGUgLm5hdmlnYXRpb25fX2NoZWNrYm94OmNoZWNrZWQgfiAubmF2aWdhdGlvbl9fb3ZlcmxheSB7XG4gIG9wYWNpdHk6IDE7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTMzMzRDO1xufVxuLm5hdmlnYXRpb24gLm5hdmlnYXRpb24tZGVza3RvcCB7XG4gIG1hcmdpbjogMCA4cmVtIDAgOHJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgYm94LXNoYWRvdzogMCAxcmVtIDAuNXJlbSByZ2JhKDM2LCAzNiwgMzYsIDAuMSk7XG59XG4ubmF2aWdhdGlvbiAubmF2aWdhdGlvbi1kZXNrdG9wX19saXN0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjRkZGRkZGLCAjZjhmN2Y0KTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNDJweDtcbiAgcGFkZGluZzogMXJlbSAycmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4ubmF2aWdhdGlvbiAubmF2aWdhdGlvbi1kZXNrdG9wX19saXN0OjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNGRkZGRkYsICNjZWQyZDkpO1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDEuNXB4O1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG59XG4ubmF2aWdhdGlvbiAubmF2aWdhdGlvbi1kZXNrdG9wX19saXN0IC5uYXZpZ2F0aW9uX19saW5rIHtcbiAgZm9udC1zaXplOiAxLjJyZW07XG4gIGNvbG9yOiAjMjQyNDI0O1xuICBmb250LXdlaWdodDogNzAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuLm5hdmlnYXRpb24gLm5hdmlnYXRpb24tZGVza3RvcF9fbGlzdCAubmF2aWdhdGlvbl9fbGluazpob3ZlciB7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG59XG4ubmF2aWdhdGlvbiAubmF2aWdhdGlvbi1kZXNrdG9wX19saXN0IC5uYXZpZ2F0aW9uX19saW5rOm5vdCg6bGFzdC1jaGlsZCkge1xuICBwYWRkaW5nOiAwIDFyZW07XG59XG4ubmF2aWdhdGlvbiAubmF2aWdhdGlvbi1kZXNrdG9wX19saXN0IC5uYXZpZ2F0aW9uX19saW5rOmxhc3QtY2hpbGQge1xuICBwYWRkaW5nOiAwIDAgMCAxcmVtO1xufVxuLm5hdmlnYXRpb24gLm5hdmlnYXRpb24tZGVza3RvcF9fbGlzdCAubmF2aWdhdGlvbl9fbGluay0tbG9naW4gc3ZnIHtcbiAgbWFyZ2luOiAwIDAgMCAwLjVyZW07XG59XG4ubmF2aWdhdGlvbi1tZW51IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogODBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTM4MnB4KSB7XG4gIC5uYXZpZ2F0aW9uLW1lbnUge1xuICAgIGhlaWdodDogMTAycHg7XG4gIH1cbn1cbi5uYXZpZ2F0aW9uLW1lbnUgaW1nIHtcbiAgaGVpZ2h0OiA4cmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTI3cHg7XG4gIGxlZnQ6IDNyZW07XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzgycHgpIHtcbiAgLm5hdmlnYXRpb24tbWVudSBpbWcge1xuICAgIHRvcDogLTQwcHg7XG4gICAgaGVpZ2h0OiAxMzFweDtcbiAgfVxufVxuLm5hdmlnYXRpb24tbWVudSAubmF2aWdhdGlvbl9fbGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWxlZnQ6IDI1JTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzODJweCkge1xuICAubmF2aWdhdGlvbi1tZW51IC5uYXZpZ2F0aW9uX19saXN0IHtcbiAgICBtYXJnaW4tbGVmdDogMzclO1xuICB9XG59XG4ubmF2aWdhdGlvbi1tZW51IC5uYXZpZ2F0aW9uX19pdGVtIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZmxleDogMCAxIGF1dG87XG4gIGFsaWduLXNlbGY6IGF1dG87XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgaGVpZ2h0OiAzcmVtO1xufVxuLm5hdmlnYXRpb24tbWVudSAubmF2aWdhdGlvbl9faXRlbSAudGl0bGUge1xuICBjb2xvcjogIzFCNEU3NDtcbiAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzODJweCkge1xuICAubmF2aWdhdGlvbi1tZW51IC5uYXZpZ2F0aW9uX19pdGVtIC50aXRsZSB7XG4gICAgZm9udC1zaXplOiAxN3B4O1xuICB9XG59XG4ubmF2aWdhdGlvbi1tZW51IC5uYXZpZ2F0aW9uX19pdGVtIC5zdWItbWVudSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIG1hcmdpbjogMXJlbSAwIDAgMDtcbiAgcGFkZGluZzogMXJlbSAxcmVtIDAuNXJlbSAxcmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHotaW5kZXg6IDEwO1xuICBjb2xvcjogIzFCNEU3NDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3gtc2hhZG93OiAwIDFyZW0gMC41cmVtIHJnYmEoMzYsIDM2LCAzNiwgMC4xKTtcbiAgd2lkdGg6IDE4NXB4O1xufVxuLm5hdmlnYXRpb24tbWVudSAubmF2aWdhdGlvbl9faXRlbSAuc3ViLW1lbnUgLml0ZW0ge1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG59XG4ubmF2aWdhdGlvbi1tZW51IC5uYXZpZ2F0aW9uX19pdGVtIC5zdWItbWVudSBhOmhvdmVyIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjMUI0RTc0O1xufVxuLm5hdmlnYXRpb24tbWVudSAubmF2aWdhdGlvbl9faXRlbTpob3ZlciB7XG4gIHBhZGRpbmc6IDQuNXJlbSAwO1xufVxuLm5hdmlnYXRpb24tbWVudSAubmF2aWdhdGlvbl9faXRlbTpob3ZlciAubmF2aWdhdGlvbl9faXRlbS1pbWcge1xuICBoZWlnaHQ6IDIuMjVyZW07XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3A7XG4gIGJhY2tncm91bmQtc2l6ZTogMS42cmVtO1xuICBtYXJnaW46IC0yLjI1cmVtIDAgMCAwO1xufVxuLm5hdmlnYXRpb24tbWVudSAubmF2aWdhdGlvbl9faXRlbTpob3ZlciAubmF2aWdhdGlvbl9faXRlbS1pbWcxIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi9pbWFnZXMvbmF2SWNvbnMvYWJvdXR1cy5zdmdcIik7XG59XG4ubmF2aWdhdGlvbi1tZW51IC5uYXZpZ2F0aW9uX19pdGVtOmhvdmVyIC5uYXZpZ2F0aW9uX19pdGVtLWltZzIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuL2ltYWdlcy9uYXZJY29ucy9uZXdzLnN2Z1wiKTtcbn1cbi5uYXZpZ2F0aW9uLW1lbnUgLm5hdmlnYXRpb25fX2l0ZW06aG92ZXIgLm5hdmlnYXRpb25fX2l0ZW0taW1nMyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4vaW1hZ2VzL25hdkljb25zL3JlZm9ybS5zdmdcIik7XG59XG4ubmF2aWdhdGlvbi1tZW51IC5uYXZpZ2F0aW9uX19pdGVtOmhvdmVyIC5uYXZpZ2F0aW9uX19pdGVtLWltZzQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuL2ltYWdlcy9uYXZJY29ucy9hcnQuc3ZnXCIpO1xufVxuLm5hdmlnYXRpb24tbWVudSAubmF2aWdhdGlvbl9faXRlbTpob3ZlciAubmF2aWdhdGlvbl9faXRlbS1pbWc1IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi9pbWFnZXMvbmF2SWNvbnMvZXZlbnRzLnN2Z1wiKTtcbn1cbi5uYXZpZ2F0aW9uLW1lbnUgLm5hdmlnYXRpb25fX2l0ZW06aG92ZXIgLm5hdmlnYXRpb25fX2l0ZW0taW1nNiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4vaW1hZ2VzL25hdkljb25zL3Jlc291cmNlcy5zdmdcIik7XG59XG4ubmF2aWdhdGlvbi1tZW51IC5uYXZpZ2F0aW9uX19pdGVtOmhvdmVyIC50aXRsZSB7XG4gIGNvbG9yOiAjYjQxMjEyO1xuICBwYWRkaW5nOiAwIDAgMTFweCAwO1xuICBib3JkZXItYm90dG9tOiAzcHggc29saWQgY3VycmVudENvbG9yO1xufVxuLm5hdmlnYXRpb24tbWVudSAubmF2aWdhdGlvbl9faXRlbTpob3ZlciAuc3ViLW1lbnUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuKjo6c2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFCNEU3NDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5cbi5tYWluLWNvbnRhaW5lciB7XG4gIHBhZGRpbmctcmlnaHQ6IDJyZW07XG4gIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgbWF4LXdpZHRoOiAxMjByZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWFpbi1jb250YWluZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICB9XG59XG5cbi5tYWluLWdyaWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBtYXJnaW4tdG9wOiAxcmVtO1xufVxuLm1haW4tZ3JpZC5zaWRlYmFyLWxlZnQgLm1haW4tY29udGVudCB7XG4gIG9yZGVyOiAxO1xufVxuLm1haW4tZ3JpZC5zaWRlYmFyLWxlZnQgLnNpZGViYXIge1xuICBvcmRlcjogMjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tYWluLWdyaWQuc2lkZWJhci1sZWZ0IC5tYWluLWNvbnRlbnQge1xuICAgIG9yZGVyOiAyO1xuICB9XG4gIC5tYWluLWdyaWQuc2lkZWJhci1sZWZ0IC5zaWRlYmFyIHtcbiAgICBvcmRlcjogMTtcbiAgfVxufVxuLm1haW4tZ3JpZCAubWFpbi1jb250ZW50LWZ1bGwtd2lkdGgge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDRyZW0pO1xuICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAycmVtO1xufVxuLm1haW4tZ3JpZCAubWFpbi1jb250ZW50IHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSA0cmVtKTtcbiAgbWFyZ2luLWxlZnQ6IDJyZW07XG4gIG1hcmdpbi1yaWdodDogMnJlbTtcbiAgZm9udC1zaXplOiAxLjhyZW07XG59XG4ubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQgYSB7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG59XG4ubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQgaWZyYW1lIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tYWluLWdyaWQgLm1haW4tY29udGVudCBpZnJhbWUge1xuICAgIHdpZHRoOiA1MHJlbTtcbiAgICBoZWlnaHQ6IDI4LjFyZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cbi5tYWluLWdyaWQgLm1haW4tY29udGVudCBsaSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5tYWluLWdyaWQgLm1haW4tY29udGVudCBsaTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyOiAycHggc29saWQgIzFCNEU3NDtcbiAgd2lkdGg6IDFyZW07XG4gIGhlaWdodDogMXJlbTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogLTIwcHg7XG4gIHRvcDogMTFweDtcbn1cbi5tYWluLWdyaWQgLm1haW4tY29udGVudCAud3AtYmxvY2staW1hZ2UgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tYWluLWdyaWQgLm1haW4tY29udGVudCAud3AtYmxvY2staW1hZ2UgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDQwcmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQgLndwLWJsb2NrLWltYWdlIGltZyB7XG4gICAgbWF4LXdpZHRoOiA3MHJlbTtcbiAgfVxufVxuLm1haW4tZ3JpZCAubWFpbi1jb250ZW50IC53cC1ibG9jay1pbWFnZSBmaWdjYXB0aW9uIHtcbiAgY29sb3I6ICNBQkFFQjQ7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbjogMXJlbSBhdXRvO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1haW4tZ3JpZCAubWFpbi1jb250ZW50IC53cC1ibG9jay1pbWFnZSBmaWdjYXB0aW9uIHtcbiAgICBtYXgtd2lkdGg6IDQwcmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQgLndwLWJsb2NrLWltYWdlIGZpZ2NhcHRpb24ge1xuICAgIG1heC13aWR0aDogNzByZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tYWluLWdyaWQgLm1haW4tY29udGVudCB1bCwgLm1haW4tZ3JpZCAubWFpbi1jb250ZW50IG9sIHtcbiAgICBtYXJnaW4tbGVmdDogMjguMjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAyM3JlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1haW4tZ3JpZCAubWFpbi1jb250ZW50IHVsIHVsLCAubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQgdWwgb2wsIC5tYWluLWdyaWQgLm1haW4tY29udGVudCBvbCB1bCwgLm1haW4tZ3JpZCAubWFpbi1jb250ZW50IG9sIG9sIHtcbiAgICBtYXJnaW4tbGVmdDogMi4yNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tYWluLWdyaWQgLm1haW4tY29udGVudCBibG9ja3F1b3RlIHtcbiAgICBtYXJnaW46IDRyZW0gMTByZW0gNHJlbSAxMHJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1haW4tZ3JpZCAubWFpbi1jb250ZW50IHtcbiAgICAvKlxuICAgIFRISVMgSVMgVkVSWSBJTVBPUlRBTlQhXG4gICAgaXQga2VlcHMgdGhlIGFydGljbGVzIChmZWF0dXJlIHBhbmVscyksXG4gICAgYmxvY2txdW90ZXMsIGZpZ3VyZXMgKGltYWdlcyksIGFuZCB1bCBmcm9tIGJlaW5nXG4gICAgIGFmZmVjdGVkIGJ5IHRoZSBtYXJnaW4gUiBhbmQgTCBlZmZlY3RzXG4gICAgKi9cbiAgfVxuICAubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQgLmVudHJ5LWNvbnRlbnQgLnBmLWNvbnRlbnQgPiA6bm90KGFydGljbGUpOm5vdChibG9ja3F1b3RlKTpub3QoZmlndXJlKTpub3QodWwpOm5vdCgud3AtYmxvY2staW1hZ2UpOm5vdCgud3AtYmxvY2stcXVlcnkpIHtcbiAgICBtYXJnaW46IDFyZW0gMjNyZW0gMCAyM3JlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1haW4tZ3JpZCAuc2VjdGlvbi0gLmVudHJ5LWNvbnRlbnQgLnBmLWNvbnRlbnQgPiA6bm90KGFydGljbGUpOm5vdChibG9ja3F1b3RlKTpub3QoZmlndXJlKTpub3QodWwpOm5vdCgud3AtYmxvY2staW1hZ2UpIHtcbiAgICBtYXJnaW46IDFyZW0gOXJlbSAwIDlyZW07XG4gIH1cbn1cbi5tYWluLWdyaWQgLnNpZGViYXIge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDRyZW0pO1xuICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1haW4tZ3JpZCAuc2lkZWJhciB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSAycmVtKTtcbiAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgfVxufVxuXG4uaW1hZ2UtcGxhY2Vob2xkZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAyNDBweDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cHM6Ly93d3cuY29uZ3Jlc3Npb25hbGluc3RpdHV0ZS5vcmcvd3AtY29udGVudC91cGxvYWRzLzIwMTkvMDkvQ0lfQmxvZ3Bvc3RfSW1hZ2VfMS5wbmdcIik7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG5cbi5mb290ZXIge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgbWFyZ2luOiA5cmVtIDAgMCAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZm9vdGVyIHtcbiAgICBtYXJnaW46IDNyZW0gMCAwIDA7XG4gIH1cbn1cbi5mb290ZXJfX3BpY3R1cmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IC0xO1xuICBib3R0b206IDk2cmVtO1xuICByaWdodDogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5mb290ZXJfX3BpY3R1cmUge1xuICAgIGJvdHRvbTogOTRyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mb290ZXJfX3BpY3R1cmUge1xuICAgIGJvdHRvbTogNDJyZW07XG4gIH1cbn1cbi5mb290ZXJfX3BpY3R1cmUgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IDQ1cmVtO1xuICBtYXgtd2lkdGg6IDEwMHJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mb290ZXJfX3BpY3R1cmUgaW1nIHtcbiAgICBoZWlnaHQ6IDY1cmVtO1xuICB9XG59XG4uZm9vdGVyX19idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTZyZW07XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgei1pbmRleDogMTA7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5mb290ZXJfX2J1dHRvbiB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGxlZnQ6IDk3LjUlO1xuICAgIHRvcDogY2FsYygxMDAlIC0gNDlyZW0pO1xuICB9XG59XG4uZm9vdGVyX19mb3JtIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi9pbWFnZXMvYmFja2dyb3VuZHMvQ0lfSGVhZGVySW1hZ2VfU3RhbmRhcmQucG5nXCIpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHBhZGRpbmc6IDNyZW07XG4gIG1hcmdpbjogMCAzcmVtIDAgM3JlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmZvb3Rlcl9fZm9ybSAuZm9ybS1idXR0b24ge1xuICBjb2xvcjogIzI0MjQyNDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mb290ZXJfX2Zvcm0ge1xuICAgIGhlaWdodDogMjhyZW07XG4gICAgcGFkZGluZzogOHJlbSA0cmVtIDhyZW0gNHJlbTtcbiAgICBtYXgtd2lkdGg6IDExNHJlbTtcbiAgICBtYXJnaW46IGF1dG87XG4gIH1cbn1cbi5mb290ZXJfX2Zvcm06OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDc1JTtcbiAgd2lkdGg6IDEwMHZ3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTMzMzRjO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IC0zcmVtO1xuICB6LWluZGV4OiAtMTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mb290ZXJfX2Zvcm06OmJlZm9yZSB7XG4gICAgaGVpZ2h0OiA2NSU7XG4gICAgcmlnaHQ6IDEwMCU7XG4gIH1cbn1cbi5mb290ZXJfX2Zvcm06OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogNzUlO1xuICB3aWR0aDogMTAwdnc7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMzMzNGM7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAtM3JlbTtcbiAgei1pbmRleDogLTE7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZm9vdGVyX19mb3JtOjphZnRlciB7XG4gICAgaGVpZ2h0OiA2NSU7XG4gICAgbGVmdDogMTAwJTtcbiAgfVxufVxuLmZvb3Rlcl9fZm9ybSAuZmxleC1jaGlsZC1hdXRvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmZvb3Rlcl9fZm9ybSBoMyB7XG4gIHdpZHRoOiA2MCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmctYm90dG9tOiAycmVtO1xuICBjb2xvcjogIzI0MjQyNDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mb290ZXJfX2Zvcm0gaDMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogNHJlbSAwIDAgMDtcbiAgfVxufVxuLmZvb3Rlcl9fY29udGFjdCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzEzMzM0YztcbiAgY29sb3I6ICNBN0MxRTQ7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBwYWRkaW5nOiAzcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZvb3Rlcl9fY29udGFjdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwYWRkaW5nOiA0cmVtIDVyZW0gMCA1cmVtO1xuICB9XG59XG4uZm9vdGVyX19jb250YWN0IGEge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG59XG4uZm9vdGVyX19jb250YWN0LS1lbGUge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuLmZvb3Rlcl9fY29udGFjdC0tZWxlIC5pbmZvIHtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZm9vdGVyX19jb250YWN0LS10b3Age1xuICAgIHBhZGRpbmc6IDJyZW0gM3JlbSAycmVtIDNyZW07XG4gIH1cbn1cbi5mb290ZXJfX2NvbnRhY3QtLXRvcCAubG9nbyB7XG4gIHdpZHRoOiAxMjVweDtcbiAgaGVpZ2h0OiA1MnB4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZvb3Rlcl9fY29udGFjdC0tdG9wIC5sb2dvIHtcbiAgICB3aWR0aDogMTcwcHg7XG4gICAgaGVpZ2h0OiA3MHB4O1xuICB9XG59XG4uZm9vdGVyX19jb250YWN0LS10b3AgLmZvb3Rlcl9fY29udGFjdC0tZWxlOm50aC1jaGlsZCgyKSB7XG4gIG9yZGVyOiAzO1xufVxuLmZvb3Rlcl9fY29udGFjdC0tdG9wIC5mb290ZXJfX2NvbnRhY3QtLWVsZTpudGgtY2hpbGQoMykge1xuICBvcmRlcjogNDtcbn1cbi5mb290ZXJfX2NvbnRhY3QtLXRvcCAuZm9vdGVyX19jb250YWN0LS1lbGU6bnRoLWNoaWxkKDQpIHtcbiAgb3JkZXI6IDU7XG59XG4uZm9vdGVyX19jb250YWN0LS10b3AgLmZvb3Rlcl9fY29udGFjdC0tZWxlOm50aC1jaGlsZCg1KSB7XG4gIG9yZGVyOiAyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmZvb3Rlcl9fY29udGFjdC0tdG9wIC5mb290ZXJfX2NvbnRhY3QtLWVsZTpudGgtY2hpbGQoMikge1xuICAgIG9yZGVyOiAyO1xuICB9XG4gIC5mb290ZXJfX2NvbnRhY3QtLXRvcCAuZm9vdGVyX19jb250YWN0LS1lbGU6bnRoLWNoaWxkKDMpIHtcbiAgICBvcmRlcjogMztcbiAgfVxuICAuZm9vdGVyX19jb250YWN0LS10b3AgLmZvb3Rlcl9fY29udGFjdC0tZWxlOm50aC1jaGlsZCg0KSB7XG4gICAgb3JkZXI6IDQ7XG4gIH1cbiAgLmZvb3Rlcl9fY29udGFjdC0tdG9wIC5mb290ZXJfX2NvbnRhY3QtLWVsZTpudGgtY2hpbGQoNSkge1xuICAgIG9yZGVyOiA1O1xuICB9XG59XG4uZm9vdGVyX19jb250YWN0LS10b3AgLmZvb3Rlcl9fY29udGFjdC0tZWxlIC5uYXZpZ2F0aW9uLWZvcm0ge1xuICBtYXJnaW46IDJyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZm9vdGVyX19jb250YWN0LS10b3AgLmZvb3Rlcl9fY29udGFjdC0tZWxlIC5uYXZpZ2F0aW9uLWZvcm0ge1xuICAgIG1hcmdpbjogMnJlbSAwIDAgMDtcbiAgfVxufVxuLmZvb3Rlcl9fY29udGFjdC0tdG9wIC5mb290ZXJfX2NvbnRhY3QtLWVsZSAubmF2aWdhdGlvbi1mb3JtIGlucHV0W3R5cGU9dGV4dF0ge1xuICBmb250LXNpemU6IDEuNnJlbTtcbn1cbi5mb290ZXJfX2NvbnRhY3QtLXRvcCAuZm9vdGVyX19jb250YWN0LS1lbGUgLm5hdmlnYXRpb24tZm9ybSBpbnB1dFt0eXBlPXRleHRdOjpwbGFjZWhvbGRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMXJlbTtcbiAgbGVmdDogLTAuNXJlbTtcbn1cbi5mb290ZXJfX2NvbnRhY3QtLXRvcCAuZm9vdGVyX19jb250YWN0LS1lbGUgLm5hdmlnYXRpb24tZm9ybSBpbnB1dFt0eXBlPXRleHRdOmFjdGl2ZTo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uZm9vdGVyX19jb250YWN0LS10b3AgLmZvb3Rlcl9fY29udGFjdC0tZWxlIC5uYXZpZ2F0aW9uLWZvcm0gaW5wdXRbdHlwZT10ZXh0XTpmb2N1czo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uZm9vdGVyX19jb250YWN0LS10b3AgLmZvb3Rlcl9fY29udGFjdC0tZWxlIC5uYXZpZ2F0aW9uLWZvcm0gaW5wdXRbdHlwZT1zdWJtaXRdIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiA1cmVtO1xuICBoZWlnaHQ6IDVyZW07XG4gIHotaW5kZXg6IDExO1xuICBvcGFjaXR5OiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG59XG4uZm9vdGVyX19jb250YWN0LS10b3AgLmZvb3Rlcl9fY29udGFjdC0tZWxlIC5uYXZpZ2F0aW9uLWZvcm0gLm1hZ25pZnlpbmctZ2xhc3MtY29udGFpbmVyIHtcbiAgdG9wOiAtMi41cmVtO1xuICByaWdodDogLTJyZW07XG4gIHotaW5kZXg6IDE7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZm9vdGVyX19jb250YWN0LS10b3AgLmZvb3Rlcl9fY29udGFjdC0tZWxlIC5uYXZpZ2F0aW9uLWZvcm0gLm1hZ25pZnlpbmctZ2xhc3MtY29udGFpbmVyIHtcbiAgICB0b3A6IC0ycmVtO1xuICB9XG59XG4uZm9vdGVyX19jb250YWN0LS10b3AgLmZvb3Rlcl9fY29udGFjdC0tZWxlIC5uYXZpZ2F0aW9uLWZvcm0gLm1hZ25pZnlpbmctZ2xhc3MtY29udGFpbmVyIC5tYWduaWZ5aW5nLWdsYXNzIHtcbiAgaGVpZ2h0OiAwLjNlbTtcbiAgd2lkdGg6IDAuM2VtO1xuICBmb250LXNpemU6IDEuNWVtO1xuICB0b3A6IDNyZW07XG4gIGxlZnQ6IC00cmVtO1xufVxuLmZvb3Rlcl9fY29udGFjdC0tYm90dG9tIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IDEuMnJlbTtcbiAgcGFkZGluZzogMnJlbSAwIDJyZW0gMHJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mb290ZXJfX2NvbnRhY3QtLWJvdHRvbSB7XG4gICAgcGFkZGluZzogMnJlbSAwIDRyZW0gMDtcbiAgfVxufVxuLmZvb3Rlcl9fY29udGFjdC0tYm90dG9tOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZmZmO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAtM3JlbTtcbiAgd2lkdGg6IDEwMHZ3O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZvb3Rlcl9fY29udGFjdC0tYm90dG9tOjpiZWZvcmUge1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZm9vdGVyX19jb250YWN0LS1ib3R0b20tLWVsZTpudGgtY2hpbGQoMSkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAzcmVtO1xuICB9XG4gIC5mb290ZXJfX2NvbnRhY3QtLWJvdHRvbS0tZWxlOm50aC1jaGlsZCgyKSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAzcmVtO1xuICB9XG59XG4uZm9vdGVyX19jb250YWN0LS1ib3R0b20tLWVsZSAuZmEge1xuICBmb250LXNpemU6IDJyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBwYWRkaW5nOiAwLjVyZW0gMC4yNXJlbSAwIDFyZW07XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xufVxuLmZvb3Rlcl9fY29udGFjdC0tYm90dG9tLS1lbGUgLmZhLWZhY2Vib29rIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNGRkZGRkY7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNGRkZGRkY7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI0ZGRkZGRjtcbiAgY29sb3I6ICMxMzMzNGM7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgbWFyZ2luLWxlZnQ6IDJyZW07XG59XG4uZm9vdGVyX19jb250YWN0LS1ib3R0b20tLWVsZSAuZmEtdHdpdHRlcixcbi5mb290ZXJfX2NvbnRhY3QtLWJvdHRvbS0tZWxlIC5mYS14LXR3aXR0ZXIge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgZm9udC1zaXplOiAyLjVyZW07XG59XG4uZm9vdGVyX19jb250YWN0LS1ib3R0b20tLWVsZSAubGluayB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIG1hcmdpbjogMnJlbSAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZvb3Rlcl9fY29udGFjdC0tYm90dG9tLS1lbGUgLmxpbmsge1xuICAgIG1hcmdpbjogMHJlbSAzcmVtIDByZW0gMDtcbiAgfVxuICAuZm9vdGVyX19jb250YWN0LS1ib3R0b20tLWVsZSAubGluazpudGgtY2hpbGQoMykge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuXG4uZmVhdHVyZXBhbmVsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDByZW0gMHJlbSA0LjVyZW0gMHJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mZWF0dXJlcGFuZWwge1xuICAgIG1hcmdpbjogN3JlbSAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiA0MHJlbTtcbiAgfVxufVxuLmZlYXR1cmVwYW5lbDo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiB2YXIoLS1ib3JkZXItZ3JleSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA0NXB4O1xuICBsZWZ0OiAtMTVweDtcbiAgd2lkdGg6IDExMCU7XG4gIGhlaWdodDogOTYlO1xuICB6LWluZGV4OiAtMTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5mZWF0dXJlcGFuZWw6OmJlZm9yZSB7XG4gICAgd2lkdGg6IDEwNSU7XG4gICAgaGVpZ2h0OiA5NSU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mZWF0dXJlcGFuZWw6OmJlZm9yZSB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG4uZmVhdHVyZXBhbmVsX190ZXh0IHtcbiAgcGFkZGluZzogMXJlbSAwIDVyZW0gMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mZWF0dXJlcGFuZWxfX3RleHQge1xuICAgIHBhZGRpbmc6IDVyZW0gNXJlbSAycmVtIDhyZW07XG4gIH1cbn1cbi5mZWF0dXJlcGFuZWxfX3RleHQgaDIge1xuICBtYXJnaW46IDFyZW0gMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZlYXR1cmVwYW5lbF9fdGV4dCBoMiB7XG4gICAgbWFyZ2luOiAwIDAgMnJlbSAwO1xuICAgIHdpZHRoOiAxMTAlO1xuICB9XG59XG4uZmVhdHVyZXBhbmVsX190ZXh0LS1tYWluIHtcbiAgbWFyZ2luOiAwIDAgM3JlbSAwO1xufVxuLmZlYXR1cmVwYW5lbF9fdGV4dC0tc3ViIHtcbiAgY29sb3I6ICMxQjRFNzQ7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mZWF0dXJlcGFuZWwgaDMge1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW07XG4gIH1cbn1cbi5mZWF0dXJlcGFuZWwgLmZsZXgtY2hpbGQtYXV0byAub3JiaXQtaW1hZ2Uge1xuICBvYmplY3QtZml0OiBjb250YWluO1xuICBtaW4td2lkdGg6IDIwcmVtO1xuICBtaW4taGVpZ2h0OiAyMHJlbTtcbiAgbWF4LWhlaWdodDogNTByZW07XG4gIG1heC13aWR0aDogNjByZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZmVhdHVyZXBhbmVsIC5mbGV4LWNoaWxkLWF1dG8gLm9yYml0LWltYWdlIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZlYXR1cmVwYW5lbCAuZmxleC1jaGlsZC1hdXRvIC5vcmJpdC1pbWFnZSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZlYXR1cmVwYW5lbCAuZmxleC1jaGlsZC1hdXRvIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxufVxuLmZlYXR1cmVwYW5lbF9fYnV0dG9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogYXV0bztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mZWF0dXJlcGFuZWxfX2J1dHRvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDEwLjVyZW07XG4gIH1cbn1cbi5mZWF0dXJlcGFuZWxfX2ltYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAyMnJlbTtcbn1cbi5mZWF0dXJlcGFuZWxfX2ltYWdlIC5vcmJpdC1zbGlkZSB7XG4gIHBvc2l0aW9uOiB1bnNldDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mZWF0dXJlcGFuZWxfX2ltYWdlLS1sZWZ0IHtcbiAgICBtYXgtaGVpZ2h0OiA0MHJlbTtcbiAgfVxuICAuZmVhdHVyZXBhbmVsX19pbWFnZS0tbGVmdCBpbWcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMTVweDtcbiAgICB0b3A6IC0xNnB4O1xuICB9XG4gIC5mZWF0dXJlcGFuZWxfX2ltYWdlLS1sZWZ0IC5vcmJpdC1idWxsZXRzIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBtYXJnaW46IDMyLjhyZW0gNXJlbSAwIDA7XG4gIH1cbiAgLmZlYXR1cmVwYW5lbF9faW1hZ2UtLXJpZ2h0IHtcbiAgICBtYXgtaGVpZ2h0OiA0MHJlbTtcbiAgICBvcmRlcjogMjtcbiAgfVxuICAuZmVhdHVyZXBhbmVsX19pbWFnZS0tcmlnaHQgaW1nIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMTVweDtcbiAgICB0b3A6IC0xNnB4O1xuICB9XG4gIC5mZWF0dXJlcGFuZWxfX2ltYWdlLS1yaWdodCAub3JiaXQtYnVsbGV0cyB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBtYXJnaW46IDMyLjhyZW0gMCAwIDVyZW07XG4gIH1cbn1cbi5mZWF0dXJlcGFuZWwgLm9yYml0LWJ1bGxldHMgYnV0dG9uIHtcbiAgYm9yZGVyLXJhZGl1czogMCU7XG4gIHdpZHRoOiA1LjJyZW07XG4gIGhlaWdodDogMC41cmVtO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uZmVhdHVyZXBhbmVsIC5vcmJpdC1idWxsZXRzIGJ1dHRvbjo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogaW5oZXJpdDtcbiAgbGVmdDogMDtcbiAgdG9wOiAtMS41cmVtO1xuICB6LWluZGV4OiAxO1xuICBib3JkZXI6IDBweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cbi5mZWF0dXJlcGFuZWwgLm9yYml0LWJ1bGxldHMgYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbn1cbi5mZWF0dXJlcGFuZWwgLm9yYml0LWJ1bGxldHMgYnV0dG9uOmhvdmVyOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5mZWF0dXJlcGFuZWwgLm9yYml0LWJ1bGxldHMtLWJ1dHRvbjo6YWZ0ZXIge1xuICBjb250ZW50OiBub25lO1xufVxuLmZlYXR1cmVwYW5lbC0tYWx0IHtcbiAgbWluLWhlaWdodDogMzByZW07XG59XG4uZmVhdHVyZXBhbmVsLS1hbHQ6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IG5vbmU7XG59XG4uZmVhdHVyZXBhbmVsLS1hbHQgLmJ1dHRvbi0tY29udGFpbmVyIHtcbiAgbWluLWhlaWdodDogNDByZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICMxQjRFNzQ7XG4gIHBhZGRpbmc6IDJyZW0gMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5mZWF0dXJlcGFuZWwtLWFsdCAuYnV0dG9uLS1jb250YWluZXIge1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgcGFkZGluZzogNHJlbSAwO1xuICB9XG59XG4uZmVhdHVyZXBhbmVsLS1hbHQgLmJ1dHRvbi0tY29udGFpbmVyIC5idXR0b24tLWl0ZW1zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGhlaWdodDogMTAwJTtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbn1cbi5mZWF0dXJlcGFuZWwtLWFsdCAuYnV0dG9uLS1jb250YWluZXIgLmJ1dHRvbi0taXRlbSB7XG4gIGZsZXgtZ3JvdzogMTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNnJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmZlYXR1cmVwYW5lbC0tYWx0IC5idXR0b24tLWNvbnRhaW5lciAuYnV0dG9uLS1pdGVtIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIGhlaWdodDogOHJlbTtcbiAgfVxufVxuLmZlYXR1cmVwYW5lbC0tYWx0IC5idXR0b24tLWNvbnRhaW5lciAuZmVhdHVyZXBhbmVsX19idXR0b24ge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgd2lkdGg6IDE3cmVtO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmZlYXR1cmVwYW5lbC0tYWx0IC5idXR0b24tLWNvbnRhaW5lciAuZmVhdHVyZXBhbmVsX19idXR0b24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAwO1xuICB9XG59XG4uZmVhdHVyZXBhbmVsLS1iYW5uZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDM2MUExO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgbWFyZ2luOiAycmVtIDByZW0gNy41cmVtIDByZW07XG59XG4uZmVhdHVyZXBhbmVsLS1iYW5uZXI6OmJlZm9yZSB7XG4gIGhlaWdodDogOTclO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZlYXR1cmVwYW5lbC0tYmFubmVyIHtcbiAgICBtYXJnaW46IDhyZW0gMHJlbSAxMXJlbSAwcmVtO1xuICAgIHBhZGRpbmc6IDNyZW0gMDtcbiAgfVxuICAuZmVhdHVyZXBhbmVsLS1iYW5uZXI6OmJlZm9yZSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgdG9wOiAycmVtO1xuICAgIGxlZnQ6IDJyZW07XG4gIH1cbn1cbi5mZWF0dXJlcGFuZWwtLWJhbm5lciAuZmVhdHVyZXBhbmVsX190ZXh0IHtcbiAgcGFkZGluZzogMnJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mZWF0dXJlcGFuZWwtLWJhbm5lciAuZmVhdHVyZXBhbmVsX190ZXh0IHtcbiAgICBwYWRkaW5nOiA5cmVtIDVyZW0gMXJlbSAxMHJlbTtcbiAgfVxufVxuLmZlYXR1cmVwYW5lbC0tYmFubmVyIC5mZWF0dXJlcGFuZWxfX3RleHQgaDIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZlYXR1cmVwYW5lbC0tYmFubmVyIC5mZWF0dXJlcGFuZWxfX3RleHQgaDIge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbn1cbi5mZWF0dXJlcGFuZWwtLWJhbm5lciAuZmVhdHVyZXBhbmVsX19pbWFnZSBpbWcge1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5mZWF0dXJlcGFuZWwtLWJhbm5lciAuZmVhdHVyZXBhbmVsX19pbWFnZSBpbWcge1xuICAgIG1heC13aWR0aDogNDByZW07XG4gICAgbWF4LWhlaWdodDogNDRyZW07XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZlYXR1cmVwYW5lbC0tYmFubmVyIC5mZWF0dXJlcGFuZWxfX2ltYWdlIGltZyB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbGVmdDogMTJyZW07XG4gICAgdG9wOiAzcmVtO1xuICAgIGhlaWdodDogNDUwcHg7XG4gIH1cbn1cbi5mZWF0dXJlcGFuZWwtLWJhbm5lciAuZmVhdHVyZXBhbmVsX19idXR0b24ge1xuICBjb2xvcjogaW5oZXJpdDtcbn1cbi5mZWF0dXJlcGFuZWwtLWJhbm5lciAuYnV0dG9uLS1pdGVtcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZmVhdHVyZXBhbmVsLS1iYW5uZXIgLmJ1dHRvbi0taXRlbXMge1xuICAgIG1hcmdpbjogN3JlbSAwIDAgLThyZW07XG4gIH1cbn1cbi5mZWF0dXJlcGFuZWwtLWJhbm5lciAuYnV0dG9uLS1pdGVtIHtcbiAgZmxleC1ncm93OiAxO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA2cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZmVhdHVyZXBhbmVsLS1iYW5uZXIgLmJ1dHRvbi0taXRlbSB7XG4gICAgd2lkdGg6IDMzLjMzJTtcbiAgICBoZWlnaHQ6IDhyZW07XG4gIH1cbn1cbi5mZWF0dXJlcGFuZWwtLWJhbm5lciAuZmVhdHVyZXBhbmVsX19idXR0b24ge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB6LWluZGV4OiAxO1xufVxuLmZlYXR1cmVwYW5lbC0tdGV4dHBhbmVsIC5mZWF0dXJlcGFuZWxfX3RleHQge1xuICBwYWRkaW5nOiAwIDAgNHJlbSAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZlYXR1cmVwYW5lbC0tdGV4dHBhbmVsIC5mZWF0dXJlcGFuZWxfX3RleHQge1xuICAgIHBhZGRpbmc6IDRyZW0gNnJlbTtcbiAgfVxufVxuLmZlYXR1cmVwYW5lbC0tdGV4dHBhbmVsIC5mZWF0dXJlcGFuZWxfX3RleHQgaDIge1xuICBtYXJnaW46IDdyZW0gMCAwIDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mZWF0dXJlcGFuZWwtLXRleHRwYW5lbCAuZmVhdHVyZXBhbmVsX190ZXh0IGgyIHtcbiAgICBtYXJnaW46IDlyZW0gMCAxLjVyZW0gMDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG59XG4uZmVhdHVyZXBhbmVsLS10ZXh0cGFuZWwgLmZlYXR1cmVwYW5lbF9fdGV4dC0tbWFpbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mZWF0dXJlcGFuZWwtLXRleHRwYW5lbCAuZmVhdHVyZXBhbmVsX190ZXh0LS1tYWluIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG59XG4uZmVhdHVyZXBhbmVsLS10ZXh0cGFuZWwgLmZlYXR1cmVwYW5lbF9fdGV4dCAuZmVhdHVyZXBhbmVsX190ZXh0LXN1YiB7XG4gIG1hcmdpbjogMCAwIDJyZW0gMDtcbn1cbi5mZWF0dXJlcGFuZWwtLXRleHRwYW5lbCAuZmVhdHVyZXBhbmVsX190ZXh0IC5mZWF0dXJlcGFuZWxfX3RleHQtc3ViIC5zdWJ0ZXh0IHtcbiAgZm9udC1zaXplOiAxLjhyZW07XG59XG4uZmVhdHVyZXBhbmVsLS10ZXh0cGFuZWwgLmZlYXR1cmVwYW5lbF9fdGV4dCAuZmVhdHVyZXBhbmVsX190ZXh0LXN1YiAuc3VidGV4dC1vcmFuZ2Uge1xuICBjb2xvcjogI2I0MTIxMjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZmVhdHVyZXBhbmVsLS10ZXh0cGFuZWwgLmZlYXR1cmVwYW5lbF9fdGV4dCAuZmVhdHVyZXBhbmVsX190ZXh0LXN1YiAuc3VidGV4dC1vcmFuZ2Uge1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICB9XG59XG5cbi5tZ3NpemUge1xuICBtYXJnaW46IC0zLjJyZW0gMCAwIDA7XG59XG4ubWdzaXplLS1tZWRpdW0ge1xuICBtYXJnaW46IC02LjJyZW0gMCAwIDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWdzaXplLS1tZWRpdW0ge1xuICAgIG1hcmdpbjogLTYuMnJlbSAwIDVyZW0gMDtcbiAgfVxufVxuLm1nc2l6ZS0tbGFyZ2Uge1xuICBtYXJnaW46IC05LjJyZW0gMCAwIDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWdzaXplLS1sYXJnZSB7XG4gICAgbWFyZ2luOiAtOS4ycmVtIDAgNXJlbSAwO1xuICB9XG59XG5cbi5uZXdzY2Fyb3VzZWwge1xuICBoZWlnaHQ6IDUwcmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogM3JlbSAwIDAgMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5uZXdzY2Fyb3VzZWwge1xuICAgIGhlaWdodDogNDVyZW07XG4gICAgbWFyZ2luOiA5cmVtIDNyZW0gMCAzcmVtO1xuICB9XG59XG4ubmV3c2Nhcm91c2VsOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvcmRlcjogdmFyKC0tYm9yZGVyLWdyZXkpO1xuICBoZWlnaHQ6IDQ1cmVtO1xuICB3aWR0aDogMTE1JTtcbiAgbGVmdDogLTI1cHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubmV3c2Nhcm91c2VsOjpiZWZvcmUge1xuICAgIHdpZHRoOiAxMDclO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubmV3c2Nhcm91c2VsOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5uZXdzY2Fyb3VzZWxfX3BhbmVsIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG4ubmV3c2Nhcm91c2VsX19wYW5lbC0tdGV4dGJveCB7XG4gIHBhZGRpbmc6IDJyZW0gMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5uZXdzY2Fyb3VzZWxfX3BhbmVsLS10ZXh0Ym94IHtcbiAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDM1cHg7XG4gICAgcGFkZGluZzogNC41cmVtIDQuNXJlbSAyLjVyZW0gMy41cmVtO1xuICAgIHdpZHRoOiA3MHJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm5ld3NjYXJvdXNlbF9fcGFuZWwtLXRleHRib3g6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm9yZGVyOiB2YXIoLS1ib3JkZXItZ3JleSk7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGxlZnQ6IC0xNXB4O1xuICAgIHRvcDogMjBweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm5ld3NjYXJvdXNlbF9fcGFuZWwtLWltYWdlIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cbi5uZXdzY2Fyb3VzZWxfX3BhbmVsLS1pbWFnZSBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAyMi41cmVtO1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5uZXdzY2Fyb3VzZWxfX3BhbmVsLS1pbWFnZSBpbWcge1xuICAgIGhlaWdodDogMzdyZW07XG4gIH1cbn1cbi5uZXdzY2Fyb3VzZWwgLm9yYml0LWNvbnRyb2xzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm5ld3NjYXJvdXNlbCAub3JiaXQtY29udHJvbHMgYnV0dG9uIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuLm5ld3NjYXJvdXNlbCAub3JiaXQtY29udHJvbHMgLm9yYml0LXByZXZpb3VzLFxuLm5ld3NjYXJvdXNlbCAub3JiaXQtY29udHJvbHMgLm9yYml0LW5leHQge1xuICB0b3A6IC0yLjVyZW07XG59XG4ubmV3c2Nhcm91c2VsIC5vcmJpdC1jb250cm9scyAub3JiaXQtcHJldmlvdXM6aG92ZXIsXG4ubmV3c2Nhcm91c2VsIC5vcmJpdC1jb250cm9scyAub3JiaXQtbmV4dDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLm5ld3NjYXJvdXNlbCAub3JiaXQtY29udHJvbHMgLm9yYml0LW5leHQge1xuICBsZWZ0OiA5NyU7XG59XG4ubmV3c2Nhcm91c2VsIC5vcmJpdC1jb250cm9scyAub3JiaXQtcHJldmlvdXMge1xuICBsZWZ0OiA3NSU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubmV3c2Nhcm91c2VsIC5vcmJpdC1jb250cm9scyAub3JiaXQtcHJldmlvdXMge1xuICAgIGxlZnQ6IDkwJTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm5ld3NjYXJvdXNlbCAub3JiaXQtY29udHJvbHMgLm9yYml0LXByZXZpb3VzIHtcbiAgICBsZWZ0OiA4OCU7XG4gIH1cbn1cbi5uZXdzY2Fyb3VzZWwgcCB7XG4gIGNvbG9yOiAjYjQxMjEyO1xuICBmb250LXNpemU6IDEuNnJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5uZXdzY2Fyb3VzZWwgcCB7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgbWFyZ2luOiAxLjI1cmVtIDA7XG4gIH1cbn1cbi5uZXdzY2Fyb3VzZWwgaDIge1xuICBoZWlnaHQ6IDEzcmVtO1xuICB3aWR0aDogYXV0bztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5uZXdzY2Fyb3VzZWwgaDIge1xuICAgIHdpZHRoOiA2M3JlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm5ld3NjYXJvdXNlbCBoMiB7XG4gICAgaGVpZ2h0OiAxNHJlbTtcbiAgfVxufVxuLm5ld3NjYXJvdXNlbCBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxMDtcbiAgY29sb3I6ICMxQjRFNzQ7XG59XG4ubmV3c2Nhcm91c2VsIGE6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC01cHg7XG4gIGxlZnQ6IDUwJTtcbiAgYmFja2dyb3VuZDogbm9uZSByZXBlYXQgc2Nyb2xsIDAgMCB0cmFuc3BhcmVudDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMnB4O1xuICB3aWR0aDogMDtcbiAgYmFja2dyb3VuZDogIzFCNEU3NDtcbiAgdHJhbnNpdGlvbjogd2lkdGggMC4zcyBlYXNlIDBzLCBsZWZ0IDAuM3MgZWFzZSAwcztcbn1cbi5uZXdzY2Fyb3VzZWwgYTpob3Zlcjo6YWZ0ZXIge1xuICB3aWR0aDogMTAwJTtcbiAgbGVmdDogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5uZXdzY2Fyb3VzZWwgYSB7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gIH1cbn1cblxuLm5ld3NmaWxtc3RyaXAge1xuICBtYXJnaW46IDAgMCA0cmVtIDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubmV3c2ZpbG1zdHJpcCB7XG4gICAgbWFyZ2luOiAxMHJlbSAwIDNyZW0gMDtcbiAgfVxufVxuLm5ld3NmaWxtc3RyaXAgaDIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubmV3c2ZpbG1zdHJpcCBoMiB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBtYXJnaW46IDAgMCAtMnJlbSAxcmVtO1xuICB9XG59XG4ubmV3c2ZpbG1zdHJpcC0tYnV0dG9uIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IC0xcmVtIDAgMCAwO1xufVxuLm5ld3NmaWxtc3RyaXAtLW1vdmVtZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDVyZW07XG4gIG1hcmdpbjogMCBhdXRvO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm5ld3NmaWxtc3RyaXAtLW1vdmVtZW50IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuLm5ld3NmaWxtc3RyaXAgLmNhcmQge1xuICBib3JkZXI6IHZhcigtLWJvcmRlci10cmFuc3BhcmVudCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5uZXdzZmlsbXN0cmlwIC5jYXJkIHtcbiAgICB3aWR0aDogMzZyZW07XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG4ubmV3c2ZpbG1zdHJpcCAuY2FyZDo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyOiB2YXIoLS1ib3JkZXItdHJhbnNwYXJlbnQpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogOTElO1xuICB3aWR0aDogOTklO1xuICB0b3A6IDJyZW07XG59XG4ubmV3c2ZpbG1zdHJpcCAuY2FyZDpob3ZlciB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2Utb3V0O1xufVxuLm5ld3NmaWxtc3RyaXAgLmNhcmQ6aG92ZXI6OmJlZm9yZSB7XG4gIGJvcmRlcjogdmFyKC0tYm9yZGVyLWdyZXkpO1xufVxuLm5ld3NmaWxtc3RyaXAgLmNhcmQ6aG92ZXIgaDQge1xuICBjb2xvcjogI2I0MTIxMjtcbn1cbi5uZXdzZmlsbXN0cmlwIC5jYXJkLXNlY3Rpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ubmV3c2ZpbG1zdHJpcCAuY2FyZC1zZWN0aW9uIC5pbWcge1xuICB3aWR0aDogMzYuNnJlbTtcbiAgaGVpZ2h0OiAyNC40cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm5ld3NmaWxtc3RyaXAgLmNhcmQtc2VjdGlvbiAuaW1nIHtcbiAgICBoZWlnaHQ6IDEzLjZyZW07XG4gICAgd2lkdGg6IDE5LjRyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5uZXdzZmlsbXN0cmlwIC5jYXJkLXNlY3Rpb24gLmltZyB7XG4gICAgd2lkdGg6IDM0cmVtO1xuICAgIGhlaWdodDogMjMuOXJlbTtcbiAgfVxufVxuXG4ubmV3c2ZpbHRlciB7XG4gIG1hcmdpbjogNXJlbSAwIDNyZW0gMDtcbn1cbi5uZXdzZmlsdGVyIC5uby1wb3N0cyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDEwcmVtIGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5uZXdzZmlsdGVyIGgzIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm5ld3NmaWx0ZXIgaDMge1xuICAgIG1hcmdpbjogMCAwIDJyZW0gMS4yNXJlbTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG59XG4ubmV3c2ZpbHRlciAuY2FyZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm5ld3NmaWx0ZXIgLmNhcmQge1xuICAgIHdpZHRoOiAzNnJlbTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cbi5uZXdzZmlsdGVyIC5jYXJkOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDkxJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRvcDogMnJlbTtcbn1cbi5uZXdzZmlsdGVyIC5jYXJkOmhvdmVyIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1vdXQ7XG59XG4ubmV3c2ZpbHRlciAuY2FyZDpob3Zlcjo6YmVmb3JlIHtcbiAgYm9yZGVyOiB2YXIoLS1ib3JkZXItZ3JleSk7XG59XG4ubmV3c2ZpbHRlciAuY2FyZDpob3ZlciBoNCB7XG4gIGNvbG9yOiAjYjQxMjEyO1xufVxuLm5ld3NmaWx0ZXIgLmNhcmQtc2VjdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5uZXdzZmlsdGVyIC5jYXJkLXNlY3Rpb24gLmltZyB7XG4gIHdpZHRoOiAyNzNweDtcbiAgaGVpZ2h0OiAxODFweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5uZXdzZmlsdGVyIC5jYXJkLXNlY3Rpb24gLmltZyB7XG4gICAgd2lkdGg6IDM2NnB4O1xuICAgIGhlaWdodDogMjQ0cHg7XG4gIH1cbn1cbi5uZXdzZmlsdGVyIC5jYXJkLXNlY3Rpb24gLmRhdGUge1xuICB0b3A6IDE2cmVtO1xuICBsZWZ0OiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm5ld3NmaWx0ZXIgLmNhcmQtc2VjdGlvbiAuZGF0ZSB7XG4gICAgdG9wOiAxNnJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm5ld3NmaWx0ZXIgLmNhcmQtc2VjdGlvbiAuZGF0ZSB7XG4gICAgdG9wOiAyMi41cmVtO1xuICAgIGxlZnQ6IDAuNXJlbTtcbiAgfVxufVxuXG4ucGFnaW5hdGlvbi0tY29udGFpbmVyLFxuLndwLWJsb2NrLXF1ZXJ5LXBhZ2luYXRpb24ge1xuICBtYXJnaW4tdG9wOiAzcmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4ucGFnaW5hdGlvbi0tY29udGFpbmVyIC5wYWdlLW51bWJlcnMsXG4ud3AtYmxvY2stcXVlcnktcGFnaW5hdGlvbiAucGFnZS1udW1iZXJzIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5wYWdpbmF0aW9uLS1jb250YWluZXIgLnByZXYsXG4ucGFnaW5hdGlvbi0tY29udGFpbmVyIC5uZXh0LFxuLnBhZ2luYXRpb24tLWNvbnRhaW5lciAuY3VycmVudCxcbi5wYWdpbmF0aW9uLS1jb250YWluZXIgLndwLWJsb2NrLXF1ZXJ5LXBhZ2luYXRpb24tcHJldmlvdXMsXG4ucGFnaW5hdGlvbi0tY29udGFpbmVyIC53cC1ibG9jay1xdWVyeS1wYWdpbmF0aW9uLW5leHQsXG4ud3AtYmxvY2stcXVlcnktcGFnaW5hdGlvbiAucHJldixcbi53cC1ibG9jay1xdWVyeS1wYWdpbmF0aW9uIC5uZXh0LFxuLndwLWJsb2NrLXF1ZXJ5LXBhZ2luYXRpb24gLmN1cnJlbnQsXG4ud3AtYmxvY2stcXVlcnktcGFnaW5hdGlvbiAud3AtYmxvY2stcXVlcnktcGFnaW5hdGlvbi1wcmV2aW91cyxcbi53cC1ibG9jay1xdWVyeS1wYWdpbmF0aW9uIC53cC1ibG9jay1xdWVyeS1wYWdpbmF0aW9uLW5leHQge1xuICBkaXNwbGF5OiBpbmxpbmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucGFnaW5hdGlvbi0tY29udGFpbmVyIC5wYWdlLW51bWJlcnMsXG4ud3AtYmxvY2stcXVlcnktcGFnaW5hdGlvbiAucGFnZS1udW1iZXJzIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gIH1cbn1cbi5wYWdpbmF0aW9uLS1jb250YWluZXIgLnBhZ2UtbnVtYmVycyxcbi53cC1ibG9jay1xdWVyeS1wYWdpbmF0aW9uIC5wYWdlLW51bWJlcnMge1xuICBjb2xvcjogIzI0MjQyNDtcbiAgbWFyZ2luOiAwIDFyZW07XG4gIGJvcmRlcjogMnB4IHNvbGlkICMyNDI0MjQ7XG4gIHBhZGRpbmc6IDFyZW0gMS43NXJlbTtcbn1cbi5wYWdpbmF0aW9uLS1jb250YWluZXIgLnBhZ2UtbnVtYmVyczpob3Zlcixcbi53cC1ibG9jay1xdWVyeS1wYWdpbmF0aW9uIC5wYWdlLW51bWJlcnM6aG92ZXIge1xuICBjb2xvcjogI2I0MTIxMjtcbiAgYm9yZGVyOiAycHggc29saWQgI2I0MTIxMjtcbn1cbi5wYWdpbmF0aW9uLS1jb250YWluZXIgLmRvdHMsXG4ud3AtYmxvY2stcXVlcnktcGFnaW5hdGlvbiAuZG90cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBwYWRkaW5nOiAxcmVtIDEuNXJlbTtcbn1cbi5wYWdpbmF0aW9uLS1jb250YWluZXIgLmRvdHM6aG92ZXIsXG4ud3AtYmxvY2stcXVlcnktcGFnaW5hdGlvbiAuZG90czpob3ZlciB7XG4gIGNvbG9yOiAjNDI0QTU1O1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cbi5wYWdpbmF0aW9uLS1jb250YWluZXIgLnByZXYsXG4ucGFnaW5hdGlvbi0tY29udGFpbmVyIC53cC1ibG9jay1xdWVyeS1wYWdpbmF0aW9uLXByZXZpb3VzLFxuLndwLWJsb2NrLXF1ZXJ5LXBhZ2luYXRpb24gLnByZXYsXG4ud3AtYmxvY2stcXVlcnktcGFnaW5hdGlvbiAud3AtYmxvY2stcXVlcnktcGFnaW5hdGlvbi1wcmV2aW91cyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDJweCBzb2xpZCAjNDI0QTU1O1xuICBwYWRkaW5nOiAxcmVtIDEuNzVyZW07XG4gIHRleHQtaW5kZW50OiAtOTk5OXB4O1xufVxuLnBhZ2luYXRpb24tLWNvbnRhaW5lciAucHJldjo6YWZ0ZXIsXG4ucGFnaW5hdGlvbi0tY29udGFpbmVyIC53cC1ibG9jay1xdWVyeS1wYWdpbmF0aW9uLXByZXZpb3VzOjphZnRlcixcbi53cC1ibG9jay1xdWVyeS1wYWdpbmF0aW9uIC5wcmV2OjphZnRlcixcbi53cC1ibG9jay1xdWVyeS1wYWdpbmF0aW9uIC53cC1ibG9jay1xdWVyeS1wYWdpbmF0aW9uLXByZXZpb3VzOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogOHB4O1xuICB0b3A6IDlweDtcbiAgaGVpZ2h0OiAycmVtO1xuICB3aWR0aDogMi43NXJlbTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuL2ltYWdlcy9hcnJvd3MvYXJyb3ctLWJsYWNrLnN2Z1wiKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbn1cbi5wYWdpbmF0aW9uLS1jb250YWluZXIgLnByZXY6aG92ZXIsXG4ucGFnaW5hdGlvbi0tY29udGFpbmVyIC53cC1ibG9jay1xdWVyeS1wYWdpbmF0aW9uLXByZXZpb3VzOmhvdmVyLFxuLndwLWJsb2NrLXF1ZXJ5LXBhZ2luYXRpb24gLnByZXY6aG92ZXIsXG4ud3AtYmxvY2stcXVlcnktcGFnaW5hdGlvbiAud3AtYmxvY2stcXVlcnktcGFnaW5hdGlvbi1wcmV2aW91czpob3ZlciB7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAycHggc29saWQgI2I0MTIxMjtcbiAgYmFja2dyb3VuZDogI2I0MTIxMjtcbn1cbi5wYWdpbmF0aW9uLS1jb250YWluZXIgLnByZXY6aG92ZXI6OmFmdGVyLFxuLnBhZ2luYXRpb24tLWNvbnRhaW5lciAud3AtYmxvY2stcXVlcnktcGFnaW5hdGlvbi1wcmV2aW91czpob3Zlcjo6YWZ0ZXIsXG4ud3AtYmxvY2stcXVlcnktcGFnaW5hdGlvbiAucHJldjpob3Zlcjo6YWZ0ZXIsXG4ud3AtYmxvY2stcXVlcnktcGFnaW5hdGlvbiAud3AtYmxvY2stcXVlcnktcGFnaW5hdGlvbi1wcmV2aW91czpob3Zlcjo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuL2ltYWdlcy9hcnJvd3MvYXJyb3ctLXdoaXRlLnN2Z1wiKTtcbn1cbi5wYWdpbmF0aW9uLS1jb250YWluZXIgLm5leHQsXG4ucGFnaW5hdGlvbi0tY29udGFpbmVyIC53cC1ibG9jay1xdWVyeS1wYWdpbmF0aW9uLW5leHQsXG4ud3AtYmxvY2stcXVlcnktcGFnaW5hdGlvbiAubmV4dCxcbi53cC1ibG9jay1xdWVyeS1wYWdpbmF0aW9uIC53cC1ibG9jay1xdWVyeS1wYWdpbmF0aW9uLW5leHQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAycHggc29saWQgIzQyNEE1NTtcbiAgcGFkZGluZzogMXJlbSAxLjc1cmVtO1xuICB0ZXh0LWluZGVudDogLTk5OTlweDtcbn1cbi5wYWdpbmF0aW9uLS1jb250YWluZXIgLm5leHQ6aG92ZXIsXG4ucGFnaW5hdGlvbi0tY29udGFpbmVyIC53cC1ibG9jay1xdWVyeS1wYWdpbmF0aW9uLW5leHQ6aG92ZXIsXG4ud3AtYmxvY2stcXVlcnktcGFnaW5hdGlvbiAubmV4dDpob3Zlcixcbi53cC1ibG9jay1xdWVyeS1wYWdpbmF0aW9uIC53cC1ibG9jay1xdWVyeS1wYWdpbmF0aW9uLW5leHQ6aG92ZXIge1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNiNDEyMTI7XG4gIGJhY2tncm91bmQ6ICNiNDEyMTI7XG59XG4ucGFnaW5hdGlvbi0tY29udGFpbmVyIC5uZXh0OmhvdmVyOjphZnRlcixcbi5wYWdpbmF0aW9uLS1jb250YWluZXIgLndwLWJsb2NrLXF1ZXJ5LXBhZ2luYXRpb24tbmV4dDpob3Zlcjo6YWZ0ZXIsXG4ud3AtYmxvY2stcXVlcnktcGFnaW5hdGlvbiAubmV4dDpob3Zlcjo6YWZ0ZXIsXG4ud3AtYmxvY2stcXVlcnktcGFnaW5hdGlvbiAud3AtYmxvY2stcXVlcnktcGFnaW5hdGlvbi1uZXh0OmhvdmVyOjphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4vaW1hZ2VzL2Fycm93cy9hcnJvdy0td2hpdGUuc3ZnXCIpO1xufVxuLnBhZ2luYXRpb24tLWNvbnRhaW5lciAubmV4dDo6YWZ0ZXIsXG4ucGFnaW5hdGlvbi0tY29udGFpbmVyIC53cC1ibG9jay1xdWVyeS1wYWdpbmF0aW9uLW5leHQ6OmFmdGVyLFxuLndwLWJsb2NrLXF1ZXJ5LXBhZ2luYXRpb24gLm5leHQ6OmFmdGVyLFxuLndwLWJsb2NrLXF1ZXJ5LXBhZ2luYXRpb24gLndwLWJsb2NrLXF1ZXJ5LXBhZ2luYXRpb24tbmV4dDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDhweDtcbiAgdG9wOiAxNXB4O1xuICBoZWlnaHQ6IDJyZW07XG4gIHdpZHRoOiAyLjc1cmVtO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4vaW1hZ2VzL2Fycm93cy9hcnJvdy0tYmxhY2suc3ZnXCIpO1xufVxuLnBhZ2luYXRpb24tLWNvbnRhaW5lciAuY3VycmVudCxcbi53cC1ibG9jay1xdWVyeS1wYWdpbmF0aW9uIC5jdXJyZW50IHtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGJhY2tncm91bmQ6ICNiNDEyMTI7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDQxcHg7XG4gIHBhZGRpbmc6IDVweCAxMXB4O1xufVxuLnBhZ2luYXRpb24tLWNvbnRhaW5lciAuY3VycmVudDpob3Zlcixcbi53cC1ibG9jay1xdWVyeS1wYWdpbmF0aW9uIC5jdXJyZW50OmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2I0MTIxMjtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNiNDEyMTI7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC50ZWFzZXJjYXJkcyAuY2FyZC0taGVhZGluZyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5tYWluLWNvbnRhaW5lciAucGFnaW5hdGlvbixcbi5tYWluLWNvbnRhaW5lciAucGFnaW5hdGlvbi0tY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7XG59XG4ubWFpbi1jb250YWluZXIgLnBhZ2luYXRpb24gYSxcbi5tYWluLWNvbnRhaW5lciAucGFnaW5hdGlvbiBzcGFuLFxuLm1haW4tY29udGFpbmVyIC5wYWdpbmF0aW9uLS1jb250YWluZXIgYSxcbi5tYWluLWNvbnRhaW5lciAucGFnaW5hdGlvbi0tY29udGFpbmVyIHNwYW4ge1xuICBib3JkZXI6IDJweCBzb2xpZCAjMDAwICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IDQwcHg7XG4gIHdpZHRoOiA0MHB4O1xufVxuLm1haW4tY29udGFpbmVyIC5wYWdpbmF0aW9uIGxpLFxuLm1haW4tY29udGFpbmVyIC5wYWdpbmF0aW9uIHNwYW4sXG4ubWFpbi1jb250YWluZXIgLnBhZ2luYXRpb24tLWNvbnRhaW5lciBsaSxcbi5tYWluLWNvbnRhaW5lciAucGFnaW5hdGlvbi0tY29udGFpbmVyIHNwYW4ge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6IDA7XG4gIGJvcmRlcjogMDtcbn1cbi5tYWluLWNvbnRhaW5lciAucGFnaW5hdGlvbiBsaTpiZWZvcmUsXG4ubWFpbi1jb250YWluZXIgLnBhZ2luYXRpb24gc3BhbjpiZWZvcmUsXG4ubWFpbi1jb250YWluZXIgLnBhZ2luYXRpb24tLWNvbnRhaW5lciBsaTpiZWZvcmUsXG4ubWFpbi1jb250YWluZXIgLnBhZ2luYXRpb24tLWNvbnRhaW5lciBzcGFuOmJlZm9yZSB7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogMCAhaW1wb3J0YW50O1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm1haW4tY29udGFpbmVyIC5wYWdpbmF0aW9uLS1jb250YWluZXIgc3Bhbi5jdXJyZW50IHtcbiAgYmFja2dyb3VuZDogI2I0MTIxMjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5tYWluLWNvbnRhaW5lciAucGFnaW5hdGlvbi0tY29udGFpbmVyIGEubmV4dC5wYWdlLW51bWJlcnMsXG4ubWFpbi1jb250YWluZXIgLnBhZ2luYXRpb24tLWNvbnRhaW5lciBhLnByZXYucGFnZS1udW1iZXJzIHtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG59XG4ubWFpbi1jb250YWluZXIgLnBhZ2luYXRpb24tLWNvbnRhaW5lciBhLm5leHQucGFnZS1udW1iZXJzOmFmdGVyLFxuLm1haW4tY29udGFpbmVyIC5wYWdpbmF0aW9uLS1jb250YWluZXIgYS5wcmV2LnBhZ2UtbnVtYmVyczphZnRlciB7XG4gIHRvcDogOHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5tYWluLWNvbnRhaW5lciAucGFnaW5hdGlvbi0tY29udGFpbmVyIGEubmV4dC5wYWdlLW51bWJlcnM6YWZ0ZXIge1xuICB0b3A6IDEzcHggIWltcG9ydGFudDtcbn1cblxuLnNvY2lhbF9fY29udGFpbmVyIHtcbiAgbWFyZ2luOiA3cmVtIDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc29jaWFsX19jb250YWluZXIge1xuICAgIG1hcmdpbjogOXJlbSAwIDdyZW0gMDtcbiAgfVxufVxuLnNvY2lhbF9fY29udGFpbmVyIGgyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogIzI0MjQyNDtcbiAgbWFyZ2luOiAycmVtIDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc29jaWFsX19jb250YWluZXIgaDIge1xuICAgIG1hcmdpbjogMCAwIDVyZW0gMDtcbiAgfVxufVxuLnNvY2lhbF9fY29udGFpbmVyLS1wYW5lbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAxNXJlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMXJlbSAwIDNyZW0gMDtcbn1cbi5zb2NpYWxfX2NvbnRhaW5lci0tcGFuZWw6aG92ZXIge1xuICBib3gtc2hhZG93OiAwIDFyZW0gMnJlbSByZ2JhKDM2LCAzNiwgMzYsIDAuNCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXJlbSk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc29jaWFsX19jb250YWluZXItLXBhbmVsIHtcbiAgICBtYXJnaW46IDAgMXJlbSAzcmVtIDFyZW07XG4gICAgd2lkdGg6IDY2cmVtO1xuICB9XG59XG4uc29jaWFsX19jb250YWluZXItLXBhbmVsIC5pbWctZ3JleSB7XG4gIC13ZWJraXQtZmlsdGVyOiBncmF5c2NhbGUoMTAwJSk7XG4gIGZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xufVxuLnNvY2lhbF9fY29udGFpbmVyLS1wYW5lbCAuc29jaWFsX19saW5rLS1pbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIGhlaWdodDogMTVyZW07XG4gIHdpZHRoOiAzOHJlbTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc29jaWFsX19jb250YWluZXItLXBhbmVsIC5zb2NpYWxfX2xpbmstLWltZyB7XG4gICAgd2lkdGg6IDY2cmVtO1xuICB9XG59XG4uc29jaWFsX19jb250YWluZXItLXBhbmVsIGRpdiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDQwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTQwJSwgLTUwJSk7XG59XG4uc29jaWFsX19jb250YWluZXItLXBhbmVsIHAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiA4MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC04MCUpO1xuICBmb250LXNpemU6IDJyZW07XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnNvY2lhbF9fY29udGFpbmVyIC5mYSB7XG4gIGZvbnQtc2l6ZTogNHJlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBwYWRkaW5nOiAwLjVyZW0gMC41cmVtIDAgMS41cmVtO1xufVxuLnNvY2lhbF9fY29udGFpbmVyIC5mYS0tZmFjZWJvb2sge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuL2ltYWdlcy9iYWNrZ3JvdW5kcy9mYWNlYm9va2ljb24uc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBwYWRkaW5nOiAycmVtO1xufVxuLnNvY2lhbF9fY29udGFpbmVyIC5mYS10d2l0dGVyLCAuc29jaWFsX19jb250YWluZXIgLmZhLXgtdHdpdHRlciwgLnNvY2lhbF9fY29udGFpbmVyIC5mYS1saW5rZWRpbiwgLnNvY2lhbF9fY29udGFpbmVyIC5mYS1pbnN0YWdyYW0ge1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuLnJlYWRtb3JlIHtcbiAgbWFyZ2luOiA0cmVtIDAgOHJlbSAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucmVhZG1vcmUge1xuICAgIG1hcmdpbjogOHJlbSA3cmVtIDRyZW0gNHJlbTtcbiAgICBwYWRkaW5nOiAzcmVtIDAgMTByZW0gMDtcbiAgfVxufVxuLnJlYWRtb3JlOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3JkZXI6IDFweCBzb2xpZCAjRDFENEQ5O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNDVweDtcbiAgbGVmdDogLTE1cHg7XG4gIHdpZHRoOiAxMTAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IC0xO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnJlYWRtb3JlOjpiZWZvcmUge1xuICAgIHdpZHRoOiAxMDUlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucmVhZG1vcmU6OmJlZm9yZSB7XG4gICAgdG9wOiAtMjVweDtcbiAgICBsZWZ0OiA5NXB4O1xuICAgIHdpZHRoOiA5MCU7XG4gIH1cbn1cbi5yZWFkbW9yZV9fcGFuZWwge1xuICAvKlxuICBwZXJoYXBzIHlvdXIgY3VyaW91cyB3aHkgdGV4dCBpcyBlYXNlLW91dCBhbmQgZXhwYW5kZWQgaXMgZWFzZS1pblxuICBodHRwczovL2Nzcy10cmlja3MuY29tL2Vhc2Utb3V0LWluLWVhc2UtaW4tb3V0LyBoYXMgYSBncmVhdCBhcnRpY2xlIG9uIGl0XG4gIGVhc2UtaW46IHdoZW4gdGhpbmdzIGFyZSBtb3Zpbmcgb3V0LlxuICBlYXNlLW91dDogd2hlbiB0aGluZ3MgYXJlIG1vdmluZyBpblxuICAqL1xufVxuLnJlYWRtb3JlX19wYW5lbCBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiBhdXRvO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnJlYWRtb3JlX19wYW5lbCBpbWcge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1heC13aWR0aDogMjhyZW07XG4gICAgbWF4LWhlaWdodDogMzVyZW07XG4gIH1cbn1cbi5yZWFkbW9yZV9fcGFuZWwtLW5vaW1hZ2Uge1xuICBtYXJnaW46IDdyZW0gMCAwIDA7XG59XG4ucmVhZG1vcmVfX3BhbmVsLS10ZXh0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXgtaGVpZ2h0OiAyNXJlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjVzIGVhc2Utb3V0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnJlYWRtb3JlX19wYW5lbC0tdGV4dCB7XG4gICAgbWF4LWhlaWdodDogMzByZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5yZWFkbW9yZV9fcGFuZWwtLXRleHQgdWwge1xuICAgIG1hcmdpbi1sZWZ0OiA0LjI1cmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5yZWFkbW9yZV9fcGFuZWwtLXRleHQuLWV4cGFuZGVkIHtcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjVzIGVhc2UtaW47XG59XG4ucmVhZG1vcmVfX3BhbmVsLS10ZXh0Om5vdCguLWV4cGFuZGVkKTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHJnYmEoMjU1LCAyNTUsIDI1NSwgMCksIHdoaXRlKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5yZWFkbW9yZV9fcGFuZWwtLW1haW4ge1xuICAgIG1hcmdpbjogMCAxMHJlbSAwIDMwcmVtO1xuICB9XG59XG4ucmVhZG1vcmVfX3BhbmVsIGgzIHtcbiAgY29sb3I6ICMxQjRFNzQ7XG4gIG1hcmdpbi10b3A6IDEuNXJlbTtcbn1cbi5yZWFkbW9yZV9fcGFuZWwgLmV4cGFuZC1idXR0b24ge1xuICBmb250LXdlaWdodDogOTAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbjogMnJlbSAwIDAgMDtcbiAgZm9udC1zaXplOiAxLjZyZW07XG59XG4ucmVhZG1vcmVfX3BhbmVsIC5leHBhbmQtYnV0dG9uOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnJlYWRtb3JlX19wYW5lbCAuZXhwYW5kLWJ1dHRvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDUwJTtcbiAgfVxufVxuLnJlYWRtb3JlX19wYW5lbCAucGx1czo6YmVmb3JlLCAucmVhZG1vcmVfX3BhbmVsIC5taW51czo6YmVmb3JlIHtcbiAgY29sb3I6ICMxQjRFNzQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLnJlYWRtb3JlX19wYW5lbCAucGx1czo6YmVmb3JlIHtcbiAgY29udGVudDogXCIrIFwiO1xufVxuLnJlYWRtb3JlX19wYW5lbCAubWludXM6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4oiSIFwiO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAud2hpdGVwYXBlciB7XG4gICAgbWFyZ2luOiAwIDAgNnJlbSAwO1xuICB9XG59XG4ud2hpdGVwYXBlciBoMiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luOiAxLjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAud2hpdGVwYXBlciBoMiB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBtYXJnaW46IDEuNXJlbSAwO1xuICB9XG59XG4ud2hpdGVwYXBlciAuY2FyZCB7XG4gIGJvcmRlcjogdmFyKC0tYm9yZGVyLXRyYW5zcGFyZW50KTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG4ud2hpdGVwYXBlciAuY2FyZDpob3ZlciB7XG4gIGJvcmRlcjogdmFyKC0tYm9yZGVyLWdyZXkpO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xufVxuLndoaXRlcGFwZXIgLmNhcmQ6aG92ZXIgaDQge1xuICBjb2xvcjogI2I0MTIxMjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC53aGl0ZXBhcGVyIGg0LCAud2hpdGVwYXBlciAuYXV0aG9yIHtcbiAgICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgfVxufVxuLndoaXRlcGFwZXIgLmRhdGUge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgcGFkZGluZzogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC53aGl0ZXBhcGVyIC5kYXRlIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbSAwIDFyZW07XG4gIH1cbn1cbi53aGl0ZXBhcGVyLS1idXR0b24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5pbmZvcm1hdGlvbmFsIHtcbiAgbWFyZ2luOiA0cmVtIDA7XG59XG4uaW5mb3JtYXRpb25hbCAubm9uZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uaW5mb3JtYXRpb25hbF9fdGFiIHtcbiAgcGFkZGluZzogNHJlbSAxcmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaW5mb3JtYXRpb25hbF9fdGFiIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1pbi1oZWlnaHQ6IDcwcmVtO1xuICB9XG59XG4uaW5mb3JtYXRpb25hbF9fdGFiIHAge1xuICBmb250LXNpemU6IDEuOHJlbTtcbiAgbWFyZ2luOiAycmVtIDA7XG59XG4uaW5mb3JtYXRpb25hbCAudGFiLS1ibHVlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFCNEU3NDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5pbmZvcm1hdGlvbmFsIC50YWItLWJsdWU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDIxMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogLTEwMCU7XG4gIHotaW5kZXg6IC0xO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xufVxuLmluZm9ybWF0aW9uYWwgLnRhYi0tYmx1ZTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAyMTAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogLTEwMCU7XG4gIHotaW5kZXg6IC0xO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xufVxuLmluZm9ybWF0aW9uYWwgLnRhYi0tYmx1ZSBoMiB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmluZm9ybWF0aW9uYWwgLnRhYi0tYmx1ZSB7XG4gICAgcGFkZGluZzogMTByZW0gOHJlbSA2cmVtIDJyZW07XG4gIH1cbn1cbi5pbmZvcm1hdGlvbmFsIC50YWItLWdyZXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjdGN0Y3O1xuICBjb2xvcjogIzI0MjQyNDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmluZm9ybWF0aW9uYWwgLnRhYi0tZ3JleTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMjEwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAtMTAwJTtcbiAgei1pbmRleDogLTE7XG4gIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG59XG4uaW5mb3JtYXRpb25hbCAudGFiLS1ncmV5OjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDIxMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAtMTAwJTtcbiAgei1pbmRleDogLTE7XG4gIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaW5mb3JtYXRpb25hbCAudGFiLS1ncmV5IHtcbiAgICBwYWRkaW5nOiAxM3JlbSAycmVtIDZyZW0gOHJlbTtcbiAgfVxufVxuLmluZm9ybWF0aW9uYWwgLnRhYi0tZ3JleSBsaSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMCAwIDJyZW0gMnJlbTtcbn1cbi5pbmZvcm1hdGlvbmFsIC50YWItLWdyZXkgbGk6OmJlZm9yZSB7XG4gIHRvcDogOXB4O1xufVxuLmluZm9ybWF0aW9uYWwgLnRhYi0tZ3JleSBoNCB7XG4gIG1hcmdpbjogMCAwIDJyZW0gMDtcbn1cbi5pbmZvcm1hdGlvbmFsIC5hcmVhLS1uYW1lX19idXR0b25zIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5pbmZvcm1hdGlvbmFsIC5hcmVhLS1uYW1lX19idXR0b25zIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICB9XG4gIC5pbmZvcm1hdGlvbmFsIC5hcmVhLS1uYW1lX19idXR0b25zIC5hcmVhLS1uYW1lX19yb3cge1xuICAgIGZsZXg6IDEgMSAzMy4zMyU7XG4gIH1cbiAgLmluZm9ybWF0aW9uYWwgLmFyZWEtLW5hbWVfX2J1dHRvbnMgbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBoZWlnaHQ6IDRyZW07XG4gICAgcGFkZGluZzogMC4yNXJlbSAxLjVyZW07XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjRkZGRkZGIDAlLCAjRkZGRkZGIDUwJSwgIzFCNEU3NCA1MCUsICMxQjRFNzQgMTAwJSk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMjE1JSAxMDAlO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDk5JSAxMCU7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1wb3NpdGlvbiAwLjVzO1xuICAgIG1hcmdpbjogMXJlbTtcbiAgfVxuICAuaW5mb3JtYXRpb25hbCAuYXJlYS0tbmFtZV9fYnV0dG9ucyBsYWJlbDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xuICAgIGNvbG9yOiAjYjQxMjEyO1xuICB9XG4gIC5pbmZvcm1hdGlvbmFsIC5hcmVhLS1uYW1lX19idXR0b25zIGlucHV0W3R5cGU9cmFkaW9dOmNoZWNrZWQgKyBsYWJlbCB7XG4gICAgY29sb3I6ICMxQjRFNzQ7XG4gICAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgfVxufVxuLmluZm9ybWF0aW9uYWwgLmFyZWEtLW5hbWVfX3NlbGVjdCBzZWxlY3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUI0RTc0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmluZm9ybWF0aW9uYWwgLmFyZWEtLW5hbWVfX3NlbGVjdCBzZWxlY3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi5pbmZvcm1hdGlvbmFsIC50cmlhbmdsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5pbmZvcm1hdGlvbmFsIC50cmlhbmdsZTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTRyZW07XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSk7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1sZWZ0OiAycmVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDJyZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci10b3A6IDJyZW0gc29saWQgIzFCNEU3NDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5pbmZvcm1hdGlvbmFsIC50cmlhbmdsZTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTUlO1xuICAgIGxlZnQ6IC02cmVtO1xuICAgIGJvcmRlci10b3A6IDJyZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWxlZnQ6IDJyZW0gc29saWQgIzFCNEU3NDtcbiAgICBib3JkZXItYm90dG9tOiAycmVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5maWx0ZXJfX2hlYWRpbmcge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cblxuLmZpbHRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5maWx0ZXIge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgbWFyZ2luOiAtMC41cmVtIC01cmVtIDAgMDtcbiAgfVxufVxuLmZpbHRlciBwIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZmlsdGVyIHAge1xuICAgIG1hcmdpbjogMC41cmVtIDA7XG4gIH1cbn1cbi5maWx0ZXIgLnVpLWdyb3VwIHtcbiAgbWFyZ2luOiAwIDNyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZmlsdGVyIC51aS1ncm91cCB7XG4gICAgbWFyZ2luOiAwIDE5cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZmlsdGVyIC51aS1ncm91cCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZmlsdGVyIC51aS1ncm91cDpsYXN0LW9mLXR5cGUge1xuICAgIG1hcmdpbjogLTAuMzVyZW0gMnJlbSAwIDNyZW07XG4gIH1cbn1cbi5maWx0ZXIgc2VsZWN0IHtcbiAgYm9yZGVyOiAycHggc29saWQgI0FCQUVCNDtcbiAgY29sb3I6ICM0MjRBNTU7XG4gIHBhZGRpbmc6IDAuN3JlbTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMC40cmVtIGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5maWx0ZXIgc2VsZWN0IHtcbiAgICB3aWR0aDogMjdyZW07XG4gIH1cbn1cbi5maWx0ZXIgc2VsZWN0IG9wdGlvbiB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjMDYzNDcxO1xufVxuXG4uc2VhcmNoLS1iYW5uZXJfX3Jlc3VsdHMgLmZpbHRlciB7XG4gIG1hcmdpbjogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zZWFyY2gtLWJhbm5lcl9fcmVzdWx0cyAuZmlsdGVyIHtcbiAgICBtYXJnaW46IDdyZW0gMCAwIDdyZW07XG4gIH1cbn1cbi5zZWFyY2gtLWJhbm5lcl9fcmVzdWx0cyAuZmlsdGVyIC5mbGV4LWNoaWxkLWF1dG8gLmJ1dHRvbiwgLnNlYXJjaC0tYmFubmVyX19yZXN1bHRzIC5maWx0ZXIgLmZsZXgtY2hpbGQtYXV0byAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLnNlYXJjaC0tYmFubmVyX19yZXN1bHRzIC5maWx0ZXIgLmZsZXgtY2hpbGQtYXV0byAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2VhcmNoLS1iYW5uZXJfX3Jlc3VsdHMgLmZpbHRlciAuZmxleC1jaGlsZC1hdXRvIC5idXR0b24sIC5zZWFyY2gtLWJhbm5lcl9fcmVzdWx0cyAuZmlsdGVyIC5mbGV4LWNoaWxkLWF1dG8gLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5zZWFyY2gtLWJhbm5lcl9fcmVzdWx0cyAuZmlsdGVyIC5mbGV4LWNoaWxkLWF1dG8gLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgbWFyZ2luOiAtMC4zNXJlbSAycmVtIDAgMnJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNlYXJjaC0tYmFubmVyX19yZXN1bHRzIC5maWx0ZXIgLmZsZXgtY2hpbGQtYXV0byB7XG4gICAgbWFyZ2luOiAwIC01cmVtO1xuICB9XG59XG4uc2VhcmNoLS1iYW5uZXJfX3Jlc3VsdHMgLmZpbHRlciBwIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDEuOHJlbTtcbn1cbi5zZWFyY2gtLWJhbm5lcl9fcmVzdWx0cyAuZmlsdGVyIHNlbGVjdCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNGRkZGRkY7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnNlYXJjaC0tYmFubmVyX19yZXN1bHRzIC5maWx0ZXIgc2VsZWN0OmZvY3VzIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2VhcmNoLS1iYW5uZXJfX3Jlc3VsdHMgLmZpbHRlciBzZWxlY3Qge1xuICAgIHdpZHRoOiAyNHJlbTtcbiAgfVxufVxuXG4ubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQgLm0tYXJjaGl2ZS1ibG9ja19fZmlsdGVycyB7XG4gIG1hcmdpbjogMjVweCAwIDQwcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NDBweCkge1xuICAubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQgLm0tYXJjaGl2ZS1ibG9ja19fZmlsdGVycyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuLm1haW4tZ3JpZCAubWFpbi1jb250ZW50IC5tLWFyY2hpdmUtYmxvY2tfX2ZpbHRlcnMgc2VsZWN0IHtcbiAgY29sb3I6ICMyODU3YWE7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXI6IDJweCBzb2xpZCAjMjg1N2FhO1xuICBtYXJnaW46IDAgMCAxMHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgLm1haW4tZ3JpZCAubWFpbi1jb250ZW50IC5tLWFyY2hpdmUtYmxvY2tfX2ZpbHRlcnMgc2VsZWN0IHtcbiAgICB3aWR0aDogMTgzcHg7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG4ubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQgLm0tYXJjaGl2ZS1ibG9ja19fZmlsdGVycyB1bCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICB3aWR0aDogMTAwJTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5tYWluLWdyaWQgLm1haW4tY29udGVudCAubS1hcmNoaXZlLWJsb2NrX19maWx0ZXJzIHVsIGxpIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMzMuMzMlO1xuICBjb2xvcjogIzI4NTdhYTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NDBweCkge1xuICAubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQgLm0tYXJjaGl2ZS1ibG9ja19fZmlsdGVycyB1bCBsaSB7XG4gICAgbWFyZ2luOiAwIDIwcHg7XG4gIH1cbn1cbi5tYWluLWdyaWQgLm1haW4tY29udGVudCAubS1hcmNoaXZlLWJsb2NrX19maWx0ZXJzIHVsIGxpOmhvdmVyLCAubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQgLm0tYXJjaGl2ZS1ibG9ja19fZmlsdGVycyB1bCBsaS5hcmNoaXZlLXNlbGVjdGVkIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICMyODU3YWE7XG59XG4ubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQgLm0tYXJjaGl2ZS1ibG9ja19fZmlsdGVycyB1bCBsaTpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4ubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQgLm0tYXJjaGl2ZS1ibG9ja19fZGF0ZSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDE1cHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLm1haW4tZ3JpZCAubWFpbi1jb250ZW50IC5tLWFyY2hpdmUtYmxvY2tfX3Jlc3VsdCB7XG4gIG1hcmdpbi1ib3R0b206IDYwcHg7XG59XG4ubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQgLm0tYXJjaGl2ZS1ibG9ja19fcmVzdWx0IGlmcmFtZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDM4MnB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuLm1haW4tZ3JpZCAubWFpbi1jb250ZW50IC5tLWFyY2hpdmUtYmxvY2tfX3Jlc3VsdCBoMiB7XG4gIGNvbG9yOiAjMjg1N2FhO1xuICBmb250LXNpemU6IDI1cHg7XG59XG4ubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQgLm0tYXJjaGl2ZS1ibG9ja19fcmVzdWx0IHAge1xuICBjb2xvcjogIzI4NTdhYTtcbn1cbi5tYWluLWdyaWQgLm1haW4tY29udGVudCAubS1hcmNoaXZlLWJsb2NrX19yZXN1bHQtLXRodW1iIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMjE3cHg7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgLm1haW4tZ3JpZCAubWFpbi1jb250ZW50IC5tLWFyY2hpdmUtYmxvY2tfX3Jlc3VsdC0tdGh1bWIge1xuICAgIHdpZHRoOiAxNjZweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIH1cbn1cbi5tYWluLWdyaWQgLm1haW4tY29udGVudCAubS1hcmNoaXZlLWJsb2NrX19yZXN1bHQuYmxvZy1wb3N0IHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZWRlZGU7XG4gIG1hcmdpbi1ib3R0b206IDI2cHg7XG4gIHBhZGRpbmctYm90dG9tOiAyNnB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgLm1haW4tZ3JpZCAubWFpbi1jb250ZW50IC5tLWFyY2hpdmUtYmxvY2tfX3Jlc3VsdC5ibG9nLXBvc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cbi5tYWluLWdyaWQgLm1haW4tY29udGVudCAubS1hcmNoaXZlLWJsb2NrX19yZXN1bHQuYmxvZy1wb3N0Omxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cbi5tYWluLWdyaWQgLm1haW4tY29udGVudCAubS1hcmNoaXZlLWJsb2NrX19yZXN1bHQuYmxvZy1wb3N0IGgyIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cbi5tYWluLWdyaWQgLm1haW4tY29udGVudCAubS1hcmNoaXZlLWJsb2NrX19yZXN1bHQuYmxvZy1wb3N0IC5tLWFyY2hpdmUtYmxvY2tfX3Jlc3VsdC0tdGh1bWIge1xuICBoZWlnaHQ6IDE1MHB4O1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gIC5tYWluLWdyaWQgLm1haW4tY29udGVudCAubS1hcmNoaXZlLWJsb2NrX19yZXN1bHQuYmxvZy1wb3N0IC5tLWFyY2hpdmUtYmxvY2tfX3Jlc3VsdC0tdGh1bWIge1xuICAgIHdpZHRoOiAxNTBweDtcbiAgfVxufVxuLm1haW4tZ3JpZCAubWFpbi1jb250ZW50IC5tLWFyY2hpdmUtYmxvY2tfX3Jlc3VsdC5wZGYge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RlZGVkZTtcbiAgbWFyZ2luLWJvdHRvbTogMjZweDtcbiAgcGFkZGluZy1ib3R0b206IDI2cHg7XG4gIG1hcmdpbjogMCAyMHB4IDI2cHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NDBweCkge1xuICAubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQgLm0tYXJjaGl2ZS1ibG9ja19fcmVzdWx0LnBkZiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuLm1haW4tZ3JpZCAubWFpbi1jb250ZW50IC5tLWFyY2hpdmUtYmxvY2tfX3Jlc3VsdC5wZGY6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuLm1haW4tZ3JpZCAubWFpbi1jb250ZW50IC5tLWFyY2hpdmUtYmxvY2tfX3Jlc3VsdC5wZGYgaDMge1xuICBmb250LXNpemU6IDIwcHg7XG59XG4ubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQgLm0tYXJjaGl2ZS1ibG9ja19fcmVzdWx0LnBkZiBwIHtcbiAgY29sb3I6ICMwMDA7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG4ubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQgLm0tYXJjaGl2ZS1ibG9ja19fcmVzdWx0LnBkZiBpbWcge1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG59XG4ubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQgLm0tYXJjaGl2ZS1ibG9ja19fcmVzdWx0LnBkZiBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTA2cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyOiAycHggc29saWQgIzI4NTdhYTtcbiAgbWFyZ2luLXJpZ2h0OiAxOHB4O1xuICBwYWRkaW5nOiA1cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4ubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQgLm0tYXJjaGl2ZS1ibG9ja19fcmVzdWx0LnBkZiBhOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6ICMyODU3YWE7XG59XG5cbi5tLWFydC1jb21wX19tZWV0IHtcbiAgYmFja2dyb3VuZDogI2Y0ZjRmNDtcbiAgcGFkZGluZzogMzBweDtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbn1cbi5tLWFydC1jb21wX19tZWV0IC53cC1ibG9jay1idXR0b24ge1xuICBtYXJnaW46IDAgYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG59XG4ubS1hcnQtY29tcF9fbWVldCAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgd2lkdGg6IGF1dG87XG4gIGJvcmRlcjogMXB4IHNvbGlkICMyODU3YWE7XG4gIGNvbG9yOiAjMjg1N2FhO1xuICBmb250LXNpemU6IDIwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWwgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogMjBweCA1MHB4O1xufVxuLm0tYXJ0LWNvbXBfX21lZXQgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpiZWZvcmUsIC5tLWFydC1jb21wX19tZWV0IC53cC1ibG9jay1idXR0b25fX2xpbms6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLm0tYXJ0LWNvbXBfX25hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbjogMTBweCBhdXRvIDQ2cHg7XG4gIHBhZGRpbmc6IDA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjb2xvcjogIzFlNDM4NTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gIC5tLWFydC1jb21wX19uYXYge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi5tLWFydC1jb21wX19uYXYgYSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICBtYXJnaW46IDAgNXB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogNXB4IDEwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDYwMCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzFlNDM4NTtcbn1cbi5tLWFydC1jb21wX19uYXYgYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMxZTQzODU7XG4gIGNvbG9yOiAjZmZmO1xufVxuLm0tYXJ0LWNvbXBfX25hdiBsaSB7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAyMDZweDtcbn1cbi5tLWFydC1jb21wX19uYXYgbGk6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuLm0tYXJ0LWNvbXBfX2ludHJvIHtcbiAgbWFyZ2luOiAwIDE1cHggIWltcG9ydGFudDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NDBweCkge1xuICAubS1hcnQtY29tcF9faW50cm8ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi10b3A6IDUwcHggIWltcG9ydGFudDtcbiAgfVxufVxuLm0tYXJ0LWNvbXBfX2ludHJvIGgzIHtcbiAgY29sb3I6ICMxQjRFNzQ7XG59XG4ubS1hcnQtY29tcF9fYnV0dG9ucyB7XG4gIGJhY2tncm91bmQ6ICNmMmYyZjI7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbjogMCAwIDIwcHggIWltcG9ydGFudDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgLm0tYXJ0LWNvbXBfX2J1dHRvbnMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4ubS1hcnQtY29tcF9fYnV0dG9ucy52aWRlbyBhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4vaW1hZ2VzL2Fycm93cy9hcnJvdy0tdmlkZW8uc3ZnXCIpIG5vLXJlcGVhdDtcbiAgaGVpZ2h0OiAzN3B4O1xuICB3aWR0aDogNTFweDtcbn1cbi5tLWFydC1jb21wX19idXR0b25zIGxpIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgd2lkdGg6IDUwJTtcbn1cbi5tLWFydC1jb21wX19idXR0b25zIGxpOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5tLWFydC1jb21wX19idXR0b25zIGEge1xuICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDI0cHggMTNweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmb250LXNpemU6IDE2cHg7XG59XG4ubS1hcnQtY29tcF9fYnV0dG9ucyBhOmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiBcIlwiO1xuICBoZWlnaHQ6IDMzcHg7XG4gIHdpZHRoOiAzM3B4O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuL2ltYWdlcy9hcnJvd3MvYXJyb3ctLWxpbmsuc3ZnXCIpIG5vLXJlcGVhdDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbn1cbi5tLWFydC1jb21wX19xdW90ZSB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiA4MHB4IDAgODBweCAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTQwcHgpIHtcbiAgLm0tYXJ0LWNvbXBfX3F1b3RlIHtcbiAgICBtYXJnaW46IDgwcHggMTByZW0gODBweCAhaW1wb3J0YW50O1xuICB9XG59XG4ubS1hcnQtY29tcF9fcHJlc3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbjogMXJlbSAwIDAgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAubS1hcnQtY29tcF9fcHJlc3Mge1xuICAgIG1hcmdpbjogMXJlbSAyMDlweCAwICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5tLWFydC1jb21wX19wcmVzcyBsaSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NDBweCkge1xuICAubS1hcnQtY29tcF9fcHJlc3MgbGkge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cbi5tLWFydC1jb21wX19wcmVzcyBsaTpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4ubS1hcnQtY29tcF9fcHJlc3MgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMjg1N2FhO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5tLWFydC1jb21wX19wcmVzcyBhIHtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbi5tLWFydC1jb21wX19wcmVzcyBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbn1cbi5tLWFydC1jb21wX19zZXBhcmF0b3Ige1xuICBtYXJnaW46IDc1cHggMCAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzAwMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAubS1hcnQtY29tcF9fc2VwYXJhdG9yIHtcbiAgICBtYXJnaW46IDc1cHggMjNyZW0gIWltcG9ydGFudDtcbiAgfVxufVxuLm0tYXJ0LWNvbXBfX3RpdGxlIHtcbiAgY29sb3I6ICMyODU3YWE7XG4gIGZvbnQtc2l6ZTogMjVweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cbi5tLWFydC1jb21wX19zbGlkZXIge1xuICBiYWNrZ3JvdW5kOiAjZjFmMWYxO1xuICBwYWRkaW5nOiAxOHB4O1xuICBtYXJnaW46IDk1cHggMCAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTM5MnB4KSB7XG4gIC5tLWFydC1jb21wX19zbGlkZXIge1xuICAgIHBhZGRpbmc6IDM1cHggNzZweCA2OHB4O1xuICAgIG1hcmdpbjogOTVweCAtMTI1cHggIWltcG9ydGFudDtcbiAgfVxufVxuLm0tYXJ0LWNvbXBfX3NsaWRlciAuc2xpY2stcHJldiB7XG4gIGxlZnQ6IC00N3B4O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuL2ltYWdlcy9hcnJvd3MvYXJyb3ctLXNsaWRlci0tcHJldi5zdmdcIikgbm8tcmVwZWF0O1xufVxuLm0tYXJ0LWNvbXBfX3NsaWRlciAuc2xpY2stbmV4dCB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4vaW1hZ2VzL2Fycm93cy9hcnJvdy0tc2xpZGVyLS1uZXh0LnN2Z1wiKSBuby1yZXBlYXQ7XG4gIHJpZ2h0OiAtNDdweDtcbn1cbi5tLWFydC1jb21wX19zbGlkZXIgLnNsaWNrLWFycm93IHtcbiAgaGVpZ2h0OiAzOHB4O1xuICB3aWR0aDogMjBweDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzOTJweCkge1xuICAubS1hcnQtY29tcF9fc2xpZGVyIC5zbGljay1hcnJvdyB7XG4gICAgaGVpZ2h0OiA1MnB4O1xuICAgIHdpZHRoOiAyN3B4O1xuICB9XG59XG4ubS1hcnQtY29tcF9fc2xpZGVyIC5zbGljay1hcnJvdzpob3ZlciB7XG4gIG9wYWNpdHk6IDAuNTtcbn1cbi5tLWFydC1jb21wX19zbGlkZXIgLnNsaWNrLWFycm93OmJlZm9yZSwgLm0tYXJ0LWNvbXBfX3NsaWRlciAuc2xpY2stYXJyb3c6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4ubS1hcnQtY29tcF9fc2xpZGVyIGgyIHtcbiAgbWF4LXdpZHRoOiA2NDJweDtcbiAgbWFyZ2luOiAwIGF1dG8gMzVweDtcbiAgZm9udC1zaXplOiAyNXB4O1xuICBmb250LXdlaWdodDogNTAwO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTM5MnB4KSB7XG4gIC5tLWFydC1jb21wX19zbGlkZXIgaDIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuLm0tYXJ0LWNvbXBfX3NsaWRlciBoMiBhIHtcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDAgIWltcG9ydGFudDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkO1xufVxuLm0tYXJ0LWNvbXBfX3NsaWRlci0tc2xpZGVzIHtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG59XG4ubS1hcnQtY29tcF9fc2xpZGVyLS1zbGlkZSB7XG4gIHBhZGRpbmc6IDAgMTFweDtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi5tLWFydC1jb21wX19zbGlkZXItLXNsaWRlOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5tLWFydC1jb21wX19zbGlkZXItLXNsaWRlIGltZyB7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IDIyM3B4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NDBweCkge1xuICAuYW5jaG9yOmJlZm9yZSxcbiN2aXJ0dWFsLXJlY2VwdGlvbixcbiNhYm91dCxcbiNwcmVzcyB7XG4gICAgcGFkZGluZy10b3A6IDE3MHB4ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXRvcDogLTE3MHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuaHRtbCB7XG4gIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xufVxuXG4uc2lnbnVwIHtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIG1hcmdpbjogOXJlbSAwIDAgMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNpZ251cCB7XG4gICAgbWFyZ2luOiAzcmVtIDAgMCAwO1xuICB9XG59XG4uc2lnbnVwX19waWN0dXJlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAtMTtcbiAgYm90dG9tOiA5NnJlbTtcbiAgcmlnaHQ6IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc2lnbnVwX19waWN0dXJlIHtcbiAgICBib3R0b206IDk0cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2lnbnVwX19waWN0dXJlIHtcbiAgICBib3R0b206IDQycmVtO1xuICB9XG59XG4uc2lnbnVwX19waWN0dXJlIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiA0NXJlbTtcbiAgbWF4LXdpZHRoOiAxMDByZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2lnbnVwX19waWN0dXJlIGltZyB7XG4gICAgaGVpZ2h0OiA2NXJlbTtcbiAgfVxufVxuLnNpZ251cF9fYnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC02cmVtO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHotaW5kZXg6IDEwO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAuc2lnbnVwX19idXR0b24ge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBsZWZ0OiA5Ny41JTtcbiAgICB0b3A6IGNhbGMoMTAwJSAtIDQ5cmVtKTtcbiAgfVxufVxuLnNpZ251cF9fZm9ybSB7XG4gIGJhY2tncm91bmQ6ICMxOTNkNWMgdXJsKFwiLi9pbWFnZXMvYmFja2dyb3VuZHMvQ0lfSGVhZGVySW1hZ2VfU3RhbmRhcmQucG5nXCIpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHBhZGRpbmc6IDNyZW07XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2lnbnVwX19mb3JtIHtcbiAgICBoZWlnaHQ6IDI4cmVtO1xuICAgIHBhZGRpbmc6IDhyZW0gNHJlbSA4cmVtIDRyZW07XG4gICAgbWF4LXdpZHRoOiAxMDB2dztcbiAgICBsZWZ0OiA1MCU7XG4gICAgcmlnaHQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLTUwdncgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IC01MHZ3ICFpbXBvcnRhbnQ7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cbi5zaWdudXBfX2Zvcm0gLmJ1dHRvbiwgLnNpZ251cF9fZm9ybSAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLnNpZ251cF9fZm9ybSAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cbi5zaWdudXBfX2Zvcm0gLndwLWJsb2NrLWdyb3VwX19pbm5lci1jb250YWluZXIge1xuICBtYXgtd2lkdGg6IDY4MHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuLnNpZ251cF9fZm9ybSAuZmxleC1jaGlsZC1hdXRvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnNpZ251cF9fZm9ybSBoMyB7XG4gIHdpZHRoOiA2MCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmctYm90dG9tOiAycmVtO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zaWdudXBfX2Zvcm0gaDMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogNHJlbSAwIDAgMDtcbiAgfVxufVxuLnNpZ251cF9fY29udGFjdCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFCNEU3NDtcbiAgY29sb3I6ICNBN0MxRTQ7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBwYWRkaW5nOiAzcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNpZ251cF9fY29udGFjdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwYWRkaW5nOiA0cmVtIDVyZW0gMCA1cmVtO1xuICB9XG59XG4uc2lnbnVwX19jb250YWN0IGEge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG59XG4uc2lnbnVwX19jb250YWN0LS1lbGUge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuLnNpZ251cF9fY29udGFjdC0tZWxlIC5pbmZvIHtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zaWdudXBfX2NvbnRhY3QtLXRvcCB7XG4gICAgcGFkZGluZzogMnJlbSAzcmVtIDJyZW0gM3JlbTtcbiAgfVxufVxuLnNpZ251cF9fY29udGFjdC0tdG9wIC5sb2dvIHtcbiAgd2lkdGg6IDEyNXB4O1xuICBoZWlnaHQ6IDUycHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2lnbnVwX19jb250YWN0LS10b3AgLmxvZ28ge1xuICAgIHdpZHRoOiAxNzBweDtcbiAgICBoZWlnaHQ6IDcwcHg7XG4gIH1cbn1cbi5zaWdudXBfX2NvbnRhY3QtLXRvcCAuZm9vdGVyX19jb250YWN0LS1lbGU6bnRoLWNoaWxkKDIpIHtcbiAgb3JkZXI6IDM7XG59XG4uc2lnbnVwX19jb250YWN0LS10b3AgLmZvb3Rlcl9fY29udGFjdC0tZWxlOm50aC1jaGlsZCgzKSB7XG4gIG9yZGVyOiA0O1xufVxuLnNpZ251cF9fY29udGFjdC0tdG9wIC5mb290ZXJfX2NvbnRhY3QtLWVsZTpudGgtY2hpbGQoNCkge1xuICBvcmRlcjogNTtcbn1cbi5zaWdudXBfX2NvbnRhY3QtLXRvcCAuZm9vdGVyX19jb250YWN0LS1lbGU6bnRoLWNoaWxkKDUpIHtcbiAgb3JkZXI6IDI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc2lnbnVwX19jb250YWN0LS10b3AgLmZvb3Rlcl9fY29udGFjdC0tZWxlOm50aC1jaGlsZCgyKSB7XG4gICAgb3JkZXI6IDI7XG4gIH1cbiAgLnNpZ251cF9fY29udGFjdC0tdG9wIC5mb290ZXJfX2NvbnRhY3QtLWVsZTpudGgtY2hpbGQoMykge1xuICAgIG9yZGVyOiAzO1xuICB9XG4gIC5zaWdudXBfX2NvbnRhY3QtLXRvcCAuZm9vdGVyX19jb250YWN0LS1lbGU6bnRoLWNoaWxkKDQpIHtcbiAgICBvcmRlcjogNDtcbiAgfVxuICAuc2lnbnVwX19jb250YWN0LS10b3AgLmZvb3Rlcl9fY29udGFjdC0tZWxlOm50aC1jaGlsZCg1KSB7XG4gICAgb3JkZXI6IDU7XG4gIH1cbn1cbi5zaWdudXBfX2NvbnRhY3QtLXRvcCAuZm9vdGVyX19jb250YWN0LS1lbGUgLm5hdmlnYXRpb24tZm9ybSB7XG4gIG1hcmdpbjogMnJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zaWdudXBfX2NvbnRhY3QtLXRvcCAuZm9vdGVyX19jb250YWN0LS1lbGUgLm5hdmlnYXRpb24tZm9ybSB7XG4gICAgbWFyZ2luOiAycmVtIDAgMCAwO1xuICB9XG59XG4uc2lnbnVwX19jb250YWN0LS10b3AgLmZvb3Rlcl9fY29udGFjdC0tZWxlIC5uYXZpZ2F0aW9uLWZvcm0gaW5wdXRbdHlwZT10ZXh0XSB7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xufVxuLnNpZ251cF9fY29udGFjdC0tdG9wIC5mb290ZXJfX2NvbnRhY3QtLWVsZSAubmF2aWdhdGlvbi1mb3JtIGlucHV0W3R5cGU9dGV4dF06OnBsYWNlaG9sZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xcmVtO1xuICBsZWZ0OiAtMC41cmVtO1xufVxuLnNpZ251cF9fY29udGFjdC0tdG9wIC5mb290ZXJfX2NvbnRhY3QtLWVsZSAubmF2aWdhdGlvbi1mb3JtIGlucHV0W3R5cGU9dGV4dF06YWN0aXZlOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5zaWdudXBfX2NvbnRhY3QtLXRvcCAuZm9vdGVyX19jb250YWN0LS1lbGUgLm5hdmlnYXRpb24tZm9ybSBpbnB1dFt0eXBlPXRleHRdOmZvY3VzOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5zaWdudXBfX2NvbnRhY3QtLXRvcCAuZm9vdGVyX19jb250YWN0LS1lbGUgLm5hdmlnYXRpb24tZm9ybSBpbnB1dFt0eXBlPXN1Ym1pdF0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDVyZW07XG4gIGhlaWdodDogNXJlbTtcbiAgei1pbmRleDogMTE7XG4gIG9wYWNpdHk6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbn1cbi5zaWdudXBfX2NvbnRhY3QtLXRvcCAuZm9vdGVyX19jb250YWN0LS1lbGUgLm5hdmlnYXRpb24tZm9ybSAubWFnbmlmeWluZy1nbGFzcy1jb250YWluZXIge1xuICB0b3A6IC0yLjVyZW07XG4gIHJpZ2h0OiAtMnJlbTtcbiAgei1pbmRleDogMTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zaWdudXBfX2NvbnRhY3QtLXRvcCAuZm9vdGVyX19jb250YWN0LS1lbGUgLm5hdmlnYXRpb24tZm9ybSAubWFnbmlmeWluZy1nbGFzcy1jb250YWluZXIge1xuICAgIHRvcDogLTJyZW07XG4gIH1cbn1cbi5zaWdudXBfX2NvbnRhY3QtLXRvcCAuZm9vdGVyX19jb250YWN0LS1lbGUgLm5hdmlnYXRpb24tZm9ybSAubWFnbmlmeWluZy1nbGFzcy1jb250YWluZXIgLm1hZ25pZnlpbmctZ2xhc3Mge1xuICBoZWlnaHQ6IDAuM2VtO1xuICB3aWR0aDogMC4zZW07XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIHRvcDogM3JlbTtcbiAgbGVmdDogLTRyZW07XG59XG4uc2lnbnVwX19jb250YWN0LS1ib3R0b20ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xuICBwYWRkaW5nOiAycmVtIDAgMnJlbSAwcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNpZ251cF9fY29udGFjdC0tYm90dG9tIHtcbiAgICBwYWRkaW5nOiAycmVtIDAgNHJlbSAwO1xuICB9XG59XG4uc2lnbnVwX19jb250YWN0LS1ib3R0b206OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNBN0MxRTQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IC0zcmVtO1xuICB3aWR0aDogMTAwdnc7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2lnbnVwX19jb250YWN0LS1ib3R0b206OmJlZm9yZSB7XG4gICAgcmlnaHQ6IDQwcHg7XG4gICAgd2lkdGg6IDk1JTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNpZ251cF9fY29udGFjdC0tYm90dG9tLS1lbGU6bnRoLWNoaWxkKDEpIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogM3JlbTtcbiAgfVxuICAuc2lnbnVwX19jb250YWN0LS1ib3R0b20tLWVsZTpudGgtY2hpbGQoMikge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogM3JlbTtcbiAgfVxufVxuLnNpZ251cF9fY29udGFjdC0tYm90dG9tLS1lbGUgLmZhIHtcbiAgZm9udC1zaXplOiAycmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgcGFkZGluZzogMC41cmVtIDAuMjVyZW0gMCAxcmVtO1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbn1cbi5zaWdudXBfX2NvbnRhY3QtLWJvdHRvbS0tZWxlIC5mYS1mYWNlYm9vayB7XG4gIGJhY2tncm91bmQ6ICNBN0MxRTQ7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjQTdDMUU0O1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjQTdDMUU0O1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNBN0MxRTQ7XG4gIGNvbG9yOiAjMUI0RTc0O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG4uc2lnbnVwX19jb250YWN0LS1ib3R0b20tLWVsZSAuZmEtdHdpdHRlcixcbi5zaWdudXBfX2NvbnRhY3QtLWJvdHRvbS0tZWxlIC5mYS14LXR3aXR0ZXIge1xuICBjb2xvcjogI0E3QzFFNDtcbiAgZm9udC1zaXplOiAyLjVyZW07XG59XG4uc2lnbnVwX19jb250YWN0LS1ib3R0b20tLWVsZSAubGluayB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIG1hcmdpbjogMnJlbSAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNpZ251cF9fY29udGFjdC0tYm90dG9tLS1lbGUgLmxpbmsge1xuICAgIG1hcmdpbjogMHJlbSAzcmVtIDByZW0gMDtcbiAgfVxuICAuc2lnbnVwX19jb250YWN0LS1ib3R0b20tLWVsZSAubGluazpudGgtY2hpbGQoMykge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuXG4ubS1hY2NvcmRpb24ge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIG1heC13aWR0aDogODQycHg7XG59XG4ubS1hY2NvcmRpb25fX2Jsb2NrLXRpdGxlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IDQ1cHggYXV0byAhaW1wb3J0YW50O1xuICBjb2xvcjogIzE3M2M4NztcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWF4LXdpZHRoOiA4NDJweDtcbn1cbi5tLWFjY29yZGlvbl9fdGl0bGUge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLm0tYWNjb3JkaW9uX190aXRsZSBzdHJvbmcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZDogIzA2MzQ3MTtcbiAgcGFkZGluZzogMTFweCAxOHB4O1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgd2lkdGg6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xufVxuLm0tYWNjb3JkaW9uX190aXRsZSBzcGFuIHtcbiAgYmFja2dyb3VuZDogIzMzNTdiNTtcbiAgd2lkdGg6IDUzcHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZGlzcGxheTogZmxleDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDMwcHg7XG4gIG1hcmdpbi1sZWZ0OiA3cHg7XG59XG4ubS1hY2NvcmRpb25fX3RpdGxlIHNwYW46aG92ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4ubS1hY2NvcmRpb25fX2Rlc2NyaXB0aW9uIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMThweCAwO1xufVxuLm0tYWNjb3JkaW9uIC5tLWFjY29yZGlvbl9fcGx1cyB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4ubS1hY2NvcmRpb24gLm0tYWNjb3JkaW9uX19taW51cyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ubS1hY2NvcmRpb25fX2l0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiA3cHg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4ubS1hY2NvcmRpb25fX2l0ZW0uYWN0aXZlIC5tLWFjY29yZGlvbl9fcGx1cyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ubS1hY2NvcmRpb25fX2l0ZW0uYWN0aXZlIC5tLWFjY29yZGlvbl9fbWludXMge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLm0tYWNjb3JkaW9uX19pdGVtOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLm0tYWNjb3JkaW9uX19pdGVtOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnB1bS1jb250YWluZXIge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuL2ltYWdlcy9iYWNrZ3JvdW5kcy9DSV9IZWFkZXJJbWFnZV9TdGFuZGFyZC5wbmdcIikgcmlnaHQgYm90dG9tICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXIgIWltcG9ydGFudDtcbiAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50O1xuICBtYXgtd2lkdGg6IDUwMHB4ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmO1xufVxuLnB1bS1jb250YWluZXIgLnB1bS10aXRsZSB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLnB1bS1jb250YWluZXIgLnB1bS1jbG9zZSB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi10b3A6IDE0cHg7XG4gIGZvbnQtc2l6ZTogNDRweCAhaW1wb3J0YW50O1xufVxuLnB1bS1jb250YWluZXIgLnB1bS1jbG9zZTpiZWZvcmUsIC5wdW0tY29udGFpbmVyIC5wdW0tY2xvc2U6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogNDRweCAhaW1wb3J0YW50O1xufVxuLnB1bS1jb250YWluZXIgaW5wdXQsIC5wdW0tY29udGFpbmVyIHNlbGVjdCB7XG4gIHdpZHRoOiA0OSUgIWltcG9ydGFudDtcbiAgbWFyZ2luLXJpZ2h0OiAyJTtcbiAgbWFyZ2luLWJvdHRvbTogMiU7XG59XG4ucHVtLWNvbnRhaW5lciAuZm9ybV9fYnV0dG9uIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gIGNvbG9yOiAjZmZmO1xufVxuLnB1bS1jb250YWluZXIgcCB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5tLXBvcHVwX19yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLm0tcG9wdXBfX3JvdyBpbnB1dCwgLm0tcG9wdXBfX3JvdyBzZWxlY3Qge1xuICB3aWR0aDogNDklO1xuICBmbGV4LXNocmluazogMDtcbn1cblxuLndwLWJsb2NrLXBvc3QtdGVtcGxhdGUge1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbn1cbi53cC1ibG9jay1wb3N0LXRlbXBsYXRlIGxpOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbi53cC1ibG9jay1wb3N0LXRlbXBsYXRlOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMXB4O1xuICB3aWR0aDogNDUlO1xuICBiYWNrZ3JvdW5kOiAjOTc5Nzk3O1xuICBtYXJnaW46IDg1cHggYXV0bztcbn1cblxuLndwLWNvbnRhaW5lci0xMi53cC1ibG9jay1xdWVyeSBsaSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjOTc5Nzk3O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cbi53cC1jb250YWluZXItMTIud3AtYmxvY2stcXVlcnkgbGk6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG4ud3AtY29udGFpbmVyLTEyLndwLWJsb2NrLXF1ZXJ5IC53cC1ibG9jay1wb3N0LXRlbXBsYXRlOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ud3AtYmxvY2stcXVlcnktcGFnaW5hdGlvbiB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi53cC1ibG9jay1xdWVyeS1wYWdpbmF0aW9uIC53cC1ibG9jay1xdWVyeS1wYWdpbmF0aW9uLXByZXZpb3VzLFxuLndwLWJsb2NrLXF1ZXJ5LXBhZ2luYXRpb24gLndwLWJsb2NrLXF1ZXJ5LXBhZ2luYXRpb24tbmV4dCB7XG4gIHBhZGRpbmc6IDlweCAyMnB4O1xufVxuXG4ud3AtYmxvY2stY292ZXIge1xuICB3aWR0aDogMTAwdnc7XG4gIG1hcmdpbjogLTMwOXB4IDAgMy41cmVtIGNhbGMoNTAlIC0gNTB2dykgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExOTBweCkge1xuICAud3AtYmxvY2stY292ZXIge1xuICAgIG1pbi1oZWlnaHQ6IDU5MHB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTkwcHgpIHtcbiAgLndwLWJsb2NrLWNvdmVyIHtcbiAgICBtaW4taGVpZ2h0OiA2MDBweDtcbiAgfVxufVxuLndwLWJsb2NrLWNvdmVyIC53cC1ibG9jay1jb3Zlcl9faW5uZXItY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZDogIzFFNDM4NTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4ud3AtYmxvY2stY292ZXIgLndwLWJsb2NrLWNvdmVyX19pbm5lci1jb250YWluZXIgcCB7XG4gIGxpbmUtaGVpZ2h0OiAyOHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE5MHB4KSB7XG4gIC53cC1ibG9jay1jb3ZlciAud3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lciB7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcGFkZGluZzogMjBweCAzOXB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTkwcHgpIHtcbiAgLndwLWJsb2NrLWNvdmVyIC53cC1ibG9jay1jb3Zlcl9faW5uZXItY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDExMXB4O1xuICAgIHdpZHRoOiA1MCU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTMwcHg7XG4gICAgcGFkZGluZzogMCAwIDExMXB4IDExMXB4O1xuICB9XG4gIC53cC1ibG9jay1jb3ZlciAud3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lciBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTkwcHgpIHtcbiAgLndwLWJsb2NrLWNvdmVyIC53cC1ibG9jay1jb3Zlcl9faW5uZXItY29udGFpbmVyIC53cC1ibG9jay1ncm91cCB7XG4gICAgbWF4LXdpZHRoOiA0MjRweDtcbiAgfVxufVxuXG4uc3RhZmYgLmdyaWQteCB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uc3RhZmYtLW1lbWJlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luOiAwIDAgMnJlbSAwO1xufVxuXG4uc3RhZmYtLW1lbWJlciBoNCB7XG4gIG1hcmdpbjogMDtcbn1cblxuLnN0YWZmLS1tZW1iZXIgLmNhcmQge1xuICBib3JkZXI6IHZhcigtLWJvcmRlci10cmFuc3BhcmVudCk7XG59XG5cbi5zdGFmZi0tbWVtYmVyIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zdGFmZi0tbWVtYmVyIGltZyB7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zdGFmZi0tbWVtYmVyIC5jYXJkLS1iYWNrdXAge1xuICAgIGhlaWdodDogMzYuNHJlbTtcbiAgfVxufVxuLnN0YWZmLS1tZW1iZXJfX25hbWUge1xuICBjb2xvcjogIzFCNEU3NDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnN0YWZmLS1tZW1iZXJfX3RpdGxlIHtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGNvbG9yOiAjNDI0QTU1O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uc3RhZmYtLW1lbWJlcl9fZW1haWwge1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgY29sb3I6ICNBQkFFQjQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5zdGFmZi0tbWVtYmVyX19lbWFpbDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogLTVweDtcbiAgbGVmdDogNTAlO1xuICBiYWNrZ3JvdW5kOiBub25lIHJlcGVhdCBzY3JvbGwgMCAwIHRyYW5zcGFyZW50O1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAycHg7XG4gIHdpZHRoOiAwO1xuICBiYWNrZ3JvdW5kOiAjQUJBRUI0O1xuICB0cmFuc2l0aW9uOiB3aWR0aCAwLjNzIGVhc2UgMHMsIGxlZnQgMC4zcyBlYXNlIDBzO1xufVxuXG4uc3RhZmYtLW1lbWJlcl9fZW1haWw6aG92ZXIge1xuICBjb2xvcjogI0FCQUVCNDtcbn1cblxuLnN0YWZmLS1tZW1iZXJfX2VtYWlsOmhvdmVyOjphZnRlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBsZWZ0OiAwO1xufVxuXG4ubWFya2V0aW5nLWJhbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDM1MHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDI7XG4gIG1hcmdpbjogMCAwIDEzcmVtIDA7XG59XG4ubWFya2V0aW5nLWJhbm5lciBidXR0b24sXG4ubWFya2V0aW5nLWJhbm5lciAuYnV0dG9uLFxuLm1hcmtldGluZy1iYW5uZXIgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLFxuLndwLWJsb2NrLWJ1dHRvbiAubWFya2V0aW5nLWJhbm5lciAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWFya2V0aW5nLWJhbm5lciB7XG4gICAgbWF4LXdpZHRoOiAxMTEwcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgbWFyZ2luLXRvcDogNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxM3JlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1hcmtldGluZy1iYW5uZXIge1xuICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMTByZW07XG4gIH1cbiAgLm1hcmtldGluZy1iYW5uZXI6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDE1cHg7XG4gICAgbGVmdDogMTVweDtcbiAgICByaWdodDogLTE1cHg7XG4gICAgYm90dG9tOiAtMTVweDtcbiAgICBib3JkZXI6IHZhcigtLWJvcmRlci1ncmV5KTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgLm1hcmtldGluZy1iYW5uZXIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbn1cbi5tYXJrZXRpbmctYmFubmVyX19vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNjUsIDg3LCAxMDYsIDAuOCk7XG59XG4ubWFya2V0aW5nLWJhbm5lciAuYmFubmVyLWltZyBpbWcge1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tYXJrZXRpbmctYmFubmVyIC5iYW5uZXItaW1nIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMTEwcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cbi5tYXJrZXRpbmctYmFubmVyLWNvbnRlbnQge1xuICBtYXJnaW46IDAgNnJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDZyZW07XG4gIHotaW5kZXg6IDEwMDtcbn1cbi5tYXJrZXRpbmctYmFubmVyLWNvbnRlbnQgaDMsIC5tYXJrZXRpbmctYmFubmVyLWNvbnRlbnQgaDQge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgbWFyZ2luOiAwIDAgMCAwO1xufVxuLm1hcmtldGluZy1iYW5uZXItY29udGVudCBoMyB7XG4gIGZvbnQtc2l6ZTogM3JlbTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1hcmtldGluZy1iYW5uZXItY29udGVudCBoMyB7XG4gICAgZm9udC1zaXplOiAzLjRyZW07XG4gIH1cbn1cbi5tYXJrZXRpbmctYmFubmVyLWNvbnRlbnQgaDQge1xuICBmb250LXNpemU6IDJyZW07XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tYXJrZXRpbmctYmFubmVyLWNvbnRlbnQgaDQge1xuICAgIGZvbnQtc2l6ZTogMi40cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWFya2V0aW5nLWJhbm5lci1jb250ZW50IHtcbiAgICB0b3A6IDlyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc1MHB4KSB7XG4gIC5tYXJrZXRpbmctYmFubmVyLWNvbnRlbnQge1xuICAgIHRvcDogMnJlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTUwcHgpIHtcbiAgLm1hcmtldGluZy1iYW5uZXItY29udGVudCB7XG4gICAgdG9wOiA0cmVtO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MzlweCkge1xuICAubWFya2V0aW5nLWJhbm5lci1jb250ZW50IHtcbiAgICBtYXJnaW46IDAgMnJlbTtcbiAgfVxufVxuLm1hcmtldGluZy1iYW5uZXItY29udGVudCBidXR0b24ge1xuICB3aWR0aDogMDtcbn1cbi5tYXJrZXRpbmctYmFubmVyLWNvbnRlbnQgLmJ1dHRvbi0tb3JhbmdlIHtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4ubWFya2V0aW5nLWJhbm5lci1jb250ZW50IHAge1xuICBmb250LXNpemU6IDEuOHJlbTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU0MHB4KSB7XG4gIC5tYXJrZXRpbmctYmFubmVyLWNvbnRlbnQgcCB7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1hcmtldGluZy1iYW5uZXItY29udGVudCBwIHtcbiAgICBtYXJnaW46IDJyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1MHB4KSB7XG4gIC5tYXJrZXRpbmctYmFubmVyLWNvbnRlbnQgcCB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1hcmtldGluZy1iYW5uZXItY29udGVudCBwIHtcbiAgICBtYXJnaW46IDRyZW0gMTZyZW07XG4gIH1cbn1cbi5tYXJrZXRpbmctYmFubmVyLWNvbnRlbnQgLmNvbnRlbnQtLWxpbmtzIHtcbiAgbWFyZ2luOiAycmVtIGF1dG87XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLm1hcmtldGluZy1iYW5uZXItY29udGVudCAuY29udGVudC0tbGlua3MgLmJ1dHRvbi0tb3JhbmdlIHtcbiAgd2lkdGg6IDEzcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1hcmtldGluZy1iYW5uZXItY29udGVudCAuY29udGVudC0tbGlua3Mge1xuICAgIHdpZHRoOiA3MCU7XG4gIH1cbn1cbi5tYXJrZXRpbmctYmFubmVyLWNvbnRlbnQgLm1hcmtldGluZy1iYW5uZXItbGluayB7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xuICBjb2xvcjogI2I0MTIxMjtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLm1hcmtldGluZy1iYW5uZXItY29udGVudCAubWFya2V0aW5nLWJhbm5lci1saW5rOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAtNXB4O1xuICBsZWZ0OiA1MCU7XG4gIGJhY2tncm91bmQ6IG5vbmUgcmVwZWF0IHNjcm9sbCAwIDAgdHJhbnNwYXJlbnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDJweDtcbiAgd2lkdGg6IDA7XG4gIGJhY2tncm91bmQ6ICNiNDEyMTI7XG4gIHRyYW5zaXRpb246IHdpZHRoIDAuM3MgZWFzZSAwcywgbGVmdCAwLjNzIGVhc2UgMHM7XG59XG4ubWFya2V0aW5nLWJhbm5lci1jb250ZW50IC5tYXJrZXRpbmctYmFubmVyLWxpbms6aG92ZXI6OmFmdGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGxlZnQ6IDA7XG59XG5cbi5saW5rZWRpbi1mZWVkIGgzIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tdG9wOiAzcmVtO1xufVxuXG4ua2l0Y2hlbi1zaW5rLWhlYWRlciB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogY2FsYygxMDAlIC0gNHJlbSk7XG4gIG1hcmdpbi1sZWZ0OiAycmVtO1xuICBtYXJnaW4tcmlnaHQ6IDJyZW07XG59XG5cbi5raXRjaGVuLXNpbmstY29tcG9uZW50cyB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogY2FsYygxMDAlIC0gNHJlbSk7XG4gIG1hcmdpbi1sZWZ0OiAycmVtO1xuICBtYXJnaW4tcmlnaHQ6IDJyZW07XG59XG4ua2l0Y2hlbi1zaW5rLWNvbXBvbmVudHMgaHIge1xuICBtYXJnaW46IDNyZW0gMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5raXRjaGVuLXNpbmstY29tcG9uZW50cyB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGNhbGMoNzUlIC0gMnJlbSk7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICB9XG59XG5cbi5raXRjaGVuLXNpbmstbmF2IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5raXRjaGVuLXNpbmstbmF2IHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogY2FsYygyNSUgLSAycmVtKTtcbiAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG4gIC5raXRjaGVuLXNpbmstbmF2IC5kb2NzLXN1Yi1tZW51IHtcbiAgICBmb250LXNpemU6IDAuODVyZW07XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgfVxuICAua2l0Y2hlbi1zaW5rLW5hdiAuZG9jcy1tZW51LXRpdGxlIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBjb2xvcjogI0FCQUVCNDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNFMkU0RTc7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtO1xuICB9XG4gIC5raXRjaGVuLXNpbmstbmF2IC5kb2NzLXRvYyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1sZWZ0OiA0cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gIH1cbiAgLmtpdGNoZW4tc2luay1uYXYgLmRvY3MtdG9jIC5hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6ICMyMTk5ZTg7XG4gICAgY29sb3I6IHdoaXRlO1xuICB9XG4gIC5raXRjaGVuLXNpbmstbmF2IC5kb2NzLXRvYyAuZG9jcy1zdWItbWVudTpmaXJzdC1jaGlsZCAuZG9jcy1tZW51LXRpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cbn1cblxuLmtpdGNoZW4tc2luay1ncmlkIC5ncmlkLXgge1xuICBiYWNrZ3JvdW5kOiAjZDZlY2ZhO1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAycmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG4ua2l0Y2hlbi1zaW5rLWdyaWQgLmdyaWQteCAuY2VsbCwgLmtpdGNoZW4tc2luay1ncmlkIC5ncmlkLXggOm50aC1jaGlsZChvZGQpIHtcbiAgYmFja2dyb3VuZDogIzdiYzFlZjtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4ua2l0Y2hlbi1zaW5rLWdyaWQgLmdyaWQteCAuY2VsbDpudGgtY2hpbGQoZXZlbikge1xuICBiYWNrZ3JvdW5kOiAjMTc3OWJhO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuI3NlYXJjaC1yZXN1bHRzIC5zZWFyY2gtLWJveCB7XG4gIG1hcmdpbjogM3JlbSAwO1xuICBwYWRkaW5nOiAwIDAgMnJlbSAwO1xuICBib3JkZXItYm90dG9tOiB2YXIoLS1ib3JkZXItZ3JleSk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3NlYXJjaC1yZXN1bHRzIC5zZWFyY2gtLWJveCB7XG4gICAgcGFkZGluZzogMCAwIDNyZW0gMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3NlYXJjaC1yZXN1bHRzIC5zZWFyY2gtLWJveCB7XG4gICAgbWFyZ2luLWxlZnQ6IDE1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMTVyZW07XG4gICAgbWluLWhlaWdodDogMTVyZW07XG4gIH1cbn1cbiNzZWFyY2gtcmVzdWx0cyAuc2VhcmNoLS1ib3hfX2l0ZW0ge1xuICB3aWR0aDogMTAwJTtcbn1cbiNzZWFyY2gtcmVzdWx0cyAuc2VhcmNoLS1ib3hfX2l0ZW06bnRoLWNoaWxkKDEpIHtcbiAgb3JkZXI6IDE7XG59XG4jc2VhcmNoLXJlc3VsdHMgLnNlYXJjaC0tYm94X19pdGVtOm50aC1jaGlsZCgyKSB7XG4gIG9yZGVyOiAzO1xufVxuI3NlYXJjaC1yZXN1bHRzIC5zZWFyY2gtLWJveF9faXRlbTpudGgtY2hpbGQoMykge1xuICBvcmRlcjogMjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNzZWFyY2gtcmVzdWx0cyAuc2VhcmNoLS1ib3hfX2l0ZW06bnRoLWNoaWxkKDEpIHtcbiAgICB3aWR0aDogMjAlO1xuICB9XG4gICNzZWFyY2gtcmVzdWx0cyAuc2VhcmNoLS1ib3hfX2l0ZW06bnRoLWNoaWxkKDIpIHtcbiAgICB3aWR0aDogODAlO1xuICAgIG9yZGVyOiAyO1xuICB9XG4gICNzZWFyY2gtcmVzdWx0cyAuc2VhcmNoLS1ib3hfX2l0ZW06bnRoLWNoaWxkKDMpIHtcbiAgICBvcmRlcjogMztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbn1cbiNzZWFyY2gtcmVzdWx0cyAuc2VhcmNoLS1ib3hfX2l0ZW0gLnNlYXJjaC0taW1nIHtcbiAgbWFyZ2luOiAxcmVtIDA7XG4gIGhlaWdodDogMjEuNXJlbTtcbiAgd2lkdGg6IDI5LjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjc2VhcmNoLXJlc3VsdHMgLnNlYXJjaC0tYm94X19pdGVtIC5zZWFyY2gtLWltZyB7XG4gICAgaGVpZ2h0OiAxMS4ycmVtO1xuICAgIHdpZHRoOiAxNi45cmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiA2N3JlbTtcbiAgICB0b3A6IC0xMS41cmVtO1xuICB9XG59XG4jc2VhcmNoLXJlc3VsdHMgLnNlYXJjaC0tYm94X19pdGVtIC5kYXRlIHtcbiAgY29sb3I6ICNiNDEyMTI7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNzZWFyY2gtcmVzdWx0cyAuc2VhcmNoLS1ib3hfX2l0ZW0gaDQge1xuICAgIHdpZHRoOiA0NXJlbTtcbiAgfVxufVxuI3NlYXJjaC1yZXN1bHRzIC5zZWFyY2gtLWJveF9faXRlbSAudGl0bGUge1xuICBjb2xvcjogIzI0MjQyNDtcbn1cbiNzZWFyY2gtcmVzdWx0cyAuc2VhcmNoLS1ib3hfX2l0ZW0gLmF1dGhvciB7XG4gIGNvbG9yOiAjQUJBRUI0O1xuICBmb250LXNpemU6IDEuOHJlbTtcbn1cbiNzZWFyY2gtcmVzdWx0cyAucGFnaW5hdGlvbiAuY3VycmVudCB7XG4gIGJhY2tncm91bmQ6ICNiNDEyMTI7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAycmVtO1xufVxuI3NlYXJjaC1yZXN1bHRzIC5wYWdpbmF0aW9uIC5jdXJyZW50OjpiZWZvcmUge1xuICBjb250ZW50OiBub25lO1xufVxuI3NlYXJjaC1yZXN1bHRzIC5wYWdpbmF0aW9uIC5lbGxpcHNpczo6YmVmb3JlIHtcbiAgY29udGVudDogbm9uZTtcbn1cbiNzZWFyY2gtcmVzdWx0cyAucGFnaW5hdGlvbiBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxMjtcbn1cbiNzZWFyY2gtcmVzdWx0cyAucGFnaW5hdGlvbiBsaSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgbWFyZ2luLXJpZ2h0OiAxLjVyZW07XG59XG4jc2VhcmNoLXJlc3VsdHMgLnBhZ2luYXRpb24gbGk6OmJlZm9yZSB7XG4gIGJvcmRlcjogMnB4IHNvbGlkICMyNDI0MjQ7XG4gIHdpZHRoOiAzLjVyZW07XG4gIGhlaWdodDogMy41cmVtO1xuICBsZWZ0OiAtMnB4O1xuICB0b3A6IDNweDtcbn1cbiNzZWFyY2gtcmVzdWx0cyAucGFnaW5hdGlvbiBsaTpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbiNzZWFyY2gtcmVzdWx0cyAucGFnaW5hdGlvbiBsaTpob3ZlciBhIHtcbiAgY29sb3I6ICNiNDEyMTI7XG59XG4jc2VhcmNoLXJlc3VsdHMgLnBhZ2luYXRpb24gbGk6aG92ZXI6OmJlZm9yZSB7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNiNDEyMTI7XG59XG4jc2VhcmNoLXJlc3VsdHMgLnBhZ2luYXRpb24gbGkgYSB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xufVxuI3NlYXJjaC1yZXN1bHRzIC5wYWdpbmF0aW9uIC5wYWdpbmF0aW9uLW5leHQgYTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIuKGl++4jlwiO1xuICBtYXJnaW46IDByZW0gMHJlbSAwIC0xcmVtO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG4jc2VhcmNoLXJlc3VsdHMgLnBhZ2luYXRpb24gLnBhZ2luYXRpb24tcHJldmlvdXMgYTo6YmVmb3JlIHtcbiAgY29udGVudDogXCLihpfvuI5cIjtcbiAgbWFyZ2luOiAwcmVtIDByZW0gMCAtMC41cmVtO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgyMjVkZWcpO1xufVxuXG4uc2VhcmNoLS1iYW5uZXIge1xuICBwYWRkaW5nOiAyMnJlbSAwO1xufVxuLnNlYXJjaC0tYmFubmVyX19yZXN1bHRzIHtcbiAgbWFyZ2luOiAtOXJlbSAwIDAgMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zZWFyY2gtLWJhbm5lcl9fcmVzdWx0cyB7XG4gICAgbWFyZ2luOiAtNnJlbSAwIDAgMDtcbiAgfVxufVxuLnNlYXJjaC0tYmFubmVyX19yZXN1bHRzIC5zZWFyY2gtZm9ybSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5zZWFyY2gtLWJhbm5lcl9fcmVzdWx0cyAuc2VhcmNoLWZvcm0gaW5wdXRbdHlwZT10ZXh0XSB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogMS41cHggc29saWQgI0ZGRkZGRjtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgd2lkdGg6IDcwJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5zZWFyY2gtLWJhbm5lcl9fcmVzdWx0cyAuc2VhcmNoLWZvcm0gaW5wdXRbdHlwZT10ZXh0XTo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zZWFyY2gtLWJhbm5lcl9fcmVzdWx0cyAuc2VhcmNoLWZvcm0gaW5wdXRbdHlwZT10ZXh0XSB7XG4gICAgd2lkdGg6IDQwJTtcbiAgICBtYXJnaW46IDAgMCAxcmVtIDE5cmVtO1xuICB9XG59XG4uc2VhcmNoLS1iYW5uZXJfX3Jlc3VsdHMgLnNlYXJjaC1mb3JtIGlucHV0W3R5cGU9dGV4dF06Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5zZWFyY2gtLWJhbm5lcl9fcmVzdWx0cyAuc2VhcmNoLWZvcm0gaW5wdXRbdHlwZT1zdWJtaXRdIHtcbiAgb3BhY2l0eTogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogODAlO1xuICB0b3A6IDQuNXJlbTtcbiAgei1pbmRleDogMTA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2VhcmNoLS1iYW5uZXJfX3Jlc3VsdHMgLnNlYXJjaC1mb3JtIGlucHV0W3R5cGU9c3VibWl0XSB7XG4gICAgbGVmdDogNTMuNSU7XG4gIH1cbn1cbi5zZWFyY2gtLWJhbm5lcl9fcmVzdWx0cyAucmVzdWx0cy1zaG93IHtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zZWFyY2gtLWJhbm5lcl9fcmVzdWx0cyAucmVzdWx0cy1zaG93IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIG1hcmdpbjogMCAwIDFyZW0gMTJyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zZWFyY2gtLWJhbm5lcl9fcmVzdWx0cyAucmVzdWx0cy1zaG93IHtcbiAgICBtYXJnaW46IDAgMCAxcmVtIDE5cmVtO1xuICB9XG59XG4uc2VhcmNoLS1iYW5uZXJfX3Jlc3VsdHMgLm1hZ25pZnlpbmctZ2xhc3NfX2NvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogODAlO1xuICB0b3A6IDQuNXJlbTtcbiAgei1pbmRleDogMTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zZWFyY2gtLWJhbm5lcl9fcmVzdWx0cyAubWFnbmlmeWluZy1nbGFzc19fY29udGFpbmVyIHtcbiAgICBsZWZ0OiA1My41JTtcbiAgfVxufVxuLnNlYXJjaC0tYmFubmVyX19yZXN1bHRzIC5tYWduaWZ5aW5nLWdsYXNzIHtcbiAgZm9udC1zaXplOiAyLjVlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMC40ZW07XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDAuNGVtO1xuICBib3JkZXI6IDAuMWVtIHNvbGlkICNGRkZGRkY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyLXJhZGl1czogMC4zNWVtO1xufVxuLnNlYXJjaC0tYmFubmVyX19yZXN1bHRzIC5tYWduaWZ5aW5nLWdsYXNzOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IC0wLjI1ZW07XG4gIGJvdHRvbTogLTAuMWVtO1xuICBib3JkZXItd2lkdGg6IDA7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIHdpZHRoOiAwLjM1ZW07XG4gIGhlaWdodDogMC4wOGVtO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG5cbiNzZWFyY2gtcmVzdWx0cyAucGFnaW5hdGlvbiBsaS5wYWdpbmF0aW9uLW5leHQgYSxcbiNzZWFyY2gtcmVzdWx0cyAucGFnaW5hdGlvbiBsaS5wYWdpbmF0aW9uLXByZXZpb3VzIGEge1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcbn1cblxuI3NlYXJjaC1yZXN1bHRzIC5wYWdpbmF0aW9uIGxpLnBhZ2luYXRpb24tcHJldmlvdXMgYTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuL2ltYWdlcy9hcnJvd3MvYXJyb3ctLWJsYWNrLnN2Z1wiKSBjZW50ZXIgbm8tcmVwZWF0O1xuICB0cmFuc2Zvcm06IG5vbmU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGhlaWdodDogMjVweDtcbiAgd2lkdGg6IDI1cHg7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG5cbiNzZWFyY2gtcmVzdWx0cyAucGFnaW5hdGlvbiBsaS5wYWdpbmF0aW9uLW5leHQgYTphZnRlciB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4vaW1hZ2VzL2Fycm93cy9hcnJvdy0tYmxhY2suc3ZnXCIpIGNlbnRlciBuby1yZXBlYXQ7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgY29udGVudDogXCJcIjtcbiAgaGVpZ2h0OiAyNXB4O1xuICB3aWR0aDogMjVweDtcbn1cblxuLnBhZ2luYXRpb24gLmVsbGlwc2lzOmFmdGVyIHtcbiAgaGVpZ2h0OiA0MHB4O1xuICB3aWR0aDogNDBweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlcjogMnB4IHNvbGlkICMwMDA7XG59XG5cbi5wYWdlLW5vdC1mb3VuZCB7XG4gIG1hcmdpbjogNXJlbSAwO1xufVxuLnBhZ2Utbm90LWZvdW5kX190ZXh0IHtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAzMXJlbSAwIDAgMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wYWdlLW5vdC1mb3VuZF9fdGV4dCB7XG4gICAgZm9udC1zaXplOiAyLjRyZW07XG4gIH1cbn1cbi5wYWdlLW5vdC1mb3VuZF9faW1hZ2Uge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuL2ltYWdlcy9iYWNrZ3JvdW5kcy80MDQuanBnXCIpO1xuICBoZWlnaHQ6IDUwMHB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGFnZS1ub3QtZm91bmRfX2ltYWdlIHtcbiAgICBtYXJnaW46IDAgNnJlbTtcbiAgfVxufVxuLnBhZ2Utbm90LWZvdW5kX19pbWFnZSBidXR0b24ge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogM3JlbSBhdXRvO1xufVxuLnBhZ2Utbm90LWZvdW5kX19pbWFnZSBidXR0b246aG92ZXIge1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuLnBhZ2UtY29udGVudC0tbm9uZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBhZ2UtY29udGVudC0tbm9uZSB7XG4gICAgaGVpZ2h0OiAzMHZoO1xuICB9XG59XG5cbi5hcnQtY29udGFpbmVyIHtcbiAgcGFkZGluZy10b3A6IDJyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYXJ0LWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1yaWdodDogMnJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gICAgbWF4LXdpZHRoOiAxMjByZW07XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFydC1jb250YWluZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYXJ0LWNvbnRhaW5lciAuYXJ0LWdyaWQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFydC1jb250YWluZXIgLmFydC1ncmlkIC5hcnQtY29udGVudCB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDJyZW0pO1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgfVxufVxuXG4jYXJ0X19jb21wZXRpdGlvbi0tbWFzb25yeSB7XG4gIGNvbHVtbi1jb3VudDogMjtcbiAgY29sdW1uLWdhcDogMDtcbiAgbWFyZ2luOiAwIDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjYXJ0X19jb21wZXRpdGlvbi0tbWFzb25yeSB7XG4gICAgY29sdW1uLWNvdW50OiAzO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjYXJ0X19jb21wZXRpdGlvbi0tbWFzb25yeSB7XG4gICAgY29sdW1uLWNvdW50OiA0O1xuICAgIGNvbHVtbi1nYXA6IDFyZW07XG4gIH1cbn1cbiNhcnRfX2NvbXBldGl0aW9uLS1tYXNvbnJ5IC5hcnRfX2NvbXBldGl0aW9uLS1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogNTAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI2FydF9fY29tcGV0aXRpb24tLW1hc29ucnkgLmFydF9fY29tcGV0aXRpb24tLWl0ZW0ge1xuICAgIHdpZHRoOiAzMy4zMyU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNhcnRfX2NvbXBldGl0aW9uLS1tYXNvbnJ5IC5hcnRfX2NvbXBldGl0aW9uLS1pdGVtIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG59XG4jYXJ0X19jb21wZXRpdGlvbi0tbWFzb25yeSAuYXJ0X19jb21wZXRpdGlvbi0taXRlbTpob3ZlciAuaXRlbS0tY29udGVudCB7XG4gIG9wYWNpdHk6IDE7XG59XG4jYXJ0X19jb21wZXRpdGlvbi0tbWFzb25yeSAuYXJ0X19jb21wZXRpdGlvbi0taXRlbTpob3ZlciAuYXJ0X19jb21wZXRpdGlvbi0tY29udGFpbmVyIGltZyB7XG4gIGJvcmRlcjogNXB4IHNvbGlkICNiNDEyMTI7XG59XG4jYXJ0X19jb21wZXRpdGlvbi0tbWFzb25yeSAuYXJ0X19jb21wZXRpdGlvbi0taXRlbTpmb2N1cywgI2FydF9fY29tcGV0aXRpb24tLW1hc29ucnkgLmFydF9fY29tcGV0aXRpb24tLWl0ZW06YWN0aXZlIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cbiNhcnRfX2NvbXBldGl0aW9uLS1tYXNvbnJ5IC5hcnRfX2NvbXBldGl0aW9uLS1pdGVtIC5hcnRfX2NvbXBldGl0aW9uLS1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbiNhcnRfX2NvbXBldGl0aW9uLS1tYXNvbnJ5IC5hcnRfX2NvbXBldGl0aW9uLS1pdGVtIC5hcnRfX2NvbXBldGl0aW9uLS1jb250YWluZXIgaW1nIHtcbiAgYm9yZGVyOiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIHRyYW5zaXRpb246IGJvcmRlciAwLjNzIGVhc2U7XG59XG4jYXJ0X19jb21wZXRpdGlvbi0tbWFzb25yeSAuYXJ0X19jb21wZXRpdGlvbi0taXRlbSAuaXRlbS0tY29udGVudCB7XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogI2I0MTIxMjtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlO1xufVxuI2FydF9fY29tcGV0aXRpb24tLW1hc29ucnkgLmFydF9fY29tcGV0aXRpb24tLWl0ZW0gLml0ZW0tLWNvbnRlbnQgcCB7XG4gIG1hcmdpbjogLTAuNXJlbSAwIDAgMXJlbTtcbn1cbiNhcnRfX2NvbXBldGl0aW9uLS1tYXNvbnJ5IC5hcnRfX2NvbXBldGl0aW9uLS1pdGVtIC5pdGVtLS1jb250ZW50X190aGluIHtcbiAgZm9udC1zaXplOiAxLjhyZW07XG59XG4jYXJ0X19jb21wZXRpdGlvbi0tbWFzb25yeSAuYXJ0X19jb21wZXRpdGlvbi0taXRlbSAuaXRlbS0tY29udGVudF9fdGhpY2sge1xuICBmb250LXNpemU6IDEuNnJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4jYXJ0X19jb21wZXRpdGlvbi0tbWFzb25yeSAuYXJ0X19jb21wZXRpdGlvbi0taXRlbSAuaXRlbS0tY29udGVudF9fdGhlbiB7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xufVxuXG4uYXJ0X19tb2RhbC0tcmV2ZWFsIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5hcnRfX21vZGFsLS1yZXZlYWw6dGFyZ2V0IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMHZoO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogIzI0MjQyNDtcbiAgei1pbmRleDogMTQwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFydF9fbW9kYWwtLXJldmVhbDp0YXJnZXQge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMzYsIDM2LCAzNiwgMC44KTtcbiAgfVxufVxuXG4uYXJ0X19tb2RhbCB7XG4gIG1hcmdpbjogMTByZW0gMnJlbSAwIDJyZW07XG59XG4uYXJ0X19tb2RhbDphY3RpdmUsIC5hcnRfX21vZGFsOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hcnRfX21vZGFsIHtcbiAgICBtYXJnaW46IDEwcmVtIDIwcmVtIDAgMjByZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcnRfX21vZGFsIHtcbiAgICBtYXJnaW46IDAgNDVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcnRfX21vZGFsIGltZyB7XG4gICAgbWF4LXdpZHRoOiA0MHZ3O1xuICAgIG1heC1oZWlnaHQ6IDgwdmg7XG4gIH1cbn1cbi5hcnRfX21vZGFsIHAge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgbWFyZ2luOiAtMC41cmVtIDAgMCAwO1xufVxuLmFydF9fbW9kYWwgLm1vZGFsLS1jb250ZW50LS10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMi40cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi5hcnRfX21vZGFsIC5hcnRfX21vZGFsLS1jb250ZW50IC5tb2RhbC0tY29udGVudC0tdGhpbiB7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xufVxuLmFydF9fbW9kYWwgLmFydF9fbW9kYWwtLWNvbnRlbnQgLm1vZGFsLS1jb250ZW50LS10aGljayB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xufVxuLmFydF9fbW9kYWwgLmFydF9fbW9kYWwtLWNvbnRlbnQgLm1vZGFsLS1jb250ZW50LS10aGVuIHtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGNvbG9yOiAjYjQxMjEyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFydF9fbW9kYWwgLmFydF9fbW9kYWwtLWNvbnRlbnQgLm1vZGFsLS1jb250ZW50LS10aGVuIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFydF9fbW9kYWwgLmFydF9fbW9kYWwtLWNvbnRlbnQgLmNvbnRlbnQtLWNvbnRhaW5lci0tbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcnRfX21vZGFsIC5hcnRfX21vZGFsLS1jb250ZW50IC5jb250ZW50LS1jb250YWluZXItLXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cbi5hcnRfX21vZGFsIC5jbG9zZS0tbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuLmFydF9fbW9kYWwgLmNsb3NlLWJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogNHJlbTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IC00cmVtO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucmV2ZWFsLW92ZXJsYXkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzYsIDM2LCAzNiwgMC43KTtcbiAgfVxufVxuXG4uYWxtLWJ0bi13cmFwOjphZnRlciB7XG4gIGNvbnRlbnQ6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuYnV0dG9uLmxvYWRlci0td2hlZWw6OmJlZm9yZSwgYnV0dG9uLmxvYWRlci0td2hlZWw6OmFmdGVyIHtcbiAgY29udGVudDogbm9uZTtcbn1cblxuLmxvYWRlci0td2hlZWwge1xuICBjb2xvcjogIzFCNEU3NDtcbiAgZm9udC1zaXplOiA1cmVtO1xuICB0ZXh0LWluZGVudDogLTk5OTllbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDFlbTtcbiAgaGVpZ2h0OiAxZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgbWFyZ2luOiA3MnB4IGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICBhbmltYXRpb246IGxvYWQ2IDEuN3MgaW5maW5pdGUgZWFzZSwgcm91bmQgMS43cyBpbmZpbml0ZSBlYXNlO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmFydF9fY29tcGV0aXRpb24tLWNvbnRyb2xzIHAge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xufVxuLmFydF9fY29tcGV0aXRpb24tLWNvbnRyb2xzIC5hcnRfX2NvbXBldGl0aW9uLS1zZWxlY3Qge1xuICB3aWR0aDogNTAlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG8gMnJlbTtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDEwO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5hcnRfX2NvbXBldGl0aW9uLS1jb250cm9scyAuYXJ0X19jb21wZXRpdGlvbi0tc2VsZWN0IG9wdGlvbiB7XG4gIGNvbG9yOiAjMDYzNDcxO1xufVxuLmFydF9fY29tcGV0aXRpb24tLWNvbnRyb2xzIC51aS1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5hcnRfX2NvbXBldGl0aW9uLS1jb250cm9scyAudWktZ3JvdXA6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4vaW1hZ2VzL2JhY2tncm91bmRzL2RvdWJsZV9jaGV2cm9ucy5zdmdcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGhlaWdodDogNXJlbTtcbiAgd2lkdGg6IDVyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNjklO1xuICB0b3A6IDEuNXJlbTtcbiAgei1pbmRleDogMDtcbn1cblxuLnBhZ2UtdGVtcGxhdGUtc3Vydml2aW5nLWluc2lkZS1jb25ncmVzcyB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2Rpc3QvaW1hZ2VzL2JhY2tncm91bmRzL2JhY2tncm91bmQtc3Vydml2aW5nLnBuZ1wiKSB0b3Agbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgODA1cHg7XG59XG4ucGFnZS10ZW1wbGF0ZS1zdXJ2aXZpbmctaW5zaWRlLWNvbmdyZXNzIC5tYWluLWNvbnRlbnQgdWwge1xuICBsaXN0LXN0eWxlOiBub25lICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4ucGFnZS10ZW1wbGF0ZS1zdXJ2aXZpbmctaW5zaWRlLWNvbmdyZXNzIC5tYWluLWNvbnRlbnQgdWwgbGkge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9kaXN0L2ltYWdlcy9jYXBfZG9tZS5zdmdcIikgbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDE1cHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgMXB4O1xuICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG59XG4ucGFnZS10ZW1wbGF0ZS1zdXJ2aXZpbmctaW5zaWRlLWNvbmdyZXNzIC5mb290ZXIge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgLnBhZ2UtdGVtcGxhdGUtc3Vydml2aW5nLWluc2lkZS1jb25ncmVzcyB7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDYwMHB4O1xuICB9XG59XG4ucGFnZS10ZW1wbGF0ZS1zdXJ2aXZpbmctaW5zaWRlLWNvbmdyZXNzIC5uYXZpZ2F0aW9uLW1vYmlsZSB7XG4gIGJhY2tncm91bmQ6ICNhNTJlMjk7XG59XG4ucGFnZS10ZW1wbGF0ZS1zdXJ2aXZpbmctaW5zaWRlLWNvbmdyZXNzIC5uYXZpZ2F0aW9uLW1vYmlsZSBpbWcge1xuICBmaWx0ZXI6IGJyaWdodG5lc3MoMCkgaW52ZXJ0KDEpO1xufVxuLnBhZ2UtdGVtcGxhdGUtc3Vydml2aW5nLWluc2lkZS1jb25ncmVzcyAubmF2aWdhdGlvbi1tb2JpbGUgLm5hdmlnYXRpb24tbW9iaWxlX19oYW1idXJnZXIgLm5hdmlnYXRpb25fX2ljb24sXG4ucGFnZS10ZW1wbGF0ZS1zdXJ2aXZpbmctaW5zaWRlLWNvbmdyZXNzIC5uYXZpZ2F0aW9uLW1vYmlsZSAubmF2aWdhdGlvbi1tb2JpbGVfX2hhbWJ1cmdlciAubmF2aWdhdGlvbl9faWNvbjo6YmVmb3JlLFxuLnBhZ2UtdGVtcGxhdGUtc3Vydml2aW5nLWluc2lkZS1jb25ncmVzcyAubmF2aWdhdGlvbi1tb2JpbGUgLm5hdmlnYXRpb24tbW9iaWxlX19oYW1idXJnZXIgLm5hdmlnYXRpb25fX2ljb246OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbn1cbi5wYWdlLXRlbXBsYXRlLXN1cnZpdmluZy1pbnNpZGUtY29uZ3Jlc3MgLm5hdmlnYXRpb24ge1xuICBiYWNrZ3JvdW5kOiAjYTUyZTI5O1xufVxuLnBhZ2UtdGVtcGxhdGUtc3Vydml2aW5nLWluc2lkZS1jb25ncmVzcyAubmF2aWdhdGlvbiAubmF2aWdhdGlvbi1kZXNrdG9wIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG4ucGFnZS10ZW1wbGF0ZS1zdXJ2aXZpbmctaW5zaWRlLWNvbmdyZXNzIC5uYXZpZ2F0aW9uIC5uYXZpZ2F0aW9uLWRlc2t0b3BfX2xpc3Qge1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuLnBhZ2UtdGVtcGxhdGUtc3Vydml2aW5nLWluc2lkZS1jb25ncmVzcyAubmF2aWdhdGlvbiAubmF2aWdhdGlvbl9faXRlbS1pbWcge1xuICBmaWx0ZXI6IGJyaWdodG5lc3MoMCkgaW52ZXJ0KDEpO1xufVxuLnBhZ2UtdGVtcGxhdGUtc3Vydml2aW5nLWluc2lkZS1jb25ncmVzcyAubmF2aWdhdGlvbi0tc2VhcmNoIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cbi5wYWdlLXRlbXBsYXRlLXN1cnZpdmluZy1pbnNpZGUtY29uZ3Jlc3MgLm5hdmlnYXRpb24tbWVudSAubmF2aWdhdGlvbl9faXRlbSAudGl0bGUge1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5wYWdlLXRlbXBsYXRlLXN1cnZpdmluZy1pbnNpZGUtY29uZ3Jlc3MgLm5hdmlnYXRpb24tbWVudSBpbWcge1xuICBmaWx0ZXI6IGJyaWdodG5lc3MoMCkgaW52ZXJ0KDEpO1xufVxuLnBhZ2UtdGVtcGxhdGUtc3Vydml2aW5nLWluc2lkZS1jb25ncmVzcyAubmF2aWdhdGlvbi1tZW51IC5uYXZpZ2F0aW9uX19pdGVtOmhvdmVyIHtcbiAgcGFkZGluZzogMDtcbn1cbi5wYWdlLXRlbXBsYXRlLXN1cnZpdmluZy1pbnNpZGUtY29uZ3Jlc3MgLm5hdmlnYXRpb24gLm5hdmlnYXRpb24tZGVza3RvcF9fbGlzdCAubmF2aWdhdGlvbl9fbGluayB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnBhZ2UtdGVtcGxhdGUtc3Vydml2aW5nLWluc2lkZS1jb25ncmVzcyAubmF2aWdhdGlvbi0tc2VhcmNoX19mb3JtIC5tYWduaWZ5aW5nLWdsYXNzLWNvbnRhaW5lciAubWFnbmlmeWluZy1nbGFzczo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbn1cbi5wYWdlLXRlbXBsYXRlLXN1cnZpdmluZy1pbnNpZGUtY29uZ3Jlc3MgLm5hdmlnYXRpb24tLXNlYXJjaF9fZm9ybSAubWFnbmlmeWluZy1nbGFzcy1jb250YWluZXIgLm1hZ25pZnlpbmctZ2xhc3Mge1xuICBib3JkZXItY29sb3I6ICNGRkZGRkY7XG59XG4ucGFnZS10ZW1wbGF0ZS1zdXJ2aXZpbmctaW5zaWRlLWNvbmdyZXNzIC5tYWluLWdyaWQgLm1haW4tY29udGVudCB1bCxcbi5wYWdlLXRlbXBsYXRlLXN1cnZpdmluZy1pbnNpZGUtY29uZ3Jlc3MgLm1haW4tZ3JpZCAubWFpbi1jb250ZW50IG9sIC5tYWluLWdyaWQgLm1haW4tY29udGVudCBwIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi5wYWdlLXRlbXBsYXRlLXN1cnZpdmluZy1pbnNpZGUtY29uZ3Jlc3MgLm1haW4tZ3JpZCAubWFpbi1jb250ZW50IC5lbnRyeS1jb250ZW50IC5wZi1jb250ZW50ID4gOm5vdChhcnRpY2xlKTpub3QoYmxvY2txdW90ZSk6bm90KGZpZ3VyZSk6bm90KHVsKTpub3QoLndwLWJsb2NrLWltYWdlKTpub3QoLndwLWJsb2NrLXF1ZXJ5KSB7XG4gIG1heC13aWR0aDogMTA4NXB4O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG4ucGFnZS10ZW1wbGF0ZS1zdXJ2aXZpbmctaW5zaWRlLWNvbmdyZXNzIC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBwYWRkaW5nOiAwO1xuICBoZWlnaHQ6IGF1dG87XG4gIHBhZGRpbmc6IDEwcHg7XG59XG4ucGFnZS10ZW1wbGF0ZS1zdXJ2aXZpbmctaW5zaWRlLWNvbmdyZXNzIC53cC1ibG9jay1idXR0b25fX2xpbms6YmVmb3JlLCAucGFnZS10ZW1wbGF0ZS1zdXJ2aXZpbmctaW5zaWRlLWNvbmdyZXNzIC53cC1ibG9jay1idXR0b25fX2xpbms6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnBhZ2UtdGVtcGxhdGUtc3Vydml2aW5nLWluc2lkZS1jb25ncmVzcyAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgb3BhY2l0eTogMC41O1xufVxuLnBhZ2UtdGVtcGxhdGUtc3Vydml2aW5nLWluc2lkZS1jb25ncmVzcyAud3AtYmxvY2stbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IGRpc2M7XG59XG4ucGFnZS10ZW1wbGF0ZS1zdXJ2aXZpbmctaW5zaWRlLWNvbmdyZXNzIC53cC1ibG9jay1saXN0IGxpIHtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBsaW5lLWhlaWdodDogMjhweDtcbiAgbWFyZ2luLWJvdHRvbTogMzdweDtcbn1cbi5wYWdlLXRlbXBsYXRlLXN1cnZpdmluZy1pbnNpZGUtY29uZ3Jlc3MgLndwLWJsb2NrLWxpc3QgbGk6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm0tc3Vydml2aW5nX19pbnRybyB7XG4gIG1heC13aWR0aDogMTA4MHB4O1xuICB3aWR0aDogMTAwJTtcbiAgZ2FwOiAxMDBweDtcbiAgbWFyZ2luOiAxODVweCBhdXRvIGF1dG8gIWltcG9ydGFudDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNzBweCkge1xuICAubS1zdXJ2aXZpbmdfX2ludHJvIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGJhY2tncm91bmQ6ICNhNTJlMjk7XG4gICAgbWFyZ2luOiAxODVweCAwIDcwcHggY2FsYyg1MCUgLSA1MHZ3KSAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxMDB2dyAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDUwcHg7XG4gICAgZ2FwOiA1MHB4O1xuICB9XG59XG4ubS1zdXJ2aXZpbmdfX2ludHJvIGEge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNGRkZGRkY7XG59XG4ubS1zdXJ2aXZpbmdfX2ludHJvIHAuaGFzLXRleHQtYWxpZ24tY2VudGVyIHtcbiAgbWF4LXdpZHRoOiAzNjZweDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG4ubS1zdXJ2aXZpbmdfX2ludHJvIGZpZ3VyZSB7XG4gIG1hcmdpbjogLTUwcHg7XG59XG4ubS1zdXJ2aXZpbmdfX2ludHJvIC53cC1ibG9jay1idXR0b25zIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4ubS1zdXJ2aXZpbmdfX2ludHJvIC53cC1ibG9jay1idXR0b25zIHAge1xuICBmb250LXNpemU6IDE4cHg7XG59XG4ubS1zdXJ2aXZpbmdfX2ludHJvIC53cC1ibG9jay1idXR0b25zID4gLndwLWJsb2NrLWJ1dHRvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLm0tc3Vydml2aW5nX19pbnRybyBoMSB7XG4gIGxpbmUtaGVpZ2h0OiA0NnB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTEwNXB4KSB7XG4gIC5tLXN1cnZpdmluZ19faW50cm8gaDEge1xuICAgIGZvbnQtc2l6ZTogNDBweCAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICB9XG59XG4ubS1zdXJ2aXZpbmdfX2ludHJvIHAsXG4ubS1zdXJ2aXZpbmdfX2ludHJvIGgxLFxuLm0tc3Vydml2aW5nX19pbnRybyBoMiB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLm0tc3Vydml2aW5nX19pbnRybyBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDMycHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDcwcHgpIHtcbiAgLm0tc3Vydml2aW5nX19ib29rIHtcbiAgICBtYXJnaW4tdG9wOiAtOTBweCAhaW1wb3J0YW50O1xuICB9XG59XG4ubS1zdXJ2aXZpbmdfX2Jvb2sgLndwLWJsb2NrLWNvbHVtbnMge1xuICBnYXA6IDEwMHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA3MHB4KSB7XG4gIC5tLXN1cnZpdmluZ19fYm9vayAud3AtYmxvY2stY29sdW1ucyB7XG4gICAgZ2FwOiAwO1xuICB9XG59XG4ubS1zdXJ2aXZpbmdfX2Jvb2sgaDIge1xuICBtYXgtd2lkdGg6IDUzMHB4O1xuICBtYXJnaW46IDAgYXV0byAyMHB4O1xuICBmb250LXNpemU6IDM2cHggIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IDQwcHggIWltcG9ydGFudDtcbn1cbi5tLXN1cnZpdmluZ19fYm9vayAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgYmFja2dyb3VuZDogIzlkMmMyODtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgbGluZS1oZWlnaHQ6IGF1dG87XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7XG59XG4ubS1zdXJ2aXZpbmdfX2Jvb2sgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICM5ZDJjMjg7XG4gIG9wYWNpdHk6IDAuNTtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4ubS1zdXJ2aXZpbmdfX2Jvb2sgaHIge1xuICBtYXJnaW46IDAgMCA1MHB4O1xufVxuLm0tc3Vydml2aW5nX19mdWxsIHtcbiAgbWF4LXdpZHRoOiAxMDB2dyAhaW1wb3J0YW50O1xuICB3aWR0aDogMTAwdncgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwIDAgMCBjYWxjKDUwJSAtIDUwdncpICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDkwcHg7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL3NyYy9pbWFnZXMvYmFja2dyb3VuZHMvYmFja2dyb3VuZF9zdXJ2aXZpbmdfYmx1ZS5qcGdcIikgdG9wIHJpZ2h0IG5vLXJlcGVhdCAjZjFlZWU4O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA3MHB4KSB7XG4gIC5tLXN1cnZpdmluZ19fZnVsbCB7XG4gICAgcGFkZGluZzogNTBweDtcbiAgfVxufVxuLm0tc3Vydml2aW5nX19mdWxsIHAge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBsaW5lLWhlaWdodDogMzJweDtcbiAgbWF4LXdpZHRoOiA4NzVweDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG4ubS1zdXJ2aXZpbmdfX2Z1bGwgaDIge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgbWFyZ2luLWJvdHRvbTogNTVweDtcbn1cbi5tLXN1cnZpdmluZ19fZnVsbCAud3AtYmxvY2stZ3JvdXAge1xuICBtYXgtd2lkdGg6IDEwODVweDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG4ubS1zdXJ2aXZpbmdfX3RhbGtpbmcge1xuICBnYXA6IDE3MHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA3MHB4KSB7XG4gIC5tLXN1cnZpdmluZ19fdGFsa2luZyB7XG4gICAgZ2FwOiA1MHB4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgfVxufVxuLm0tc3Vydml2aW5nX190YWxraW5nLS1sZWZ0IC53cC1ibG9jay1ncm91cF9faW5uZXItY29udGFpbmVyIHtcbiAgcGFkZGluZzogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgcGFkZGluZzogMjBweCAyNXB4O1xufVxuLm0tc3Vydml2aW5nX190YWxraW5nLS1sZWZ0IC53cC1ibG9jay1ncm91cF9faW5uZXItY29udGFpbmVyIHAge1xuICBsaW5lLWhlaWdodDogMjhweDtcbiAgZm9udC1zaXplOiAyMHB4O1xufVxuLm0tc3Vydml2aW5nX190YWxraW5nLS1yaWdodCBoMiB7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG59XG4ubS1zdXJ2aXZpbmdfX3RhbGtpbmctLXJpZ2h0IGZpZ3VyZSB7XG4gIHdpZHRoOiAxNDdweDtcbiAgbWFyZ2luOiAzMHB4IDA7XG59XG4ubS1zdXJ2aXZpbmdfX3RhbGtpbmctLXJpZ2h0IGZpZ3VyZSBpbWcge1xuICBtYXJnaW46IDA7XG59XG4ubS1zdXJ2aXZpbmdfX2NpdGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1sZWZ0OiAyM3B4O1xuICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcbn1cbi5tLXN1cnZpdmluZ19fY2l0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIuKAlFwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IC0yM3B4O1xufVxuLm0tc3Vydml2aW5nX19jaXRhdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWxlZnQ6IDIzcHg7XG4gIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xufVxuLm0tc3Vydml2aW5nX19jaXRhdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIuKAlFwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IC0yM3B4O1xufVxuLm0tc3Vydml2aW5nX19xdW90ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNzBweCkge1xuICAubS1zdXJ2aXZpbmdfX3F1b3RlIHtcbiAgICBtYXgtd2lkdGg6IDkwJTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBmb250LXNpemU6IDIwcHggIWltcG9ydGFudDtcbiAgfVxufVxuLm0tc3Vydml2aW5nX19xdW90ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIuKAnFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTcwcHg7XG4gIGxlZnQ6IC01MHB4O1xuICBmb250LXNpemU6IDEyMXB4O1xuICBjb2xvcjogI2JmYmZiZjtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNzBweCkge1xuICAubS1zdXJ2aXZpbmctY292ZXJfX2Rlc2t0b3Age1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwNzBweCkge1xuICAubS1zdXJ2aXZpbmctY292ZXJfX21vYmlsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLm0tc3Vydml2aW5nX19mb3JtIHtcbiAgYmFja2dyb3VuZDogcmVkO1xuICBtYXgtd2lkdGg6IDEwMHZ3ICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxMDB2dyAhaW1wb3J0YW50O1xuICBtYXJnaW46IDAgMCAwIGNhbGMoNTAlIC0gNTB2dykgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMTE4cHggNTBweDtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vc3JjL2ltYWdlcy9iYWNrZ3JvdW5kcy9iYWNrZ3JvdW5kLXN1cnZpdmluZzIuanBnXCIpIHRvcCByaWdodCBuby1yZXBlYXQgI2YxZWVlODtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNzBweCkge1xuICAubS1zdXJ2aXZpbmdfX2Zvcm0ge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL3NyYy9pbWFnZXMvYmFja2dyb3VuZHMvYmFja2dyb3VuZF9zdXJ2aXZpbmcyLW1vYmlsZS5qcGdcIikgdG9wIHJpZ2h0IG5vLXJlcGVhdCAjZjFlZWU4O1xuICAgIHBhZGRpbmc6IDUwcHg7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgfVxufVxuLm0tc3Vydml2aW5nX19mb3JtIC53cC1ibG9jay1jb2x1bW5zIHtcbiAgbWF4LXdpZHRoOiAxMDg1cHg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuLm0tc3Vydml2aW5nX19mb3JtIGgzIHtcbiAgYmFja2dyb3VuZDogIzI0MjQyNDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogNXB4IDE1cHg7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cbi5tLXN1cnZpdmluZ19fZm9ybSBoMiB7XG4gIGZvbnQtc2l6ZTogMzZweDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cbi5tLXN1cnZpdmluZ19fZm9ybSBoMi5nZm9ybV90aXRsZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ubS1zdXJ2aXZpbmdfX2Zvcm0gZm9ybSBsYWJlbCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5tLXN1cnZpdmluZ19fZm9ybSBmb3JtIC5nZm9ybV9mb290ZXIgLnRvcF9sYWJlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5tLXN1cnZpdmluZ19fZm9ybSBmb3JtIGlucHV0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzI0MjQyNDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuLm0tc3Vydml2aW5nX19mb3JtIGZvcm0gaW5wdXQ6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBoZWlnaHQ6IDIwcHg7XG4gIHdpZHRoOiAyMHB4O1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLm0tc3Vydml2aW5nX19mb3JtIGZvcm0gaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICMyNDI0MjQ7XG59XG4ubS1zdXJ2aXZpbmdfX2Zvcm0gZm9ybSBpbnB1dFt0eXBlPXN1Ym1pdF0ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmxpbmtlZGluLWZlZWQge1xuICBtYXgtd2lkdGg6IDEwMjRweDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuLmxpbmtlZGluLWZlZWQgYnV0dG9uOjpiZWZvcmUsXG4ubGlua2VkaW4tZmVlZCAuYnV0dG9uOjpiZWZvcmUsXG4ud3AtYmxvY2stYnV0dG9uIC5saW5rZWRpbi1mZWVkIC53cC1ibG9jay1idXR0b25fX2xpbms6OmJlZm9yZSxcbi5saW5rZWRpbi1mZWVkIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YmVmb3JlLFxuLmxpbmtlZGluLWZlZWQgYnV0dG9uOjphZnRlcixcbi5saW5rZWRpbi1mZWVkIC5idXR0b246OmFmdGVyLFxuLndwLWJsb2NrLWJ1dHRvbiAubGlua2VkaW4tZmVlZCAud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlcixcbi5saW5rZWRpbi1mZWVkIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufSIsIi8vICBGb3VuZGF0aW9uUHJlc3Mgc2V0dGluZ3MuXG4vLyAgQmFzZWQgb24gRm91bmRhdGlvbiBmb3IgU2l0ZXMgdjYuNC4zXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vXG4vLyAgVGFibGUgb2YgQ29udGVudHM6XG4vL1xuLy8gICAxLiBHbG9iYWxcbi8vICAgMi4gQnJlYWtwb2ludHNcbi8vICAgMy4gVGhlIEdyaWRcbi8vICAgNC4gQmFzZSBUeXBvZ3JhcGh5XG4vLyAgIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xuLy8gICA2LiBBYmlkZVxuLy8gICA3LiBBY2NvcmRpb25cbi8vICAgOC4gQWNjb3JkaW9uIE1lbnVcbi8vICAgOS4gQmFkZ2Vcbi8vICAxMC4gQnJlYWRjcnVtYnNcbi8vICAxMS4gQnV0dG9uXG4vLyAgMTIuIEJ1dHRvbiBHcm91cFxuLy8gIDEzLiBDYWxsb3V0XG4vLyAgMTQuIENhcmRcbi8vICAxNS4gQ2xvc2UgQnV0dG9uXG4vLyAgMTYuIERyaWxsZG93blxuLy8gIDE3LiBEcm9wZG93blxuLy8gIDE4LiBEcm9wZG93biBNZW51XG4vLyAgMTkuIEZsZXhib3ggVXRpbGl0aWVzXG4vLyAgMjAuIEZvcm1zXG4vLyAgMjEuIExhYmVsXG4vLyAgMjIuIE1lZGlhIE9iamVjdFxuLy8gIDIzLiBNZW51XG4vLyAgMjQuIE1ldGVyXG4vLyAgMjUuIE9mZi1jYW52YXNcbi8vICAyNi4gT3JiaXRcbi8vICAyNy4gUGFnaW5hdGlvblxuLy8gIDI4LiBQcm9ncmVzcyBCYXJcbi8vICAyOS4gUHJvdG90eXBlIEFycm93XG4vLyAgMzAuIFByb3RvdHlwZSBCb3JkZXItQm94XG4vLyAgMzEuIFByb3RvdHlwZSBCb3JkZXItTm9uZVxuLy8gIDMyLiBQcm90b3R5cGUgQm9yZGVyZWRcbi8vICAzMy4gUHJvdG90eXBlIERpc3BsYXlcbi8vICAzNC4gUHJvdG90eXBlIEZvbnQtU3R5bGluZ1xuLy8gIDM1LiBQcm90b3R5cGUgTGlzdC1TdHlsZS1UeXBlXG4vLyAgMzYuIFByb3RvdHlwZSBPdmVyZmxvd1xuLy8gIDM3LiBQcm90b3R5cGUgUG9zaXRpb25cbi8vICAzOC4gUHJvdG90eXBlIFJvdW5kZWRcbi8vICAzOS4gUHJvdG90eXBlIFNlcGFyYXRvclxuLy8gIDQwLiBQcm90b3R5cGUgU2hhZG93XG4vLyAgNDEuIFByb3RvdHlwZSBTaXppbmdcbi8vICA0Mi4gUHJvdG90eXBlIFNwYWNpbmdcbi8vICA0My4gUHJvdG90eXBlIFRleHQtRGVjb3JhdGlvblxuLy8gIDQ0LiBQcm90b3R5cGUgVGV4dC1UcmFuc2Zvcm1hdGlvblxuLy8gIDQ1LiBQcm90b3R5cGUgVGV4dC1VdGlsaXRpZXNcbi8vICA0Ni4gUmVzcG9uc2l2ZSBFbWJlZFxuLy8gIDQ3LiBSZXZlYWxcbi8vICA0OC4gU2xpZGVyXG4vLyAgNDkuIFN3aXRjaFxuLy8gIDUwLiBUYWJsZVxuLy8gIDUxLiBUYWJzXG4vLyAgNTIuIFRodW1ibmFpbFxuLy8gIDUzLiBUaXRsZSBCYXJcbi8vICA1NC4gVG9vbHRpcFxuLy8gIDU1LiBUb3AgQmFyXG4vLyAgNTYuIFh5IEdyaWRcblxuQGltcG9ydCAndXRpbC91dGlsJztcbkBpbXBvcnQgJ2dsb2JhbC9jb2xvcnMnO1xuXG4vKlxuREVWIE5PVEVTXG5BbnkgY2hhbmdlIEkgbWFkZSB0byB0aGUgc2V0dGluZ3MgSSBkaWQgYXMgc3VjaC5cblRoZSBjb21tZW50ZWQgdGl0bGUgc3VjaCBhcyA0LiBCYXNlIFR5cG9ncmFwaHlcbkkgdGhlbiB0b29rIHdoYXRldmVyIHNldHRpbmdzIEkgYWRqdXN0ZWQgYW5kIHB1dCB0aGVtIGF0IHRoZSB0b3Agb2YgdGhhdCBzZWN0aW9uXG50aGVuIGNhbWUgYSBibGFuayBsaW5lIGJyZWFrIGFuZCB0aGUgc2V0dGluZ3MgSSBkaWQgbm90IGNoYW5nZVxuKi9cblxuLy8gMS4gR2xvYmFsXG4vLyAtLS0tLS0tLS1cblxuQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1Tb3VyY2UrU2FucytQcm86NDAwLDYwMCw3MDAmZGlzcGxheT1zd2FwJyk7XG5AaW1wb3J0IHVybCgnaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1BbGljZSZmYW1pbHk9RUIrR2FyYW1vbmQ6aXRhbCx3Z2h0QDAsNDAwOzAsNjAwOzEsNDAwOzEsNjAwJmRpc3BsYXk9c3dhcCcpO1xuXG4vLyBmb250IGZhbWlseVxuJGJvZHktZm9udC1mYW1pbHk6ICdFQiBHYXJhbW9uZCcsIHNhbnMtc2VyaWY7XG5cbi8qIHRoaXMgaXMgdGhlIHJvb3QgZm9udCBzaXplIHNvIG5vdyAxIHJlbSBlcXVhbHMgMTBweFxuXHRmb250LXNpemU6IDEwcHg7XG4gIGNoYW5naW5nIGl0IHRvIHBlcmNlbnRhZ2UgYWxsb3cgZm9yIHBlb3BsZSB3aXRoIHBvb3Igb3JcbiAgbGltaXRlZCBleWUgc2lnaHQgdG8gaGF2ZSBhIGJldHRlclxuICBleHBlcmllbmNlIHdoZW4gdmlld2luZyB3ZWJzaXRlXG4gIGFsbG93cyBSRU1TIHRvIGJlIGEgYmFzZSBvZiAxMFxuICAxLjZyZW0gLSAxLjZyZW0gKiAxMHB4ID0gMTZweC5cbiovXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTBweDtcblxuLy8gSEVBREVSU1xuJGhlYWRlci1zdHlsZXM6IChcbiAgc21hbGw6IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDMyKSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDI0KSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDIzKSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgKSxcbiAgbGFyZ2U6IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDQwKSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDMwKSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDI0KSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDIyKSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgKSxcbik7XG5cbi8vIGh0dHBzOi8vY3NzLXRyaWNrcy5jb20vYWxtYW5hYy9zZWxlY3RvcnMvci9yb290L1xuOnJvb3R7XG4gIC0tYm9yZGVyLWdyZXk6IDJweCBzb2xpZCAjRDFENEQ5O1xuICAtLWJvcmRlci10cmFuc3BhcmVudDogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5odG1sLCBib2R5e1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG59XG5cbiRib2R5LWZvbnQtY29sb3I6ICRjb2xvci0tcml2ZXItYmVkO1xuJGdsb2JhbC13ZWlnaHQtYm9sZDogOTAwO1xuXG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxMjAwKTtcbiRnbG9iYWwtbGluZWhlaWdodDogMS41O1xuJGJvZHktYmFja2dyb3VuZDogJHdoaXRlO1xuJGJvZHktYW50aWFsaWFzZWQ6IHRydWU7XG4kZ2xvYmFsLW1hcmdpbjogMXJlbTtcbiRnbG9iYWwtcGFkZGluZzogMXJlbTtcbiRnbG9iYWwtcG9zaXRpb246IDFyZW07XG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbDtcbiRnbG9iYWwtcmFkaXVzOiAwO1xuJGdsb2JhbC1tZW51LXBhZGRpbmc6IDAuN3JlbSAxcmVtO1xuJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW46IDFyZW07XG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHI7XG4kZ2xvYmFsLWZsZXhib3g6IHRydWU7XG4kZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50czogZmFsc2U7XG4kZ2xvYmFsLWJ1dHRvbi1jdXJzb3I6IGF1dG87XG4kZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlOiAwO1xuJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzOiB0cnVlO1xuXG5AaW5jbHVkZSBhZGQtZm91bmRhdGlvbi1jb2xvcnM7XG5cbi8vIDIuIEJyZWFrcG9pbnRzXG4vLyAtLS0tLS0tLS0tLS0tLVxuXG4kYnJlYWtwb2ludHM6IChcbiAgc21hbGw6IDAsXG4gIG1lZGl1bTogNjQwcHgsXG4gIGxhcmdlOiAxMDI0cHgsXG4gIHhsYXJnZTogMTIwMHB4LFxuICBzbGFyZ2U6IDEyODBweCxcbiAgeHhsYXJnZTogMTQ0MHB4LFxuKTtcbiRwcmludC1icmVha3BvaW50OiBsYXJnZTtcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UpO1xuXG4vLyAzLiBUaGUgR3JpZFxuLy8gLS0tLS0tLS0tLS1cblxuJGdyaWQtcm93LXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJGdyaWQtY29sdW1uLWNvdW50OiAxMjtcbiRncmlkLWNvbHVtbi1ndXR0ZXI6IChcbiAgc21hbGw6IDIwcHgsXG4gIG1lZGl1bTogMzBweCxcbik7XG4kZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZTogdHJ1ZTtcbiRncmlkLWNvbHVtbi1hbGlhczogJ2NvbHVtbnMnO1xuJGJsb2NrLWdyaWQtbWF4OiA4O1xuXG4vLyA0LiBCYXNlIFR5cG9ncmFwaHlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kYmxvY2txdW90ZS1jb2xvcjogJGNvbG9yLS1tYXJpbmVyO1xuJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoNDAgNTAgNDAgNTApO1xuJGNpdGUtZm9udC1zaXplOiAxLjRyZW07XG4kY2l0ZS1jb2xvcjogJGdyZXktLWRhcms7XG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJyc7XG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuODtcbmJsb2NrcXVvdGV7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRncmV5LS1saWdodDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXNpemU6IDJyZW07XG4gIGNpdGV7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgJjpmaXJzdC1saW5le1xuICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICBjb2xvcjogJGNvbG9yLS1yaXZlci1iZWQ7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICB9XG4gIH1cbn1cbiRsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4kbGlzdC1zaWRlLW1hcmdpbjogNC4yNXJlbTtcbiRhbmNob3ItY29sb3I6ICRjb2xvci0tbWFyaW5lcjtcblxuJGhlYWRlci1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4kaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kaGVhZGVyLWZvbnQtc3R5bGU6IG5vcm1hbDtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6IENvbnNvbGFzLCAnTGliZXJhdGlvbiBNb25vJywgQ291cmllciwgbW9ub3NwYWNlO1xuJGhlYWRlci1jb2xvcjogaW5oZXJpdDtcbiRoZWFkZXItbGluZWhlaWdodDogMS40O1xuJGhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW07XG4kaGVhZGVyLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4kc21hbGwtZm9udC1zaXplOiA4MCU7XG4kaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I6ICRtZWRpdW0tZ3JheTtcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogMXJlbTtcbiRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiRjb2RlLWNvbG9yOiAkYmxhY2s7XG4kY29kZS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiRjb2RlLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kY29kZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRjb2RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRjb2RlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNSAxKTtcbiRhbmNob3ItY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRhbmNob3ItY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmU7XG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZTtcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaHItbWFyZ2luOiByZW0tY2FsYygyMCkgYXV0bztcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW07XG4kZGVmbmxpc3QtdGVybS13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4kZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tOiAwLjNyZW07XG4ka2V5c3Ryb2tlLWZvbnQ6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4ka2V5c3Ryb2tlLWNvbG9yOiAkYmxhY2s7XG4ka2V5c3Ryb2tlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCk7XG4ka2V5c3Ryb2tlLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kYWJici11bmRlcmxpbmU6IDFweCBkb3R0ZWQgJGJsYWNrO1xuXG4vLyA1LiBUeXBvZ3JhcGh5IEhlbHBlcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kbGVhZC1mb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplICogMS4yNTtcbiRsZWFkLWxpbmVoZWlnaHQ6IDEuNjtcbiRzdWJoZWFkZXItbGluZWhlaWdodDogMS40O1xuJHN1YmhlYWRlci1jb2xvcjogJGRhcmstZ3JheTtcbiRzdWJoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRzdWJoZWFkZXItbWFyZ2luLXRvcDogMC4ycmVtO1xuJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW07XG4kc3RhdC1mb250LXNpemU6IDIuNXJlbTtcblxuLy8gNi4gQWJpZGVcbi8vIC0tLS0tLS0tXG5cbiRhYmlkZS1pbnB1dHM6IHRydWU7XG4kYWJpZGUtbGFiZWxzOiB0cnVlO1xuJGlucHV0LWJhY2tncm91bmQtaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCk7XG4kaW5wdXQtZXJyb3ItY29sb3I6IGdldC1jb2xvcihhbGVydCk7XG4kaW5wdXQtZXJyb3ItZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG5cbi8vIDcuIEFjY29yZGlvblxuLy8gLS0tLS0tLS0tLS0tXG5cbiRhY2NvcmRpb24tYmFja2dyb3VuZDogJHdoaXRlO1xuJGFjY29yZGlvbi1wbHVzbWludXM6IHRydWU7XG4kYWNjb3JkaW9uLXRpdGxlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuJGFjY29yZGlvbi1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRhY2NvcmRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheTtcbiRhY2NvcmRpb24taXRlbS1wYWRkaW5nOiAxLjI1cmVtIDFyZW07XG4kYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuJGFjY29yZGlvbi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmc6IDFyZW07XG5cbi8vIDguIEFjY29yZGlvbiBNZW51XG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuXG4kYWNjb3JkaW9ubWVudS1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcbiRhY2NvcmRpb25tZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luO1xuJGFjY29yZGlvbm1lbnUtc3VibWVudS1wYWRkaW5nOiAkYWNjb3JkaW9ubWVudS1wYWRkaW5nO1xuJGFjY29yZGlvbm1lbnUtYXJyb3dzOiB0cnVlO1xuJGFjY29yZGlvbm1lbnUtYXJyb3ctY29sb3I6ICR3aGl0ZTtcbiRhY2NvcmRpb25tZW51LWl0ZW0tYmFja2dyb3VuZDogbnVsbDtcbiRhY2NvcmRpb25tZW51LWJvcmRlcjogbnVsbDtcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWJhY2tncm91bmQ6IG51bGw7XG4kYWNjb3JkaW9uLXN1Ym1lbnUtdG9nZ2xlLWJvcmRlcjogJGFjY29yZGlvbm1lbnUtYm9yZGVyO1xuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg6IDQwcHg7XG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1oZWlnaHQ6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoO1xuJGFjY29yZGlvbm1lbnUtYXJyb3ctc2l6ZTogNnB4O1xuXG4vLyA5LiBCYWRnZVxuLy8gLS0tLS0tLS1cblxuJGJhZGdlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJGJhZGdlLWNvbG9yOiAkd2hpdGU7XG4kYmFkZ2UtY29sb3ItYWx0OiAkYmxhY2s7XG4kYmFkZ2UtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcbiRiYWRnZS1wYWRkaW5nOiAwLjNlbTtcbiRiYWRnZS1taW53aWR0aDogMi4xZW07XG4kYmFkZ2UtZm9udC1zaXplOiAwLjZyZW07XG5cbi8vIDEwLiBCcmVhZGNydW1ic1xuLy8gLS0tLS0tLS0tLS0tLS0tXG5cbiRicmVhZGNydW1icy1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwO1xuJGJyZWFkY3J1bWJzLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMSk7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50OiAkYmxhY2s7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5O1xuJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luOiAwLjc1cmVtO1xuJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlOiB0cnVlO1xuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yOiB0cnVlO1xuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWl0ZW06ICcvJztcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtLXJ0bDogJ1xcXFwnO1xuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yOiAkbWVkaXVtLWdyYXk7XG5cbi8vIDExLiBCdXR0b25cbi8vIC0tLS0tLS0tLS1cblxuJGJ1dHRvbi1mb250LWZhbWlseTogaW5oZXJpdDtcbiRidXR0b24tcGFkZGluZzogMC44NWVtIDFlbTtcbiRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMDtcbiRidXR0b24tZmlsbDogc29saWQ7XG4kYnV0dG9uLWJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpO1xuJGJ1dHRvbi1jb2xvcjogJGNvbG9yLS1yaXZlci1iZWQ7XG4kYnV0dG9uLWNvbG9yLWFsdDogJGJsYWNrO1xuJGJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoOiAxcHg7XG4kYnV0dG9uLXNpemVzOiAoXG4gIHRpbnk6IDAuNnJlbSxcbiAgc21hbGw6IDAuNzVyZW0sXG4gIGRlZmF1bHQ6IDAuOXJlbSxcbiAgbGFyZ2U6IDEuMjVyZW0sXG4pO1xuJGJ1dHRvbi1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xuJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkOiAwLjI1O1xuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzczogLTIwJTtcbiRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzczogLTUwJTtcbiRidXR0b24tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG5cbi8vIDEyLiBCdXR0b24gR3JvdXBcbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJGJ1dHRvbmdyb3VwLW1hcmdpbjogMXJlbTtcbiRidXR0b25ncm91cC1zcGFjaW5nOiAxcHg7XG4kYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3I6ICcuYnV0dG9uJztcbiRidXR0b25ncm91cC1leHBhbmQtbWF4OiA2O1xuJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoOiB0cnVlO1xuXG4vLyAxMy4gQ2FsbG91dFxuLy8gLS0tLS0tLS0tLS1cblxuJGNhbGxvdXQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlOiA4NSU7XG4kY2FsbG91dC1ib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRibGFjaywgMC4yNSk7XG4kY2FsbG91dC1tYXJnaW46IDAgMCAxcmVtIDA7XG4kY2FsbG91dC1wYWRkaW5nOiAxcmVtO1xuJGNhbGxvdXQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRjYWxsb3V0LWZvbnQtY29sb3ItYWx0OiAkYm9keS1iYWNrZ3JvdW5kO1xuJGNhbGxvdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRjYWxsb3V0LWxpbmstdGludDogMzAlO1xuXG4vLyAxNC4gQ2FyZFxuLy8gLS0tLS0tLS1cblxuJGNhcmQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGNhcmQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRjYXJkLWRpdmlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kY2FyZC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiRjYXJkLXNoYWRvdzogbm9uZTtcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGNhcmQtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJGNhcmQtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG5cbi8vIDE1LiBDbG9zZSBCdXR0b25cbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJGNsb3NlYnV0dG9uLXBvc2l0aW9uOiByaWdodCB0b3A7XG4kY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWw6IChcbiAgc21hbGw6IDAuNjZyZW0sXG4gIG1lZGl1bTogMXJlbSxcbik7XG4kY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsOiAoXG4gIHNtYWxsOiAwLjMzZW0sXG4gIG1lZGl1bTogMC41cmVtLFxuKTtcbiRjbG9zZWJ1dHRvbi1zaXplOiAoXG4gIHNtYWxsOiAxLjVlbSxcbiAgbWVkaXVtOiAyZW0sXG4pO1xuJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQ6IDE7XG4kY2xvc2VidXR0b24tY29sb3I6ICRkYXJrLWdyYXk7XG4kY2xvc2VidXR0b24tY29sb3ItaG92ZXI6ICRibGFjaztcblxuLy8gMTYuIERyaWxsZG93blxuLy8gLS0tLS0tLS0tLS0tLVxuXG4kZHJpbGxkb3duLXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBsaW5lYXI7XG4kZHJpbGxkb3duLWFycm93czogdHJ1ZTtcbiRkcmlsbGRvd24tcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kZHJpbGxkb3duLW5lc3RlZC1tYXJnaW46IDA7XG4kZHJpbGxkb3duLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRkcmlsbGRvd24tc3VibWVudS1wYWRkaW5nOiAkZHJpbGxkb3duLXBhZGRpbmc7XG4kZHJpbGxkb3duLXN1Ym1lbnUtYmFja2dyb3VuZDogJHdoaXRlO1xuJGRyaWxsZG93bi1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kZHJpbGxkb3duLWFycm93LXNpemU6IDZweDtcblxuLy8gMTcuIERyb3Bkb3duXG4vLyAtLS0tLS0tLS0tLS1cblxuJGRyb3Bkb3duLXBhZGRpbmc6IDFyZW07XG4kZHJvcGRvd24tYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZHJvcGRvd24tZm9udC1zaXplOiAxcmVtO1xuJGRyb3Bkb3duLXdpZHRoOiAzMDBweDtcbiRkcm9wZG93bi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGRyb3Bkb3duLXNpemVzOiAoXG4gIHRpbnk6IDEwMHB4LFxuICBzbWFsbDogMjAwcHgsXG4gIGxhcmdlOiA0MDBweCxcbik7XG5cbi8vIDE4LiBEcm9wZG93biBNZW51XG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuXG4kZHJvcGRvd25tZW51LWFycm93czogdHJ1ZTtcbiRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3I6ICRhbmNob3ItY29sb3I7XG4kZHJvcGRvd25tZW51LWFycm93LXNpemU6IDZweDtcbiRkcm9wZG93bm1lbnUtYXJyb3ctcGFkZGluZzogMS41cmVtO1xuJGRyb3Bkb3dubWVudS1taW4td2lkdGg6IDIwMHB4O1xuJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kOiBudWxsO1xuJGRyb3Bkb3dubWVudS1zdWJtZW51LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRkcm9wZG93bm1lbnUtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kZHJvcGRvd25tZW51LW5lc3RlZC1tYXJnaW46IDA7XG4kZHJvcGRvd25tZW51LXN1Ym1lbnUtcGFkZGluZzogJGRyb3Bkb3dubWVudS1wYWRkaW5nO1xuJGRyb3Bkb3dubWVudS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZHJvcGRvd24tbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogZ2V0LWNvbG9yKHByaW1hcnkpO1xuJGRyb3Bkb3duLW1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogdHJhbnNwYXJlbnQ7XG5cbi8vIDE5LiBGbGV4Ym94IFV0aWxpdGllc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRmbGV4LXNvdXJjZS1vcmRlcmluZy1jb3VudDogNjtcbiRmbGV4Ym94LXJlc3BvbnNpdmUtYnJlYWtwb2ludHM6IHRydWU7XG5cbi8vIDIwLiBGb3Jtc1xuLy8gLS0tLS0tLS0tXG5cbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkd2hpdGU7XG4kaW5wdXQtcHJlZml4LWNvbG9yOiAkY29sb3ItLXJpdmVyLWJlZDtcbiRpbnB1dC1wcmVmaXgtYm9yZGVyOiAxcHggc29saWQgJHdoaXRlO1xuJHNlbGVjdC1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiRpbnB1dC1jb2xvcjogJHdoaXRlO1xuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAkd2hpdGU7XG4kaW5wdXQtZm9udC1zaXplOiAxLjhyZW07XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4kaW5wdXQtYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJHdoaXRlO1xuJGlucHV0LWJvcmRlcjogMnB4IHNvbGlkICR3aGl0ZTtcbiRpbnB1dC1ib3JkZXItZm9jdXM6IDFweCBzb2xpZCAkd2hpdGU7XG4kaW5wdXQtc2hhZG93LWZvY3VzOiBub25lO1xuXG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApO1xuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCk7XG4kbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMyk7XG4kZm9ybS1zcGFjaW5nOiByZW0tY2FsYygxNik7XG4kaGVscHRleHQtY29sb3I6ICR3aGl0ZTtcbiRoZWxwdGV4dC1mb250LXNpemU6IDEuOHJlbTtcbiRoZWxwdGV4dC1mb250LXN0eWxlOiBpdGFsaWM7XG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRpbnB1dC1wcmVmaXgtcGFkZGluZzogMXJlbTtcbiRmb3JtLWxhYmVsLWNvbG9yOiAkd2hpdGU7XG4kZm9ybS1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kZm9ybS1sYWJlbC1saW5lLWhlaWdodDogMS44O1xuJHNlbGVjdC10cmlhbmdsZS1jb2xvcjogJGRhcmstZ3JheTtcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRpbnB1dC1mb250LWZhbWlseTogaW5oZXJpdDtcbiRpbnB1dC1saW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0O1xuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICR3aGl0ZTtcbiRpbnB1dC1wYWRkaW5nOiAkZm9ybS1zcGFjaW5nIC8gMjtcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCR3aGl0ZSwgMC4xKTtcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkO1xuJGlucHV0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZTtcbiRpbnB1dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGZvcm0tYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDIxLiBMYWJlbFxuLy8gLS0tLS0tLS0tXG5cbiRsYWJlbC1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRsYWJlbC1jb2xvcjogJHdoaXRlO1xuJGxhYmVsLWNvbG9yLWFsdDogJGJsYWNrO1xuJGxhYmVsLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kbGFiZWwtZm9udC1zaXplOiAwLjhyZW07XG4kbGFiZWwtcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW07XG4kbGFiZWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMjIuIE1lZGlhIE9iamVjdFxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDogMTAwJTtcblxuLy8gMjMuIE1lbnVcbi8vIC0tLS0tLS0tXG5cbiRtZW51LW1hcmdpbjogMDtcbiRtZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luO1xuJG1lbnUtaXRlbXMtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kbWVudS1zaW1wbGUtbWFyZ2luOiAxcmVtO1xuJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU6ICR3aGl0ZTtcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KTtcbiRtZW51LWljb24tc3BhY2luZzogMC4yNXJlbTtcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XG4kbWVudS1zdGF0ZS1iYWNrLWNvbXBhdDogdHJ1ZTtcbiRtZW51LWNlbnRlcmVkLWJhY2stY29tcGF0OiB0cnVlO1xuJG1lbnUtaWNvbnMtYmFjay1jb21wYXQ6IHRydWU7XG5cbi8vIDI0LiBNZXRlclxuLy8gLS0tLS0tLS0tXG5cbiRtZXRlci1oZWlnaHQ6IDFyZW07XG4kbWV0ZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRtZXRlci1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kbWV0ZXItZmlsbC1nb29kOiAkc3VjY2Vzcy1jb2xvcjtcbiRtZXRlci1maWxsLW1lZGl1bTogJHdhcm5pbmctY29sb3I7XG4kbWV0ZXItZmlsbC1iYWQ6ICRhbGVydC1jb2xvcjtcblxuLy8gMjUuIE9mZi1jYW52YXNcbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRvZmZjYW52YXMtc2l6ZXM6IChcbiAgc21hbGw6IDI1MHB4LFxuKTtcbiRvZmZjYW52YXMtdmVydGljYWwtc2l6ZXM6IChcbiAgc21hbGw6IDI1MHB4LFxuKTtcbiRvZmZjYW52YXMtc2hhZG93OiAwIDAgMTBweCByZ2JhKCRibGFjaywgMC43KTtcbiRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemU6IDIwcHg7XG4kb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcjogcmdiYSgkYmxhY2ssIDAuMjUpO1xuJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleDogMTE7XG4kb2ZmY2FudmFzLXB1c2gtemluZGV4OiAxMjtcbiRvZmZjYW52YXMtb3ZlcmxhcC16aW5kZXg6IDEzO1xuJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4OiAxMjtcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGg6IDAuNXM7XG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nOiBlYXNlO1xuJG9mZmNhbnZhcy1maXhlZC1yZXZlYWw6IHRydWU7XG4kb2ZmY2FudmFzLWV4aXQtYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIDAuMjUpO1xuJG1haW5jb250ZW50LWNsYXNzOiAnb2ZmLWNhbnZhcy1jb250ZW50JztcblxuLy8gMjYuIE9yYml0XG4vLyAtLS0tLS0tLS1cbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZC1hY3RpdmU6ICRjb2xvci0tY2FybmF0aW9uO1xuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kOiAkZ3JleS0tZGFyaztcbiRvcmJpdC1jb250cm9sLWJhY2tncm91bmQtaG92ZXI6IHRyYW5zcGFyZW50O1xuXG4kb3JiaXQtYnVsbGV0LWRpYW1ldGVyOiAxLjJyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbjogMC4xcmVtO1xuJG9yYml0LWJ1bGxldC1tYXJnaW4tdG9wOiAwLjhyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbi1ib3R0b206IDAuOHJlbTtcbiRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjUpO1xuJG9yYml0LWNhcHRpb24tcGFkZGluZzogMXJlbTtcbiRvcmJpdC1jb250cm9sLXBhZGRpbmc6IDFyZW07XG4kb3JiaXQtY29udHJvbC16aW5kZXg6IDEwO1xuXG4vLyAyNy4gUGFnaW5hdGlvblxuLy8gLS0tLS0tLS0tLS0tLS1cblxuJHBhZ2luYXRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4kcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3I6ICRibGFjaztcbiRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZzogcmVtLWNhbGMoMyAxMCk7XG4kcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmc6IHJlbS1jYWxjKDEpO1xuJHBhZ2luYXRpb24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudDogJHByaW1hcnktY29sb3I7XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWN1cnJlbnQ6ICR3aGl0ZTtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcbiRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yOiAkYmxhY2s7XG4kcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXM6IGZhbHNlO1xuJHBhZ2luYXRpb24tbW9iaWxlLWN1cnJlbnQtaXRlbTogZmFsc2U7XG4kcGFnaW5hdGlvbi1hcnJvd3M6IHRydWU7XG5cbi8vIDI4LiBQcm9ncmVzcyBCYXJcbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJHByb2dyZXNzLWhlaWdodDogMXJlbTtcbiRwcm9ncmVzcy1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kcHJvZ3Jlc3MtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kcHJvZ3Jlc3MtbWV0ZXItYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kcHJvZ3Jlc3MtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMjkuIFByb3RvdHlwZSBBcnJvd1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWFycm93LWRpcmVjdGlvbnM6IChcbiAgZG93bixcbiAgdXAsXG4gIHJpZ2h0LFxuICBsZWZ0XG4pO1xuJHByb3RvdHlwZS1hcnJvdy1zaXplOiAwLjQzNzVyZW07XG4kcHJvdG90eXBlLWFycm93LWNvbG9yOiAkYmxhY2s7XG5cbi8vIDMwLiBQcm90b3R5cGUgQm9yZGVyLUJveFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtYm9yZGVyLWJveC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG5cbi8vIDMxLiBQcm90b3R5cGUgQm9yZGVyLU5vbmVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1ib3JkZXItbm9uZS1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG5cbi8vIDMyLiBQcm90b3R5cGUgQm9yZGVyZWRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1ib3JkZXJlZC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLWJvcmRlci13aWR0aDogcmVtLWNhbGMoMSk7XG4kcHJvdG90eXBlLWJvcmRlci10eXBlOiBzb2xpZDtcbiRwcm90b3R5cGUtYm9yZGVyLWNvbG9yOiAkbWVkaXVtLWdyYXk7XG5cbi8vIDMzLiBQcm90b3R5cGUgRGlzcGxheVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtZGlzcGxheS1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLWRpc3BsYXk6IChcbiAgaW5saW5lLFxuICBpbmxpbmUtYmxvY2ssXG4gIGJsb2NrLFxuICB0YWJsZSxcbiAgdGFibGUtY2VsbFxuKTtcblxuLy8gMzQuIFByb3RvdHlwZSBGb250LVN0eWxpbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtZm9udC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXdpZGUtbGV0dGVyLXNwYWNpbmc6IHJlbS1jYWxjKDQpO1xuJHByb3RvdHlwZS1mb250LW5vcm1hbDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJHByb3RvdHlwZS1mb250LWJvbGQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG5cbi8vIDM1LiBQcm90b3R5cGUgTGlzdC1TdHlsZS1UeXBlXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWxpc3QtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1zdHlsZS10eXBlLXVub3JkZXJlZDogKFxuICBkaXNjLFxuICBjaXJjbGUsXG4gIHNxdWFyZVxuKTtcbiRwcm90b3R5cGUtc3R5bGUtdHlwZS1vcmRlcmVkOiAoXG4gIGRlY2ltYWwsXG4gIGxvd2VyLWFscGhhLFxuICBsb3dlci1sYXRpbixcbiAgbG93ZXItcm9tYW4sXG4gIHVwcGVyLWFscGhhLFxuICB1cHBlci1sYXRpbixcbiAgdXBwZXItcm9tYW5cbik7XG5cbi8vIDM2LiBQcm90b3R5cGUgT3ZlcmZsb3dcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1vdmVyZmxvdy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLW92ZXJmbG93OiAoXG4gIHZpc2libGUsXG4gIGhpZGRlbixcbiAgc2Nyb2xsXG4pO1xuXG4vLyAzNy4gUHJvdG90eXBlIFBvc2l0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtcG9zaXRpb24tYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1wb3NpdGlvbjogKFxuICBzdGF0aWMsXG4gIHJlbGF0aXZlLFxuICBhYnNvbHV0ZSxcbiAgZml4ZWRcbik7XG4kcHJvdG90eXBlLXBvc2l0aW9uLXotaW5kZXg6IDk3NTtcblxuLy8gMzguIFByb3RvdHlwZSBSb3VuZGVkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1yb3VuZGVkLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoMyk7XG5cbi8vIDM5LiBQcm90b3R5cGUgU2VwYXJhdG9yXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXNlcGFyYXRvci1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXNlcGFyYXRvci1hbGlnbjogY2VudGVyO1xuJHByb3RvdHlwZS1zZXBhcmF0b3ItaGVpZ2h0OiByZW0tY2FsYygyKTtcbiRwcm90b3R5cGUtc2VwYXJhdG9yLXdpZHRoOiAzcmVtO1xuJHByb3RvdHlwZS1zZXBhcmF0b3ItYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kcHJvdG90eXBlLXNlcGFyYXRvci1tYXJnaW4tdG9wOiAkZ2xvYmFsLW1hcmdpbjtcblxuLy8gNDAuIFByb3RvdHlwZSBTaGFkb3dcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtc2hhZG93LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtYm94LXNoYWRvdzogMCAycHggNXB4IDAgcmdiYSgwLDAsMCwuMTYpLFxuICAgICAgICAgICAgICAgICAgICAgICAwIDJweCAxMHB4IDAgcmdiYSgwLDAsMCwuMTIpO1xuXG4vLyA0MS4gUHJvdG90eXBlIFNpemluZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1zaXppbmctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1zaXppbmc6IChcbiAgd2lkdGgsXG4gIGhlaWdodFxuKTtcbiRwcm90b3R5cGUtc2l6ZXM6IChcbiAgMjU6IDI1JSxcbiAgNTA6IDUwJSxcbiAgNzU6IDc1JSxcbiAgMTAwOiAxMDAlXG4pO1xuXG4vLyA0Mi4gUHJvdG90eXBlIFNwYWNpbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXNwYWNpbmctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1zcGFjZXJzLWNvdW50OiAzO1xuXG4vLyA0My4gUHJvdG90eXBlIFRleHQtRGVjb3JhdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1kZWNvcmF0aW9uLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtdGV4dC1kZWNvcmF0aW9uOiAoXG4gIG92ZXJsaW5lLFxuICB1bmRlcmxpbmUsXG4gIGxpbmUtdGhyb3VnaCxcbik7XG5cbi8vIDQ0LiBQcm90b3R5cGUgVGV4dC1UcmFuc2Zvcm1hdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtdHJhbnNmb3JtYXRpb24tYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS10ZXh0LXRyYW5zZm9ybWF0aW9uOiAoXG4gIGxvd2VyY2FzZSxcbiAgdXBwZXJjYXNlLFxuICBjYXBpdGFsaXplXG4pO1xuXG4vLyA0NS4gUHJvdG90eXBlIFRleHQtVXRpbGl0aWVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtdXRpbGl0aWVzLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG5cbi8vIDQ2LiBSZXNwb25zaXZlIEVtYmVkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcmVzcG9uc2l2ZS1lbWJlZC1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNik7XG4kcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3M6IChcbiAgZGVmYXVsdDogNCBieSAzLFxuICB3aWRlc2NyZWVuOiAxNiBieSA5LFxuKTtcblxuLy8gNDcuIFJldmVhbFxuLy8gLS0tLS0tLS0tLVxuJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAxKTtcblxuJHJldmVhbC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kcmV2ZWFsLXdpZHRoOiA2MDBweDtcbiRyZXZlYWwtbWF4LXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJHJldmVhbC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kcmV2ZWFsLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRyZXZlYWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRyZXZlYWwtemluZGV4OiAxMDA1O1xuXG4vLyA0OC4gU2xpZGVyXG4vLyAtLS0tLS0tLS0tXG5cbiRzbGlkZXItd2lkdGgtdmVydGljYWw6IDAuNXJlbTtcbiRzbGlkZXItdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4kc2xpZGVyLWhlaWdodDogMC41cmVtO1xuJHNsaWRlci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRzbGlkZXItZmlsbC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kc2xpZGVyLWhhbmRsZS1oZWlnaHQ6IDEuNHJlbTtcbiRzbGlkZXItaGFuZGxlLXdpZHRoOiAxLjRyZW07XG4kc2xpZGVyLWhhbmRsZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRzbGlkZXItb3BhY2l0eS1kaXNhYmxlZDogMC4yNTtcbiRzbGlkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gNDkuIFN3aXRjaFxuLy8gLS0tLS0tLS0tLVxuXG4kc3dpdGNoLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRzd2l0Y2gtYmFja2dyb3VuZC1hY3RpdmU6ICRwcmltYXJ5LWNvbG9yO1xuJHN3aXRjaC1oZWlnaHQ6IDJyZW07XG4kc3dpdGNoLWhlaWdodC10aW55OiAxLjVyZW07XG4kc3dpdGNoLWhlaWdodC1zbWFsbDogMS43NXJlbTtcbiRzd2l0Y2gtaGVpZ2h0LWxhcmdlOiAyLjVyZW07XG4kc3dpdGNoLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kc3dpdGNoLW1hcmdpbjogJGdsb2JhbC1tYXJnaW47XG4kc3dpdGNoLXBhZGRsZS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kc3dpdGNoLXBhZGRsZS1vZmZzZXQ6IDAuMjVyZW07XG4kc3dpdGNoLXBhZGRsZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2Utb3V0O1xuXG4vLyA1MC4gVGFibGVcbi8vIC0tLS0tLS0tLVxuXG4kdGFibGUtYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYmxlLWNvbG9yLXNjYWxlOiA1JTtcbiR0YWJsZS1ib3JkZXI6IDFweCBzb2xpZCBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1wYWRkaW5nOiByZW0tY2FsYyg4IDEwIDEwKTtcbiR0YWJsZS1ob3Zlci1zY2FsZTogMiU7XG4kdGFibGUtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtcm93LXN0cmlwZS1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgKyAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWlzLXN0cmlwZWQ6IHRydWU7XG4kdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1zdHJpcGU6IGV2ZW47XG4kdGFibGUtaGVhZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlIC8gMik7XG4kdGFibGUtaGVhZC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtaGVhZC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWZvb3QtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XG4kdGFibGUtZm9vdC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtZm9vdC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWhlYWQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiR0YWJsZS1mb290LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQ6IGZhbHNlO1xuJHRhYmxlLXN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bTtcblxuLy8gNTEuIFRhYnNcbi8vIC0tLS0tLS0tXG5cbiR0YWItbWFyZ2luOiAwO1xuJHRhYi1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kdGFiLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiR0YWItYmFja2dyb3VuZC1hY3RpdmU6ICRsaWdodC1ncmF5O1xuJHRhYi1hY3RpdmUtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJHRhYi1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuJHRhYi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICR3aGl0ZTtcbiR0YWItaXRlbS1wYWRkaW5nOiAxLjI1cmVtIDEuNXJlbTtcbiR0YWItZXhwYW5kLW1heDogNjtcbiR0YWItY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kdGFiLWNvbnRlbnQtYm9yZGVyOiAkbGlnaHQtZ3JheTtcbiR0YWItY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiR0YWItY29udGVudC1wYWRkaW5nOiAxcmVtO1xuXG4vLyA1Mi4gVGh1bWJuYWlsXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiR0aHVtYm5haWwtYm9yZGVyOiBzb2xpZCA0cHggJHdoaXRlO1xuJHRodW1ibmFpbC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiR0aHVtYm5haWwtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgkYmxhY2ssIDAuMik7XG4kdGh1bWJuYWlsLXNoYWRvdy1ob3ZlcjogMCAwIDZweCAxcHggcmdiYSgkcHJpbWFyeS1jb2xvciwgMC41KTtcbiR0aHVtYm5haWwtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dDtcbiR0aHVtYm5haWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gNTMuIFRpdGxlIEJhclxuLy8gLS0tLS0tLS0tLS0tLVxuXG4kdGl0bGViYXItY29sb3I6ICR3aGl0ZTtcbiR0aXRsZWJhci1wYWRkaW5nOiAwLjVyZW07XG4kdGl0bGViYXItdGV4dC1mb250LXdlaWdodDogYm9sZDtcbiR0aXRsZWJhci1pY29uLWNvbG9yOiAkd2hpdGU7XG4kdGl0bGViYXItaWNvbi1jb2xvci1ob3ZlcjogJG1lZGl1bS1ncmF5O1xuJHRpdGxlYmFyLWljb24tc3BhY2luZzogMC4yNXJlbTtcblxuLy8gNTQuIFRvb2x0aXBcbi8vIC0tLS0tLS0tLS0tXG5cbiRoYXMtdGlwLWN1cnNvcjogaGVscDtcbiRoYXMtdGlwLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuJGhhcy10aXAtYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAkZGFyay1ncmF5O1xuJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuJHRvb2x0aXAtY29sb3I6ICR3aGl0ZTtcbiR0b29sdGlwLXBhZGRpbmc6IDAuNzVyZW07XG4kdG9vbHRpcC1tYXgtd2lkdGg6IDEwcmVtO1xuJHRvb2x0aXAtZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplO1xuJHRvb2x0aXAtcGlwLXdpZHRoOiAwLjc1cmVtO1xuJHRvb2x0aXAtcGlwLWhlaWdodDogJHRvb2x0aXAtcGlwLXdpZHRoICogMC44NjY7XG4kdG9vbHRpcC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyA1NS4gVG9wIEJhclxuLy8gLS0tLS0tLS0tLS1cblxuJHRvcGJhci1wYWRkaW5nOiAwLjVyZW07XG4kdG9wYmFyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJHRvcGJhci1zdWJtZW51LWJhY2tncm91bmQ6ICR0b3BiYXItYmFja2dyb3VuZDtcbiR0b3BiYXItdGl0bGUtc3BhY2luZzogMC41cmVtIDFyZW0gMC41cmVtIDA7XG4kdG9wYmFyLWlucHV0LXdpZHRoOiAyMDBweDtcbiR0b3BiYXItdW5zdGFjay1icmVha3BvaW50OiBtZWRpdW07XG5cbi8vIDU2LiBYeSBHcmlkXG4vLyAtLS0tLS0tLS0tLVxuXG4kZ3JpZC1tYXJnaW4tZ3V0dGVyczooXG4gIHNtYWxsOiA0MHB4LFxuICBtZWRpdW06IDIwcHhcbik7XG5cbiR4eS1ncmlkOiB0cnVlO1xuJGdyaWQtY29udGFpbmVyOiAkZ2xvYmFsLXdpZHRoO1xuJGdyaWQtY29sdW1uczogMTI7XG4kZ3JpZC1wYWRkaW5nLWd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzO1xuJGdyaWQtY29udGFpbmVyLXBhZGRpbmc6ICRncmlkLXBhZGRpbmctZ3V0dGVycztcbiRncmlkLWNvbnRhaW5lci1tYXg6ICRnbG9iYWwtd2lkdGg7XG4keHktYmxvY2stZ3JpZC1tYXg6IDg7XG4iLCIvLyBDT0xPUlNcbi8vIEdldCB2YXJpYWJsZSBuYW1lIGZyb20gaHR0cDovL2NoaXIuYWcvcHJvamVjdHMvbmFtZS10aGF0LWNvbG9yL1xuLy8gISEgQUJTT0xVVEVMWSBBTEwgKGV4Y2VwdCBGb3VuZGF0aW9uIHByZXNldHMpIGhleCBjb2xvciBjb2RlcyBtdXN0IGJlXG4vLyBtYXRjaGVkIHRvIGEgQ2hpcmFnIGNvbG9yIG5hbWUuIE5vIG90aGVyIHZhcmlhYmxlcyBhcmUgdG8gYmUgc2V0IHRvIGFcbi8vIGhleCBjb2RlIGRpcmVjdGx5IC0tIG9ubHkgdG8gY2hpcmFnLW5hbWVkIHZhcmlhYmxlcyAoYWxpYXNpbmcpLlxuLy8gVGhpcyBwcmV2ZW50cyByZS1kZWZpbml0aW9uIG9mIGhpZ2hseS1zaW1pbGFyIGNvbG9ycywgZW5jb3VyYWdlcyByZXVzZVxuLy8gb2YgdGhlIGV4aXN0aW5nIHBhbGV0dGUuXG5cbi8vTmV1dHJhbHNcbiRibGFjazogIzI0MjQyNDtcbiR3aGl0ZTogI0ZGRkZGRjtcbiRncmV5LS1kYXJrOiAjQUJBRUI0O1xuJGdyZXktLWxpZ2h0OiNFMkU0RTc7XG4kZ3JleS0tYm9yZGVyOiAjRDFENEQ5O1xuXG4kbGlnaHQtZ3JheTogJGdyZXktLWxpZ2h0O1xuJG1lZGl1bS1ncmF5OiAkZ3JleS0tbGlnaHQ7XG4kZGFyay1ncmF5OiAkZ3JleS0tZGFyaztcblxuXG4vLyBCbHVlc1xuJGNvbG9yLS1jYXRhbGluYS1ibHVlOiAjMDYzNDcxO1xuJGNvbG9yLS1yaXZlci1iZWQ6ICM0MjRBNTU7XG4kY29sb3ItLXN0ZWVsLWJsdWU6ICM1RDdFQkI7XG4kY29sb3ItLW1hcmluZXI6ICMxQjRFNzQ7XG4kY29sb3ItLWNoYXRoYW1zLWJsdWU6ICMxQjRFNzQ7XG4kY29sb3ItLWNvcm5mbG93ZXItYmx1ZTogIzFCNEU3NDtcbiRjb2xvci0tcmVnZW50LWJsdWU6ICNBN0MxRTQ7XG5cblxuLy8gRXh0cmFzXG4kY29sb3ItLWNhcm5hdGlvbjogI2I0MTIxMjtcblxuXG4vLyBGb3VuZGF0aW9ucHJlc3MgR2xvYmFsIENvbG9yc1xuLy8gKG1vdmVkIGZyb20gX3NldHRpbmdzLnNjc3MpLlxuJGZvdW5kYXRpb24tcGFsZXR0ZTogKFxuICBwcmltYXJ5OiAkYmxhY2ssXG4gIHNlY29uZGFyeTogI0Y3RjdGNyxcbiAgc3VjY2VzczogIzNhZGI3NixcbiAgd2FybmluZzogI2ZmYWUwMCxcbiAgYWxlcnQ6ICNjYzRiMzcsXG4pO1xuXG5cblxuLy8gQ09MT1IgQUxJQVNFU1xuLy8gVXNlIGFsaWFzZXMgaW5zdGVhZCBvZiBjaGlyYWcgY29sb3IsIHdoZW4gcmVhc29uYWJsZSB0byBkbyBzby5cbi8vIFRoaXMgZW5hYmxlcyBlYXN5IGdsb2JhbCBzd2FwcGluZyBvZiB0aGUgY29sb3IgYXNzaWduZWQgdG8gbWFueSBwbGFjZXMuXG4vLyBUaGVzZSBzaG91bGQgbmV2ZXIgaGF2ZSB0aGUgY29sb3IgbmFtZSBsaWtlICckcmVkLXh4eCcgYXMgdGhhdCBkZWZlYXRzXG4vLyB0aGUgcG9pbnQgb2YgYWxpYXNpbmcgdGhlICRjb2xvci0tcmVkIHZhcmlhYmxlLlxuJGNvbG9yLS1wcmltYXJ5OiAkY29sb3ItLWNhdGFsaW5hLWJsdWU7XG4kY29sb3ItLXNlY29uZGFyeTogJGNvbG9yLS1jaGF0aGFtcy1ibHVlO1xuJGNvbG9yLS10ZXJ0aWFyeTogJGNvbG9yLS1jb3JuZmxvd2VyLWJsdWU7XG4iLCIvKipcbiAqIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4gKiBWZXJzaW9uIDYuNi4zXG4gKiBodHRwczovL2dldC5mb3VuZGF0aW9uXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcbiAqL1xuXG4vLyAtLS0gRGVwZW5kZW5jaWVzIC0tLVxuQGltcG9ydCAndmVuZG9yL25vcm1hbGl6ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2hlbHBlcnMvbWlzc2luZy1kZXBlbmRlbmNpZXMnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9oZWxwZXJzL3RydWUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvY29udGFpbic7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9wdXJnZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9yZW1vdmUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcmVwbGFjZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy90by1saXN0JztcblxuLy8gLS0tIFNldHRpbmdzIC0tLVxuLy8gaW1wb3J0IHlvdXIgb3duIGBzZXR0aW5nc2AgaGVyZSBvclxuLy8gaW1wb3J0IGFuZCBtb2RpZnkgdGhlIGRlZmF1bHQgc2V0dGluZ3MgdGhyb3VnaFxuLy8gQGltcG9ydCAnc2V0dGluZ3Mvc2V0dGluZ3MnO1xuXG4vLyAtLS0gQ29tcG9uZW50cyAtLS1cbi8vIFV0aWxpdGllc1xuQGltcG9ydCAndXRpbC91dGlsJztcbi8vIEdsb2JhbCBzdHlsZXNcbkBpbXBvcnQgJ2dsb2JhbCc7XG5AaW1wb3J0ICdmb3Jtcy9mb3Jtcyc7XG5AaW1wb3J0ICd0eXBvZ3JhcGh5L3R5cG9ncmFwaHknO1xuXG4vLyBHcmlkc1xuQGltcG9ydCAnZ3JpZC9ncmlkJztcbkBpbXBvcnQgJ3h5LWdyaWQveHktZ3JpZCc7XG4vLyBHZW5lcmljIGNvbXBvbmVudHNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnV0dG9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnV0dG9uLWdyb3VwJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2xvc2UtYnV0dG9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbGFiZWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy9wcm9ncmVzcy1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy9zbGlkZXInO1xuQGltcG9ydCAnY29tcG9uZW50cy9zd2l0Y2gnO1xuQGltcG9ydCAnY29tcG9uZW50cy90YWJsZSc7XG4vLyBCYXNpYyBjb21wb25lbnRzXG5AaW1wb3J0ICdjb21wb25lbnRzL2JhZGdlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnJlYWRjcnVtYnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jYWxsb3V0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2FyZCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Ryb3Bkb3duJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcGFnaW5hdGlvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Rvb2x0aXAnO1xuXG4vLyBDb250YWluZXJzXG5AaW1wb3J0ICdjb21wb25lbnRzL2FjY29yZGlvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL21lZGlhLW9iamVjdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL29yYml0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcmVzcG9uc2l2ZS1lbWJlZCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RhYnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy90aHVtYm5haWwnO1xuLy8gTWVudS1iYXNlZCBjb250YWluZXJzXG5AaW1wb3J0ICdjb21wb25lbnRzL21lbnUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZW51LWljb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9hY2NvcmRpb24tbWVudSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2RyaWxsZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Ryb3Bkb3duLW1lbnUnO1xuXG4vLyBMYXlvdXQgY29tcG9uZW50c1xuQGltcG9ydCAnY29tcG9uZW50cy9vZmYtY2FudmFzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcmV2ZWFsJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3RpY2t5JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGl0bGUtYmFyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdG9wLWJhcic7XG5cbi8vIEhlbHBlcnNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZmxvYXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9mbGV4JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdmlzaWJpbGl0eSc7XG5AaW1wb3J0ICdwcm90b3R5cGUvcHJvdG90eXBlJztcblxuXG5AbWl4aW4gZm91bmRhdGlvbi1ldmVyeXRoaW5nKFxuICAkZmxleDogdHJ1ZSxcbiAgJHByb3RvdHlwZTogZmFsc2UsXG4gICR4eS1ncmlkOiAkeHktZ3JpZFxuKSB7XG4gIEBpZiAkZmxleCB7XG4gICAgJGdsb2JhbC1mbGV4Ym94OiB0cnVlICFnbG9iYWw7XG4gIH1cblxuICBAaWYgJHh5LWdyaWQge1xuICAgICR4eS1ncmlkOiB0cnVlICFnbG9iYWw7XG4gIH1cblxuICAvLyBHbG9iYWwgc3R5bGVzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mb3JtcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10eXBvZ3JhcGh5O1xuXG4gIC8vIEdyaWRzXG4gIEBpZiBub3QgJGZsZXgge1xuICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tZ3JpZDtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGlmICR4eS1ncmlkIHtcbiAgICAgIEBpbmNsdWRlIGZvdW5kYXRpb24teHktZ3JpZC1jbGFzc2VzO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtZ3JpZDtcbiAgICB9XG4gIH1cblxuICAvLyBHZW5lcmljIGNvbXBvbmVudHNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uLWdyb3VwO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1sYWJlbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1wcm9ncmVzcy1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc2xpZGVyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXN3aXRjaDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJsZTtcbiAgLy8gQmFzaWMgY29tcG9uZW50c1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJhZGdlO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJyZWFkY3J1bWJzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNhbGxvdXQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2FyZDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1wYWdpbmF0aW9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRvb2x0aXA7XG5cbiAgLy8gQ29udGFpbmVyc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZWRpYS1vYmplY3Q7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tb3JiaXQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRodW1ibmFpbDtcbiAgLy8gTWVudS1iYXNlZCBjb250YWluZXJzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51LWljb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJpbGxkb3duLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudTtcblxuICAvLyBMYXlvdXQgY29tcG9uZW50c1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW9mZi1jYW52YXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmV2ZWFsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXN0aWNreTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10aXRsZS1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9wLWJhcjtcblxuICAvLyBIZWxwZXJzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxvYXQtY2xhc3NlcztcbiAgQGlmICRmbGV4IHsgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWNsYXNzZXM7IH1cbiAgQGluY2x1ZGUgZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXM7XG4gIEBpZiAkcHJvdG90eXBlIHsgQGluY2x1ZGUgZm91bmRhdGlvbi1wcm90b3R5cGUtY2xhc3NlczsgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJyZWFrcG9pbnRzXG4vLy8vXG5cbi8vLyBBIGxpc3Qgb2YgbmFtZWQgYnJlYWtwb2ludHMuIFlvdSBjYW4gdXNlIHRoZXNlIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHF1aWNrbHkgY3JlYXRlIG1lZGlhIHF1ZXJpZXMuXG4vLy8gQHR5cGUgTWFwXG4kYnJlYWtwb2ludHM6IChcbiAgc21hbGw6IDAsXG4gIG1lZGl1bTogNjQwcHgsXG4gIGxhcmdlOiAxMDI0cHgsXG4gIHhsYXJnZTogMTIwMHB4LFxuICB4eGxhcmdlOiAxNDQwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQSBsaXN0IG9mIG5hbWVkIEhpRFBJIGJyZWFrcG9pbnRzLiBZb3UgY2FuIHVzZSB0aGVzZSB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBxdWlja2x5IGNyZWF0ZSBtZWRpYSBxdWVyaWVzIGZvciByZXNvbHV0aW9ucy5cbi8vLyBWYWx1ZXMgbXVzdCByZXByZXNlbnQgdGhlIGRldmljZSBwaXhlbHMgLyB3ZWIgcGl4ZWxzIHJhdGlvbiBhbmQgYmUgdW5pdGxlc3Mgb3IgaW4gRFBQWC5cbi8vLyBAdHlwZSBNYXBcbiRicmVha3BvaW50cy1oaWRwaTogKFxuICBoaWRwaS0xOiAxLFxuICBoaWRwaS0xLTU6IDEuNSxcbiAgaGlkcGktMjogMixcbiAgcmV0aW5hOiAyLFxuICBoaWRwaS0zOiAzXG4pICFkZWZhdWx0O1xuXG4vLy8gVGhlIGxhcmdlc3QgbmFtZWQgYnJlYWtwb2ludCBpbiB3aGljaCB0byBpbmNsdWRlIHByaW50IGFzIGEgbWVkaWEgdHlwZVxuLy8vIEB0eXBlIEtleXdvcmRcbiRwcmludC1icmVha3BvaW50OiBsYXJnZSAhZGVmYXVsdDtcblxuJC16Zi16ZXJvLWJyZWFrcG9pbnQ6IHNtYWxsICFkZWZhdWx0O1xuXG4kLXpmLWJyZWFrcG9pbnRzLWtleXM6IG1hcC10by1saXN0KCRicmVha3BvaW50cywgJ2tleXMnKTtcblxuQGlmIG50aChtYXAtdmFsdWVzKCRicmVha3BvaW50cyksIDEpICE9IDAge1xuICBAZXJyb3IgJ1RoZSBmaXJzdCBrZXkgaW4gdGhlICRicmVha3BvaW50cyBtYXAgbXVzdCBoYXZlIGEgdmFsdWUgb2YgXCIwXCIuJztcbn1cbkBlbHNlIHtcbiAgJC16Zi16ZXJvLWJyZWFrcG9pbnQ6IG50aChtYXAta2V5cygkYnJlYWtwb2ludHMpLCAxKTtcbn1cblxuLy8vIEFsbCBvZiB0aGUgbmFtZXMgaW4gdGhpcyBsaXN0IHdpbGwgYmUgb3V0cHV0IGFzIGNsYXNzZXMgaW4geW91ciBDU1MsIGxpa2UgYC5zbWFsbC0xMmAsIGAubWVkaXVtLTZgLCBhbmQgc28gb24uIEVhY2ggdmFsdWUgaW4gdGhpcyBsaXN0IG11c3QgYWxzbyBiZSBpbiB0aGUgYCRicmVha3BvaW50c2AgbWFwLlxuLy8vIEB0eXBlIExpc3RcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UpICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGVzIGEgbWVkaWEgcXVlcnkgc3RyaW5nIG1hdGNoaW5nIHRoZSBpbnB1dCB2YWx1ZS4gUmVmZXIgdG8gdGhlIGRvY3VtZW50YXRpb24gZm9yIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBzZWUgd2hhdCB0aGUgcG9zc2libGUgaW5wdXRzIGFyZS5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWwgW3NtYWxsXSAtIEJyZWFrcG9pbnQgbmFtZSwgb3IgcHgsIHJlbSwgb3IgZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbkBmdW5jdGlvbiBicmVha3BvaW50KCR2YWw6ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gIC8vIFdlYiBzdGFuZGFyZCBQaXhlbHMgcGVyIGluY2guICgxZGRweCAvICRzdGQtd2ViLWRwaSkgPSAxZHBpXG4gIC8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvY3NzLXZhbHVlcy0zLyNhYnNvbHV0ZS1sZW5ndGhzXG4gICRzdGQtd2ViLWRwaTogOTY7XG5cbiAgLy8gU2l6ZSBvciBrZXl3b3JkXG4gICRicDogbnRoKCR2YWwsIDEpO1xuICAvLyBWYWx1ZSBvZiB0aGUgZm9sbG93aW5nIGJyZWFrcG9pbnRcbiAgJGJwLW5leHQ6IG51bGw7XG4gIC8vIFZhbHVlIGZvciBtYXgtd2lkdGggbWVkaWEgcXVlcmllc1xuICAkYnAtbWluOiBudWxsO1xuICAvLyBWYWx1ZSBmb3IgbWluLXdpZHRoIG1lZGlhIHF1ZXJpZXNcbiAgJGJwLW1heDogbnVsbDtcbiAgLy8gRGlyZWN0aW9uIG9mIG1lZGlhIHF1ZXJ5ICh1cCwgZG93biwgb3Igb25seSlcbiAgJGRpcjogaWYobGVuZ3RoKCR2YWwpID4gMSwgbnRoKCR2YWwsIDIpLCB1cCk7XG4gIC8vIElmIG5hbWVkLCBuYW1lIG9mIHRoZSBicmVha3BvaW50XG4gICRuYW1lOiBudWxsO1xuICAvLyBJZiB0aGUgYnJlYWtwb2ludCBpcyBhIEhpRFBJIGJyZWFrcG9pbnRcbiAgJGhpZHBpOiBmYWxzZTtcblxuICAvLyBPcmllbnRhdGlvbiBtZWRpYSBxdWVyaWVzIGhhdmUgYSB1bmlxdWUgc3ludGF4XG4gIEBpZiAkYnAgPT0gJ2xhbmRzY2FwZScgb3IgJGJwID09ICdwb3J0cmFpdCcge1xuICAgIEByZXR1cm4gJyhvcmllbnRhdGlvbjogI3skYnB9KSc7XG4gIH1cblxuICAvLyBJZiBhIGJyZWFrcG9pbnQgbmFtZSBpcyBnaXZlbiwgZ2V0IGl0cyB2YWx1ZSBmcm9tIHRoZSAkYnJlYWtwb2ludHMvJGJyZWFrcG9pbnRzLWhpZHBpIG1hcC5cbiAgQGlmIHR5cGUtb2YoJGJwKSA9PSAnc3RyaW5nJyB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJGJwKSB7XG4gICAgICAkbmFtZTogJGJwO1xuICAgICAgJGJwOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICAgICAgJGJwLW5leHQ6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgICB9XG4gICAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLWhpZHBpLCAkYnApIHtcbiAgICAgICRuYW1lOiAkYnA7XG4gICAgICAkYnA6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLWhpZHBpLCAkbmFtZSk7XG4gICAgICAkYnAtbmV4dDogLXpmLW1hcC1uZXh0LW51bWJlcigkYnJlYWtwb2ludHMtaGlkcGksICRicCk7XG4gICAgICAkaGlkcGk6IHRydWU7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRicDogMDtcbiAgICAgIEB3YXJuICdicmVha3BvaW50KCk6IFwiI3skdmFsfVwiIGlzIG5vdCBkZWZpbmVkIGluIHlvdXIgYCRicmVha3BvaW50c2Agb3IgYCRicmVha3BvaW50cy1oaWRwaWAgc2V0dGluZy4nO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBub3QgJG5hbWUgYW5kICRkaXIgPT0gJ29ubHknIHtcbiAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gYG9ubHlgIHJhbmdlLic7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG5cbiAgLy8gT25seSAnb25seScgYW5kICd1cCcgaGF2ZSBhIG1pbiBsaW1pdC5cbiAgQGlmICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ3VwJyB7XG4gICAgJGJwLW1pbjogaWYoJGhpZHBpLCBzdHJpcC11bml0KCRicCksIC16Zi1icC10by1lbSgkYnApKTtcbiAgfVxuICAvLyBPbmx5ICdvbmx5JyBhbmQgJ2Rvd24nIGhhdmUgYSBtYXggbGltaXQuXG4gIEBpZiAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICdkb3duJyB7XG4gICAgLy8gSWYgdGhlIGJyZWFrcG9pbnQgaXMgYSB2YWx1ZSwgdXNlIGl0IGFzIG1heCBsaW1pdC5cbiAgICBAaWYgbm90ICRuYW1lIHtcbiAgICAgICRicC1tYXg6IGlmKCRoaWRwaSwgc3RyaXAtdW5pdCgkYnApLCAtemYtYnAtdG8tZW0oJGJwKSk7XG4gICAgfVxuICAgIC8vIElmIHRoZSBicmVha3BvaW50IGlzIG5hbWVkLCB0aGUgbWF4IGxpbWl0IGlzIHRoZSBmb2xsb3dpbmcgYnJlYWtwb2ludCAtIDFweC5cbiAgICBAZWxzZSBpZiAkYnAtbmV4dCB7XG4gICAgICAvLyBNYXggdmFsdWUgaXMgMC4ycHggdW5kZXIgdGhlIG5leHQgYnJlYWtwb2ludCAoMC4wMiAvIDE2ID0gMC4wMDEyNSkuXG4gICAgICAvLyBVc2UgYSBwcmVjaXNpb24gdW5kZXIgMXB4IHRvIHN1cHBvcnQgYnJvd3NlciB6b29tLCBidXQgbm90IHRvIGxvdyB0byBhdm9pZCByb3VuZGluZy5cbiAgICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vZm91bmRhdGlvbi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMTMxM1xuICAgICAgJGJwLW1heDogaWYoJGhpZHBpLCAkYnAtbmV4dCAtICgxLyRzdGQtd2ViLWRwaSksIC16Zi1icC10by1lbSgkYnAtbmV4dCkgLSAwLjAwMTI1KTtcbiAgICB9XG4gIH1cblxuICAvLyBHZW5lcmF0ZSB0aGUgbWVkaWEgcXVlcnkgc3RyaW5nIGZyb20gbWluIGFuZCBtYXggbGltaXRzLlxuICBAaWYgJGhpZHBpIHtcbiAgICAvLyBHZW5lcmF0ZSB2YWx1ZXMgaW4gRFBJIGluc3RlYWQgb2YgRFBQWCBmb3IgYW4gSUU5LTExL09wZXJhIG1pbmkgY29tcGF0aWJpbGl0eS5cbiAgICAvLyBTZWUgaHR0cHM6Ly9jYW5pdXNlLmNvbS8jZmVhdD1jc3MtbWVkaWEtcmVzb2x1dGlvblxuICAgICRicC1taW4tZHBpOiBpZigkYnAtbWluLCAkYnAtbWluICogJHN0ZC13ZWItZHBpICogMWRwaSwgJGJwLW1pbik7XG4gICAgJGJwLW1heC1kcGk6IGlmKCRicC1tYXgsICRicC1tYXggKiAkc3RkLXdlYi1kcGkgKiAxZHBpLCAkYnAtbWF4KTtcbiAgICBAcmV0dXJuIHpmLXN0ci1qb2luKFxuICAgICAgLXpmLWJwLWpvaW4oJGJwLW1pbiwgJGJwLW1heCwgJy13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbycsICctd2Via2l0LW1heC1kZXZpY2UtcGl4ZWwtcmF0aW8nKSxcbiAgICAgIC16Zi1icC1qb2luKCRicC1taW4tZHBpLCAkYnAtbWF4LWRwaSwgJ21pbi1yZXNvbHV0aW9uJywgJ21heC1yZXNvbHV0aW9uJyksXG4gICAgICAnLCAnKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiAtemYtYnAtam9pbigkYnAtbWluLCAkYnAtbWF4KTtcbiAgfVxufVxuXG4vLy8gV3JhcHMgYSBtZWRpYSBxdWVyeSBhcm91bmQgdGhlIGNvbnRlbnQgeW91IHB1dCBpbnNpZGUgdGhlIG1peGluLiBUaGlzIG1peGluIGFjY2VwdHMgYSBudW1iZXIgb2YgdmFsdWVzOlxuLy8vICAtIElmIGEgc3RyaW5nIGlzIHBhc3NlZCwgdGhlIG1peGluIHdpbGwgbG9vayBmb3IgaXQgaW4gdGhlIGAkYnJlYWtwb2ludHNgIGFuZCBgJGJyZWFrcG9pbnRzLWhpZHBpYCBtYXBzLCBhbmQgdXNlIGEgbWVkaWEgcXVlcnkgdGhlcmUuXG4vLy8gIC0gSWYgYSBwaXhlbCB2YWx1ZSBpcyBwYXNzZWQsIGl0IHdpbGwgYmUgY29udmVydGVkIHRvIGFuIGVtIHZhbHVlIHVzaW5nIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgYXMgdGhlIGJhc2UuXG4vLy8gIC0gSWYgYSByZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdW5pdCB3aWxsIGJlIGNoYW5nZWQgdG8gZW0uXG4vLy8gIC0gSWYgYW4gZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdmFsdWUgd2lsbCBiZSB1c2VkIGFzLWlzLlxuLy8vXG4vLy8gSWYgbXVsdGlwbGUgdmFsdWVzIGFyZSBwYXNzZWQsIHRoZSBtaXhpbiB3aWxsIGdlbmVyYXRlIGEgbWVkaWEgcXVlcnkgZm9yIGVhY2ggb2YgdGhlbSBhcyBkZXNjcmliZWQgYWJvdmUuXG4vLy8gU2luY2UgdGhlIGNvbnRlbnQgaXMgZHVwbGljYXRlZCBmb3IgZWFjaCBicmVha3BvaW50LCB0aGlzIG1peGluIHNob3VsZCBvbmx5IGJlIHVzZWQgd2l0aCBwcm9wZXJ0aWVzIHRoYXRcbi8vLyBjaGFuZ2UgYWNyb3NzIGJyZWFrcG9pbnRzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbHVlcy4uLiAtIEJyZWFrcG9pbnQgbmFtZSBvciBweC9yZW0vZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbi8vL1xuLy8vIEBvdXRwdXQgSWYgdGhlIGJyZWFrcG9pbnQgaXMgXCIwcHggYW5kIGxhcmdlclwiLCBvdXRwdXRzIHRoZSBjb250ZW50IGFzLWlzLiBPdGhlcndpc2UsIG91dHB1dHMgdGhlIGNvbnRlbnQgd3JhcHBlZCBpbiBhIG1lZGlhIHF1ZXJ5LlxuQG1peGluIGJyZWFrcG9pbnQoJHZhbHVlcy4uLikge1xuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIGxlbmd0aCgkdmFsdWVzKSB7XG4gICAgJHZhbHVlOiBudGgoJHZhbHVlcywgJGkpO1xuICAgICRzdHI6IGJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgICAkYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgbnRoKCR2YWx1ZSwgMSkpO1xuICAgICRwYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgJHByaW50LWJyZWFrcG9pbnQpO1xuICAgIC8vIERpcmVjdGlvbiBvZiBtZWRpYSBxdWVyeSAodXAsIGRvd24sIG9yIG9ubHkpXG4gICAgJGRpcjogaWYobGVuZ3RoKCR2YWx1ZSkgPiAxLCBudGgoJHZhbHVlLCAyKSwgdXApO1xuXG4gICAgJG9sZC16Zi1zaXplOiBudWxsO1xuXG4gICAgLy8gTWFrZSBicmVha3BvaW50IHNpemUgYXZhaWxhYmxlIGFzIGEgdmFyaWFibGVcbiAgICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkge1xuICAgICAgJG9sZC16Zi1zaXplOiAkLXpmLXNpemU7XG4gICAgfVxuICAgICQtemYtc2l6ZTogbnRoKCR2YWx1ZSwgMSkgIWdsb2JhbDsgLy8gZ2V0IHRoZSBmaXJzdCB2YWx1ZSB0byBhY2NvdW50IGZvciBgb25seWAgYW5kIGBkb3duYCBrZXl3b3Jkc1xuXG4gICAgLy8gSWYgJHN0ciBpcyBzdGlsbCBhbiBlbXB0eSBzdHJpbmcsIG5vIG1lZGlhIHF1ZXJ5IGlzIG5lZWRlZFxuICAgIEBpZiAkc3RyID09ICcnIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgIC8vIE90aGVyd2lzZSwgd3JhcCB0aGUgY29udGVudCBpbiBhIG1lZGlhIHF1ZXJ5XG4gICAgQGVsc2Uge1xuICAgICAgLy8gRm9yIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiBvciBlcXVhbCB0byAkcHJpbnQtYnJlYWtwb2ludCwgYWRkIHByaW50IHRvIHRoZSBtZWRpYSB0eXBlc1xuICAgICAgLy8gZ2VuZXJhdGUgcHJpbnQgaWYgdGhlIGJyZWFrcG9pbnQgYWZmZWN0cyB0aGUgcHJpbnQtYnJlYWtwb2ludCAob3Igc21hbGxlcikuXG4gICAgICAvLyBUaGlzIG1lYW5zIHRoZSBjdXJyZW50IGNvbmRpdGlvbiBvbmx5IG5lZWRzIHRvIGJlIGV4dGVuZGVkIHNvICdkb3duJyBhbHdheXMgZ2VuZXJhdGVzIHByaW50LlxuICAgICAgQGlmICRicCAhPSBudWxsIGFuZCAoJGJwIDw9ICRwYnAgb3IgJGRpciA9PSBkb3duKSB7XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICQtemYtc2l6ZTogJG9sZC16Zi1zaXplICFnbG9iYWw7XG4gIH1cbn1cblxuLy8vIENvbnZlcnRzIHRoZSBicmVha3BvaW50cyBtYXAgdG8gYSBVUkwtZW5jb2RlZCBzdHJpbmcsIGxpa2UgdGhpczogYGtleTE9dmFsdWUxJmtleTI9dmFsdWUyYC4gVGhlIHZhbHVlIGlzIHRoZW4gZHJvcHBlZCBpbnRvIHRoZSBDU1MgZm9yIGEgc3BlY2lhbCBgPG1ldGE+YCB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdC4gVGhpcyBpcyBob3cgd2UgdHJhbnNmZXIgdmFsdWVzIGZyb20gU2FzcyB0byBKYXZhU2NyaXB0LCBzbyB0aGV5IGNhbiBiZSBkZWZpbmVkIGluIG9uZSBwbGFjZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIGNvbnZlcnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7U3RyaW5nfSBBIHN0cmluZyBjb250YWluaW5nIHRoZSBtYXAncyBjb250ZW50cy5cbkBmdW5jdGlvbiAtemYtYnAtc2VyaWFsaXplKCRtYXApIHtcbiAgJHN0cjogJyc7XG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICAkc3RyOiAkc3RyICsgJGtleSArICc9JyArIC16Zi1icC10by1lbSgkdmFsdWUpICsgJyYnO1xuICB9XG4gICRzdHI6IHN0ci1zbGljZSgkc3RyLCAxLCAtMik7XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gRmluZCB0aGUgbmV4dCBrZXkgaW4gYSBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byB0cmF2ZXJzZS5cbi8vLyBAcGFyYW0ge01peGVkfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBhIHN0YXJ0aW5nIHBvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge01peGVkfSBUaGUgdmFsdWUgZm9yIHRoZSBrZXkgYWZ0ZXIgYCRrZXlgLCBpZiBgJGtleWAgd2FzIGZvdW5kLiBJZiBgJGtleWAgd2FzIG5vdCBmb3VuZCwgb3IgYCRrZXlgIHdhcyB0aGUgbGFzdCB2YWx1ZSBpbiB0aGUgbWFwLCByZXR1cm5zIGBudWxsYC5cbkBmdW5jdGlvbiAtemYtbWFwLW5leHQoJG1hcCwgJGtleSkge1xuXG4gIC8vIFN0b3JlIHRoZSBrZXlzIG9mIHRoZSBtYXAgYXMgYSBsaXN0XG4gICR2YWx1ZXM6IG1hcC1rZXlzKCRtYXApO1xuXG4gICRpOiAwO1xuXG4gIC8vIElmIHRoZSBLZXkgRXhpc3RzLCBHZXQgdGhlIGluZGV4IG9mIHRoZSBrZXkgd2l0aGluIHRoZSBtYXAgYW5kIGFkZCAxIHRvIGl0IGZvciB0aGUgbmV4dCBicmVha3BvaW50IGluIHRoZSBtYXBcbiAgQGlmIChtYXAtaGFzLWtleSgkbWFwLCAka2V5KSkge1xuICAgICRpOiBpbmRleCgkdmFsdWVzLCAka2V5KSArIDE7XG4gIH1cblxuICAvLyBJZiB0aGUga2V5IGRvZXNuJ3QgZXhpc3QsIG9yIGl0J3MgdGhlIGxhc3Qga2V5IGluIHRoZSBtYXAsIHJldHVybiBudWxsXG4gIEBpZiAoJGkgPiBsZW5ndGgoJG1hcCkgb3IgJGkgPT0gMCkge1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuICAvLyBPdGhlcndpc2UsIHJldHVybiB0aGUgdmFsdWVcbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCBudGgoJHZhbHVlcywgJGkpKTtcbiAgfVxuXG59XG5cbi8vLyBGaW5kIHRoZSBuZXh0IG51bWJlciBpbiBhIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHRyYXZlcnNlLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRudW1iZXIgLSBOdW1iZXIgdG8gdXNlIGFzIGEgc3RhcnRpbmcgcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TWl4ZWR9IFRoZSBudW1iZXIgZm9sbG93aW5nIGAkbnVtYmVyYCwgaWYgYCRudW1iZXJgIHdhcyBmb3VuZC4gSWYgYCRudW1iZXJgIHdhcyBub3QgZm91bmQsIG9yIGAkbnVtYmVyYCB3YXMgdGhlIGJpZ2dlc3QgbnVtYmVyIGluIHRoZSBtYXAsIHJldHVybnMgYG51bGxgLlxuQGZ1bmN0aW9uIC16Zi1tYXAtbmV4dC1udW1iZXIoJG1hcCwgJG51bWJlcikge1xuXG4gICRuZXh0X251bWJlcjogbnVsbDtcblxuICBAZWFjaCAkaywgJHYgaW4gJG1hcCB7XG4gICAgQGlmIHR5cGUtb2YoJHYpID09ICdudW1iZXInIGFuZCAkdiA+ICRudW1iZXIgYW5kICgkbmV4dF9udW1iZXIgPT0gbnVsbCBvciAkdiA8ICRuZXh0X251bWJlcikge1xuICAgICAgJG5leHRfbnVtYmVyOiAkdjtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRuZXh0X251bWJlcjtcbn1cblxuLy8vIFJldHVybiBhIGxpc3Qgb2Ygb3VyIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiAka2V5LiBVc2VmdWwgZm9yIGRlYWxpbmcgd2l0aFxuLy8vIHJlc3BvbnNpdmUgZ3V0dGVycyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGtleSAtIEtleSB0byB1c2UgYXMgbGFzdCBicmVha3BvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge0FycmF5fSBUaGUgbGlzdCBvZiBicmVha3BvaW50cyB1cCB0byBhbmQuIElmICRrZXkgaXMgYXV0bywgcmV0dXJucyBicmVha3BvaW50cyBhYm92ZSB0aGUgemVyb1xuQGZ1bmN0aW9uIC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJGtleSkge1xuICAkbGlzdDogKCk7XG4gICRmb3VuZF9rZXk6IGZhbHNlO1xuXG4gIEBlYWNoICRuYW1lIGluICQtemYtYnJlYWtwb2ludHMta2V5cyB7XG4gICAgQGlmICgkbmFtZSA9PSAka2V5KSB7XG4gICAgICAkZm91bmRfa2V5OiB0cnVlO1xuICAgIH1cbiAgICBAaWYgbm90ICRmb3VuZF9rZXkge1xuICAgICAgJGxpc3Q6IGFwcGVuZCgkbGlzdCwgJG5hbWUpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRsaXN0O1xufVxuXG4vLy8gUmV0dXJuIGEgbGlzdCBvZiBvdXIgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuICRrZXkuIFVzZWZ1bCBmb3IgZGVhbGluZyB3aXRoXG4vLy8gcmVzcG9uc2l2ZSBndXR0ZXJzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCAtIGEgbmFtZWQgb3Igbm9uLW5hbWVkIGJyZWFrcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7QXJyYXl9IFRoZSBsaXN0IG9mIGJyZWFrcG9pbnRzIHVwIHRvIGFuZC4gSWYgJGtleSBpcyBhdXRvLCByZXR1cm5zIGJyZWFrcG9pbnRzIGFib3ZlIHRoZSB6ZXJvXG5AZnVuY3Rpb24gLXpmLWNsb3Nlc3QtbmFtZWQtYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAkbGFzdDogJC16Zi16ZXJvLWJyZWFrcG9pbnQ7XG4gICRmb3VuZDogZmFsc2U7XG5cbiAgJHZhbHVlOiB1bml0bGVzcy1jYWxjKCRicmVha3BvaW50LCAxcHgpO1xuICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgQGlmIHVuaXRsZXNzLWNhbGMoJHZhbCkgPiAkdmFsdWUge1xuICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJGxhc3Q6ICRrZXk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbGFzdDtcbn1cblxuLy8vIEdldCBhIHZhbHVlIGZvciBhIGJyZWFrcG9pbnQgZnJvbSBhIHJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXQgcmVnYXJkbGVzcyBvZiBgJHZhbHVlYC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGhhcyB0aGUga2V5IGAkdmFsdWVgLCB0aGUgZXhhY3QgYnJlYWtwb2ludCB2YWx1ZSBpcyByZXR1cm5lZC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGRvZXMgKm5vdCogaGF2ZSB0aGUgYnJlYWtwb2ludCwgdGhlIHZhbHVlIG1hdGNoaW5nIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGluIHRoZSBjb25maWcgbWFwIGlzIHJldHVybmVkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gUmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSB0byB1c2UuXG4vLy9cbi8vLyBAcmV0dXJuIHtNaXhlZH0gVGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZS5cbkBmdW5jdGlvbiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkdmFsdWUpIHtcbiAgLy8gSWYgdGhlIGdpdmVuIG1hcCBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0XG4gIEBpZiB0eXBlLW9mKCRtYXApID09ICdudW1iZXInIHtcbiAgICBAcmV0dXJuICRtYXA7XG4gIH1cblxuXG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGdsb2JhbGx5XG4gIEBpZiBub3QgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkdmFsdWUpIHtcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInIHtcbiAgICAgICR2YWx1ZTogLXpmLWNsb3Nlc3QtbmFtZWQtYnJlYWtwb2ludCgkdmFsdWUpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgQHJldHVybiBudWxsO1xuICAgIH1cbiAgfVxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBpbiB0aGUgbG9jYWwgY29uZmlnIG1hcFxuICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkbWFwLCAkdmFsdWUpIHtcbiAgICAvLyBJZiBpdCBkb2VzLCBqdXN0IHJldHVybiB0aGUgdmFsdWVcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJHZhbHVlKTtcbiAgfVxuICAvLyBPdGhlcndpc2UsIGZpbmQgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgYW5kIHJldHVybiB0aGF0IHZhbHVlXG4gIEBlbHNlIHtcbiAgICAkYW5jaG9yOiBudWxsO1xuICAgICRmb3VuZDogZmFsc2U7XG5cbiAgICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICAgIEBpZiBtYXAtaGFzLWtleSgkbWFwLCAka2V5KSB7XG4gICAgICAgICAgJGFuY2hvcjogJGtleTtcbiAgICAgICAgfVxuICAgICAgICBAaWYgJGtleSA9PSAkdmFsdWUge1xuICAgICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkYW5jaG9yKTtcbiAgfVxufVxuXG4vLy8gUmV0dXJuIHRoZSBiZXN0IGJyZWFrcG9pbnQgdG8gdXNlIGFjY29yZGluZyB0byB0aGUgY2FsbGluZyBjb250ZXh0LiBJdCByZXR1cm5zIGluIG9yZGVyOlxuLy8vIDEuIHRoZSBnaXZlbiBgJHZhbHVlYCBhcmd1bWVudCBpZiBpdCBpcyBub3QgbnVsbC5cbi8vLyAyLiB0aGUgZ2xvYmFsIGJyZWFrcG9pbnQgY29udGV4dCBgJC16Zi1zaXplYCBpZiBpdCBpcyBub3QgbnVsbCAobGlrZSBpZiBjYWxsZWQgaW5zaWRlIHRoZW4gYGJyZWFrcG9pbnQoKWAgbWl4aW4pXG4vLy8gMy4gdGhlIGdpdmVuIGAkZGVmYXVsdGAgYXJndW1lbnQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR2YWx1ZSBbbnVsbF0gLSBCcmVha3BvaW50IHRvIHVzZSBpbiBwcmlvcml0eSBpZiBub24tbnVsbC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkZWZhdWx0IFtudWxsXSAtIEJyZWFrcG9pbnQgdG8gdXNlIGJ5IGRlZmF1bHQgaWYgbm8gb3RoZXIgdmFsdWUgY2FuIGJlIHVzZWQuXG4vLy9cbi8vLyBAcmV0dXJuIHtLZXl3b3JkfSBUaGUgcmVzb2x2ZWQgYnJlYWtwb2ludC5cbkBmdW5jdGlvbiAtemYtY3VycmVudC1icmVha3BvaW50KCR2YWx1ZTogbnVsbCwgJGRlZmF1bHQ6IG51bGwpIHtcbiAgQGlmICgkdmFsdWUgIT0gbnVsbCkge1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG4gIEBlbHNlIGlmICh2YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIGFuZCB0eXBlLW9mKCQtemYtc2l6ZSkgIT0gJ251bWJlcicpIGFuZCAkLXpmLXNpemUgIT0gbnVsbCB7XG4gICAgQHJldHVybiAkLXpmLXNpemU7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gJGRlZmF1bHQ7XG4gIH1cbn1cblxuLy8vIFJldHVybiBtZWRpYSBxdWVyeSBzdHJpbmcgZnJvbSB0aGUgZ2l2ZW4gbWluIGFuZC9vciBtYXggbGltaXRzLlxuLy8vIElmIGEgbGltaXQgaXMgZXF1YWwgdG8gYG51bGxgIG9yIGAwYCwgaXQgaXMgaWdub3JlZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWluIFswXSAtIE1pbiBtZWRpYSBxdWVyeSBsaW1pdC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heCBbMF0gLSBNYXggbWVkaWEgcXVlcnkgbGltaXQuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtaW4tbmFtZSBbJ21pbi13aWR0aCddIC0gTmFtZSBvZiB0aGUgbWluIG1lZGlhIHF1ZXJ5IGxpbWl0LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZGVsaW1pdGVyIFsnbWF4LXdpZHRoJ10gLSBOYW1lIG9mIHRoZSBtYXggbWVkaWEgcXVlcnkgbGltaXQuXG4vLy9cbi8vLyBAcmV0dXJucyB7U3RyaW5nfSBNZWRpYSBRdWVyeSBzdHJpbmcuXG5AZnVuY3Rpb24gLXpmLWJwLWpvaW4oXG4gICRtaW46IDAsXG4gICRtYXg6IDAsXG4gICRtaW4tbmFtZTogJ21pbi13aWR0aCcsXG4gICRtYXgtbmFtZTogJ21heC13aWR0aCdcbikge1xuICBAcmV0dXJuIHpmLXN0ci1qb2luKFxuICAgIGlmKCRtaW4gYW5kICRtaW4gPiAwLCAnKCN7JG1pbi1uYW1lfTogI3skbWlufSknLCBudWxsKSxcbiAgICBpZigkbWF4IGFuZCAkbWF4ID4gMCwgJygjeyRtYXgtbmFtZX06ICN7JG1heH0pJywgbnVsbCksXG4gICAgJyBhbmQgJyk7XG59XG5cbiRzbWFsbC11cDogJyc7XG4kc21hbGwtb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHNtYWxsKSB7XG4gICRzbWFsbC11cDogc2NyZWVuO1xuICAkc21hbGwtb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoc21hbGwgb25seSl9Jyk7XG59XG5cbiRtZWRpdW0tdXA6ICcnO1xuJG1lZGl1bS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbWVkaXVtKSB7XG4gICRtZWRpdW0tdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSl9Jyk7XG4gICRtZWRpdW0tb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtIG9ubHkpfScpO1xufVxuXG4kbGFyZ2UtdXA6ICcnO1xuJGxhcmdlLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBsYXJnZSkge1xuICAkbGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlKX0nKTtcbiAgJGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlIG9ubHkpfScpO1xufVxuXG4keGxhcmdlLXVwOiAnJztcbiR4bGFyZ2Utb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHhsYXJnZSkge1xuICAkeGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2UpfScpO1xuICAkeGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSBvbmx5KX0nKTtcbn1cblxuJHh4bGFyZ2UtdXA6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4eGxhcmdlKSB7XG4gICR4eGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4eGxhcmdlKX0nKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCByZXZlYWxcbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiBhIG1vZGFsLlxuLy8vIEB0eXBlIENvbG9yXG4kcmV2ZWFsLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgd2lkdGggb2YgYSBtb2RhbCwgd2l0aCBubyBjbGFzcyBhcHBsaWVkLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC13aWR0aDogNjAwcHggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1heGltdW0gd2lkdGggb2YgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtbWF4LXdpZHRoOiAkZ2xvYmFsLXdpZHRoICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBhIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBhcm91bmQgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gei1pbmRleCBmb3IgbW9kYWxzLiBUaGUgb3ZlcmxheSB1c2VzIHRoaXMgdmFsdWUsIHdoaWxlIHRoZSBtb2RhbCBpdHNlbGYgdXNlcyB0aGlzIHZhbHVlIHBsdXMgb25lLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC16aW5kZXg6IDEwMDUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIG1vZGFsIG92ZXJsYXlzLlxuLy8vIEB0eXBlIENvbG9yXG4kcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNDUpICFkZWZhdWx0O1xuXG5cbi8vIFBsYWNlaG9sZGVyIHNlbGVjdG9yIGZvciBtZWRpdW0tYW5kLXVwIG1vZGFsc1xuLy8gUHJldmVudHMgZHVwbGljYXRlIENTUyB3aGVuIGRlZmluaW5nIG11bHRpcGxlIFJldmVhbCBzaXplc1xuLy8gVGhpcyBzaG91bGQgYmUgaW4gdGhlIHNhbWUgYnJlYWtwb2ludCB0aGVuIGBAbWl4aW4gcmV2ZWFsLW1vZGFsLXdpZHRoYFxuQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgJXJldmVhbC1jZW50ZXJlZCB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuXG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBtb2RhbCBvdmVybGF5LlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBvdmVybGF5LlxuQG1peGluIHJldmVhbC1vdmVybGF5KCRiYWNrZ3JvdW5kOiAkcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZCkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHJldmVhbC16aW5kZXg7XG5cbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi8vLyBBZGRzIGJhc2Ugc3R5bGVzIGZvciBhIG1vZGFsLlxuQG1peGluIHJldmVhbC1tb2RhbC1iYXNlIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICB6LWluZGV4OiAkcmV2ZWFsLXppbmRleCArIDE7XG4gIC8vIFdvcmthcm91bmQgYW5kcm9pZCBicm93c2VyIHotaW5kZXggYnVnXG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblxuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAkcmV2ZWFsLXBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkcmV2ZWFsLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHJldmVhbC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRyZXZlYWwtYmFja2dyb3VuZDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gIH1cblxuICAvLyBNYWtlIHN1cmUgcm93cyBkb24ndCBoYXZlIGEgbWluLXdpZHRoIG9uIHRoZW1cbiAgLmNvbHVtbiB7XG4gICAgbWluLXdpZHRoOiAwO1xuICB9XG5cbiAgLy8gU3RyaXAgbWFyZ2lucyBmcm9tIHRoZSBsYXN0IGl0ZW0gaW4gdGhlIG1vZGFsXG4gID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8vIEFkanVzdHMgdGhlIHdpZHRoIG9mIGEgbW9kYWwuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCAtIFdpZHRoIG9mIHRoZSBtb2RhbC4gR2VuZXJhbGx5IGEgcGVyY2VudGFnZS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heC13aWR0aCBbJHJldmVhbC1tYXgtd2lkdGhdIC0gTWF4aW11bSB3aWR0aCBvZiB0aGUgbW9kYWwuXG5AbWl4aW4gcmV2ZWFsLW1vZGFsLXdpZHRoKFxuICAkd2lkdGg6ICRyZXZlYWwtd2lkdGgsXG4gICRtYXgtd2lkdGg6ICRyZXZlYWwtbWF4LXdpZHRoXG4pIHtcbiAgLy8gRXh0ZW5kcyBtdXN0IGJlIG1hZGUgb3V0c2lkZSBvZiBicmVha3BvaW50cyBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIG5ld2VyIFNhc3MgdmVyc2lvbnMgKGxpYnNhc3MgdjMuNSlcbiAgQGV4dGVuZCAlcmV2ZWFsLWNlbnRlcmVkO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgbWF4LXdpZHRoOiAkbWF4LXdpZHRoO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgZnVsbC1zY3JlZW4gbW9kYWwsIHdoaWNoIHN0cmV0Y2hlcyB0aGUgZnVsbCB3aWR0aCBhbmQgaGVpZ2h0IG9mIHRoZSB3aW5kb3cuXG5AbWl4aW4gcmV2ZWFsLW1vZGFsLWZ1bGxzY3JlZW4ge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG5cbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogbm9uZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICBtYXJnaW4tbGVmdDogMDtcblxuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXJldmVhbCB7XG5cbiAgLy8vIERpc2FibGVzIHRoZSBzY3JvbGwgd2hlbiBSZXZlYWwgaXMgc2hvd24gdG8gcHJldmVudCB0aGUgYmFja2dyb3VuZCBmcm9tIHNoaWZ0aW5nXG4gIGh0bWwuaXMtcmV2ZWFsLW9wZW4ge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47XG5cbiAgICAmLnpmLWhhcy1zY3JvbGwge1xuICAgICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgIH1cblxuICAgIGJvZHkgeyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICB9XG4gIH1cblxuICAvLyBPdmVybGF5XG4gIC5yZXZlYWwtb3ZlcmxheSB7XG4gICAgQGluY2x1ZGUgcmV2ZWFsLW92ZXJsYXk7XG4gIH1cblxuICAvLyBNb2RhbCBjb250YWluZXJcbiAgLnJldmVhbCB7XG4gICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWJhc2U7XG4gICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXdpZHRoKCRyZXZlYWwtd2lkdGgpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDEwMHB4O1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgLy8gUmVtb3ZlIHBhZGRpbmdcbiAgICAmLmNvbGxhcHNlIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLy8gU2l6aW5nIGNsYXNzZXNcbiAgICAmLnRpbnkgIHsgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXdpZHRoKDMwJSk7IH1cbiAgICAmLnNtYWxsIHsgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXdpZHRoKDUwJSk7IH1cbiAgICAmLmxhcmdlIHsgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXdpZHRoKDkwJSk7IH1cblxuICAgIC8vIEZ1bGwtc2NyZWVuIG1vZGVcbiAgICAmLmZ1bGwge1xuICAgICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWZ1bGxzY3JlZW47XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkLXpmLXplcm8tYnJlYWtwb2ludCBvbmx5KSB7XG4gICAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtZnVsbHNjcmVlbjtcbiAgICB9XG5cbiAgICAmLndpdGhvdXQtb3ZlcmxheSB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgfVxuICB9XG59XG4iLCJAbWl4aW4gZm91bmRhdGlvbi1ub3JtYWxpemUoKSB7XG4gIC8qISBub3JtYWxpemUuY3NzIHY4LjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuICAvLyBEb2N1bWVudFxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG5cbiAgaHRtbCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDFcbiAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDJcbiAgfVxuXG4gIC8vIFNlY3Rpb25zXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuXG4gIGJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAgLy8gYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cblxuICBoMSB7XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbWFyZ2luOiAwLjY3ZW0gMDtcbiAgfVxuXG4gIC8vIEdyb3VwaW5nIGNvbnRlbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICAvLyAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cblxuICBociB7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8vIDFcbiAgICBoZWlnaHQ6IDA7IC8vIDFcbiAgICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gMlxuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIHByZSB7XG4gICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvLyAxXG4gICAgZm9udC1zaXplOiAxZW07IC8vIDJcbiAgfVxuXG4gIC8vIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuXG4gIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLy8gMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAgLy8gMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cblxuICBhYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLy8gMVxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvLyAyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvLyAyXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuXG4gIGIsXG4gIHN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cblxuICBjb2RlLFxuICBrYmQsXG4gIHNhbXAge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMWVtOyAvLyAyXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cblxuICBzbWFsbCB7XG4gICAgZm9udC1zaXplOiA4MCU7XG4gIH1cblxuICAvLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAgLy8gYWxsIGJyb3dzZXJzLlxuXG4gIHN1YixcbiAgc3VwIHtcbiAgICBmb250LXNpemU6IDc1JTtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB9XG5cbiAgc3ViIHtcbiAgICBib3R0b206IC0wLjI1ZW07XG4gIH1cblxuICBzdXAge1xuICAgIHRvcDogLTAuNWVtO1xuICB9XG5cbiAgLy8gRW1iZWRkZWQgY29udGVudFxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG5cbiAgaW1nIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIH1cblxuICAvLyBGb3Jtc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG5cbiAgYnV0dG9uLFxuICBpbnB1dCxcbiAgb3B0Z3JvdXAsXG4gIHNlbGVjdCxcbiAgdGV4dGFyZWEge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0OyAvLyAxXG4gICAgZm9udC1zaXplOiAxMDAlOyAvLyAxXG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDFcbiAgICBtYXJnaW46IDA7IC8vIDJcbiAgfVxuXG4gIC8vIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICAvLyAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuXG4gIGJ1dHRvbixcbiAgaW5wdXQgeyAvLyAxXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAgLy8gMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuXG4gIGJ1dHRvbixcbiAgc2VsZWN0IHsgLy8gMVxuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cblxuICBidXR0b24sXG4gIFt0eXBlPVwiYnV0dG9uXCJdLFxuICBbdHlwZT1cInJlc2V0XCJdLFxuICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuXG4gIGJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8vIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cblxuICBidXR0b246LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gICAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuXG4gIGZpZWxkc2V0IHtcbiAgICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gIC8vIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAgLy8gICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgbGVnZW5kIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG4gICAgY29sb3I6IGluaGVyaXQ7IC8vIDJcbiAgICBkaXNwbGF5OiB0YWJsZTsgLy8gMVxuICAgIG1heC13aWR0aDogMTAwJTsgLy8gMVxuICAgIHBhZGRpbmc6IDA7IC8vIDNcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvLyAxXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuXG4gIHByb2dyZXNzIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cblxuICB0ZXh0YXJlYSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAgLy8gMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuXG4gIFt0eXBlPVwiY2hlY2tib3hcIl0sXG4gIFt0eXBlPVwicmFkaW9cIl0ge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgICBwYWRkaW5nOiAwOyAvLyAyXG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG5cbiAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG5cbiAgW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyAxXG4gICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8vIDJcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cblxuICBbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgLy8gMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuXG4gIDo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAxXG4gICAgZm9udDogaW5oZXJpdDsgLy8gMlxuICB9XG5cbiAgLy8gSW50ZXJhY3RpdmVcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuXG4gIGRldGFpbHMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIHN1bW1hcnkge1xuICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgfVxuXG4gIC8vIE1pc2NcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG5cbiAgdGVtcGxhdGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC5cblxuICBbaGlkZGVuXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZSBuby1jb2xvci1saXRlcmFscywgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuXG4vLy8vXG4vLy8gQGdyb3VwIGdsb2JhbFxuLy8vL1xuXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xuXG4vLy8gRm9udCBzaXplIGF0dHJpYnV0ZSBhcHBsaWVkIHRvIGA8aHRtbD5gIGFuZCBgPGJvZHk+YC4gV2UgdXNlIDEwMCUgYnkgZGVmYXVsdCBzbyB0aGUgdmFsdWUgaXMgaW5oZXJpdGVkIGZyb20gdGhlIHVzZXIncyBicm93c2VyIHNldHRpbmdzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgd2lkdGggb2YgeW91ciBzaXRlLiBVc2VkIGJ5IHRoZSBncmlkIHRvIGRldGVybWluZSByb3cgd2lkdGguXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxMjAwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIGFsbCB0eXBlLiBgJGdsb2JhbC1saW5laGVpZ2h0YCBpcyAyNHB4IHdoaWxlIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgaXMgMTZweFxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1saW5laGVpZ2h0OiAxLjUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcnMgdXNlZCBmb3IgYnV0dG9ucywgY2FsbG91dHMsIGxpbmtzLCBldGMuIFRoZXJlIG11c3QgYWx3YXlzIGJlIGEgY29sb3IgY2FsbGVkIGBwcmltYXJ5YC5cbi8vLyBAdHlwZSBNYXBcbiRmb3VuZGF0aW9uLXBhbGV0dGU6IChcbiAgcHJpbWFyeTogIzE3NzliYSxcbiAgc2Vjb25kYXJ5OiAjNzY3Njc2LFxuICBzdWNjZXNzOiAjM2FkYjc2LFxuICB3YXJuaW5nOiAjZmZhZTAwLFxuICBhbGVydDogI2NjNGIzNyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBsaWdodCBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbGlnaHQtZ3JheTogI2U2ZTZlNiAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIG1lZGl1bSBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVkaXVtLWdyYXk6ICNjYWNhY2EgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBkYXJrIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkYXJrLWdyYXk6ICM4YThhOGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBibGFjayB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsYWNrOiAjMGEwYTBhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3Igd2hpdGUgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiR3aGl0ZTogI2ZlZmVmZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgTGlzdFxuJGJvZHktZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuLy8vIFNldCB0byBgdHJ1ZWAgdG8gZW5hYmxlIGFudGlhbGlhc2VkIHR5cGUsIHVzaW5nIHRoZSBgLXdlYmtpdC1mb250LXNtb290aGluZ2AgYW5kIGAtbW96LW9zeC1mb250LXNtb290aGluZ2AgQ1NTIHByb3BlcnRpZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJvZHktYW50aWFsaWFzZWQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgbWFyZ2luIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwYWRkaW5nIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgcG9zaXRpb25pbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcG9zaXRpb246IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3Igbm9ybWFsIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3IgYm9sZCB0eXBlLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIGVsZW1lbnRzIHRoYXQgaGF2ZSBhIGJvcmRlciByYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXJhZGl1czogMCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgbWVudSBzdHlsZXMuIENhbiBiZSBvdmVyd3JpdHRlbiBhdCBpbmRpdmlkdWFsIG1lbnUgY29tcG9uZW50IGxldmVsLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1tZW51LXBhZGRpbmc6IDAuN3JlbSAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBtZW51IHN0eWxlcy4gTmVzdGVkIG1hcmdpbiBmb3Igc3VibWVudS5cbiRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gU2V0cyB0aGUgdGV4dCBkaXJlY3Rpb24gb2YgdGhlIENTUy4gQ2FuIGJlIGVpdGhlciBgbHRyYCBvciBgcnRsYC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHIgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVzIGZsZXhib3ggZm9yIGNvbXBvbmVudHMgdGhhdCBzdXBwb3J0IGl0LlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRnbG9iYWwtZmxleGJveDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZWQgcmVzcG9uc2l2ZSBicmVha3BvaW50cyBmb3IgcHJvdG90eXBlcyBpZiBhcHBsaWNhYmxlXG4vLy8gQHR5cGUgQm9vbGVhblxuJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gQnV0dG9uIGN1cnNvcidzIHZhbHVlLCBgYXV0b2AgYnkgZGVmYXVsdFxuLy8vIEB0eXBlIEtleXdvcmRcbiRnbG9iYWwtYnV0dG9uLWN1cnNvcjogYXV0byAhZGVmYXVsdDtcblxuQGlmIG5vdCBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSB7XG4gIEBlcnJvciAnSW4gJGZvdW5kYXRpb24tcGFsZXR0ZSwgeW91IG11c3QgaGF2ZSBhIGNvbG9yIG5hbWVkIFwicHJpbWFyeVwiLic7XG59XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciB0ZXh0IGRpcmVjdGlvblxuJGdsb2JhbC1sZWZ0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgcmlnaHQsIGxlZnQpO1xuJGdsb2JhbC1yaWdodDogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGxlZnQsIHJpZ2h0KTtcblxuLy8gSW50ZXJuYWwgdmFyaWFibGUgdGhhdCBjb250YWlucyB0aGUgZmxleCBqdXN0aWZ5aW5nIG9wdGlvbnNcbiQtemYtZmxleC1qdXN0aWZ5OiAtemYtZmxleC1qdXN0aWZ5KCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24pO1xuXG4vLy8gR2xvYmFsIHRvbGVyYW5jZSBmb3IgY29sb3IgcGljayBjb250cmFzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2U6IDAgIWRlZmF1bHQ7XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciBjb2xvcnNcbkBpbmNsdWRlIGFkZC1mb3VuZGF0aW9uLWNvbG9ycztcblxuQG1peGluIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcyB7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbm9ybWFsaXplO1xuXG4gIC8vIFRoZXNlIHN0eWxlcyBhcmUgYXBwbGllZCB0byBhIDxtZXRhPiB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdFxuICAuZm91bmRhdGlvbi1tcSB7XG4gICAgZm9udC1mYW1pbHk6ICcjey16Zi1icC1zZXJpYWxpemUoJGJyZWFrcG9pbnRzKX0nO1xuICB9XG5cbiAgaHRtbCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gU2V0IGJveC1zaXppbmcgZ2xvYmFsbHkgdG8gaGFuZGxlIHBhZGRpbmcgYW5kIGJvcmRlciB3aWR0aHNcbiAgKixcbiAgKjo6YmVmb3JlLFxuICAqOjphZnRlciB7XG4gICAgYm94LXNpemluZzogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIERlZmF1bHQgYm9keSBzdHlsZXNcbiAgYm9keSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBiYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodDtcbiAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcblxuICAgIEBpZiAoJGJvZHktYW50aWFsaWFzZWQpIHtcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgICB9XG4gIH1cblxuICBpbWcge1xuICAgIC8vIEdldCByaWQgb2YgZ2FwIHVuZGVyIGltYWdlcyBieSBtYWtpbmcgdGhlbSBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGJ5IGRlZmF1bHRcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgIC8vIEdyaWQgZGVmYXVsdHMgdG8gZ2V0IGltYWdlcyBhbmQgZW1iZWRzIHRvIHdvcmsgcHJvcGVybHlcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7XG4gIH1cblxuICAvLyBNYWtlIHN1cmUgdGV4dGFyZWEgdGFrZXMgb24gaGVpZ2h0IGF1dG9tYXRpY2FsbHlcbiAgdGV4dGFyZWEge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gTWFrZSBzZWxlY3QgZWxlbWVudHMgYXJlIDEwMCUgd2lkdGggYnkgZGVmYXVsdFxuICBzZWxlY3Qge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAvLyBTdHlsZXMgR29vZ2xlIE1hcHMgYW5kIE1hcFF1ZXN0IGVtYmVkcyBwcm9wZXJseVxuICAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLWlkc1xuICAubWFwX2NhbnZhcyxcbiAgLm1xYS1kaXNwbGF5IHtcbiAgICBpbWcsXG4gICAgZW1iZWQsXG4gICAgb2JqZWN0IHtcbiAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IDxidXR0b24+IHN0eWxlcyBjcmVhdGVkIGJ5IG1vc3QgYnJvd3NlcnNcbiAgYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjdXJzb3I6ICRnbG9iYWwtYnV0dG9uLWN1cnNvcjtcbiAgfVxuXG4gIC8vIFByZXZlbnQgdGV4dCBvdmVyZmxvdyBvbiBwcmVcbiAgcHJlIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuXG4gIC8vIE1ha2UgcmVzZXQgaW5oZXJpdCBmb250LWZhbWlseSBpbnN0ZWFkIG9mIHNldHRpbmdzIHNhbnMtc2VyaWZcbiAgYnV0dG9uLFxuICBpbnB1dCxcbiAgb3B0Z3JvdXAsXG4gIHNlbGVjdCxcbiAgdGV4dGFyZWEge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gSW50ZXJuYWwgY2xhc3NlcyB0byBzaG93L2hpZGUgZWxlbWVudHMgaW4gSmF2YVNjcmlwdFxuICAuaXMtdmlzaWJsZSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5pcy1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gQ3JlYXRlcyBhbiBpbm5lciBib3gtc2hhZG93IGZvciBvbmx5IG9uZSBzaWRlXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaWRlIC0gU2lkZSB0aGUgc2hhZG93IGlzIHN1cHBvc2VkIHRvIGFwcGVhci4gQ2FuIGJlIGB0b3BgLCBgbGVmdGAsIGByaWdodGAgb3IgYGJvdHRvbWAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIC0gV2lkdGggZm9yIHRoZSB0YXJnZXQgc2lkZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciBvZiB0aGUgc2hhZG93LlxuQG1peGluIGlubmVyLXNpZGUtc2hhZG93KFxuICAkc2lkZTogYm90dG9tLFxuICAkc2l6ZTogMjBweCxcbiAgJGNvbG9yOiByZ2JhKCRibGFjaywgMC4yNSlcbikge1xuXG4gICRoZWxwZXI6IHJvdW5kKCRzaXplICogMC42NSk7XG5cbiAgQGlmICgkc2lkZSA9PSB0b3ApIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwICRoZWxwZXIgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gbGVmdCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0ICRoZWxwZXIgMCAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSByaWdodCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0ICgtMSkqJGhlbHBlciAwICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IGJvdHRvbSkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgKC0xKSokaGVscGVyICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBDU1MgdHJpYW5nbGUsIHdoaWNoIGNhbiBiZSB1c2VkIGZvciBkcm9wZG93biBhcnJvd3MsIGRyb3Bkb3duIHBpcHMsIGFuZCBtb3JlLiBVc2UgdGhpcyBtaXhpbiBpbnNpZGUgYSBgJjo6YmVmb3JlYCBvciBgJjo6YWZ0ZXJgIHNlbGVjdG9yLCB0byBhdHRhY2ggdGhlIHRyaWFuZ2xlIHRvIGFuIGV4aXN0aW5nIGVsZW1lbnQuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRyaWFuZ2xlLXNpemUgLSBXaWR0aCBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJHRyaWFuZ2xlLWNvbG9yIC0gQ29sb3Igb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHRyaWFuZ2xlLWRpcmVjdGlvbiAtIERpcmVjdGlvbiB0aGUgdHJpYW5nbGUgcG9pbnRzLiBDYW4gYmUgYHVwYCwgYHJpZ2h0YCwgYGRvd25gLCBvciBgbGVmdGAuXG5AbWl4aW4gY3NzLXRyaWFuZ2xlKFxuICAkdHJpYW5nbGUtc2l6ZSxcbiAgJHRyaWFuZ2xlLWNvbG9yLFxuICAkdHJpYW5nbGUtZGlyZWN0aW9uXG4pIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG5cbiAgYm9yZGVyOiBpbnNldCAkdHJpYW5nbGUtc2l6ZTtcblxuICBjb250ZW50OiAnJztcblxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gZG93bikge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHVwKSB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gcmlnaHQpIHtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBsZWZ0KSB7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIG1lbnUgaWNvbiB3aXRoIGEgc2V0IHdpZHRoLCBoZWlnaHQsIG51bWJlciBvZiBiYXJzLCBhbmQgY29sb3JzLiBUaGUgbWl4aW4gdXNlcyB0aGUgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIHRoZSBiYXJzIHRvIGRldGVybWluZSBzcGFjaW5nLiA8ZGl2IGNsYXNzPVwiZG9jcy1leGFtcGxlLWJ1cmdlclwiPjwvZGl2PlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3ItaG92ZXIgWyRkYXJrLWdyYXldIC0gQ29sb3IgdG8gdXNlIHdoZW4gdGhlIGljb24gaXMgaG92ZXJlZCBvdmVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWzIwcHhdIC0gV2lkdGggb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRoZWlnaHQgWzE2cHhdIC0gSGVpZ2h0IG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2VpZ2h0IFsycHhdIC0gSGVpZ2h0IG9mIGluZGl2aWR1YWwgYmFycyBpbiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhcnMgWzNdIC0gTnVtYmVyIG9mIGJhcnMgaW4gdGhlIGljb24uXG5AbWl4aW4gaGFtYnVyZ2VyKFxuICAkY29sb3I6ICRibGFjayxcbiAgJGNvbG9yLWhvdmVyOiAkZGFyay1ncmF5LFxuICAkd2lkdGg6IDIwcHgsXG4gICRoZWlnaHQ6IDE2cHgsXG4gICR3ZWlnaHQ6IDJweCxcbiAgJGJhcnM6IDNcbikge1xuICAvLyBib3gtc2hhZG93IENTUyBvdXRwdXRcbiAgJHNoYWRvdzogKCk7XG4gICRob3Zlci1zaGFkb3c6ICgpO1xuXG4gIC8vIFNwYWNpbmcgYmV0d2VlbiBiYXJzIGlzIGNhbGN1bGF0ZWQgYmFzZWQgb24gdGhlIHRvdGFsIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiBlYWNoIGJhclxuICAkc3BhY2luZzogKCRoZWlnaHQgLSAoJHdlaWdodCAqICRiYXJzKSkgLyAoJGJhcnMgLSAxKTtcblxuICBAaWYgdW5pdCgkc3BhY2luZykgPT0gJ3B4JyB7XG4gICAgJHNwYWNpbmc6IGZsb29yKCRzcGFjaW5nKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgJHNoYWRvdzogYXBwZW5kKCRzaGFkb3csIDAgJG9mZnNldCAwICRjb2xvciwgY29tbWEpO1xuICB9XG5cbiAgLy8gSWNvbiBjb250YWluZXJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIC8vIEljb24gYmFyc1xuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkd2VpZ2h0O1xuXG4gICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG5cbiAgICBjb250ZW50OiAnJztcbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gIEBpZiAkY29sb3ItaG92ZXIge1xuICAgIC8vIEdlbmVyYXRlIENTU1xuICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAgICRob3Zlci1zaGFkb3c6IGFwcGVuZCgkaG92ZXItc2hhZG93LCAwICRvZmZzZXQgMCAkY29sb3ItaG92ZXIsIGNvbW1hKTtcbiAgICB9XG5cbiAgICAmOmhvdmVyOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaG92ZXI7XG4gICAgICBib3gtc2hhZG93OiAkaG92ZXItc2hhZG93O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBhIGRvd253YXJkLWZhY2luZyB0cmlhbmdsZSBhcyBhIGJhY2tncm91bmQgaW1hZ2UgdG8gYW4gZWxlbWVudC4gVGhlIGltYWdlIGlzIGZvcm1hdHRlZCBhcyBhbiBTVkcsIG1ha2luZyBpdCBlYXN5IHRvIGNoYW5nZSB0aGUgY29sb3IuIEJlY2F1c2UgSW50ZXJuZXQgRXhwbG9yZXIgZG9lc24ndCBzdXBwb3J0IGVuY29kZWQgU1ZHcyBhcyBiYWNrZ3JvdW5kIGltYWdlcywgYSBQTkcgZmFsbGJhY2sgaXMgYWxzbyBpbmNsdWRlZC5cbi8vLyBUaGVyZSBhcmUgdHdvIFBORyBmYWxsYmFja3M6IGEgYmxhY2sgdHJpYW5nbGUgYW5kIGEgd2hpdGUgdHJpYW5nbGUuIFRoZSBvbmUgdXNlZCBkZXBlbmRzIG9uIHRoZSBsaWdodG5lc3Mgb2YgdGhlIGlucHV0IGNvbG9yLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgdHJpYW5nbGUuXG5AbWl4aW4gYmFja2dyb3VuZC10cmlhbmdsZSgkY29sb3I6ICRibGFjaykge1xuICAkcmdiOiAncmdiJTI4I3tyb3VuZChyZWQoJGNvbG9yKSl9LCAje3JvdW5kKGdyZWVuKCRjb2xvcikpfSwgI3tyb3VuZChibHVlKCRjb2xvcikpfSUyOSc7XG5cbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZlcnNpb249JzEuMScgd2lkdGg9JzMyJyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMzIgMjQnPjxwb2x5Z29uIHBvaW50cz0nMCwwIDMyLDAgMTYsMjQnIHN0eWxlPSdmaWxsOiAjeyRyZ2J9Jz48L3BvbHlnb24+PC9zdmc+XCIpO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MFxcMCkge1xuICAgIEBpZiBsaWdodG5lc3MoJGNvbG9yKSA8IDYwJSB7XG4gICAgICAvLyBXaGl0ZSB0cmlhbmdsZVxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUlwSlJFRlVlTnJFa2NrTmdEQU1CQmZSa0V0ME9iUkJCZHNHWFVEZ21RZks0WGhIMm04Y3pRQUF5MjdSM3RzdzRRZmUyeDh1T082b1lMYjZHbE9vcjNHRitzd1VSQU9tVUorUnd0RUpzOVd2VEdFWXhCWHFJMU1RQVpoQ2ZVUUtSekRNVmorVHdyQUlWNmp2U1VFa1lBcjFMU2tjeVRCYi9WK0tZZlg3eEFldXNxM3NMRHRHSDNrRUdBQ1BXSWZsTlpmaFJRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIEJsYWNrIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBTUJKUkVGVWVOckVsbHNPaENBTVJWc3pDOUlselU3S0NtVkhUSnNvTVdZTVV0cHl2OUJnYnVYUUI1WlNkZ0JZWVk0eWNnQml2azhLWUZzUU1mTWlUVEJQNG8zblV6Q0t6T2FiTEpiTHkyL2czMWV2R2tBZ2luUjQvWmVnS0g1cVgzYkpDc2NBM3QweDNrZ081dFFGeWhoRmY1MHhScUZMYnlNVU5KUXpneWpHUy93Z0Nwdktxa1JCcHVXckU0VjlkKzFFNGRQVVhxSWcxMDdTUU9FLzJEUlF4TXdURHlnSUluVkRFVDlUM2xDb2ovNmovVkNtR2paT2wybEtwWjhBQXdEUVA3eklpbURHRlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFwcGxpZXMgdGhlIG1pY3JvIGNsZWFyZml4IGhhY2sgcG9wdWxhcml6ZWQgYnkgTmljb2xhcyBHYWxsYWdoZXIuIEluY2x1ZGUgdGhpcyBtaXhpbiBvbiBhIGNvbnRhaW5lciBpZiBpdHMgY2hpbGRyZW4gYXJlIGFsbCBmbG9hdGVkLCB0byBnaXZlIHRoZSBjb250YWluZXIgYSBwcm9wZXIgaGVpZ2h0LlxuLy8vIFRoZSBjbGVhcmZpeCBpcyBhdWdtZW50ZWQgd2l0aCBzcGVjaWZpYyBzdHlsZXMgdG8gcHJldmVudCBib3JkZXJzIGluIGZsZXhib3ggZW52aXJvbm1lbnRzXG4vLy8gQGxpbmsgaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svIE1pY3JvIENsZWFyZml4IEhhY2tcbi8vLyBAbGluayBodHRwOi8vZGFuaXNhZGVzaWduZXIuY29tL2Jsb2cvZmxleGJveC1jbGVhci1maXgtcHNldWRvLWVsZW1lbnRzLyBGbGV4Ym94IGZpeFxuQG1peGluIGNsZWFyZml4IHtcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgb3JkZXI6IDE7XG4gICAgfVxuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbi8vLyBBZGRzIENTUyBmb3IgYSBcInF1YW50aXR5IHF1ZXJ5XCIgc2VsZWN0b3IgdGhhdCBhdXRvbWF0aWNhbGx5IHNpemVzIGVsZW1lbnRzIGJhc2VkIG9uIGhvdyBtYW55IHRoZXJlIGFyZSBpbnNpZGUgYSBjb250YWluZXIuXG4vLy8gQGxpbmsgaHR0cDovL2FsaXN0YXBhcnQuY29tL2FydGljbGUvcXVhbnRpdHktcXVlcmllcy1mb3ItY3NzIFF1YW50aXR5IFF1ZXJpZXMgZm9yIENTU1xuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXggLSBNYXhpbXVtIG51bWJlciBvZiBpdGVtcyB0byBkZXRlY3QuIFRoZSBoaWdoZXIgdGhpcyBudW1iZXIgaXMsIHRoZSBtb3JlIENTUyB0aGF0J3MgcmVxdWlyZWQgdG8gY292ZXIgZWFjaCBudW1iZXIgb2YgaXRlbXMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZWxlbSBbbGldIC0gVGFnIHRvIHVzZSBmb3Igc2libGluZyBzZWxlY3RvcnMuXG5AbWl4aW4gYXV0by13aWR0aCgkbWF4LCAkZWxlbTogbGkpIHtcbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkbWF4IHtcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCxcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCB+ICN7JGVsZW19IHtcbiAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDEgLyAkaSk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBSZW1vdmVzIHRoZSBmb2N1cyByaW5nIGFyb3VuZCBhbiBlbGVtZW50IHdoZW4gYSBtb3VzZSBpbnB1dCBpcyBkZXRlY3RlZC5cbkBtaXhpbiBkaXNhYmxlLW1vdXNlLW91dGxpbmUge1xuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gJiB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxufVxuXG4vLy8gTWFrZXMgYW4gZWxlbWVudCB2aXN1YWxseSBoaWRkZW4sIGJ1dCBzdGlsbCBhY2Nlc3NpYmxlIHRvIGtleWJvYXJkcyBhbmQgYXNzaXN0aXZlIGRldmljZXMuXG4vLy8gQGxpbmsgaHR0cDovL3Nub29rLmNhL2FyY2hpdmVzL2h0bWxfYW5kX2Nzcy9oaWRpbmctY29udGVudC1mb3ItYWNjZXNzaWJpbGl0eSBIaWRpbmcgQ29udGVudCBmb3IgQWNjZXNzaWJpbGl0eVxuLy8vIEBsaW5rIGh0dHA6Ly9odWdvZ2lyYXVkZWwuY29tLzIwMTYvMTAvMTMvY3NzLWhpZGUtYW5kLXNlZWsvXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRlbmZvcmNlIC0gSWYgYHRydWVgLCB1c2UgYCFpbXBvcnRhbnRgIG9uIGFwcGxpZWQgcHJvcGVydGllc1xuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlKFxuICAkZW5mb3JjZTogdHJ1ZVxuKSB7XG4gICRpbXBvcnRhbnQ6IGlmKCRlbmZvcmNlLCAnIWltcG9ydGFudCcsIG51bGwpO1xuXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAjeyRpbXBvcnRhbnR9O1xuICB3aWR0aDogMXB4ICN7JGltcG9ydGFudH07XG4gIGhlaWdodDogMXB4ICN7JGltcG9ydGFudH07XG4gIHBhZGRpbmc6IDAgI3skaW1wb3J0YW50fTtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAjeyRpbXBvcnRhbnR9O1xuICBjbGlwOiByZWN0KDAsMCwwLDApICN7JGltcG9ydGFudH07XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgI3skaW1wb3J0YW50fTtcbiAgYm9yZGVyOiAwICN7JGltcG9ydGFudH07XG59XG5cbi8vLyBSZXZlcnNlcyB0aGUgQ1NTIG91dHB1dCBjcmVhdGVkIGJ5IHRoZSBgZWxlbWVudC1pbnZpc2libGUoKWAgbWl4aW4uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZW5mb3JjZSAtIElmIGB0cnVlYCwgdXNlIGAhaW1wb3J0YW50YCBvbiBhcHBsaWVkIHByb3BlcnRpZXNcbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZS1vZmYoXG4gICRlbmZvcmNlOiB0cnVlXG4pIHtcbiAgJGltcG9ydGFudDogaWYoJGVuZm9yY2UsICchaW1wb3J0YW50JywgbnVsbCk7XG5cbiAgcG9zaXRpb246IHN0YXRpYyAjeyRpbXBvcnRhbnR9O1xuICB3aWR0aDogYXV0byAjeyRpbXBvcnRhbnR9O1xuICBoZWlnaHQ6IGF1dG8gI3skaW1wb3J0YW50fTtcbiAgb3ZlcmZsb3c6IHZpc2libGUgI3skaW1wb3J0YW50fTtcbiAgY2xpcDogYXV0byAjeyRpbXBvcnRhbnR9O1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsICN7JGltcG9ydGFudH07XG59XG5cbi8vLyBWZXJ0aWNhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIHZlcnRpY2FsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLy8vIEhvcml6b250YWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBob3Jpem9udGFsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbi8vLyBBYnNvbHV0ZWx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGFic29sdXRlLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi8vLyBJdGVyYXRlcyB0aHJvdWdoIGJyZWFrcG9pbnRzIGRlZmluZWQgaW4gYCRicmVha3BvaW50LWNsYXNzZXNgIGFuZCBwcmludHMgdGhlIENTUyBpbnNpZGUgdGhlIG1peGluIGF0IGVhY2ggYnJlYWtwb2ludCdzIG1lZGlhIHF1ZXJ5LiBVc2UgdGhpcyB3aXRoIHRoZSBncmlkLCBvciBhbnkgb3RoZXIgY29tcG9uZW50IHRoYXQgaGFzIHJlc3BvbnNpdmUgY2xhc3Nlcy5cbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHNtYWxsIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIHNraXAgdGhlIGBzbWFsbGAgYnJlYWtwb2ludC4gVXNlIHRoaXMgd2l0aCBjb21wb25lbnRzIHRoYXQgZG9uJ3QgcHJlZml4IGNsYXNzZXMgd2l0aCBgc21hbGwtYCwgb25seSBgbWVkaXVtLWAgYW5kIHVwLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIGl0ZXJhdGUgb3ZlciBicmVha3BvaW50cyB3aXRob3V0IGRvaW5nIHRoZSBtZWRpYSBxdWVyeSBpdHNlbGYuIFVzZWZ1bCBmb3IgbW9yZSBjb21wbGV4IG1lZGlhIHF1ZXJ5IGdlbmVyYXRpb24gYXMgaW4gdGhlIG1hcmdpbiBncmlkLlxuQG1peGluIC16Zi1lYWNoLWJyZWFrcG9pbnQoXG4gICRzbWFsbDogdHJ1ZSxcbiAgJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzOiB0cnVlXG4pIHtcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludC1pbihhdXRvLCAtemYtYm9vbCgkc21hbGwpLCAtemYtYm9vbCgkYXV0by1pbnNlcnQtYnJlYWtwb2ludHMpKSB7XG4gICAgQGNvbnRlbnRcbiAgfTtcbn1cblxuLy8vIEl0ZXJhdGVzIHdpdGggYEBjb250ZW50YCB0aHJvdWdoIHRoZSBnaXZlbiBsaXN0IG9mIGJyZWFrcG9pbnRzIGAkYnJlYWtwb2ludHNgLlxuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TGlzdH0gJGJyZWFrcG9pbnRzIFthdXRvXSAtIEJyZWFrcG9pbnRzIHRvIGl0ZXJhdGVzIG9uLiBJdCBjYW4gYmUgYSBicmVha3BvaW50IG5hbWUsIGxpc3Qgb2YgYnJlYWtwb2ludHMgb3IgYGF1dG9gIGZvciBhbGwgYnJlYWtwb2ludHMuXG4vLy8gQHBhcmFtIHtCb29sZWFufE51bGx9ICR6ZXJvLWJyZWFrcG9pbnQgW251bGxdIC0gV2hldGhlciB0aGUgemVyby1icmVha3BvaW50IChvZnRlbiBgc21hbGxgKSBtdXN0IGJlIGluY2x1ZGVkLiBJZiBgdHJ1ZWAsIGl0IHdpbGwgYWx3YXlzIGJlIGFkZGVkIHRvIHRoZSBsaXN0IGlmIG5vdCBhbHJlYWR5IHRoZXJlLiBJZiBgZmFsc2VgLCBpdCB3aWxsIGFsd2F5cyBiZSByZW1vdmVkLiBEb2VzIG5vdGhpbmcgYnkgZGVmYXVsdC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW58S2V5d29yZH0gJG1lZGlhLXF1ZXJpZXMgW3RydWVdIC0gV2hldGhlciBtZWRpYS1xdWVyaWVzIG11c3QgYmUgZ2VuZXJhdGVkLiBJZiBgZm9yLWxpc3RzYCwgb25seSBnZW5lcmF0ZSBtZWRpYS1xdWVyaWVzIHdoZW4gYCRicmVha3BvaW50c2AgaXMgYSBsaXN0LlxuQG1peGluIC16Zi1lYWNoLWJyZWFrcG9pbnQtaW4oXG4gICRicmVha3BvaW50czogYXV0byxcbiAgJHplcm8tYnJlYWtwb2ludDogbnVsbCxcbiAgJG1lZGlhLXF1ZXJpZXM6IHRydWVcbikge1xuICAkLWxpc3Q6ICgpO1xuICAkLWJyZWFrcG9pbnRzLWlzLWEtbGlzdDogdHJ1ZTtcblxuICAvLyBSZXRyaWV2ZSB0aGUgbGlzdCBvZiBicmVha3BvaW50KHMpIHRvIGl0ZXJhdGUgb24uXG4gIEBpZiAkYnJlYWtwb2ludHMgPT0gYXV0byB7XG4gICAgJC1saXN0OiAkYnJlYWtwb2ludC1jbGFzc2VzO1xuICB9XG4gIEBlbHNlIGlmIHR5cGUtb2YoJGJyZWFrcG9pbnRzKSA9PSAnbGlzdCcge1xuICAgICQtbGlzdDogJGJyZWFrcG9pbnRzO1xuICB9XG4gIEBlbHNlIGlmIHR5cGUtb2YoJGJyZWFrcG9pbnRzKSA9PSAnc3RyaW5nJyB7XG4gICAgJC1saXN0OiAoJGJyZWFrcG9pbnRzKTtcbiAgICAkLWJyZWFrcG9pbnRzLWlzLWEtbGlzdDogZmFsc2U7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciBcIiRicmVha3BvaW50c1wiIGluIFwiLXpmLWVhY2gtYnJlYWtwb2ludC1pbigpXCIuIEdvdCBcIiN7JGJyZWFrcG9pbnRzfVwiICgje3R5cGUtb2YoJGJyZWFrcG9pbnRzKX0pLiBFeHBlY3RlZCBhIGJyZWFrcG9pbnQgbmFtZSwgYSBsaXN0IG9mIGJyZWFrcG9pbnRzIG9yIFwiYXV0b1wiJztcbiAgfVxuXG4gIC8vIEFkZCBvciByZW1vdmUgdGhlIHplcm8gYnJlYWtwb2ludCBhY2NvcmRpbmcgdG8gYCR6ZXJvLWJyZWFrcG9pbnRgXG4gIEBpZiAkemVyby1icmVha3BvaW50ID09IHRydWUge1xuICAgICQtbGlzdDogam9pbigoJC16Zi16ZXJvLWJyZWFrcG9pbnQpLCBzbC1yZW1vdmUoJC1saXN0LCAkLXpmLXplcm8tYnJlYWtwb2ludCkpO1xuICB9XG4gIEBlbHNlIGlmICR6ZXJvLWJyZWFrcG9pbnQgPT0gZmFsc2Uge1xuICAgICQtbGlzdDogc2wtcmVtb3ZlKCQtbGlzdCwgJC16Zi16ZXJvLWJyZWFrcG9pbnQpO1xuICB9XG5cbiAgLy8gSXRlcmF0ZSBvbiBicmVha3BvaW50KHMpXG4gIEBlYWNoICRicCBpbiAkLWxpc3Qge1xuICAgICRvbGQtemYtc2l6ZTogbnVsbDtcbiAgICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkge1xuICAgICAgJG9sZC16Zi1zaXplOiAkLXpmLXNpemU7XG4gICAgfVxuICAgICQtemYtc2l6ZTogJGJwICFnbG9iYWw7XG5cbiAgICBAaWYgKCRtZWRpYS1xdWVyaWVzID09IHRydWVcbiAgICAgIG9yICgkbWVkaWEtcXVlcmllcyA9PSAnZm9yLWxpc3RzJyBhbmQgJC1icmVha3BvaW50cy1pcy1hLWxpc3QpKSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicCkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuXG4gICAgJC16Zi1zaXplOiAkb2xkLXpmLXNpemUgIWdsb2JhbDtcbiAgfVxufVxuXG4vLy8gR2VuZXJhdGUgdGhlIGBAY29udGVudGAgcGFzc2VkIHRvIHRoZSBtaXhpbiB3aXRoIGEgdmFsdWUgYCQtemYtYnAtdmFsdWVgIHJlbGF0ZWQgdG8gYSBicmVha3BvaW50LCBkZXBlbmRpbmcgb24gdGhlIGAkbmFtZWAgcGFyYW1ldGVyOlxuLy8vIC0gRm9yIGEgc2luZ2xlIHZhbHVlLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhpcyB2YWx1ZS5cbi8vLyAtIEZvciBhIGJyZWFrcG9pbnQgbmFtZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgLlxuLy8vIC0gRm9yIFwiYXV0b1wiLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZSBpbiBgJG1hcGAgYW5kIGlzIHBhc3NlZCB0byBgQGNvbnRlbnRgLCB3aGljaCBpcyBtYWRlIHJlc3BvbnNpdmUgZm9yIGVhY2ggYnJlYWtwb2ludCBvZiBgJG1hcGAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8QXJyYXl8S2V5d29yZH0gJG5hbWUgW2F1dG9dIC0gU2luZ2xlIHZhbHVlLCBicmVha3BvaW50IG5hbWUsIG9yIGxpc3Qgb2YgYnJlYWtwb2ludCBuYW1lcyB0byB1c2UuIFwiYXV0b1wiIGJ5IGRlZmF1bHQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gTWFwIG9mIGJyZWFrcG9pbnRzIGFuZCB2YWx1ZXMgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZS5cbkBtaXhpbiAtemYtYnJlYWtwb2ludC12YWx1ZShcbiAgJG5hbWU6IGF1dG8sXG4gICRtYXA6IG51bGxcbikge1xuICBAaWYgJG5hbWUgPT0gYXV0byBhbmQgdHlwZS1vZigkbWFwKSA9PSAnbWFwJyB7XG4gICAgLy8gXCJhdXRvXCJcbiAgICBAZWFjaCAkaywgJHYgaW4gJG1hcCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRrKSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCR2LCAkbWFwKSB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIGJyZWFrcG9pbnQgbmFtZVxuICAgIEBpZiB0eXBlLW9mKCRuYW1lKSA9PSAnc3RyaW5nJyB7XG4gICAgICAkYnAtdmFsdWU6IC16Zi1nZXQtYnAtdmFsKCRtYXAsICRuYW1lKTtcbiAgICAgIEBpZiAkYnAtdmFsdWUgIT0gbnVsbCB7XG4gICAgICAgICRuYW1lOiAkYnAtdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYnJlYWtwb2ludCB2YWx1ZVxuICAgICQtemYtYnAtdmFsdWU6ICRuYW1lICFnbG9iYWw7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vIE1hcmdpbiBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS1iYXNlLWdyaWQtY2xhc3NlcyB7XG5cbiAgLy8gR3JpZCBDb250YWluZXJcbiAgLmdyaWQtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcjtcblxuICAgICYuZmx1aWQge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXIoMTAwJSk7XG4gICAgfVxuXG4gICAgJi5mdWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyKDEwMCUsIDApO1xuICAgIH1cbiAgfVxuXG4gIC8vIEJhc2UgZ3JpZCBzdHlsZXNcbiAgLmdyaWQteCB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZDtcbiAgfVxuXG4gIC5jZWxsIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsKGZ1bGwsICRndXR0ZXItdHlwZTogbm9uZSk7XG5cbiAgICAmLmF1dG8ge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKGF1dG8pO1xuICAgIH1cblxuICAgICYuc2hyaW5rIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShzaHJpbmspO1xuICAgIH1cblxuICB9XG4gIC5ncmlkLXgge1xuICAgID4gLmF1dG8ge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKGF1dG8sICRndXR0ZXItdHlwZTogbm9uZSk7XG4gICAgfVxuXG4gICAgPiAuc2hyaW5rIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZShzaHJpbmssICRndXR0ZXItdHlwZTogbm9uZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gQXV0byB3aWR0aFxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgIC8vIFRoaXMgaXMgYSBiaXQgb2YgYSBoYWNrL3dvcmthcm91bmQsIHNlZSB0aGVzZSBpc3N1ZXMgJiBQUnMgZm9yIHRoZSBiYWNrc3Rvcnk6XG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9pc3N1ZXMvMTAyNDRcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vZm91bmRhdGlvbi9mb3VuZGF0aW9uLXNpdGVzL3B1bGwvMTAyMjIgYW5kXG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMTY0XG4gICAgLmdyaWQteCB7XG4gICAgICAkc3RyOiBcIj4gLiN7JC16Zi1zaXplfS1zaHJpbmssID4gLiN7JC16Zi1zaXplfS1mdWxsXCI7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAkc3RyOiAkc3RyICsgXCIsID4gLiN7JC16Zi1zaXplfS0jeyRpfVwiXG4gICAgICB9XG4gICAgICAjeyRzdHJ9IHtcbiAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgIC8vIFJlc3BvbnNpdmUgXCJhdXRvXCIgbW9kaWZpZXJcbiAgICBAaWYgbm90KCQtemYtc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAgICAgLmdyaWQteCA+IC4jeyQtemYtc2l6ZX0tYXV0byB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwoYXV0bywgJGd1dHRlci10eXBlOiBub25lKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAlLXh5LWNlbGwtYmFzZS1zaHJpbmstaG9yaXpvbnRhbC0jeyQtemYtc2l6ZX0ge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKHNocmluayk7XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSBcInNocmlua1wiIG1vZGlmaWVyXG4gICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgICAgIC5ncmlkLXggPiAuI3skLXpmLXNpemV9LXNocmluayB7XG4gICAgICAgIEBleHRlbmQgJS14eS1jZWxsLWJhc2Utc2hyaW5rLWhvcml6b250YWwtI3skLXpmLXNpemV9O1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoc2hyaW5rLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlc3BvbnNpdmUgd2lkdGggbW9kaWZpZXJzXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgIC5ncmlkLXggPiAuI3skLXpmLXNpemV9LSN7JGl9IHtcbiAgICAgICAgQGV4dGVuZCAlLXh5LWNlbGwtYmFzZS1zaHJpbmstaG9yaXpvbnRhbC0jeyQtemYtc2l6ZX07XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZSgkaSwgJGd1dHRlci10eXBlOiBub25lKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCB3aWR0aCB3aGVuIHVzaW5nIGAuZ3JpZC1tYXJnaW4teGAgbm90IG9uIGAuZ3JpZC14YFxuICAuZ3JpZC1tYXJnaW4teDpub3QoLmdyaWQteCkgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cblxuICAvLyBSZXNldCBoZWlnaHQgd2hlbiB1c2luZyBgLmdyaWQtbWFyZ2luLXlgIG5vdCBvbiBgLmdyaWQteWBcbiAgLmdyaWQtbWFyZ2luLXk6bm90KC5ncmlkLXkpID4gLmNlbGwge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG5AbWl4aW4gLXh5LWJyZWFrcG9pbnQtY2VsbC1jbGFzc2VzKCRjbGFzcy1icmVha3BvaW50LCAkZ3V0dGVyLWJyZWFrcG9pbnQsICR2ZXJ0aWNhbCkge1xuICAkcHJlZml4OiBpZigkY2xhc3MtYnJlYWtwb2ludCA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCwgJycsICcjeyRjbGFzcy1icmVha3BvaW50fS0nKTtcbiAgPiAuI3skcHJlZml4fWF1dG8ge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZShhdXRvLCAkdmVydGljYWw6ICR2ZXJ0aWNhbCk7XG4gIH1cblxuICA+IC4jeyRwcmVmaXh9c2hyaW5rIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoc2hyaW5rLCAkdmVydGljYWw6ICR2ZXJ0aWNhbCk7XG4gIH1cblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAkY2xhc3NuYW1lOiBpZigkdmVydGljYWwsICcuI3skY2xhc3MtYnJlYWtwb2ludH0tI3skaX0nLCAnLiN7JGNsYXNzLWJyZWFrcG9pbnR9LSN7JGl9Jyk7XG5cbiAgICA+ICN7JGNsYXNzbmFtZX0ge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKCRpLCAkdmVydGljYWw6ICR2ZXJ0aWNhbCk7XG4gICAgfVxuICB9XG59XG5cbi8vIE1hcmdpbiBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKFxuICAkZ3V0dGVyLXBvc2l0aW9uOiBsZWZ0IHJpZ2h0LFxuICAkdmVydGljYWw6IGZhbHNlLFxuICAkd3JhcHBpbmctc2VsZWN0b3I6ICcuZ3JpZC1tYXJnaW4teCdcbil7XG4gICN7JHdyYXBwaW5nLXNlbGVjdG9yfSB7XG4gICAgQGluY2x1ZGUgeHktZ3V0dGVycygkbmVnYXRpdmU6IHRydWUsICRndXR0ZXItcG9zaXRpb246ICRndXR0ZXItcG9zaXRpb24pO1xuXG4gICAgLy8gQmFzZSBjZWxsIHN0eWxlc1xuICAgID4gLmNlbGwge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbCgkdmVydGljYWw6ICR2ZXJ0aWNhbCwgJG91dHB1dDogKHNpemUgZ3V0dGVycykpO1xuICAgIH1cblxuICAgIC8vIGJhc2Ugc3R5bGVzIG5lZWQgdG8gYWxsIGJlIGJlZm9yZSB0aGUgYXV0byBhbmQgc2hyaW5rIHN0eWxlc1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgICBAaWYodHlwZS1vZigkZ3JpZC1tYXJnaW4tZ3V0dGVycykgPT0gJ21hcCcgYW5kIG1hcC1oYXMta2V5KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkLXpmLXNpemUpIGFuZCAkLXpmLXNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgPiAuY2VsbCB7XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbCgkdmVydGljYWw6ICR2ZXJ0aWNhbCwgJG91dHB1dDogKHNpemUgZ3V0dGVycykpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcblxuICAgICAgLy8gVGhpcyBpcyBwdXJlbHkgZm9yIHJlc3BvbnNpdmUgZ3V0dGVycyAtIHRoZSBtYXJnaW4gZ3JpZCBoYXMgdG8gZ28gYmFjayBhbmQgYWRqdXN0IHdpZHRocyAob3IgaGVpZ2h0cylcbiAgICAgIC8vIGZvciBhbGwgcHJpb3IgYnJlYWtwb2ludHMuXG4gICAgICAvLyBBcyB0aGVpciBndXR0ZXIgaXMgZGVmaW5lZCB3aXRoIHRoZWlyIHdpZHRoL2hlaWdodCwgZXZlbiBicmVha3BvaW50IHdpdGhvdXQgYSBuZXcgbWFyZ2luIG11c3QgYmVcbiAgICAgIC8vIGdlbmVyYXRlZCB0byBub3QgaGF2aW5nIHRoZWlyIHdpZHRoL2hlaWdodCBvdmVycmlkZWQgYnkgcmUtYWRqdXN0ZWQgc21hbGxlciBicmVha3BvaW50cy5cbiAgICAgIEBpZih0eXBlLW9mKCRncmlkLW1hcmdpbi1ndXR0ZXJzKSA9PSAnbWFwJyBhbmQgbWFwLWhhcy1rZXkoJGdyaWQtbWFyZ2luLWd1dHRlcnMsICQtemYtc2l6ZSkpIHtcbiAgICAgICAgQGVhY2ggJGJwIGluIC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJC16Zi1zaXplKSB7XG4gICAgICAgICAgQGluY2x1ZGUgLXh5LWJyZWFrcG9pbnQtY2VsbC1jbGFzc2VzKCRicCwgJC16Zi1zaXplLCAkdmVydGljYWwpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIC14eS1icmVha3BvaW50LWNlbGwtY2xhc3NlcygkLXpmLXNpemUsICQtemYtc2l6ZSwgJHZlcnRpY2FsKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gUGFkZGluZyBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS1wYWRkaW5nLWdyaWQtY2xhc3NlcyB7XG4gIC5ncmlkLXBhZGRpbmcteCB7XG5cbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW4gZm9yIG5lc3RlZCBncmlkc1xuICAgIC5ncmlkLXBhZGRpbmcteCB7XG4gICAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRuZWdhdGl2ZTogdHJ1ZSk7XG4gICAgfVxuXG4gICAgLy8gTmVnYXRpdmUgbWFyZ2luIGZvciBncmlkcyB3aXRoaW4gYGdyaWQtY29udGFpbmVyL2dyaWQtY29udGFpbmVyLmZsdWlkYFxuICAgIC8vIFRoaXMgYWxsb3dzIG1hcmdpbiBhbmQgcGFkZGluZyBncmlkcyB0byBsaW5lIHVwIHdpdGggZWFjaG90aGVyXG4gICAgLmdyaWQtY29udGFpbmVyOm5vdCguZnVsbCkgPiAmIHtcbiAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlKTtcbiAgICB9XG5cbiAgICAvLyBCYXNlIGNlbGwgc3R5bGVzXG4gICAgPiAuY2VsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXJzOiAkZ3JpZC1wYWRkaW5nLWd1dHRlcnMsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG4gICAgfVxuICB9XG59XG5cbi8vIEJsb2NrIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LWJsb2NrLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQ6IHRydWUsICRwYWRkaW5nLWdyaWQ6IHRydWUpIHtcbiAgQGlmICRwYWRkaW5nLWdyaWQge1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkeHktYmxvY2stZ3JpZC1tYXgge1xuICAgICAgICAuI3skLXpmLXNpemV9LXVwLSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWxheW91dCgkbjogJGksICRzZWxlY3RvcjogJy5jZWxsJywgJGd1dHRlci10eXBlOiBwYWRkaW5nLCAkb3V0cHV0OiAoc2l6ZSkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRtYXJnaW4tZ3JpZCB7XG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICR4eS1ibG9jay1ncmlkLW1heCB7XG4gICAgICAgIC8vIFRoaXMgaXMgcHVyZWx5IGZvciByZXNwb25zaXZlIGd1dHRlcnMgLSB0aGUgbWFyZ2luIGdyaWQgaGFzIHRvIGdvIGJhY2sgYW5kIGFkanVzdCB3aWR0aHMgKG9yIGhlaWdodHMpXG4gICAgICAgIC8vIGZvciBwcmlvciBicmVha3BvaW50cyBiYXNlZCBvbiB0aGUgcmVzcG9uc2l2ZSBndXR0ZXIuXG4gICAgICAgIEBpZih0eXBlLW9mKCRncmlkLW1hcmdpbi1ndXR0ZXJzKSA9PSAnbWFwJyBhbmQgbWFwLWhhcy1rZXkoJGdyaWQtbWFyZ2luLWd1dHRlcnMsICQtemYtc2l6ZSkpIHtcbiAgICAgICAgICBAZWFjaCAkYnAgaW4gLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigkLXpmLXNpemUpIHtcbiAgICAgICAgICAgIEBpZihtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJGJwKSkge1xuICAgICAgICAgICAgICAuZ3JpZC1tYXJnaW4teC4jeyRicH0tdXAtI3skaX0ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtbGF5b3V0KCRuOiAkaSwgJHNlbGVjdG9yOiAnLmNlbGwnLCAkZ3V0dGVyLXR5cGU6IG1hcmdpbiwgJG91dHB1dDogKHNpemUpKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkeHktYmxvY2stZ3JpZC1tYXgge1xuICAgICAgICAuZ3JpZC1tYXJnaW4teC4jeyQtemYtc2l6ZX0tdXAtI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtbGF5b3V0KCRuOiAkaSwgJHNlbGVjdG9yOiAnLmNlbGwnLCAkZ3V0dGVyLXR5cGU6IG1hcmdpbiwgJG91dHB1dDogKHNpemUpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBDb2xsYXBzZSBjbGFzc2VzXG5AbWl4aW4geHktY29sbGFwc2UtZ3JpZC1jbGFzc2VzKCRtYXJnaW4tZ3JpZDogdHJ1ZSwgJHBhZGRpbmctZ3JpZDogdHJ1ZSkge1xuICBAZWFjaCAkYnAgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGlmICRtYXJnaW4tZ3JpZCB7XG4gICAgICAuI3skYnB9LW1hcmdpbi1jb2xsYXBzZSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29sbGFwc2UoJGd1dHRlci10eXBlOiBtYXJnaW4sICRtaW4tYnJlYWtwb2ludDogJGJwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJHBhZGRpbmctZ3JpZCB7XG4gICAgICAuI3skYnB9LXBhZGRpbmctY29sbGFwc2Uge1xuICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbGxhcHNlKCRndXR0ZXItdHlwZTogcGFkZGluZywgJG1pbi1icmVha3BvaW50OiAkYnApO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBPZmZzZXQgY2xhc3Nlc1xuQG1peGluIHh5LW9mZnNldC1jZWxsLWNsYXNzZXMge1xuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgLy8gT2Zmc2V0c1xuICAgICAgJG86ICRpIC0gMTtcblxuICAgICAgLiN7JC16Zi1zaXplfS1vZmZzZXQtI3skb30ge1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLW9mZnNldCgkbywgJGd1dHRlcnM6ICRncmlkLXBhZGRpbmctZ3V0dGVycywgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcbiAgICAgIH1cblxuICAgICAgLmdyaWQtbWFyZ2luLXggPiAuI3skLXpmLXNpemV9LW9mZnNldC0jeyRvfSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtb2Zmc2V0KCRvKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gVmVydGljYWwgR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktdmVydGljYWwtZ3JpZC1jbGFzc2VzKFxuICAkbWFyZ2luLWdyaWQ6IHRydWUsXG4gICRwYWRkaW5nLWdyaWQ6IHRydWVcbikge1xuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgICB9XG4gIH1cblxuICAuZ3JpZC15IHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkKHZlcnRpY2FsLCBmYWxzZSk7XG5cblxuICAgID4gLmNlbGwge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1yZXNldCgpO1xuICAgIH1cblxuICAgID4gLmF1dG8ge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKGF1dG8sICRndXR0ZXItdHlwZTogbm9uZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICB9XG5cbiAgICA+IC5zaHJpbmsge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKHNocmluaywgJGd1dHRlci10eXBlOiBub25lLCAkdmVydGljYWw6IHRydWUpO1xuICAgIH1cblxuXG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAgIC8vIFRoaXMgaXMgYSBiaXQgb2YgYSBoYWNrL3dvcmthcm91bmQsIHNlZSB0aGVzZSBpc3N1ZXMgYW5kIFBScyBmb3IgdGhlIGJhY2tzdG9yeTpcbiAgICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzEwMjQ0XG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vZm91bmRhdGlvbi9mb3VuZGF0aW9uLXNpdGVzL3B1bGwvMTAyMjIgYW5kXG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vZm91bmRhdGlvbi9mb3VuZGF0aW9uLXNpdGVzL3B1bGwvMTAxNjRcbiAgICAgICRzdHI6IFwiPiAuI3skLXpmLXNpemV9LXNocmluaywgPiAuI3skLXpmLXNpemV9LWZ1bGxcIjtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgICRzdHI6ICRzdHIgKyBcIiwgPiAuI3skLXpmLXNpemV9LSN7JGl9XCJcbiAgICAgIH1cbiAgICAgICN7JHN0cn0ge1xuICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgICAvLyBSZXNwb25zaXZlIFwiYXV0b1wiIG1vZGlmaWVyXG4gICAgICBAaWYgbm90KCQtemYtc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAgICAgICA+IC4jeyQtemYtc2l6ZX0tYXV0byB7XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbChhdXRvLCAkZ3V0dGVyLXR5cGU6IG5vbmUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJS14eS1jZWxsLWJhc2Utc2hyaW5rLXZlcnRpY2FsLSN7JC16Zi1zaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShzaHJpbmspO1xuICAgICAgfVxuXG4gICAgICAvLyBSZXNwb25zaXZlIFwic2hyaW5rXCIgbW9kaWZpZXJcbiAgICAgIEBpZiBub3QoJC16Zi1zaXplID09ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gICAgICAgID4gLiN7JC16Zi1zaXplfS1zaHJpbmsge1xuICAgICAgICAgIEBleHRlbmQgJS14eS1jZWxsLWJhc2Utc2hyaW5rLXZlcnRpY2FsLSN7JC16Zi1zaXplfTtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoc2hyaW5rLCAkZ3V0dGVyLXR5cGU6IG5vbmUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gUmVzcG9uc2l2ZSB3aWR0aCBtb2RpZmllcnNcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgICAgPiAuI3skLXpmLXNpemV9LSN7JGl9IHtcbiAgICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay12ZXJ0aWNhbC0jeyQtemYtc2l6ZX07XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKCRpLCAkZ3V0dGVyLXR5cGU6IG5vbmUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cbiAgfVxuXG4gIEBpZiAkcGFkZGluZy1ncmlkIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXkge1xuICAgICAgLy8gTmVnYXRpdmUgbWFyZ2luIGZvciBuZXN0ZWQgZ3JpZHNcbiAgICAgIC5ncmlkLXBhZGRpbmcteSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlLCAkZ3V0dGVyLXBvc2l0aW9uOiB0b3AgYm90dG9tKTtcbiAgICAgIH1cblxuICAgICAgLy8gQmFzZSBjZWxsIHN0eWxlc1xuICAgICAgPiAuY2VsbCB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlcnM6ICRncmlkLXBhZGRpbmctZ3V0dGVycywgJGd1dHRlci10eXBlOiBwYWRkaW5nLCAkZ3V0dGVyLXBvc2l0aW9uOiB0b3AgYm90dG9tKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICBAaW5jbHVkZSB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKHRvcCBib3R0b20sIHRydWUsICcuZ3JpZC1tYXJnaW4teScpO1xuICB9XG5cbn1cblxuQG1peGluIHh5LWZyYW1lLWdyaWQtY2xhc3NlcygkdmVydGljYWwtZ3JpZDogdHJ1ZSwgJG1hcmdpbi1ncmlkOiB0cnVlKSB7XG4gIC8vIEZyYW1lZCBncmlkIHN0eWxlc1xuICAuZ3JpZC1mcmFtZSB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZTtcbiAgfVxuXG4gIC5jZWxsIC5ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgfVxuXG4gIC5jZWxsLWJsb2NrIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKCk7XG4gIH1cblxuICAuY2VsbC1ibG9jay15IHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKHRydWUpO1xuICB9XG5cblxuICAuY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2stY29udGFpbmVyKCk7XG4gIH1cblxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcblxuICAgIC4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lO1xuICAgIH1cblxuICAgIC5jZWxsIC4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICB3aWR0aDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LWNlbGwtYmxvY2sge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jaygpO1xuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jay1jb250YWluZXIoKTtcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LWNlbGwtYmxvY2steSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkdmVydGljYWwtZ3JpZCB7XG4gICAgLmdyaWQteSB7XG4gICAgICAmLmdyaWQtZnJhbWUge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlKTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuICAgICAgICAmLiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKHRydWUpO1xuICAgICAgICB9XG5cbiAgICAgIH1cbiAgICB9XG4gICAgLmNlbGwge1xuICAgICAgLmdyaWQteS5ncmlkLWZyYW1lIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlOyAvLyBTYW1lIGFzIGluY2x1ZGUgd2l0aCAkbmVzdGVkLCBidXQgd2l0aCBsZXNzIGNzc1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuICAgICAgICAuZ3JpZC15LiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7IC8vIFNhbWUgYXMgaW5jbHVkZSB3aXRoICRuZXN0ZWQsIGJ1dCB3aXRoIGxlc3MgY3NzXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGlmICRtYXJnaW4tZ3JpZCB7XG4gICAgQGluY2x1ZGUgeHktbWFyZ2luLWdyaWQtY2xhc3Nlcyh0b3AgYm90dG9tLCB0cnVlLCAnLmdyaWQtbWFyZ2luLXknKTtcbiAgICAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUodHJ1ZSwgZmFsc2UsICRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkaW5jbHVkZS1iYXNlOiBmYWxzZSk7XG4gICAgfVxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcbiAgICAgIC5ncmlkLW1hcmdpbi15LiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlLCBmYWxzZSwgJGdyaWQtbWFyZ2luLWd1dHRlcnMsICQtemYtc2l6ZSwgZmFsc2UpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBGaW5hbCBjbGFzc2VzXG5AbWl4aW4gZm91bmRhdGlvbi14eS1ncmlkLWNsYXNzZXMoXG4gICRiYXNlLWdyaWQ6IHRydWUsXG4gICRtYXJnaW4tZ3JpZDogdHJ1ZSxcbiAgJHBhZGRpbmctZ3JpZDogdHJ1ZSxcbiAgJGJsb2NrLWdyaWQ6IHRydWUsXG4gICRjb2xsYXBzZTogdHJ1ZSxcbiAgJG9mZnNldDogdHJ1ZSxcbiAgJHZlcnRpY2FsLWdyaWQ6IHRydWUsXG4gICRmcmFtZS1ncmlkOiB0cnVlXG4pIHtcblxuICAvLyBCYXNlIGdyaWQgc3R5bGVzXG4gIEBpZigkYmFzZS1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktYmFzZS1ncmlkLWNsYXNzZXMoKTtcbiAgfVxuXG4gIC8vIE1hcmdpbiBncmlkXG4gIEBpZigkbWFyZ2luLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBQYWRkaW5nIGdyaWRcbiAgQGlmKCRwYWRkaW5nLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1wYWRkaW5nLWdyaWQtY2xhc3NlcygpO1xuICB9XG5cbiAgLy8gQmxvY2sgZ3JpZFxuICBAaWYoJGJsb2NrLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1ibG9jay1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkLCAkcGFkZGluZy1ncmlkKTtcbiAgfVxuXG4gIC8vIENvbGxhcHNlIGd1dHRlcnNcbiAgQGlmKCRjb2xsYXBzZSkge1xuICAgIEBpbmNsdWRlIHh5LWNvbGxhcHNlLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQsICRwYWRkaW5nLWdyaWQpO1xuICB9XG5cbiAgLy8gT2Zmc2V0IGd1dHRlcnNcbiAgQGlmKCRvZmZzZXQpIHtcbiAgICBAaW5jbHVkZSB4eS1vZmZzZXQtY2VsbC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBWZXJ0aWNhbCBncmlkXG4gIEBpZigkdmVydGljYWwtZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LXZlcnRpY2FsLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQsICRwYWRkaW5nLWdyaWQpO1xuICB9XG5cbiAgQGlmICgkZnJhbWUtZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LWZyYW1lLWdyaWQtY2xhc3NlcygkdmVydGljYWwtZ3JpZCwgJG1hcmdpbi1ncmlkKVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gQ3JlYXRlIGd1dHRlcnMgZm9yIGEgY2VsbC9jb250YWluZXIuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVHlwZSBvZiBndXR0ZXIgdG8gb3V0cHV0LiBBY2NlcHRzIGVpdGhlciBtYXJnaW4gb3IgcGFkZGluZy5cbi8vLyBAcGFyYW0ge0xpc3R9ICRndXR0ZXItcG9zaXRpb24gW3JpZ2h0IGxlZnRdIC0gVGhlIHBvc2l0aW9uIHRvIGFwcGx5IGd1dHRlcnMgdG8uIEFjY2VwdHMgYHRvcGAsIGBib3R0b21gLCBgbGVmdGAsIGByaWdodGAgaW4gYW55IGNvbWJpbmF0aW9uLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJG5lZ2F0aXZlIFtmYWxzZV0gLSBXaGV0aGVyIHRvIGFwcGx5IHRoZSBndXR0ZXIgYXMgYSBuZWdhdGl2ZSB2YWx1ZS4gQ29tbW9ubHkgdXNlZCBmb3IgbmVzdGVkIGdyaWRzLlxuQG1peGluIHh5LWd1dHRlcnMoXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IHJpZ2h0IGxlZnQsXG4gICRuZWdhdGl2ZTogZmFsc2Vcbikge1xuICAkb3BlcmF0b3I6IGlmKCRuZWdhdGl2ZSwgJy0nLCAnJyk7XG5cbiAgLy8gSWYgd2UgaGF2ZSBkZWNsYXJlZCBuZWdhdGl2ZSBndXR0ZXJzLCBmb3JjZSB0eXBlIHRvIGBtYXJnaW4uXG4gICRndXR0ZXItdHlwZTogaWYoJG5lZ2F0aXZlLCAnbWFyZ2luJywgJGd1dHRlci10eXBlKTtcblxuICAvLyBPdXRwdXQgb3VyIG1hcmdpbiBndXR0ZXJzLlxuICBAaWYgKHR5cGUtb2YoJGd1dHRlcnMpID09ICdtYXAnKSB7XG4gICAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoYXV0bywgJGd1dHRlcnMpIHtcbiAgICAgICRndXR0ZXI6IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpIC8gMjtcblxuICAgICAgLy8gTG9vcCB0aHJvdWdoIGVhY2ggZ3V0dGVyIHBvc2l0aW9uXG4gICAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAgICN7JGd1dHRlci10eXBlfS0jeyR2YWx1ZX06IHVucXVvdGUoXCIjeyRvcGVyYXRvcn0jeyRndXR0ZXJ9XCIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAodHlwZS1vZigkZ3V0dGVycykgPT0gJ251bWJlcicpIHtcbiAgICAkZ3V0dGVyOiByZW0tY2FsYygkZ3V0dGVycykgLyAyO1xuXG4gICAgLy8gTG9vcCB0aHJvdWdoIGVhY2ggZ3V0dGVyIHBvc2l0aW9uXG4gICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgI3skZ3V0dGVyLXR5cGV9LSN7JHZhbHVlfTogdW5xdW90ZShcIiN7JG9wZXJhdG9yfSN7JGd1dHRlcn1cIik7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gQ3JlYXRlcyBhIG1heCB3aWR0aCBjb250YWluZXIsIGRlc2lnbmVkIHRvIGhvdXNlIHlvdXIgZ3JpZCBjb250ZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCBbJGdyaWQtY29udGFpbmVyXSAtIGEgd2lkdGggdG8gbGltaXQgdGhlIGNvbnRhaW5lciB0by5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHBhZGRpbmcgWyRncmlkLWNvbnRhaW5lci1wYWRkaW5nXSAtIHBhZGRpbmdzIG9mIHRoZSBjb250YWluZXIuXG5AbWl4aW4geHktZ3JpZC1jb250YWluZXIoXG4gICR3aWR0aDogJGdyaWQtY29udGFpbmVyLFxuICAkcGFkZGluZzogJGdyaWQtY29udGFpbmVyLXBhZGRpbmdcbikge1xuICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXJzOiAkcGFkZGluZywgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcblxuICBtYXgtd2lkdGg6ICR3aWR0aDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLy8vIENyZWF0ZXMgYSBjb250YWluZXIgZm9yIHlvdXIgZmxleCBjZWxscy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpcmVjdGlvbiBbaG9yaXpvbnRhbF0gLSBFaXRoZXIgaG9yaXpvbnRhbCBvciB2ZXJ0aWNhbCBkaXJlY3Rpb24gb2YgY2VsbHMgd2l0aGluLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHdyYXAgW3RydWVdIC0gSWYgdGhlIGNlbGxzIHdpdGhpbiBzaG91bGQgd3JhcCBvciBub3QuXG5AbWl4aW4geHktZ3JpZChcbiAgJGRpcmVjdGlvbjogaG9yaXpvbnRhbCxcbiAgJHdyYXA6IHRydWVcbikge1xuICAkZGlyZWN0aW9uOiBpZigkZGlyZWN0aW9uID09ICdob3Jpem9udGFsJywgcm93LCBjb2x1bW4pO1xuICAkd3JhcDogaWYoJHdyYXAsIHdyYXAsIG5vd3JhcCk7XG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiAkZGlyZWN0aW9uICR3cmFwO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIFJldHVybnMgdGhlIGFwcHJvcHJpYXRlIENTUyBmbGV4IHZhbHVlIGZvciBhIGNlbGwgYmFzZS5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBBY2NlcHRzIGBmdWxsYCwgYGF1dG9gLCBgc2hyaW5rYCwgYGdyb3dgLCBvciBhbnkgb3RoZXIgdmFsdWUgcmVwcmVzZW50aW5nIGEgY2VsbCBzaXplIChpdCB3aWxsIGJlIHRyZWF0ZWQgYXMgYHNocmlua2ApLlxuLy8vXG4vLy8gQHJldHVybnMge0xpc3R9IFRoZSBjZWxsIGZsZXggcHJvcGVydHkgdmFsdWUuXG5AZnVuY3Rpb24geHktY2VsbC1iYXNlKCRzaXplOiBmdWxsKSB7XG4gIEBpZiAoJHNpemUgPT0gJ2F1dG8nKSB7XG4gICAgQHJldHVybiAxIDEgMHB4O1xuICB9XG4gIEBlbHNlIGlmICgkc2l6ZSA9PSAnZ3JvdycpIHtcbiAgICBAcmV0dXJuIDEgMCBhdXRvO1xuICB9XG4gIEBlbHNlIGlmICgkc2l6ZSA9PSAnc2hyaW5rJyBvciAkc2l6ZSA9PSAnZnVsbCcgb3IgemYtaXMtZnJhY3Rpb24oJHNpemUsICRhbGxvdy1uby1kZW5vbWluYXRvcjogdHJ1ZSkpIHtcbiAgICBAcmV0dXJuIDAgMCBhdXRvO1xuICB9XG4gIEByZXR1cm4gbnVsbDtcbn1cblxuLy8vIENhbGN1bGF0ZSB0aGUgc2l6ZSBvZiBhIGNlbGwgZ3V0dGVycy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgYGF1dG9gLCByZXR1cm5zIHRoZSByZXNwb25zaXZlIGd1dHRlcnMgbWFwIGAkZ3V0dGVyc2AuIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ8TWFwfSBUaGUgY2VsbCBndXR0ZXIgc2l6ZSBvciB0aGUgcmVzcG9uc2l2ZSBndXR0ZXJzIG1hcC5cbkBmdW5jdGlvbiB4eS1jZWxsLWd1dHRlcnMoXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGJyZWFrcG9pbnQ6IG51bGxcbikge1xuICAvLyBGb3IgYGF1dG9gLCByZXR1cm5zIHRoZSByZXNwb25zaXZlIG1hcCBgJGd1dHRlcnNgLlxuICBAaWYgKCRicmVha3BvaW50ID09ICdhdXRvJykge1xuICAgIEByZXR1cm4gJGd1dHRlcnM7XG4gIH1cblxuICAvLyBVc2UgdGhlIGNvbnRleHR1YWwgYnJlYWtwb2ludCBieSBkZWZhdWx0LlxuICAkYnJlYWtwb2ludDogLXpmLWN1cnJlbnQtYnJlYWtwb2ludCgkYnJlYWtwb2ludCk7XG5cbiAgQGlmICgkYnJlYWtwb2ludCkge1xuICAgIEByZXR1cm4gLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICRicmVha3BvaW50KTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiAtemYtZ2V0LWJwLXZhbCgkZ3V0dGVycywgJC16Zi16ZXJvLWJyZWFrcG9pbnQpIG9yIDA7XG4gIH1cbn1cblxuLy8vIFJldHVybnMgdGhlIHBlcmNlbnRhZ2Ugc2l6ZSBvZiBhIGNlbGwuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkc2l6ZSBbJGdyaWQtY29sdW1uc10gLSBTaXplIHRvIG1ha2UgdGhlIGNlbGwuIFlvdSBjYW4gcGFzcyBhIHZhbHVlIGluIG11bHRpcGxlIGZvcm1hdHMsIHN1Y2ggYXMgYDZgLCBgNTAlYCwgYDEgb2YgMmAgb3IgYDEvM2AuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBTaXplIG9mIHRoZSBjZWxsIChpbiBwZXJjZW50KS5cbkBmdW5jdGlvbiB4eS1jZWxsLXNpemUoXG4gICRzaXplOiAkZ3JpZC1jb2x1bW5zXG4pIHtcbiAgQHJldHVybiBmcmFjdGlvbi10by1wZXJjZW50YWdlKCRzaXplLCAkZGVub21pbmF0b3I6ICRncmlkLWNvbHVtbnMpO1xufVxuXG4vLy8gUmV0dXJucyB0aGUgYXBwcm9wcmlhdGUgQ1NTIHZhbHVlIGZvciBhIGNlbGwgc2l6ZS5cbi8vL1xuLy8vIEd1dHRlcnMtcmVsYXRlZCBhcmd1bWVudHMgYXJlIHJlcXVpcmVkIGZvciBjZWxscyB3aXRoIG1hcmdpbiBndXR0ZXJzIChieSBkZWZhdWx0KSBhcyB0aGUgZ3V0dGVyIGlzIGluY2x1ZGVkIGluIHRoZSB3aWR0aC5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQ2FuIGJlIGBmdWxsYCwgYGF1dG9gLCBgc2hyaW5rYCBvciBhbnkgZnJhY3Rpb24gbGlrZSBgNmAsIGA1MCVgLCBgMSBvZiAyYCBvciBgMS8yYC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVHlwZSBvZiBndXR0ZXIgdG8gb3V0cHV0LiBBY2NlcHRzIGBtYXJnaW5gLCBgcGFkZGluZ2Agb3IgYG5vbmVgLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIGBhdXRvYCwgcmV0dXJucyBhIG1hcCBvZiBzaXplcyBhZGFwdGVkIHRvIHJlc3BvbnNpdmUgZ3V0dGVycy4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcnxTdHJpbmd8TWFwfSBUaGUgY2VsbCBzaXppbmcgcHJvcGVydHkgdmFsdWUsIG9yIGEgcmVzcG9uc2l2ZSBtYXAgb2YgdGhlbS5cbkBmdW5jdGlvbiB4eS1jZWxsLXNpemUtY3NzKFxuICAkc2l6ZTogZnVsbCxcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGJyZWFrcG9pbnQ6IG51bGxcbikge1xuICAkbWFyZ2luLWd1dHRlcjogMDtcblxuICBAaWYgKCRzaXplID09ICdhdXRvJyBvciAkc2l6ZSA9PSAnc2hyaW5rJykge1xuICAgIEByZXR1cm4gYXV0bztcbiAgfVxuXG4gIC8vIEZvciBjZWxscyB3aXRoIG1hcmdpbiBndXR0ZXJzLCB0aGUgZ3V0dGVyIGlzIGluY2x1ZGVkIGluIHRoZSB3aWR0aC5cbiAgQGlmICgkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicpIHtcbiAgICAkbWFyZ2luLWd1dHRlcjogeHktY2VsbC1ndXR0ZXJzKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG4gICAgQGlmICgkbWFyZ2luLWd1dHRlciA9PSBudWxsKSB7XG4gICAgICBAZXJyb3IgJ3h5LWNlbGwtc2l6ZTogbm8gZ3V0dGVycyB3ZXJlIGZvdW5kIGluIGAkZ3V0dGVyc2AgZm9yIFwiJGJyZWFrcG9pbnQ6ICN7JGJyZWFrcG9pbnR9XCInO1xuICAgIH1cbiAgfVxuXG4gIC8vIENhbGN1bGF0ZSB0aGUgY2VsbCBzaXplIChudW1iZXIpXG4gICRzaXplLXJhdzogaWYoJHNpemUgPT0gJ2Z1bGwnLCAxMDAlLCB4eS1jZWxsLXNpemUoJHNpemUpKTtcblxuICAvLyBDYWxjdWxhdGUgdGhlIGNlbGwgQ1NTIHNpemUgaW5jbHVkaW5nIGd1dHRlcnMgKHN0cmluZylcbiAgLy8gSWYgdGhlIGNlbGwgaGFzIHJlc3BvbnNpdmUgbWFyZ2luIGd1dHRlcnMsIHJldHVybiBhIHJlc3BvbnNpdmUgbWFwIG9mIHNpemVzLlxuICBAaWYgdHlwZS1vZigkbWFyZ2luLWd1dHRlcikgPT0gJ21hcCcge1xuICAgICRyZXNwb25zaXZlLWNzcy1zaXplczogKCk7XG5cbiAgICBAZWFjaCAkYnAsICRtZyBpbiAkbWFyZ2luLWd1dHRlciB7XG4gICAgICAkc2l6ZS1jc3M6IGlmKCRtZyA9PSAwLCAkc2l6ZS1yYXcsIGNhbGMoI3skc2l6ZS1yYXd9IC0gI3tyZW0tY2FsYygkbWcpfSkpO1xuICAgICAgJHJlc3BvbnNpdmUtY3NzLXNpemVzOiBtYXAtbWVyZ2UoJHJlc3BvbnNpdmUtY3NzLXNpemVzLCAoJGJwOiAkc2l6ZS1jc3MpKTtcbiAgICB9XG5cbiAgICBAcmV0dXJuICRyZXNwb25zaXZlLWNzcy1zaXplcztcbiAgfVxuICAvLyBPdGhlcndpc2UsIHJldHVybiBhIHNpbmdsZSBDU1Mgc2l6ZS5cbiAgQGVsc2Uge1xuICAgICRjc3Mtc2l6ZTogaWYoJG1hcmdpbi1ndXR0ZXIgPT0gMCwgJHNpemUtcmF3LCBjYWxjKCN7JHNpemUtcmF3fSAtICN7cmVtLWNhbGMoJG1hcmdpbi1ndXR0ZXIpfSkpO1xuICAgIEByZXR1cm4gJGNzcy1zaXplO1xuICB9XG59XG5cbi8vLyBTZXRzIGJhc2UgZmxleCBwcm9wZXJ0aWVzIGZvciBjZWxscy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBBY2NlcHRzIGBmdWxsYCwgYGF1dG9gLCBgc2hyaW5rYCwgYGdyb3dgLCBvciBhbnkgb3RoZXIgdmFsdWUgcmVwcmVzZW50aW5nIGEgY2VsbCBzaXplIChpdCB3aWxsIGJlIHRyZWF0ZWQgYXMgYHNocmlua2ApLlxuQG1peGluIHh5LWNlbGwtYmFzZSgkc2l6ZTogZnVsbCkge1xuICAkYmFzZTogeHktY2VsbC1iYXNlKCRzaXplKTtcblxuICBmbGV4OiAjeyRiYXNlfTtcblxuICAvLyBTZXQgYmFzZSBzdHlsZXMgZm9yIFwiZnVsbFwiIG9ubHlcbiAgQGlmKCRzaXplID09ICdmdWxsJykge1xuICAgIG1pbi1oZWlnaHQ6IDBweDtcbiAgICBtaW4td2lkdGg6IDBweDtcbiAgfVxufVxuXG4vLy8gUmVzZXRzIGEgY2VsbHMgd2lkdGggKG9yIGhlaWdodCBpZiB2ZXJ0aWNhbCBpcyB0cnVlKSBhcyB3ZWxsIGFzIHN0cmlwcyBpdHMgZ3V0dGVycy5cbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbkBtaXhpbiB4eS1jZWxsLXJlc2V0KCR2ZXJ0aWNhbDogdHJ1ZSkge1xuICAkZGlyZWN0aW9uOiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgaGVpZ2h0LCB3aWR0aCk7XG4gICN7JGRpcmVjdGlvbn06IGF1dG87XG4gIG1heC0jeyRkaXJlY3Rpb259OiBub25lO1xufVxuXG4vLy8gU2V0cyBzaXppbmcgcHJvcGVydGllcyBmb3IgY2VsbHMuXG4vLy9cbi8vLyBHdXR0ZXJzLXJlbGF0ZWQgYXJndW1lbnRzIGFyZSByZXF1aXJlZCBmb3IgY2VsbHMgd2l0aCBtYXJnaW4gZ3V0dGVycyAoYnkgZGVmYXVsdCkgYXMgdGhlIGd1dHRlciBpcyBpbmNsdWRlZCBpbiB0aGUgd2lkdGguXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIENhbiBiZSBgZnVsbGAgKDEwMCUgd2lkdGgpLCBgYXV0b2AgKHVzZSBhbGwgYXZhaWxhYmxlIHNwYWNlKSwgYHNocmlua2AgKHVzZSBvbmx5IHRoZSByZXF1aXJlZCBzcGFjZSkgb3IgYW55IGZyYWN0aW9uIChgNmAsIGA1MCVgLCBgMSBvZiAyYCBvciBgMS8yYC4uLikuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFR5cGUgb2YgZ3V0dGVyIHRvIG91dHB1dC4gQWNjZXB0cyBgbWFyZ2luYCwgYHBhZGRpbmdgIG9yIGBub25lYC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiBgYXV0b2AsIGdlbmVyYXRlcyBzaXplcyBhZGFwdGVkIGZvciByZXNwb25zaXZlIGd1dHRlcnMuIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG5AbWl4aW4geHktY2VsbC1zaXplKFxuICAkc2l6ZTogZnVsbCxcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICAkc2l6ZXM6IHh5LWNlbGwtc2l6ZS1jc3MoJHNpemUsICRndXR0ZXJzLCAkZ3V0dGVyLXR5cGUsICRicmVha3BvaW50KTtcbiAgJGRpcmVjdGlvbjogaWYoJHZlcnRpY2FsID09IHRydWUsIGhlaWdodCwgd2lkdGgpO1xuXG4gIEBpZiAodHlwZS1vZigkc2l6ZXMpID09ICdtYXAnKSB7XG4gICAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoYXV0bywgJHNpemVzKSB7XG4gICAgICAjeyRkaXJlY3Rpb259OiAkLXpmLWJwLXZhbHVlO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgI3skZGlyZWN0aW9ufTogJHNpemVzO1xuICB9XG59XG5cbi8vLyBTZXRzIGd1dHRlcnMgcHJvcGVydGllcyBmb3IgY2VsbHMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVHlwZSBvZiBndXR0ZXIgdG8gb3V0cHV0LiBBY2NlcHRzIGBtYXJnaW5gLCBgcGFkZGluZ2Agb3IgYG5vbmVgLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbbnVsbF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uIEJ5IGRlZmF1bHQgYHJpZ2h0IGxlZnRgIGZvciBob3Jpem9udGFsIGNlbGxzIGFuZCBgdG9wIGJvdHRvbWAgZm9yIHZlcnRpY2FsIGNlbGxzLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIGBhdXRvYCwgZ2VuZXJhdGVzIHJlc3BvbnNpdmUgZ3V0dGVycy4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBEaXJlY3Rpb24gb2YgdGhlIGd1dHRlcnMgdG8gb3V0cHV0LiBTZWUgYCRndXR0ZXItcG9zaXRpb25gLlxuQG1peGluIHh5LWNlbGwtZ3V0dGVycyhcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogbnVsbCxcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICAvLyBHZXQgdGhlIGRlZmF1bHQgZ3V0dGVyIHBvc2l0aW9uIGFjY29yZGluZyB0byBjZWxsIGRpcmVjdGlvblxuICBAaWYoJGd1dHRlci1wb3NpdGlvbiA9PSBudWxsKSB7XG4gICAgJGd1dHRlci1wb3NpdGlvbjogaWYoJHZlcnRpY2FsID09IHRydWUsIHRvcCBib3R0b20sIGxlZnQgcmlnaHQpO1xuICB9XG5cbiAgLy8gR2V0IHRoZSBndXR0ZXIgd2lkdGggZm9yIHRoaXMgYnJlYWtwb2ludFxuICAkZ3V0dGVyLXdpZHRoOiB4eS1jZWxsLWd1dHRlcnMoJGd1dHRlcnMsICRicmVha3BvaW50KTtcbiAgQGlmICgkZ3V0dGVyLXdpZHRoID09IG51bGwpIHtcbiAgICBAZXJyb3IgJ3h5LWNlbGwtZ3V0dGVyczogbm8gZ3V0dGVycyB3ZXJlIGZvdW5kIGluIGAkZ3V0dGVyc2AgZm9yIFwiJGJyZWFrcG9pbnQ6ICN7JGJyZWFrcG9pbnR9XCInO1xuICB9XG5cbiAgQGlmICgkZ3V0dGVyLXR5cGUgYW5kICRndXR0ZXItdHlwZSAhPSBub25lKSB7XG4gICAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyLXdpZHRoLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24pO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgY2VsbCBmb3IgeW91ciBncmlkLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBDYW4gYmUgYGZ1bGxgICgxMDAlIHdpZHRoKSwgYGF1dG9gICh1c2UgYWxsIGF2YWlsYWJsZSBzcGFjZSksIGBzaHJpbmtgICh1c2Ugb25seSB0aGUgcmVxdWlyZWQgc3BhY2UpIG9yIGFueSBmcmFjdGlvbiAoYDZgLCBgNTAlYCwgYDEgb2YgMmAgb3IgYDEvMmAuLi4pLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGd1dHRlci1vdXRwdXQgW251bGxdIC0gW0RFUFJFQ0FURURdIFdoZXRoZXIgb3Igbm90IHRvIG91dHB1dCBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgYG1hcmdpbmAsIGBwYWRkaW5nYCBvciBgbm9uZWAuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtudWxsXSAtIFRoZSBwb3NpdGlvbiB0byBhcHBseSBndXR0ZXJzIHRvLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi4gQnkgZGVmYXVsdCBgcmlnaHQgbGVmdGAgZm9yIGhvcml6b250YWwgY2VsbHMgYW5kIGB0b3AgYm90dG9tYCBmb3IgdmVydGljYWwgY2VsbHMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgYGF1dG9gLCBnZW5lcmF0ZXMgcmVzcG9uc2l2ZSBndXR0ZXJzLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuLy8vIEBwYXJhbSB7TGlzdH0gJG91dHB1dCBbKGJhc2Ugc2l6ZSBndXR0ZXJzKV0gLSBDZWxsIHBhcnRzIHRvIG91dHB1dC4gWW91IHdpbGwgbmVlZCB0byBnZW5lcmF0ZSBvdGhlcnMgcGFydHMgb2YgdGhlIGNlbGwgc2VwZXJhdGVseSwgaXQgbWF5IG5vdCB3b3JrIHByb3Blcmx5IG90aGVyd2lzZS5cbkBtaXhpbiB4eS1jZWxsKFxuICAkc2l6ZTogZnVsbCxcbiAgJGd1dHRlci1vdXRwdXQ6IG51bGwsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IG51bGwsXG4gICRicmVha3BvaW50OiBudWxsLFxuICAkdmVydGljYWw6IGZhbHNlLFxuICAkb3V0cHV0OiAoYmFzZSBzaXplIGd1dHRlcnMpXG4pIHtcbiAgLy8gRGVmYXVsdCBmb3IgJGd1dHRlci1vdXRwdXRcbiAgQGlmICgkZ3V0dGVyLW91dHB1dCAhPSBudWxsKSB7XG4gICAgQHdhcm4gJ3h5LWNlbGw6ICRndXR0ZXItb3V0cHV0IGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZC4gU2VlIG1pZ3JhdGlvbiBub3RlcyBhdCBodHRwczovL2dpdC5pby9mb3VuZGF0aW9uLTYtNi0wJztcbiAgICBAaWYgKCRndXR0ZXItb3V0cHV0ID09IGZhbHNlKSB7XG4gICAgICAkb3V0cHV0OiBzbC1yZW1vdmUoJG91dHB1dCwgZ3V0dGVycyk7XG4gICAgfVxuICB9XG5cbiAgQGlmIChpbmRleCgkb3V0cHV0LCBiYXNlKSkge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZSgkc2l6ZSk7XG4gIH1cbiAgQGlmIChpbmRleCgkb3V0cHV0LCBzaXplKSkge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZSgkc2l6ZSwgJGd1dHRlcnMsICRndXR0ZXItdHlwZSwgJGJyZWFrcG9pbnQsICR2ZXJ0aWNhbCk7XG4gIH1cbiAgQGlmIChpbmRleCgkb3V0cHV0LCBndXR0ZXJzKSkge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtZ3V0dGVycygkZ3V0dGVycywgJGd1dHRlci10eXBlLCAkZ3V0dGVyLXBvc2l0aW9uLCAkYnJlYWtwb2ludCwgJHZlcnRpY2FsKTtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHNpbmdsZSBicmVha3BvaW50IHNpemVkIGdyaWQuIFVzZWQgdG8gZ2VuZXJhdGUgb3VyIGdyaWQgY2xhc3Nlcy5cbi8vL1xuLy8vIGB4eS1jZWxsLXN0YXRpYygpYCBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQuXG4vLy8gVXNlIGB4eS1jZWxsKClgIGluc3RlYWQgd2l0aCBgJG91dHB1dDogKHNpemUgZ3V0dGVycylgIHRvIG5vdCBnZW5lcmF0ZSB0aGUgY2VsbCBiYXNlLlxuLy8vIFNlZSBtaWdyYXRpb24gbm90ZXMgYXQgaHR0cHM6Ly9naXQuaW8vZm91bmRhdGlvbi02LTYtMFxuLy8vXG4vLy8gQGRlcHJlY2F0ZWQgdjYuNi4wXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIENhbiBiZSBgZnVsbGAgKDEwMCUgd2lkdGgpLCBgYXV0b2AgKHVzZSBhbGwgYXZhaWxhYmxlIHNwYWNlKSwgYHNocmlua2AgKHVzZSBvbmx5IHRoZSByZXF1aXJlZCBzcGFjZSkgb3IgYW55IGZyYWN0aW9uIChgNmAsIGA1MCVgLCBgMSBvZiAyYCBvciBgMS8yYC4uLikuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZ3V0dGVyLW91dHB1dCBbdHJ1ZV0gLSBXaGV0aGVyIG9yIG5vdCB0byBvdXRwdXQgZ3V0dGVycy4gQWx3YXlzIGB0cnVlYCBmb3IgbWFyZ2luIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbkBtaXhpbiB4eS1jZWxsLXN0YXRpYyhcbiAgJHNpemU6IGZ1bGwsXG4gICRndXR0ZXItb3V0cHV0OiB0cnVlLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkYnJlYWtwb2ludDogJC16Zi16ZXJvLWJyZWFrcG9pbnQsXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICBAd2FybiAneHktY2VsbC1zdGF0aWMoKSBtaXhpbiBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQuIFVzZSBcInh5LWNlbGwoKVwiIGluc3RlYWQuIFNlZSBtaWdyYXRpb24gbm90ZXMgYXQgaHR0cHM6Ly9naXQuaW8vZm91bmRhdGlvbi02LTYtMCc7XG5cbiAgJGd1dHRlcjogLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICRicmVha3BvaW50KTtcbiAgJGd1dHRlci1wb3NpdGlvbjogaWYoJHZlcnRpY2FsID09IHRydWUsIHRvcCBib3R0b20sIGxlZnQgcmlnaHQpO1xuXG4gICQtZ3V0dGVyLW91dHB1dDogaWYoJGd1dHRlci10eXBlID09ICdtYXJnaW4nLCB0cnVlLCAkZ3V0dGVyLW91dHB1dCk7XG4gICQtZ3V0dGVyLW1hcmdpbjogaWYoJGd1dHRlci10eXBlID09ICdtYXJnaW4nLCAkZ3V0dGVyLCAwKTtcblxuICBAaW5jbHVkZSAteHktY2VsbC1wcm9wZXJ0aWVzKCRzaXplLCAkLWd1dHRlci1tYXJnaW4sICR2ZXJ0aWNhbCk7XG4gIEBpZiAoJC1ndXR0ZXItb3V0cHV0KSB7XG4gICAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24pO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gU2l6ZXMgY2hpbGQgZWxlbWVudHMgc28gdGhhdCBgJG5gIG51bWJlciBvZiBpdGVtcyBhcHBlYXIgb24gZWFjaCByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG4gLSBOdW1iZXIgb2YgZWxlbWVudHMgdG8gZGlzcGxheSBwZXIgcm93LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWycuY2VsbCddIC0gU2VsZWN0b3IocykgdG8gdXNlIGZvciBjaGlsZCBlbGVtZW50cy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRndXR0ZXItb3V0cHV0IFtudWxsXSAtIFtERVBSRUNBVEVEXSBXaGV0aGVyIG9yIG5vdCB0byBvdXRwdXQgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVHlwZSBvZiBndXR0ZXIgdG8gb3V0cHV0LiBBY2NlcHRzIGBtYXJnaW5gLCBgcGFkZGluZ2Agb3IgYG5vbmVgLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbbnVsbF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uIEJ5IGRlZmF1bHQgYHJpZ2h0IGxlZnRgIGZvciBob3Jpem9udGFsIGNlbGxzIGFuZCBgdG9wIGJvdHRvbWAgZm9yIHZlcnRpY2FsIGNlbGxzLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgYnJlYWtwb2ludCB0byB1c2UgZm9yIHRoZSBjZWxsIGdlbmVyYXRpb24uIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG4vLy8gQHBhcmFtIHtMaXN0fSAkb3V0cHV0IFsoYmFzZSBzaXplIGd1dHRlcnMpXSAtIENlbGwgcGFydHMgdG8gb3V0cHV0LiBZb3Ugd2lsbCBuZWVkIHRvIGdlbmVyYXRlIG90aGVycyBwYXJ0cyBvZiB0aGUgY2VsbCBzZXBlcmF0ZWx5LCBpdCBtYXkgbm90IHdvcmsgY29ycmVjdGx5IG90aGVyd2lzZS5cbkBtaXhpbiB4eS1ncmlkLWxheW91dChcbiAgJG4sXG4gICRzZWxlY3RvcjogJy5jZWxsJyxcbiAgJGd1dHRlci1vdXRwdXQ6IG51bGwsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IG51bGwsXG4gICRicmVha3BvaW50OiBudWxsLFxuICAkdmVydGljYWw6IGZhbHNlLFxuICAkb3V0cHV0OiAoYmFzZSBzaXplIGd1dHRlcnMpXG4pIHtcbiAgJHNpemU6IHBlcmNlbnRhZ2UoMS8kbik7XG5cbiAgJiA+ICN7JHNlbGVjdG9yfSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbCgkc2l6ZSwgJGd1dHRlci1vdXRwdXQsICRndXR0ZXJzLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24sICRicmVha3BvaW50LCAkdmVydGljYWwsICRvdXRwdXQpO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gQ29sbGFwc2VzIHRoZSBncmlkIGEgY2VsbHMgd2l0aGluIGl0LlxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbLmNlbGxdIC0gVGhlIGNoaWxkIGVsZW1lbnQgdG8gcmVtb3ZlIHRoZSBndXR0ZXIgZnJvbS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFRoZSB0eXBlIG9mIGd1dHRlciB0byByZW1vdmUuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtyaWdodCBsZWZ0XSAtIFRoZSBwb3NpdGlvbnMgdG8gcmVtb3ZlIGd1dHRlcnMgZnJvbS4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkbWluLWJyZWFrcG9pbnQgWyQtemYtemVyby1icmVha3BvaW50XSAtIE1pbmltdW0gYnJlYWtwb2ludCBpbiBgJGJyZWFrcG9pbnQtY2xhc3Nlc2AgZm9yIHdoaWNoIHRvIGNvbGxhcHNlIHRoZSBndXR0ZXIuXG5AbWl4aW4geHktZ3JpZC1jb2xsYXBzZShcbiAgJHNlbGVjdG9yOiAnLmNlbGwnLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogcmlnaHQgbGVmdCxcbiAgJG1pbi1icmVha3BvaW50OiAkLXpmLXplcm8tYnJlYWtwb2ludFxuKSB7XG4gIC8vIEZpcnN0LCBsZXRzIG5lZ2F0ZSBhbnkgbWFyZ2lucyBvbiB0aGUgdG9wIGxldmVsXG4gIEBpZiAoJGd1dHRlci10eXBlID09ICdtYXJnaW4nKSB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW4tYnJlYWtwb2ludCkge1xuICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICBtYXJnaW4tI3skdmFsdWV9OiAwO1xuICAgICAgfVxuXG4gICAgICA+ICN7JHNlbGVjdG9yfSB7XG4gICAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgICBtYXJnaW4tI3skdmFsdWV9OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJGV4Y2x1ZGVkLWJwczogLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigkbWluLWJyZWFrcG9pbnQpO1xuXG4gICAgLy8gT3V0cHV0IG5ldyB3aWR0aHMgdG8gbm90IGluY2x1ZGUgZ3V0dGVyc1xuICAgIEBlYWNoICRicCBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZihzbC1jb250YWluKCRleGNsdWRlZC1icHMsICRicCkpIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgICAgICAgPiAuI3skYnB9LSN7JGl9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKCRpLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwKSB7XG4gICAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgICAgICAgID4gLiN7JGJwfS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZSgkaSwgJGd1dHRlci10eXBlOiBub25lKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluLWJyZWFrcG9pbnQpIHtcbiAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgbWFyZ2luLSN7JHZhbHVlfTogMDtcbiAgICAgIH1cblxuICAgICAgPiAjeyRzZWxlY3Rvcn0ge1xuICAgICAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAgICAgcGFkZGluZy0jeyR2YWx1ZX06IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBSZXR1cm5zIHRoZSBhcHByb3ByaWF0ZSBDU1MgdmFsdWUgdG8gb2Zmc2V0IGEgY2VsbC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gU2l6ZSB0byBvZmZzZXQgYnkuIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGB4eS1jZWxsKClgIG1peGluLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSBNYXAgb2YgZ3V0dGVycyBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIGZvciByZXNwb25zaXZlIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gVGhlIHR5cGUgb2YgZ3V0dGVyIHRvIHVzZS4gQ2FuIGJlIGBtYXJnaW5gIG9yIGBwYWRkaW5nYFxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ8U3RyaW5nfSBUaGUgY2VsbCBvZmZzZXQgcHJvcGVydHkgdmFsdWUuXG5AZnVuY3Rpb24geHktY2VsbC1vZmZzZXQoXG4gICRuLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkYnJlYWtwb2ludDogbnVsbFxuKSB7XG4gICRicmVha3BvaW50OiAtemYtY3VycmVudC1icmVha3BvaW50KCRicmVha3BvaW50LCAkZGVmYXVsdDogJC16Zi16ZXJvLWJyZWFrcG9pbnQpO1xuICAkc2l6ZTogeHktY2VsbC1zaXplKCRuKTtcblxuICAkb2Zmc2V0OiAkc2l6ZTtcbiAgQGlmICgkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicpIHtcbiAgICAkZ3V0dGVyOiByZW0tY2FsYyh4eS1jZWxsLWd1dHRlcnMoJGd1dHRlcnMsICRicmVha3BvaW50KSAvIDIpO1xuICAgICRvZmZzZXQ6IGlmKCRndXR0ZXIgPT0gMCwgJHNpemUsIGNhbGMoI3skc2l6ZX0gKyAjeyRndXR0ZXJ9KSk7XG4gIH1cbiAgQHJldHVybiAkb2Zmc2V0O1xufVxuXG4vLy8gT2Zmc2V0cyBhIGNvbHVtbiB0byB0aGUgcmlnaHQvYm90dG9tIGJ5IGAkbmAgY29sdW1ucy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gU2l6ZSB0byBvZmZzZXQgYnkuIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGB4eS1jZWxsKClgIG1peGluLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSBNYXAgb2YgZ3V0dGVycyBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIGZvciByZXNwb25zaXZlIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gVGhlIHR5cGUgb2YgZ3V0dGVyIHRvIHVzZS4gQ2FuIGJlIGBtYXJnaW5gIG9yIGBwYWRkaW5nYFxuLy8vIEBwYXJhbSB7TnVtYmVyfEFycmF5fEtleXdvcmR9ICRicmVha3BvaW50IFtudWxsXSAtIEJyZWFrcG9pbnQgdG8gdXNlIGZvciBgJGd1dHRlcnNgLiBJdCBjYW4gYmUgYSBicmVha3BvaW50IG5hbWUsIGxpc3Qgb2YgYnJlYWtwb2ludHMgb3IgYGF1dG9gIGZvciBhbGwgYnJlYWtwb2ludHMuIElmIGEgbGlzdCBpcyBnaXZlbiwgbWVkaWEtcXVlcmllcyB3aWxsIGJlIGdlbmVyYXRlZC4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gU2V0cyB0aGUgZGlyZWN0aW9uIG9mIHRoZSBvZmZzZXQuIElmIHNldCB0byB0cnVlIHdpbGwgYXBwbHkgbWFyZ2luLXRvcCBpbnN0ZWFkLlxuQG1peGluIHh5LWNlbGwtb2Zmc2V0KFxuICRuLFxuICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAkYnJlYWtwb2ludDogbnVsbCxcbiAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgJGJyZWFrcG9pbnQ6IC16Zi1jdXJyZW50LWJyZWFrcG9pbnQoJGJyZWFrcG9pbnQsICRkZWZhdWx0OiAkLXpmLXplcm8tYnJlYWtwb2ludCk7XG4gICRkaXJlY3Rpb246IGlmKCR2ZXJ0aWNhbCwgJ3RvcCcsICRnbG9iYWwtbGVmdCk7XG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludC1pbigkYnJlYWtwb2ludCwgJG1lZGlhLXF1ZXJpZXM6ICdmb3ItbGlzdHMnKSB7XG4gICAgJG9mZnNldDogeHktY2VsbC1vZmZzZXQoJG4sICRndXR0ZXJzLCAkZ3V0dGVyLXR5cGUpO1xuICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiAjeyRvZmZzZXR9O1xuICB9XG59XG4iLCIvLy8gTW9kaWZpZXMgYSBncmlkIHRvIGdpdmUgaXQgXCJmcmFtZVwiIGJlaGF2aW9yIChubyBvdmVyZmxvdywgbm8gd3JhcCwgc3RyZXRjaCBiZWhhdmlvcilcbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBJcyBncmlkIHZlcnRpY2FsIG9yIGhvcml6b250YWwuIFNob3VsZCBtYXRjaCBncmlkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJG5lc3RlZCBbZmFsc2VdIC0gSXMgZ3JpZCBuZXN0ZWQgb3Igbm90LiBJZiBuZXN0ZWQgaXMgdHJ1ZSB0aGlzIHNldHMgdGhlIGZyYW1lIHRvIDEwMCUgaGVpZ2h0LCBvdGhlcndpc2Ugd2lsbCBiZSAxMDB2aC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFtudWxsXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRpbmNsdWRlLWJhc2UgW3RydWVdIC0gSW5jbHVkZSB0aGUgYmFzZSBzdHlsZXMgdGhhdCBkb24ndCB2YXJ5IHBlciBicmVha3BvaW50LlxuQG1peGluIHh5LWdyaWQtZnJhbWUoXG4gICR2ZXJ0aWNhbDogZmFsc2UsXG4gICRuZXN0ZWQ6IGZhbHNlLFxuICAkZ3V0dGVyczogbnVsbCxcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICRpbmNsdWRlLWJhc2U6IHRydWVcbikge1xuXG4gIEBpZiAkaW5jbHVkZS1iYXNlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgfVxuXG4gIEBpZiAkYnJlYWtwb2ludCA9PSBudWxsIGFuZCB0eXBlLW9mKCRndXR0ZXJzKSA9PSAnbWFwJyB7XG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUoJHZlcnRpY2FsLCAkbmVzdGVkLCAkZ3V0dGVycywgJC16Zi1zaXplLCBmYWxzZSk7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAvLyBHZXQgb3VyIGd1dHRlcnMgaWYgYXBwbGljYWJsZVxuICAgICRndXR0ZXI6IC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG5cbiAgICAvLyBJZiB3ZSBoYXZlIGEgZ3V0dGVyLCBhZGQgaXQgdG8gdGhlIHdpZHRoL2hlaWdodFxuICAgIEBpZiAkZ3V0dGVyIHtcbiAgICAgIEBpZiAkdmVydGljYWwgPT0gdHJ1ZSB7XG4gICAgICAgICR1bml0OiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZoKTtcbiAgICAgICAgJGd1dHRlcjogcmVtLWNhbGMoJGd1dHRlcik7XG4gICAgICAgIGhlaWdodDogY2FsYygjeyR1bml0fSArICN7JGd1dHRlcn0pO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICR1bml0OiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZ3KTtcbiAgICAgICAgJGd1dHRlcjogcmVtLWNhbGMoJGd1dHRlcik7XG4gICAgICAgIHdpZHRoOiBjYWxjKCN7JHVuaXR9ICsgI3skZ3V0dGVyfSk7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpZiAkdmVydGljYWwgPT0gdHJ1ZSB7XG4gICAgICAgIGhlaWdodDogaWYoJG5lc3RlZCA9PSB0cnVlLCAxMDAlLCAxMDB2aCk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgd2lkdGg6IGlmKCRuZXN0ZWQgPT0gdHJ1ZSwgMTAwJSwgMTAwdncpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gTW9kaWZpZXMgYSBjZWxsIHRvIGdpdmUgaXQgXCJibG9ja1wiIGJlaGF2aW9yIChvdmVyZmxvdyBhdXRvLCBpbmVydGlhbCBzY3JvbGxpbmcpXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gSXMgZ3JpZCB2ZXJ0aWNhbCBvciBob3Jpem9udGFsLiBTaG91bGQgbWF0Y2ggZ3JpZC5cbkBtaXhpbiB4eS1jZWxsLWJsb2NrKFxuICAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgJHByb3BlcnR5OiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgJ292ZXJmbG93LXknLCAnb3ZlcmZsb3cteCcpO1xuXG4gIEBpZiAkdmVydGljYWwgPT0gdHJ1ZSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIH0gQGVsc2Uge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcbn1cblxuLy8vIENvbnRhaW5lciBmb3IgaW5zaWRlIGEgZ3JpZCBmcmFtZSBjb250YWluaW5nIG11bHRpcGxlIGJsb2Nrcy4gVHlwaWNhbGx5IHVzZWRcbi8vLyBhcyBhIG1vZGlmaWVyIGZvciBhIGAuY2VsbGAgdG8gYWxsb3cgdGhlIGNlbGwgdG8gcGFzcyBhbG9uZyBmbGV4IHNpemluZ1xuLy8vIGNvbnN0cmFpbnRzIC8gZnJvbSBwYXJlbnRzIHRvIGNoaWxkcmVuLlxuQG1peGluIHh5LWNlbGwtYmxvY2stY29udGFpbmVyKCkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuXG4gID4gLmdyaWQteCB7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHR5cG9ncmFwaHktYmFzZVxuLy8vL1xuXG4vLyBCYXNlIFR5cG9ncmFwaHlcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG4vLyBUaGVzZSBhcmUgc3R5bGVzIGFwcGxpZWQgdG8gYmFzaWMgSFRNTCB0YWdzLCBpbmNsdWRpbmc6XG4vLyAgIC0gUGFyYWdyYXBocyA8cD5cbi8vICAgLSBCb2xkL2l0YWxpY3MgPGI+IDxzdHJvbmc+IDxpPiA8ZW0+XG4vLyAgIC0gU21hbGwgdGV4dCA8c21hbGw+XG4vLyAgIC0gSGVhZGluZ3MgPGgxPi08aDY+XG4vLyAgIC0gQW5jaG9ycyA8YT5cbi8vICAgLSBEaXZpZGVycyA8aHI+XG4vLyAgIC0gTGlzdHMgPHVsPiA8b2w+IDxkbD5cbi8vICAgLSBCbG9ja3F1b3RlcyA8YmxvY2txdW90ZT5cbi8vICAgLSBDb2RlIGJsb2NrcyA8Y29kZT5cbi8vICAgLSBBYmJyZXZpYXRpb25zIDxhYmJyPlxuLy8gICAtIENpdGF0aW9ucyA8Y2l0ZT5cbi8vICAgLSBLZXlzdHJva2VzIDxrYmQ+XG5cbi8vLyBGb250IGZhbWlseSBmb3IgaGVhZGVyIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRoZWFkZXItZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3R5bGUgKGUuZy4gaXRhbGljaXplZCkgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdGFjayB1c2VkIGZvciBlbGVtZW50cyB0aGF0IHVzZSBtb25vc3BhY2VkIHR5cGUsIHN1Y2ggYXMgY29kZSBzYW1wbGVzXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBDb3VyaWVyLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kaGVhZGVyLWNvbG9yOiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWFkZXItbGluZWhlaWdodDogMS40ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJGhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBTdHlsZXMgZm9yIGhlYWRpbmdzIGF0IHZhcmlvdXMgc2NyZWVuIHNpemVzLiBFYWNoIGtleSBpcyBhIGJyZWFrcG9pbnQsIGFuZCBlYWNoIHZhbHVlIGlzIGEgbWFwIG9mIGhlYWRpbmcgc3R5bGVzLlxuLy8vIEB0eXBlIE1hcFxuJGhlYWRlci1zdHlsZXM6IChcbiAgc21hbGw6IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDI0KSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDE5KSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDE4KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDE3KSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgKSxcbiAgbWVkaXVtOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiA0OCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiA0MCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAzMSksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAyNSksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4pICFkZWZhdWx0O1xuXG4vLyAkaGVhZGVyLXN0eWxlcyBtYXAgaXMgYnVpbHQgZnJvbSAkaGVhZGVyLXNpemVzIGluIG9yZGVyIHRvIGVuc3VyZSBkb3dud2FyZCBjb21wYXRpYmlsaXR5XG4vLyB3aGVuICRoZWFkZXItc2l6ZXMgaXMgZGVwcmVjaWF0ZWQsICRoZWFkZXItc3R5bGVzIG5lZWRzIHRvIGdldCAhZGVmYXVsdCB2YWx1ZXMgbGlrZSBzZXR0aW5ncy5zY3NzXG5AZnVuY3Rpb24gYnVpbGRfZnJvbV9oZWFkZXItc2l6ZXMoJGhlYWRlci1zaXplcykge1xuICBAd2FybiAnTm90ZSwgdGhhdCAkaGVhZGVyLXNpemVzIGhhcyBiZWVuIHJlcGxhY2VkIHdpdGggJGhlYWRlci1zdHlsZXMuICRoZWFkZXItc2l6ZXMgc3RpbGwgd29ya3MsIGJ1dCBpdCBpcyBnb2luZyB0byBiZSBkZXByZWNpYXRlZC4nO1xuICAkaGVhZGVyLXN0eWxlczogKCk7XG4gIEBlYWNoICRzaXplLCAkaGVhZGVycyBpbiAkaGVhZGVyLXNpemVzIHtcbiAgICAkaGVhZGVyLW1hcDogKCk7XG4gICAgQGVhY2ggJGhlYWRlciwgJGZvbnQtc2l6ZSBpbiAkaGVhZGVycyB7XG4gICAgICAkaGVhZGVyLW1hcDogbWFwLW1lcmdlKCRoZWFkZXItbWFwLCAoJGhlYWRlcjogKCdmb250LXNpemUnOiAkZm9udC1zaXplKSkpO1xuICAgIH1cbiAgICAkaGVhZGVyLXN0eWxlczogbWFwLW1lcmdlKCRoZWFkZXItc3R5bGVzLCAoJHNpemU6ICRoZWFkZXItbWFwKSk7XG4gIH1cbiAgQHJldHVybiAkaGVhZGVyLXN0eWxlcztcbn1cblxuLy8gSWYgaXQgZXhpc3RzICRoZWFkZXJzLXNpemVzIGlzIHVzZWQgdG8gYnVpbGQgJGhlYWRlci1zdHlsZXMuIFNlZSB0aGUgZG9jdW1lbnRhdGlvbi5cbkBpZiB2YXJpYWJsZS1leGlzdHMoaGVhZGVyLXNpemVzKSB7XG4gICRoZWFkZXItc3R5bGVzOiBidWlsZF9mcm9tX2hlYWRlci1zaXplcygkaGVhZGVyLXNpemVzKTtcbn1cblxuLy8vIFRleHQgcmVuZGVyaW5nIG1ldGhvZCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIGA8c21hbGw+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzbWFsbC1mb250LXNpemU6IDgwJSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGA8c21hbGw+YCBlbGVtZW50cyB3aGVuIHBsYWNlZCBpbnNpZGUgaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJGhlYWRlci1zbWFsbC1mb250LWNvbG9yOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiB0ZXh0IGluc2lkZSBgPHA+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYXJhZ3JhcGgtbGluZWhlaWdodDogMS42ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBvZiBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCByZW5kZXJpbmcgbWV0aG9kIGZvciBwYXJhZ3JhcGggdGV4dC5cbi8vLyBAdHlwZSBTdHJpbmdcbiRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8vIFVzZSB0aGUgYC5jb2RlLWlubGluZWAgY29tcG9uZW50IGFzIGRlZmF1bHQgZm9yIGA8Y29kZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRlbmFibGUtY29kZS1pbmxpbmU6IHRydWU7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBDb2xvclxuJGFuY2hvci1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBsaW5rcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBDb2xvclxuJGFuY2hvci1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGFuY2hvci1jb2xvciwgJGxpZ2h0bmVzczogLTE0JSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgZGVjb3JhdGlvbiBmb3IgbGlua3MuXG4vLy8gQHR5cGUgU3RyaW5nXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbjogbm9uZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZWNvcmF0aW9uIGZvciBsaW5rcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyOiBub25lICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSB3aWR0aCBvZiBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaHItd2lkdGg6ICRnbG9iYWwtd2lkdGggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBmb3IgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIExpc3RcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBmb3IgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRoci1tYXJnaW46IHJlbS1jYWxjKDIwKSBhdXRvICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgZm9yIGl0ZW1zIGluIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodCAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIGl0ZW1zIGluIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbSAhZGVmYXVsdDtcblxuLy8vIEJ1bGxldCB0eXBlIHRvIHVzZSBmb3IgdW5vcmRlcmVkIGxpc3RzIChlLmcuLCBgc3F1YXJlYCwgYGNpcmNsZWAsIGBkaXNjYCkuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGlzdC1zdHlsZS10eXBlOiBkaXNjICFkZWZhdWx0O1xuXG4vLy8gUG9zaXRpb25pbmcgZm9yIGJ1bGxldHMgb24gdW5vcmRlcmVkIGxpc3QgaXRlbXMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGxpc3RzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3Qtc2lkZS1tYXJnaW46IDEuMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0IChvciByaWdodCkgbWFyZ2luIGZvciBhIGxpc3QgaW5zaWRlIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIGA8ZGw+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkZWZubGlzdC1tYXJnaW4tYm90dG9tOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgZm9yIGA8ZHQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRkZWZubGlzdC10ZXJtLXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBgPGR0PmAgYW5kIGA8ZGQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b206IDAuM3JlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgYDxibG9ja3F1b3RlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRibG9ja3F1b3RlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgYSBgPGJsb2NrcXVvdGU+YCBlbGVtZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSkgIWRlZmF1bHQ7XG5cbi8vLyBTaWRlIGJvcmRlciBmb3IgYDxibG9ja3F1b3RlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTGlzdFxuJGJsb2NrcXVvdGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gVXNlIHRoZSBgLmNpdGUtYmxvY2tgIGNvbXBvbmVudCBhcyBkZWZhdWx0IGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZW5hYmxlLWNpdGUtYmxvY2s6IHRydWU7XG5cbi8vLyBGb250IGZhbWlseSBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4ka2V5c3Ryb2tlLWZvbnQ6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4ka2V5c3Ryb2tlLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4ka2V5c3Ryb2tlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4ka2V5c3Ryb2tlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNCAwKSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGtleXN0cm9rZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIGJvcmRlciBzdHlsZSBmb3IgYDxhYmJyPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTGlzdFxuJGFiYnItdW5kZXJsaW5lOiAxcHggZG90dGVkICRibGFjayAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tdHlwb2dyYXBoeS1iYXNlIHtcbiAgLy8gVHlwb2dyYXBoeSByZXNldHNcbiAgZGl2LFxuICBkbCxcbiAgZHQsXG4gIGRkLFxuICB1bCxcbiAgb2wsXG4gIGxpLFxuICBoMSxcbiAgaDIsXG4gIGgzLFxuICBoNCxcbiAgaDUsXG4gIGg2LFxuICBwcmUsXG4gIGZvcm0sXG4gIHAsXG4gIGJsb2NrcXVvdGUsXG4gIHRoLFxuICB0ZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvLyBQYXJhZ3JhcGhzXG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcblxuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuICAgIHRleHQtcmVuZGVyaW5nOiAkcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nO1xuICB9XG5cbiAgLy8gRW1waGFzaXplZCB0ZXh0XG4gIGVtLFxuICBpIHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBTdHJvbmcgdGV4dFxuICBzdHJvbmcsXG4gIGIge1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gU21hbGwgdGV4dFxuICBzbWFsbCB7XG4gICAgZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gSGVhZGluZ3NcbiAgaDEsIC5oMSxcbiAgaDIsIC5oMixcbiAgaDMsIC5oMyxcbiAgaDQsIC5oNCxcbiAgaDUsIC5oNSxcbiAgaDYsIC5oNiB7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYW1pbHk7XG4gICAgZm9udC1zdHlsZTogJGhlYWRlci1mb250LXN0eWxlO1xuICAgIGZvbnQtd2VpZ2h0OiAkaGVhZGVyLWZvbnQtd2VpZ2h0O1xuICAgIGNvbG9yOiAkaGVhZGVyLWNvbG9yO1xuICAgIHRleHQtcmVuZGVyaW5nOiAkaGVhZGVyLXRleHQtcmVuZGVyaW5nO1xuXG4gICAgc21hbGwge1xuICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICBjb2xvcjogJGhlYWRlci1zbWFsbC1mb250LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhlYWRpbmcgc3R5bGVzXG4gIEBlYWNoICRzaXplLCAkaGVhZGVycyBpbiAkaGVhZGVyLXN0eWxlcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgQGVhY2ggJGhlYWRlciwgJGhlYWRlci1kZWZzIGluICRoZWFkZXJzIHtcbiAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiAxcmVtO1xuICAgICAgICAjeyRoZWFkZXJ9LCAuI3skaGVhZGVyfSB7XG5cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBmb250LXNpemUpIHtcbiAgICAgICAgICAgICRmb250LXNpemUtdGVtcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGZvbnQtc2l6ZSkpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGZzKSB7XG4gICAgICAgICAgICAkZm9udC1zaXplLXRlbXA6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBmcykpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbGluZS1oZWlnaHQpIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBsaW5lLWhlaWdodCksICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGxoKSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbGgpLCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMoJGhlYWRlci1saW5laGVpZ2h0LCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1hcmdpbi10b3ApIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYXJnaW4tdG9wKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG10KSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbXQpKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1hcmdpbi1ib3R0b20pIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYXJnaW4tYm90dG9tKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1iKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWIpKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKCRoZWFkZXItbWFyZ2luLWJvdHRvbSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gTGlua3NcbiAgYSB7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgY29sb3I6ICRhbmNob3ItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbjtcblxuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGFuY2hvci1jb2xvci1ob3ZlcjtcbiAgICAgIEBpZiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3ZlciAhPSAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbiB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG4gIH1cblxuICAvLyBIb3Jpem9udGFsIHJ1bGVcbiAgaHIge1xuICAgIGNsZWFyOiBib3RoO1xuXG4gICAgbWF4LXdpZHRoOiAkaHItd2lkdGg7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG1hcmdpbjogJGhyLW1hcmdpbjtcblxuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1ib3R0b206ICRoci1ib3JkZXI7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gIH1cblxuICAvLyBMaXN0c1xuICB1bCxcbiAgb2wsXG4gIGRsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkbGlzdC1tYXJnaW4tYm90dG9tO1xuICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246ICRsaXN0LXN0eWxlLXBvc2l0aW9uO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGlzdC1saW5laGVpZ2h0O1xuICB9XG5cbiAgLy8gTGlzdCBpdGVtc1xuICBsaSB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gVW5vcmRlcmVkIGxpc3RzXG4gIHVsIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1zaWRlLW1hcmdpbjtcbiAgICBsaXN0LXN0eWxlLXR5cGU6ICRsaXN0LXN0eWxlLXR5cGU7XG4gIH1cblxuICAvLyBPcmRlcmVkIGxpc3RzXG4gIG9sIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1zaWRlLW1hcmdpbjtcbiAgfVxuXG4gIC8vIE5lc3RlZCB1bm9yZGVyZWQvb3JkZXJlZCBsaXN0c1xuICB1bCwgb2wge1xuICAgICYgJiB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW47XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIERlZmluaXRpb24gbGlzdHNcbiAgZGwge1xuICAgIG1hcmdpbi1ib3R0b206ICRkZWZubGlzdC1tYXJnaW4tYm90dG9tO1xuXG4gICAgZHQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZGVmbmxpc3QtdGVybS13ZWlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLy8gQmxvY2txdW90ZXNcbiAgYmxvY2txdW90ZSB7XG4gICAgbWFyZ2luOiAwIDAgJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuICAgIHBhZGRpbmc6ICRibG9ja3F1b3RlLXBhZGRpbmc7XG4gICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogJGJsb2NrcXVvdGUtYm9yZGVyO1xuXG4gICAgJiwgcCB7XG4gICAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuICAgICAgY29sb3I6ICRibG9ja3F1b3RlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIElubGluZSBDaXRhdGlvbnNcbiAgQGlmICgkZW5hYmxlLWNpdGUtYmxvY2sgPT0gdHJ1ZSkge1xuICAgIGNpdGUge1xuICAgICAgLy8gRXh0ZW5kaW5nIGEgY2xhc3MgaXMgbm90IHJlY29tbWVuZGVkLlxuICAgICAgLy8gVE9ETzogQnJlYWsgdGhlIHR5cG9ncmFwaHktYmFzZS90eXBvZ3JhcGh5LWhlbHBlcnMgc2VwYXJhdGlvblxuICAgICAgQGV4dGVuZCAuY2l0ZS1ibG9jaztcbiAgICB9XG4gIH1cblxuICAvLyBBYmJyZXZpYXRpb25zXG4gIGFiYnIsIGFiYnJbdGl0bGVdIHtcbiAgICBib3JkZXItYm90dG9tOiAkYWJici11bmRlcmxpbmU7XG4gICAgY3Vyc29yOiBoZWxwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC8vIEZpZ3VyZXNcbiAgZmlndXJlIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAvLyBDb2RlXG4gIEBpZiAoJGVuYWJsZS1jb2RlLWlubGluZSA9PSB0cnVlKSB7XG4gICAgY29kZSB7XG4gICAgICBAZXh0ZW5kIC5jb2RlLWlubGluZTtcbiAgICB9XG4gIH1cblxuICAvLyBLZXlzdHJva2VzXG4gIGtiZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6ICRrZXlzdHJva2UtcGFkZGluZztcblxuICAgIGJhY2tncm91bmQtY29sb3I6ICRrZXlzdHJva2UtYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAka2V5c3Ryb2tlLWZvbnQ7XG4gICAgY29sb3I6ICRrZXlzdHJva2UtY29sb3I7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRrZXlzdHJva2UtcmFkaXVzKSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAka2V5c3Ryb2tlLXJhZGl1cztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0eXBvZ3JhcGh5LWhlbHBlcnNcbi8vLy9cblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBsZWFkIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGVhZC1mb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplICogMS4yNSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIGxlYWQgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsZWFkLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJHN1YmhlYWRlci1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kc3ViaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRvcCBtYXJnaW4gZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLW1hcmdpbi10b3A6IDAuMnJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIHN0YXRpc3RpYyBudW1iZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN0YXQtZm9udC1zaXplOiAyLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgLmNpdGUtYmxvY2tgIGNvbXBvbmVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGNpdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGAuY2l0ZS1ibG9ja2AgY29tcG9uZW50LlxuLy8vIEB0eXBlIE51bWJlclxuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBQc2V1ZG8gY29udGVudCBmb3IgYC5jaXRlLWJsb2NrYCBjb21wb25lbnQuXG4vLy8gQHR5cGUgU3RyaW5nXG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBgLmNvZGUtaW5saW5lYCBhbmQgYC5jb2RlLWJsb2NrYCBjb21wb25lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY29kZS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgb2YgYC5jb2RlLWlubGluZWAgYW5kIGAuY29kZS1ibG9ja2AgY29tcG9uZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kY29kZS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW4gYC5jb2RlLWlubGluZWAgYW5kIGAuY29kZS1ibG9ja2AgY29tcG9uZW50cy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRjb2RlLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGAuY29kZS1pbmxpbmVgIGFuZCBgLmNvZGUtYmxvY2tgIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjb2RlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBgLmNvZGUtaW5saW5lYCBhbmQgYC5jb2RlLWJsb2NrYCBjb21wb25lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRjb2RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgYXJvdW5kIHRleHQgb2YgdGhlIGAuY29kZS1pbmxpbmVgIGNvbXBvbmVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kY29kZS1wYWRkaW5nOiByZW0tY2FsYygyIDUgMSkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGFyb3VuZCB0ZXh0IG9mIHRoZSBgLmNvZGUtYmxvY2tgIGNvbXBvbmVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kY29kZS1ibG9jay1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIHVuZGVyIHRoZSBgLmNvZGUtYmxvY2tgIGNvbXBvbmVudC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjb2RlLWJsb2NrLW1hcmdpbi1ib3R0b206IDEuNXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGNpdGUtYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICRjaXRlLWNvbG9yO1xuICBmb250LXNpemU6ICRjaXRlLWZvbnQtc2l6ZTtcblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGNpdGUtcHNldWRvLWNvbnRlbnQ7XG4gIH1cbn1cblxuLy8vIEFkZCBiYXNpYyBzdHlsZXMgZm9yIGEgY29kZSBoZWxwZXIuXG4vLy8gU2VlIGBjb2RlLWlubGluZWAgYW5kIGBjb2RlLWJsb2NrYCBtaXhpbnMuXG5AbWl4aW4gY29kZS1zdHlsZSB7XG4gIGJvcmRlcjogJGNvZGUtYm9yZGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29kZS1iYWNrZ3JvdW5kO1xuXG4gIGZvbnQtZmFtaWx5OiAkY29kZS1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRjb2RlLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGNvZGUtY29sb3I7XG59XG5cbi8vLyBNYWtlIGNvZGUgaGVscGVyIGZyb20gdGhlIGBjb2RlLXN0eWxlYCBtaXhpbiBpbmxpbmUuXG4vLy8gVXNlZCB0byBnZW5lcmF0ZSBgLmNvZGUtaW5saW5lYFxuQG1peGluIGNvZGUtaW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcblxuICBwYWRkaW5nOiAkY29kZS1wYWRkaW5nO1xufVxuXG4vLy8gTWFrZSBjb2RlIGhlbHBlciBmcm9tIHRoZSBgY29kZS1zdHlsZWAgbWl4aW4gYSBibG9jay5cbi8vLyBVc2VkIHRvIGdlbmVyYXRlIGAuY29kZS1ibG9ja2BcbkBtaXhpbiBjb2RlLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBhdXRvO1xuICB3aGl0ZS1zcGFjZTogcHJlO1xuXG4gIHBhZGRpbmc6ICRjb2RlLWJsb2NrLXBhZGRpbmc7XG4gIG1hcmdpbi1ib3R0b206ICRjb2RlLWJsb2NrLW1hcmdpbi1ib3R0b207XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktaGVscGVycyB7XG4gIC8vIFVzZSB0byBjcmVhdGUgYSBzdWJoZWFkaW5nIHVuZGVyIGEgbWFpbiBoZWFkZXJcbiAgLy8gTWFrZSBzdXJlIHlvdSBwYWlyIHRoZSB0d28gZWxlbWVudHMgaW4gYSA8aGVhZGVyPiBlbGVtZW50LCBsaWtlIHRoaXM6XG4gIC8vIDxoZWFkZXI+XG4gIC8vICAgPGgxPkhlYWRpbmc8L2gxPlxuICAvLyAgIDxoMj5TdWJoZWFkaW5nPC9oMj5cbiAgLy8gPC9oZWFkZXI+XG4gIC5zdWJoZWFkZXIge1xuICAgIG1hcmdpbi10b3A6ICRzdWJoZWFkZXItbWFyZ2luLXRvcDtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3ViaGVhZGVyLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXdlaWdodDogJHN1YmhlYWRlci1mb250LXdlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJHN1YmhlYWRlci1saW5laGVpZ2h0O1xuICAgIGNvbG9yOiAkc3ViaGVhZGVyLWNvbG9yO1xuICB9XG5cbiAgLy8gVXNlIHRvIHN0eWxlIGFuIGludHJvZHVjdG9yeSBsZWFkLCBkZWNrLCBibHVyYiwgZXRjLlxuICAubGVhZCB7XG4gICAgZm9udC1zaXplOiAkbGVhZC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRsZWFkLWxpbmVoZWlnaHQ7XG4gIH1cblxuICAvLyBVc2UgdG8gc3R5bGUgYSBsYXJnZSBudW1iZXIgdG8gZGlzcGxheSBhIHN0YXRpc3RpY1xuICAuc3RhdCB7XG4gICAgZm9udC1zaXplOiAkc3RhdC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICBwICsgJiB7XG4gICAgICBtYXJnaW4tdG9wOiAtMXJlbTtcbiAgICB9XG4gIH1cblxuICB1bCwgb2wge1xuICAgIC8vIFVzZSB0byByZW1vdmUgbnVtYmVycyBmcm9tIG9yZGVyZWQgbGlzdCAmIGJ1bGxldHMgZnJvbSB1bm9yZGVyZWQgbGlzdFxuICAgICYubm8tYnVsbGV0IHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC5jaXRlLWJsb2NrIHtcbiAgICBAaW5jbHVkZSBjaXRlLWJsb2NrO1xuICB9XG5cbiAgLmNvZGUtaW5saW5lIHtcbiAgICBAaW5jbHVkZSBjb2RlLXN0eWxlO1xuICAgIEBpbmNsdWRlIGNvZGUtaW5saW5lO1xuICB9XG5cbiAgLmNvZGUtYmxvY2sge1xuICAgIEBpbmNsdWRlIGNvZGUtc3R5bGU7XG4gICAgQGluY2x1ZGUgY29kZS1ibG9jaztcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AbWl4aW4gZm91bmRhdGlvbi10ZXh0LWFsaWdubWVudCB7XG4gIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRhbGlnbiBpbiAobGVmdCwgcmlnaHQsIGNlbnRlciwganVzdGlmeSkge1xuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIC4jeyRzaXplfS10ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAudGV4dC0jeyRhbGlnbn0ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogJGFsaWduO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8gSWYgYHRydWVgLCBhbGwgZWxlbWVudHMgd2lsbCBoYXZlIHRyYW5zcGFyZW50IGJhY2tncm91bmRzIHdoZW4gcHJpbnRlZCwgdG8gc2F2ZSBvbiBpbmsuXG4vLy8gQHR5cGUgQm9vbGVhblxuLy8vIEBncm91cCBnbG9iYWxcbiRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgZGlzcGxheXMgbmV4dCB0byBhbGwgbGlua3MgdGhlaXIgXCJocmVmXCIgd2hlbiBwcmludGVkLlxuLy8vIEB0eXBlIEJvb2xlYW5cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4kcHJpbnQtaHJlZnM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIHNhc3MtbGludDpkaXNhYmxlLWFsbFxuXG5AbWl4aW4gZm91bmRhdGlvbi1wcmludC1zdHlsZXMge1xuICAuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICBAbWVkaWEgcHJpbnQge1xuICAgICoge1xuICAgICAgLy8gRW5zdXJlIGEgXCJibGFjay1vbi13aGl0ZVwiIHByaW50IGJ5IHJlbW92aW5nIGJhY2tncm91bmRzLFxuICAgICAgLy8gdXNpbmcgYmxhY2sgdGV4dCBldmVyeXdoZXJlIGFuZCBmb3JjaW5nIHRoZSBicm93c2VyIHRvIGVjb25vbWl6ZSBpbmsuXG4gICAgICBAaWYgJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7IC8vIEJsYWNrIHByaW50cyBmYXN0ZXI6IGg1YnAuY29tL3NcbiAgICAgICAgY29sb3ItYWRqdXN0OiBlY29ub215O1xuICAgICAgfVxuICAgICAgLy8gT3RoZXJ3aXNlLCBwcmV2ZW50IGFueSBlY29ub215IGJ5IHRoZSBicm93c2VyLlxuICAgICAgQGVsc2Uge1xuICAgICAgICBjb2xvci1hZGp1c3Q6IGV4YWN0O1xuICAgICAgfVxuXG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAuaGlkZS1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICAgIHRhYmxlLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICAgIHRoZWFkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0Ym9keS5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgdHIuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICAgIHRkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gICAgdGguc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cblxuICAgIC8vIERpc3BsYXkgdGhlIFVSTCBvZiBhIGxpbmsgYWZ0ZXIgdGhlIHRleHRcbiAgICBhLFxuICAgIGE6dmlzaXRlZCB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO31cbiAgICBAaWYgJHByaW50LWhyZWZzIHtcbiAgICAgIGFbaHJlZl06YWZ0ZXIgeyBjb250ZW50OiAnICgnIGF0dHIoaHJlZikgJyknOyB9XG4gICAgfVxuXG4gICAgLy8gRG9uJ3QgZGlzcGxheSB0aGUgVVJMIGZvciBpbWFnZXMgb3IgSmF2YVNjcmlwdC9pbnRlcm5hbCBsaW5rc1xuICAgIC5pciBhOmFmdGVyLFxuICAgIGFbaHJlZl49J2phdmFzY3JpcHQ6J106YWZ0ZXIsXG4gICAgYVtocmVmXj0nIyddOmFmdGVyIHsgY29udGVudDogJyc7IH1cblxuICAgIC8vIERpc3BsYXkgd2hhdCBhbiBhYmJyZXZpYXRpb24gc3RhbmRzIGZvciBhZnRlciB0aGUgdGV4dFxuICAgIGFiYnJbdGl0bGVdOmFmdGVyIHsgY29udGVudDogJyAoJyBhdHRyKHRpdGxlKSAnKSc7IH1cblxuICAgIC8vIFByZXZlbnQgcGFnZSBicmVha3MgaW4gdGhlIG1pZGRsZSBvZiBhIGJsb2NrcXVvdGUgb3IgcHJlZm9ybWF0dGVkIHRleHQgYmxvY2tcbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vIGg1YnAuY29tL3RcbiAgICB0aGVhZCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgfVxuXG4gICAgdHIsXG4gICAgaW1nIHsgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG5cbiAgICBpbWcgeyBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4gICAgQHBhZ2UgeyBtYXJnaW46IDAuNWNtOyB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIG9ycGhhbnM6IDM7XG4gICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgLy8gQXZvaWQgcGFnZSBicmVha3MgYWZ0ZXIgYSBoZWFkaW5nXG4gICAgaDIsXG4gICAgaDMgeyBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDsgfVxuXG4gICAgLy8gSGVscGVyIHRvIHJlLWFsbG93IHBhZ2UgYnJlYWtzIGluIHRoZSBtaWRkbGUgb2YgY2VydGFpbiBlbGVtZW50cyAoZS5nLiBwcmUsIGJsb2NrcXVvdGUsIHRyKVxuICAgIC5wcmludC1icmVhay1pbnNpZGUge1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnV0dG9uXG4vLy8vXG5cbi8vLyBGb250IGZhbWlseSBmb3IgYnV0dG9uIGVsZW1lbnRzLlxuLy8vIEB0eXBlIEZvbnRcbiRidXR0b24tZm9udC1mYW1pbHk6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgYnV0dG9uIGVsZW1lbnRzLlxuLy8vIElnbm9yZWQgaWYgbnVsbCAoZGVmYXVsdClcbi8vLyBAdHlwZSBGb250LVdlaWdodFxuJGJ1dHRvbi1mb250LXdlaWdodDogbnVsbCAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1wYWRkaW5nOiAwLjg1ZW0gMWVtICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGFyb3VuZCBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZmlsbCBmb3IgYnV0dG9ucy4gQ2FuIGVpdGhlciBiZSBgc29saWRgIG9yIGBob2xsb3dgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRidXR0b24tZmlsbDogc29saWQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRidXR0b24tYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIENvbG9yXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRidXR0b24tYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTE1JSkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdGVybmF0aXZlIGZvbnQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1jb2xvci1hbHQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGJ1dHRvbnMsIGRlZmF1bHRlZCB0byBnbG9iYWwtcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGZvciBidXR0b25zLCB0cmFuc3BhcmVudCBieSBkZWZhdWx0XG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1ib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciB3aWR0aCBmb3IgaG9sbG93IG91dGxpbmUgYnV0dG9uc1xuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoOiAxcHggIWRlZmF1bHQ7XG5cbi8vLyBTaXplcyBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBNYXBcbiRidXR0b24tc2l6ZXM6IChcbiAgdGlueTogMC42cmVtLFxuICBzbWFsbDogMC43NXJlbSxcbiAgZGVmYXVsdDogMC45cmVtLFxuICBsYXJnZTogMS4yNXJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcmluZyBjbGFzc2VzLiBBIG1hcCBvZiBjbGFzc2VzIHRvIG91dHB1dCBpbiB5b3VyIENTUywgbGlrZSBgLnNlY29uZGFyeWAsIGAuc3VjY2Vzc2AsIGFuZCBzbyBvbi5cbi8vLyBAdHlwZSBNYXBcbiRidXR0b24tcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZSAhZGVmYXVsdDtcblxuLy8vIG9wYWNpdHkgZm9yIGEgZGlzYWJsZWQgYnV0dG9uLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDogMC4yNSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgbGlnaHRuZXNzIG9uIGhvdmVyIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzczogLTIwJSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIGxpZ2h0bmVzcyBvbiBob3ZlciBmb3IgaG9sbG93IGJ1dHRvbnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3M6IC01MCUgIWRlZmF1bHQ7XG5cbi8vIEludGVybmFsOiBmbGlwIGZyb20gbWFyZ2luLXJpZ2h0IHRvIG1hcmdpbi1sZWZ0IGZvciBkZWZhdWx0c1xuQGlmICRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gJ3J0bCcge1xuICAkYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xufVxuXG4vLy8gdHJhbnNpdGlvbnMgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dCAhZGVmYXVsdDtcblxuLy8vIEFkZGl0aW9uYWwgcmVzcG9uc2l2ZSBjbGFzc2VzIGZvciAuZXhwYW5kZWRcbi8vLyBAdHlwZSBCb29sZWFuXG4kYnV0dG9uLXJlc3BvbnNpdmUtZXhwYW5kZWQ6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBUT0RPOiBEb2N1bWVudCBidXR0b24tYmFzZSgpIG1peGluXG5AbWl4aW4gYnV0dG9uLWJhc2Uge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcblxuICBAaWYgKHR5cGUtb2YoJGJ1dHRvbi1wYWRkaW5nKSA9PSAnbWFwJykge1xuICAgIEBlYWNoICRzaXplLCAkcGFkZGluZyBpbiAkYnV0dG9uLXBhZGRpbmcge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHBhZGRpbmc6ICRidXR0b24tcGFkZGluZztcbiAgfVxuXG4gIGJvcmRlcjogJGJ1dHRvbi1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICB0cmFuc2l0aW9uOiAkYnV0dG9uLXRyYW5zaXRpb247XG4gIGZvbnQtZmFtaWx5OiAkYnV0dG9uLWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6IG1hcC1nZXQoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCk7XG4gIGZvbnQtd2VpZ2h0OiAkYnV0dG9uLWZvbnQtd2VpZ2h0O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLy8vIEV4cGFuZHMgYSBidXR0b24gdG8gbWFrZSBpdCBmdWxsLXdpZHRoLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbdHJ1ZV0gLSBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSB0aGUgZXhwYW5kIGJlaGF2aW9yLiBTZXQgdG8gYGZhbHNlYCB0byByZXZlcnNlIHRoaXMgYmVoYXZpb3IuXG5AbWl4aW4gYnV0dG9uLWV4cGFuZCgkZXhwYW5kOiB0cnVlKSB7XG4gIEBpZiAkZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW46ICRidXR0b24tbWFyZ2luO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBiYXNlIHN0eWxlcyBvZiBhIGhvbGxvdyBvciBjbGVhciBidXR0b24gZmlsbGluZyBhY2NvcmRpbmcgdG8gYCRmaWxsYC5cbi8vLyBTZWUgbWl4aW4gYGJ1dHRvbi1maWxsLXN0eWxlYCBmb3IgdGhlIGZpbGxpbmcgc3R5bGVzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGZpbGwgWyRidXR0b24tZmlsbF0gLSBUeXBlIG9mIGZpbGxpbmcgYmV0d2VlbiBgaG9sbG93YCBhbmQgYGNsZWFyYC4gYHNvbGlkYCBoYXMgbm8gZWZmZWN0cy5cbkBtaXhpbiBidXR0b24tZmlsbChcbiAgJGZpbGw6ICRidXR0b24tZmlsbFxuKSB7XG4gIEBpZiAkZmlsbCA9PSBob2xsb3cge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gIH1cbiAgQGVsc2UgaWYgJGZpbGwgPT0gY2xlYXIge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1jbGVhcjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlcyBvZiBhIHNvbGlkL2hvbGxvdy9jbGVhciBidXR0b24gZmlsbGluZyBhY2NvcmRpbmcgdG8gYCRmaWxsYC5cbi8vLyBTZWUgbWl4aW5zIGBidXR0b24tc3R5bGVgLCBgYnV0dG9uLWhvbGxvdy1zdHlsZWAgYW5kIGBidXR0b24tY2xlYXItc3R5bGVgIGZvciBlZmZlY3RzIG9mIHZpc3VhbCBzdHlsaW5nIHBhcmFtZXRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZmlsbCBbJGJ1dHRvbi1maWxsXSAtIFR5cGUgb2YgZmlsbGluZyBiZXR3ZWVuIGBob2xsb3dgIGFuZCBgY2xlYXJgLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gLVxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gLVxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSAtXG5AbWl4aW4gYnV0dG9uLWZpbGwtc3R5bGUoXG4gICRmaWxsOiAkYnV0dG9uLWZpbGwsXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvclxuKSB7XG4gIEBpZiAkZmlsbCA9PSBzb2xpZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiYWNrZ3JvdW5kLCAkYmFja2dyb3VuZC1ob3ZlciwgJGNvbG9yKTtcbiAgfVxuICBAZWxzZSBpZiAkZmlsbCA9PSBob2xsb3cge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGJhY2tncm91bmQpO1xuICB9XG4gIEBlbHNlIGlmICRmaWxsID09IGNsZWFyIHtcbiAgICBAaW5jbHVkZSBidXR0b24tY2xlYXItc3R5bGUoJGJhY2tncm91bmQpO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSB2aXN1YWwgc3R5bGUgb2YgYSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRidXR0b24tYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQtaG92ZXIgWyRidXR0b24tYmFja2dyb3VuZC1ob3Zlcl0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24gb24gaG92ZXIuIFNldCB0byBgYXV0b2AgdG8gaGF2ZSB0aGUgbWl4aW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGhvdmVyIGNvbG9yLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBidXR0b24uIFNldCB0byBgYXV0b2AgdG8gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGNvbG9yIGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGJ1dHRvbi1zdHlsZShcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRidXR0b24tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yLFxuICAkYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6ICRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3Ncbikge1xuICBAaWYgJGNvbG9yID09IGF1dG8ge1xuICAgICRjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkYmFja2dyb3VuZCwgKCRidXR0b24tY29sb3IsICRidXR0b24tY29sb3ItYWx0KSk7XG4gIH1cblxuICBAaWYgJGJhY2tncm91bmQtaG92ZXIgPT0gYXV0byB7XG4gICAgJGJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAkYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3MpO1xuICB9XG5cbiAgLy8gRGVmYXVsdCBhbmQgZGlzYWJsZWQgc3RhdGVzXG4gICYsXG4gICYuZGlzYWJsZWQsICZbZGlzYWJsZWRdLFxuICAmLmRpc2FibGVkOmhvdmVyLCAmW2Rpc2FibGVkXTpob3ZlcixcbiAgJi5kaXNhYmxlZDpmb2N1cywgJltkaXNhYmxlZF06Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBiYXNlIHN0eWxlcyBvZiBhIGhvbGxvdyBidXR0b24uXG4vLy8gU2VlIG1peGluIGBidXR0b24taG9sbG93LXN0eWxlYCBmb3IgdGhlIGZpbGxpbmcgc3R5bGVzLlxuQG1peGluIGJ1dHRvbi1ob2xsb3cge1xuICAmLCAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSB7XG4gICAgJiwgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIHZpc3VhbCBzdHlsZSBvZiBhIGhvbGxvdyBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWJhY2tncm91bmRdIC0gVGV4dCBhbmQgYm9yZGVyIGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGhvdmVyLWxpZ2h0bmVzcyBbJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzXSAtIENvbG9yIGxpZ2h0bmVzcyBvbiBob3Zlci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYm9yZGVyLXdpZHRoIFskYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGhdIC0gQm9yZGVyIHdpZHRoIG9mIHRoZSBidXR0b24uXG5AbWl4aW4gYnV0dG9uLWhvbGxvdy1zdHlsZShcbiAgJGNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRob3Zlci1saWdodG5lc3M6ICRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzcyxcbiAgJGJvcmRlci13aWR0aDogJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoXG4pIHtcbiAgJGNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRob3Zlci1saWdodG5lc3MpO1xuXG4gIC8vIERlZmF1bHQgYW5kIGRpc2FibGVkIHN0YXRlc1xuICAmLFxuICAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSxcbiAgJi5kaXNhYmxlZDpob3ZlciwgJltkaXNhYmxlZF06aG92ZXIsXG4gICYuZGlzYWJsZWQ6Zm9jdXMsICZbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGNvbG9yO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBiYXNlIHN0eWxlcyBvZiBhIGNsZWFyIGJ1dHRvbi5cbi8vLyBTZWUgbWl4aW4gYGJ1dHRvbi1jbGVhci1zdHlsZWAgZm9yIHRoZSBmaWxsaW5nIHN0eWxlcy5cbkBtaXhpbiBidXR0b24tY2xlYXIge1xuICAmLCAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSB7XG4gICAgJiwgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBTZXRzIHRoZSB2aXN1YWwgc3R5bGUgb2YgYSBjbGVhciBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWJhY2tncm91bmRdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRob3Zlci1saWdodG5lc3MgWyRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzc10gLSBDb2xvciBsaWdodG5lc3Mgb24gaG92ZXIuXG5AbWl4aW4gYnV0dG9uLWNsZWFyLXN0eWxlKFxuICAkY29sb3I6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGhvdmVyLWxpZ2h0bmVzczogJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzXG4pIHtcbiAgJGNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRob3Zlci1saWdodG5lc3MpO1xuXG4gIC8vIERlZmF1bHQgYW5kIGRpc2FibGVkIHN0YXRlc1xuICAmLFxuICAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSxcbiAgJi5kaXNhYmxlZDpob3ZlciwgJltkaXNhYmxlZF06aG92ZXIsXG4gICYuZGlzYWJsZWQ6Zm9jdXMsICZbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgfVxufVxuXG4vLy8gQWRkcyBkaXNhYmxlZCBzdHlsZXMgdG8gYSBidXR0b24gYnkgZmFkaW5nIHRoZSBlbGVtZW50IGFuZCByZXNldGluZyB0aGUgY3Vyc29yLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb3BhY2l0eSBbJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkXSAtIE9wYWNpdHkgb2YgdGhlIGRpc2FibGVkIGJ1dHRvbi5cbkBtaXhpbiBidXR0b24tZGlzYWJsZWQoXG4gICRvcGFjaXR5OiAkYnV0dG9uLW9wYWNpdHktZGlzYWJsZWRcbikge1xuICBvcGFjaXR5OiAkYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi8vLyBBZGRzIGEgZHJvcGRvd24gYXJyb3cgdG8gYSBidXR0b24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIFswLjRlbV0gLSBTaXplIG9mIHRoZSBhcnJvdy4gV2UgcmVjb21tZW5kIHVzaW5nIGFuIGBlbWAgdmFsdWUgc28gdGhlIHRyaWFuZ2xlIHNjYWxlcyB3aGVuIHVzZWQgaW5zaWRlIGRpZmZlcmVudCBzaXplcyBvZiBidXR0b25zLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbd2hpdGVdIC0gQ29sb3Igb2YgdGhlIGFycm93LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb2Zmc2V0IFskYnV0dG9uLXBhZGRpbmddIC0gRGlzdGFuY2UgYmV0d2VlbiB0aGUgYXJyb3cgYW5kIHRoZSB0ZXh0IG9mIHRoZSBidXR0b24uIERlZmF1bHRzIHRvIHdoYXRldmVyIHRoZSByaWdodCBwYWRkaW5nIG9mIGEgYnV0dG9uIGlzLlxuQG1peGluIGJ1dHRvbi1kcm9wZG93bihcbiAgJHNpemU6IDAuNGVtLFxuICAkY29sb3I6ICR3aGl0ZSxcbiAgJG9mZnNldDogZ2V0LXNpZGUoJGJ1dHRvbi1wYWRkaW5nLCByaWdodClcbikge1xuICAmOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRzaXplLCAkY29sb3IsIGRvd24pO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDAuNGVtOyAvLyBBbGlnbnMgdGhlIGFycm93IHdpdGggdGhlIHRleHQgb2YgdGhlIGJ1dHRvblxuXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiAjeyRnbG9iYWwtcmlnaHR9O1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRvZmZzZXQ7XG4gIH1cbn1cblxuLy8vIEFkZHMgYWxsIHN0eWxlcyBmb3IgYSBidXR0b24uIEZvciBtb3JlIGdyYW51bGFyIGNvbnRyb2wgb3ZlciBzdHlsZXMsIHVzZSB0aGUgaW5kaXZpZHVhbCBidXR0b24gbWl4aW5zLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBtYWtlIHRoZSBidXR0b24gZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbiBvbiBob3Zlci4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgaG92ZXIgY29sb3IuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3R5bGUgW3NvbGlkXSAtIFNldCB0byBgaG9sbG93YCB0byBjcmVhdGUgYSBob2xsb3cgYnV0dG9uLiBUaGUgY29sb3IgZGVmaW5lZCBpbiBgJGJhY2tncm91bmRgIHdpbGwgYmUgdXNlZCBhcyB0aGUgcHJpbWFyeSBjb2xvciBvZiB0aGUgYnV0dG9uLlxuQG1peGluIGJ1dHRvbihcbiAgJGV4cGFuZDogZmFsc2UsXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJHN0eWxlOiAkYnV0dG9uLWZpbGxcbikge1xuICBAaW5jbHVkZSBidXR0b24tYmFzZTtcbiAgQGluY2x1ZGUgYnV0dG9uLWZpbGwoJHN0eWxlKTtcbiAgQGluY2x1ZGUgYnV0dG9uLWZpbGwtc3R5bGUoJHN0eWxlLCAkYmFja2dyb3VuZCwgJGJhY2tncm91bmQtaG92ZXIsICRjb2xvcik7XG5cbiAgQGlmICRleHBhbmQge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYnV0dG9uIHtcbiAgLmJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgYnV0dG9uKCRzdHlsZTogbm9uZSk7XG5cbiAgICAvLyBTaXplc1xuICAgIEBlYWNoICRzaXplLCAkdmFsdWUgaW4gbWFwLXJlbW92ZSgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9IHtcbiAgICAgICAgZm9udC1zaXplOiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5leHBhbmRlZCB7IEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7IH1cblxuICAgIEBpZiAkYnV0dG9uLXJlc3BvbnNpdmUtZXhwYW5kZWQge1xuICAgICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoI3skc2l6ZX0gb25seSkge1xuICAgICAgICAgICYuI3skc2l6ZX0tb25seS1leHBhbmRlZCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoI3skc2l6ZX0gZG93bikge1xuICAgICAgICAgICAgJi4jeyRzaXplfS1kb3duLWV4cGFuZGVkIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCN7JHNpemV9KSB7XG4gICAgICAgICAgICAmLiN7JHNpemV9LWV4cGFuZGVkIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTb2xpZCwgaG9sbG93ICYgY2xlYXIgc3R5bGVzXG4gICAgQGVhY2ggJGZpbGxpbmcgaW4gKHNvbGlkIGhvbGxvdyBjbGVhcikge1xuICAgICAgJHNlbGVjdG9yOiBpZigkYnV0dG9uLWZpbGwgPT0gJGZpbGxpbmcsIG51bGwsICcuI3skZmlsbGluZ30nKTtcblxuICAgICAgJiN7JHNlbGVjdG9yfSB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1maWxsKCRmaWxsaW5nKTtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWZpbGwtc3R5bGUoJGZpbGxpbmcpO1xuXG4gICAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1maWxsLXN0eWxlKCRmaWxsaW5nLCAkY29sb3IsIGF1dG8sIGF1dG8pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERpc2FibGVkIHN0YXRlXG4gICAgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWRpc2FibGVkO1xuICAgIH1cblxuICAgIC8vIERyb3Bkb3duIGFycm93XG4gICAgJi5kcm9wZG93biB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZHJvcGRvd247XG5cbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgPT0gaG9sbG93IHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRidXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmhvbGxvdywgJi5jbGVhciB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCdXR0b24gd2l0aCBkcm9wZG93biBhcnJvdyBvbmx5XG4gICAgJi5hcnJvdy1vbmx5OjphZnRlciB7XG4gICAgICB0b3A6IC0wLjFlbTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICB9XG4gIH1cblxuICBhLmJ1dHRvbiB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIEZvbnQgY29sb3Igb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBjb2xvciBvZiBwbGFjZWhvbGRlciB0ZXh0IHdpdGhpbiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBGb250XG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1saW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgZm9jdXNlZCBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtZm9jdXM6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgZGlzYWJsZWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBmb2N1c2VkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAxcHggc29saWQgJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wYWRkaW5nOiAkZm9ybS1zcGFjaW5nIC8gMiAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgaW5zaWRlIHRleHQgaW5wdXRzIHdoZW4gbm90IGZvY3VzZWQuXG4vLy8gQHR5cGUgU2hhZG93XG4kaW5wdXQtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIDAuMSkgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IG91dHNpZGUgdGV4dCBpbnB1dHMgd2hlbiBmb2N1c2VkLlxuLy8vIEB0eXBlIFNoYWRvd1xuJGlucHV0LXNoYWRvdy1mb2N1czogMCAwIDVweCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBDdXJzb3IgdG8gdXNlIHdoZW4gaG92ZXJpbmcgb3ZlciBhIGRpc2FibGVkIHRleHQgaW5wdXQuXG4vLy8gQHR5cGUgQ3Vyc29yXG4kaW5wdXQtY3Vyc29yLWRpc2FibGVkOiBub3QtYWxsb3dlZCAhZGVmYXVsdDtcblxuLy8vIFByb3BlcnRpZXMgdG8gdHJhbnNpdGlvbiBvbiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBUcmFuc2l0aW9uXG4kaW5wdXQtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVzIHRoZSB1cC9kb3duIGJ1dHRvbnMgdGhhdCBDaHJvbWUgYW5kIEZpcmVmb3ggYWRkIHRvIGA8aW5wdXQgdHlwZT0nbnVtYmVyJz5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRpbnB1dC1udW1iZXItc3Bpbm5lcnM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBSYWRpdXMgZm9yIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBmb3JtIGJ1dHRvbnMsIGRlZmF1bHRlZCB0byBnbG9iYWwtcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLWVsZW1lbnQge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSAqIHVuaXRsZXNzLWNhbGMoJGlucHV0LWxpbmUtaGVpZ2h0KSkgKyAoZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICd0b3AnKSArIGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAnYm90dG9tJykpIC0gcmVtLWNhbGMoMSk7XG5cbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nO1xuXG4gIGJvcmRlcjogJGlucHV0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGlucHV0LXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQ7XG4gIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3c7XG5cbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuXG4gIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgfVxuXG4gIC8vIEZvY3VzIHN0YXRlXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLWZvY3VzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzO1xuICAgIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3ctZm9jdXM7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS10ZXh0IHtcbiAgLy8gVGV4dCBpbnB1dHNcbiAgI3t0ZXh0LWlucHV0cygpfSxcbiAgdGV4dGFyZWEge1xuICAgIEBpbmNsdWRlIGZvcm0tZWxlbWVudDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICB9XG5cbiAgLy8gVGV4dCBhcmVhc1xuICB0ZXh0YXJlYSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgJltyb3dzXSB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgaW5wdXQsXG4gIHRleHRhcmVhIHtcbiAgICAvLyBEaXNhYmxlZC9yZWFkb25seSBzdGF0ZVxuICAgICY6ZGlzYWJsZWQsXG4gICAgJltyZWFkb25seV0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ7XG4gICAgICBjdXJzb3I6ICRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgc3R5bGVzIG9uIGJ1dHRvbi1saWtlIGlucHV0c1xuICBbdHlwZT0nc3VibWl0J10sXG4gIFt0eXBlPSdidXR0b24nXSB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAkZm9ybS1idXR0b24tcmFkaXVzO1xuICB9XG5cbiAgLy8gUmVzZXQgTm9ybWFsaXplIHNldHRpbmcgY29udGVudC1ib3ggdG8gc2VhcmNoIGVsZW1lbnRzXG4gIGlucHV0W3R5cGU9J3NlYXJjaCddIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuXG4gIC8vIE51bWJlciBpbnB1dCBzdHlsZXNcbiAgW3R5cGU9J251bWJlciddIHtcbiAgICBAaWYgbm90ICRpbnB1dC1udW1iZXItc3Bpbm5lcnMge1xuICAgICAgLW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG5cbiAgICAgICY6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gICAgICAmOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUGxhY2Vob2xkZXIgdGV4dFxuICA6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1jaGVja2JveCB7XG4gIFt0eXBlPSdmaWxlJ10sXG4gIFt0eXBlPSdjaGVja2JveCddLFxuICBbdHlwZT0ncmFkaW8nXSB7XG4gICAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgfVxuXG4gIC8vIFN0eWxlcyBmb3IgaW5wdXQvbGFiZWwgc2libGluZ3NcbiAgW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbCxcbiAgW3R5cGU9J3JhZGlvJ10gKyBsYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcblxuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRmb3JtLXNwYWNpbmc7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICZbZm9yXSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLy8gU3R5bGVzIGZvciBpbnB1dHMgaW5zaWRlIGxhYmVsc1xuICBsYWJlbCA+IFt0eXBlPSdjaGVja2JveCddLFxuICBsYWJlbCA+IFt0eXBlPSdyYWRpbyddIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgfVxuXG4gIC8vIE5vcm1hbGl6ZSBmaWxlIGlucHV0IHdpZHRoXG4gIFt0eXBlPSdmaWxlJ10ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIENvbG9yIGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGZvcm0tbGFiZWwtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgZm9yIGZvcm0gbGFiZWxzLiBUaGUgaGlnaGVyIHRoZSBudW1iZXIsIHRoZSBtb3JlIHNwYWNlIGJldHdlZW4gdGhlIGxhYmVsIGFuZCBpdHMgaW5wdXQgZmllbGQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1sYWJlbC1saW5lLWhlaWdodDogMS44ICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG5cbiAgZm9udC1zaXplOiAkZm9ybS1sYWJlbC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS1sYWJlbC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG59XG5cbkBtaXhpbiBmb3JtLWxhYmVsLW1pZGRsZSB7XG4gICRpbnB1dC1ib3JkZXItd2lkdGg6IGdldC1ib3JkZXItdmFsdWUoJGlucHV0LWJvcmRlciwgd2lkdGgpO1xuXG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIHBhZGRpbmc6ICgkZm9ybS1zcGFjaW5nIC8gMiArIHJlbS1jYWxjKCRpbnB1dC1ib3JkZXItd2lkdGgpKSAwO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWxhYmVsIHtcbiAgbGFiZWwge1xuICAgIEBpbmNsdWRlIGZvcm0tbGFiZWw7XG5cbiAgICAmLm1pZGRsZSB7XG4gICAgICBAaW5jbHVkZSBmb3JtLWxhYmVsLW1pZGRsZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIENvbG9yXG4kaGVscHRleHQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVscHRleHQtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc3R5bGUgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaGVscHRleHQtZm9udC1zdHlsZTogaXRhbGljICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWhlbHB0ZXh0IHtcbiAgLmhlbHAtdGV4dCB7XG4gICAgJG1hcmdpbi10b3A6ICgkZm9ybS1zcGFjaW5nICogMC41KSAqIC0xO1xuXG4gICAgbWFyZ2luLXRvcDogJG1hcmdpbi10b3A7XG4gICAgZm9udC1zaXplOiAkaGVscHRleHQtZm9udC1zaXplO1xuICAgIGZvbnQtc3R5bGU6ICRoZWxwdGV4dC1mb250LXN0eWxlO1xuICAgIGNvbG9yOiAkaGVscHRleHQtY29sb3I7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQ29sb3Igb2YgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcHJlZml4LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LXByZWZpeC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0L3JpZ2h0IHBhZGRpbmcgb2YgYW4gcHJlL3Bvc3RmaXhlZCBpbnB1dCBsYWJlbFxuJGlucHV0LXByZWZpeC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXByZXBvc3RmaXgge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSAqICRpbnB1dC1saW5lLWhlaWdodCkgKyAoZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICd0b3AnKSArIGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAnYm90dG9tJykpIC0gcmVtLWNhbGMoMSk7XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICBkaXNwbGF5OiBpZigkZ2xvYmFsLWZsZXhib3gsIGZsZXgsIHRhYmxlKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB9XG5cbiAgICA+IDpmaXJzdC1jaGlsZCB7XG4gICAgICAmLCAmLmlucHV0LWdyb3VwLWJ1dHRvbiA+ICoge1xuICAgICAgICBib3JkZXItcmFkaXVzOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgMCAkaW5wdXQtcmFkaXVzICRpbnB1dC1yYWRpdXMgMCwgJGlucHV0LXJhZGl1cyAwIDAgJGlucHV0LXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiA6bGFzdC1jaGlsZCB7XG4gICAgICAmLCAmLmlucHV0LWdyb3VwLWJ1dHRvbiA+ICoge1xuICAgICAgICBib3JkZXItcmFkaXVzOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgJGlucHV0LXJhZGl1cyAwIDAgJGlucHV0LXJhZGl1cywgMCAkaW5wdXQtcmFkaXVzICRpbnB1dC1yYWRpdXMgMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJWlucHV0LWdyb3VwLWNoaWxkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1sYWJlbCB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgcGFkZGluZzogMCAkaW5wdXQtcHJlZml4LXBhZGRpbmc7XG4gICAgYm9yZGVyOiAkaW5wdXQtcHJlZml4LWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kOiAkaW5wdXQtcHJlZml4LWJhY2tncm91bmQ7XG5cbiAgICBjb2xvcjogJGlucHV0LXByZWZpeC1jb2xvcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IDElO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXByZWZpeC1ib3JkZXIpIHtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgICBtaW4td2lkdGg6IDA7XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBhLFxuICAgIGlucHV0LFxuICAgIGJ1dHRvbixcbiAgICBsYWJlbCB7XG4gICAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcblxuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgICAgfVxuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgICB9XG4gIH1cblxuICAvLyBTcGVjaWZpY2l0eSBidW1wIG5lZWRlZCB0byBwcmV2ZW50IG92ZXJyaWRlIGJ5IGJ1dHRvbnNcbiAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYXJvdW5kIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kZmllbGRzZXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZpZWxkc2V0LXBhZGRpbmc6IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGFyb3VuZCBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgYmV0d2VlbiB0aGUgbGVnZW5kIHRleHQgYW5kIGZpZWxkc2V0IGJvcmRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsZWdlbmQtcGFkZGluZzogcmVtLWNhbGMoMCAzKSAhZGVmYXVsdDtcblxuQG1peGluIGZpZWxkc2V0IHtcbiAgbWFyZ2luOiAkZmllbGRzZXQtbWFyZ2luO1xuICBwYWRkaW5nOiAkZmllbGRzZXQtcGFkZGluZztcbiAgYm9yZGVyOiAkZmllbGRzZXQtYm9yZGVyO1xuXG4gIGxlZ2VuZCB7XG4gICAgLy8gQ292ZXJzIHVwIHRoZSBmaWVsZHNldCdzIGJvcmRlciB0byBjcmVhdGUgYXJ0aWZpY2lhbCBwYWRkaW5nXG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IHJlbS1jYWxjKC0zKTtcbiAgICBwYWRkaW5nOiAkbGVnZW5kLXBhZGRpbmc7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1maWVsZHNldCB7XG4gIGZpZWxkc2V0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICBsZWdlbmQge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nICogMC41O1xuICB9XG5cbiAgLmZpZWxkc2V0IHtcbiAgICBAaW5jbHVkZSBmaWVsZHNldDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBzZWxlY3QgbWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGhlIGRyb3Bkb3duIHRyaWFuZ2xlIGluc2lkZSBzZWxlY3QgbWVudXMuIFNldCB0byBgdHJhbnNwYXJlbnRgIHRvIHJlbW92ZSBpdCBlbnRpcmVseS5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC10cmlhbmdsZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBzZWxlY3QgbWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tc2VsZWN0IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKiB1bml0bGVzcy1jYWxjKCRpbnB1dC1saW5lLWhlaWdodCkpICsgKGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAndG9wJykgKyBnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ2JvdHRvbScpKSAtIHJlbS1jYWxjKDEpO1xuXG4gIGhlaWdodDogJGhlaWdodDtcbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmc7XG5cbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkc2VsZWN0LXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNlbGVjdC1iYWNrZ3JvdW5kO1xuXG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcblxuICBAaWYgJHNlbGVjdC10cmlhbmdsZS1jb2xvciAhPSB0cmFuc3BhcmVudCB7XG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZC10cmlhbmdsZSgkc2VsZWN0LXRyaWFuZ2xlLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLW9yaWdpbjogY29udGVudC1ib3g7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGdsb2JhbC1yaWdodCAoLSRmb3JtLXNwYWNpbmcpIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogOXB4IDZweDtcblxuICAgIHBhZGRpbmctI3skZ2xvYmFsLXJpZ2h0fTogKCRmb3JtLXNwYWNpbmcgKiAxLjUpO1xuICB9XG5cbiAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICB9XG5cbiAgLy8gRm9jdXMgc3RhdGVcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItZm9jdXM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZm9jdXM7XG4gICAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdy1mb2N1cztcblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlXG4gICY6ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkO1xuICAgIGN1cnNvcjogJGlucHV0LWN1cnNvci1kaXNhYmxlZDtcbiAgfVxuXG4gIC8vIEhpZGUgdGhlIGRyb3Bkb3duIGFycm93IHNob3duIGluIG5ld2VyIElFIHZlcnNpb25zXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAmW211bHRpcGxlXSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cbiAgJjpub3QoW211bHRpcGxlXSkge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tc2VsZWN0IHtcbiAgc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXNlbGVjdDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGFiaWRlXG4vLy8vXG5cbi8vLyBTZXRzIGlmIGVycm9yIHN0eWxlcyBzaG91bGQgYmUgYWRkZWQgdG8gaW5wdXRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhYmlkZS1pbnB1dHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGlmIGVycm9yIHN0eWxlcyBzaG91bGQgYmUgYWRkZWQgdG8gbGFiZWxzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhYmlkZS1sYWJlbHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIHRvIHVzZSBmb3IgaW52YWxpZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHRvIHVzZSBmb3IgbGFiZWxzIG9mIGludmFsaWQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1lcnJvci1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaW5wdXQtZXJyb3ItZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3R5bGVzIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgb2YgYW4gaW5wdXQgZmllbGQgdG8gaGF2ZSBhbiBlcnJvciBzdGF0ZS5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYWxlcnQtY29sb3JdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgYmFja2dyb3VuZCBhbmQgYm9yZGVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFja2dyb3VuZC1saWdodGVuIFsxMCVdIC0gTGlnaHRuZXNzIGxldmVsIG9mIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGZvcm0taW5wdXQtZXJyb3IoXG4gICRiYWNrZ3JvdW5kOiAkaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkLFxuICAkYmFja2dyb3VuZC1saWdodGVuOiAxMCVcbikge1xuICAmOm5vdCg6Zm9jdXMpIHtcbiAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1peCgkYmFja2dyb3VuZCwgJHdoaXRlLCAkYmFja2dyb3VuZC1saWdodGVuKTtcblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZXJyb3Igc3R5bGVzIHRvIGEgZm9ybSBlbGVtZW50LCB1c2luZyB0aGUgdmFsdWVzIGluIHRoZSBzZXR0aW5ncyBmaWxlLlxuQG1peGluIGZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAkZm9ybS1zcGFjaW5nICogLTAuNTtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcblxuICBmb250LXNpemU6ICRpbnB1dC1lcnJvci1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZXJyb3ItY29sb3I7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tZXJyb3Ige1xuICBAaWYgJGFiaWRlLWlucHV0cyB7XG4gICAgLy8gRXJyb3IgY2xhc3MgZm9yIGludmFsaWQgaW5wdXRzXG4gICAgLmlzLWludmFsaWQtaW5wdXQge1xuICAgICAgQGluY2x1ZGUgZm9ybS1pbnB1dC1lcnJvcjtcbiAgICB9XG4gIH1cblxuICBAaWYgJGFiaWRlLWxhYmVscyB7XG4gICAgLy8gRXJyb3IgY2xhc3MgZm9yIGxhYmVscyBvZiBpbnZhbGlkIG91dHB1dHNcbiAgICAuaXMtaW52YWxpZC1sYWJlbCB7XG4gICAgICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDtcbiAgICB9XG4gIH1cblxuICAvLyBGb3JtIGVycm9yIGVsZW1lbnRcbiAgLmZvcm0tZXJyb3Ige1xuICAgIEBpbmNsdWRlIGZvcm0tZXJyb3I7XG5cbiAgICAmLmlzLXZpc2libGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYWNjb3JkaW9uXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgYW4gYWNjb3JkaW9uIGdyb3VwLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYWRkcyBwbHVzIGFuZCBtaW51cyBpY29ucyB0byB0aGUgc2lkZSBvZiBlYWNoIGFjY29yZGlvbiB0aXRsZS5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWNjb3JkaW9uLXBsdXNtaW51czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIENvbnRlbnQgZm9yIHRoZSBwbHVzIGljb24gd2hlbiBgJGFjY29yZGlvbi1wbHVzbWludXNgIGlzIGB0cnVlYFxuLy8vIEB0eXBlIFN0cmluZ1xuJGFjY29yZGlvbi1wbHVzLWNvbnRlbnQ6ICdcXDAwMkInICFkZWZhdWx0O1xuXG4vLy8gQ29udGVudCBmb3IgdGhlIG1pbnVzIGljb24gd2hlbiBgJGFjY29yZGlvbi1wbHVzbWludXNgIGlzIGB0cnVlYFxuLy8vIEB0eXBlIFN0cmluZ1xuJGFjY29yZGlvbi1taW51cy1jb250ZW50OiAnXFwyMDEzJyAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBhY2NvcmRpb24gdGl0bGVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbi10aXRsZS1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBpdGVtcyBpbiBhIE1lbnUuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBvZiBhbiBhY2NvcmRpb24gaXRlbS5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYWNjb3JkaW9uLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tY29udGVudC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBhY2NvcmRpb24gY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIHRoZSBzYW1lIGVsZW1lbnQgdGhhdCBnZXRzIGBkYXRhLWFjY29yZGlvbmAuXG5AbWl4aW4gYWNjb3JkaW9uLWNvbnRhaW5lciAoXG4gICRiYWNrZ3JvdW5kOiAkYWNjb3JkaW9uLWJhY2tncm91bmRcbikge1xuICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICZbZGlzYWJsZWRdIHtcbiAgICAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGFjY29yZGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIHRoZSBsaXN0IGl0ZW0gd2l0aGluIGFuIGFjY29yZGlvbiB1bC5cbkBtaXhpbiBhY2NvcmRpb24taXRlbSB7XG4gICY6Zmlyc3QtY2hpbGQgPiA6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzIDAgMDtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCA+IDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgJGdsb2JhbC1yYWRpdXMgJGdsb2JhbC1yYWRpdXM7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgdGl0bGUgb2YgYW4gYWNjb3JkaW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gdGhlIGxpbmsgd2l0aGluIGFuIGFjY29yZGlvbiBpdGVtLlxuQG1peGluIGFjY29yZGlvbi10aXRsZSAoXG4gICRwYWRkaW5nOiAkYWNjb3JkaW9uLWl0ZW0tcGFkZGluZyxcbiAgJGZvbnQtc2l6ZTogJGFjY29yZGlvbi10aXRsZS1mb250LXNpemUsXG4gICRjb2xvcjogJGFjY29yZGlvbi1pdGVtLWNvbG9yLFxuICAkYm9yZGVyOiAkYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXJcbikge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICBib3JkZXI6ICRib3JkZXI7XG4gIGJvcmRlci1ib3R0b206IDA7XG5cbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRjb2xvcjtcblxuICA6bGFzdC1jaGlsZDpub3QoLmlzLWFjdGl2ZSkgPiAmIHtcbiAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAkZ2xvYmFsLXJhZGl1cyAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICB9XG5cbiAgQGlmICRhY2NvcmRpb24tcGx1c21pbnVzIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICAjeyRnbG9iYWwtcmlnaHR9OiAxcmVtO1xuICAgICAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgICAgIGNvbnRlbnQ6ICRhY2NvcmRpb24tcGx1cy1jb250ZW50O1xuICAgIH1cblxuICAgIC5pcy1hY3RpdmUgPiAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJGFjY29yZGlvbi1taW51cy1jb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFjY29yZGlvbiBjb250ZW50LiBBcHBseSB0aGlzIHRvIHRoZSBjb250ZW50IHBhbmUgYmVsb3cgYW4gYWNjb3JkaW9uIGl0ZW0ncyB0aXRsZS5cbkBtaXhpbiBhY2NvcmRpb24tY29udGVudCAoXG4gICRwYWRkaW5nOiAkYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZyxcbiAgJGJvcmRlcjogJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcixcbiAgJGJhY2tncm91bmQ6ICRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kLFxuICAkY29sb3I6ICRhY2NvcmRpb24tY29udGVudC1jb2xvclxuKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gIGJvcmRlcjogJGJvcmRlcjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgY29sb3I6ICRjb2xvcjtcblxuICA6bGFzdC1jaGlsZCA+ICY6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGJvcmRlcjtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1hY2NvcmRpb24ge1xuICAuYWNjb3JkaW9uIHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24tY29udGFpbmVyO1xuICB9XG5cbiAgLmFjY29yZGlvbi1pdGVtIHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24taXRlbTtcbiAgfVxuXG4gIC5hY2NvcmRpb24tdGl0bGUge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi10aXRsZTtcbiAgfVxuXG4gIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLWNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnbWF0aCc7XG5cbiRjb250cmFzdC13YXJuaW5nczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuLy8vIENoZWNrcyB0aGUgbHVtaW5hbmNlIG9mIGAkY29sb3JgLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3IgdG8gY2hlY2sgdGhlIGx1bWluYW5jZSBvZi5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBsdW1pbmFuY2Ugb2YgYCRjb2xvcmAuXG5AZnVuY3Rpb24gY29sb3ItbHVtaW5hbmNlKCRjb2xvcikge1xuICAvLyBBZGFwdGVkIGZyb206IGh0dHBzOi8vZ2l0aHViLmNvbS9MZWFWZXJvdS9jb250cmFzdC1yYXRpby9ibG9iL2doLXBhZ2VzL2NvbG9yLmpzXG4gIC8vIEZvcm11bGE6IGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDgvUkVDLVdDQUcyMC0yMDA4MTIxMS8jcmVsYXRpdmVsdW1pbmFuY2VkZWZcbiAgJHJnYmE6IHJlZCgkY29sb3IpLCBncmVlbigkY29sb3IpLCBibHVlKCRjb2xvcik7XG4gICRyZ2JhMjogKCk7XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAzIHtcbiAgICAkcmdiOiBudGgoJHJnYmEsICRpKTtcbiAgICAkcmdiOiAkcmdiIC8gMjU1O1xuXG4gICAgJHJnYjogaWYoJHJnYiA8IDAuMDM5MjgsICRyZ2IgLyAxMi45MiwgcG93KCgkcmdiICsgMC4wNTUpIC8gMS4wNTUsIDIuNCkpO1xuXG4gICAgJHJnYmEyOiBhcHBlbmQoJHJnYmEyLCAkcmdiKTtcbiAgfVxuXG4gIEByZXR1cm4gMC4yMTI2ICogbnRoKCRyZ2JhMiwgMSkgKyAwLjcxNTIgKiBudGgoJHJnYmEyLCAyKSArIDAuMDcyMiAqIG50aCgkcmdiYTIsIDMpO1xufVxuXG4vLy8gQ2hlY2tzIHRoZSBjb250cmFzdCByYXRpbyBvZiB0d28gY29sb3JzLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yMSAtIEZpcnN0IGNvbG9yIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yMiAtIFNlY29uZCBjb2xvciB0byBjb21wYXJlLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGNvbnRyYXN0IHJhdGlvIG9mIHRoZSBjb21wYXJlZCBjb2xvcnMuXG5AZnVuY3Rpb24gY29sb3ItY29udHJhc3QoJGNvbG9yMSwgJGNvbG9yMikge1xuICAvLyBBZGFwdGVkIGZyb206IGh0dHBzOi8vZ2l0aHViLmNvbS9MZWFWZXJvdS9jb250cmFzdC1yYXRpby9ibG9iL2doLXBhZ2VzL2NvbG9yLmpzXG4gIC8vIEZvcm11bGE6IGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDgvUkVDLVdDQUcyMC0yMDA4MTIxMS8jY29udHJhc3QtcmF0aW9kZWZcbiAgJGx1bWluYW5jZTE6IGNvbG9yLWx1bWluYW5jZSgkY29sb3IxKSArIDAuMDU7XG4gICRsdW1pbmFuY2UyOiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yMikgKyAwLjA1O1xuICAkcmF0aW86ICRsdW1pbmFuY2UxIC8gJGx1bWluYW5jZTI7XG5cbiAgQGlmICRsdW1pbmFuY2UyID4gJGx1bWluYW5jZTEge1xuICAgICRyYXRpbzogMSAvICRyYXRpbztcbiAgfVxuXG4gICRyYXRpbzogcm91bmQoJHJhdGlvICogMTApIC8gMTA7XG5cbiAgQHJldHVybiAkcmF0aW87XG59XG5cbi8vLyBDaGVja3MgdGhlIGx1bWluYW5jZSBvZiBgJGJhc2VgLCBhbmQgcmV0dXJucyB0aGUgY29sb3IgZnJvbSBgJGNvbG9yc2AgKGxpc3Qgb2YgY29sb3JzKSB0aGF0IGhhcyB0aGUgbW9zdCBjb250cmFzdC5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYXNlIC0gQ29sb3IgdG8gY2hlY2sgbHVtaW5hbmNlLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGNvbG9ycyBbKCR3aGl0ZSwgJGJsYWNrKV0gLSBDb2xvcnMgdG8gY29tcGFyZS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRvbGVyYW5jZSBbJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZV0gLSBDb250cmFzdCB0b2xlcmFuY2UuXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IHRoZSBjb2xvciBmcm9tIGAkY29sb3JzYCAobGlzdCBvZiBjb2xvcnMpIHRoYXQgaGFzIHRoZSBtb3N0IGNvbnRyYXN0LlxuQGZ1bmN0aW9uIGNvbG9yLXBpY2stY29udHJhc3QoJGJhc2UsICRjb2xvcnM6ICgkd2hpdGUsICRibGFjayksICR0b2xlcmFuY2U6ICRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2UpIHtcbiAgJGNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsIDEpKTtcbiAgJGJlc3Q6IG50aCgkY29sb3JzLCAxKTtcblxuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoIGxlbmd0aCgkY29sb3JzKSB7XG4gICAgJGN1cnJlbnQtY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgJGkpKTtcbiAgICBAaWYgKCRjdXJyZW50LWNvbnRyYXN0IC0gJGNvbnRyYXN0ID4gJHRvbGVyYW5jZSkge1xuICAgICAgJGNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsICRpKSk7XG4gICAgICAkYmVzdDogbnRoKCRjb2xvcnMsICRpKTtcbiAgICB9XG4gIH1cblxuICBAaWYgKCRjb250cmFzdC13YXJuaW5ncyBhbmQgJGNvbnRyYXN0IDwgMykge1xuICAgIEB3YXJuIFwiQ29udHJhc3QgcmF0aW8gb2YgI3skYmVzdH0gb24gI3skYmFzZX0gaXMgcHJldHR5IGJhZCwganVzdCAjeyRjb250cmFzdH1cIjtcbiAgfVxuXG4gIEByZXR1cm4gJGJlc3Q7XG59XG5cbi8vLyBTY2FsZXMgYSBjb2xvciB0byBiZSBkYXJrZXIgaWYgaXQncyBsaWdodCwgb3IgbGlnaHRlciBpZiBpdCdzIGRhcmsuIFVzZSB0aGlzIGZ1bmN0aW9uIHRvIHRpbnQgYSBjb2xvciBhcHByb3ByaWF0ZSB0byBpdHMgbGlnaHRuZXNzLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3IgdG8gc2NhbGUuXG4vLy8gQHBhcmFtIHtQZXJjZW50YWdlfSAkc2NhbGUgWzUlXSAtIEFtb3VudCB0byBzY2FsZSB1cCBvciBkb3duLlxuLy8vIEBwYXJhbSB7UGVyY2VudGFnZX0gJHRocmVzaG9sZCBbNDAlXSAtIFRocmVzaG9sZCBvZiBsaWdodG5lc3MgdG8gY2hlY2sgYWdhaW5zdC5cbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gQSBzY2FsZWQgY29sb3IuXG5AZnVuY3Rpb24gc21hcnQtc2NhbGUoJGNvbG9yLCAkc2NhbGU6IDUlLCAkdGhyZXNob2xkOiA0MCUpIHtcbiAgQGlmIGxpZ2h0bmVzcygkY29sb3IpID4gJHRocmVzaG9sZCB7XG4gICAgJHNjYWxlOiAtJHNjYWxlO1xuICB9XG4gIEByZXR1cm4gc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkc2NhbGUpO1xufVxuXG4vLy8gR2V0IGNvbG9yIGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG4vLy9cbi8vLyBAcGFyYW0ge2tleX0gY29sb3Iga2V5IGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IGNvbG9yIGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG5AZnVuY3Rpb24gZ2V0LWNvbG9yKCRrZXkpIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsICRrZXkpIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgJGtleSk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBlcnJvciAnZ2l2ZW4gJGtleSBpcyBub3QgYXZhaWxhYmxlIGluICRmb3VuZGF0aW9uLXBhbGV0dGUnO1xuICB9XG59XG5cbi8vLyBUcmFuc2ZlcnMgdGhlIGNvbG9ycyBpbiB0aGUgYCRmb3VuZGF0aW9uLXBhbGV0dGVgIG1hcCBpbnRvIHZhcmlhYmxlcywgc3VjaCBhcyBgJHByaW1hcnktY29sb3JgIGFuZCBgJHNlY29uZGFyeS1jb2xvcmAuIENhbGwgdGhpcyBtaXhpbiBiZWxvdyB0aGUgR2xvYmFsIHNlY3Rpb24gb2YgeW91ciBzZXR0aW5ncyBmaWxlIHRvIHByb3Blcmx5IG1pZ3JhdGUgeW91ciBjb2RlYmFzZS5cbkBtaXhpbiBhZGQtZm91bmRhdGlvbi1jb2xvcnMoKSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSB7XG4gICAgJHByaW1hcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJHByaW1hcnktY29sb3I6ICMxNzc5YmEgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KSB7XG4gICAgJHNlY29uZGFyeS1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzZWNvbmRhcnkpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRzZWNvbmRhcnktY29sb3I6ICM3Njc2NzYgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc3VjY2Vzcykge1xuICAgICRzdWNjZXNzLWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHN1Y2Nlc3MpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRzdWNjZXNzLWNvbG9yOiAjM2FkYjc2ICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHdhcm5pbmcpIHtcbiAgICAkd2FybmluZy1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCB3YXJuaW5nKSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkd2FybmluZy1jb2xvcjogI2ZmYWUwMCAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBhbGVydCkge1xuICAgICRhbGVydC1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBhbGVydCkgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJGFsZXJ0LWNvbG9yOiAjY2M0YjM3ICFnbG9iYWw7XG4gIH1cbn1cbiIsIi8vLy9cbi8vLyBAZ3JvdXAgYWNjb3JkaW9uLW1lbnVcbi8vLy9cblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgcGFkZGluZy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBuZXN0ZWQgbWFyZ2luXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9ubWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgc3VibWVudSBwYWRkaW5nLlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbm1lbnUtc3VibWVudS1wYWRkaW5nOiAkYWNjb3JkaW9ubWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBpZiBhY2NvcmRpb24gbWVudXMgaGF2ZSB0aGUgZGVmYXVsdCBhcnJvdyBzdHlsZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFjY29yZGlvbm1lbnUtYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBhcnJvdyBjb2xvciBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IGl0ZW0gcGFkZGluZy5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbm1lbnUtaXRlbS1iYWNrZ3JvdW5kOiBudWxsICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBpdGVtIGJvcmRlci5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbm1lbnUtYm9yZGVyOiBudWxsICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBpdGVtIHBhZGRpbmcuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWJhY2tncm91bmQ6IG51bGwgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IGl0ZW0gcGFkZGluZy5cbi8vLyBAdHlwZSBMaXN0XG4kYWNjb3JkaW9uLXN1Ym1lbnUtdG9nZ2xlLWJvcmRlcjogJGFjY29yZGlvbm1lbnUtYm9yZGVyICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBzdWJtZW51IHRvZ2dsZSBiYWNrZ3JvdW5kIHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg6IDQwcHggIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IHN1Ym1lbnUgdG9nZ2xlIGJhY2tncm91bmQgaGVpZ2h0LlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtaGVpZ2h0OiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aCAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgYXJyb3cgc2l6ZSBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIExlbmd0aFxuJGFjY29yZGlvbm1lbnUtYXJyb3ctc2l6ZTogNnB4ICFkZWZhdWx0O1xuXG5AbWl4aW4gemYtYWNjb3JkaW9uLW1lbnUtbGVmdC1yaWdodC1hcnJvd3Mge1xuICAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50Om5vdCguaGFzLXN1Ym1lbnUtdG9nZ2xlKSA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkYWNjb3JkaW9ubWVudS1hcnJvdy1zaXplLCAkYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvciwgZG93bik7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIG1hcmdpbi10b3A6IC0xICogKCRhY2NvcmRpb25tZW51LWFycm93LXNpemUgLyAyKTtcbiAgICAgICN7JGdsb2JhbC1yaWdodH06IDFyZW07XG4gICAgfVxuICB9XG5cbiAgJi5hbGlnbi1sZWZ0IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgbGVmdDogYXV0bztcbiAgfVxuXG4gICYuYWxpZ24tcmlnaHQgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxcmVtO1xuICB9XG59XG5AbWl4aW4gZm91bmRhdGlvbi1hY2NvcmRpb24tbWVudSB7XG5cbiAgLmFjY29yZGlvbi1tZW51IHtcbiAgICBAaWYgJGFjY29yZGlvbm1lbnUtYm9yZGVyIHtcbiAgICAgIGJvcmRlci1ib3R0b206ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICBAaWYgJGFjY29yZGlvbm1lbnUtYm9yZGVyIHtcbiAgICAgICAgYm9yZGVyLXRvcDogJGFjY29yZGlvbm1lbnUtYm9yZGVyO1xuICAgICAgICBib3JkZXItcmlnaHQ6ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcbiAgICAgICAgYm9yZGVyLWxlZnQ6ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcbiAgICAgIH1cbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgQGlmICRhY2NvcmRpb25tZW51LWl0ZW0tYmFja2dyb3VuZCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRhY2NvcmRpb25tZW51LWl0ZW0tYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICAgIHBhZGRpbmc6ICRhY2NvcmRpb25tZW51LXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLmlzLWFjY29yZGlvbi1zdWJtZW51IGEge1xuICAgICAgcGFkZGluZzogJGFjY29yZGlvbm1lbnUtc3VibWVudS1wYWRkaW5nO1xuICAgIH1cblxuICAgIC5uZXN0ZWQuaXMtYWNjb3JkaW9uLXN1Ym1lbnUge1xuICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQoJGFjY29yZGlvbm1lbnUtbmVzdGVkLW1hcmdpbik7XG4gICAgfVxuXG4gICAgJi5hbGlnbi0jeyRnbG9iYWwtcmlnaHR9IHtcbiAgICAgIC5uZXN0ZWQuaXMtYWNjb3JkaW9uLXN1Ym1lbnUge1xuICAgICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkYWNjb3JkaW9ubWVudS1uZXN0ZWQtbWFyZ2luLCByaWdodCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRhY2NvcmRpb25tZW51LWFycm93cyB7XG4gICAgICBAaW5jbHVkZSB6Zi1hY2NvcmRpb24tbWVudS1sZWZ0LXJpZ2h0LWFycm93cztcblxuICAgICAgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudFthcmlhLWV4cGFuZGVkPSd0cnVlJ10gPiBhOjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlzLWFjY29yZGlvbi1zdWJtZW51IGxpIHtcbiAgICBAaWYgJGFjY29yZGlvbm1lbnUtYm9yZGVyIHtcbiAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5oYXMtc3VibWVudS10b2dnbGUgPiBhIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg7XG4gIH1cblxuICAvLyBTdWJtZW51IHRvZ2dsZVxuICAuc3VibWVudS10b2dnbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgI3skZ2xvYmFsLXJpZ2h0fTogMDtcblxuICAgIHdpZHRoOiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aDtcbiAgICBoZWlnaHQ6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWhlaWdodDtcblxuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06ICRhY2NvcmRpb24tc3VibWVudS10b2dnbGUtYm9yZGVyO1xuXG4gICAgQGlmICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWJhY2tncm91bmQge1xuICAgICAgYmFja2dyb3VuZDogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtYmFja2dyb3VuZDtcbiAgICB9XG5cbiAgICAvLyBBZGQgdGhlIGFycm93IHRvIHRoZSB0b2dnbGVcbiAgICAmOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoNnB4LCAkYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvciwgZG93bik7XG5cbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICB9XG4gIH1cblxuICAvLyBSb3RhdGUgdGhlIGFycm93IHdoZW4gbWVudSBpcyBvcGVuXG4gIC5zdWJtZW51LXRvZ2dsZVthcmlhLWV4cGFuZGVkPSd0cnVlJ106OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgtMSk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbiAgfVxuXG4gIC5zdWJtZW51LXRvZ2dsZS10ZXh0IHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIG1lbnVcbi8vLy9cblxuLy8vIE1hcmdpbiBvZiBhIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0LWhhbmQgbWFyZ2luIG9mIGEgbmVzdGVkIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGl0ZW1zIGluIGEgcGlsbCBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaXRlbXMtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBtYXJnaW4gZm9yIGl0ZW1zIGluIGEgc2ltcGxlIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1zaW1wbGUtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBhbiBhY3RpdmUgbWVudSBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQWx0ZXJuYXRpdmUgdGV4dCBjb2xvciBvZiBhbiBhY3RpdmUgbWVudSBpdGVtLi5cbi8vLyBAdHlwZSBDb2xvclxuJG1lbnUtaXRlbS1jb2xvci1hbHQtYWN0aXZlOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KSAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBhbiBpY29uIGFuZCB0ZXh0IGluIGEgbWVudSBpdGVtLlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaWNvbi1zcGFjaW5nOiAwLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQmFja3dhcmQgY29tcGF0aWJpbGl0eSBmb3IgbWVudSBzdGF0ZS4gSWYgdHJ1ZSwgdGhpcyBkdXBsaWNhdGUgYGFjdGl2ZWAgd2l0aCBgaXMtYWN0aXZlYC4gXG4vLy8gQnV0IHBsZWFzZSBub3RlIHRoYXQgYGFjdGl2ZWAgd2lsbCBiZSByZW1vdmVkIGluIHVwY29taW5nIHZlcnNpb25zLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRtZW51LXN0YXRlLWJhY2stY29tcGF0OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQmFja3dhcmQgY29tcGF0aWJpbGl0eSBmb3IgbWVudSBjZW50ZXJlZC4gSWYgdHJ1ZSwgdGhpcyBkdXBsaWNhdGUgYC5tZW51LWNlbnRlcmVkID4gLm1lbnVgIHdpdGggYC5tZW51LmFsaWduLWNlbnRlcmAuIFxuLy8vIEJ1dCBwbGVhc2Ugbm90ZSB0aGF0IGBtZW51LWNlbnRlcmVkYCB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgdmVyc2lvbnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrd2FyZCBjb21wYXRpYmlsaXR5IGZvciB1c2luZyBgaWNvbi0qYCBjbGFzc2VzIHdpdGhvdXQgYC5pY29uc2AgY2xhc3Nlc1xuLy8vIEJ1dCBwbGVhc2Ugbm90ZSB0aGF0IHRoaXMgYmFja3dhcmQgY29tcGF0aWJpbGl0eSB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgdmVyc2lvbnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJG1lbnUtaWNvbnMtYmFjay1jb21wYXQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBDcmVhdGVzIHRoZSBiYXNlIHN0eWxlcyBmb3IgYSBNZW51LlxuQG1peGluIG1lbnUtYmFzZSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgbGkge1xuICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgfVxuXG4gIGEsXG4gIC5idXR0b24ge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkbWVudS1pdGVtcy1wYWRkaW5nO1xuICB9XG5cbiAgLy8gUmVzZXQgc3R5bGVzIG9mIGlubmVyIGVsZW1lbnRzXG4gIGlucHV0LFxuICBzZWxlY3QsXG4gIGEsXG4gIGJ1dHRvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIGlucHV0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuLy8vIEV4cGFuZHMgdGhlIGl0ZW1zIG9mIGEgTWVudSwgc28gZWFjaCBpdGVtIGlzIHRoZSBzYW1lIHdpZHRoLlxuQG1peGluIG1lbnUtZXhwYW5kIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgPiBsaSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFsaWduIG1lbnUgaXRlbXMuXG5AbWl4aW4gbWVudS1hbGlnbigkYWxpZ25tZW50KSB7XG4gIEBpZiAkYWxpZ25tZW50ID09IGxlZnQge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLWxlZnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRhbGlnbm1lbnQgPT0gcmlnaHQge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi52ZXJ0aWNhbCBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuXG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG5cbiAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1sZWZ0O1xuICAgICAgfVxuXG4gICAgICAmLnZlcnRpY2FsIHtcbiAgICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGFsaWdubWVudCA9PSBjZW50ZXIge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLWxlZnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBkaXJlY3Rpb24gb2YgYSBNZW51LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciBbaG9yaXpvbnRhbF0gLSBEaXJlY3Rpb24gb2YgdGhlIE1lbnUuIENhbiBiZSBgaG9yaXpvbnRhbGAgb3IgYHZlcnRpY2FsYC5cbkBtaXhpbiBtZW51LWRpcmVjdGlvbigkZGlyOiBob3Jpem9udGFsKSB7XG4gIEBpZiAkZGlyID09IGhvcml6b250YWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRkaXIgPT0gdmVydGljYWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1RoZSBkaXJlY3Rpb24gdXNlZCBmb3IgbWVudS1kaXJlY3Rpb24oKSBtdXN0IGJlIGhvcml6b250YWwgb3IgdmVydGljYWwuJztcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHNpbXBsZSBNZW51LCB3aGljaCBoYXMgbm8gcGFkZGluZyBvciBob3ZlciBzdGF0ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgWyRnbG9iYWwtbGVmdF0gLSBEaXJlY3Rpb24gb2YgdGhlIG1lbnUuIFRoaXMgZWZmZWN0cyB0aGUgc2lkZSBvZiB0aGUgYDxsaT5gIHRoYXQgcmVjZWl2ZXMgdGhlIG1hcmdpbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1hcmdpbiBbJG1lbnUtc2ltcGxlLW1hcmdpbl0gLSBUaGUgbWFyZ2luIHRvIGFwcGx5IHRvIGVhY2ggYDxsaT5gLlxuQG1peGluIG1lbnUtc2ltcGxlKCRkaXI6ICRnbG9iYWwtbGVmdCwgJG1hcmdpbjogJG1lbnUtc2ltcGxlLW1hcmdpbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgbGkgKyBsaSB7XG4gICAgbWFyZ2luLSN7JGRpcn06ICRtYXJnaW47XG4gIH1cblxuICBhIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBuZXN0ZWQgTWVudSwgYnkgYWRkaW5nIGBtYXJnaW4tbGVmdGAgdG8gdGhlIG1lbnUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJG1hcmdpbiBbJG1lbnUtbmVzdGVkLW1hcmdpbl0gLSBMZW5ndGggb2YgdGhlIG1hcmdpbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRuZXN0ZWQtYWxpZ25tZW50IFtsZWZ0XSAtIEFsaWdubWVudCBvZiB0aGUgbmVzdGVkIGNsYXNzXG5AbWl4aW4gbWVudS1uZXN0ZWQoXG4gICRtYXJnaW46ICRtZW51LW5lc3RlZC1tYXJnaW4sXG4gICRuZXN0ZWQtYWxpZ25tZW50OiBsZWZ0XG4pIHtcbiAgQGlmICRuZXN0ZWQtYWxpZ25tZW50ID09IHJpZ2h0IHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJG1hcmdpbjtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbWFyZ2luO1xuICB9XG5cbn1cblxuLy8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBpY29ucyBpbiBtZW51cy5cbkBtaXhpbiBtZW51LWljb25zKCkge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBpbWcsXG4gICAgaSxcbiAgICBzdmcge1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgKyBzcGFuIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgcG9zaXRpb24gY2xhc3NlcyBmb3IgaWNvbnMgd2l0aGluIGEgbWVudS5cbkBtaXhpbiBtZW51LWljb24tcG9zaXRpb24oJHBvc2l0aW9uOiBsZWZ0LCAkc3BhY2luZzogJG1lbnUtaWNvbi1zcGFjaW5nKSB7XG4gIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgbGkgYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuXG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkc3BhY2luZztcblxuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSB0b3Age1xuICAgIGxpIGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvICRzcGFjaW5nO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gYm90dG9tIHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46ICRzcGFjaW5nIGF1dG8gMDtcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1lbnUtdGV4dCB7XG4gIHBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbkBtaXhpbiBtZW51LXN0YXRlLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU7XG4gIGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmUsICgkbWVudS1pdGVtLWNvbG9yLWFjdGl2ZSwgJG1lbnUtaXRlbS1jb2xvci1hbHQtYWN0aXZlKSk7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW1lbnUge1xuICAubWVudSB7XG4gICAgQGluY2x1ZGUgbWVudS1iYXNlO1xuXG4gICAgLy8gRGVmYXVsdCBvcmllbnRhdGlvbjogaG9yaXpvbnRhbFxuICAgICYsICYuaG9yaXpvbnRhbCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcbiAgICB9XG5cbiAgICAvLyBWZXJ0aWNhbCBvcmllbnRhdGlvbiBtb2RpZmllclxuICAgICYudmVydGljYWwge1xuICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgIH1cblxuICAgIC8vIEV2ZW4td2lkdGggbW9kaWZpZXIgZm9yIGhvcml6b250YWwgb3JpZW50YXRpb25cbiAgICAmLmV4cGFuZGVkIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZXhwYW5kO1xuICAgIH1cblxuICAgIC8vIFNpbXBsZVxuICAgICYuc2ltcGxlIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtc2ltcGxlO1xuICAgIH1cblxuICAgIC8vIEJyZWFrcG9pbnQgc3BlY2lmaWMgdmVyc2lvbnNcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCRzbWFsbDogZmFsc2UpIHtcbiAgICAgICYuI3skLXpmLXNpemV9LWhvcml6b250YWwge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tdmVydGljYWwge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgICB9XG5cbiAgICAgICYuI3skLXpmLXNpemV9LWV4cGFuZGVkIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgICB9XG5cbiAgICAgICYuI3skLXpmLXNpemV9LXNpbXBsZSB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZXhwYW5kO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE5lc3RpbmdcbiAgICAmLm5lc3RlZCB7XG4gICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZDtcbiAgICB9XG5cbiAgICAvLyBJY29uIEJhc2UgU3R5bGVzXG4gICAgJi5pY29ucyB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb25zO1xuICAgIH1cblxuICAgIC8vIEJhY2t3YXJkIENvbXBhdGliaWxpdHkgZm9yIGFjdGl2ZSBzdGF0ZVxuICAgIEBpZiAkbWVudS1pY29ucy1iYWNrLWNvbXBhdCB7XG4gICAgICAmLmljb24tdG9wLFxuICAgICAgJi5pY29uLXJpZ2h0LFxuICAgICAgJi5pY29uLWJvdHRvbSxcbiAgICAgICYuaWNvbi1sZWZ0IHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1pY29ucztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJY29uIExlZnRcbiAgICAmLmljb24tbGVmdCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24obGVmdCk7XG4gICAgfVxuXG4gICAgLy8gSWNvbiBSaWdodFxuICAgICYuaWNvbi1yaWdodCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24ocmlnaHQpO1xuICAgIH1cblxuICAgIC8vIEljb24gVG9wXG4gICAgJi5pY29uLXRvcCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24odG9wKTtcbiAgICB9XG5cbiAgICAvLyBJY29uIEJvdHRvbVxuICAgICYuaWNvbi1ib3R0b20ge1xuICAgICAgQGluY2x1ZGUgbWVudS1pY29uLXBvc2l0aW9uKGJvdHRvbSk7XG4gICAgfVxuXG4gICAgLy8gQWN0aXZlIHN0YXRlXG4gICAgLmlzLWFjdGl2ZSA+IGEge1xuICAgICAgQGluY2x1ZGUgbWVudS1zdGF0ZS1hY3RpdmU7XG4gICAgfVxuICAgIFxuICAgIC8vIEJhY2t3YXJkIENvbXBhdGliaWxpdHkgZm9yIGFjdGl2ZSBzdGF0ZVxuICAgIEBpZiAkbWVudS1zdGF0ZS1iYWNrLWNvbXBhdCB7XG4gICAgICAuYWN0aXZlID4gYSB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtc3RhdGUtYWN0aXZlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFsaWduIGxlZnRcbiAgICAmLmFsaWduLSN7JGdsb2JhbC1sZWZ0fSB7XG4gICAgICBAaW5jbHVkZSBtZW51LWFsaWduKGxlZnQpO1xuICAgIH1cblxuICAgIC8vIEFsaWduIHJpZ2h0XG4gICAgJi5hbGlnbi0jeyRnbG9iYWwtcmlnaHR9IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24ocmlnaHQpO1xuXG4gICAgICAubmVzdGVkIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQoJG5lc3RlZC1hbGlnbm1lbnQ6IHJpZ2h0KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBbGlnbiBjZW50ZXJcbiAgICAmLmFsaWduLWNlbnRlciB7XG4gICAgICBAaW5jbHVkZSBtZW51LWFsaWduKGNlbnRlcik7XG4gICAgfVxuXG4gICAgLm1lbnUtdGV4dCB7XG4gICAgICBAaW5jbHVkZSBtZW51LXRleHQ7XG4gICAgfVxuICB9XG5cbiAgQGlmICRtZW51LWNlbnRlcmVkLWJhY2stY29tcGF0IHtcbiAgICAubWVudS1jZW50ZXJlZCB7XG4gICAgICA+IC5tZW51IHtcbiAgICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24oY2VudGVyKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQcmV2ZW50IEZPVUMgd2hlbiB1c2luZyB0aGUgUmVzcG9uc2l2ZSBNZW51IHBsdWdpblxuICAubm8tanMgW2RhdGEtcmVzcG9uc2l2ZS1tZW51XSB1bCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJhZGdlXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGJhZGdlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJhZGdlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIGZvciBiYWRnZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRiYWRnZS1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQWx0ZXJuYXRlIHRleHQgY29sb3IgZm9yIGJhZGdlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJhZGdlLWNvbG9yLWFsdDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JpbmcgY2xhc3Nlcy4gQSBtYXAgb2YgY2xhc3NlcyB0byBvdXRwdXQgaW4geW91ciBDU1MsIGxpa2UgYC5zZWNvbmRhcnlgLCBgLnN1Y2Nlc3NgLCBhbmQgc28gb24uXG4vLy8gQHR5cGUgTWFwXG4kYmFkZ2UtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgYmFkZ2VzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJhZGdlLXBhZGRpbmc6IDAuM2VtICFkZWZhdWx0O1xuXG4vLy8gTWluaW11bSB3aWR0aCBvZiBhIGJhZGdlLlxuLy8vIEB0eXBlIE51bWJlclxuJGJhZGdlLW1pbndpZHRoOiAyLjFlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBiYWRnZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYmFkZ2UtZm9udC1zaXplOiAwLjZyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgdGhlIGJhc2Ugc3R5bGVzIGZvciBhIGJhZGdlLlxuQG1peGluIGJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtaW4td2lkdGg6ICRiYWRnZS1taW53aWR0aDtcbiAgcGFkZGluZzogJGJhZGdlLXBhZGRpbmc7XG5cbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gIGZvbnQtc2l6ZTogJGJhZGdlLWZvbnQtc2l6ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1iYWRnZSB7XG4gIC5iYWRnZSB7XG4gICAgQGluY2x1ZGUgYmFkZ2U7XG5cbiAgICBiYWNrZ3JvdW5kOiAkYmFkZ2UtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGJhZGdlLWNvbG9yO1xuXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYmFkZ2UtcGFsZXR0ZSB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgICAgICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkY29sb3IsICgkYmFkZ2UtY29sb3IsICRiYWRnZS1jb2xvci1hbHQpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVhZGNydW1ic1xuLy8vL1xuXG4vLy8gTWFyZ2luIGFyb3VuZCBhIGJyZWFkY3J1bWJzIGNvbnRhaW5lci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYnMtaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDExKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgQ29sb3JcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBhY3RpdmUgYnJlYWRjcnVtYiBsaW5rLlxuLy8vIEB0eXBlIENvbG9yXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBPcGFjaXR5IG9mIGRpc2FibGVkIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGJldHdlZW4gYnJlYWRjcnVtYiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1pdGVtLW1hcmdpbjogMC43NXJlbSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgbWFrZXMgYnJlYWRjcnVtYiBsaW5rcyB1cHBlcmNhc2UuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhZGRzIGEgc2VwZXJhdG9yIGJldHdlZW4gYnJlYWRjcnVtYiBsaW5rcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3I6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIElmIGl0IGV4aXN0cyAkYnJlYWRjcnVtYnMtaXRlbS1zbGFzaCBpcyB1c2VkIHRvIGJ1aWxkICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci4gU2VlIHRoZSBkb2N1bWVudGF0aW9uLlxuQGlmIHZhcmlhYmxlLWV4aXN0cyhicmVhZGNydW1icy1pdGVtLXNsYXNoKSB7XG4gICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvcjogJGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2g7XG59XG5cbi8vLyBVc2VkIGNoYXJhY3RlciBmb3IgdGhlIGJyZWFkY3J1bWIgc2VwYXJhdG9yLlxuLy8vIEB0eXBlIENvbnRlbnRcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtOiAnLycgIWRlZmF1bHQ7XG5cbi8vLyBVc2VkIGNoYXJhY3RlciBmb3IgdGhlIGJyZWFkY3J1bWIgc2VwYXJhdG9yIGluIHJ0bCBtb2RlLlxuLy8vIEB0eXBlIENvbnRlbnRcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtLXJ0bDogJ1xcXFwnICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgYnJlYWRjcnVtYiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8gSWYgaXQgZXhpc3RzICRicmVhZGNydW1icy1pdGVtLXNsYXNoLWNvbG9yIGlzIHVzZWQgdG8gYnVpbGQgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yLiBTZWUgdGhlIGRvY3VtZW50YXRpb24uXG5AaWYgdmFyaWFibGUtZXhpc3RzKGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2gtY29sb3IpIHtcbiAgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1zbGFzaC1jb2xvcjtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGJyZWFkY3J1bWJzIGNvbnRhaW5lciwgYWxvbmcgd2l0aCB0aGUgc3R5bGVzIGZvciB0aGUgYDxsaT5gIGFuZCBgPGE+YCBlbGVtZW50cyBpbnNpZGUgb2YgaXQuXG5AbWl4aW4gYnJlYWRjcnVtYnMtY29udGFpbmVyIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbjogJGJyZWFkY3J1bWJzLW1hcmdpbjtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAvLyBJdGVtIHdyYXBwZXJcbiAgbGkge1xuICAgIGZsb2F0OiAjeyRnbG9iYWwtbGVmdH07XG5cbiAgICBmb250LXNpemU6ICRicmVhZGNydW1icy1pdGVtLWZvbnQtc2l6ZTtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItY3VycmVudDtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG5cbiAgICBAaWYgJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuXG4gICAgQGlmICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvciB7XG4gICAgICAvLyBOZWVkIHRvIGVzY2FwZSB0aGUgYmFja3NsYXNoXG4gICAgICAkc2VwYXJhdG9yOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdsdHInLCAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbSwgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWl0ZW0tcnRsKTtcblxuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBtYXJnaW46IDAgJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luO1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgY29udGVudDogJHNlcGFyYXRvcjtcbiAgICAgICAgICBjb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkYnJlYWRjcnVtYnMtaXRlbS1tYXJnaW47XG4gICAgfVxuICB9XG5cbiAgLy8gUGFnZSBsaW5rc1xuICBhIHtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1icmVhZGNydW1icyB7XG4gIC5icmVhZGNydW1icyB7XG4gICAgQGluY2x1ZGUgYnJlYWRjcnVtYnMtY29udGFpbmVyO1xuXG4gICAgLmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnV0dG9uLWdyb3VwXG4vLy8vXG5cbi8vLyBNYXJnaW4gZm9yIGJ1dHRvbiBncm91cHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uZ3JvdXAtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGJldHdlZW4gYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b25ncm91cC1zcGFjaW5nOiAxcHggIWRlZmF1bHQ7XG5cbi8vLyBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yOiAnLmJ1dHRvbicgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIG51bWJlciBvZiBidXR0b25zIHRoYXQgY2FuIGJlIGluIGFuIGV2ZW4td2lkdGggYnV0dG9uIGdyb3VwLiAoT25seSBuZWVkZWQgd2hlbiAkZ2xvYmFsLWZsZXhib3g6IGZhbHNlOylcbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b25ncm91cC1leHBhbmQtbWF4OiA2ICFkZWZhdWx0O1xuXG4vLy8gRGV0ZXJtaW5lcyBpZiAkYnV0dG9uLXJhZGl1cyBpcyBhcHBsaWVkIHRvIGVhY2ggYnV0dG9uIG9yIHRoZSBidXR0b24gZ3JvdXAgYXMgYSB3aG9sZS4gVXNlICRnbG9iYWwtcmFkaXVzIGluIF9zZXR0aW5ncy5zY3NzIHRvIGNoYW5nZSByYWRpdXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQWRkIHN0eWxlcyBmb3IgYSBidXR0b24gZ3JvdXAgY29udGFpbmVyLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkY2hpbGQtc2VsZWN0b3IgWyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcl0gLSBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc3BhY2luZyBbJGJ1dHRvbmdyb3VwLXNwYWNpbmddIC0gU3BhY2luZyBiZXR3ZWVuIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwKFxuICAkY2hpbGQtc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcixcbiAgJHNwYWNpbmc6ICRidXR0b25ncm91cC1zcGFjaW5nXG4pIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbi1ib3R0b206ICRidXR0b25ncm91cC1tYXJnaW47XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgZmxleC1ncm93OiAxO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IC8vIERpc2FibGUgY2xlYXJmaXhcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgfVxuXG4gICN7JGNoaWxkLXNlbGVjdG9yfSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkc3BhY2luZztcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZztcbiAgICBmb250LXNpemU6IG1hcC1nZXQoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCk7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICB9XG5cbiAgICBAaWYgbm90ICRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaCB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gTWFrZSBidXR0b25zIGJvbmRlZCB3aXRob3V0IGdhcCBiZXR3ZWVuIHRoZW0uIEJvcmRlcnMgYmV0d2VlbiBidXR0b25zIGFyZSBtZXJnZWRcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFskYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3JdIC0gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSBhIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAtbm8tZ2FwcyhcbiAgJHNlbGVjdG9yOiAkYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3IsXG4gICRib3JkZXItd2lkdGg6ICRidXR0b24taG9sbG93LWJvcmRlci13aWR0aFxuKSB7XG4gICN7JHNlbGVjdG9yfSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IHJlbS1jYWxjKC0kYm9yZGVyLXdpZHRoKTtcblxuICAgICsgI3skc2VsZWN0b3J9IHtcbiAgICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH0tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGZ1bGwtd2lkdGggYnV0dG9uIGdyb3VwLCBtYWtpbmcgZWFjaCBidXR0b24gZXF1YWwgd2lkdGguXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgYSBidXR0b24gZ3JvdXAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzcGFjaW5nIFskYnV0dG9uZ3JvdXAtc3BhY2luZ10gLSBTcGFjaW5nIGJldHdlZW4gYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAtZXhwYW5kKFxuICAkc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcixcbiAgJHNwYWNpbmc6ICRidXR0b25ncm91cC1zcGFjaW5nLFxuICAkY291bnQ6IG51bGxcbikge1xuICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IC0kc3BhY2luZztcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyAvLyBEaXNhYmxlIGNsZWFyZml4XG4gICAgfVxuICB9XG5cbiAgI3skc2VsZWN0b3J9IHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIE9uZSBjaGlsZFxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtICN7JHNwYWNpbmd9KTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBUd28gb3IgbW9yZSBjaGlsZHJlZW5cbiAgICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXgge1xuICAgICAgICAmOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKCN7JGl9KSB7XG4gICAgICAgICAgJiwgJjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgjeyRpfSkgfiAjeyRzZWxlY3Rvcn0ge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoI3twZXJjZW50YWdlKDEgLyAkaSl9IC0gI3skc3BhY2luZ30pO1xuICAgICAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmcgKiAtJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBTdGFja3MgdGhlIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgdGhlIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAtc3RhY2soXG4gICRzZWxlY3RvcjogJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXG4pIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgI3skc2VsZWN0b3J9IHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICBAaWYgbm90ICRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaCB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gVW4tc3RhY2tzIHRoZSBidXR0b25zIGluIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcl0gLSBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIHRoZSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwLXVuc3RhY2soXG4gICRzZWxlY3RvcjogJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXG4pIHtcbiAgI3skc2VsZWN0b3J9IHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIEBpZiBub3QgJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoIHtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1idXR0b24tZ3JvdXAge1xuICAuYnV0dG9uLWdyb3VwIHtcbiAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXA7XG5cbiAgICAvLyBTaXplc1xuICAgIEBlYWNoICRzaXplLCAkdmFsdWUgaW4gbWFwLXJlbW92ZSgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9ICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHZhbHVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEV2ZW4td2lkdGggR3JvdXBcbiAgICAmLmV4cGFuZGVkIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC1leHBhbmQ7XG4gICAgfVxuXG4gICAgLy8gU29saWQsIGhvbGxvdyAmIGNsZWFyIHN0eWxlc1xuICAgIEBlYWNoICRmaWxsaW5nIGluIChzb2xpZCBob2xsb3cgY2xlYXIpIHtcbiAgICAgICRiYXNlLXNlbGVjdG9yOiBpZigkYnV0dG9uLWZpbGwgPT0gJGZpbGxpbmcsIG51bGwsICcuI3skZmlsbGluZ30nKTtcblxuICAgICAgJiN7JGJhc2Utc2VsZWN0b3J9IHtcbiAgICAgICAgLy8gRG8gbm90IGdlbmVyYXRlIGJ1dHRvbiBiYXNlIHN0eWxlcyBmb3IgdGhlIGRlZmF1bHQgZmlsbGluZ1xuICAgICAgICBAaWYoJGJ1dHRvbi1maWxsICE9ICRmaWxsaW5nKSB7XG4gICAgICAgICAgI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1maWxsKCRmaWxsaW5nKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1maWxsLXN0eWxlKCRmaWxsaW5nKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJGluZGl2aWR1YWwtc2VsZWN0b3I6IGlmKCRidXR0b24tZmlsbCA9PSAkZmlsbGluZywgbnVsbCwgJyAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0uI3skbmFtZX0nKTtcblxuICAgICAgICAgICYuI3skbmFtZX0gI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9LCAjeyRpbmRpdmlkdWFsLXNlbGVjdG9yfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZmlsbC1zdHlsZSgkZmlsbGluZywgJGNvbG9yLCBhdXRvLCBhdXRvKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cblxuICAgICYubm8tZ2FwcyB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXAtbm8tZ2FwcztcbiAgICB9XG5cbiAgICAmLnN0YWNrZWQsXG4gICAgJi5zdGFja2VkLWZvci1zbWFsbCxcbiAgICAmLnN0YWNrZWQtZm9yLW1lZGl1bSB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXAtc3RhY2s7XG5cbiAgICAgICYuZXhwYW5kZWQge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXAtZXhwYW5kO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuc3RhY2tlZC1mb3Itc21hbGwge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXVuc3RhY2s7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGFja2VkLWZvci1tZWRpdW0ge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXAtdW5zdGFjaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgY2FsbG91dFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FsbG91dC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZhZGUgdmFsdWUgZm9yIGNhbGxvdXQgYmFja2dyb3VuZHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2FsbG91dC1iYWNrZ3JvdW5kLWZhZGU6IDg1JSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIHN0eWxlIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBMaXN0XG4kY2FsbG91dC1ib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRibGFjaywgMC4yNSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNhbGxvdXQtbWFyZ2luOiAwIDAgMXJlbSAwICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIENhbGxvdXQgcGFkZGluZ3MuXG4vLy8gQHR5cGUgTWFwXG4kY2FsbG91dC1zaXplczogKFxuICBzbWFsbDogMC41cmVtLFxuICBkZWZhdWx0OiAxcmVtLFxuICBsYXJnZTogM3JlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FsbG91dC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBjYWxsb3V0cywgaWYgdGhlIGNhbGxvdXQgaGFzIGEgZGFyayBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FsbG91dC1mb250LWNvbG9yLWFsdDogJGJvZHktYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIHJhZGl1cyBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBBbW91bnQgdG8gdGludCBsaW5rcyB1c2VkIHdpdGhpbiBjb2xvcmVkIHBhbmVscy4gU2V0IHRvIGBmYWxzZWAgdG8gZGlzYWJsZSB0aGlzIGZlYXR1cmUuXG4vLy8gQHR5cGUgTnVtYmVyIHwgQm9vbGVhblxuJGNhbGxvdXQtbGluay10aW50OiAzMCUgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIGJhc2ljIHN0eWxlcyBmb3IgYSBjYWxsb3V0LCBpbmNsdWRpbmcgcGFkZGluZyBhbmQgbWFyZ2luLlxuQG1peGluIGNhbGxvdXQtYmFzZSgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46ICRjYWxsb3V0LW1hcmdpbjtcbiAgcGFkZGluZzogbWFwLWdldCgkY2FsbG91dC1zaXplcywgZGVmYXVsdCk7XG5cbiAgYm9yZGVyOiAkY2FsbG91dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRjYWxsb3V0LXJhZGl1cztcblxuICAvLyBSZXNwZWN0IHRoZSBwYWRkaW5nLCBmb29sLlxuICA+IDpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8vIEdlbmVyYXRlIHF1aWNrIHN0eWxlcyBmb3IgYSBjYWxsb3V0IHVzaW5nIGEgc2luZ2xlIGNvbG9yIGFzIGEgYmFzZWxpbmUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskY2FsbG91dC1iYWNrZ3JvdW5kXSAtIENvbG9yIHRvIHVzZS5cbkBtaXhpbiBjYWxsb3V0LXN0eWxlKCRjb2xvcjogJGNhbGxvdXQtYmFja2dyb3VuZCkge1xuICAkYmFja2dyb3VuZDogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkY2FsbG91dC1iYWNrZ3JvdW5kLWZhZGUpO1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkYmFja2dyb3VuZCwgKCRjYWxsb3V0LWZvbnQtY29sb3IsICRjYWxsb3V0LWZvbnQtY29sb3ItYWx0KSk7XG59XG5cbkBtaXhpbiBjYWxsb3V0LXNpemUoJHBhZGRpbmcpIHtcbiAgcGFkZGluZy10b3A6ICRwYWRkaW5nO1xuICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZztcbiAgcGFkZGluZy1ib3R0b206ICRwYWRkaW5nO1xuICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xufVxuXG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjYWxsb3V0LlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGNhbGxvdXQtYmFja2dyb3VuZF0gLSBDb2xvciB0byB1c2UuXG5AbWl4aW4gY2FsbG91dCgkY29sb3I6ICRjYWxsb3V0LWJhY2tncm91bmQpIHtcbiAgQGluY2x1ZGUgY2FsbG91dC1iYXNlO1xuICBAaW5jbHVkZSBjYWxsb3V0LXN0eWxlKCRjb2xvcik7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWNhbGxvdXQge1xuICAuY2FsbG91dCB7XG4gICAgQGluY2x1ZGUgY2FsbG91dDtcblxuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgQGluY2x1ZGUgY2FsbG91dC1zdHlsZSgkY29sb3IpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBlYWNoICRzaXplLCAkcGFkZGluZyBpbiBtYXAtcmVtb3ZlKCRjYWxsb3V0LXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgY2FsbG91dC1zaXplKCRwYWRkaW5nKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBjYXJkXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYXJkLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgY2FyZHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYXJkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYXJkLWRpdmlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBzdHlsZS5cbi8vLyBAdHlwZSBMaXN0XG4kY2FyZC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY2FyZCBzaGFkb3cuXG4vLy8gQHR5cGUgTGlzdFxuJGNhcmQtc2hhZG93OiBub25lICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgcmFkaXVzLlxuLy8vIEB0eXBlIExpc3RcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nLlxuLy8vIEB0eXBlIE51bWJlclxuJGNhcmQtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luLlxuLy8vIEB0eXBlIG51bWJlclxuJGNhcmQtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjYXJkIGNvbnRhaW5lci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGNhcmQuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gZm9udCBjb2xvciBvZiB0aGUgY2FyZC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1hcmdpbiAtIEJvdHRvbSBtYXJnaW4gb2YgdGhlIGNhcmQuXG4vLy8gQHBhcmFtIHtMaXN0fSAkYm9yZGVyIC0gQm9yZGVyIGFyb3VuZCB0aGUgY2FyZC5cbi8vLyBAcGFyYW0ge0xpc3R9ICRyYWRpdXMgLSBib3JkZXIgcmFkaXVzIG9mIHRoZSBjYXJkLlxuLy8vIEBwYXJhbSB7TGlzdH0gJHNoYWRvdyAtIGJveCBzaGFkb3cgb2YgdGhlIGNhcmQuXG5AbWl4aW4gY2FyZC1jb250YWluZXIoXG4gICRiYWNrZ3JvdW5kOiAkY2FyZC1iYWNrZ3JvdW5kLFxuICAkY29sb3I6ICRjYXJkLWZvbnQtY29sb3IsXG4gICRtYXJnaW46ICRjYXJkLW1hcmdpbi1ib3R0b20sXG4gICRib3JkZXI6ICRjYXJkLWJvcmRlcixcbiAgJHJhZGl1czogJGNhcmQtYm9yZGVyLXJhZGl1cyxcbiAgJHNoYWRvdzogJGNhcmQtc2hhZG93XG4pIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgfVxuXG4gIG1hcmdpbi1ib3R0b206ICRtYXJnaW47XG5cbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuXG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBib3gtc2hhZG93OiAkc2hhZG93O1xuXG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgJiA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjYXJkIGRpdmlkZXIuXG5AbWl4aW4gY2FyZC1kaXZpZGVyKFxuICAkYmFja2dyb3VuZDogJGNhcmQtZGl2aWRlci1iYWNrZ3JvdW5kLFxuICAkcGFkZGluZzogJGNhcmQtcGFkZGluZ1xuKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleDogMCAxIGF1dG87XG4gIH1cblxuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG5cbiAgJiA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjYXJkIHNlY3Rpb24uXG5AbWl4aW4gY2FyZC1zZWN0aW9uKFxuICAkcGFkZGluZzogJGNhcmQtcGFkZGluZ1xuKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICB9XG5cbiAgcGFkZGluZzogJHBhZGRpbmc7XG5cbiAgJiA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWNhcmQge1xuICAuY2FyZCB7XG4gICAgQGluY2x1ZGUgY2FyZC1jb250YWluZXI7XG4gIH1cblxuICAuY2FyZC1kaXZpZGVyIHtcbiAgICBAaW5jbHVkZSBjYXJkLWRpdmlkZXI7XG4gIH1cblxuICAuY2FyZC1zZWN0aW9uIHtcbiAgICBAaW5jbHVkZSBjYXJkLXNlY3Rpb247XG4gIH1cblxuICAvLyBGb3IgSUUgMTEgLSBGbGV4YnVnXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MvaXNzdWVzLzc1XG4gIC5jYXJkLWltYWdlIHtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBjbG9zZS1idXR0b25cbi8vLy9cblxuLy8vIERlZmF1bHQgcG9zaXRpb24gb2YgdGhlIGNsb3NlIGJ1dHRvbi4gVGhlIGZpcnN0IHZhbHVlIHNob3VsZCBiZSBgcmlnaHRgIG9yIGBsZWZ0YCwgYW5kIHRoZSBzZWNvbmQgdmFsdWUgc2hvdWxkIGJlIGB0b3BgIG9yIGBib3R0b21gLlxuLy8vIEB0eXBlIExpc3RcbiRjbG9zZWJ1dHRvbi1wb3NpdGlvbjogcmlnaHQgdG9wICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB6LWluZGV4IGZvciBhIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjbG9zZWJ1dHRvbi16LWluZGV4OiAxMCAhZGVmYXVsdDtcblxuLy8vIEJ1dHRvbiBzaXplIHRvIHVzZSBhcyBkZWZhdWx0XG4vLy8gQHR5cGUgU3RyaW5nXG4vLy8gQHNlZSAkY2xvc2VidXR0b24tc2l6ZVxuLy8vIEBzZWUgJGNsb3NlYnV0dG9uLW9mZnNldC1ob3Jpem9udGFsXG4vLy8gQHNlZSAkY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsXG4kY2xvc2VidXR0b24tZGVmYXVsdC1zaXplOiBtZWRpdW0gIWRlZmF1bHQ7XG5cbi8vLyBSaWdodCAob3IgbGVmdCkgb2Zmc2V0KHMpIGZvciBhIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBOdW1iZXJ8TWFwXG4kY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWw6IChcbiAgc21hbGw6IDAuNjZyZW0sXG4gIG1lZGl1bTogMXJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBUb3AgKG9yIGJvdHRvbSkgb2Zmc2V0KHMpIGZvciBhIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBOdW1iZXJ8TWFwXG4kY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsOiAoXG4gIHNtYWxsOiAwLjMzZW0sXG4gIG1lZGl1bTogMC41cmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIFNpemUocykgb2YgdGhlIGNsb3NlIGJ1dHRvbi4gVXNlZCB0byBnZW5lcmF0ZSBzaXppbmcgbW9kaWZpZXJzLlxuLy8vIEB0eXBlIE51bWJlcnxNYXBcbiRjbG9zZWJ1dHRvbi1zaXplOiAoXG4gIHNtYWxsOiAxLjVlbSxcbiAgbWVkaXVtOiAyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gVGhlIGxpbmUtaGVpZ2h0IG9mIHRoZSBjbG9zZSBidXR0b24uIEl0IGFmZmVjdHMgdGhlIHNwYWNpbmcgb2YgdGhlIGVsZW1lbnQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2xvc2VidXR0b24tbGluZWhlaWdodDogMSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBDb2xvclxuJGNsb3NlYnV0dG9uLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiB0aGUgY2xvc2UgYnV0dG9uIHdoZW4gYmVpbmcgaG92ZXJlZCBvbi5cbi8vLyBAdHlwZSBDb2xvclxuJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyOiAkYmxhY2sgIWRlZmF1bHQ7XG5cblxuLy8vIEdldCB0aGUgc2l6ZSBhbmQgcG9zaXRpb24gZm9yIGEgY2xvc2UgYnV0dG9uLiBJZiB0aGUgaW5wdXQgdmFsdWUgaXMgYSBudW1iZXIsIHRoZSBudW1iZXIgaXMgcmV0dXJuZWQuIElmIHRoZSBpbnB1dCB2YWx1ZSBpcyBhIGNvbmZpZyBtYXAgYW5kIHRoZSBtYXAgaGFzIHRoZSBrZXkgYCRzaXplYCwgdGhlIHZhbHVlIGlzIHJldHVybmVkLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkdmFsdWUgLSBBIG51bWJlciBvciBtYXAgdGhhdCByZXByZXNlbnRzIHRoZSBzaXplIG9yIHBvc2l0aW9uIHZhbHVlKHMpIG9mIHRoZSBjbG9zZSBidXR0b24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIFRoZSBzaXplIG9mIHRoZSBjbG9zZSBidXR0b24gdG8gdXNlLlxuLy8vXG4vLy8gQHJldHVybiB7TnVtYmVyfSBUaGUgZ2l2ZW4gbnVtYmVyIG9yIHRoZSB2YWx1ZSBmb3VuZCBpbiB0aGUgbWFwLlxuQGZ1bmN0aW9uIC16Zi1nZXQtc2l6ZS12YWwoJHZhbHVlLCAkc2l6ZSkge1xuICAvLyBDaGVjayBpZiB0aGUgdmFsdWUgaXMgYSBudW1iZXJcbiAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyB7XG4gICAgLy8gSWYgaXQgaXMsIGp1c3QgcmV0dXJuIHRoZSBudW1iZXJcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuXG4gIC8vIENoZWNrIGlmIHRoZSBzaXplIG5hbWUgZXhpc3RzIGluIHRoZSB2YWx1ZSBtYXBcbiAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJHZhbHVlLCAkc2l6ZSkge1xuICAgIC8vIElmIGl0IGRvZXMsIHJldHVybiB0aGUgdmFsdWVcbiAgICBAcmV0dXJuIG1hcC1nZXQoJHZhbHVlLCAkc2l6ZSk7XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIHNpemUgYW5kIHBvc2l0aW9uIG9mIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgW21lZGl1bV0gLSBUaGUgc2l6ZSB0byB1c2UuIFNldCB0byBgc21hbGxgIHRvIGNyZWF0ZSBhIHNtYWxsIGNsb3NlIGJ1dHRvbi4gVGhlICdtZWRpdW0nIHZhbHVlcyBkZWZpbmVkIGluIGAkY2xvc2VidXR0b24tKmAgdmFyaWFibGVzIHdpbGwgYmUgdXNlZCBhcyB0aGUgZGVmYXVsdCBzaXplIGFuZCBwb3NpdGlvbiBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuQG1peGluIGNsb3NlLWJ1dHRvbi1zaXplKCRzaXplKSB7XG4gICR4OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAxKTtcbiAgJHk6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDIpO1xuXG4gICN7JHh9OiAtemYtZ2V0LXNpemUtdmFsKCRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbCwgJHNpemUpO1xuICAjeyR5fTogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsLCAkc2l6ZSk7XG4gIGZvbnQtc2l6ZTogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tc2l6ZSwgJHNpemUpO1xuICBsaW5lLWhlaWdodDogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tbGluZWhlaWdodCwgJHNpemUpO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2xvc2UgYnV0dG9uLCB1c2luZyB0aGUgc3R5bGVzIGluIHRoZSBzZXR0aW5ncyB2YXJpYWJsZXMuXG5AbWl4aW4gY2xvc2UtYnV0dG9uIHtcbiAgJHg6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDEpO1xuICAkeTogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMik7XG5cbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6ICRjbG9zZWJ1dHRvbi16LWluZGV4O1xuICBjb2xvcjogJGNsb3NlYnV0dG9uLWNvbG9yO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1jbG9zZS1idXR0b24ge1xuICAuY2xvc2UtYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBjbG9zZS1idXR0b247XG5cbiAgICAvLyBHZW5lcmF0ZSBhIHBsYWNlaG9sZGVyIGFuZCBhIGNsYXNzIGZvciBlYWNoIHNpemVcbiAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJGNsb3NlYnV0dG9uLXNpemUge1xuICAgICAgQGF0LXJvb3Qge1xuICAgICAgICAlemYtY2xvc2UtYnV0dG9uLS0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgY2xvc2UtYnV0dG9uLXNpemUoJG5hbWUpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICBAZXh0ZW5kICV6Zi1jbG9zZS1idXR0b24tLSN7JG5hbWV9O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFVzZSBieSBkZWZhdWx0IHRoZSBwbGFjZWhvbGRlciBvZiB0aGUgZGVmYXVsdCBzaXplXG4gICAgQGV4dGVuZCAlemYtY2xvc2UtYnV0dG9uLS0jeyRjbG9zZWJ1dHRvbi1kZWZhdWx0LXNpemV9O1xuICB9XG59XG4iLCJAbWl4aW4gZm91bmRhdGlvbi1tZW51LWljb24ge1xuICAubWVudS1pY29uIHtcbiAgICBAaW5jbHVkZSBoYW1idXJnZXIoJGNvbG9yOiAkdGl0bGViYXItaWNvbi1jb2xvciwgJGNvbG9yLWhvdmVyOiAkdGl0bGViYXItaWNvbi1jb2xvci1ob3Zlcik7XG4gIH1cblxuICAubWVudS1pY29uLmRhcmsge1xuICAgIEBpbmNsdWRlIGhhbWJ1cmdlcjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGRyaWxsZG93blxuLy8vL1xuXG4vLy8gVHJhbnNpdGlvbiBwcm9wZXJ0eSB0byB1c2UgZm9yIGFuaW1hdGluZyBtZW51cy5cbi8vLyBAdHlwZSBUcmFuc2l0aW9uXG4kZHJpbGxkb3duLXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBsaW5lYXIgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIGFycm93cyB0byBkcmlsbGRvd24gaXRlbXMgd2l0aCBzdWJtZW51cywgYXMgd2VsbCBhcyB0aGUgYmFjayBidXR0b24uXG4vLy8gQHR5cGUgQm9vbGVhblxuJGRyaWxsZG93bi1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyaWxsZG93biBtZW51IGl0ZW0gcGFkZGluZy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcmlsbGRvd24tcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyaWxsZG93biBtZW51IG5lc3RlZCBtYXJnaW5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcmlsbGRvd24tbmVzdGVkLW1hcmdpbjogMCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGRyaWxsZG93biB0b3AgbGV2ZWwgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcmlsbGRvd24tYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gbWVudSBpdGVtIHBhZGRpbmcgaW4gdGhlIHN1Ym1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJpbGxkb3duLXN1Ym1lbnUtcGFkZGluZzogJGRyaWxsZG93bi1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgZHJpbGxkb3duIHN1Ym1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJpbGxkb3duLXN1Ym1lbnUtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gYXJyb3cgY29sb3IgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBDb2xvclxuJGRyaWxsZG93bi1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyaWxsZG93biBhcnJvdyBzaXplIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJpbGxkb3duLWFycm93LXNpemU6IDZweCAhZGVmYXVsdDtcblxuQG1peGluIHpmLWRyaWxsZG93bi1sZWZ0LXJpZ2h0LWFycm93cyB7XG4gIC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyaWxsZG93bi1hcnJvdy1zaXplLCAkZHJpbGxkb3duLWFycm93LWNvbG9yLCAkZ2xvYmFsLXJpZ2h0KTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbWFyZ2luLXRvcDogLTEgKiAkZHJpbGxkb3duLWFycm93LXNpemU7XG4gICAgICAjeyRnbG9iYWwtcmlnaHR9OiAxcmVtO1xuICAgIH1cbiAgfVxuXG4gICYuYWxpZ24tbGVmdCAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIHJpZ2h0KTtcbiAgICByaWdodDogMXJlbTtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG5cbiAgJi5hbGlnbi1yaWdodCAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIGxlZnQpO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDFyZW07XG4gIH1cblxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1kcmlsbGRvd24tbWVudSB7XG4gIC8vIEFwcGxpZWQgdG8gdGhlIE1lbnUgY29udGFpbmVyXG4gIC5pcy1kcmlsbGRvd24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgbGkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgJi5hbmltYXRlLWhlaWdodCB7XG4gICAgICB0cmFuc2l0aW9uOiBoZWlnaHQgMC41cztcbiAgICB9XG4gIH1cblxuICAvLyBUaGUgdG9wIGxldmVsIDx1bD5cbiAgLmRyaWxsZG93biB7XG4gICAgYSB7XG4gICAgICBwYWRkaW5nOiAkZHJpbGxkb3duLXBhZGRpbmc7XG4gICAgICBiYWNrZ3JvdW5kOiAkZHJpbGxkb3duLWJhY2tncm91bmQ7XG4gICAgfVxuXG4gICAgLy8gQXBwbGllZCB0byBzdWJtZW51IDx1bD5zXG4gICAgLmlzLWRyaWxsZG93bi1zdWJtZW51IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgICN7JGdsb2JhbC1sZWZ0fTogMTAwJTtcbiAgICAgIHotaW5kZXg6IC0xO1xuXG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6ICRkcmlsbGRvd24tc3VibWVudS1iYWNrZ3JvdW5kO1xuICAgICAgdHJhbnNpdGlvbjogJGRyaWxsZG93bi10cmFuc2l0aW9uO1xuXG4gICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBsdHIsIC0xMDAlLCAxMDAlKSk7XG4gICAgICB9XG5cbiAgICAgICYuaXMtY2xvc2luZyB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IGx0ciwgMTAwJSwgLTEwMCUpKTtcbiAgICAgIH1cblxuICAgICAgLy8gU3VibWVudSBpdGVtIHBhZGRpbmdcbiAgICAgIGEge1xuICAgICAgICBwYWRkaW5nOiAkZHJpbGxkb3duLXN1Ym1lbnUtcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubmVzdGVkLmlzLWRyaWxsZG93bi1zdWJtZW51IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkKCRkcmlsbGRvd24tbmVzdGVkLW1hcmdpbik7XG4gICAgfVxuXG4gICAgLmRyaWxsZG93bi1zdWJtZW51LWNvdmVyLXByZXZpb3VzIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgQGlmICRkcmlsbGRvd24tYXJyb3dzIHtcbiAgICAgIEBpbmNsdWRlIHpmLWRyaWxsZG93bi1sZWZ0LXJpZ2h0LWFycm93cztcblxuICAgICAgLmpzLWRyaWxsZG93bi1iYWNrID4gYTo6YmVmb3JlIHtcbiAgICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcmlsbGRvd24tYXJyb3ctc2l6ZSwgJGRyaWxsZG93bi1hcnJvdy1jb2xvciwgJGdsb2JhbC1sZWZ0KTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMC43NXJlbTsgLy8gQ3JlYXRlcyBzcGFjZSBiZXR3ZWVuIHRoZSBhcnJvdyBhbmQgdGhlIHRleHRcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcm9wZG93blxuLy8vL1xuXG4vLy8gUGFkZGluZyBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3duLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3duLWJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bi1mb250LXNpemU6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBXaWR0aCBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd24td2lkdGg6IDMwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIGRyb3Bkb3duIHBhbmVzLiBFYWNoIHNpemUgaXMgYSBDU1MgY2xhc3MgeW91IGNhbiBhcHBseS5cbi8vLyBAdHlwZSBNYXBcbiRkcm9wZG93bi1zaXplczogKFxuICB0aW55OiAxMDBweCxcbiAgc21hbGw6IDIwMHB4LFxuICBsYXJnZTogNDAwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQXBwbGllcyBzdHlsZXMgZm9yIGEgYmFzaWMgZHJvcGRvd24uXG5AbWl4aW4gZHJvcGRvd24tY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcblxuICBkaXNwbGF5OiBub25lO1xuXG4gIHdpZHRoOiAkZHJvcGRvd24td2lkdGg7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nO1xuXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYm9yZGVyOiAkZHJvcGRvd24tYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkZHJvcGRvd24tcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmFja2dyb3VuZDtcblxuICBmb250LXNpemU6ICRkcm9wZG93bi1mb250LXNpemU7XG5cblxuICAvLyBBbGxvdyBhbiBpbnRlcm1pdHRlbnQgc3RhdGUgdG8gZG8gcG9zaXRpb25pbmcgYmVmb3JlIG1ha2luZyB2aXNpYmxlLlxuICAmLmlzLW9wZW5pbmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgJi5pcy1vcGVuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWRyb3Bkb3duIHtcbiAgLmRyb3Bkb3duLXBhbmUge1xuICAgIEBpbmNsdWRlIGRyb3Bkb3duLWNvbnRhaW5lcjtcbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkZHJvcGRvd24tc2l6ZXMge1xuICAgIC5kcm9wZG93bi1wYW5lIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICB3aWR0aDogJHNpemU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZHJvcGRvd24tbWVudVxuLy8vL1xuXG4vLy8gRW5hYmxlcyBhcnJvd3MgZm9yIGl0ZW1zIHdpdGggZHJvcGRvd24gbWVudXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGRyb3Bkb3dubWVudS1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyb3Bkb3duIG1lbnUgYXJyb3cgY29sb3IgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvcjogJGFuY2hvci1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBzaXplIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWFycm93LXNpemU6IDZweCAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBwYWRkaW5nIGZvciBhbGlnbmluZyB0aGUgYXJyb3cgY29ycmVjdGx5LlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1hcnJvdy1wYWRkaW5nOiAxLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBNaW5pbXVtIHdpZHRoIG9mIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtbWluLXdpZHRoOiAyMDBweCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHRvcCBsZXZlbCBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kOiBudWxsICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgZHJvcGRvd25zLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LXN1Ym1lbnUtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3IgdG9wIGxldmVsIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3dubWVudS1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBuZXN0ZWQgbWFyZ2luXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd25tZW51LW5lc3RlZC1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciBzdWItbWVudSBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bm1lbnUtc3VibWVudS1wYWRkaW5nOiAkZHJvcGRvd25tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgZm9yIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vLyBAdHlwZSBMaXN0XG4kZHJvcGRvd25tZW51LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8gQm9yZGVyIHdpZHRoIGZvciBkcm9wZG93biBzdWItbWVudXMuXG4vLyBVc2VkIHRvIGFkanVzdCB0b3AgbWFyZ2luIG9mIGEgc3ViLW1lbnUgaWYgYSBib3JkZXIgaXMgdXNlZC5cbi8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1ib3JkZXItd2lkdGg6IG50aCgkZHJvcGRvd25tZW51LWJvcmRlciwgMSk7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGFuIGFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0uIEV4cGxpY2l0IG92ZXJyaWRlIGZvciBtZW51IGRlZmF1bHRzXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bi1tZW51LWl0ZW0tY29sb3ItYWN0aXZlOiBnZXQtY29sb3IocHJpbWFyeSkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0uIEV4cGxpY2l0IG92ZXJyaWRlIGZvciBtZW51IGRlZmF1bHRzXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bi1tZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG5AbWl4aW4gemYtZHJvcGRvd24tbGVmdC1yaWdodC1hcnJvd3Mge1xuICA+IGE6OmFmdGVyIHtcbiAgICAjeyRnbG9iYWwtcmlnaHR9OiAxNHB4O1xuICB9XG5cbiAgJi5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIGxlZnQpO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDVweDtcbiAgfVxuXG4gICYub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgcmlnaHQpO1xuICB9XG59XG5cbkBtaXhpbiBkcm9wZG93bi1tZW51LWRpcmVjdGlvbigkZGlyOiBob3Jpem9udGFsKSB7XG4gIEBpZiAkZGlyID09IGhvcml6b250YWwge1xuICAgID4gbGkub3BlbnMtbGVmdCB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiBsaS5vcGVucy1yaWdodCB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy0jeyRnbG9iYWwtcmlnaHR9OiAkZHJvcGRvd25tZW51LWFycm93LXBhZGRpbmc7XG4gICAgICB9XG5cbiAgICAgID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCBkb3duKTtcbiAgICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogNXB4O1xuICAgICAgICAjeyRnbG9iYWwtbGVmdH06IGF1dG87XG4gICAgICAgIG1hcmdpbi10b3A6IC0xICogKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSAvIDIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkZGlyID09IHZlcnRpY2FsIHtcbiAgICA+IGxpIHtcbiAgICAgIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgfVxuXG4gICAgICAmLm9wZW5zLWxlZnQge1xuICAgICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLm9wZW5zLXJpZ2h0IHtcbiAgICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaWYgJGRyb3Bkb3dubWVudS1hcnJvd3Mge1xuICAgICAgICBAaW5jbHVkZSB6Zi1kcm9wZG93bi1sZWZ0LXJpZ2h0LWFycm93cztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEB3YXJuICdUaGUgZGlyZWN0aW9uIHVzZWQgZm9yIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKCkgbXVzdCBiZSBob3Jpem9udGFsIG9yIHZlcnRpY2FsLic7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudSB7XG4gIC5kcm9wZG93bi5tZW51IHtcbiAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcblxuICAgIGEge1xuICAgICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICAgIH1cblxuICAgIC8vIFRvcC1sZXZlbCBpdGVtXG4gICAgPiBsaSA+IGEge1xuICAgICAgYmFja2dyb3VuZDogJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kO1xuICAgICAgcGFkZGluZzogJGRyb3Bkb3dubWVudS1wYWRkaW5nO1xuICAgIH1cblxuICAgIC8vIFRvcC1sZXZlbCBpdGVtIGFjdGl2ZSBzdGF0ZVxuICAgID4gbGkuaXMtYWN0aXZlID4gYSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkZHJvcGRvd24tbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlO1xuICAgICAgY29sb3I6ICRkcm9wZG93bi1tZW51LWl0ZW0tY29sb3ItYWN0aXZlO1xuICAgIH1cblxuICAgIC5uby1qcyAmIHVsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLm5lc3RlZC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkKCRkcm9wZG93bm1lbnUtbmVzdGVkLW1hcmdpbik7XG4gICAgfVxuXG4gICAgJi52ZXJ0aWNhbCB7XG4gICAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgfVxuXG4gICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgICAgJi4jeyRzaXplfS1ob3Jpem9udGFsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuI3skc2l6ZX0tdmVydGljYWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuYWxpZ24tcmlnaHQge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUuZmlyc3Qtc3ViIHtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaXMtZHJvcGRvd24tbWVudS52ZXJ0aWNhbCB7XG4gICAgd2lkdGg6IDEwMHB4O1xuXG4gICAgJi5hbGlnbi1yaWdodCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBhOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgICN7JGdsb2JhbC1yaWdodH06IDVweDtcbiAgICAgICN7JGdsb2JhbC1sZWZ0fTogYXV0bztcbiAgICAgIG1hcmdpbi10b3A6IC0xICogJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplO1xuICAgIH1cblxuICAgICYub3BlbnMtaW5uZXIgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG5cbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIEBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdydGwnIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cblxuICAgICYub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAxMDAlO1xuICAgIHotaW5kZXg6IDE7XG5cbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1pbi13aWR0aDogJGRyb3Bkb3dubWVudS1taW4td2lkdGg7XG5cbiAgICBib3JkZXI6ICRkcm9wZG93bm1lbnUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQ6ICRkcm9wZG93bm1lbnUtc3VibWVudS1iYWNrZ3JvdW5kO1xuXG4gICAgLmRyb3Bkb3duICYgYSB7XG4gICAgICBwYWRkaW5nOiAkZHJvcGRvd25tZW51LXN1Ym1lbnUtcGFkZGluZztcbiAgICB9XG5cbiAgICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICAgICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgICAgQGluY2x1ZGUgemYtZHJvcGRvd24tbGVmdC1yaWdodC1hcnJvd3M7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICh0eXBlLW9mKCRkcm9wZG93bm1lbnUtYm9yZGVyLXdpZHRoKSA9PSAnbnVtYmVyJykge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICBtYXJnaW4tdG9wOiAoLSRkcm9wZG93bm1lbnUtYm9yZGVyLXdpZHRoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IGxpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC8vIFtUT0RPXSBDdXQgYmFjayBzcGVjaWZpY2l0eVxuICAgIC8vJjpub3QoLmpzLWRyb3Bkb3duLW5vaG92ZXIpID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50OmhvdmVyID4gJiwgLy8gd2h5IGlzIHRoaXMgbGluZSBuZWVkZWQ/IE9wZW5pbmcgaXMgaGFuZGxlZCBieSBKUyBhbmQgdGhpcyBjYXVzZXMgc29tZSB1Z2x5IGZsaWNrZXJpbmcgd2hlbiB0aGUgc3ViIGlzIHJlLXBvc2l0aW9uZWQgYXV0b21hdGljYWxseS4uLlxuICAgICYuanMtZHJvcGRvd24tYWN0aXZlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHJlc3BvbnNpdmUtZW1iZWRcbi8vLy9cblxuLy8vIE1hcmdpbiBiZWxvdyBhIHJlc3BvbnNpdmUgZW1iZWQgY29udGFpbmVyLlxuLy8vIEB0eXBlIE51bWJlclxuJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuXG4vLy8gQXNwZWN0IHJhdGlvcyB1c2VkIHRvIGRldGVybWluZSBwYWRkaW5nLWJvdHRvbSBvZiByZXNwb25zaXZlIGVtYmVkIGNvbnRhaW5lcnMuXG4vLy8gQHR5cGUgTWFwXG4kcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3M6IChcbiAgZGVmYXVsdDogNCBieSAzLFxuICB3aWRlc2NyZWVuOiAxNiBieSA5LFxuKSAhZGVmYXVsdDtcblxuLy8vIENyZWF0ZXMgYSByZXNwb25zaXZlIGVtYmVkIGNvbnRhaW5lci5cbi8vLyBAcGFyYW0ge1N0cmluZ3xMaXN0fSAkcmF0aW8gW2RlZmF1bHRdIC0gUmF0aW8gb2YgdGhlIGNvbnRhaW5lci4gQ2FuIGJlIGEga2V5IGZyb20gdGhlIGAkcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3NgIG1hcCBvciBhIGxpc3QgZm9ybWF0dGVkIGFzIGB4IGJ5IHlgLlxuQG1peGluIHJlc3BvbnNpdmUtZW1iZWQoJHJhdGlvOiBkZWZhdWx0KSB7XG4gIEBpZiB0eXBlLW9mKCRyYXRpbykgPT0gJ3N0cmluZycge1xuICAgICRyYXRpbzogbWFwLWdldCgkcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3MsICRyYXRpbyk7XG4gIH1cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRyZXNwb25zaXZlLWVtYmVkLW1hcmdpbi1ib3R0b207XG4gIHBhZGRpbmctYm90dG9tOiByYXRpby10by1wZXJjZW50YWdlKCRyYXRpbyk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgaWZyYW1lLFxuICBvYmplY3QsXG4gIGVtYmVkLFxuICB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAjeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQge1xuICAucmVzcG9uc2l2ZS1lbWJlZCxcbiAgLmZsZXgtdmlkZW8ge1xuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZW1iZWQoJHJhdGlvOiBkZWZhdWx0KTtcblxuICAgICRyYXRpb3M6IG1hcC1yZW1vdmUoJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zLGRlZmF1bHQpO1xuXG4gICAgQGVhY2ggJG5hbWUsICRyYXRpbyBpbiAkcmF0aW9zIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmF0aW8tdG8tcGVyY2VudGFnZSgkcmF0aW8pO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGxhYmVsXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGxhYmVsLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsYWJlbC1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQWx0ZXJuYXRlIHRleHQgY29sb3IgZm9yIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGxhYmVsLWNvbG9yLWFsdDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JpbmcgY2xhc3Nlcy4gQSBtYXAgb2YgY2xhc3NlcyB0byBvdXRwdXQgaW4geW91ciBDU1MsIGxpa2UgYC5zZWNvbmRhcnlgLCBgLnN1Y2Nlc3NgLCBhbmQgc28gb24uXG4vLy8gQHR5cGUgTWFwXG4kbGFiZWwtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGFiZWwtZm9udC1zaXplOiAwLjhyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsYWJlbC1wYWRkaW5nOiAwLjMzMzMzcmVtIDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIG9mIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsYWJlbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGVzIGJhc2Ugc3R5bGVzIGZvciBhIGxhYmVsLlxuQG1peGluIGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAkbGFiZWwtcGFkZGluZztcblxuICBib3JkZXItcmFkaXVzOiAkbGFiZWwtcmFkaXVzO1xuXG4gIGZvbnQtc2l6ZTogJGxhYmVsLWZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tbGFiZWwge1xuICAubGFiZWwge1xuICAgIEBpbmNsdWRlIGxhYmVsO1xuXG4gICAgYmFja2dyb3VuZDogJGxhYmVsLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRsYWJlbC1jb2xvcjtcblxuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGxhYmVsLXBhbGV0dGUge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICAgICAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGNvbG9yLCAoJGxhYmVsLWNvbG9yLCAkbGFiZWwtY29sb3ItYWx0KSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgbWVkaWEtb2JqZWN0XG4vLy8vXG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIGEgbWVkaWEgb2JqZWN0LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lZGlhb2JqZWN0LW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gTGVmdCBhbmQgcmlnaHQgcGFkZGluZyBvbiBzZWN0aW9ucyB3aXRoaW4gYSBtZWRpYSBvYmplY3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBXaWR0aCBvZiBpbWFnZXMgd2l0aGluIGEgbWVkaWEgb2JqZWN0LCB3aGVuIHRoZSBvYmplY3QgaXMgc3RhY2tlZCB2ZXJ0aWNhbGx5LiBTZXQgdG8gJ2F1dG8nIHRvIHVzZSB0aGUgaW1hZ2UncyBuYXR1cmFsIHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJG1lZGlhb2JqZWN0LWltYWdlLXdpZHRoLXN0YWNrZWQ6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBtZWRpYSBvYmplY3QgY29udGFpbmVyLlxuQG1peGluIG1lZGlhLW9iamVjdC1jb250YWluZXIge1xuICBkaXNwbGF5OiBpZigkZ2xvYmFsLWZsZXhib3gsIGZsZXgsIGJsb2NrKTtcbiAgbWFyZ2luLWJvdHRvbTogJG1lZGlhb2JqZWN0LW1hcmdpbi1ib3R0b207XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cblxuICBpbWcge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICYuc3RhY2stZm9yLSN7JC16Zi16ZXJvLWJyZWFrcG9pbnR9IHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi16ZXJvLWJyZWFrcG9pbnQgb25seSkge1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3Igc2VjdGlvbnMgd2l0aGluIGEgbWVkaWEgb2JqZWN0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcGFkZGluZyBbJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZ10gLSBQYWRkaW5nIGJldHdlZW4gc2VjdGlvbnMuXG5AbWl4aW4gbWVkaWEtb2JqZWN0LXNlY3Rpb24oJHBhZGRpbmc6ICRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmcpIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgfVxuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctI3skZ2xvYmFsLXJpZ2h0fTogJHBhZGRpbmc7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQ6bm90KDpudGgtY2hpbGQoMikpIHtcbiAgICBwYWRkaW5nLSN7JGdsb2JhbC1sZWZ0fTogJHBhZGRpbmc7XG4gIH1cblxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLnN0YWNrLWZvci0jeyQtemYtemVyby1icmVha3BvaW50fSAmIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtemVyby1icmVha3BvaW50IG9ubHkpIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLW9iamVjdC1zdGFjaztcbiAgICB9XG4gIH1cblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAmLm1haW4tc2VjdGlvbiB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgJi5taWRkbGUge1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICAmLmJvdHRvbSB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgdG8gc3RhY2sgc2VjdGlvbnMgb2YgYSBtZWRpYSBvYmplY3QuIEFwcGx5IHRoaXMgdG8gdGhlIHNlY3Rpb24gZWxlbWVudHMsIG5vdCB0aGUgY29udGFpbmVyLlxuQG1peGluIG1lZGlhLW9iamVjdC1zdGFjayB7XG4gIHBhZGRpbmc6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAkbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIGltZyB7XG4gICAgd2lkdGg6ICRtZWRpYW9iamVjdC1pbWFnZS13aWR0aC1zdGFja2VkO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdCB7XG4gIC5tZWRpYS1vYmplY3Qge1xuICAgIEBpbmNsdWRlIG1lZGlhLW9iamVjdC1jb250YWluZXI7XG4gIH1cblxuICAubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgIEBpbmNsdWRlIG1lZGlhLW9iamVjdC1zZWN0aW9uO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgb2ZmLWNhbnZhc1xuLy8vL1xuXG4vLy8gV2lkdGggbWFwIG9mIGEgbGVmdC9yaWdodCBvZmYtY2FudmFzIHBhbmVsLlxuLy8vIEB0eXBlIE1hcFxuJG9mZmNhbnZhcy1zaXplczogKFxuICBzbWFsbDogMjUwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gSGVpZ2h0IG1hcCBvZiBhIHRvcC9ib3R0b20gb2ZmLWNhbnZhcyBwYW5lbC5cbi8vLyBAdHlwZSBNYXBcbiRvZmZjYW52YXMtdmVydGljYWwtc2l6ZXM6IChcbiAgc21hbGw6IDI1MHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbi8vLyBAdHlwZSBDb2xvclxuJG9mZmNhbnZhcy1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgZm9yIHRoZSBvZmYtY2FudmFzIG92ZXJsYXAgcGFuZWwuXG4vLy8gQHR5cGUgU2hhZG93XG4kb2ZmY2FudmFzLXNoYWRvdzogMCAwIDEwcHggcmdiYSgkYmxhY2ssIDAuNykgIWRlZmF1bHQ7XG5cbi8vLyBJbm5lciBib3ggc2hhZG93IHNpemUgZm9yIHRoZSBvZmYtY2FudmFzIHB1c2ggcGFuZWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplOiAyMHB4ICFkZWZhdWx0O1xuXG4vLy8gSW5uZXIgYm94IHNoYWRvdyBjb2xvciBmb3IgdGhlIG9mZi1jYW52YXMgcHVzaCBwYW5lbC5cbi8vLyBAdHlwZSBDb2xvclxuJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3I6IHJnYmEoJGJsYWNrLCAwLjI1KSAhZGVmYXVsdDtcblxuLy8vIFotaW5kZXggb2YgYW4gb2ZmLWNhbnZhcyBjb250ZW50IG92ZXJsYXkuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLW92ZXJsYXktemluZGV4OiAxMSAhZGVmYXVsdDtcblxuLy8vIFotaW5kZXggb2YgYW4gb2ZmLWNhbnZhcyBwYW5lbCB3aXRoIHRoZSBgcHVzaGAgdHJhbnNpdGlvbi5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtcHVzaC16aW5kZXg6IDEyICFkZWZhdWx0O1xuXG4vLy8gWi1pbmRleCBvZiBhbiBvZmYtY2FudmFzIHBhbmVsIHdpdGggdGhlIGBvdmVybGFwYCB0cmFuc2l0aW9uLlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDogMTMgIWRlZmF1bHQ7XG5cbi8vLyBaLWluZGV4IG9mIGFuIG9mZi1jYW52YXMgcGFuZWwgdXNpbmcgdGhlIGByZXZlYWwtZm9yLSpgIGNsYXNzZXMgb3IgbWl4aW4uXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLXJldmVhbC16aW5kZXg6IDEyICFkZWZhdWx0O1xuXG4vLy8gTGVuZ3RoIG9mIHRoZSBhbmltYXRpb24gb24gYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGg6IDAuNXMgIWRlZmF1bHQ7XG5cbi8vLyBUaW1pbmcgZnVuY3Rpb24gb2YgdGhlIGFuaW1hdGlvbiBvbiBhbiBvZmYtY2FudmFzIHBhbmVsLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc6IGVhc2UgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGEgcmV2ZWFsZWQgb2ZmLWNhbnZhcyB3aWxsIGJlIGZpeGVkLXBvc2l0aW9uLCBhbmQgc2Nyb2xsIHdpdGggdGhlIHNjcmVlbi5cbi8vLyBAdHlwZSBCb29sXG4kb2ZmY2FudmFzLWZpeGVkLXJldmVhbDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHRoZSBvdmVybGF5IHRoYXQgYXBwZWFycyB3aGVuIGFuIG9mZi1jYW52YXMgcGFuZWwgaXMgb3Blbi5cbi8vLyBAdHlwZSBDb2xvclxuJG9mZmNhbnZhcy1leGl0LWJhY2tncm91bmQ6IHJnYmEoJHdoaXRlLCAwLjI1KSAhZGVmYXVsdDtcblxuLy8vIENTUyBjbGFzcyB1c2VkIGZvciB0aGUgbWFpbiBjb250ZW50IGFyZWEuIFRoZSBvZmYtY2FudmFzIG1peGlucyB1c2UgdGhpcyB0byB0YXJnZXQgdGhlIHBhZ2UgY29udGVudC5cbiRtYWluY29udGVudC1jbGFzczogJ29mZi1jYW52YXMtY29udGVudCcgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIGJhc2VsaW5lIHN0eWxlcyBmb3Igb2ZmLWNhbnZhcy4gVGhpcyBDU1MgaXMgcmVxdWlyZWQgdG8gbWFrZSB0aGUgb3RoZXIgcGllY2VzIHdvcmsuXG5AbWl4aW4gb2ZmLWNhbnZhcy1iYXNpY3Mge1xuXG4gIC8vLyBUcmFuc2Zvcm0gZGVwcmVjYXRlZCBzaXplIHNldHRpbmdzIGludG8gbWFwICYgc2hvdyB3YXJuaW5nXG4gIEBpZiB2YXJpYWJsZS1leGlzdHMob2ZmY2FudmFzLXNpemUpIHtcbiAgICAkb2ZmY2FudmFzLXNpemVzOiAoc21hbGw6ICRvZmZjYW52YXMtc2l6ZSwgbWVkaXVtOiAkb2ZmY2FudmFzLXNpemUpICFnbG9iYWw7XG4gICAgQHdhcm4gJyRvZmZjYW52YXMtc2l6ZSBpcyBkZXByZWNhdGVkIGFuZCBub3QgdXNlZCBhbnltb3JlISBQbGVhc2UgdXBkYXRlIHlvdXIgc2V0dGluZ3MgYW5kIHVzZSB0aGUgbWFwICRvZmZjYW52YXMtc2l6ZXMgaW5zdGVhZCc7XG4gIH1cbiAgQGlmIHZhcmlhYmxlLWV4aXN0cyhvZmZjYW52YXMtdmVydGljYWwtc2l6ZSkge1xuICAgICRvZmZjYW52YXMtdmVydGljYWwtc2l6ZXM6IChzbWFsbDogJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplLCBtZWRpdW06ICRvZmZjYW52YXMtdmVydGljYWwtc2l6ZSkgIWdsb2JhbDtcbiAgICBAd2FybiAnJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplIGlzIGRlcHJlY2F0ZWQgYW5kIG5vdCB1c2VkIGFueW1vcmUhIFBsZWFzZSB1cGRhdGUgeW91ciBzZXR0aW5ncyBhbmQgdXNlIHRoZSBtYXAgJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplcyBpbnN0ZWFkJztcbiAgfVxuXG4gIC8vIENoZWNrcyB0aGUgei1pbmRleGVzIGFuZCBpbmNyZWFzZSB0aGVtIGR1ZSB0byBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eS5cbiAgLy8gVGhpcyBpcyBuZWNlc3NhcnkgYmVjYXVzZSB0aGUgb3ZlcmxheSdzIHotaW5kZXggaXMgbmV3IHNpbmNlIHY2LjQgYW5kIG1heSBiZSBpZGVudGljYWwgdG8gdGhlIHVzZXIgY3VzdG9tIHNldHRpbmdzIG9mIHRoZSBwdXNoIHotaW5kZXguXG4gIEBpZiAkb2ZmY2FudmFzLXB1c2gtemluZGV4IDw9ICRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXggeyAkb2ZmY2FudmFzLXB1c2gtemluZGV4OiAkb2ZmY2FudmFzLW92ZXJsYXktemluZGV4ICsgMSAhZ2xvYmFsOyB9XG4gIEBpZiAkb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4IDw9ICRvZmZjYW52YXMtcHVzaC16aW5kZXggeyAkb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4OiAkb2ZmY2FudmFzLXB1c2gtemluZGV4ICsgMSAhZ2xvYmFsOyB9XG4gIEBpZiAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXggPD0gJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleCB7ICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleDogJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleCArIDEgIWdsb2JhbDsgfVxuXG4gIC8vIEhpZGVzIG92ZXJmbG93IG9uIGJvZHkgd2hlbiBhbiBvZmYtY2FudmFzIHBhbmVsIGlzIG9wZW4uXG4gIC5pcy1vZmYtY2FudmFzLW9wZW4ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAvLyBPZmYtY2FudmFzIG92ZXJsYXkgKGdlbmVyYXRlZCBieSBKYXZhU2NyaXB0KVxuICAuanMtb2ZmLWNhbnZhcy1vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleDtcblxuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aCAkb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nLCB2aXNpYmlsaXR5ICRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGggJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZztcblxuICAgIGJhY2tncm91bmQ6ICRvZmZjYW52YXMtZXhpdC1iYWNrZ3JvdW5kO1xuXG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgJi5pcy12aXNpYmxlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIH1cblxuICAgICYuaXMtY2xvc2FibGUge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgICYuaXMtb3ZlcmxheS1hYnNvbHV0ZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgfVxuXG4gICAgJi5pcy1vdmVybGF5LWZpeGVkIHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB9XG4gIH1cbn1cblxuLy8gQWRkcyBiYXNpYyBzdHlsZXMgZm9yIGFuIG9mZi1jYW52YXMgd3JhcHBlci5cbkBtaXhpbiBvZmYtY2FudmFzLXdyYXBwZXIoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBhbiBvZmYtY2FudmFzIHBhbmVsLlxuQG1peGluIG9mZi1jYW52YXMtYmFzZShcbiAgJGJhY2tncm91bmQ6ICRvZmZjYW52YXMtYmFja2dyb3VuZCxcbiAgJHRyYW5zaXRpb246ICRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGggJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZyxcbiAgJGZpeGVkOiB0cnVlXG4pIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuXG4gIEBpZiAkZml4ZWQgPT0gdHJ1ZSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICB9XG4gIEBlbHNlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cblxuICAvLyBTZXQgdGhlIG9mZi1jYW52YXMgei1pbmRleC5cbiAgei1pbmRleDogJG9mZmNhbnZhcy1wdXNoLXppbmRleDtcblxuICAvLyBJbmNyZWFzZSBDU1Mgc3BlY2lmaWNpdHlcbiAgJi5pcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIHotaW5kZXg6ICRvZmZjYW52YXMtcHVzaC16aW5kZXg7XG4gIH1cblxuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblxuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcblxuICAvLyBIaWRlIGluYWN0aXZlIG9mZi1jYW52YXMgd2l0aGluIHRoZSBjb250ZW50IHRoYXQgaGF2ZSB0aGUgc2FtZSBwb3NpdGlvblxuICAmLmlzLWNsb3NlZCB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgLy8gT3ZlcmxhcCBvbmx5IHN0eWxlcy5cbiAgJi5pcy10cmFuc2l0aW9uLW92ZXJsYXAge1xuICAgIHotaW5kZXg6ICRvZmZjYW52YXMtb3ZlcmxhcC16aW5kZXg7XG5cbiAgICAmLmlzLW9wZW4ge1xuICAgICAgYm94LXNoYWRvdzogJG9mZmNhbnZhcy1zaGFkb3c7XG4gICAgfVxuICB9XG5cbiAgLy8gU2V0cyB0cmFuc2Zvcm0gdG8gMCB0byBzaG93IGFuIG9mZi1jYW52YXMgcGFuZWwuXG4gICYuaXMtb3BlbiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIHRvIHBvc2l0aW9uIGFuIG9mZi1jYW52YXMgcGFuZWwgdG8gdGhlIGxlZnQvcmlnaHQvdG9wL2JvdHRvbS5cbkBtaXhpbiBvZmYtY2FudmFzLXBvc2l0aW9uKFxuICAkcG9zaXRpb246IGxlZnQsXG4gICRvcmllbnRhdGlvbjogaG9yaXpvbnRhbCxcbiAgJHNpemVzOiBpZigkb3JpZW50YXRpb24gPT0gaG9yaXpvbnRhbCwgJG9mZmNhbnZhcy1zaXplcywgJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplcylcbikge1xuICBAaWYgJHBvc2l0aW9uID09IGxlZnQge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIHdpZHRoOiAkc2l6ZTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0kc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgcG9zaXRpb24gZm9yIG5lc3RlZCBvZmYtY2FudmFzIGVsZW1lbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9IC5vZmYtY2FudmFzLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0kc2l6ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBvcGVuIHBvc2l0aW9uIGZvciB0aGUgY29udGVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30uaXMtb3Blbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgJi5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCRzaXplKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG5cbiAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgd2lkdGg6ICRzaXplO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJHNpemUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIHBvc2l0aW9uIGZvciBuZXN0ZWQgb2ZmLWNhbnZhcyBlbGVtZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfSAub2ZmLWNhbnZhcy5wb3NpdGlvbi0jeyRwb3NpdGlvbn0ge1xuXG4gICAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkc2l6ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBvcGVuIHBvc2l0aW9uIGZvciB0aGUgY29udGVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30uaXMtb3Blbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgJi5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0kc2l6ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSB0b3Age1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG5cbiAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgaGVpZ2h0OiAkc2l6ZTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0kc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgcG9zaXRpb24gZm9yIG5lc3RlZCBvZmYtY2FudmFzIGVsZW1lbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9IC5vZmYtY2FudmFzLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7XG4gICAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtJHNpemUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgb3BlbiBwb3NpdGlvbiBmb3IgdGhlIGNvbnRlbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9LmlzLW9wZW4tI3skcG9zaXRpb259IHtcbiAgICAgICYuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgkc2l6ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSBib3R0b20ge1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG5cbiAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgaGVpZ2h0OiAkc2l6ZTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCRzaXplKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBwb3NpdGlvbiBmb3IgbmVzdGVkIG9mZi1jYW52YXMgZWxlbWVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30gLm9mZi1jYW52YXMucG9zaXRpb24tI3skcG9zaXRpb259IHtcbiAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCRzaXplKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIG9wZW4gcG9zaXRpb24gZm9yIHRoZSBjb250ZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfS5pcy1vcGVuLSN7JHBvc2l0aW9ufSB7XG4gICAgICAmLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgICAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLSRzaXplKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBJZiAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplIGlzIHNldCwgYWRkIGlubmVyIGJveC1zaGFkb3cuXG4gIC8vIFRoaXMgbWltaWNzIHRoZSBvZmYtY2FudmFzIHBhbmVsIGhhdmluZyBhIGxvd2VyIHotaW5kZXgsIHdpdGhvdXQgaGF2aW5nIHRvIGhhdmUgb25lLlxuICBAaWYgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZSB7XG4gICAgJi5pcy10cmFuc2l0aW9uLXB1c2gge1xuICAgICAgQGlmICRwb3NpdGlvbiA9PSBsZWZ0IHtcbiAgICAgICAgQGluY2x1ZGUgaW5uZXItc2lkZS1zaGFkb3cocmlnaHQsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemUsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICRwb3NpdGlvbiA9PSByaWdodCB7XG4gICAgICAgIEBpbmNsdWRlIGlubmVyLXNpZGUtc2hhZG93KGxlZnQsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemUsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICRwb3NpdGlvbiA9PSB0b3Age1xuICAgICAgICBAaW5jbHVkZSBpbm5lci1zaWRlLXNoYWRvdyhib3R0b20sICRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemUsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICRwb3NpdGlvbiA9PSBib3R0b20ge1xuICAgICAgICBAaW5jbHVkZSBpbm5lci1zaWRlLXNoYWRvdyh0b3AsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemUsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuXG4vLy8gU2V0cyB0aGUgc3R5bGVzIGZvciB0aGUgY29udGVudCBjb250YWluZXIuXG5AbWl4aW4gb2ZmLWNhbnZhcy1jb250ZW50KCkge1xuICB0cmFuc2Zvcm06IG5vbmU7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblxuICAvLyBCaW5kIHRvIGhhcy10cmFuc2l0aW9uLVggY2xhc3MgdG8gcHJldmVudCB0cmFuc2l0aW9uIGZvciB0cmFuc2Zvcm06bm9uZVxuICAmLmhhcy10cmFuc2l0aW9uLW92ZXJsYXAsXG4gICYuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGggJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZztcbiAgfVxuXG4gIC8vIFRyYW5zZm9ybSBzY29wZSB1bnRpbCB0aGUgZWxlbWVudCBpcyBjbG9zZWQgKG1ha2VzIHN1cmUgdHJhbnNpdGlvbmVuZCBnZXRzIHRyaWdnZXJlZClcbiAgJi5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgfVxuXG4gIC8vIENvbnNpZGVyIGVsZW1lbnQgJiBjb250ZW50LCBuZXN0ZWQgaW4gYW5vdGhlciBjb250ZW50XG4gIC5vZmYtY2FudmFzLmlzLW9wZW4ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyB0aGF0IHJldmVhbCBhbiBvZmYtY2FudmFzIHBhbmVsLlxuQG1peGluIG9mZi1jYW52YXMtcmV2ZWFsKFxuJHBvc2l0aW9uOiBsZWZ0LFxuJHppbmRleDogJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4LFxuJGNvbnRlbnQ6ICRtYWluY29udGVudC1jbGFzcyxcbiRicmVha3BvaW50OiBzbWFsbFxuKSB7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgei1pbmRleDogJHppbmRleDtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcblxuICBAaWYgbm90ICRvZmZjYW52YXMtZml4ZWQtcmV2ZWFsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cblxuICAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gQ29uc2lkZXIgcmV2ZWFsZWQgZWxlbWVudCBpcyBuZXN0ZWQgaW4gY29udGVudFxuICAuI3skbWFpbmNvbnRlbnQtY2xhc3N9ICYge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIEBhdC1yb290IC4jeyRjb250ZW50fS5oYXMtcmV2ZWFsLSN7JHBvc2l0aW9ufSB7XG4gICAgbWFyZ2luLSN7JHBvc2l0aW9ufTogLXpmLWdldC1icC12YWwoJG9mZmNhbnZhcy1zaXplcywgJGJyZWFrcG9pbnQpO1xuICB9XG5cbiAgLy8gYmFja3dhcmRzIGNvbXBhdGliaWxpdHkgKHByaW9yIHRvIHY2LjQpXG4gICYgfiAuI3skY29udGVudH0ge1xuICAgIG1hcmdpbi0jeyRwb3NpdGlvbn06IC16Zi1nZXQtYnAtdmFsKCRvZmZjYW52YXMtc2l6ZXMsICRicmVha3BvaW50KTtcbiAgfVxufVxuXG4vLy8gT3ZlcnJpZGVzIHRoZSBvZmYtY2FudmFzIHN0eWxlc1xuQG1peGluIGluLWNhbnZhcygpIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICB3aWR0aDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIHRyYW5zaXRpb246IG5vbmU7XG5cbiAgLy8gSW5jcmVhc2UgQ1NTIHNwZWNpZmljaXR5XG4gICYucG9zaXRpb24tbGVmdCxcbiAgJi5wb3NpdGlvbi1yaWdodCxcbiAgJi5wb3NpdGlvbi10b3AsXG4gICYucG9zaXRpb24tYm90dG9tIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tb2ZmLWNhbnZhcyB7XG4gIEBpbmNsdWRlIG9mZi1jYW52YXMtYmFzaWNzO1xuXG4gIC8vIE9mZi1jYW52YXMgd3JhcHBlclxuICAub2ZmLWNhbnZhcy13cmFwcGVyIHtcbiAgICBAaW5jbHVkZSBvZmYtY2FudmFzLXdyYXBwZXI7XG4gIH1cblxuICAvLyBPZmYtY2FudmFzIGNvbnRhaW5lclxuICAub2ZmLWNhbnZhcyB7XG4gICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1iYXNlO1xuXG4gICAgLy8gRm9yY2UgcG9zaXRpb24gYWJzb2x1dGUgZm9yIG5lc3RlZCBvZmYtY2FudmFzIGJlY2F1c2UgZml4ZWQgZG9lc24ndCB3b3JrIGZvciBwdXNoIHRyYW5zaXRpb24gd2l0aGluIHRoZSB0cmFuc2Zvcm0gc2NvcGUuXG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfSAmIHtcbiAgICAgIC8vIE5PVEU6IHNpbmNlIG92ZXJsYXAgdHJhbnNpdGlvbiBpcyBjdXJyZW50bHkgZm9yY2VkIGlmIG5lc3RlZCwgdGhlcmUncyBubyBuZWVkIHRvIGZvcmNlIHBvc2l0aW9uIGFic29sdXRlIHVudGlsIG5lc3RlZCBwdXNoIHRyYW5zaXRpb24gaXMgc3VwcG9ydGVkLlxuICAgICAgLy8gcG9zaXRpb246IGFic29sdXRlO1xuICAgIH1cbiAgfVxuXG4gIC8vIE9mZi1jYW52YXMgY29udGFpbmVyIHdpdGggYWJzb2x1dGUgcG9zaXRpb25cbiAgLm9mZi1jYW52YXMtYWJzb2x1dGUge1xuICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtYmFzZSgkZml4ZWQ6IGZhbHNlKTtcbiAgfVxuXG4gIC8vIE9mZi1jYW52YXMgcG9zaXRpb24gY2xhc3Nlc1xuICAucG9zaXRpb24tbGVmdCAgICB7IEBpbmNsdWRlIG9mZi1jYW52YXMtcG9zaXRpb24obGVmdCwgICBob3Jpem9udGFsKTsgfVxuICAucG9zaXRpb24tcmlnaHQgICB7IEBpbmNsdWRlIG9mZi1jYW52YXMtcG9zaXRpb24ocmlnaHQsICBob3Jpem9udGFsKTsgfVxuICAucG9zaXRpb24tdG9wICAgICB7IEBpbmNsdWRlIG9mZi1jYW52YXMtcG9zaXRpb24odG9wLCAgICB2ZXJ0aWNhbCk7IH1cbiAgLnBvc2l0aW9uLWJvdHRvbSAgeyBAaW5jbHVkZSBvZmYtY2FudmFzLXBvc2l0aW9uKGJvdHRvbSwgdmVydGljYWwpOyB9XG5cbiAgLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1jb250ZW50O1xuICB9XG5cbiAgLy8gUmV2ZWFsIG9mZi1jYW52YXMgcGFuZWwgb24gbGFyZ2VyIHNjcmVlbnNcbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJG5hbWUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLSN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBvZmYtY2FudmFzLXJldmVhbChsZWZ0LCAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXgsICRtYWluY29udGVudC1jbGFzcywgJG5hbWUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtcmV2ZWFsKHJpZ2h0LCAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXgsICRtYWluY29udGVudC1jbGFzcywgJG5hbWUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLSN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBvZmYtY2FudmFzLXJldmVhbCh0b3AsICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleCwgJG1haW5jb250ZW50LWNsYXNzLCAkbmFtZSk7XG4gICAgICAgIH1cblxuICAgICAgICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtcmV2ZWFsKGJvdHRvbSwgJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4LCAkbWFpbmNvbnRlbnQtY2xhc3MsICRuYW1lKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIE1vdmUgaW4tY2FudmFzIGZvciBsYXJnZXIgc2NyZWVuc1xuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpZiAkbmFtZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGluLWNhbnZhcztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgb3JiaXRcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIE9yYml0J3MgYnVsbGV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGFjdGl2ZSBjb2xvciBmb3IgT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBkaWFtZXRlciBmb3IgT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWJ1bGxldC1kaWFtZXRlcjogMS4ycmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gYmV0d2VlbiBPcmJpdCdzIGJ1bGxldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtYnVsbGV0LW1hcmdpbjogMC4xcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBkaXN0YW5jZSBmcm9tIHNsaWRlIHJlZ2lvbiBmb3IgT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWJ1bGxldC1tYXJnaW4tdG9wOiAwLjhyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gZnJvbSBPcmJpdCdzIGJ1bGxldHMgdG8gd2hhdGV2ZXIgY29udGVudCBtYXkgbHVyayBiZWxvdyBpdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1idWxsZXQtbWFyZ2luLWJvdHRvbTogMC44cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBPcmJpdCdzIGNhcHRpb24uXG4vLy8gQHR5cGUgQ29sb3JcbiRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciBPcmJpdCdzIGNhcHRpb24uXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtY2FwdGlvbi1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBPcmJpdCdzIGNvbnRyb2xzIHdoZW4gaG92ZXJlZC5cbi8vLyBAdHlwZSBDb2xvclxuJG9yYml0LWNvbnRyb2wtYmFja2dyb3VuZC1ob3ZlcjogcmdiYSgkYmxhY2ssIDAuNSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIE9yYml0J3MgY29udHJvbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtY29udHJvbC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB6LWluZGV4IGZvciBPcmJpdCdzIGNvbnRyb2xzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWNvbnRyb2wtemluZGV4OiAxMCAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgb3V0ZXIgT3JiaXQgd3JhcHBlci4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0YCBjbGFzcy5cbkBtaXhpbiBvcmJpdC13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBpbm5lciBPcmJpdCBzbGlkZSBjb250YWluZXIuIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1jb250YWluZXJgIGNsYXNzLlxuQG1peGluIG9yYml0LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwOyAvLyBQcmV2ZW50IEZPVUMgYnkgbm90IHNob3dpbmcgdW50aWwgSlMgc2V0cyBoZWlnaHRcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBpbmRpdmlkdWFsIHNsaWRlcyBvZiBhbiBPcmJpdCBzbGlkZXIuIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1zbGlkZWAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtc2xpZGUge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICYubm8tbW90aW9udWkge1xuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBvcmJpdC1maWd1cmUge1xuICBtYXJnaW46IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBzbGlkZSBjb250YWluaW5nIGFuIGltYWdlLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtaW1hZ2VgIGNsYXNzLlxuQG1peGluIG9yYml0LWltYWdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFuIG9yYml0IHNsaWRlIGNhcHRpb24uIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1jYXB0aW9uYCBjbGFzcy5cbkBtaXhpbiBvcmJpdC1jYXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiAkb3JiaXQtY2FwdGlvbi1wYWRkaW5nO1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQ7XG4gIGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQpO1xufVxuXG4vLy8gQWRkcyBiYXNlIHN0eWxlcyBmb3IgdGhlIG5leHQvcHJldmlvdXMgYnV0dG9ucyBpbiBhbiBPcmJpdCBzbGlkZXIuIFRoZXNlIHN0eWxlcyBhcmUgc2hhcmVkIGJldHdlZW4gdGhlIGAub3JiaXQtbmV4dGAgYW5kIGAub3JiaXQtcHJldmlvdXNgIGNsYXNzZXMgaW4gdGhlIGRlZmF1bHQgQ1NTLlxuQG1peGluIG9yYml0LWNvbnRyb2wge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIEBpbmNsdWRlIHZlcnRpY2FsLWNlbnRlcjtcbiAgei1pbmRleDogJG9yYml0LWNvbnRyb2wtemluZGV4O1xuICBwYWRkaW5nOiAkb3JiaXQtY29udHJvbC1wYWRkaW5nO1xuICBjb2xvcjogJHdoaXRlO1xuXG4gICY6aG92ZXIsXG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtY29udHJvbC1iYWNrZ3JvdW5kLWhvdmVyO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIE9yYml0IHByZXZpb3VzIGJ1dHRvbi4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LXByZXZpb3VzYCBjbGFzcy5cbkBtaXhpbiBvcmJpdC1wcmV2aW91cyB7XG4gICN7JGdsb2JhbC1sZWZ0fTogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgT3JiaXQgbmV4dCBidXR0b24uIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1uZXh0YCBjbGFzcy5cbkBtaXhpbiBvcmJpdC1uZXh0IHtcbiAgI3skZ2xvYmFsLWxlZnR9OiBhdXRvO1xuICAjeyRnbG9iYWwtcmlnaHR9OiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY29udGFpbmVyIG9mIE9yYml0IGJ1bGxldHMuIC8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIE9yYml0IHByZXZpb3VzIGJ1dHRvbi4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LWJ1bGxldHNgIGNsYXNzLlxuQG1peGluIG9yYml0LWJ1bGxldHMge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogJG9yYml0LWJ1bGxldC1tYXJnaW4tdG9wO1xuICBtYXJnaW4tYm90dG9tOiAkb3JiaXQtYnVsbGV0LW1hcmdpbi1ib3R0b207XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBidXR0b24ge1xuICAgIHdpZHRoOiAkb3JiaXQtYnVsbGV0LWRpYW1ldGVyO1xuICAgIGhlaWdodDogJG9yYml0LWJ1bGxldC1kaWFtZXRlcjtcbiAgICBtYXJnaW46ICRvcmJpdC1idWxsZXQtbWFyZ2luO1xuXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmJpdC1idWxsZXQtYmFja2dyb3VuZDtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1vcmJpdCB7XG4gIC5vcmJpdCB7XG4gICAgQGluY2x1ZGUgb3JiaXQtd3JhcHBlcjtcbiAgfVxuXG4gIC5vcmJpdC1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIG9yYml0LWNvbnRhaW5lcjtcbiAgfVxuXG4gIC5vcmJpdC1zbGlkZSB7XG4gICAgQGluY2x1ZGUgb3JiaXQtc2xpZGU7XG4gIH1cblxuICAub3JiaXQtZmlndXJlIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1maWd1cmU7XG4gIH1cblxuICAub3JiaXQtaW1hZ2Uge1xuICAgIEBpbmNsdWRlIG9yYml0LWltYWdlO1xuICB9XG5cbiAgLm9yYml0LWNhcHRpb24ge1xuICAgIEBpbmNsdWRlIG9yYml0LWNhcHRpb247XG4gIH1cblxuICAlb3JiaXQtY29udHJvbCB7XG4gICAgQGluY2x1ZGUgb3JiaXQtY29udHJvbDtcbiAgfVxuXG4gIC5vcmJpdC1wcmV2aW91cyB7XG4gICAgQGV4dGVuZCAlb3JiaXQtY29udHJvbDtcbiAgICBAaW5jbHVkZSBvcmJpdC1wcmV2aW91cztcbiAgfVxuXG4gIC5vcmJpdC1uZXh0IHtcbiAgICBAZXh0ZW5kICVvcmJpdC1jb250cm9sO1xuICAgIEBpbmNsdWRlIG9yYml0LW5leHQ7XG4gIH1cblxuICAub3JiaXQtYnVsbGV0cyB7XG4gICAgQGluY2x1ZGUgb3JiaXQtYnVsbGV0cztcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHBhZ2luYXRpb25cbi8vLy9cblxuLy8vIEZvbnQgc2l6ZSBvZiBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gb2YgdGhlIHBhZ2luYXRpb24gb2JqZWN0LlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24tbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIG9mIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmc6IHJlbS1jYWxjKDMgMTApICFkZWZhdWx0O1xuXG4vLy8gUmlnaHQgbWFyZ2luIHRvIHNlcGFyYXRlIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmc6IHJlbS1jYWxjKDEpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBwYWdpbmF0aW9uIGl0ZW1zIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBwYWdpbmF0aW9uIGl0ZW0gZm9yIHRoZSBjdXJyZW50IHBhZ2UuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50OiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgdGhlIHBhZ2luYXRpb24gaXRlbSBmb3IgdGhlIGN1cnJlbnQgcGFnZS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50OiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGEgZGlzYWJsZWQgcGFnaW5hdGlvbiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiB0aGUgZWxsaXBzaXMgaW4gYSBwYWdpbmF0aW9uIG1lbnUuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgZmFsc2VgLCBkb24ndCBkaXNwbGF5IHBhZ2UgbnVtYmVyIGxpbmtzIG9uIG1vYmlsZSwgb25seSBuZXh0L3ByZXZpb3VzIGxpbmtzXG4vLy8gYW5kIG9wdGlvbmFsbHkgY3VycmVudCBwYWdlIG51bWJlci5cbi8vLyBAdHlwZSBCb29sZWFuXG4kcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXM6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBkaXNwbGF5IHRoZSBjdXJyZW50IHBhZ2UgbnVtYmVyIG9uIG1vYmlsZSBldmVuIGlmIGAkcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXNgIGlzIHNldCB0byBgZmFsc2VgLlxuLy8vIFRoaXMgcGFyYW1ldGVyIHdpbGwgb25seSBvdmVycmlkZSB0aGUgdmlzaWJpbGl0eSBzZXR0aW5nIG9mIHRoZSBjdXJyZW50IGl0ZW0gZm9yIGAkcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXM6IGZhbHNlO2AsXG4vLy8gaXQgd2lsbCBub3QgYWZmZWN0IHRoZSBjdXJyZW50IHBhZ2UgbnVtYmVyIHZpc2liaWxpdHkgd2hlbiBgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zYCBpcyBzZXQgdG8gYHRydWVgLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRwYWdpbmF0aW9uLW1vYmlsZS1jdXJyZW50LWl0ZW06IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhcnJvd3MgYXJlIGFkZGVkIHRvIHRoZSBuZXh0IGFuZCBwcmV2aW91cyBsaW5rcyBvZiBwYWdpbmF0aW9uLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRwYWdpbmF0aW9uLWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIENvbnRlbnQgZm9yIHRoZSBwcmV2aW91cyBhcnJvdyB3aGVuIGAkcGFnaW5hdGlvbi1hcnJvd3NgIGlzIGB0cnVlYFxuLy8vIEB0eXBlIFN0cmluZ1xuJHBhZ2luYXRpb24tYXJyb3ctcHJldmlvdXM6ICdcXDAwQUInICFkZWZhdWx0O1xuXG4vLy8gQ29udGVudCBmb3IgdGhlIG5leHQgYXJyb3cgd2hlbiBgJHBhZ2luYXRpb24tYXJyb3dzYCBpcyBgdHJ1ZWBcbi8vLyBAdHlwZSBTdHJpbmdcbiRwYWdpbmF0aW9uLWFycm93LW5leHQ6ICdcXDAwQkInICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgcGFnaW5hdGlvbiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gYSBgPHVsPmAuXG5AbWl4aW4gcGFnaW5hdGlvbi1jb250YWluZXIgKFxuICAkbWFyZ2luLWJvdHRvbTogJHBhZ2luYXRpb24tbWFyZ2luLWJvdHRvbSxcbiAgJGZvbnQtc2l6ZTogJHBhZ2luYXRpb24tZm9udC1zaXplLFxuICAkc3BhY2luZzogJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nLFxuICAkcmFkaXVzOiAkcGFnaW5hdGlvbi1yYWRpdXMsXG4gICRjb2xvcjogJHBhZ2luYXRpb24taXRlbS1jb2xvcixcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlclxuKSB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luLWJvdHRvbTtcblxuICAvLyBMaXN0IGl0ZW1cbiAgbGkge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkc3BhY2luZztcbiAgICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcblxuICAgIEBpZiAkcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXMge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAmOmxhc3QtY2hpbGQsXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuXG4gICAgICBAaWYgJHBhZ2luYXRpb24tbW9iaWxlLWN1cnJlbnQtaXRlbSB7XG4gICAgICAgICYuY3VycmVudCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQYWdlIGxpbmtzXG4gIGEsXG4gIGJ1dHRvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgY3VycmVudCBwYWdpbmF0aW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gYW4gYDxhPmAuXG5AbWl4aW4gcGFnaW5hdGlvbi1pdGVtLWN1cnJlbnQgKFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkYmFja2dyb3VuZC1jdXJyZW50OiAkcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudCxcbiAgJGNvbG9yLWN1cnJlbnQ6ICRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudFxuKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1jdXJyZW50O1xuICBjb2xvcjogJGNvbG9yLWN1cnJlbnQ7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGRpc2FibGVkIHBhZ2luYXRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byBhbiBgPGE+YC5cbkBtaXhpbiBwYWdpbmF0aW9uLWl0ZW0tZGlzYWJsZWQgKFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkY29sb3I6ICRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWRcbikge1xuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgY29sb3I6ICRjb2xvcjtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFuIGVsbGlwc2lzIGZvciB1c2UgaW4gYSBwYWdpbmF0aW9uIGxpc3QuXG5AbWl4aW4gcGFnaW5hdGlvbi1lbGxpcHNpcyAoXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRjb2xvcjogJHBhZ2luYXRpb24tZWxsaXBzaXMtY29sb3Jcbikge1xuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgY29udGVudDogJ1xcMjAyNic7XG4gIGNvbG9yOiAkY29sb3I7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXBhZ2luYXRpb24ge1xuICAucGFnaW5hdGlvbiB7XG4gICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1jb250YWluZXI7XG5cbiAgICAuY3VycmVudCB7XG4gICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWl0ZW0tY3VycmVudDtcbiAgICB9XG5cbiAgICAuZGlzYWJsZWQge1xuICAgICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1pdGVtLWRpc2FibGVkO1xuICAgIH1cblxuICAgIC5lbGxpcHNpczo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1lbGxpcHNpcztcbiAgICB9XG4gIH1cblxuICBAaWYgJHBhZ2luYXRpb24tYXJyb3dzIHtcbiAgICAucGFnaW5hdGlvbi1wcmV2aW91cyBhOjpiZWZvcmUsXG4gICAgLnBhZ2luYXRpb24tcHJldmlvdXMuZGlzYWJsZWQ6OmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMC41cmVtO1xuICAgICAgY29udGVudDogJHBhZ2luYXRpb24tYXJyb3ctcHJldmlvdXM7XG4gICAgfVxuXG4gICAgLnBhZ2luYXRpb24tbmV4dCBhOjphZnRlcixcbiAgICAucGFnaW5hdGlvbi1uZXh0LmRpc2FibGVkOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwLjVyZW07XG4gICAgICBjb250ZW50OiAkcGFnaW5hdGlvbi1hcnJvdy1uZXh0O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgcHJvZ3Jlc3MgYmFyIGNvbnRhaW5lci5cbkBtaXhpbiBwcm9ncmVzcy1jb250YWluZXIge1xuICBoZWlnaHQ6ICRwcm9ncmVzcy1oZWlnaHQ7XG4gIG1hcmdpbi1ib3R0b206ICRwcm9ncmVzcy1tYXJnaW4tYm90dG9tO1xuICBib3JkZXItcmFkaXVzOiAkcHJvZ3Jlc3MtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmFja2dyb3VuZDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgaW5uZXIgbWV0ZXIgb2YgYSBwcm9ncmVzcyBiYXIuXG5AbWl4aW4gcHJvZ3Jlc3MtbWV0ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLW1ldGVyLWJhY2tncm91bmQ7XG5cbiAgQGlmIGhhcy12YWx1ZSgkcHJvZ3Jlc3MtcmFkaXVzKSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0ZXh0IGluIHRoZSBwcm9ncmVzcyBtZXRlci5cbkBtaXhpbiBwcm9ncmVzcy1tZXRlci10ZXh0IHtcbiAgQGluY2x1ZGUgYWJzb2x1dGUtY2VudGVyO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgQGlmIGhhcy12YWx1ZSgkcHJvZ3Jlc3MtcmFkaXVzKSB7XG4gICAgYm9yZGVyLXJhZGl1czogJHByb2dyZXNzLXJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1wcm9ncmVzcy1iYXIge1xuICAvLyBQcm9ncmVzcyBiYXJcbiAgLnByb2dyZXNzIHtcbiAgICBAaW5jbHVkZSBwcm9ncmVzcy1jb250YWluZXI7XG5cbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRmb3VuZGF0aW9uLXBhbGV0dGUge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIC5wcm9ncmVzcy1tZXRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gSW5uZXIgbWV0ZXJcbiAgLnByb2dyZXNzLW1ldGVyIHtcbiAgICBAaW5jbHVkZSBwcm9ncmVzcy1tZXRlcjtcbiAgfVxuXG4gIC8vIElubmVyIG1ldGVyIHRleHRcbiAgLnByb2dyZXNzLW1ldGVyLXRleHQge1xuICAgIEBpbmNsdWRlIHByb2dyZXNzLW1ldGVyLXRleHQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gW1RPRE9dIENoZWNrIGhvdyBwbHVnaW4gY29uZmlybXMgZGlzYWJsZWQgb3IgdmVydGljYWwgc3RhdHVzXG4vLyBbVE9ET10gQ2hlY2sgaWYgdHJhbnNpdGlvbjogYWxsOyBpcyBuZWNlc3NhcnlcblxuLy8vL1xuLy8vIEBncm91cCBzbGlkZXJcbi8vLy9cblxuLy8vIERlZmF1bHQgc2xpZGVyIHdpZHRoIG9mIGEgdmVydGljYWwgc2xpZGVyLiAoRG9lc24ndCBhcHBseSB0byB0aGUgbmF0aXZlIHNsaWRlci4pXG4vLy8gQHR5cGUgTnVtYmVyXG4kc2xpZGVyLXdpZHRoLXZlcnRpY2FsOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUcmFuc2l0aW9uIHByb3BlcnRpZXMgdG8gYXBwbHkgdG8gdGhlIHNsaWRlciBoYW5kbGUgYW5kIGZpbGwuIChEb2Vzbid0IGFwcGx5IHRvIHRoZSBuYXRpdmUgc2xpZGVyLilcbi8vLyBAdHlwZSBUcmFuc2l0aW9uXG4kc2xpZGVyLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIHNsaWRlcnMuXG5AbWl4aW4gc2xpZGVyLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAkc2xpZGVyLWhlaWdodDtcbiAgbWFyZ2luLXRvcDogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMi4yNXJlbTtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWJhY2tncm91bmQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHRvdWNoLWFjdGlvbjogbm9uZTtcbn1cblxuLy8vIEFkZHMgdGhlIGdlbmVyYWwgc3R5bGVzIGZvciBhY3RpdmUgZmlsbCBmb3Igc2xpZGVycy5cbkBtaXhpbiBzbGlkZXItZmlsbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRzbGlkZXItaGVpZ2h0O1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRzbGlkZXItZmlsbC1iYWNrZ3JvdW5kO1xuICB0cmFuc2l0aW9uOiAkc2xpZGVyLXRyYW5zaXRpb247XG5cbiAgJi5pcy1kcmFnZ2luZyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDBzIGxpbmVhcjtcbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIHRoZSBzbGlkZXIgaGFuZGxlcy5cbkBtaXhpbiBzbGlkZXItaGFuZGxlIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBAaW5jbHVkZSB2ZXJ0aWNhbC1jZW50ZXI7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNsaWRlci1oYW5kbGUtd2lkdGg7XG4gIGhlaWdodDogJHNsaWRlci1oYW5kbGUtaGVpZ2h0O1xuXG4gIGJvcmRlci1yYWRpdXM6ICRzbGlkZXItcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWhhbmRsZS1iYWNrZ3JvdW5kO1xuICB0cmFuc2l0aW9uOiAkc2xpZGVyLXRyYW5zaXRpb247XG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHNjYWxlLWNvbG9yKCRzbGlkZXItaGFuZGxlLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpO1xuICB9XG5cbiAgJi5pcy1kcmFnZ2luZyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDBzIGxpbmVhcjtcbiAgfVxufVxuXG5AbWl4aW4gc2xpZGVyLWRpc2FibGVkIHtcbiAgb3BhY2l0eTogJHNsaWRlci1vcGFjaXR5LWRpc2FibGVkO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG5AbWl4aW4gc2xpZGVyLXZlcnRpY2FsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNsaWRlci13aWR0aC12ZXJ0aWNhbDtcbiAgaGVpZ2h0OiAxMi41cmVtO1xuICBtYXJnaW46IDAgMS4yNXJlbTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLCAtMSk7XG5cbiAgLnNsaWRlci1maWxsIHtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6ICRzbGlkZXItd2lkdGgtdmVydGljYWw7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgfVxuXG4gIC5zbGlkZXItaGFuZGxlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB3aWR0aDogJHNsaWRlci1oYW5kbGUtaGVpZ2h0O1xuICAgIGhlaWdodDogJHNsaWRlci1oYW5kbGUtd2lkdGg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXNsaWRlciB7XG4gIC8vIENvbnRhaW5lclxuICAuc2xpZGVyIHtcbiAgICBAaW5jbHVkZSBzbGlkZXItY29udGFpbmVyO1xuICB9XG5cbiAgLy8gRmlsbCBhcmVhXG4gIC5zbGlkZXItZmlsbCB7XG4gICAgQGluY2x1ZGUgc2xpZGVyLWZpbGw7XG4gIH1cblxuICAvLyBEcmFnZ2FibGUgaGFuZGxlXG4gIC5zbGlkZXItaGFuZGxlIHtcbiAgICBAaW5jbHVkZSBzbGlkZXItaGFuZGxlO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgLnNsaWRlci5kaXNhYmxlZCxcbiAgLnNsaWRlcltkaXNhYmxlZF0ge1xuICAgIEBpbmNsdWRlIHNsaWRlci1kaXNhYmxlZDtcbiAgfVxuXG4gIC8vIFZlcnRpY2FsIHNsaWRlclxuICAuc2xpZGVyLnZlcnRpY2FsIHtcbiAgICBAaW5jbHVkZSBzbGlkZXItdmVydGljYWw7XG4gIH1cblxuICAvLyBSVEwgc3VwcG9ydFxuICBAaWYgJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwge1xuICAgIC5zbGlkZXI6bm90KC52ZXJ0aWNhbCkge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgtMSwgMSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXN0aWNreSB7XG4gIC5zdGlja3ktY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAuc3RpY2t5IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG5cbiAgLnN0aWNreS5pcy1zdHVjayB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHotaW5kZXg6IDU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAmLmlzLWF0LXRvcCB7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuXG4gICAgJi5pcy1hdC1ib3R0b20ge1xuICAgICAgYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5zdGlja3kuaXMtYW5jaG9yZWQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuXG4gICAgJi5pcy1hdC1ib3R0b20ge1xuICAgICAgYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHN3aXRjaFxuLy8vL1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhIHN3aXRjaC5cbi8vLyBAdHlwZSBDb2xvclxuJHN3aXRjaC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGFjdGl2ZSBjb2xvciBvZiBhIHN3aXRjaC5cbi8vLyBAdHlwZSBDb2xvclxuJHN3aXRjaC1iYWNrZ3JvdW5kLWFjdGl2ZTogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBIZWlnaHQgb2YgYSBzd2l0Y2gsIHdpdGggbm8gY2xhc3MgYXBwbGllZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtaGVpZ2h0OiAycmVtICFkZWZhdWx0O1xuXG4vLy8gSGVpZ2h0IG9mIGEgc3dpdGNoIHdpdGggLnRpbnkgY2xhc3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLWhlaWdodC10aW55OiAxLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBIZWlnaHQgb2YgYSBzd2l0Y2ggd2l0aCAuc21hbGwgY2xhc3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLWhlaWdodC1zbWFsbDogMS43NXJlbSAhZGVmYXVsdDtcblxuLy8vIEhlaWdodCBvZiBhIHN3aXRjaCB3aXRoIC5sYXJnZSBjbGFzcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtaGVpZ2h0LWxhcmdlOiAyLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIG9mIHRoZSBzd2l0Y2hcbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIGJvcmRlciBhcm91bmQgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHRoZSBzd2l0Y2ggY29udGFpbmVyIGFuZCBwYWRkbGUuXG4vLy8gQHR5cGUgQ29sb3JcbiRzd2l0Y2gtcGFkZGxlLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBhIHN3aXRjaCBwYWRkbGUgYW5kIHRoZSBlZGdlIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1wYWRkbGUtb2Zmc2V0OiAwLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gYm9yZGVyIHJhZGl1cyBvZiB0aGUgc3dpdGNoIHBhZGRsZVxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1wYWRkbGUtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIHN3aXRjaCB0cmFuc2l0aW9uLlxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2Utb3V0ICFkZWZhdWx0O1xuXG4vLy8gT3BhY2l0eSBvZiBhIGRpc2FibGVkIHN3aXRjaC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtb3BhY2l0eS1kaXNhYmxlZDogLjUgIWRlZmF1bHQ7XG5cbi8vLyBDdXJzb3IgZm9yIGEgZGlzYWJsZWQgc3dpdGNoLlxuLy8vIEB0eXBlIEN1cnNvclxuJHN3aXRjaC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuXG4vLyBtYWtlIHRoZW0gdmFyaWFibGVzXG4vLyBhc2sgYWJvdXQgYWNjZXNzaWJpbGl0eSBvbiBsYWJlbFxuLy8gY2hhbmdlIGNsYXNzIG5hbWUgZm9yIHRleHRcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHN3aXRjaCBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gYSBjb250YWluZXIgY2xhc3MuXG5AbWl4aW4gc3dpdGNoLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogJHN3aXRjaC1tYXJnaW47XG4gIG91dGxpbmU6IDA7XG5cbiAgLy8gVGhlc2UgcHJvcGVydGllcyBjYXNjYWRlIGRvd24gdG8gdGhlIHN3aXRjaCB0ZXh0XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICR3aGl0ZTtcblxuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHN3aXRjaCBpbnB1dC4gQXBwbHkgdGhpcyB0byBhbiBgPGlucHV0PmAgd2l0aGluIGEgc3dpdGNoLlxuQG1peGluIHN3aXRjaC1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgb3BhY2l0eTogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgYmFja2dyb3VuZCBhbmQgcGFkZGxlIG9mIGEgc3dpdGNoLiBBcHBseSB0aGlzIHRvIGEgYDxsYWJlbD5gIHdpdGhpbiBhIHN3aXRjaC5cbkBtaXhpbiBzd2l0Y2gtcGFkZGxlIHtcbiAgJHN3aXRjaC13aWR0aDogJHN3aXRjaC1oZWlnaHQgKiAyO1xuICAkcGFkZGxlLWhlaWdodDogJHN3aXRjaC1oZWlnaHQgLSAoJHN3aXRjaC1wYWRkbGUtb2Zmc2V0ICogMik7XG4gICRwYWRkbGUtd2lkdGg6ICRzd2l0Y2gtaGVpZ2h0IC0gKCRzd2l0Y2gtcGFkZGxlLW9mZnNldCAqIDIpO1xuICAkcGFkZGxlLWFjdGl2ZS1vZmZlc3Q6ICRzd2l0Y2gtd2lkdGggLSAkcGFkZGxlLXdpZHRoIC0gJHN3aXRjaC1wYWRkbGUtb2Zmc2V0O1xuXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAkc3dpdGNoLXdpZHRoO1xuICBoZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0O1xuXG4gIGJvcmRlci1yYWRpdXM6ICRzd2l0Y2gtcmFkaXVzO1xuICBiYWNrZ3JvdW5kOiAkc3dpdGNoLWJhY2tncm91bmQ7XG4gIHRyYW5zaXRpb246ICRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb247XG5cbiAgLy8gUmVzZXR0aW5nIHRoZXNlIDxsYWJlbD4gcHJlc2V0cyBzbyB0eXBlIHN0eWxlcyBjYXNjYWRlIGRvd25cbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuXG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAvLyBOZWVkZWQgdG8gb3ZlcnJpZGUgc3BlY2lmaWNpdHlcbiAgaW5wdXQgKyAmIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAvLyBUaGUgcGFkZGxlIGl0c2VsZlxuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogJHN3aXRjaC1wYWRkbGUtb2Zmc2V0O1xuICAgICN7JGdsb2JhbC1sZWZ0fTogJHN3aXRjaC1wYWRkbGUtb2Zmc2V0O1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRwYWRkbGUtd2lkdGg7XG4gICAgaGVpZ2h0OiAkcGFkZGxlLWhlaWdodDtcblxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgYm9yZGVyLXJhZGl1czogJHN3aXRjaC1wYWRkbGUtcmFkaXVzO1xuICAgIGJhY2tncm91bmQ6ICRzd2l0Y2gtcGFkZGxlLWJhY2tncm91bmQ7XG4gICAgdHJhbnNpdGlvbjogJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbjtcbiAgICBjb250ZW50OiAnJztcbiAgfVxuXG4gIC8vIENoYW5nZSB0aGUgdmlzdWFsIHN0eWxlIHdoZW4gdGhlIHN3aXRjaCBpcyBhY3RpdmVcbiAgaW5wdXQ6Y2hlY2tlZCB+ICYge1xuICAgIGJhY2tncm91bmQ6ICRzd2l0Y2gtYmFja2dyb3VuZC1hY3RpdmU7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAjeyRnbG9iYWwtbGVmdH06ICRwYWRkbGUtYWN0aXZlLW9mZmVzdDtcbiAgICB9XG4gIH1cblxuICAvLyBpbmRpY2F0ZSBhIGRpc2FibGVkIHN3aXRjaFxuICBpbnB1dDpkaXNhYmxlZCB+ICYge1xuICAgIGN1cnNvcjogJHN3aXRjaC1jdXJzb3ItZGlzYWJsZWQ7XG4gICAgb3BhY2l0eTogJHN3aXRjaC1vcGFjaXR5LWRpc2FibGVkO1xuICB9XG5cbiAgaW5wdXQ6Zm9jdXMgfiAmIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIH1cbn1cblxuLy8vIEFkZHMgYmFzZSBzdHlsZXMgZm9yIGFjdGl2ZS9pbmFjdGl2ZSB0ZXh0IGluc2lkZSBhIHN3aXRjaC4gQXBwbHkgdGhpcyB0byB0ZXh0IGVsZW1lbnRzIGluc2lkZSB0aGUgc3dpdGNoIGA8bGFiZWw+YC5cbkBtaXhpbiBzd2l0Y2gtdGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgYWN0aXZlIHN0YXRlIHRleHQgd2l0aGluIGEgc3dpdGNoLlxuQG1peGluIHN3aXRjaC10ZXh0LWFjdGl2ZSB7XG4gICN7JGdsb2JhbC1sZWZ0fTogOCU7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgaW5wdXQ6Y2hlY2tlZCArIGxhYmVsID4gJiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgaW5hY3RpdmUgc3RhdGUgdGV4dCB3aXRoaW4gYSBzd2l0Y2guXG5AbWl4aW4gc3dpdGNoLXRleHQtaW5hY3RpdmUge1xuICAjeyRnbG9iYWwtcmlnaHR9OiAxNSU7XG5cbiAgaW5wdXQ6Y2hlY2tlZCArIGxhYmVsID4gJiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vLy8gQ2hhbmdlcyB0aGUgc2l6ZSBvZiBhIHN3aXRjaCBieSBtb2RpZnlpbmcgdGhlIHNpemUgb2YgdGhlIGJvZHkgYW5kIHBhZGRsZS4gQXBwbHkgdGhpcyB0byBhIHN3aXRjaCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRmb250LXNpemUgWzFyZW1dIC0gRm9udCBzaXplIG9mIGxhYmVsIHRleHQgd2l0aGluIHRoZSBzd2l0Y2guXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzd2l0Y2gtaGVpZ2h0IFsycmVtXSAtIEhlaWdodCBvZiB0aGUgc3dpdGNoIGJvZHkuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwYWRkbGUtb2Zmc2V0IFswLjI1cmVtXSAtIFNwYWNpbmcgYmV0d2VlbiB0aGUgc3dpdGNoIHBhZGRsZSBhbmQgdGhlIGVkZ2Ugb2YgdGhlIHN3aXRjaCBib2R5LlxuQG1peGluIHN3aXRjaC1zaXplKFxuICAkZm9udC1zaXplOiAxcmVtLFxuICAkc3dpdGNoLWhlaWdodDogMnJlbSxcbiAgJHBhZGRsZS1vZmZzZXQ6IDAuMjVyZW1cbikge1xuXG4gICRzd2l0Y2gtd2lkdGg6ICRzd2l0Y2gtaGVpZ2h0ICogMjtcbiAgJHBhZGRsZS13aWR0aDogJHN3aXRjaC1oZWlnaHQgLSAoJHBhZGRsZS1vZmZzZXQgKiAyKTtcbiAgJHBhZGRsZS1oZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0IC0gKCRwYWRkbGUtb2Zmc2V0ICogMik7XG4gICRwYWRkbGUtYWN0aXZlLW9mZmVzdDogJHN3aXRjaC13aWR0aCAtICRwYWRkbGUtd2lkdGggLSAkcGFkZGxlLW9mZnNldDtcblxuICBoZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0O1xuXG4gIC5zd2l0Y2gtcGFkZGxlIHtcbiAgICB3aWR0aDogJHN3aXRjaC13aWR0aDtcbiAgICBoZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0O1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgfVxuXG4gIC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gICAgdG9wOiAkcGFkZGxlLW9mZnNldDtcbiAgICAjeyRnbG9iYWwtbGVmdH06ICRwYWRkbGUtb2Zmc2V0O1xuICAgIHdpZHRoOiAkcGFkZGxlLXdpZHRoO1xuICAgIGhlaWdodDogJHBhZGRsZS1oZWlnaHQ7XG4gIH1cblxuICBpbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICAjeyRnbG9iYWwtbGVmdH06ICRwYWRkbGUtYWN0aXZlLW9mZmVzdDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1zd2l0Y2gge1xuICAvLyBDb250YWluZXIgY2xhc3NcbiAgLnN3aXRjaCB7XG4gICAgaGVpZ2h0OiAkc3dpdGNoLWhlaWdodDtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtY29udGFpbmVyO1xuICB9XG5cbiAgLy8gPGlucHV0PiBlbGVtZW50XG4gIC5zd2l0Y2gtaW5wdXQge1xuICAgIEBpbmNsdWRlIHN3aXRjaC1pbnB1dDtcbiAgfVxuXG4gIC8vIDxsYWJlbD4gZWxlbWVudFxuICAuc3dpdGNoLXBhZGRsZSB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXBhZGRsZTtcbiAgfVxuXG4gIC8vIEJhc2UgbGFiZWwgdGV4dCBzdHlsZXNcbiAgJXN3aXRjaC10ZXh0IHtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtdGV4dDtcbiAgfVxuXG4gIC8vIEFjdGl2ZSBsYWJlbCB0ZXh0IHN0eWxlc1xuICAuc3dpdGNoLWFjdGl2ZSB7XG4gICAgQGV4dGVuZCAlc3dpdGNoLXRleHQ7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXRleHQtYWN0aXZlO1xuICB9XG5cbiAgLy8gSW5hY3RpdmUgbGFiZWwgdGV4dCBzdHlsZXNcbiAgLnN3aXRjaC1pbmFjdGl2ZSB7XG4gICAgQGV4dGVuZCAlc3dpdGNoLXRleHQ7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXRleHQtaW5hY3RpdmU7XG4gIH1cblxuICAvLyBTd2l0Y2ggc2l6ZXNcbiAgLnN3aXRjaC50aW55IHtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtc2l6ZShyZW0tY2FsYygxMCksICRzd2l0Y2gtaGVpZ2h0LXRpbnksICRzd2l0Y2gtcGFkZGxlLW9mZnNldCk7XG4gIH1cblxuICAuc3dpdGNoLnNtYWxsIHtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtc2l6ZShyZW0tY2FsYygxMiksICRzd2l0Y2gtaGVpZ2h0LXNtYWxsLCAkc3dpdGNoLXBhZGRsZS1vZmZzZXQpO1xuICB9XG5cbiAgLnN3aXRjaC5sYXJnZSB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXNpemUocmVtLWNhbGMoMTYpLCAkc3dpdGNoLWhlaWdodC1sYXJnZSwgJHN3aXRjaC1wYWRkbGUtb2Zmc2V0KTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGFibGVcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIHRhYmxlIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1iYWNrZ3JvdW5kOiAkd2hpdGUgICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzY2FsZSBmb3IgZGFya2VuaW5nIHRoZSBzdHJpcGVkIHRhYmxlIHJvd3MgYW5kIHRoZSB0YWJsZSBib3JkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtY29sb3Itc2NhbGU6IDUlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzdHlsZSBmb3IgdGFibGUgYm9yZGVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1ib3JkZXI6IDFweCBzb2xpZCBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgdGFibGUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtcGFkZGluZzogcmVtLWNhbGMoOCAxMCAxMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHNjYWxlIGZvciBkYXJrZW5pbmcgdGhlIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtaG92ZXItc2NhbGU6IDIlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBzdGFuZGFyZCByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2Ygc3RyaXBlZCByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSArICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIHRhYmxlcyBhcmUgc3RyaXBlZCBieSBkZWZhdWx0IGFuZCBhbiAudW5zdHJpcGVkIGNsYXNzIGlzIGNyZWF0ZWQuIElmIGBmYWxzZWAsIGEgLnN0cmlwZWQgY2xhc3MgaXMgY3JlYXRlZC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kdGFibGUtaXMtc3RyaXBlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3Igc3RyaXBlZCByb3dzLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHNob3dpbmcgdGhlIHN0cmlwZSBvbiByb3dzIG9mIHRoZSB0YWJsZXMsIGV4Y2x1ZGluZyB0aGUgaGVhZGVyIGFuZCBmb290ZXIuIElmIGV2ZW4sIHRoZSBldmVuIHJvd3Mgd2lsbCBoYXZlIGEgYmFja2dyb3VuZCBjb2xvci4gSWYgb2RkLCB0aGUgb2RkIHJvd3Mgd2lsbCBoYXZlIGEgYmFja2dyb3VuZCBjb2xvci4gSWYgZW1wdHksIG9yIGFueSBvdGhlciB2YWx1ZSwgdGhlIHRhYmxlIHJvd3Mgd2lsbCBoYXZlIG5vIHN0cmlwaW5nLlxuLy8vIEB0eXBlIEtleXdvcmRcbiR0YWJsZS1zdHJpcGU6IGV2ZW4gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBoZWFkZXIgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWhlYWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSAvIDIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBoZWFkZXIgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtaGVhZC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtaGVhZC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgZm9vdGVyIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1mb290LWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBmb290ZXIgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtZm9vdC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtZm9vdC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBoZWFkZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1oZWFkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGZvb3Rlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWZvb3QtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHNob3dpbmcgdGhlIGhlYWRlciB3aGVuIHVzaW5nIHN0YWNrZWQgdGFibGVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRzaG93LWhlYWRlci1mb3Itc3RhY2tlZDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBCcmVha3BvaW50IGF0IHdoaWNoIHN0YWNrZWQgdGFibGUgc3dpdGNoZXMgZnJvbSBtb2JpbGUgdG8gZGVza3RvcCB2aWV3LlxuLy8vIEB0eXBlIEJyZWFrcG9pbnRcbiR0YWJsZS1zdGFjay1icmVha3BvaW50OiBtZWRpdW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGU6ICR0YWJsZS1zdHJpcGUpIHtcbiAgdHIge1xuICAgIC8vIElmIHN0cmlwZSBpcyBzZXQgdG8gZXZlbiwgZGFya2VuIHRoZSBldmVuIHJvd3MuXG4gICAgQGlmICRzdHJpcGUgPT0gZXZlbiB7XG4gICAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSWYgc3RyaXBlIGlzIHNldCB0byBvZGQsIGRhcmtlbiB0aGUgb2RkIHJvd3MuXG4gICAgQGVsc2UgaWYgJHN0cmlwZSA9PSBvZGQge1xuICAgICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiAtemYtdGFibGUtdW5zdHJpcGUoKSB7XG4gIHRyIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGJvcmRlci1ib3R0b206ICR0YWJsZS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gIH1cbn1cblxuQG1peGluIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZTogJHRhYmxlLXN0cmlwZSwgJGlzLXN0cmlwZWQ6ICR0YWJsZS1pcy1zdHJpcGVkKSB7XG4gIHRoZWFkLFxuICB0Ym9keSxcbiAgdGZvb3Qge1xuICAgIGJvcmRlcjogJHRhYmxlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgfVxuXG4gIC8vIENhcHRpb25cbiAgY2FwdGlvbiB7XG4gICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gIH1cblxuICAvLyBUYWJsZSBoZWFkXG4gIHRoZWFkIHtcbiAgICBiYWNrZ3JvdW5kOiAkdGFibGUtaGVhZC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkdGFibGUtaGVhZC1mb250LWNvbG9yO1xuICB9XG5cbiAgLy8gVGFibGUgZm9vdFxuICB0Zm9vdCB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWZvb3QtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRhYmxlLWZvb3QtZm9udC1jb2xvcjtcbiAgfVxuXG4gIC8vIFRhYmxlIGhlYWQgYW5kIGZvb3RcbiAgdGhlYWQsXG4gIHRmb290IHtcbiAgICAvLyBSb3dzIHdpdGhpbiBoZWFkIGFuZCBmb290XG4gICAgdHIge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgLy8gQ2VsbHMgd2l0aGluIGhlYWQgYW5kIGZvb3RcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgdGV4dC1hbGlnbjogI3skZ2xvYmFsLWxlZnR9O1xuICAgIH1cbiAgfVxuXG4gIC8vIFRhYmxlIHJvd3NcbiAgdGJvZHkge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgIH1cbiAgfVxuXG4gIC8vIElmIHRhYmxlcyBhcmUgc3RyaXBlZFxuICBAaWYgJGlzLXN0cmlwZWQgPT0gdHJ1ZSB7XG4gICAgdGJvZHkge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlKTtcbiAgICB9XG5cbiAgICAmLnVuc3RyaXBlZCB7XG4gICAgICB0Ym9keSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS11bnN0cmlwZSgpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBJZiB0YWJsZXMgYXJlIG5vdCBzdHJpcGVkXG4gIEBlbHNlIGlmICRpcy1zdHJpcGVkID09IGZhbHNlIHtcbiAgICB0Ym9keSB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtdW5zdHJpcGUoKTtcbiAgICB9XG5cbiAgICAmLnN0cmlwZWQge1xuICAgICAgdGJvZHkge1xuICAgICAgICBAaW5jbHVkZSAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIHRhYmxlcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdHJpcGUgWyR0YWJsZS1zdHJpcGVdIC0gVXNlcyBrZXl3b3JkcyBldmVuLCBvZGQsIG9yIG5vbmUgdG8gZGFya2VuIHJvd3Mgb2YgdGhlIHRhYmxlLiBUaGUgZGVmYXVsdCB2YWx1ZSBpcyBldmVuLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJG5lc3QgW2ZhbHNlXSAtIE5lZWRlZCBpZiB5b3Ugb25seSB3YW50IHRvIGFwcGx5IHRoaXMgdG8gYSBzcGVjaWZpYyB0YWJsZS5cbkBtaXhpbiB0YWJsZShcbiAgJHN0cmlwZTogJHRhYmxlLXN0cmlwZSxcbiAgJG5lc3Q6IGZhbHNlXG4pIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuICBAaWYgJG5lc3Qge1xuICAgIEBpbmNsdWRlIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZSk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBhdC1yb290IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZSk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHRoZSBhYmlsaXR5IHRvIGhvcml6b250YWxseSBzY3JvbGwgdGhlIHRhYmxlIHdoZW4gdGhlIGNvbnRlbnQgb3ZlcmZsb3dzIGhvcml6b250YWxseS5cbkBtaXhpbiB0YWJsZS1zY3JvbGwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG5cbi8vLyBTbGlnaHRseSBkYXJrZW5zIHRoZSB0YWJsZSByb3dzIG9uIGhvdmVyLlxuQG1peGluIHRhYmxlLWhvdmVyIHtcbiAgdGhlYWQgdHIge1xuICAgIC8vRGFya2VucyB0aGUgdGFibGUgaGVhZGVyIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaGVhZC1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgdGZvb3QgdHIge1xuICAgIC8vRGFya2VucyB0aGUgdGFibGUgZm9vdGVyIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZm9vdC1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgdGJvZHkgdHIge1xuICAgIC8vRGFya2VucyB0aGUgbm9uLXN0cmlwZWQgdGFibGUgcm93cyBvbiBob3Zlci5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgQGlmICR0YWJsZS1pcy1zdHJpcGVkID09IHRydWUge1xuICAgIC8vIERhcmtlbnMgdGhlIGV2ZW4gc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBpZigkdGFibGUtc3RyaXBlID09IGV2ZW4pIHtcbiAgICAgICY6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGFya2VucyB0aGUgb2RkIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAZWxzZSBpZigkdGFibGUtc3RyaXBlID09IG9kZCkge1xuICAgICAgJjpub3QoLnVuc3RyaXBlZCkgdHI6bnRoLW9mLXR5cGUob2RkKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBlbHNlIGlmICR0YWJsZS1pcy1zdHJpcGVkID09IGZhbHNlIHtcbiAgICAvLyBEYXJrZW5zIHRoZSBldmVuIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAaWYoJHRhYmxlLXN0cmlwZSA9PSBldmVuKSB7XG4gICAgICAmLnN0cmlwZWQgdHI6bnRoLW9mLXR5cGUoZXZlbik6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEYXJrZW5zIHRoZSBvZGQgc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBlbHNlIGlmKCR0YWJsZS1zdHJpcGUgPT0gb2RkKSB7XG4gICAgICAmLnN0cmlwZWQgdHI6bnRoLW9mLXR5cGUob2RkKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3RhY2tlZCB0YWJsZS4gVXNlZnVsIGZvciBzbWFsbC1zY3JlZW4gbGF5b3V0cy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRoZWFkZXIgWyRzaG93LWhlYWRlci1mb3Itc3RhY2tlZF0gLSBTaG93IHRoZSBmaXJzdCB0aCBvZiBoZWFkZXIgd2hlbiBzdGFja2VkLlxuQG1peGluIHRhYmxlLXN0YWNrKCRoZWFkZXI6ICRzaG93LWhlYWRlci1mb3Itc3RhY2tlZCkge1xuICBAaWYgJGhlYWRlciB7XG4gICAgdGhlYWQge1xuICAgICAgdGgge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHRoZWFkIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgdGZvb3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICB0cixcbiAgdGgsXG4gIHRkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIHRkIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRhYmxlKCRuZXN0OiBmYWxzZSkge1xuICB0YWJsZSB7XG4gICAgQGluY2x1ZGUgdGFibGUoJG5lc3Q6ICRuZXN0KTtcbiAgfVxuXG4gIHRhYmxlLnN0YWNrIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZS1zdGFjay1icmVha3BvaW50IGRvd24pIHtcbiAgICAgIEBpbmNsdWRlIHRhYmxlLXN0YWNrO1xuICAgIH1cbiAgfVxuXG4gIHRhYmxlLnNjcm9sbCB7XG4gICAgQGluY2x1ZGUgdGFibGUtc2Nyb2xsO1xuICB9XG5cbiAgdGFibGUuaG92ZXIge1xuICAgIEBpbmNsdWRlIHRhYmxlLWhvdmVyO1xuICB9XG5cbiAgLnRhYmxlLXNjcm9sbCB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcblxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGFic1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gb2YgdGhlIHRhYiBiYXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFiLW1hcmdpbjogMCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiBhIHRhYiBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRm9udCBjb2xvciBvZiB0YWIgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBBY3RpdmUgYmFja2dyb3VuZCBjb2xvciBvZiBhIHRhYiBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItYmFja2dyb3VuZC1hY3RpdmU6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQWN0aXZlIGZvbnQgY29sb3Igb2YgdGFiIGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItYWN0aXZlLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiB0YWIgaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFiLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb24gaG92ZXIgZm9yIGl0ZW1zIGluIGEgTWVudS5cbiR0YWItaXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgb2YgYSB0YWIgaXRlbS5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItaXRlbS1wYWRkaW5nOiAxLjI1cmVtIDEuNXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbnRlbnQtYm9yZGVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kdGFiLWNvbnRlbnQtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHRhYiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gYSBgPHVsPmAuXG5AbWl4aW4gdGFicy1jb250YWluZXIgKFxuICAkbWFyZ2luOiAkdGFiLW1hcmdpbixcbiAgJGJhY2tncm91bmQ6ICR0YWItYmFja2dyb3VuZCxcbiAgJGJvcmRlci1jb2xvcjogJHRhYi1jb250ZW50LWJvcmRlclxuKSB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBtYXJnaW46ICRtYXJnaW47XG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbi8vLyBBdWdtZW50cyBhIHRhYiBjb250YWluZXIgdG8gaGF2ZSB2ZXJ0aWNhbCB0YWJzLiBVc2UgdGhpcyBpbiBjb25qdW5jdGlvbiB3aXRoIGB0YWJzLWNvbnRhaW5lcigpYC5cbkBtaXhpbiB0YWJzLWNvbnRhaW5lci12ZXJ0aWNhbCB7XG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGxpbmtzIHdpdGhpbiBhIHRhYiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gdGhlIGA8bGk+YCBlbGVtZW50cyBpbnNpZGUgYSB0YWIgY29udGFpbmVyLlxuQG1peGluIHRhYnMtdGl0bGUgKFxuICAkcGFkZGluZzogJHRhYi1pdGVtLXBhZGRpbmcsXG4gICRmb250LXNpemU6ICR0YWItaXRlbS1mb250LXNpemUsXG4gICRjb2xvcjogJHRhYi1jb2xvcixcbiAgJGNvbG9yLWFjdGl2ZTogJHRhYi1hY3RpdmUtY29sb3IsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGJhY2tncm91bmQtYWN0aXZlOiAkdGFiLWJhY2tncm91bmQtYWN0aXZlXG4pIHtcbiAgZmxvYXQ6ICN7JGdsb2JhbC1sZWZ0fTtcblxuICA+IGEge1xuICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICRjb2xvcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgICBjb2xvcjogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKTtcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICZbYXJpYS1zZWxlY3RlZD0ndHJ1ZSddIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgICAgIGNvbG9yOiAkY29sb3ItYWN0aXZlO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSB3cmFwcGVyIHRoYXQgc3Vycm91bmRzIGEgdGFiIGdyb3VwJ3MgY29udGVudCBwYW5lcy5cbkBtaXhpbiB0YWJzLWNvbnRlbnQgKFxuICAkYmFja2dyb3VuZDogJHRhYi1jb250ZW50LWJhY2tncm91bmQsXG4gICRjb2xvcjogJHRhYi1jb250ZW50LWNvbG9yLFxuICAkYm9yZGVyLWNvbG9yOiAkdGFiLWNvbnRlbnQtYm9yZGVyXG4pIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gIGNvbG9yOiAkY29sb3I7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG59XG5cbi8vLyBBdWdtZW50cyBhIHRhYiBjb250ZW50IGNvbnRhaW5lciB0byBoYXZlIGEgdmVydGljYWwgc3R5bGUsIGJ5IHNoaWZ0aW5nIHRoZSBib3JkZXIgYXJvdW5kLiBVc2UgdGhpcyBpbiBjb25qdW5jdGlvbiB3aXRoIGB0YWJzLWNvbnRlbnQoKWAuXG5AbWl4aW4gdGFicy1jb250ZW50LXZlcnRpY2FsIChcbiAgJGJvcmRlci1jb2xvcjogJHRhYi1jb250ZW50LWJvcmRlclxuKSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gaW5kaXZpZHVhbCB0YWIgY29udGVudCBwYW5lbCB3aXRoaW4gdGhlIHRhYiBjb250ZW50IGNvbnRhaW5lci5cbkBtaXhpbiB0YWJzLXBhbmVsIChcbiAgJHBhZGRpbmc6ICR0YWItY29udGVudC1wYWRkaW5nXG4pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG5cbiAgJi5pcy1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRhYnMge1xuICAudGFicyB7XG4gICAgQGluY2x1ZGUgdGFicy1jb250YWluZXI7XG4gIH1cblxuICAvLyBWZXJ0aWNhbFxuICAudGFicy52ZXJ0aWNhbCB7XG4gICAgQGluY2x1ZGUgdGFicy1jb250YWluZXItdmVydGljYWw7XG4gIH1cblxuICAvLyBTaW1wbGVcbiAgLnRhYnMuc2ltcGxlIHtcbiAgICA+IGxpID4gYSB7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUHJpbWFyeSBjb2xvclxuICAudGFicy5wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcblxuICAgID4gbGkgPiBhIHtcbiAgICAgIGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRwcmltYXJ5LWNvbG9yKTtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkcHJpbWFyeS1jb2xvcik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnRhYnMtdGl0bGUge1xuICAgIEBpbmNsdWRlIHRhYnMtdGl0bGU7XG4gIH1cblxuICAudGFicy1jb250ZW50IHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRlbnQ7XG4gIH1cblxuICAudGFicy1jb250ZW50LnZlcnRpY2FsIHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRlbnQtdmVydGljYWw7XG4gIH1cblxuICAudGFicy1wYW5lbCB7XG4gICAgQGluY2x1ZGUgdGFicy1wYW5lbDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRodW1ibmFpbFxuLy8vL1xuXG4vLy8gQm9yZGVyIGFyb3VuZCB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIEJvcmRlclxuJHRodW1ibmFpbC1ib3JkZXI6IDRweCBzb2xpZCAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIGZvciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIExlbmd0aFxuJHRodW1ibmFpbC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgdW5kZXIgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBTaGFkb3dcbiR0aHVtYm5haWwtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgkYmxhY2ssIDAuMikgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IHVuZGVyIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgU2hhZG93XG4kdGh1bWJuYWlsLXNoYWRvdy1ob3ZlcjogMCAwIDZweCAxcHggcmdiYSgkcHJpbWFyeS1jb2xvciwgMC41KSAhZGVmYXVsdDtcblxuLy8vIFRyYW5zaXRpb24gcHJvcHJ0aWVzIGZvciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiR0aHVtYm5haWwtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIE51bWJlclxuJHRodW1ibmFpbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQWRkcyB0aHVtYm5haWwgc3R5bGVzIHRvIGFuIGVsZW1lbnQuXG5AbWl4aW4gdGh1bWJuYWlsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICR0aHVtYm5haWwtbWFyZ2luLWJvdHRvbTtcblxuICBib3JkZXI6ICR0aHVtYm5haWwtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkdGh1bWJuYWlsLXJhZGl1cztcbiAgYm94LXNoYWRvdzogJHRodW1ibmFpbC1zaGFkb3c7XG5cbiAgbGluZS1oZWlnaHQ6IDA7XG59XG5cbkBtaXhpbiB0aHVtYm5haWwtbGluayB7XG4gIHRyYW5zaXRpb246ICR0aHVtYm5haWwtdHJhbnNpdGlvbjtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAkdGh1bWJuYWlsLXNoYWRvdy1ob3ZlcjtcbiAgfVxuXG4gIGltYWdlIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRodW1ibmFpbCB7XG4gIC50aHVtYm5haWwge1xuICAgIEBpbmNsdWRlIHRodW1ibmFpbDtcbiAgfVxuXG4gIGEudGh1bWJuYWlsIHtcbiAgICBAaW5jbHVkZSB0aHVtYm5haWwtbGluaztcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRpdGxlLWJhclxuLy8vL1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRpdGxlYmFyLWJhY2tncm91bmQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRleHQgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGl0bGViYXItY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIExlbmd0aFxuJHRpdGxlYmFyLXBhZGRpbmc6IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIFdlaWdodFxuJHRpdGxlYmFyLXRleHQtZm9udC13ZWlnaHQ6IGJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBtZW51IGljb25zIGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRpdGxlYmFyLWljb24tY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIG1lbnUgaWNvbnMgaW5zaWRlIGEgdGl0bGUgYmFyIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGl0bGViYXItaWNvbi1jb2xvci1ob3ZlcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIHRoZSBtZW51IGljb24gYW5kIHRleHQgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIExlbmd0aFxuJHRpdGxlYmFyLWljb24tc3BhY2luZzogMC4yNXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tdGl0bGUtYmFyIHtcbiAgLnRpdGxlLWJhciB7XG4gICAgcGFkZGluZzogJHRpdGxlYmFyLXBhZGRpbmc7XG4gICAgYmFja2dyb3VuZDogJHRpdGxlYmFyLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICR0aXRsZWJhci1jb2xvcjtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIH1cblxuICAgIC5tZW51LWljb24ge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJHRpdGxlYmFyLWljb24tc3BhY2luZztcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkdGl0bGViYXItaWNvbi1zcGFjaW5nO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIC50aXRsZS1iYXItbGVmdCxcbiAgICAudGl0bGUtYmFyLXJpZ2h0IHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgfVxuXG4gICAgLnRpdGxlLWJhci1yaWdodCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC50aXRsZS1iYXItbGVmdCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG5cbiAgICAudGl0bGUtYmFyLXJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC50aXRsZS1iYXItdGl0bGUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGZvbnQtd2VpZ2h0OiAkdGl0bGViYXItdGV4dC1mb250LXdlaWdodDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRvb2x0aXBcbi8vLy9cblxuLy8vIERlZmF1bHQgY3Vyc29yIG9mIHRoZSBkZWZpbmVkIHRlcm0uXG4vLy8gQHR5cGUgS2V5d29yZFxuJGhhcy10aXAtY3Vyc29yOiBoZWxwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBvZiB0aGUgZGVmaW5lZCB0ZXJtLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRoYXMtdGlwLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYm90dG9tIG9mIHRoZSBkZWZpbmVkIHRlcm0uXG4vLy8gQHR5cGUgTGlzdFxuJGhhcy10aXAtYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiB0aGUgdG9vbHRpcCBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHRoZSB0b29sdGlwIGZvbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0b29sdGlwLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgb2YgdGhlIHRvb2x0aXAgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLXBhZGRpbmc6IDAuNzVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1heCB3aWR0aCBmb3IgdG9vbHRpcHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1tYXgtd2lkdGg6IDEwcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgb2YgdGhlIHRvb2x0aXAgdGV4dC4gQnkgZGVmYXVsdCwgd2UgcmVjb21tZW5kIGEgc21hbGxlciBmb250IHNpemUgdGhhbiB0aGUgYm9keSBjb3B5LlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwaXAgd2lkdGggZm9yIHRvb2x0aXBzLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtcGlwLXdpZHRoOiAwLjc1cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwaXAgaGVpZ2h0IGZvciB0b29sdGlwcy4gVGhpcyBpcyBoZWxwZnVsIGZvciBjYWxjdWxhdGluZyB0aGUgZGlzdGFuY2Ugb2YgdGhlIHRvb2x0aXAgZnJvbSB0aGUgdG9vbHRpcCB3b3JkLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtcGlwLWhlaWdodDogJHRvb2x0aXAtcGlwLXdpZHRoICogMC44NjYgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3IgdG9vbHRpcHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG5AbWl4aW4gaGFzLXRpcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gIGJvcmRlci1ib3R0b206ICRoYXMtdGlwLWJvcmRlci1ib3R0b207XG4gIGZvbnQtd2VpZ2h0OiAkaGFzLXRpcC1mb250LXdlaWdodDtcbiAgY3Vyc29yOiAkaGFzLXRpcC1jdXJzb3I7XG59XG5cbkBtaXhpbiB0b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoMTAwJSArICN7JHRvb2x0aXAtcGlwLWhlaWdodH0pO1xuICB6LWluZGV4OiAxMjAwO1xuXG4gIG1heC13aWR0aDogJHRvb2x0aXAtbWF4LXdpZHRoO1xuICBwYWRkaW5nOiAkdG9vbHRpcC1wYWRkaW5nO1xuXG4gIGJvcmRlci1yYWRpdXM6ICR0b29sdGlwLXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvcjtcbiAgZm9udC1zaXplOiAkdG9vbHRpcC1mb250LXNpemU7XG4gIGNvbG9yOiAkdG9vbHRpcC1jb2xvcjtcblxuICAmOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuXG4gICYuYm90dG9tIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b29sdGlwLXBpcC13aWR0aCwgJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvciwgdXApO1xuICAgICAgYm90dG9tOiAxMDAlO1xuICAgIH1cblxuICAgICYuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIH1cbiAgfVxuXG4gICYudG9wIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b29sdGlwLXBpcC13aWR0aCwgJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvciwgZG93bik7XG4gICAgICB0b3A6IDEwMCU7XG4gICAgICBib3R0b206IGF1dG87XG4gICAgfVxuXG4gICAgJi5hbGlnbi1jZW50ZXI6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgfVxuICB9XG5cbiAgJi5sZWZ0IHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b29sdGlwLXBpcC13aWR0aCwgJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvciwgcmlnaHQpO1xuICAgICAgbGVmdDogMTAwJTtcbiAgICB9XG5cbiAgICAmLmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIH1cbiAgfVxuXG4gICYucmlnaHQge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHRvb2x0aXAtcGlwLXdpZHRoLCAkdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yLCBsZWZ0KTtcbiAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG5cbiAgICAmLmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIH1cbiAgfVxuXG4gICYuYWxpZ24tdG9wOjpiZWZvcmUge1xuICAgIGJvdHRvbTogYXV0bztcbiAgICB0b3A6IDEwJTtcbiAgfVxuXG4gICYuYWxpZ24tYm90dG9tOjpiZWZvcmUge1xuICAgIGJvdHRvbTogMTAlO1xuICAgIHRvcDogYXV0bztcbiAgfVxuXG4gICYuYWxpZ24tbGVmdDo6YmVmb3JlIHtcbiAgICBsZWZ0OiAxMCU7XG4gICAgcmlnaHQ6IGF1dG87XG4gIH1cblxuICAmLmFsaWduLXJpZ2h0OjpiZWZvcmUge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDEwJTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10b29sdGlwIHtcbiAgLmhhcy10aXAge1xuICAgIEBpbmNsdWRlIGhhcy10aXA7XG4gIH1cblxuICAudG9vbHRpcCB7XG4gICAgQGluY2x1ZGUgdG9vbHRpcDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRvcC1iYXJcbi8vLy9cblxuLy8vIFBhZGRpbmcgZm9yIHRoZSB0b3AgYmFyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvcGJhci1wYWRkaW5nOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgdG9wIGJhci4gVGhpcyBjb2xvciBhbHNvIGNhc2NhZGVzIHRvIG1lbnVzIHdpdGhpbiB0aGUgdG9wIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRvcGJhci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igc3VibWVudXMgd2l0aGluIHRoZSB0b3AgYmFyLiBVc2VmdWxsIGlmICR0b3BiYXItYmFja2dyb3VuZCBpcyB0cmFuc3BhcmVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRvcGJhci1zdWJtZW51LWJhY2tncm91bmQ6ICR0b3BiYXItYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgZm9yIHRoZSB0b3AgYmFyIHRpdGxlLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvcGJhci10aXRsZS1zcGFjaW5nOiAwLjVyZW0gMXJlbSAwLjVyZW0gMCAhZGVmYXVsdDtcblxuLy8vIE1heGltdW0gd2lkdGggb2YgYDxpbnB1dD5gIGVsZW1lbnRzIGluc2lkZSB0aGUgdG9wIGJhci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b3BiYXItaW5wdXQtd2lkdGg6IDIwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQnJlYWtwb2ludCBhdCB3aGljaCB0b3AgYmFyIHN3aXRjaGVzIGZyb20gbW9iaWxlIHRvIGRlc2t0b3Agdmlldy5cbi8vLyBAdHlwZSBCcmVha3BvaW50XG4kdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludDogbWVkaXVtICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgdG9wIGJhciBjb250YWluZXIuXG5AbWl4aW4gdG9wLWJhci1jb250YWluZXIge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgfVxuXG4gIHBhZGRpbmc6ICR0b3BiYXItcGFkZGluZztcblxuICAmLFxuICB1bCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRvcGJhci1iYWNrZ3JvdW5kO1xuICB9XG5cbiAgLy8gQ2hlY2sgaWYgJHRvcGJhci1iYWNrZ3JvdW5kIGlzIGRpZmZlcm50IGZyb20gJHRvcGJhci1iYWNrZ3JvdW5kLXN1Ym1lbnVcbiAgQGlmICgkdG9wYmFyLWJhY2tncm91bmQgIT0gJHRvcGJhci1zdWJtZW51LWJhY2tncm91bmQpIHtcbiAgICB1bCB1bCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXN0cmFpbiB3aWR0aCBvZiBpbnB1dHMgYnkgZGVmYXVsdCB0byBtYWtlIHRoZW0gZWFzaWVyIHRvIGFycmFuZ2VcbiAgaW5wdXQge1xuICAgIG1heC13aWR0aDogJHRvcGJhci1pbnB1dC13aWR0aDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgfVxuXG4gIC8vIFRoZSBhYm92ZSBzdHlsZXMgc2hvdWxkbid0IGFwcGx5IHRvIGlucHV0IGdyb3VwIGZpZWxkc1xuICAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICB9XG5cbiAgaW5wdXQuYnV0dG9uIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLy8vIE1ha2VzIHNlY3Rpb25zIG9mIGEgdG9wIGJhciBzdGFjayBvbiB0b3Agb2YgZWFjaCBvdGhlci5cbkBtaXhpbiB0b3AtYmFyLXN0YWNrZWQge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAvLyBTdWItc2VjdGlvbnNcbiAgICAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gU3ViLXNlY3Rpb25zXG4gICAgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFVuZG9lcyB0aGUgQ1NTIGFwcGxpZWQgYnkgdGhlIGB0b3AtYmFyLXN0YWNrZWQoKWAgbWl4aW4uXG5AbWl4aW4gdG9wLWJhci11bnN0YWNrIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG5cbiAgICAudG9wLWJhci1sZWZ0IHtcbiAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10b3AtYmFyIHtcbiAgLy8gVG9wIGJhciBjb250YWluZXJcbiAgLnRvcC1iYXIge1xuICAgIEBpbmNsdWRlIHRvcC1iYXItY29udGFpbmVyO1xuXG4gICAgLy8gU3RhY2sgb24gc21hbGwgc2NyZWVucyBieSBkZWZhdWx0XG4gICAgQGluY2x1ZGUgdG9wLWJhci1zdGFja2VkO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludCkge1xuICAgICAgQGluY2x1ZGUgdG9wLWJhci11bnN0YWNrO1xuICAgIH1cblxuICAgIC8vIEdlbmVyYXRlIGNsYXNzZXMgZm9yIHN0YWNraW5nIG9uIGVhY2ggc2NyZWVuIHNpemUgKGRlZmluZWQgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcylcbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICYuc3RhY2tlZC1mb3ItI3skc2l6ZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgZG93bikge1xuICAgICAgICAgICAgQGluY2x1ZGUgdG9wLWJhci1zdGFja2VkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFN1Yi1zZWN0aW9uc1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAudG9wLWJhci10aXRsZSB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIG1hcmdpbjogJHRvcGJhci10aXRsZS1zcGFjaW5nO1xuICAgIH1cblxuICAgIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAudG9wLWJhci10aXRsZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmc6ICR0b3BiYXItdGl0bGUtc3BhY2luZztcblxuICAgICAgLm1lbnUtaWNvbiB7XG4gICAgICAgIGJvdHRvbTogMnB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC50b3AtYmFyLWxlZnQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvcigkc2l6ZSkge1xuICAkc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgLy8gTWF4IHZhbHVlIGlzIDAuMnB4IHVuZGVyIHRoZSBuZXh0IGJyZWFrcG9pbnQgKDAuMDIgLyAxNiA9IDAuMDAxMjUpLlxuICAvLyBVc2UgYSBwcmVjaXNpb24gdW5kZXIgMXB4IHRvIHN1cHBvcnQgYnJvd3NlciB6b29tLCBidXQgbm90IHRvIGxvdyB0byBhdm9pZCByb3VuZGluZy5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzExMzEzXG4gICRzaXplOiAtemYtYnAtdG8tZW0oJHNpemUpIC0gLjAwMTI1O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgZG93bikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCB3aXRoaW4gYSBjZXJ0YWluIGJyZWFrcG9pbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvci1vbmx5KCRzaXplKSB7XG4gICRsb3dlci1ib3VuZC1zaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAkdXBwZXItYm91bmQtc2l6ZTogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJHNpemUpO1xuXG4gIC8vIG1vcmUgb2Z0ZW4gdGhhbiBub3QgdGhpcyB3aWxsIGJlIGNvcnJlY3QsIGp1c3Qgb25lIHRpbWUgcm91bmQgdGhlIGxvb3AgaXQgd29uJ3Qgc28gc2V0IGluIHNjb3BlIGhlcmVcbiAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpIC0gLjAwMTI1O1xuICAvLyB0ZXN0IGFjdHVhbCBsb3dlci1ib3VuZC1zaXplLCBpZiAwIHNldCBpdCB0byAwZW1cbiAgQGlmIHN0cmlwLXVuaXQoJGxvd2VyLWJvdW5kLXNpemUpID09IDAge1xuICAgICRsb3dlci1ib3VuZDogLXpmLWJwLXRvLWVtKCRsb3dlci1ib3VuZC1zaXplKTtcbiAgfVxuXG4gIEBpZiAkdXBwZXItYm91bmQtc2l6ZSA9PSBudWxsIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgICR1cHBlci1ib3VuZDogLXpmLWJwLXRvLWVtKCR1cHBlci1ib3VuZC1zaXplKTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsb3dlci1ib3VuZCksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHVwcGVyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cblxuLy8vIFNob3cgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBhbmQgaGlkZSBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBoaWRlLWZvcigkc2l6ZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3Itb25seSgkc2l6ZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIG9ubHkpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdmlzaWJpbGl0eS1jbGFzc2VzIHtcbiAgLy8gQmFzaWMgaGlkaW5nIGNsYXNzZXNcbiAgLmhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5pbnZpc2libGUge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIC8vIFJlc3BvbnNpdmUgdmlzaWJpbGl0eSBjbGFzc2VzXG4gIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAuaGlkZS1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBoaWRlLWZvcigkc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIC5zaG93LWZvci0jeyRzaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIHNob3ctZm9yKCRzaXplKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaGlkZS1mb3ItI3skc2l6ZX0tb25seSB7XG4gICAgICBAaW5jbHVkZSBoaWRlLWZvci1vbmx5KCRzaXplKTtcbiAgICB9XG5cbiAgICAuc2hvdy1mb3ItI3skc2l6ZX0tb25seSB7XG4gICAgICBAaW5jbHVkZSBzaG93LWZvci1vbmx5KCRzaXplKTtcbiAgICB9XG4gIH1cblxuICAvLyBTY3JlZW4gcmVhZGVyIHZpc2liaWxpdHkgY2xhc3Nlc1xuICAvLyBOZWVkIGEgXCJoaWRlLWZvci1zclwiIGNsYXNzPyBBZGQgYXJpYS1oaWRkZW49J3RydWUnIHRvIHRoZSBlbGVtZW50XG4gIC5zaG93LWZvci1zcixcbiAgLnNob3ctb24tZm9jdXMge1xuICAgIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlO1xuICB9XG5cbiAgLy8gT25seSBkaXNwbGF5IHRoZSBlbGVtZW50IHdoZW4gaXQncyBmb2N1c2VkXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlLW9mZjtcbiAgICB9XG4gIH1cblxuICAvLyBMYW5kc2NhcGUgYW5kIHBvcnRyYWl0IHZpc2liaWxpdHlcbiAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYW5kc2NhcGUpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYW5kc2NhcGUpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIEZsZXhib3ggVXRpbGl0aWVzXG4vLy8vXG4vL1xuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHRoZSBjb3VudCBvZiBzb3VyY2Ugb3JkZXJpbmdgXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmxleC1zb3VyY2Utb3JkZXJpbmctY291bnQ6IDYgIWRlZmF1bHQ7XG5cbi8vLyBRdWlja2x5IGRpc2FibGUvZW5hYmxlIFJlc3BvbnNpdmUgYnJlYWtwb2ludHMgZm9yIFZhbmlsbGEgRmxleCBIZWxwZXJzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRmbGV4Ym94LXJlc3BvbnNpdmUtYnJlYWtwb2ludHM6IHRydWUgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmbGV4LWhlbHBlcnMge1xuICAuZmxleC1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIGZsZXg7XG4gIH1cblxuICAuZmxleC1jaGlsZC1hdXRvIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLWdyb3cge1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgfVxuXG4gIEBlYWNoICRkaXIsICRwcm9wIGluICQtemYtZmxleC1kaXJlY3Rpb24ge1xuICAgIC5mbGV4LWRpci0jeyRkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtZGlyZWN0aW9uKCRwcm9wKTtcbiAgICB9XG4gIH1cblxuICBAaWYgKCRmbGV4Ym94LXJlc3BvbnNpdmUtYnJlYWtwb2ludHMpIHtcbiAgICAvLyBMb29wIHRocm91Z2ggUmVzcG9uc2l2ZSBCcmVha3BvaW50c1xuICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNvbnRhaW5lciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNoaWxkLWF1dG8ge1xuICAgICAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgICAgICAgICBmbGV4OiAxIDAgYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jaGlsZC1zaHJpbmsge1xuICAgICAgICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGVhY2ggJGRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWRpcmVjdGlvbiB7XG4gICAgICAgICAgICAuI3skc2l6ZX0tZmxleC1kaXItI3skZGlyfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgtZGlyZWN0aW9uKCRwcm9wKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZmxleC1jbGFzc2VzIHtcbiAgLy8gSG9yaXpvbnRhbCBhbGlnbm1lbnQgdXNpbmcganVzdGlmeS1jb250ZW50XG4gIEBlYWNoICRoZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtanVzdGlmeSB7XG4gICAgLmFsaWduLSN7JGhkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHg6ICRoZGlyKTtcbiAgICB9XG4gIH1cbiAgXG4gIC8vIEhvcml6b250YWwgYWxpZ25tZW50IFNwZWNpZmljYWxseSBmb3IgVmVydGljYWwgTWVudVxuICBAZWFjaCAkaGRpciwgJHByb3AgaW4gbWFwLXJlbW92ZSgkLXpmLWZsZXgtanVzdGlmeSwgJ2p1c3RpZnknLCAnc3BhY2VkJykge1xuICAgIC5hbGlnbi0jeyRoZGlyfSB7XG4gICAgICAmLnZlcnRpY2FsIHtcbiAgICAgICAgJi5tZW51ID4gbGkgPiBhIHtcbiAgICAgICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiAkaGRpcik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBWZXJ0aWNhbCBhbGlnbm1lbnQgdXNpbmcgYWxpZ24taXRlbXMgYW5kIGFsaWduLXNlbGZcbiAgQGVhY2ggJHZkaXIsICRwcm9wIGluICQtemYtZmxleC1hbGlnbiB7XG4gICAgLmFsaWduLSN7JHZkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHk6ICR2ZGlyKTtcbiAgICB9XG5cbiAgICAuYWxpZ24tc2VsZi0jeyR2ZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduLXNlbGYoJHk6ICR2ZGlyKTtcbiAgICB9XG4gIH1cblxuICAvLyBDZW50cmFsIGFsaWdubWVudCBvZiBjb250ZW50XG4gIC5hbGlnbi1jZW50ZXItbWlkZGxlIHtcbiAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiBjZW50ZXIsICR5OiBtaWRkbGUpO1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuXG4gIC8vIFNvdXJjZSBvcmRlcmluZ1xuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRmbGV4LXNvdXJjZS1vcmRlcmluZy1jb3VudCB7XG4gICAgICAuI3skLXpmLXNpemV9LW9yZGVyLSN7JGl9IHtcbiAgICAgICAgQGluY2x1ZGUgZmxleC1vcmRlcigkaSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVmFuaWxsYSBGbGV4Ym94IEhlbHBlcnNcbiAgQGluY2x1ZGUgZmxleC1oZWxwZXJzO1xufVxuIiwiQGZ1bmN0aW9uIC16Zi1mbGV4LWp1c3RpZnkoJHRleHQtZGlyZWN0aW9uKXtcbiAgJC16Zi1mbGV4LWp1c3RpZnk6IChcbiAgICAnbGVmdCc6IGlmKCR0ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGZsZXgtZW5kLCBmbGV4LXN0YXJ0KSxcbiAgICAncmlnaHQnOiBpZigkdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBmbGV4LXN0YXJ0LCBmbGV4LWVuZCksXG4gICAgJ2NlbnRlcic6IGNlbnRlcixcbiAgICAnanVzdGlmeSc6IHNwYWNlLWJldHdlZW4sXG4gICAgJ3NwYWNlZCc6IHNwYWNlLWFyb3VuZCxcbiAgKTtcblxuICBAcmV0dXJuICQtemYtZmxleC1qdXN0aWZ5O1xufVxuXG5cbiQtemYtZmxleC1hbGlnbjogKFxuICAndG9wJzogZmxleC1zdGFydCxcbiAgJ2JvdHRvbSc6IGZsZXgtZW5kLFxuICAnbWlkZGxlJzogY2VudGVyLFxuICAnc3RyZXRjaCc6IHN0cmV0Y2gsXG4pO1xuXG4kLXpmLWZsZXgtZGlyZWN0aW9uOiAoXG4gICdyb3cnOiByb3csXG4gICdyb3ctcmV2ZXJzZSc6IHJvdy1yZXZlcnNlLFxuICAnY29sdW1uJzogY29sdW1uLFxuICAnY29sdW1uLXJldmVyc2UnOiBjb2x1bW4tcmV2ZXJzZSxcbik7XG5cbi8vLyBFbmFibGVzIGZsZXhib3ggYnkgYWRkaW5nIGBkaXNwbGF5OiBmbGV4YCB0byB0aGUgZWxlbWVudC5cbkBtaXhpbiBmbGV4IHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLy8vIEhvcml6b250YWxseSBvciB2ZXJ0aWNhbGx5IGFsaWducyB0aGUgaXRlbXMgd2l0aGluIGEgZmxleCBjb250YWluZXIuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR4IFtudWxsXSAtIEhvcml6b250YWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGBsZWZ0YCwgYHJpZ2h0YCwgYGNlbnRlcmAsIGBqdXN0aWZ5YCwgb3IgYHNwYWNlZGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCBob3Jpem9udGFsIGFsaWdubWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR5IFtudWxsXSAtIFZlcnRpY2FsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgdG9wYCwgYGJvdHRvbWAsIGBtaWRkbGVgLCBvciBgc3RyZXRjaGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCB2ZXJ0aWNhbCBhbGlnbm1lbnQuXG5AbWl4aW4gZmxleC1hbGlnbigkeDogbnVsbCwgJHk6IG51bGwpIHtcbiAgQGlmICR4IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWp1c3RpZnksICR4KSB7XG4gICAgICAkeDogbWFwLWdldCgkLXpmLWZsZXgtanVzdGlmeSwgJHgpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLXJvdy1hbGlnbigpOiAjeyR4fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgaG9yaXpvbnRhbCBhbGlnbm1lbnQuIFVzZSBsZWZ0LCByaWdodCwgY2VudGVyLCBqdXN0aWZ5LCBvciBzcGFjZWQuJztcbiAgICB9XG4gIH1cblxuICBAaWYgJHkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtYWxpZ24sICR5KSB7XG4gICAgICAkeTogbWFwLWdldCgkLXpmLWZsZXgtYWxpZ24sICR5KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1yb3ctYWxpZ24oKTogI3skeX0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIHZlcnRpY2FsIGFsaWdubWVudC4gVXNlIHRvcCwgYm90dG9tLCBtaWRkbGUsIG9yIHN0cmV0Y2guJztcbiAgICB9XG4gIH1cblxuICBqdXN0aWZ5LWNvbnRlbnQ6ICR4O1xuICBhbGlnbi1pdGVtczogJHk7XG59XG5cbi8vLyBWZXJ0aWNhbGx5IGFsaWduIGEgc2luZ2xlIGNvbHVtbiB3aXRoaW4gYSBmbGV4IHJvdy4gQXBwbHkgdGhpcyBtaXhpbiB0byBhIGZsZXggY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeSBbbnVsbF0gLSBWZXJ0aWNhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYHRvcGAsIGBib3R0b21gLCBgbWlkZGxlYCwgb3IgYHN0cmV0Y2hgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgdmVydGljYWwgYWxpZ25tZW50LlxuQG1peGluIGZsZXgtYWxpZ24tc2VsZigkeTogbnVsbCkge1xuICBAaWYgJHkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtYWxpZ24sICR5KSB7XG4gICAgICAkeTogbWFwLWdldCgkLXpmLWZsZXgtYWxpZ24sICR5KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1jb2x1bW4tYWxpZ24oKTogI3skeX0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIGFsaWdubWVudC4gVXNlIHRvcCwgYm90dG9tLCBtaWRkbGUsIG9yIHN0cmV0Y2guJztcbiAgICB9XG4gIH1cblxuICBhbGlnbi1zZWxmOiAkeTtcbn1cblxuLy8vIENoYW5nZXMgdGhlIHNvdXJjZSBvcmRlciBvZiBhIGZsZXggY2hpbGQuIENoaWxkcmVuIHdpdGggbG93ZXIgbnVtYmVycyBhcHBlYXIgZmlyc3QgaW4gdGhlIGxheW91dC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG9yZGVyIFswXSAtIE9yZGVyIG51bWJlciB0byBhcHBseS5cbkBtaXhpbiBmbGV4LW9yZGVyKCRvcmRlcjogMCkge1xuICBvcmRlcjogJG9yZGVyO1xufVxuXG4vLy8gQ2hhbmdlIGZsZXgtZGlyZWN0aW9uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyZWN0aW9uIFtyb3ddIC0gRmxleCBkaXJlY3Rpb24gdG8gdXNlLiBDYW4gYmVcbi8vLyAgIC0gcm93IChkZWZhdWx0KTogc2FtZSBhcyB0ZXh0IGRpcmVjdGlvblxuLy8vICAgLSByb3ctcmV2ZXJzZTogb3Bwb3NpdGUgdG8gdGV4dCBkaXJlY3Rpb25cbi8vLyAgIC0gY29sdW1uOiBzYW1lIGFzIHJvdyBidXQgdG9wIHRvIGJvdHRvbVxuLy8vICAgLSBjb2x1bW4tcmV2ZXJzZTogc2FtZSBhcyByb3ctcmV2ZXJzZSB0b3AgdG8gYm90dG9tXG5AbWl4aW4gZmxleC1kaXJlY3Rpb24oJGRpcmVjdGlvbjogcm93KSB7XG4gIGZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xufVxuIiwiLy8vIEFwcGxpZXMgYmFzaWMgdHJhbnNpdGlvbiBzZXR0aW5ncyB0byBhbiBlbGVtZW50LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIHRyYW5zaXRpb24tYmFzaWNzKFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gIEBpbmNsdWRlIC1tb3Rpb24tdWktZGVmYXVsdHM7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmc7XG4gIHRyYW5zaXRpb24tZGVsYXk6ICRkZWxheTtcbn1cblxuLy8vIFdyYXBzIHRoZSBjb250ZW50IGluIHRoZSBzZXR1cCBjbGFzcyBmb3IgYSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciAtIFN0YXRlIHRvIHNldHVwIGZvciB0cmFuc2l0aW9uLlxuQG1peGluIHRyYW5zaXRpb24tc3RhcnQoJGRpcikge1xuICAkc2VsZWN0b3I6IC1tdWktYnVpbGQtc2VsZWN0b3IobWFwLWdldCgkbW90aW9uLXVpLXN0YXRlcywgJGRpcikpO1xuXG4gIEBhdC1yb290IHtcbiAgICAjeyRzZWxlY3Rvcn0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBXcmFwcyB0aGUgY29udGVudCBpbiB0aGUgYWN0aXZlIGNsYXNzIGZvciBhIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyIC0gU3RhdGUgdG8gYWN0aXZhdGUgYSB0cmFuc2l0aW9uIG9uLlxuQG1peGluIHRyYW5zaXRpb24tZW5kKCRkaXIpIHtcbiAgJHNlbGVjdG9yOiAtbXVpLWJ1aWxkLXNlbGVjdG9yKG1hcC1nZXQoJG1vdGlvbi11aS1zdGF0ZXMsICRkaXIpLCB0cnVlKTtcblxuICBAYXQtcm9vdCB7XG4gICAgI3skc2VsZWN0b3J9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3RhZ2dlciBhbmltYXRpb24sIHdoaWNoIGNhbiBiZSB1c2VkIHdpdGggQW5ndWxhcidzIGBuZy1yZXBlYXRgLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheS1hbW91bnQgLSBBbW91bnQgb2YgdGltZSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyB0byBhZGQgYmV0d2VlbiBlYWNoIGl0ZW0ncyBhbmltYXRpb24uXG5AbWl4aW4gc3RhZ2dlcigkZGVsYXktYW1vdW50KSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6ICRkZWxheS1hbW91bnQ7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDA7IC8vIFByZXZlbnQgYWNjaWRlbnRhbCBDU1MgaW5oZXJpdGFuY2Vcbn1cbiIsIi8vIHNjc3MtbGludDpkaXNhYmxlIEltcG9ydGFudFJ1bGUsIFNwYWNlQWZ0ZXJDb21tYSwgU2luZ2xlTGluZVBlclByb3BlcnR5XG5cbkBtaXhpbiAtbW90aW9uLXVpLWRlZmF1bHRzIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogbWFwLWdldCgkbW90aW9uLXVpLXNwZWVkcywgZGVmYXVsdCk7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBtYXAtZ2V0KCRtb3Rpb24tdWktZWFzaW5ncywgZGVmYXVsdCk7XG59XG5cbi8vIFRyYW5zaXRpb25zXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuQG1peGluIG1vdGlvbi11aS10cmFuc2l0aW9ucyB7XG4gIC8vIFNsaWRlXG4gIC5zbGlkZS1pbi1kb3duICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgZG93bik7IH1cbiAgLnNsaWRlLWluLWxlZnQgICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICByaWdodCk7IH1cbiAgLnNsaWRlLWluLXVwICAgICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICB1cCk7IH1cbiAgLnNsaWRlLWluLXJpZ2h0ICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICBsZWZ0KTsgfVxuICAuc2xpZGUtb3V0LWRvd24gICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIGRvd24pOyB9XG4gIC5zbGlkZS1vdXQtcmlnaHQgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgcmlnaHQpOyB9XG4gIC5zbGlkZS1vdXQtdXAgICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgdXApOyB9XG4gIC5zbGlkZS1vdXQtbGVmdCAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgbGVmdCk7IH1cblxuICAvLyBGYWRlXG4gIC5mYWRlLWluICB7IEBpbmNsdWRlIG11aS1mYWRlKGluLCAgMCwgMSk7IH1cbiAgLmZhZGUtb3V0IHsgQGluY2x1ZGUgbXVpLWZhZGUob3V0LCAxLCAwKTsgfVxuXG4gIC8vIEhpbmdlXG4gIC5oaW5nZS1pbi1mcm9tLXRvcCAgICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgdG9wKTsgfVxuICAuaGluZ2UtaW4tZnJvbS1yaWdodCAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIHJpZ2h0KTsgfVxuICAuaGluZ2UtaW4tZnJvbS1ib3R0b20gICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIGJvdHRvbSk7IH1cbiAgLmhpbmdlLWluLWZyb20tbGVmdCAgICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICBsZWZ0KTsgfVxuICAuaGluZ2UtaW4tZnJvbS1taWRkbGUteCAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICB0b3AsICAgY2VudGVyKTsgfVxuICAuaGluZ2UtaW4tZnJvbS1taWRkbGUteSAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICByaWdodCwgY2VudGVyKTsgfVxuICAuaGluZ2Utb3V0LWZyb20tdG9wICAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHRvcCk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLXJpZ2h0ICAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCByaWdodCk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLWJvdHRvbSAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCBib3R0b20pOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1sZWZ0ICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgbGVmdCk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLW1pZGRsZS14IHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgdG9wLCAgIGNlbnRlcik7IH1cbiAgLmhpbmdlLW91dC1mcm9tLW1pZGRsZS15IHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgcmlnaHQsIGNlbnRlcik7IH1cblxuICAvLyBTY2FsZVxuICAuc2NhbGUtaW4tdXAgICAgeyBAaW5jbHVkZSBtdWktem9vbShpbiwgIDAuNSwgMSk7IH1cbiAgLnNjYWxlLWluLWRvd24gIHsgQGluY2x1ZGUgbXVpLXpvb20oaW4sICAxLjUsIDEpOyB9XG4gIC5zY2FsZS1vdXQtdXAgICB7IEBpbmNsdWRlIG11aS16b29tKG91dCwgMSwgMS41KTsgfVxuICAuc2NhbGUtb3V0LWRvd24geyBAaW5jbHVkZSBtdWktem9vbShvdXQsIDEsIDAuNSk7IH1cblxuICAvLyBTcGluXG4gIC5zcGluLWluICAgICB7IEBpbmNsdWRlIG11aS1zcGluKGluLCAgY3cpOyB9XG4gIC5zcGluLW91dCAgICB7IEBpbmNsdWRlIG11aS1zcGluKG91dCwgY3cpOyB9XG4gIC5zcGluLWluLWNjdyAgeyBAaW5jbHVkZSBtdWktc3BpbihpbiwgIGNjdyk7IH1cbiAgLnNwaW4tb3V0LWNjdyB7IEBpbmNsdWRlIG11aS1zcGluKG91dCwgY2N3KTsgfVxuXG4gIC8vIFRyYW5zaXRpb24gTW9kaWZpZXJzXG4gIC8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLXNwZWVkcyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtb3Rpb24tdWktZWFzaW5ncyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWRlbGF5cyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9LWRlbGF5IHsgdHJhbnNpdGlvbi1kZWxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQW5pbWF0aW9uc1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbkBtaXhpbiBtb3Rpb24tdWktYW5pbWF0aW9ucyB7XG4gIC5zaGFrZSAgICB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24oc2hha2UpOyB9XG4gIC5zcGluLWN3ICB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24oc3Bpbik7IH1cbiAgLnNwaW4tY2N3IHsgQGluY2x1ZGUgbXVpLWFuaW1hdGlvbihzcGluKGNjdykpOyB9XG4gIC53aWdnbGUgICB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24od2lnZ2xlKTsgfVxuXG4gIC5zaGFrZSxcbiAgLnNwaW4tY3csXG4gIC5zcGluLWNjdyxcbiAgLndpZ2dsZSB7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiBtYXAtZ2V0KCRtb3Rpb24tdWktc3BlZWRzLCBkZWZhdWx0KTtcbiAgfVxuXG4gIC8vIEFuaW1hdGlvbiBNb2RpZmllcnNcbiAgLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbiAgLmluZmluaXRlIHsgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7IH1cblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtb3Rpb24tdWktc3BlZWRzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0geyBhbmltYXRpb24tZHVyYXRpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWVhc2luZ3Mge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWRlbGF5cyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9LWRlbGF5IHsgYW5pbWF0aW9uLWRlbGF5OiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gSW50ZXJuYWwgY291bnRlciBmb3IgY3JlYXRpbmcgdW5pcXVlIGtleWZyYW1lIG5hbWVzXG4kLW11aS1jdXN0b206IDA7XG5cbi8vLyBDcmVhdGVzIGEga2V5ZnJhbWUgZnJvbSBvbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zLiBVc2UgdGhpcyBmdW5jdGlvbiBpbnN0ZWFkIG9mIGBtdWktYW5pbWF0aW9uYCBpZiB5b3Ugd2FudCB0byBjcmVhdGUgYSBrZXlmcmFtZSBhbmltYXRpb24gKndpdGhvdXQqIGF1dG9tYXRpY2FsbHkgYXNzaWduaW5nIGl0IHRvIHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbmFtZSAtIE5hbWUgb2YgdGhlIGtleWZyYW1lLlxuLy8vIEBwYXJhbSB7QXJnbGlzdH0gJGVmZmVjdHMuLi4gLSBPbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zIHRvIGJ1aWxkIHRoZSBrZXlmcmFtZSB3aXRoLlxuQG1peGluIG11aS1rZXlmcmFtZXMoJG5hbWUsICRlZmZlY3RzLi4uKSB7XG4gICRvYmo6IC1tdWktcHJvY2Vzcy1hcmdzKCRlZmZlY3RzLi4uKTtcbiAgJG9iajogbWFwLXJlbW92ZSgkb2JqLCBuYW1lKTtcblxuICBAa2V5ZnJhbWVzICN7JG5hbWV9IHtcbiAgICAvLyBOb3cgaXRlcmF0ZSB0aHJvdWdoIGVhY2gga2V5ZnJhbWUgcGVyY2VudGFnZVxuICAgIEBlYWNoICRwY3QsICRwcm9wcyBpbiAkb2JqIHtcbiAgICAgICN7LW11aS1rZXlmcmFtZS1wY3QoJHBjdCl9IHtcbiAgICAgICAgLy8gTGFzdGx5LCBpdGVyYXRlIHRocm91Z2ggZWFjaCBDU1MgcHJvcGVydHkgd2l0aGluIGEgcGVyY2VudGFnZSBhbmQgcHJpbnQgaXQgb3V0XG4gICAgICAgIEBlYWNoICRwcm9wLCAkdmFsdWUgaW4gJHByb3BzIHtcbiAgICAgICAgICAjeyRwcm9wfTogI3skdmFsdWV9O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgc3RyaW5nIGZvciBhIENTUyBrZXlmcmFtZSwgYnkgY29udmVydGluZyBhIGxpc3Qgb2YgbnVtYmVycyB0byBhIGNvbW1hLXNlcGFyYXRlZCBsaXN0IG9mIHBlcmNlbnRhZ2UgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRpbnB1dCAtIExpc3Qgb2YgbnVtYmVycyB0byB1c2UuXG4vLy8gQHJldHVybiB7U3RyaW5nfSBBIHNldCBvZiBjb21tYS1zZXBhcmF0ZWQgcGVyY2VudGFnZSB2YWx1ZXMuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1rZXlmcmFtZS1wY3QoJGlucHV0KSB7XG4gICRvdXRwdXQ6ICgpO1xuXG4gIEBpZiB0eXBlLW9mKCRpbnB1dCkgPT0gJ251bWJlcicge1xuICAgICRvdXRwdXQ6ICgkaW5wdXQgKiAxJSk7XG4gIH0gQGVsc2UgaWYgdHlwZS1vZigkaW5wdXQpID09ICdsaXN0JyB7XG4gICAgQGVhY2ggJGkgaW4gJGlucHV0IHtcbiAgICAgICRvdXRwdXQ6IGFwcGVuZCgkb3V0cHV0LCAoJGkgKiAxJSksIGNvbW1hKTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuIFwiI3skb3V0cHV0fVwiO1xufVxuXG4vLy8gUHJpbnRzIHRoZSBDU1MgcHJvcGVydGllcyBmcm9tIGEgc3BlY2lmaWMga2V5IGluIGEga2V5ZnJhbWVzIG1hcC4gVXNlZCB0byBib3Jyb3cgQ1NTIGZyb20ga2V5ZnJhbWUgZnVuY3Rpb25zIGZvciB1c2UgaW4gdHJhbnNpdGlvbnMuXG4vLy8gQHBhcmFtIHtNYXB9ICRrZiAtIEtleWZyYW1lIG1hcCB0byBleHRyYWN0IGZyb20uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRrZXkgLSBLZXkgaW4gdGhlIG1hcCB0byBwcmludCB0aGUgQ1NTIG9mLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIC1tdWkta2V5ZnJhbWUtZ2V0KCRrZiwgJGtleSkge1xuICAkbWFwOiBtYXAtZ2V0KCRrZiwgJGtleSk7XG5cbiAgQGVhY2ggJHByb3AsICR2YWx1ZSBpbiAkbWFwIG9yICgpIHtcbiAgICAvLyBTb21lIGtleWZyYW1lIG1hcHMgc3RvcmUgdHJhbnNmb3JtcyBhcyBxdW90ZWQgc3RyaW5nc1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ3N0cmluZycge1xuICAgICAgJHZhbHVlOiB1bnF1b3RlKCR2YWx1ZSk7XG4gICAgfVxuICAgICN7JHByb3B9OiAkdmFsdWU7XG4gIH1cbn1cblxuLy8vIFJlZm9ybWF0cyBhIG1hcCBjb250YWluaW5nIGtleXMgd2l0aCBhIGxpc3Qgb2YgdmFsdWVzLCBzbyB0aGF0IGVhY2gga2V5IGlzIGEgc2luZ2xlIHZhbHVlLlxuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHNwbGl0IHVwLlxuLy8vIEByZXR1cm4ge01hcH0gQSByZWZvcm1hdHRlZCBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1rZXlmcmFtZS1zcGxpdCgkbWFwKSB7XG4gICRuZXctbWFwOiAoKTtcblxuICAvLyBTcGxpdCBrZXlzIHdpdGggbXVsdGlwbGUgdmFsdWVzIGludG8gaW5kaXZpZHVhbCBrZXlzXG4gIEBlYWNoICRrZXksICRpdGVtIGluICRtYXAge1xuICAgICRrZXktdHlwZTogdHlwZS1vZigka2V5KTtcblxuICAgIEBpZiAka2V5LXR5cGUgPT0gJ251bWJlcicge1xuICAgICAgJG5ldy1tYXA6IG1hcC1tZXJnZSgkbmV3LW1hcCwgKCRrZXk6ICRpdGVtKSk7XG4gICAgfSBAZWxzZSBpZiAka2V5LXR5cGUgPT0gJ2xpc3QnIHtcbiAgICAgIEBlYWNoICRrIGluICRrZXkge1xuICAgICAgICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAoJGs6ICRpdGVtKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbmV3LW1hcDtcbn1cblxuLy8vIENvbWJpbmVzIGEgc2VyaWVzIG9mIGtleWZyYW1lIG9iamVjdHMgaW50byBvbmUuXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAkbWFwcy4uLiAtIEEgc2VyaWVzIG9mIG1hcHMgdG8gbWVyZ2UsIGFzIGluZGl2aWR1YWwgcGFyYW1ldGVycy5cbi8vLyBAcmV0dXJuIHtNYXB9IEEgY29tYmluZWQga2V5ZnJhbWUgb2JqZWN0LlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWkta2V5ZnJhbWUtY29tYmluZSgkbWFwcy4uLikge1xuICAkbmV3LW1hcDogKCk7XG5cbiAgLy8gSXRlcmF0ZSB0aHJvdWdoIGVhY2ggbWFwIHBhc3NlZCBpblxuICBAZWFjaCAkbWFwIGluICRtYXBzIHtcbiAgICBAaWYgLW11aS1pcy1mdW5jdGlvbigkbWFwKSB7XG4gICAgICAkbWFwOiAtbXVpLXNhZmUtY2FsbCgkbWFwKTtcbiAgICB9XG5cbiAgICAkbWFwOiAtbXVpLWtleWZyYW1lLXNwbGl0KCRtYXApO1xuXG4gICAgLy8gSXRlcmF0ZSB0aHJvdWdoIGVhY2gga2V5ZnJhbWUgaW4gdGhlIG1hcFxuICAgIC8vICRrZXkgaXMgdGhlIGtleWZyYW1lIHBlcmNlbnRhZ2VcbiAgICAvLyAkdmFsdWUgaXMgYSBtYXAgb2YgQ1NTIHByb3BlcnRpZXNcbiAgICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgICAkbmV3LXZhbHVlOiAoKTtcblxuICAgICAgQGlmIG1hcC1oYXMta2V5KCRuZXctbWFwLCAka2V5KSB7XG4gICAgICAgIC8vIElmIHRoZSBtYXAgYWxyZWFkeSBoYXMgdGhlIGtleWZyYW1lICUsIGFwcGVuZCB0aGUgbmV3IHByb3BlcnR5XG4gICAgICAgICRuZXctdmFsdWU6IC1tdWktbWVyZ2UtcHJvcGVydGllcyhtYXAtZ2V0KCRuZXctbWFwLCAka2V5KSwgJHZhbHVlKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBPdGhlcndpc2UsIGNyZWF0ZSBhIG5ldyBtYXAgd2l0aCB0aGUgbmV3IHByb3BlcnR5XG4gICAgICAgICRuZXctdmFsdWU6ICR2YWx1ZTtcbiAgICAgIH1cblxuICAgICAgLy8gRmluYWxseSwgbWVyZ2UgdGhlIG1vZGlmaWVkIGtleWZyYW1lIHZhbHVlIGludG8gdGhlIG91dHB1dCBtYXBcbiAgICAgICRuZXctbWFwOiBtYXAtbWVyZ2UoJG5ldy1tYXAsICgka2V5OiAkbmV3LXZhbHVlKSk7XG4gICAgfVxuICB9XG5cbiAgLy8gTWFrZSBhIG5hbWUgZm9yIHRoZSBrZXlmcmFtZXNcbiAgJC1tdWktY3VzdG9tOiAkLW11aS1jdXN0b20gKyAxICFnbG9iYWw7XG4gICRtYXAtbmFtZTogKG5hbWU6ICdjdXN0b20tI3skLW11aS1jdXN0b219Jyk7XG4gICRuZXctbWFwOiBtYXAtbWVyZ2UoJG5ldy1tYXAsICRtYXAtbmFtZSk7XG5cbiAgQHJldHVybiAkbmV3LW1hcDtcbn1cblxuLy8vIENvbWJpbmVzIHR3byBtYXBzIG9mIENTUyBwcm9wZXJ0aWVzIGludG8gb25lIG1hcC4gSWYgYm90aCBtYXBzIGhhdmUgYSB0cmFuc2Zvcm0gcHJvcGVydHksIHRoZSB2YWx1ZXMgZnJvbSBlYWNoIHdpbGwgYmUgY29tYmluZWQgaW50byBvbmUgcHJvcGVydHkuXG4vLy8gQHBhcmFtIHtNYXB9ICRvbmUgLSBGaXJzdCBtYXAgdG8gbWVyZ2UuXG4vLy8gQHBhcmFtIHtNYXB9ICR0d28gLSBTZWNvbmQgbWFwIHRvIG1lcmdlLlxuLy8vIEByZXR1cm4ge01hcH0gQSBjb21iaW5lZCBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1tZXJnZS1wcm9wZXJ0aWVzKCRvbmUsICR0d28pIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRvbmUsIHRyYW5zZm9ybSkgYW5kIG1hcC1oYXMta2V5KCR0d28sIHRyYW5zZm9ybSkge1xuICAgICR0cmFuc2Zvcm06IGpvaW4obWFwLWdldCgkb25lLCB0cmFuc2Zvcm0pLCBtYXAtZ2V0KCR0d28sIHRyYW5zZm9ybSkpO1xuICAgICRvbmU6IG1hcC1tZXJnZSgkb25lLCAodHJhbnNmb3JtOiAkdHJhbnNmb3JtKSk7XG4gICAgJHR3bzogbWFwLXJlbW92ZSgkdHdvLCB0cmFuc2Zvcm0pO1xuICB9XG5cbiAgQHJldHVybiBtYXAtbWVyZ2UoJG9uZSwgJHR3byk7XG59XG4iLCIvLy8gQ3JlYXRlcyBhIHNsaWRpbmcgdHJhbnNpdGlvbiBieSB0cmFuc2xhdGluZyB0aGUgZWxlbWVudCBob3Jpem9udGFsbHkgb3IgdmVydGljYWxseS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW251bGxdIC0gRGlyZWN0aW9uIHRvIHNsaWRlIHRvLiBDYW4gYmUgYHVwYCwgYHJpZ2h0YCwgYGRvd25gLCBvciBgbGVmdGAuIEJ5IGRlZmF1bHQgYGxlZnRgIGFuZCBgcmlnaHRgIGZvciBgaW5gIGFuZCBgb3V0YCBzdGF0ZXMgcmVzcGVjdGl2ZWx5LlxuLy8vIEBwYXJhbSB7TGVuZ3RofSAkYW1vdW50IFsxMDAlXSAtIExlbmd0aCBvZiB0aGUgc2xpZGUgYXMgYSBwZXJjZW50YWdlIHZhbHVlLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGZhZGUgW2ZhbHNlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLXNsaWRlIChcbiAgJHN0YXRlOiBpbixcbiAgJGRpcmVjdGlvbjogbnVsbCxcbiAgJGFtb3VudDogMTAwJSxcbiAgJGZhZGU6IG1hcC1nZXQoJG1vdGlvbi11aS1zZXR0aW5ncywgc2xpZGUtYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRkaXJlY3Rpb246IGlmKCRkaXJlY3Rpb24gIT0gbnVsbCwgJGRpcmVjdGlvbiwgaWYoJHN0YXRlID09IGluLCBsZWZ0LCByaWdodCkpO1xuICAkc2xpZGU6IHNsaWRlKCRzdGF0ZSwgJGRpcmVjdGlvbiwgJGFtb3VudCk7XG5cbiAgLy8gQ1NTIE91dHB1dFxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2xpZGUsIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuXG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNsaWRlLCAxMDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIGZhZGUgdHJhbnNpdGlvbiBieSBhZGp1c3RpbmcgdGhlIG9wYWNpdHkgb2YgdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRmcm9tIFtudWxsXSAtIE9wYWNpdHkgdG8gc3RhcnQgYXQuIE11c3QgYmUgYSBudW1iZXIgYmV0d2VlbiAwIGFuZCAxLiBCeSBkZWZhdWx0IGAwYCBhbmQgYDFgIGZvciBgaW5gIGFuZCBgb3V0YCBzdGF0ZXMgcmVzcGVjdGl2ZWx5LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdG8gW251bGxdIC0gT3BhY2l0eSB0byBlbmQgb24uIEJ5IGRlZmF1bHQgYDFgIGFuZCBgMGAgZm9yIGBpbmAgYW5kIGBvdXRgIHN0YXRlcyByZXNwZWN0aXZlbHkuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktZmFkZShcbiAgJHN0YXRlOiBpbixcbiAgJGZyb206IG51bGwsXG4gICR0bzogbnVsbCxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkZnJvbTogaWYoJGZyb20gIT0gbnVsbCwgJGZyb20sIGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSkpO1xuICAkdG86IGlmKCR0byAhPSBudWxsLCAkdG8sIGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCkpO1xuICAkZmFkZTogZmFkZSgkZnJvbSwgJHRvKTtcblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkZmFkZSwgMCk7XG5cbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJGZhZGUsIDEwMCk7XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgaGluZ2UgdHJhbnNpdGlvbiBieSByb3RhdGluZyB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRmcm9tIFtsZWZ0XSAtIEVkZ2Ugb2YgdGhlIGVsZW1lbnQgdG8gcm90YXRlIGZyb20uIENhbiBiZSBgdG9wYCwgYHJpZ2h0YCwgYGJvdHRvbWAsIG9yIGBsZWZ0YC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRheGlzIFtlZGdlXSAtIEF4aXMgb2YgdGhlIGVsZW1lbnQgdG8gcm90YXRlIG9uLiBDYW4gYmUgYGVkZ2VgIG9yIGBjZW50ZXJgLlxuLy8vIEBwYXJhbSB7TGVuZ3RofSAkcGVyc3BlY3RpdmUgWzIwMDBweF0gLSBQZXJjZWl2ZWQgZGlzdGFuY2UgYmV0d2VlbiB0aGUgdmlld2VyIGFuZCB0aGUgZWxlbWVudC4gQSBoaWdoZXIgbnVtYmVyIHdpbGwgbWFrZSB0aGUgcm90YXRpb24gZWZmZWN0IG1vcmUgcHJvbm91bmNlZC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR0dXJuLW9yaWdpbiBbbnVsbF0gLSBTaWRlIG9mIHRoZSBlbGVtZW50IHRvIHN0YXJ0IHRoZSByb3RhdGlvbiBmcm9tLiBDYW4gYmUgYGZyb20tYmFja2Agb3IgYGZyb20tZnJvbnRgLiBCeSBkZWZhdWx0IGBmcm9tLWJhY2tgIGFuZCBgZnJvbS1mcm9udGAgZm9yIGBpbmAgYW5kIGBvdXRgIHN0YXRlcyByZXNwZWN0aXZlbHkuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmFkZSBbdHJ1ZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1oaW5nZSAoXG4gICRzdGF0ZTogaW4sXG4gICRmcm9tOiBsZWZ0LFxuICAkYXhpczogZWRnZSxcbiAgJHBlcnNwZWN0aXZlOiAyMDAwcHgsXG4gICR0dXJuLW9yaWdpbjogbnVsbCxcbiAgJGZhZGU6IG1hcC1nZXQoJG1vdGlvbi11aS1zZXR0aW5ncywgaGluZ2UtYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICR0dXJuLW9yaWdpbjogaWYoJHR1cm4tb3JpZ2luICE9IG51bGwsICR0dXJuLW9yaWdpbiwgaWYoJHN0YXRlID09IGluLCBmcm9tLWJhY2ssIGZyb20tZnJvbnQpKTtcbiAgJGhpbmdlOiBoaW5nZSgkc3RhdGUsICRmcm9tLCAkYXhpcywgJHBlcnNwZWN0aXZlLCAkdHVybi1vcmlnaW4pO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRoaW5nZSwgMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAwLCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkaGluZ2UsIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgc2NhbGluZyB0cmFuc2l0aW9uLiBBIHNjYWxlIG9mIGAxYCBtZWFucyB0aGUgZWxlbWVudCBpcyB0aGUgc2FtZSBzaXplLiBMYXJnZXIgbnVtYmVycyBtYWtlIHRoZSBlbGVtZW50IGJpZ2dlciwgd2hpbGUgbnVtYmVycyBsZXNzIHRoYW4gMSBtYWtlIHRoZSBlbGVtZW50IHNtYWxsZXIuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRmcm9tIFtudWxsXSAtIFNpemUgdG8gc3RhcnQgYXQuIEJ5IGRlZmF1bHQgYDBgIGFuZCBgMWAgZm9yIGBpbmAgYW5kIGBvdXRgIHN0YXRlcyByZXNwZWN0aXZlbHkuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0byBbbnVsbF0gLSBTaXplIHRvIGVuZCBhdC4gQnkgZGVmYXVsdCBgMWAgYW5kIGAwYCBmb3IgYGluYCBhbmQgYG91dGAgc3RhdGVzIHJlc3BlY3RpdmVseS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFt0cnVlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLXpvb20oXG4gICRzdGF0ZTogaW4sXG4gICRmcm9tOiBudWxsLFxuICAkdG86IG51bGwsXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIHNjYWxlLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkZnJvbTogaWYoJGZyb20gIT0gbnVsbCwgJGZyb20sIGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSkpO1xuICAkdG86IGlmKCR0byAhPSBudWxsLCAkdG8sIGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCkpO1xuICAkc2NhbGU6IHpvb20oJGZyb20sICR0byk7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNjYWxlLCAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDAsIDEpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzY2FsZSwgMTAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDEsIDApO1xuICAgIH1cbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBzcGlubmluZyB0cmFuc2l0aW9uIGJ5IHJvdGF0aW5nIHRoZSBlbGVtZW50LiBUaGUgYHR1cm5gIHVuaXQgaXMgdXNlZCB0byBzcGVjaWZ5IGhvdyBmYXIgdG8gcm90YXRlLiBgMXR1cm5gIGlzIGVxdWFsIHRvIGEgMzYwLWRlZ3JlZSBzcGluLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpcmVjdGlvbiBbbnVsbF0gLSBEaXJlY3Rpb24gdG8gc3Bpbi4gU2hvdWxkIGJlIGBjd2AgKGNsb2Nrd2lzZSkgb3IgYGNjd2AgKGNvdW50ZXJjbG9ja3dpc2UpLiBCeSBkZWZhdWx0IGBjd2AgYW5kIGBjY3dgIGZvciBgaW5gIGFuZCBgb3V0YCBzdGF0ZXMgcmVzcGVjdGl2ZWx5LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYW1vdW50IFswLjc1dHVybl0gLSBBbW91bnQgdG8gZWxlbWVudCB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFtmYWxzZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1zcGluKFxuICAkc3RhdGU6IGluLFxuICAkZGlyZWN0aW9uOiBjdyxcbiAgJGFtb3VudDogMC43NXR1cm4sXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIHNwaW4tYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRkaXJlY3Rpb246IGlmKCRkaXJlY3Rpb24gIT0gbnVsbCwgJGRpcmVjdGlvbiwgaWYoJHN0YXRlID09IGluLCBjdywgY2N3KSk7XG4gICRzcGluOiBzcGluKCRzdGF0ZSwgJGRpcmVjdGlvbiwgJGFtb3VudCk7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNwaW4sIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNwaW4sIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEga2V5ZnJhbWUgZnJvbSBvbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zIGFuZCBhc3NpZ25zIGl0IHRvIHRoZSBlbGVtZW50IGJ5IGFkZGluZyB0aGUgYGFuaW1hdGlvbi1uYW1lYCBwcm9wZXJ0eS5cbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICRlZmZlY3RzLi4uIC0gT25lIG9yIG1vcmUgZWZmZWN0IGZ1bmN0aW9ucyB0byBidWlsZCB0aGUga2V5ZnJhbWUgd2l0aC5cbkBtaXhpbiBtdWktYW5pbWF0aW9uKCRhcmdzLi4uKSB7XG4gICRuYW1lOiBtYXAtZ2V0KC1tdWktcHJvY2Vzcy1hcmdzKCRhcmdzLi4uKSwgbmFtZSk7XG4gIEBpbmNsdWRlIG11aS1rZXlmcmFtZXMoJG5hbWUsICRhcmdzLi4uKTtcbiAgYW5pbWF0aW9uLW5hbWU6IHVucXVvdGUoJG5hbWUpO1xufVxuIiwiQGNoYXJzZXQgJ3V0Zi04JztcblxuQGltcG9ydCAnZ2xvYmFsL3NldHRpbmdzJztcbkBpbXBvcnQgJ2ZvdW5kYXRpb24nO1xuQGltcG9ydCAnbW90aW9uLXVpJztcblxuQGluY2x1ZGUgZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzO1xuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLWdyaWQ7XG4vL0BpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1ncmlkO1xuXG5AaW5jbHVkZSBmb3VuZGF0aW9uLXh5LWdyaWQtY2xhc3NlcztcbkBpbmNsdWRlIGZvdW5kYXRpb24tdHlwb2dyYXBoeTtcbkBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1mb3Jtcztcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tcmFuZ2UtaW5wdXQ7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbjtcbkBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uLW1lbnU7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWJhZGdlO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1icmVhZGNydW1icztcbkBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uLWdyb3VwO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1jYWxsb3V0O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1jYXJkO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1jbG9zZS1idXR0b247XG5AaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnU7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnUtaWNvbjtcbkBpbmNsdWRlIGZvdW5kYXRpb24tZHJpbGxkb3duLW1lbnU7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bi1tZW51O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1sYWJlbDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tbWVkaWEtb2JqZWN0O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1vZmYtY2FudmFzO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1vcmJpdDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tcGFnaW5hdGlvbjtcbkBpbmNsdWRlIGZvdW5kYXRpb24tcHJvZ3Jlc3MtYmFyO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1zbGlkZXI7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXN0aWNreTtcbkBpbmNsdWRlIGZvdW5kYXRpb24tcmV2ZWFsO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1zd2l0Y2g7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXRhYmxlO1xuQGluY2x1ZGUgZm91bmRhdGlvbi10YWJzO1xuQGluY2x1ZGUgZm91bmRhdGlvbi10aHVtYm5haWw7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXRpdGxlLWJhcjtcbkBpbmNsdWRlIGZvdW5kYXRpb24tdG9vbHRpcDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tdG9wLWJhcjtcbkBpbmNsdWRlIGZvdW5kYXRpb24tdmlzaWJpbGl0eS1jbGFzc2VzO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1mbG9hdC1jbGFzc2VzO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWNsYXNzZXM7XG5cbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvdG90eXBlLWNsYXNzZXM7XG5cbkBpbmNsdWRlIG1vdGlvbi11aS10cmFuc2l0aW9ucztcbkBpbmNsdWRlIG1vdGlvbi11aS1hbmltYXRpb25zO1xuXG4vKlxuICBDdXN0b20gc3R5bGVzOlxuICBBZGQgeW91ciBzY3NzIGZpbGVzIGJlbG93IHRvIHN0cnVjdHVyZSB5b3VyIHByb2plY3Qgc3R5bGVzXG4qL1xuXG4vLyBHbG9iYWwgJiBBYnN0cmFjdFxuQGltcG9ydCBcImdsb2JhbC9jb2xvcnNcIjtcbkBpbXBvcnQgXCJnbG9iYWwvYWNjZXNzaWJpbGl0eVwiO1xuQGltcG9ydCBcImdsb2JhbC93cC1hZG1pblwiO1xuQGltcG9ydCBcImdsb2JhbC93cC1vdmVycmlkZXNcIjtcbkBpbXBvcnQgXCJnbG9iYWwvZ3V0ZW5iZXJnXCI7XG5AaW1wb3J0IFwiZ2xvYmFsL3R5cG9ncmFwaHlcIjtcbkBpbXBvcnQgXCJnbG9iYWwvYW5pbWF0aW9uc1wiO1xuXG4vLyBDb21wb25lbnRzXG5AaW1wb3J0IFwiY29tcG9uZW50cy9idXR0b25zXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9jYXJkc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvZmVhdHVyZWQtaW1hZ2VcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2RpdmlkZXJzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9mb3Jtc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvbGlua3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL25hdmlnYXRpb25cIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2NvbnRlbnRcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2Zvb3RlclwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvZmVhdHVyZS1wYW5lbFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX25ld3MtY2Fyb3VzZWxcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19zb2NpYWxtZWRpYVwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvcmVhZC1tb3JlXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy93aGl0ZXBhcGVyc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvaW5mb3JtYXRpb25hbFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvZmlsdGVyXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9hcmNoaXZlXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9hcnQtY29tcFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvc2lnbnVwXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9hY2NvcmRpb25cIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3BvcHVwXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9xdWVyeS1sb29wXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9ibG9jay1jb3ZlclwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvc3RhZmZcIjtcblxuXG4vLyBQYWdlc1xuQGltcG9ydCBcInBhZ2VzL2Zyb250XCI7XG5AaW1wb3J0IFwicGFnZXMva2l0Y2hlbi1zaW5rXCI7XG5AaW1wb3J0IFwicGFnZXMvc2VhcmNoXCI7XG5AaW1wb3J0IFwicGFnZXMvc2luZ2xlXCI7XG5AaW1wb3J0IFwicGFnZXMvNDA0XCI7XG5AaW1wb3J0IFwicGFnZXMvYXJ0XCI7XG5AaW1wb3J0IFwicGFnZXMvc3Vydml2aW5nXCI7XG5AaW1wb3J0IFwicGFnZXMvbGlua2VkaW4tZmVlZFwiO1xuIiwiLy8gVGV4dCBtZWFudCBvbmx5IGZvciBzY3JlZW4gcmVhZGVycy4gQWRkcmVzc2VzIHBhcnQgb2YgdGhlbWUtY2hlY2sgaXNzdWUgIzg0MC5cbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9BdXRvbWF0dGljL19zL2Jsb2IvbWFzdGVyL3N0eWxlLmNzc1xuLnNjcmVlbi1yZWFkZXItdGV4dCB7XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4O1xuICB3aWR0aDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uc2NyZWVuLXJlYWRlci10ZXh0OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBib3gtc2hhZG93OiAwIDAgMnB4IDJweCByZ2JhKDAsIDAsIDAsIDAuNik7XG4gIGNsaXA6IGF1dG8gIWltcG9ydGFudDtcbiAgY29sb3I6ICMyMTc1OWI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBoZWlnaHQ6IGF1dG87XG4gIGxlZnQ6IDVweDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgcGFkZGluZzogMTVweCAyM3B4IDE0cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdG9wOiA1cHg7XG4gIHdpZHRoOiBhdXRvO1xuICB6LWluZGV4OiAxMDAwMDA7IC8vIEFib3ZlIFdQIHRvb2xiYXIuXG59XG4iLCIvLyBGaXggdGhlIGlzc3VlIHdoZXJlIHRoZSBXUCBhZG1pbi1iYXIgb3ZlcmxhcHMgdGhlIG1vYmlsZSBtZW51XG4jd3BhZG1pbmJhciB7XG4gIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xufVxuXG4vLyBNYWtlIHN1cmUgdGhhdCB0aGUgV1AgYWRtaW4tYmFyIGRvZXMgbm90IG92ZXJsYXAgRm91bmRhdGlvbiBjb21wb25lbnRzXG5ib2R5LmFkbWluLWJhciB7XG4gIC8vIE9mZnNldCBzdGlja3kgdG9wIGJhclxuICAmLmYtdG9wYmFyLWZpeGVkIHtcbiAgICAuc3RpY2t5LmZpeGVkIHtcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDMyKTtcbiAgICB9XG4gIH1cbiAgLy8gT2Zmc2V0IG1vYmlsZSBvZmYtY2FudmFzIG1lbnVcbiAgJi5vZmZjYW52YXMge1xuICAgIC5vZmYtY2FudmFzLmlzLW9wZW4ge1xuICAgICAgdG9wOiByZW0tY2FsYyg0Nik7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KDc4Mykge1xuICAgICAgICB0b3A6IHJlbS1jYWxjKDMyKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi53cC1jYXB0aW9uID4gZmlnY2FwdGlvbiB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGNvbG9yOiAjOTk5O1xuICBwYWRkaW5nOiAwLjI1cmVtIDA7XG59XG5cbnAud3AtY2FwdGlvbi10ZXh0e1xuICBmb250LXNpemU6OTAlO1xuICBjb2xvcjogIzY2NjtcbiAgcGFkZGluZzpyZW0tY2FsYygxMCkgMDtcbn1cblxuLmFsaWdubGVmdCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICBtYXJnaW46IDA7XG59XG5cbi5hbGlnbnJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gIG1hcmdpbjogMDtcbn1cblxuLmFsaWduY2VudGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi5nYWxsZXJ5IHtcbiAgQGluY2x1ZGUgeHktZ3JpZDtcbiAgQGluY2x1ZGUgeHktZ3V0dGVycygkbmVnYXRpdmU6IHRydWUpO1xuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDkge1xuICAgICYuZ2FsbGVyeS1jb2x1bW5zLSN7JGl9IHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtbGF5b3V0KDIsICcuZ2FsbGVyeS1pdGVtJywgdHJ1ZSk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgICYuZ2FsbGVyeS1jb2x1bW5zLSN7JGl9IHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoNCwgJy5nYWxsZXJ5LWl0ZW0nLCB0cnVlLCAoc21hbGw6IDMwcHgpKTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgJi5nYWxsZXJ5LWNvbHVtbnMtI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWxheW91dCgkaSwgJy5nYWxsZXJ5LWl0ZW0nLCB0cnVlLCAoc21hbGw6IDMwcHgpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmdhbGxlcnktaWNvbiA+IGEge1xuICAgIEBpbmNsdWRlIHRodW1ibmFpbDtcbiAgICBAaW5jbHVkZSB0aHVtYm5haWwtbGluaztcbiAgfVxuICAuZ2FsbGVyeS1pY29uID4gaW1nIHtcbiAgICBAaW5jbHVkZSB0aHVtYm5haWw7XG4gIH1cbn1cbiIsIi8qXG5Gcm9udGVuZCBzdHlsZXMgZm9yIGd1dGVuYmVyZyBibG9ja3NcbiovXG5cbi8qKiA9PT0gQmFzZSBDb2xvciBQYWxhdHRlID09PSAqL1xuQGVhY2ggJGNvbG9yLCAkY29kZSBpbiAkZm91bmRhdGlvbi1wYWxldHRlIHtcblxuICAuaGFzLSN7JGNvbG9yfS1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2RlO1xuICB9XG5cbiAgLmhhcy0jeyRjb2xvcn0tY29sb3Ige1xuICAgICAgY29sb3I6ICRjb2RlO1xuICB9XG59XG5cbi8qKiA9PT0gQnV0dG9uID09PSAqL1xuLndwLWJsb2NrLWJ1dHRvbiB7XG5cblx0Ly8gYWRkIGdlbmVyYWwgZm91bmRhdGlvbiBidXR0b24gc3R5bGluZ1xuXHQud3AtYmxvY2stYnV0dG9uX19saW5rIHtcblx0XHRAZXh0ZW5kIC5idXR0b247XG4gICAgQGVhY2ggJGNvbG9yLCAkY29kZSBpbiAkZm91bmRhdGlvbi1wYWxldHRlIHtcblxuICAgICAgJi5oYXMtI3skY29sb3J9LWJhY2tncm91bmQtY29sb3Ige1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2RlO1xuICAgICAgfVxuXG4gICAgICAmLmhhcy0jeyRjb2xvcn0tY29sb3Ige1xuICAgICAgICAgIGNvbG9yOiAkY29kZTtcbiAgICAgIH1cbiAgICB9XG5cdH1cblxuXHQvLyBhZGQgc3BlY2lhbCBzdHlsaW5nIGZvciBzcXVhcmVkIGJ1dHRvbnNcblx0Ji5pcy1zdHlsZS1zcXVhcmVkIC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuXHRcdGJvcmRlci1yYWRpdXM6IDA7XG5cdH1cblxuXHQvLyBhZGQgb3V0bGluZSBzdHlsZXNcblx0Ji5pcy1zdHlsZS1vdXRsaW5lIC53cC1ibG9jay1idXR0b25fX2xpbmt7XG5cdFx0QGV4dGVuZCAuaG9sbG93O1xuXHR9XG5cblx0Ly8gc2V0IHRyYW5zcGFyZW50IGJhY2tncm91bmQgdG8gYmxvY2sgZm9yIG91dGxpbmUgYnV0dG9uXG5cdCYuaXMtc3R5bGUtb3V0bGluZSxcblx0Ji5pcy1zdHlsZS1vdXRsaW5lOmhvdmVyLFxuXHQmLmlzLXN0eWxlLW91dGxpbmU6Zm9jdXMsXG5cdCYuaXMtc3R5bGUtb3V0bGluZTphY3RpdmUge1xuICAgIC8vIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIC53cC1ibG9jay1idXR0b25fX2xpbmt7XG4gICAgICAvLyBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cdH1cbn1cblxuLyoqID09PSBGaWxlID09PSAqL1xuLndwLWJsb2NrLWZpbGUgLndwLWJsb2NrLWZpbGVfX2J1dHRvbntcbiAgQGluY2x1ZGUgYnV0dG9uKCk7XG59XG4iLCIvKlxuRm9udCBmYW1pbHkgYW5kIGJhc2UgZm9udCBzdHlsZSBzZXQgaW4gc2V0dGluZ3Muc2NzcyBpbiBHTE9CQUxcblxuQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1Tb3VyY2UrU2FucytQcm8mZGlzcGxheT1zd2FwJyk7XG4kYm9keS1mb250LWZhbWlseTogJ1NvdXJjZSBTYW5zIFBybycsIHNhbnMtc2VyaWY7XG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTBweDtcblxuKi9cblxuXG5oMSwgaDIsIGgzLCBoNCwgaDUgaDZ7XG4gIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICBjb2xvcjogJGJsYWNrO1xufVxuXG5cbi5pbWctLWJne1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG4iLCJAa2V5ZnJhbWVzIG1vdmVMZWZ0dG9SaWdodCB7XG5cdDAle1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMXJlbSk7XG5cdH1cblx0NTAle1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwLjhyZW0pO1xuXHR9XG5cdDEwMCV7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xcmVtKTtcblx0fVxufVxuXG5Aa2V5ZnJhbWVzIG1vdmVSaWdodHRvTGVmdCB7XG5cdDAle1xuXHRcdHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpIHRyYW5zbGF0ZVgoLTFyZW0pO1xuXHR9XG5cdDUwJXtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKSB0cmFuc2xhdGVYKDAuOHJlbSk7XG5cdH1cblx0MTAwJXtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKSB0cmFuc2xhdGVYKC0xcmVtKTtcblx0fVxufVxuXG5Aa2V5ZnJhbWVzIG1vdmVVcERvd24ge1xuXHQwJXtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpIHRyYW5zbGF0ZVgoLTFyZW0pO1xuXHR9XG5cdDUwJXtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpIHRyYW5zbGF0ZVgoMXJlbSk7XG5cdH1cblx0MTAwJXtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpIHRyYW5zbGF0ZVgoLTFyZW0pO1xuXHR9XG59XG5cblxuLmJvdW5jZS0tbGlnaHR7XG4gIHRyYW5zaXRpb246IGFsbCAuMnM7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAmOmhvdmVye1xuICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KSB0cmFuc2xhdGVZKC0uNXJlbSk7XG4gfVxufVxuXG5cblxuXG5Aa2V5ZnJhbWVzIGxvYWQ2IHtcbiAgMCUge1xuICAgIGJveC1zaGFkb3c6IDAgLTAuODNlbSAwIC0wLjRlbSwgMCAtMC44M2VtIDAgLTAuNDJlbSwgMCAtMC44M2VtIDAgLTAuNDRlbSwgMCAtMC44M2VtIDAgLTAuNDZlbSwgMCAtMC44M2VtIDAgLTAuNDc3ZW07XG4gIH1cbiAgNSUsXG4gIDk1JSB7XG4gICAgYm94LXNoYWRvdzogMCAtMC44M2VtIDAgLTAuNGVtLCAwIC0wLjgzZW0gMCAtMC40MmVtLCAwIC0wLjgzZW0gMCAtMC40NGVtLCAwIC0wLjgzZW0gMCAtMC40NmVtLCAwIC0wLjgzZW0gMCAtMC40NzdlbTtcbiAgfVxuICAxMCUsXG4gIDU5JSB7XG4gICAgYm94LXNoYWRvdzogMCAtMC44M2VtIDAgLTAuNGVtLCAtMC4wODdlbSAtMC44MjVlbSAwIC0wLjQyZW0sIC0wLjE3M2VtIC0wLjgxMmVtIDAgLTAuNDRlbSwgLTAuMjU2ZW0gLTAuNzg5ZW0gMCAtMC40NmVtLCAtMC4yOTdlbSAtMC43NzVlbSAwIC0wLjQ3N2VtO1xuICB9XG4gIDIwJSB7XG4gICAgYm94LXNoYWRvdzogMCAtMC44M2VtIDAgLTAuNGVtLCAtMC4zMzhlbSAtMC43NThlbSAwIC0wLjQyZW0sIC0wLjU1NWVtIC0wLjYxN2VtIDAgLTAuNDRlbSwgLTAuNjcxZW0gLTAuNDg4ZW0gMCAtMC40NmVtLCAtMC43NDllbSAtMC4zNGVtIDAgLTAuNDc3ZW07XG4gIH1cbiAgMzglIHtcbiAgICBib3gtc2hhZG93OiAwIC0wLjgzZW0gMCAtMC40ZW0sIC0wLjM3N2VtIC0wLjc0ZW0gMCAtMC40MmVtLCAtMC42NDVlbSAtMC41MjJlbSAwIC0wLjQ0ZW0sIC0wLjc3NWVtIC0wLjI5N2VtIDAgLTAuNDZlbSwgLTAuODJlbSAtMC4wOWVtIDAgLTAuNDc3ZW07XG4gIH1cbiAgMTAwJSB7XG4gICAgYm94LXNoYWRvdzogMCAtMC44M2VtIDAgLTAuNGVtLCAwIC0wLjgzZW0gMCAtMC40MmVtLCAwIC0wLjgzZW0gMCAtMC40NGVtLCAwIC0wLjgzZW0gMCAtMC40NmVtLCAwIC0wLjgzZW0gMCAtMC40NzdlbTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdW5kIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cbiIsIiVidXR0b257XG4gIC8vIGdlbmVyYWwgYnV0dG9uIHNpbWlsYXJpdGVzIHNob3VsZCBnbyBoZXJlXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIHdpZHRoOiAxNHJlbTtcbiAgaGVpZ2h0OiA0LjI1cmVtO1xuICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAmOjpiZWZvcmV7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAtMzBweDtcbiAgICB0b3A6IDNweDtcbiAgfVxuXG4gICY6OmFmdGVye1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAtMjNweDtcbiAgICB0b3A6IDE2cHg7XG4gICAgaGVpZ2h0OiAycmVtO1xuICAgIHdpZHRoOiAyLjc1cmVtO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi9pbWFnZXMvYXJyb3dzL2Fycm93LS1vcmFuZ2Uuc3ZnJyk7XG4gIH1cblxuICAmOmhvdmVye1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6OmFmdGVye1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuL2ltYWdlcy9hcnJvd3MvYXJyb3ctLXdoaXRlLnN2ZycpO1xuICAgIH1cbiAgfVxufVxuXG5idXR0b24sXG4uYnV0dG9ue1xuICBAZXh0ZW5kICVidXR0b247XG5cbiAgJjo6YmVmb3Jle1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRjb2xvci0tdGVydGlhcnk7XG4gIH1cblxuICAmOjphZnRlcntcbiAgICBjb2xvcjogJGNvbG9yLS10ZXJ0aWFyeTtcbiAgfVxuXG4gICY6aG92ZXJ7XG4gICAgJjo6YmVmb3Jle1xuICAgICAgYm9yZGVyOiAycHggc29saWQgJGNvbG9yLS1jYXJuYXRpb247XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItLWNhcm5hdGlvbjtcbiAgICB9XG4gIH1cblxuICAmLS10b3B7XG4gICAgd2lkdGg6IDEycmVtO1xuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgIGNvbG9yOiAkY29sb3ItLXRlcnRpYXJ5O1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNsYXJnZSl7XG4gICAgICB3aWR0aDogOHJlbTtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmV7XG4gICAgICBsZWZ0OiAtMy4wcmVtO1xuICAgICAgdG9wOiA1cHg7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc2xhcmdlKXtcbiAgICAgICAgbGVmdDogMi4wcmVtO1xuICAgICAgICB0b3A6IC0zLjVyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXJ7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IC0yMHB4O1xuICAgICAgdG9wOiAxNXB4O1xuICAgICAgaGVpZ2h0OiAycmVtO1xuICAgICAgd2lkdGg6IDIuNzVyZW07XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuL2ltYWdlcy9hcnJvd3MvYXJyb3ctLWJsdWUuc3ZnJyk7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNsYXJnZSl7XG4gICAgICAgIGxlZnQ6IDMwcHg7XG4gICAgICAgIHRvcDogLTI1cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpob3ZlcntcbiAgICAgIGNvbG9yOiAkY29sb3ItLWNhcm5hdGlvbjtcbiAgICB9XG4gIH1cblxuICAmLS1ncmV5e1xuXG4gICAgJjo6YmVmb3Jle1xuICAgICAgYm9yZGVyOiAycHggc29saWQgJGdyZXktLWRhcms7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXJ7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IC0yM3B4O1xuICAgICAgdG9wOiAxNnB4O1xuICAgICAgaGVpZ2h0OiAycmVtO1xuICAgICAgd2lkdGg6IDIuNzVyZW07XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuL2ltYWdlcy9hcnJvd3MvYXJyb3ctLWdyZXkuc3ZnJyk7XG4gICAgfVxuXG4gICAgJjpob3ZlcntcblxuICAgICAgJjo6YmVmb3Jle1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRjb2xvci0tY2FybmF0aW9uO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlcntcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuL2ltYWdlcy9hcnJvd3MvYXJyb3ctLW9yYW5nZS5zdmcnKTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX25leHR7XG5cbiAgICAgICY6OmFmdGVye1xuICAgICAgICBsZWZ0OiAtMjNweDtcbiAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICB3aWR0aDogMi44cmVtO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVye1xuICAgICAgICAmOjphZnRlcntcbiAgICAgICAgICBsZWZ0OiAtMjNweDtcbiAgICAgICAgICB0b3A6IDE2cHg7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgICAgd2lkdGg6IDIuOHJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYtLWJsdWV7XG4gICAgJjo6YWZ0ZXJ7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi9pbWFnZXMvYXJyb3dzL2Fycm93LS1ibHVlLnN2ZycpO1xuICAgIH1cbiAgfVxuXG4gICYtLW9yYW5nZXtcblxuICAgICY6OmJlZm9yZXtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRjb2xvci0tY2FybmF0aW9uO1xuICAgIH1cblxuICAgICY6OmFmdGVye1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG5cbiAgICAmOmhvdmVye1xuXG4gICAgICAmOjpiZWZvcmV7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci0tY2FybmF0aW9uO1xuICAgICAgfVxuICAgICAgJjo6YWZ0ZXJ7XG4gICAgICAgIGNvbG9yOiBibHVlO1xuICAgICAgfVxuICBcbiAgICB9XG4gIH1cbiAgJi0tYmxhY2t7XG5cbiAgICAmOjpiZWZvcmV7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAkYmxhY2s7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXJ7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuL2ltYWdlcy9hcnJvd3MvYXJyb3ctLWJsYWNrLnN2ZycpO1xuICAgIH1cblxuICAgICY6aG92ZXJ7XG5cbiAgICAgICY6OmJlZm9yZXtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgICBib3JkZXItY29sb3I6ICRibGFjazsgXG4gICAgICB9XG4gICAgICAmOjphZnRlcntcbiAgICAgICAgY29sb3I6IGJsdWU7XG4gICAgICB9XG4gIFxuICAgIH1cbiAgfVxuICAmLS13aGl0ZSB7XG5cbiAgICAmOjpiZWZvcmV7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAkd2hpdGU7XG5cbiAgICB9XG5cbiAgICAmOjphZnRlcntcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4vaW1hZ2VzL2Fycm93cy9hcnJvdy0td2hpdGUuc3ZnJyk7XG4gICAgfVxuXG4gICAgJjpob3ZlcntcblxuICAgICAgJjo6YmVmb3Jle1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICR3aGl0ZTtcblxuICAgICAgfVxuICAgICAgJjo6YWZ0ZXJ7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi9pbWFnZXMvYXJyb3dzL2Fycm93LS1ibHVlLnN2ZycpO1xuICAgICAgfVxuICBcbiAgICB9XG4gIH1cbiAgJi5hcnQtLWZpbHRlciB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIGF1dG8gMnJlbTtcbiAgfVxufVxuXG5cblxuLypcblN3aXBlciBidXR0b24gc3R5bGVzIGZvciBOZXdzIENhcm91c2VsXG4qL1xuXG4uc3dpcGVyLWJ1dHRvbntcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgd2lkdGg6IDExcmVtO1xuICBoZWlnaHQ6IDRyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gICY6YWN0aXZlLCAmOmZvY3Vze1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAmOjpiZWZvcmV7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAtMzBweDtcbiAgICB0b3A6IDNweDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkZ3JleS0tZGFyaztcbiAgfVxuXG4gICY6OmFmdGVye1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAtMjNweDtcbiAgICB0b3A6IDE2cHg7XG4gICAgaGVpZ2h0OiAycmVtO1xuICAgIHdpZHRoOiAyLjc1cmVtO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi9pbWFnZXMvYXJyb3dzL2Fycm93LS1ncmV5LnN2ZycpO1xuICB9XG5cbiAgJjpob3ZlcntcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOjpiZWZvcmV7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAkY29sb3ItLWNhcm5hdGlvbjtcbiAgICB9XG4gIH1cblxuICAmLXByZXZ7XG4gICAgbGVmdDogMjAlO1xuXG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgIGxlZnQ6IDkyJTtcbiAgICAgIHRvcDogMHJlbTtcbiAgICAgIHdpZHRoOiAycmVtO1xuICAgIH1cblxuICAgICY6OmFmdGVye1xuICAgICAgbGVmdDogLTIzcHg7XG4gICAgICB0b3A6IDE2cHg7XG4gICAgICBoZWlnaHQ6IDJyZW07XG4gICAgICB3aWR0aDogMi43NXJlbTtcbiAgICB9XG5cbiAgICAmOmhvdmVye1xuICAgICAgJjo6YWZ0ZXJ7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi9pbWFnZXMvYXJyb3dzL2Fycm93LS1vcmFuZ2Uuc3ZnJyk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpO1xuICAgICAgICB0b3A6IDEwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1uZXh0e1xuICAgIGxlZnQ6IDkwJTtcblxuICAgICY6OmFmdGVye1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG4gICAgICBsZWZ0OiAtMjNweDtcbiAgICAgIHRvcDogMTBweDtcbiAgICAgIGhlaWdodDogMnJlbTtcbiAgICAgIHdpZHRoOiAyLjc1cmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgbGVmdDogOTYuNSU7XG4gICAgICB0b3A6IDByZW07XG4gICAgfVxuXG4gICAgJjpob3ZlcntcbiAgICAgICY6OmFmdGVye1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4vaW1hZ2VzL2Fycm93cy9hcnJvdy0tb3JhbmdlLnN2ZycpO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgdG9wOiAxNnB4O1xuICAgICAgICBoZWlnaHQ6IDJyZW07XG4gICAgICAgIHdpZHRoOiAyLjhyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuXG4uYnRuLWhpZGV7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuXG4ud3AtYmxvY2stYnV0dG9ue1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAud3AtYmxvY2stYnV0dG9uX19saW5re1xuICAgICY6OmFmdGVye1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4vaW1hZ2VzL2Fycm93cy9hcnJvdy0tYmx1ZS5zdmcnKTtcbiAgICB9XG4gIH1cbn1cbi51aS1ncm91cC5kaXN0cmljdFNlbGVjdCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4iLCIuY2FyZHMtY29udGFpbmVyIHtcblxuICBAaW5jbHVkZSB4eS1ncmlkO1xuXG4gIC5jYXJkIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKDEyKTtcblxuICAgICAgLmNhcmQtY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwoMSBvZiAzLCB0cnVlLCAwLjdyZW0gKTtcblxuICAgIH1cbiAgfVxufVxuXG5cbi5jYXJke1xuXG4gIGg0e1xuICAgIHRyYW5zaXRpb246IGNvbG9yIC41cztcbiAgICBwYWRkaW5nOiAxcmVtIDAgMCAwO1xuICAgIG1hcmdpbjogMXJlbSAwIDAgMDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgbWFyZ2luOiAxcmVtIDAgMCAycmVtO1xuICAgIH1cbiAgfVxuXG4gIC5kYXRle1xuICAgIGNvbG9yOiAkY29sb3ItLWNhcm5hdGlvbjtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAyMi4yNXJlbTtcbiAgICBsZWZ0OiAwO1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbSAwIDFyZW07XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgICB0b3A6IDExLjc1cmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgdG9wOiAyMnJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgbGVmdDogMC41cmVtO1xuICAgIH1cbiAgfVxuXG4gIC5hdXRob3J7XG4gICAgY29sb3I6ICRjb2xvci0tcml2ZXItYmVkO1xuICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgIG1hcmdpbjogMnJlbSAwIDAgMDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICBtYXJnaW46IDJyZW0gMnJlbSAzcmVtIDJyZW07XG4gICAgfVxuICB9XG59XG5cblxuLnN0YWZme1xuXG4gICYtLW1lbWJlcntcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luOiAwIDAgMnJlbSAwO1xuXG4gICAgaDR7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICAgIC5jYXJke1xuICAgICAgYm9yZGVyOiB2YXIoLS1ib3JkZXItdHJhbnNwYXJlbnQpOztcbiAgICB9XG5cbiAgICBpbWd7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FyZC0tYmFja3Vwe1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgICBoZWlnaHQ6IDM2LjRyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fbmFtZXtcbiAgICAgIGNvbG9yOiAkY29sb3ItLW1hcmluZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgICZfX3RpdGxle1xuICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICBjb2xvcjogJGNvbG9yLS1yaXZlci1iZWQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgICZfX2VtYWlse1xuICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICBjb2xvcjogJGdyZXktLWRhcms7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgJjo6YWZ0ZXJ7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAtNXB4O1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmUgcmVwZWF0IHNjcm9sbCAwIDAgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6ICRncmV5LS1kYXJrO1xuICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCAwLjNzIGVhc2UgMHMsIGxlZnQgMC4zcyBlYXNlIDBzO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVye1xuICAgICAgICBjb2xvcjogJGdyZXktLWRhcms7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLmRpcmVjdG9yc3tcblxuICBoMntcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgbWFyZ2luOiAyLjVyZW0gMDtcbiAgICB9XG4gIH1cblxuICAmX19ib2FyZHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItLXNlY29uZGFyeTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDJyZW0gMDtcblxuICAgICY6OmJlZm9yZXtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDIxMCU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDotMTAwJTtcbiAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAmOjphZnRlcntcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDIxMCU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0Oi0xMDAlO1xuICAgICAgei1pbmRleDogLTE7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBwYWRkaW5nOiAzcmVtIDFyZW07XG5cbiAgICAgICY6OmJlZm9yZXtcbiAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTVweDtcbiAgICAgICAgbGVmdDogMTVweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlcjogdmFyKC0tYm9yZGVyLWdyZXkpO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgIHBhZGRpbmc6IDVyZW0gNXJlbSA1cmVtIDEwcmVtO1xuICAgIH1cblxuICAgIC5jYXJke1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLS1zZWNvbmRhcnk7XG4gICAgICBib3JkZXI6IHZhcigtLWJvcmRlci10cmFuc3BhcmVudCk7XG4gICAgfVxuXG4gICAgJi0tbmFtZXtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgfVxuXG4gICAgJi0tdGl0bGV7XG4gICAgICBjb2xvcjogJGNvbG9yLS1zdGVlbC1ibHVlO1xuICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgfVxuICB9XG59XG5cbi5wc2Fje1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbjogOHJlbSAycmVtO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICBtYXJnaW46IDZyZW0gMnJlbTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgIG1hcmdpbjogOHJlbSAycmVtIDZyZW0gMnJlbTtcbiAgfVxuXG4gICYtLXRleHR7XG4gICAgbWFyZ2luOiAycmVtIDAgNHJlbSAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgcGFkZGluZzogMCAxMnJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgIHBhZGRpbmc6IDAgMzJyZW07XG4gICAgfVxuICB9XG5cbiAgYXtcbiAgICB3aWR0aDogNXJlbTtcbiAgICBoZWlnaHQ6IDVyZW07XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiIsImJvZHkucGFnZSwgYm9keS5jYXRlZ29yeXtcbiAgLmZlYXR1cmVkLWhlcm97XG4gICAgcGFkZGluZzogMTNyZW0gMCAxMXJlbSAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGhlaWdodDogcmVtLWNhbGMoMjAwKTtcbiAgICAgIHBhZGRpbmc6IDEwcmVtIDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgaGVpZ2h0OiByZW0tY2FsYygzMDApO1xuICAgICAgcGFkZGluZzogMTVyZW0gMDtcbiAgICB9XG5cbiAgICAubWFpbi1jb250YWluZXJ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgIH1cblxuICAgIC5tZXRhLWVudHJ5LWluZm97XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgfVxufVxuXG5ib2R5Om5vdCguaG9tZSl7XG4gIC5mZWF0dXJlZC1oZXJvIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIC8vIGhlaWdodDogcmVtLWNhbGMoMTAwKTtcbiAgICBwYWRkaW5nOiAyMHJlbSAwIDZyZW0gMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgLy8gaGVpZ2h0OiBjbGFtcCgxMHJlbSwgMzFyZW0sIDM1cmVtKTtcbiAgICAgIC8vIHBhZGRpbmc6IDIwcmVtIDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgLy8gaGVpZ2h0OiByZW0tY2FsYygzMDApO1xuICAgICAgcGFkZGluZzogMjVyZW0gMCAxMHJlbSAwO1xuICAgIH1cblxuICAgIGgxLmVudHJ5LXRpdGxle1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIC8vIG1hcmdpbi10b3A6MzBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBoMi5lbnRyeS10aXRsZXtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBoZWlnaHQ6IDE1cmVtO1xuICAgICAgLy8gcGFkZGluZy10b3A6IDEuNXJlbTtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAgIGhlaWdodDogMTJyZW07XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBoMy5lbnRyeS10aXRsZXtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBwYWRkaW5nOiAxcmVtIDA7XG4gICAgICBoZWlnaHQ6IDEycmVtO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgICAgaGVpZ2h0OiA4cmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5tZXRhLWVudHJ5LWluZm97XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMDtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAgIHBhZGRpbmc6IDAgMjNyZW07XG4gICAgICAgIG1hcmdpbjogLTRyZW0gMCAwIDA7XG4gICAgICB9XG5cbiAgICAgIC5zYXVzYWdle1xuICAgICAgICBjb2xvcjogJGNvbG9yLS1jYXJuYXRpb247XG4gICAgICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICAgIH1cblxuICAgICAgLmJ5bGluZS1hdXRob3J7XG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZmVhdHVyZWQtLWJhbm5lcntcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDE0cmVtIDAgNXJlbSAwO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHBhZGRpbmc6IDAgMCA0cmVtIDA7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDQyNy41KTtcbiAgICBtYXJnaW46IDhyZW0gMCAzcmVtIDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDcwMCk7XG4gICAgbWFyZ2luOiAwIDAgMCAwO1xuICB9XG5cbiAgJl9fY29udGFpbmVye1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICYtLXNtYWxse1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHRvcCxcbiAgICAgICMxOTNkNWMgOTAlLCAkd2hpdGUgOTAlKTtcbiAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4vaW1hZ2VzL2JhY2tncm91bmRzL2NhcGl0b2wucG5nKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBtYXgtd2lkdGg6IDYwcmVtO1xuICAgICAgfVxuXG4gICAgICBpbWd7XG4gICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAyO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIC8vIG1hcmdpbjogMDtcbiAgICAgICAgICAvLyB3aWR0aDogYXV0bztcbiAgICAgICAgICAvLyBoZWlnaHQ6IHJlbS1jYWxjKDQyNy41KTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICAgIC8vIGhlaWdodDogcmVtLWNhbGMoNzAwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2NvbnRlbnR7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBwYWRkaW5nOiAzcmVtIDZyZW07XG4gICAgd2lkdGg6IDM5cmVtO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgcGFkZGluZzogMTNyZW0gNnJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgIHdpZHRoOiA1NHJlbTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW46IDI5cmVtIDAgMCAzcmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSl7XG4gICAgICB3aWR0aDogODAlO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMjlyZW0gMCAwIDEwcmVtO1xuICAgIH1cblxuICAgIGgye1xuICAgICAgZm9udC1zaXplOiAyLjZyZW07XG4gICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgICAgZm9udC1zaXplOiA0cmVtO1xuICAgICAgfVxuXG4gICAgICBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgIH1cblxuICAgIHAge1xuICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgYnV0dG9ue1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIG1hcmdpbjogMnJlbSAzcmVtO1xuICAgICAgei1pbmRleDogOTA7XG4gICAgfVxuICB9XG59XG5cblxuXG4uYXJ0LS1iYW5uZXJ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgaGVpZ2h0OiByZW0tY2FsYygxMDApO1xuICAvLyBwYWRkaW5nOiAzM3JlbSAwO1xuICBwYWRkaW5nOiAzM3JlbSAwIDQ1cmVtIDAgO1xuICBjb2xvcjogJHdoaXRlO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgaGVpZ2h0OiByZW0tY2FsYygyMDApO1xuICAgIHBhZGRpbmc6IDMwcmVtIDA7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgaGVpZ2h0OiByZW0tY2FsYygzMDApO1xuICAgIHBhZGRpbmc6IDI1cmVtIDA7XG4gIH1cblxuICAmX190aXRsZXtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG5cbiAgJl9fY29udGVudHtcbiAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBwYWRkaW5nOiAwIDNyZW07XG4gICAgbWFyZ2luOiAtMjNyZW0gMCAycmVtIDA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWFyZ2luOiAtMTZyZW0gMCAwIDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgcGFkZGluZzogMCA4cmVtOztcbiAgICB9XG5cbiAgICBwe1xuICAgICAgbWFyZ2luOiAzcmVtIDA7XG4gICAgfVxuXG4gICAgLmFydC0tY29udGVudF9fdGV4dHtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAgIHBhZGRpbmc6IDAgOHJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZmxleC1jaGlsZC1hdXRve1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIG1hcmdpbjogLTlyZW0gMCAwIDA7XG4gICAgfVxuICB9XG59XG4iLCIuZG90dGVkIHtcbiAgYm9yZGVyLXN0eWxlOiBkYXNoZWQ7XG4gIG1hcmdpbjogMnJlbSAwO1xufVxuXG4ubWV0YS1kYXRhLWNvbnRhaW5lcntcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNEOERCREY7XG4gIG1hcmdpbjogMCAwIDNyZW0gMDtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIGNvbG9yOiAkY29sb3ItLW1hcmluZXI7XG4gIHBhZGRpbmc6IDAgMCAxcmVtIDA7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjVweDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICBtYXJnaW4tbGVmdDogMjNyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAyM3JlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICB9XG5cbiAgLnNoYXJle1xuICAgIGZsb2F0OiByaWdodDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgbWFyZ2luOiAwIDEuNzVyZW0gMCAwO1xuICAgIH1cblxuICAgICYtLWljb257XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW46IDAgMCAwIDFyZW07XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgIHotaW5kZXg6IDA7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICBtYXJnaW46IDAgMCAwIDZyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1ldGEtLWljb257XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuXG5cbiAgICAgICZfX3BkZntcbiAgICAgICAgbGVmdDogMTByZW07XG4gICAgICAgIHRvcDogNXB4O1xuICAgICAgfVxuXG4gICAgICAmX19wcmludHtcbiAgICAgICAgbGVmdDogNHJlbTtcbiAgICAgICAgdG9wOiA0cHg7XG4gICAgICB9XG5cbiAgICAgICZfX3NoYXJle1xuICAgICAgICBsZWZ0OiA0cmVtO1xuICAgICAgICB0b3A6IC0ycHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnByaW50ZnJpZW5kbHl7XG4gICAgICBtYXJnaW46IDA7XG5cbiAgICAgIC5ub3NsaW1zdGF0e1xuICAgICAgICBjb2xvcjogJGNvbG9yLS1tYXJpbmVyO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5hZGR0b2FueV9zaG9ydGNvZGV7XG4gICAgICBhe1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgfVxuXG4gICAgICAmOm50aC1vZi10eXBlKDIpe1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cblxuXG4vLyBhZmZlY3RzIHRhYmxlIG9mIGNvbnRlbnQgb24gcGFnZS5waHAgKG5vdCB0aGUgcGhwIGNyZWF0ZWQgY2xhc3MgLnNlY3Rpb24tLVxuXG4uc2VjdGlvbi17XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cblxuICYtdGFibGV7XG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICBwYWRkaW5nOiAwIDcuNXJlbTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgbWFyZ2luOiAxcmVtIDAgMCAwO1xuICAgIH1cblxuICAgICZfX2hlYWRpbmd7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgfVxuXG4gICAgJl9faGVhZGluZywgJl9fbGlzdHtcbiAgICAgIGNvbG9yOiAkY29sb3ItLW1hcmluZXI7XG5cbiAgICAgICY6aG92ZXIsICY6YWN0aXZle1xuICAgICAgICBjb2xvcjogJGNvbG9yLS1jYXJuYXRpb247XG5cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb250ZW50e1xuXG4gICAgICBwe1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMnJlbSAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJmb3JtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBbdHlwZT1cInRleHRcIl0sXG4gIFt0eXBlPVwicGFzc3dvcmRcIl0sXG4gIFt0eXBlPVwiZGF0ZVwiXSxcbiAgW3R5cGU9XCJkYXRldGltZVwiXSxcbiAgW3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbiAgW3R5cGU9XCJtb250aFwiXSxcbiAgW3R5cGU9XCJ3ZWVrXCJdLFxuICBbdHlwZT1cImVtYWlsXCJdLFxuICBbdHlwZT1cIm51bWJlclwiXSxcbiAgW3R5cGU9XCJzZWFyY2hcIl0sXG4gIFt0eXBlPVwidGVsXCJdLFxuICBbdHlwZT1cInRpbWVcIl0sXG4gIFt0eXBlPVwidXJsXCJdLFxuICBbdHlwZT1cImNvbG9yXCJdLFxuICBzZWxlY3Qge1xuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRjb2xvci0tcml2ZXItYmVkO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiAgICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogJGNvbG9yLS1yaXZlci1iZWQ7XG4gICAgICB9XG4gICAgfVxuICAgICY6Zm9jdXM6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICRjb2xvci0tcml2ZXItYmVkO1xuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cbiAgc2VsZWN0IHtcbiAgICAvLyBjYW50IHB1dCBwc2V1ZG8gY2xhc3NlcyBvbiBpbnB1dHNcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuL2ltYWdlcy9iYWNrZ3JvdW5kcy9jaGV2cm9uLnN2Z1wiKTtcbiAgfVxuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgbGFiZWwge1xuICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gIH1cblxuICAuZm9ybV9fYnV0dG9uIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg0MCUpO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogNzUlO1xuICAgICAgdG9wOiA1LjVyZW07XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxuXG4gICAgLmJ1dHRvbiB7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgfVxuICB9XG5cbiAgI3NpZ251cC1yb3ctMSB7XG4gICAgaW5wdXQge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYmxhY2s7XG4gICAgICBjb2xvcjogIzAwMDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgd2lkdGg6IDQ4JTtcbiAgICAgIH1cbiAgICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgW3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB9XG5cbiAgICAgIFt0eXBlPVwiZW1haWxcIl0ge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm1jNHdwLWZvcm0tZmllbGRzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAjc2lnbnVwLXJvdy0yIHtcbiAgICAgIHNlbGVjdCxcbiAgICAgIGlucHV0IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYmxhY2s7XG4gICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBbdHlwZT1cInRleHRcIl0ge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGxlZnQ6IDMzJTtcbiAgICAgICAgICB0b3A6IDUuOHJlbTtcbiAgICAgICAgfVxuICAgICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBQVyBwcm90ZWN0IHN0eWxlc1xuYnV0dG9uLnBhc3NzdGVyLXN1Ym1pdDphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5idXR0b24ucGFzc3N0ZXItc3VibWl0OmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ucGFzc3N0ZXItZm9ybSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG5cbi5wYXNzc3Rlci1mb3JtIGZvcm0ucGFzc3dvcmQtZm9ybSB7XG4gIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDtcbn1cblxuLm5hdmlnYXRpb24tZm9ybSB7XG4gIG1hcmdpbjogNHJlbTtcblxuICBsYWJlbCB7XG4gICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMHJlbTtcbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmZvY3VzIH4gbGFiZWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICBpbnB1dFt0eXBlPVwidGV4dFwiXTphY3RpdmUgfiBsYWJlbCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06Zm9jdXMgfiBsYWJlbCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06YWN0aXZlIH4gbGFiZWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMxMzMzNGM7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjMTMzMzRjO1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICMxMzMzNGM7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICR3aGl0ZTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgYmFja2dyb3VuZDogIzEzMzM0YztcbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDByZW07XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgcGFkZGluZzogNXB4IDE1cHg7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMCBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgei1pbmRleDogMTA7XG5cbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLm1hZ25pZnlpbmctZ2xhc3MtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMS41cmVtO1xuICAgIHJpZ2h0OiAxcmVtO1xuXG4gICAgLm1hZ25pZnlpbmctZ2xhc3Mge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwLjhlbTtcbiAgICAgIHJpZ2h0OiAwLjllbTtcbiAgICAgIGZvbnQtc2l6ZTogMi4yNWVtO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDAuNGVtO1xuICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgICBoZWlnaHQ6IDAuNGVtO1xuICAgICAgYm9yZGVyOiAwLjFlbSBzb2xpZCAkd2hpdGU7XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjM1ZW07XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogLTAuMjVlbTtcbiAgICAgICAgYm90dG9tOiAtMC4xZW07XG4gICAgICAgIGJvcmRlci13aWR0aDogMDtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICB3aWR0aDogMC4zZW07XG4gICAgICAgIGhlaWdodDogMC4wOGVtO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5uYXZpZ2F0aW9uLS1zZWFyY2gge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFlZWU3O1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG5cbiAgJl9fZm9ybSB7XG4gICAgaGVpZ2h0OiA4cmVtO1xuICAgIHdpZHRoOiA4cmVtO1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzODJweCkge1xuICAgICAgaGVpZ2h0OiAxMDJweDtcbiAgICAgIHdpZHRoOiAxMDJweDtcbiAgICB9XG4gICAgbGFiZWwsXG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMTAuNzUlO1xuICAgICAgdG9wOiAzLjVyZW07XG4gICAgICBoZWlnaHQ6IDVyZW07XG4gICAgICB3aWR0aDogNXJlbTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICBoZWlnaHQ6IDhyZW07XG4gICAgICB3aWR0aDogOHJlbTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDEwMDtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuXG4gICAgLm1hZ25pZnlpbmctZ2xhc3MtY29udGFpbmVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogOHB4O1xuICAgICAgcmlnaHQ6IDdweDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzODJweCkge1xuICAgICAgICB0b3A6IDJyZW07XG4gICAgICAgIHJpZ2h0OiAxNyU7XG4gICAgICAgICAgICB9XG4gIFxuICAgICAgLm1hZ25pZnlpbmctZ2xhc3Mge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMC44ZW07XG4gICAgICAgIHJpZ2h0OiAwLjllbTtcbiAgICAgICAgZm9udC1zaXplOiAyLjI1ZW07XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIGJvcmRlcjogMC4xZW0gc29saWQgJGJsYWNrO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICByaWdodDogLTAuMjVlbTtcbiAgICAgICAgICBib3R0b206IC0xcHg7XG4gICAgICAgICAgYm9yZGVyLXdpZHRoOiAwO1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgICAgICAgICB3aWR0aDogMC4zZW07XG4gICAgICAgICAgaGVpZ2h0OiAwLjA4ZW07XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm5hdmlnYXRpb24tLXNlYXJjaF9fb3ZlcmxheSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICBoZWlnaHQ6IDExLjVyZW07XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAgICAgei1pbmRleDogLTE7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyAubmF2aWdhdGlvbi0tc2VhcmNoX19vdmVybGF5IHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAmOjpiZWZvcmUsXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDJyZW07XG4gICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItLXJpdmVyLWJlZDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICB0b3A6IDZyZW07XG4gICAgICAgIGxlZnQ6IDkyJTtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICB9XG5cbiAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgIGhlaWdodDogNnJlbTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDNyZW07XG4gICAgICAgIGxlZnQ6IDIwcmVtO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgfVxuXG4gICAgICBsYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjb2xvcjogJGNvbG9yLS1yaXZlci1iZWQ7XG4gICAgICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDNyZW07XG4gICAgICAgIGxlZnQ6IDIxcmVtO1xuICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgfVxuXG4gICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXTphY3RpdmUgKyBsYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmZvY3VzICsgbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAubWFnbmlmeWluZy1nbGFzcy1vdmVybGF5IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDMuNXJlbTtcbiAgICAgICAgbGVmdDogMjByZW07XG4gICAgICAgIHJpZ2h0OiAxMDAlO1xuXG4gICAgICAgIC5tYWduaWZ5aW5nLWdsYXNzIHtcbiAgICAgICAgICBib3JkZXI6IDAuMWVtIHNvbGlkICRjb2xvci0tcml2ZXItYmVkO1xuXG4gICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci0tcml2ZXItYmVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkIH4gLm1hZ25pZnlpbmctZ2xhc3MtY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi8vIGhpZGVzIHRoZSBnb29nbGUgcmVjYXB0Y2hhIG9uIG1vYmlsZVxuLmdyZWNhcHRjaGEtYmFkZ2Uge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5mb3JtLnNlYXJjaGFuZGZpbHRlciB7XG4gIHNlbGVjdCB7XG4gICAgLy8gY2FudCBwdXQgcHNldWRvIGNsYXNzZXMgb24gaW5wdXRzXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZlcnNpb249JzEuMScgd2lkdGg9JzMyJyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMzIgMjQnPjxwb2x5Z29uIHBvaW50cz0nMCwwIDMyLDAgMTYsMjQnIHN0eWxlPSdmaWxsOiByZ2IlMjgxNzEsIDE3NCwgMTgwJTI5Jz48L3BvbHlnb24+PC9zdmc+XCIpO1xuICB9XG59XG5mb3JtLnNlYXJjaGZpbHRlcmV2ZW50IHtcbiAgc2VsZWN0IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgdmVyc2lvbj0nMS4xJyB3aWR0aD0nMzInIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAzMiAyNCc+PHBvbHlnb24gcG9pbnRzPScwLDAgMzIsMCAxNiwyNCcgc3R5bGU9J2ZpbGw6IHJnYiUyODE3MSwgMTc0LCAxODAlMjknPjwvcG9seWdvbj48L3N2Zz5cIik7XG4gIH1cbn1cblxuLnd1Zm9vLWZvcm0tY29udGFpbmVyIHtcbiAgaGVpZ2h0OiAxMjByZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwIGF1dG8gNXJlbSBhdXRvICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBBcHBseSBvdXRsaW5lIHN0eWxlcyBvbmx5IHdoZW4gaW5wdXQgbWV0aG9kIGlzIGtleWJvYXJkXG4vLyByZW1vdmUgOmZvY3VzIHN0eWxlIHZpYSBXaGF0IElucHV0IHVzaW5nIHByb2dyZXNzaXZlIGVuaGFuY2VtZW50XG4vLyBzbyA6Zm9jdXMgaXNuJ3QgbGVmdCBicm9rZW4gaWYgSmF2YVNjcmlwdCBmYWlsc1xuXG5bZGF0YS13aGF0aW5wdXQ9XCJtb3VzZVwiXSBhOmZvY3VzLCBidXR0b246Zm9jdXNcbltkYXRhLXdoYXRpbnB1dD1cInRvdWNoXCJdIGE6Zm9jdXMsIGJ1dHRvbjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG4iLCIuaGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxMDA7XG59XG5cbi5uYXZpZ2F0aW9uIHtcbiAgLy9uYXZpZ2F0aW9uIGJyZWFrcG9pbnRzXG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gICYtbW9iaWxlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gICYtZGVza3RvcCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICAvL2FsbCBtb2JpbGUgc3R5bGVzXG4gICYtbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgaGVpZ2h0OiAxNHJlbTtcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAmX19sb2dvIHtcbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxM3JlbTtcbiAgICAgICAgbWFyZ2luOiAxcmVtIDAgMCAxcmVtO1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICB3aWR0aDogMjVyZW07XG4gICAgICAgICAgbWFyZ2luOiAxMHB4IGF1dG87XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19oYW1idXJnZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogODUlO1xuICAgICAgdG9wOiAxcmVtO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBsZWZ0OiA5MCU7XG4gICAgICB9XG5cbiAgICAgIC5uYXZpZ2F0aW9uX19jaGVja2JveCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgICAubmF2aWdhdGlvbl9faWNvbiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLXRvcDogMy41cmVtO1xuICAgICAgICAmLFxuICAgICAgICAmOjpiZWZvcmUsXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB3aWR0aDogMnJlbTtcbiAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItLXNlY29uZGFyeTtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUsXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjhzIGN1YmljLWJlemllcigwLjY4LCAtMC41NSwgMC4yNjUsIDEuNTUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IC0wLjhyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdG9wOiAwLjhyZW07XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm5hdmlnYXRpb25fX2NoZWNrYm94OmNoZWNrZWQgKyAubmF2aWdhdGlvbl9fYnV0dG9uIC5uYXZpZ2F0aW9uX19pY29uIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG5cbiAgICAgIC5uYXZpZ2F0aW9uX19jaGVja2JveDpjaGVja2VkICsgLm5hdmlnYXRpb25fX2J1dHRvbiAubmF2aWdhdGlvbl9faWNvbjo6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHotaW5kZXg6IDEwMDtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICBsZWZ0OiA4NiU7XG4gICAgICAgIHRvcDogNHJlbTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIGxlZnQ6IDkwJTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAubmF2aWdhdGlvbl9fY2hlY2tib3g6Y2hlY2tlZCArIC5uYXZpZ2F0aW9uX19idXR0b24gLm5hdmlnYXRpb25fX2ljb246OmFmdGVyIHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTM1ZGVnKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICB6LWluZGV4OiAxMDA7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgbGVmdDogODYlO1xuICAgICAgICB0b3A6IDRyZW07XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBsZWZ0OiA5MCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAubmF2aWdhdGlvbl9fb3ZlcmxheSB7XG4gICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHotaW5kZXg6IDIwO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgLy8gdHJhbnNpdGlvbjogYWxsIC44cyBlYXNlO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuOHMgY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7XG4gICAgICBvdmVyZmxvdy15OiBoaWRkZW47XG5cbiAgICAgIC5uYXZpZ2F0aW9uX19saXN0IHtcbiAgICAgICAgbWFyZ2luOiA1cmVtIDA7XG4gICAgICB9XG5cbiAgICAgIC5uYXZpZ2F0aW9uX19pdGVtIHtcbiAgICAgICAgbWFyZ2luOiAyLjVyZW0gMDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIH1cblxuICAgICAgLmJ1dHRvbi1kcm9wZG93biB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogODAlO1xuICAgICAgICB0b3A6IC0xcmVtO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBmb250LXNpemU6IDNyZW07XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBsZWZ0OiA3MCU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnN1Yi1tZW51LS1tb2JpbGUge1xuICAgICAgICAuaXRlbSB7XG4gICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5vcGVuIHtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLW91dDtcbiAgICAgICAgfVxuXG4gICAgICAgIC50aXRsZS0tc3ViIHtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5uYXZpZ2F0aW9uX19saW5rIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAmLS1sb2dpbiB7XG4gICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDAgMC41cmVtO1xuXG4gICAgICAgICAgICBlbGxpcHNlLFxuICAgICAgICAgICAgcGF0aCB7XG4gICAgICAgICAgICAgIGZpbGw6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmJvdHRvbS1saXN0IHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIC5uYXZpZ2F0aW9uX19saW5rIHtcbiAgICAgICAgICBtYXJnaW46IDJyZW07XG4gICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5uYXZpZ2F0aW9uX19jaGVja2JveDpjaGVja2VkIH4gLm5hdmlnYXRpb25fX292ZXJsYXkge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxMzMzNEM7XG4gICAgfVxuICB9XG5cbiAgLy8gQWxsIERlc2t0b3Agc3R5bGVzXG4gIC5uYXZpZ2F0aW9uLWRlc2t0b3Age1xuICAgIG1hcmdpbjogMCA4cmVtIDAgOHJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgYm94LXNoYWRvdzogMCAxcmVtIDAuNXJlbSByZ2JhKCRibGFjaywgMC4xKTtcblxuICAgICZfX2xpc3Qge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkd2hpdGUsICNmOGY3ZjQpO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDQycHg7XG4gICAgICBwYWRkaW5nOiAxcmVtIDJyZW07XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBAaW5jbHVkZSBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHdoaXRlLCAjY2VkMmQ5KTtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgaGVpZ2h0OiAxLjVweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgICAubmF2aWdhdGlvbl9fbGluayB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgIHBhZGRpbmc6IDAgMXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgcGFkZGluZzogMCAwIDAgMXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLWxvZ2luIHtcbiAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMCAwLjVyZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1tZW51IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDgwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzODJweCkge1xuICAgICAgaGVpZ2h0OiAxMDJweDtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgaGVpZ2h0OiA4cmVtO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAtMjdweDtcbiAgICAgIGxlZnQ6IDNyZW07XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzgycHgpIHtcbiAgICAgICAgdG9wOiAtNDBweDtcbiAgICAgICAgaGVpZ2h0OiAxMzFweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubmF2aWdhdGlvbl9fbGlzdCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzODJweCkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMzclO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5uYXZpZ2F0aW9uX19pdGVtIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgIGFsaWduLXNlbGY6IGF1dG87XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBoZWlnaHQ6IDNyZW07XG5cbiAgICAgIC50aXRsZSB7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItLXNlY29uZGFyeTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTM4MnB4KSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5zdWItbWVudSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIC8vIG9wYWNpdHk6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgbWFyZ2luOiAxcmVtIDAgMCAwO1xuICAgICAgICBwYWRkaW5nOiAxcmVtIDFyZW0gMC41cmVtIDFyZW07XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItLXNlY29uZGFyeTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3gtc2hhZG93OiAwIDFyZW0gMC41cmVtIHJnYmEoJGJsYWNrLCAwLjEpO1xuICAgICAgICB3aWR0aDogMTg1cHg7XG5cbiAgICAgICAgLml0ZW0ge1xuICAgICAgICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLS1tYXJpbmVyO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgcGFkZGluZzogNC41cmVtIDA7XG5cbiAgICAgICAgLm5hdmlnYXRpb25fX2l0ZW0taW1nIHtcbiAgICAgICAgICBoZWlnaHQ6IDIuMjVyZW07XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3A7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgbWFyZ2luOiAtMi4yNXJlbSAwIDAgMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZpZ2F0aW9uX19pdGVtLWltZzEge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4vaW1hZ2VzL25hdkljb25zL2Fib3V0dXMuc3ZnXCIpO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmlnYXRpb25fX2l0ZW0taW1nMiB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi9pbWFnZXMvbmF2SWNvbnMvbmV3cy5zdmdcIik7XG4gICAgICAgIH1cblxuICAgICAgICAubmF2aWdhdGlvbl9faXRlbS1pbWczIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuL2ltYWdlcy9uYXZJY29ucy9yZWZvcm0uc3ZnXCIpO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmlnYXRpb25fX2l0ZW0taW1nNCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi9pbWFnZXMvbmF2SWNvbnMvYXJ0LnN2Z1wiKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZpZ2F0aW9uX19pdGVtLWltZzUge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4vaW1hZ2VzL25hdkljb25zL2V2ZW50cy5zdmdcIik7XG4gICAgICAgIH1cblxuICAgICAgICAubmF2aWdhdGlvbl9faXRlbS1pbWc2IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuL2ltYWdlcy9uYXZJY29ucy9yZXNvdXJjZXMuc3ZnXCIpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLS1jYXJuYXRpb247XG4gICAgICAgICAgcGFkZGluZzogMCAwIDExcHggMDtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgY3VycmVudENvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgLnN1Yi1tZW51IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAvLyBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBhZGRzIHRvIENJIGNvbG9ycyB0byBoaWdobGlnaHRlZCB0ZXh0XG4qe1xuICAmOjpzZWxlY3Rpb257XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLS10ZXJ0aWFyeTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG59XG5cbi5tYWluLWNvbnRhaW5lciB7XG4gIEBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyO1xufVxuXG4ubWFpbi1ncmlkICB7XG4gIEBpbmNsdWRlIHh5LWdyaWQoKTtcbiAgbWFyZ2luLXRvcDogMXJlbTtcblxuXG4gICYuc2lkZWJhci1sZWZ0IHtcbiAgICAvLyBQbGFjZSB0aGUgc2lkZWJhciBiZWxvdyBtYWluIGNvbnRlbnQgb24gc21hbGwgc2NyZWVucyAuLi5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XG4gICAgICAubWFpbi1jb250ZW50IHsgb3JkZXI6IDE7IH1cbiAgICAgIC5zaWRlYmFyIHsgb3JkZXI6IDI7IH1cbiAgICB9XG5cbiAgICAvLyAuLi4gYW5kIHRvIHRoZSBsZWZ0IG9uIG1lZGl1bS11cCBzY3JlZW5zLCB3aGVuIHVzaW5nIHRoZSBzaWRlYmFyLWxlZnQgdGVtcGxhdGVcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgLm1haW4tY29udGVudCB7IG9yZGVyOiAyOyB9XG4gICAgICAuc2lkZWJhciB7IG9yZGVyOiAxOyB9XG4gICAgfVxuICB9XG5cbiAgLy8gRnVsbCB3aWR0aCB0ZW1wbGF0ZVxuICAubWFpbi1jb250ZW50LWZ1bGwtd2lkdGgge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwoMTIpO1xuICB9XG5cbiAgLy8gRGVmYXVsdCB0ZW1wbGF0ZVxuICAubWFpbi1jb250ZW50IHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsKDEyKTtcbiAgICBmb250LXNpemU6IDEuOHJlbTtcblxuICAgIGF7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICB9XG5cbiAgICBpZnJhbWV7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgICB3aWR0aDogNTByZW07XG4gICAgICAgIGhlaWdodDogMjguMXJlbTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgIGxpe1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgJjo6YmVmb3Jle1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGNvbG9yLS1tYXJpbmVyO1xuICAgICAgICB3aWR0aDogMXJlbTtcbiAgICAgICAgaGVpZ2h0OiAxcmVtO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAtMjBweDtcbiAgICAgICAgdG9wOiAxMXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC53cC1ibG9jay1pbWFnZXtcblxuICAgICAgaW1ne1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgICAgICBtYXgtd2lkdGg6IDQwcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAgICAgbWF4LXdpZHRoOiA3MHJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBmaWdjYXB0aW9ue1xuICAgICAgICBjb2xvcjogJGdyZXktLWRhcms7XG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbjogMXJlbSBhdXRvO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgICAgICBtYXgtd2lkdGg6IDQwcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAgICAgbWF4LXdpZHRoOiA3MHJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHVsLCBvbHtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyOC4yNXJlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyM3JlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB1bCwgb2wge1xuICAgICAgdWwsIG9se1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyLjI1cmVtO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgYmxvY2txdW90ZXtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICBtYXJnaW46IDRyZW0gMTByZW0gNHJlbSAxMHJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgIC8qXG4gICAgICBUSElTIElTIFZFUlkgSU1QT1JUQU5UIVxuICAgICAgaXQga2VlcHMgdGhlIGFydGljbGVzIChmZWF0dXJlIHBhbmVscyksXG4gICAgICBibG9ja3F1b3RlcywgZmlndXJlcyAoaW1hZ2VzKSwgYW5kIHVsIGZyb20gYmVpbmdcbiAgICAgICBhZmZlY3RlZCBieSB0aGUgbWFyZ2luIFIgYW5kIEwgZWZmZWN0c1xuICAgICAgKi9cbiAgICAgIC5lbnRyeS1jb250ZW50IHtcbiAgICAgICAgLnBmLWNvbnRlbnQ+IDpub3QoYXJ0aWNsZSk6bm90KGJsb2NrcXVvdGUpOm5vdChmaWd1cmUpOm5vdCh1bCk6bm90KC53cC1ibG9jay1pbWFnZSk6bm90KC53cC1ibG9jay1xdWVyeSkge1xuICAgICAgICAgIG1hcmdpbjogMXJlbSAyM3JlbSAwIDIzcmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgLnNlY3Rpb24te1xuICAgICAgLmVudHJ5LWNvbnRlbnQge1xuICAgICAgICAucGYtY29udGVudD4gOm5vdChhcnRpY2xlKTpub3QoYmxvY2txdW90ZSk6bm90KGZpZ3VyZSk6bm90KHVsKTpub3QoLndwLWJsb2NrLWltYWdlKSB7XG4gICAgICAgICAgbWFyZ2luOiAxcmVtIDlyZW0gMCA5cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuICAuc2lkZWJhciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbCgxMik7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwoNCk7XG4gICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIH1cblxuICB9XG59XG5cbi5pbWFnZS1wbGFjZWhvbGRlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDI0MHB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHBzOi8vd3d3LmNvbmdyZXNzaW9uYWxpbnN0aXR1dGUub3JnL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDE5LzA5L0NJX0Jsb2dwb3N0X0ltYWdlXzEucG5nJyk7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7IFxufSIsIi5mb290ZXJ7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIG1hcmdpbjogOXJlbSAwIDAgMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgIG1hcmdpbjogM3JlbSAwIDAgMDtcbiAgfVxuXG4gICZfX3BpY3R1cmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBib3R0b206IDk2cmVtO1xuICAgIHJpZ2h0OiAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgYm90dG9tOiA5NHJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgIGJvdHRvbTogNDJyZW07XG4gICAgfVxuXG4gICAgaW1ne1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIGhlaWdodDogNDVyZW07XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDByZW07XG5cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgICAgICAgIGhlaWdodDogNjVyZW07XG4gICAgICAgICAgfVxuICAgIH1cbiAgfVxuXG5cblxuICAmX19idXR0b257XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTZyZW07XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB6LWluZGV4OiAxMDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc2xhcmdlKXtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIGxlZnQ6IDk3LjUlO1xuICAgICAgdG9wOiBjYWxjKDEwMCUgLSA0OXJlbSk7XG4gICAgfVxuICB9XG5cbiAgJl9fZm9ybXtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy4vaW1hZ2VzL2JhY2tncm91bmRzL0NJX0hlYWRlckltYWdlX1N0YW5kYXJkLnBuZycpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgcGFkZGluZzogM3JlbTtcbiAgICBtYXJnaW46IDAgM3JlbSAwIDNyZW07XG4gICAgLmZvcm0tYnV0dG9uIHtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgfVxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgaGVpZ2h0OiAyOHJlbTtcbiAgICAgIHBhZGRpbmc6IDhyZW0gNHJlbSA4cmVtIDRyZW07XG4gICAgICBtYXgtd2lkdGg6IDExNHJlbTtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICB9XG5cbiAgICAmOjpiZWZvcmV7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiA3NSU7XG4gICAgICB3aWR0aDogMTAwdnc7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTMzMzRjO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgcmlnaHQ6IC0zcmVtO1xuICAgICAgei1pbmRleDogLTE7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICBoZWlnaHQ6IDY1JTtcbiAgICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAmOjphZnRlcntcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDc1JTtcbiAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxMzMzNGM7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAtM3JlbTtcbiAgICAgIHotaW5kZXg6IC0xO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgICAgaGVpZ2h0OiA2NSU7XG4gICAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAuZmxleC1jaGlsZC1hdXRve1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cblxuICAgIGgze1xuICAgICAgd2lkdGg6IDYwJTtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gICAgICBjb2xvcjogJGJsYWNrO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSl7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDRyZW0gMCAwIDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fY29udGFjdHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzEzMzM0YztcbiAgICBjb2xvcjogI0E3QzFFNDtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICBwYWRkaW5nOiAzcmVtO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2Upe1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIHBhZGRpbmc6IDRyZW0gNXJlbSAwIDVyZW07XG4gICAgfVxuXG4gICAgYXtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgIH1cblxuICAgICYtLWVsZXtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgICAgIC5pbmZve1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgfVxuICAgIH1cblxuICAgICYtLXRvcHtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAgIHBhZGRpbmc6IDJyZW0gM3JlbSAycmVtIDNyZW07XG4gICAgICB9XG4gICAgICAubG9nb3tcbiAgICAgICAgd2lkdGg6IDEyNXB4O1xuICAgICAgICBoZWlnaHQ6IDUycHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICAgIHdpZHRoOiAxNzBweDtcbiAgICAgICAgICBoZWlnaHQ6IDcwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmZvb3Rlcl9fY29udGFjdC0tZWxle1xuICAgICAgICAvLyBNb2JpbGUgICAgICAgICBEZXNrdG9wXG4gICAgICAgIC8vIExvZ28gMSAgICAgICAgICAgMVxuICAgICAgICAvLyBTZWFyY2ggMiAgICAgICAgIDVcbiAgICAgICAgLy8gQWRkcmVzcyAzICAgICAgICAyXG4gICAgICAgIC8vIFBob25lIDQgICAgICAgICAgM1xuICAgICAgICAvLyBFbWFpbCA1ICAgICAgICAgIDRcbiAgICAgICAgJjpudGgtY2hpbGQoMikgeyBvcmRlcjogMzsgfVxuICAgICAgICAmOm50aC1jaGlsZCgzKSB7IG9yZGVyOiA0OyB9XG4gICAgICAgICY6bnRoLWNoaWxkKDQpIHsgb3JkZXI6IDU7IH1cbiAgICAgICAgJjpudGgtY2hpbGQoNSkgeyBvcmRlcjogMjsgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgICAgICAgJjpudGgtY2hpbGQoMikgeyBvcmRlcjogMjsgfVxuICAgICAgICAgICY6bnRoLWNoaWxkKDMpIHsgb3JkZXI6IDM7IH1cbiAgICAgICAgICAmOm50aC1jaGlsZCg0KSB7IG9yZGVyOiA0OyB9XG4gICAgICAgICAgJjpudGgtY2hpbGQoNSkgeyBvcmRlcjogNTsgfVxuICAgICAgICB9XG5cblxuICAgICAgICAvLyBGb290ZXIgc2VhcmNoXG4gICAgICAgIC5uYXZpZ2F0aW9uLWZvcm17XG4gICAgICAgICAgbWFyZ2luOiAycmVtO1xuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAgICAgICBtYXJnaW46IDJyZW0gMCAwIDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl17XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgICY6OnBsYWNlaG9sZGVye1xuICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgIHRvcDogLTFyZW07XG4gICAgICAgICAgICAgIGxlZnQ6IC0wLjVyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl06YWN0aXZle1xuICAgICAgICAgICAgJjo6cGxhY2Vob2xkZXJ7XG4gICAgICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXTpmb2N1c3tcbiAgICAgICAgICAgICY6OnBsYWNlaG9sZGVye1xuICAgICAgICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJde1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogNXJlbTtcbiAgICAgICAgICAgIGhlaWdodDogNXJlbTtcbiAgICAgICAgICAgIHotaW5kZXg6IDExO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5tYWduaWZ5aW5nLWdsYXNzLWNvbnRhaW5lcntcbiAgICAgICAgICAgIHRvcDogLTIuNXJlbTtcbiAgICAgICAgICAgIHJpZ2h0OiAtMnJlbTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICAgICAgICB0b3A6IC0ycmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubWFnbmlmeWluZy1nbGFzc3tcbiAgICAgICAgICAgICAgaGVpZ2h0OiAwLjNlbTtcbiAgICAgICAgICAgICAgd2lkdGg6IDAuM2VtO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgICAgICAgICB0b3A6IDNyZW07XG4gICAgICAgICAgICAgIGxlZnQ6IC00cmVtO1xuXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG5cbiAgICAmLS1ib3R0b217XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgIHBhZGRpbmc6IDJyZW0gMCAycmVtIDByZW07XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICBwYWRkaW5nOiAycmVtIDAgNHJlbSAwO1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmV7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZmZmO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAtM3JlbTtcbiAgICAgICAgd2lkdGg6IDEwMHZ3O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLWVsZXtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2Upe1xuICAgICAgICAgICY6bnRoLWNoaWxkKDEpe1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogM3JlbTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpudGgtY2hpbGQoMil7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogM3JlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZmEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIHBhZGRpbmc6IC41cmVtIDAuMjVyZW0gMCAxcmVtO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZhLWZhY2Vib29rIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR3aGl0ZTtcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgICAgY29sb3I6ICMxMzMzNGM7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAycmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZhLXR3aXR0ZXIsXG4gICAgICAgIC5mYS14LXR3aXR0ZXIge1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAubGlua3tcbiAgICAgICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICBtYXJnaW46IDJyZW0gMDtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSl7XG4gICAgICAgICAgICBtYXJnaW46IDByZW0gM3JlbSAwcmVtIDA7XG4gICAgICAgICAgICAmOm50aC1jaGlsZCgzKXtcbiAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuICB9XG59XG4iLCIuZmVhdHVyZXBhbmVse1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMHJlbSAwcmVtIDQuNXJlbSAwcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogLjVyZW07XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgbWFyZ2luOiA3cmVtIDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDQwcmVtO1xuICB9XG5cbiAgJjo6YmVmb3Jle1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYm9yZGVyOiB2YXIoLS1ib3JkZXItZ3JleSk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNDVweDtcbiAgICBsZWZ0OiAtMTVweDtcbiAgICB3aWR0aDogMTEwJTtcbiAgICBoZWlnaHQ6IDk2JTtcbiAgICB6LWluZGV4OiAtMTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgIHdpZHRoOiAxMDUlO1xuICAgICAgaGVpZ2h0OiA5NSU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgJl9fdGV4dHtcbiAgICBwYWRkaW5nOiAxcmVtIDAgNXJlbSAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICBwYWRkaW5nOiA1cmVtIDVyZW0gMnJlbSA4cmVtO1xuICAgIH1cblxuICAgIGgye1xuICAgICAgbWFyZ2luOiAxcmVtIDA7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICBtYXJnaW46IDAgMCAycmVtIDA7XG4gICAgICAgIHdpZHRoOiAxMTAlO1xuICAgICAgfVxuICAgIH1cblxuICAgICYtLW1haW57XG4gICAgICBtYXJnaW46IDAgMCAzcmVtIDA7XG4gICAgfVxuXG4gICAgJi0tc3Vie1xuICAgICAgY29sb3I6ICRjb2xvci0tbWFyaW5lcjtcbiAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuICB9XG5cbiAgaDN7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtO1xuICAgIH1cbiAgfVxuXG4gIC5mbGV4LWNoaWxkLWF1dG97XG5cbiAgICAub3JiaXQtaW1hZ2V7XG4gICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgbWluLXdpZHRoOiAyMHJlbTtcbiAgICAgIG1pbi1oZWlnaHQ6IDIwcmVtO1xuICAgICAgbWF4LWhlaWdodDogNTByZW07XG4gICAgICBtYXgtd2lkdGg6IDYwcmVtO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgICAgIC8vIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG5cbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gIH1cblxuICAmX19idXR0b257XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMTAuNXJlbTtcbiAgICB9XG4gIH1cblxuICAvLyBwYXkgY2FyZWZ1bCBhdHRlbnRpb24gdG8gdGhpcyBzZWN0aW9uOyBpdCBjb250cm9scyB0aGUgaW1hZ2UgbG9jYXRpb25cbiAgLy8gYmFzZWQgb25hIHRvZ2dsZSBpbiB0aGUgY29udGVudC1mZWF0dXJlLXBhbmVsLnBocFxuICAmX19pbWFnZXtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWluLWhlaWdodDogMjJyZW07XG5cbiAgICAgIC5vcmJpdC1zbGlkZXtcbiAgICAgICAgcG9zaXRpb246IHVuc2V0O1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG5cbiAgICAgICAgJi0tbGVmdHtcbiAgICAgICAgICBtYXgtaGVpZ2h0OiA0MHJlbTtcblxuICAgICAgICAgIGltZ3tcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgdG9wOiAtMTZweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLm9yYml0LWJ1bGxldHMge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICBtYXJnaW46IDMyLjhyZW0gNXJlbSAwIDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi0tcmlnaHR7XG4gICAgICAgICAgbWF4LWhlaWdodDogNDByZW07XG5cbiAgICAgICAgICAvLyBvbmVzIHNldCB0byByaWdodCBtdXN0IGNvbWUgc2Vjb25kIGluIHRoZSBmbGV4IG9yZGVyXG4gICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgaW1ne1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMTVweDtcbiAgICAgICAgICAgIHRvcDogLTE2cHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5vcmJpdC1idWxsZXRzIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW46IDMyLjhyZW0gMCAwIDVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4gIC5vcmJpdC1idWxsZXRze1xuICAgIGJ1dHRvbntcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAlO1xuICAgICAgd2lkdGg6IDUuMnJlbTtcbiAgICAgIGhlaWdodDogMC41cmVtO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAmOjpiZWZvcmV7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiBpbmhlcml0O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IC0xLjVyZW07XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGJvcmRlcjogMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVye1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgJjo6YmVmb3Jle1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0tYnV0dG9ue1xuICAgICAgJjo6YWZ0ZXJ7XG4gICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuXG4gICYtLWFsdHtcbiAgICBtaW4taGVpZ2h0OiAzMHJlbTtcblxuICAgICY6OmJlZm9yZXtcbiAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgfVxuXG4gICAgLmJ1dHRvbi0tY29udGFpbmVye1xuICAgICAgbWluLWhlaWdodDogNDByZW07XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItLWNoYXRoYW1zLWJsdWU7XG4gICAgICBwYWRkaW5nOiAycmVtIDA7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgcGFkZGluZzogNHJlbSAwO1xuICAgICAgfVxuXG4gICAgICAuYnV0dG9uLS1pdGVtc3tcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgIH1cblxuICAgICAgLmJ1dHRvbi0taXRlbXtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiA2cmVtO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgaGVpZ2h0OiA4cmVtO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5mZWF0dXJlcGFuZWxfX2J1dHRvbntcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgd2lkdGg6IDE3cmVtO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cblxuXG5cblxuXG5cbiAgJi0tYmFubmVye1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0MzYxQTE7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBtYXJnaW46IDJyZW0gMHJlbSA3LjVyZW0gMHJlbTtcblxuICAgICY6OmJlZm9yZXtcbiAgICAgIGhlaWdodDogOTclO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgbWFyZ2luOiA4cmVtIDByZW0gMTFyZW0gMHJlbTtcbiAgICAgIHBhZGRpbmc6IDNyZW0gMDtcblxuICAgICAgJjo6YmVmb3Jle1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB0b3A6IDJyZW07XG4gICAgICAgIGxlZnQ6IDJyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmZlYXR1cmVwYW5lbF9fdGV4dHtcbiAgICAgIHBhZGRpbmc6IDJyZW07XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICBwYWRkaW5nOiA5cmVtIDVyZW0gMXJlbSAxMHJlbTtcbiAgICAgIH1cblxuICAgICAgaDJ7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmZlYXR1cmVwYW5lbF9faW1hZ2V7XG4gICAgICBpbWd7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgICAgICBtYXgtd2lkdGg6IDQwcmVtO1xuICAgICAgICAgIG1heC1oZWlnaHQ6IDQ0cmVtO1xuICAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBsZWZ0OiAxMnJlbTtcbiAgICAgICAgICB0b3A6IDNyZW07XG4gICAgICAgICAgaGVpZ2h0OiA0NTBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuZmVhdHVyZXBhbmVsX19idXR0b257XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAuYnV0dG9uLS1pdGVtc3tcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAgIG1hcmdpbjogN3JlbSAwIDAgLThyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmJ1dHRvbi0taXRlbXtcbiAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiA2cmVtO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgICB3aWR0aDogMzMuMzMlO1xuICAgICAgICBoZWlnaHQ6IDhyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmZlYXR1cmVwYW5lbF9fYnV0dG9ue1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICB9XG5cblxuICAmLS10ZXh0cGFuZWx7XG5cbiAgICAuZmVhdHVyZXBhbmVsX190ZXh0e1xuICAgICAgcGFkZGluZzogMCAwIDRyZW0gMDtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAgIHBhZGRpbmc6IDRyZW0gNnJlbTtcbiAgICAgIH1cblxuICAgICAgaDJ7XG4gICAgICAgIG1hcmdpbjogN3JlbSAwIDAgMDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICAgIG1hcmdpbjogOXJlbSAwIDEuNXJlbSAwO1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYtLW1haW57XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZmVhdHVyZXBhbmVsX190ZXh0LXN1YntcbiAgICAgICAgbWFyZ2luOiAwIDAgMnJlbSAwO1xuXG4gICAgICAgIC5zdWJ0ZXh0e1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuXG4gICAgICAgICAgJi1vcmFuZ2V7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLS1jYXJuYXRpb247XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4ubWdzaXple1xuXG4gIG1hcmdpbjogLTMuMnJlbSAwIDAgMDtcblxuICAmLS1tZWRpdW17XG4gICAgbWFyZ2luOiAtNi4ycmVtIDAgMCAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgbWFyZ2luOiAtNi4ycmVtIDAgNXJlbSAwO1xuICAgIH1cbiAgfVxuXG4gICYtLWxhcmdle1xuICAgIG1hcmdpbjogLTkuMnJlbSAwIDAgMDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgIG1hcmdpbjogLTkuMnJlbSAwIDVyZW0gMDtcbiAgICB9XG4gIH1cbn1cbiIsIi5uZXdzY2Fyb3VzZWwge1xuICBoZWlnaHQ6IDUwcmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogM3JlbSAwIDAgMDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgaGVpZ2h0OiA0NXJlbTtcbiAgICBtYXJnaW46IDlyZW0gM3JlbSAwIDNyZW07XG4gIH1cblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvcmRlcjogdmFyKC0tYm9yZGVyLWdyZXkpO1xuICAgIGhlaWdodDogNDVyZW07XG4gICAgd2lkdGg6IDExNSU7XG4gICAgbGVmdDogLTI1cHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgd2lkdGg6IDEwNyU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgY29udGVudDogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmX19wYW5lbCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG4gIH1cblxuICAmX19wYW5lbC0tdGV4dGJveCB7XG4gICAgcGFkZGluZzogMnJlbSAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgLy8gZmxvYXQ6IGxlZnQ7XG4gICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDM1cHg7XG4gICAgICBwYWRkaW5nOiA0LjVyZW0gNC41cmVtIDIuNXJlbSAzLjVyZW07XG4gICAgICB3aWR0aDogNzByZW07XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3JkZXI6IHZhcigtLWJvcmRlci1ncmV5KTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbGVmdDogLTE1cHg7XG4gICAgICAgIHRvcDogMjBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19wYW5lbC0taW1hZ2Uge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDIyLjVyZW07XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgaGVpZ2h0OiAzN3JlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAub3JiaXQtY29udHJvbHMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBidXR0b24ge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gICAgLm9yYml0LXByZXZpb3VzLFxuICAgIC5vcmJpdC1uZXh0IHtcbiAgICAgIHRvcDogLTIuNXJlbTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5vcmJpdC1uZXh0IHtcbiAgICAgIGxlZnQ6IDk3JTtcbiAgICB9XG5cbiAgICAub3JiaXQtcHJldmlvdXMge1xuICAgICAgbGVmdDogNzUlO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBsZWZ0OiA5MCU7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbGVmdDogODglO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHAge1xuICAgIGNvbG9yOiAkY29sb3ItLWNhcm5hdGlvbjtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICBmb250LXdlaWdodDogOTAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICBtYXJnaW46IDEuMjVyZW0gMDtcbiAgICB9XG4gIH1cblxuICBoMiB7XG4gICAgaGVpZ2h0OiAxM3JlbTtcbiAgICB3aWR0aDogYXV0bztcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICB3aWR0aDogNjNyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgaGVpZ2h0OiAxNHJlbTtcbiAgICB9XG4gIH1cblxuICBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTA7XG4gICAgY29sb3I6ICRjb2xvci0tbWFyaW5lcjtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IC01cHg7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lIHJlcGVhdCBzY3JvbGwgMCAwIHRyYW5zcGFyZW50O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDJweDtcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLS1tYXJpbmVyO1xuICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgd2lkdGggMC4zcyBlYXNlIDBzLFxuICAgICAgICBsZWZ0IDAuM3MgZWFzZSAwcztcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgfVxuICB9XG59XG5cbi5uZXdzZmlsbXN0cmlwIHtcbiAgbWFyZ2luOiAwIDAgNHJlbSAwO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBtYXJnaW46IDEwcmVtIDAgM3JlbSAwO1xuICB9XG5cbiAgaDIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBtYXJnaW46IDAgMCAtMnJlbSAxcmVtO1xuICAgIH1cbiAgfVxuXG4gICYtLWJ1dHRvbiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbjogLTFyZW0gMCAwIDA7XG4gIH1cblxuICAmLS1tb3ZlbWVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogNXJlbTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMjVyZW07XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuY2FyZCB7XG4gICAgYm9yZGVyOiB2YXIoLS1ib3JkZXItdHJhbnNwYXJlbnQpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHdpZHRoOiAzNnJlbTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlcjogdmFyKC0tYm9yZGVyLXRyYW5zcGFyZW50KTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGhlaWdodDogOTElO1xuICAgICAgd2lkdGg6IDk5JTtcbiAgICAgIHRvcDogMnJlbTtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2Utb3V0O1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBib3JkZXI6IHZhcigtLWJvcmRlci1ncmV5KTtcbiAgICAgIH1cblxuICAgICAgaDQge1xuICAgICAgICBjb2xvcjogJGNvbG9yLS1jYXJuYXRpb247XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi1zZWN0aW9uIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgLmltZyB7XG4gICAgICAgIHdpZHRoOiAzNi42cmVtO1xuICAgICAgICBoZWlnaHQ6IDI0LjRyZW07XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBoZWlnaHQ6IDEzLjZyZW07XG4gICAgICAgICAgd2lkdGg6IDE5LjRyZW07XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgd2lkdGg6IDM0cmVtO1xuICAgICAgICAgIGhlaWdodDogMjMuOXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ubmV3c2ZpbHRlciB7XG4gIG1hcmdpbjogNXJlbSAwIDNyZW0gMDtcblxuICAubm8tcG9zdHMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMTByZW0gYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICBoMyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgbWFyZ2luOiAwIDAgMnJlbSAxLjI1cmVtO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG4gIH1cblxuICAuY2FyZCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgd2lkdGg6IDM2cmVtO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBoZWlnaHQ6IDkxJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdG9wOiAycmVtO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1vdXQ7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJvcmRlcjogdmFyKC0tYm9yZGVyLWdyZXkpO1xuICAgICAgfVxuXG4gICAgICBoNCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItLWNhcm5hdGlvbjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLXNlY3Rpb24ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAuaW1nIHtcbiAgICAgICAgd2lkdGg6IDI3M3B4O1xuICAgICAgICBoZWlnaHQ6IDE4MXB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICB3aWR0aDogMzY2cHg7XG4gICAgICAgICAgaGVpZ2h0OiAyNDRweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZGF0ZSB7XG4gICAgICAgIHRvcDogMTZyZW07XG4gICAgICAgIGxlZnQ6IDA7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICB0b3A6IDE2cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIHRvcDogMjIuNXJlbTtcbiAgICAgICAgICBsZWZ0OiAwLjVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnBhZ2luYXRpb24tLWNvbnRhaW5lcixcbi53cC1ibG9jay1xdWVyeS1wYWdpbmF0aW9uIHtcbiAgbWFyZ2luLXRvcDogM3JlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgICAucGFnZS1udW1iZXJzIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLnByZXYsXG4gICAgLm5leHQsXG4gICAgLmN1cnJlbnQsXG4gICAgLndwLWJsb2NrLXF1ZXJ5LXBhZ2luYXRpb24tcHJldmlvdXMsXG4gICAgLndwLWJsb2NrLXF1ZXJ5LXBhZ2luYXRpb24tbmV4dCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAucGFnZS1udW1iZXJzIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICB9XG4gIH1cblxuICAucGFnZS1udW1iZXJzIHtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIG1hcmdpbjogMCAxcmVtO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRibGFjaztcbiAgICBwYWRkaW5nOiAxcmVtIDEuNzVyZW07XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkY29sb3ItLWNhcm5hdGlvbjtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRjb2xvci0tY2FybmF0aW9uO1xuICAgIH1cbiAgfVxuXG4gIC5kb3RzIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBwYWRkaW5nOiAxcmVtIDEuNXJlbTtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRjb2xvci0tcml2ZXItYmVkO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG5cbiAgLnByZXYsXG4gIC53cC1ibG9jay1xdWVyeS1wYWdpbmF0aW9uLXByZXZpb3VzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRjb2xvci0tcml2ZXItYmVkO1xuICAgIHBhZGRpbmc6IDFyZW0gMS43NXJlbTtcbiAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiA4cHg7XG4gICAgICB0b3A6IDlweDtcbiAgICAgIGhlaWdodDogMnJlbTtcbiAgICAgIHdpZHRoOiAyLjc1cmVtO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4vaW1hZ2VzL2Fycm93cy9hcnJvdy0tYmxhY2suc3ZnXCIpO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRjb2xvci0tY2FybmF0aW9uO1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLS1jYXJuYXRpb247XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi9pbWFnZXMvYXJyb3dzL2Fycm93LS13aGl0ZS5zdmdcIik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm5leHQsXG4gIC53cC1ibG9jay1xdWVyeS1wYWdpbmF0aW9uLW5leHQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAycHggc29saWQgJGNvbG9yLS1yaXZlci1iZWQ7XG4gICAgcGFkZGluZzogMXJlbSAxLjc1cmVtO1xuICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAkY29sb3ItLWNhcm5hdGlvbjtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci0tY2FybmF0aW9uO1xuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4vaW1hZ2VzL2Fycm93cy9hcnJvdy0td2hpdGUuc3ZnXCIpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiA4cHg7XG4gICAgICB0b3A6IDE1cHg7XG4gICAgICBoZWlnaHQ6IDJyZW07XG4gICAgICB3aWR0aDogMi43NXJlbTtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuL2ltYWdlcy9hcnJvd3MvYXJyb3ctLWJsYWNrLnN2Z1wiKTtcbiAgICB9XG4gIH1cblxuICAuY3VycmVudCB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3ItLWNhcm5hdGlvbjtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgbGluZS1oZWlnaHQ6IDQxcHg7XG4gICAgcGFkZGluZzogNXB4IDExcHg7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci0tY2FybmF0aW9uO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRjb2xvci0tY2FybmF0aW9uO1xuICAgIH1cbiAgfVxufVxuXG4udGVhc2VyY2FyZHMge1xuICAuY2FyZC0taGVhZGluZyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gIH1cbn1cblxuLm1haW4tY29udGFpbmVyIC5wYWdpbmF0aW9uLFxuLm1haW4tY29udGFpbmVyIC5wYWdpbmF0aW9uLS1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDsgXG5cbiAgYSxcbiAgc3BhbiB7XG4gICAgYm9yZGVyOiAycHggc29saWQgIzAwMCAhaW1wb3J0YW50OyBcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIHdpZHRoOiA0MHB4OyBcbiAgfVxuICBsaSxcbiAgc3BhbiB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7IFxuICAgIGJhY2tncm91bmQ6IDA7IFxuICAgIGJvcmRlcjogMDsgXG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kOiAwICFpbXBvcnRhbnQ7IFxuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IFxuICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IFxuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyBcbiAgICB9XG4gIH1cblxufVxuXG4ubWFpbi1jb250YWluZXIgLnBhZ2luYXRpb24tLWNvbnRhaW5lciBzcGFuLmN1cnJlbnQge1xuICBiYWNrZ3JvdW5kOiAkY29sb3ItLWNhcm5hdGlvbjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IFxufVxuXG4ubWFpbi1jb250YWluZXIgLnBhZ2luYXRpb24tLWNvbnRhaW5lciBhLm5leHQucGFnZS1udW1iZXJzLFxuLm1haW4tY29udGFpbmVyIC5wYWdpbmF0aW9uLS1jb250YWluZXIgYS5wcmV2LnBhZ2UtbnVtYmVycyB7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50OyBcbiAgJjphZnRlciB7XG4gICAgdG9wOiA4cHggIWltcG9ydGFudDsgXG4gIH1cbn1cbi5tYWluLWNvbnRhaW5lciAucGFnaW5hdGlvbi0tY29udGFpbmVyIGEubmV4dC5wYWdlLW51bWJlcnMge1xuICAmOmFmdGVyIHtcbiAgICB0b3A6IDEzcHggIWltcG9ydGFudDsgXG4gIH0gXG59IiwiLnNvY2lhbF9fY29udGFpbmVye1xuICBtYXJnaW46IDdyZW0gMDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgbWFyZ2luOiA5cmVtIDAgN3JlbSAwO1xuXG4gIH1cblxuICBoMntcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBtYXJnaW46IDJyZW0gMDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgIG1hcmdpbjogMCAwIDVyZW0gMDtcbiAgICB9XG4gIH1cblxuICAmLS1wYW5lbHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiAxNXJlbTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDFyZW0gMCAzcmVtIDA7XG5cbiAgICAmOmhvdmVye1xuICAgICAgYm94LXNoYWRvdzogMCAxcmVtIDJyZW0gcmdiYSgkYmxhY2ssIDAuNCk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFyZW0pO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgIG1hcmdpbjogMCAxcmVtIDNyZW0gMXJlbTtcbiAgICAgIHdpZHRoOiA2NnJlbTtcbiAgICB9XG5cbiAgICAuaW1nLWdyZXl7XG4gICAgICAtd2Via2l0LWZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xuICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMTAwJSk7XG4gICAgfVxuXG4gICAgLnNvY2lhbF9fbGluay0taW1ne1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgIGhlaWdodDogMTVyZW07XG4gICAgICB3aWR0aDogMzhyZW07XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgICAgd2lkdGg6IDY2cmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIGRpdntcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRvcDogNDAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTQwJSwgLTUwJSk7XG4gICAgfVxuXG4gICAgcHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRvcDogODAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTgwJSk7XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgfVxuXG4gIC5mYSB7XG4gICAgZm9udC1zaXplOiA0cmVtO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMC41cmVtIDAgMS41cmVtO1xuICB9XG5cbiAgLmZhLS1mYWNlYm9vayB7XG4gICAgYmFja2dyb3VuZDogdXJsKCcuL2ltYWdlcy9iYWNrZ3JvdW5kcy9mYWNlYm9va2ljb24uc3ZnJyk7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIHBhZGRpbmc6IDJyZW07XG4gIH1cblxuICAuZmEtdHdpdHRlciwgLmZhLXgtdHdpdHRlciwgLmZhLWxpbmtlZGluLCAuZmEtaW5zdGFncmFtIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG59XG4iLCIucmVhZG1vcmV7XG4gIG1hcmdpbjogNHJlbSAwIDhyZW0gMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgIG1hcmdpbjogOHJlbSA3cmVtIDRyZW0gNHJlbTtcbiAgICBwYWRkaW5nOiAzcmVtIDAgMTByZW0gMDtcbiAgfVxuXG4gICY6OmJlZm9yZXtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmV5LS1ib3JkZXI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNDVweDtcbiAgICBsZWZ0OiAtMTVweDtcbiAgICB3aWR0aDogMTEwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgei1pbmRleDogLTE7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgICB3aWR0aDogMTA1JTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgIHRvcDogLTI1cHg7XG4gICAgICBsZWZ0OiA5NXB4O1xuICAgICAgd2lkdGg6IDkwJTtcbiAgICB9XG4gIH1cblxuICAmX19wYW5lbHtcblxuICAgIGltZ3tcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXgtd2lkdGg6IDI4cmVtO1xuICAgICAgICBtYXgtaGVpZ2h0OiAzNXJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1ub2ltYWdle1xuICAgICAgbWFyZ2luOiA3cmVtIDAgMCAwO1xuICAgIH1cblxuICAgIC8qXG4gICAgcGVyaGFwcyB5b3VyIGN1cmlvdXMgd2h5IHRleHQgaXMgZWFzZS1vdXQgYW5kIGV4cGFuZGVkIGlzIGVhc2UtaW5cbiAgICBodHRwczovL2Nzcy10cmlja3MuY29tL2Vhc2Utb3V0LWluLWVhc2UtaW4tb3V0LyBoYXMgYSBncmVhdCBhcnRpY2xlIG9uIGl0XG4gICAgZWFzZS1pbjogd2hlbiB0aGluZ3MgYXJlIG1vdmluZyBvdXQuXG4gICAgZWFzZS1vdXQ6IHdoZW4gdGhpbmdzIGFyZSBtb3ZpbmcgaW5cbiAgICAqL1xuXG4gICAgJi0tdGV4dHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1heC1oZWlnaHQ6IDI1cmVtO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgLjVzIGVhc2Utb3V0OyAvLyBlYXNlLW91dDogd2hlbiB0aGluZ3MgYXJlIG1vdmluZyBpblxuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgICAgbWF4LWhlaWdodDogMzByZW07XG4gICAgICB9XG5cbiAgICAgIHVse1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogNC4yNXJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuLWV4cGFuZGVkIHtcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAuNXMgZWFzZS1pbjsgLy8gZWFzZS1pbjogd2hlbiB0aGluZ3MgYXJlIG1vdmluZyBvdXQuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgICAgICAvLyBtYXgtaGVpZ2h0OiAyMDB2aDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYtLXRleHQ6bm90KC4tZXhwYW5kZWQpOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChyZ2JhKDI1NSwgMjU1LCAyNTUsIDApLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpKTtcbiAgICB9XG5cbiAgICAmLS1tYWlue1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAgIG1hcmdpbjogMCAxMHJlbSAwIDMwcmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIGgze1xuICAgICAgY29sb3I6ICRjb2xvci0tbWFyaW5lcjtcbiAgICAgIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgICB9XG5cbiAgICAuZXhwYW5kLWJ1dHRvbntcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luOiAycmVtIDAgMCAwO1xuICAgICAgZm9udC1zaXplOiAxLjZyZW07XG5cbiAgICAgICY6aG92ZXJ7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5wbHVzLCAubWludXN7XG4gICAgICAmOjpiZWZvcmV7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItLW1hcmluZXI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5wbHVze1xuICAgICAgJjo6YmVmb3Jle1xuICAgICAgICBjb250ZW50OiAnXFwwMDJCICAnO1xuICAgICAgfVxuICAgIH1cbiAgICAubWludXN7XG4gICAgICAmOjpiZWZvcmV7XG4gICAgICAgIGNvbnRlbnQ6ICdcXDIyMTIgICc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuXG4iLCIud2hpdGVwYXBlcntcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICBtYXJnaW46IDAgMCA2cmVtIDA7XG4gIH1cblxuICBoMntcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luOiAxLjVyZW07XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgbWFyZ2luOiAxLjVyZW0gMDtcbiAgICB9XG4gIH1cblxuICAuY2FyZHtcbiAgICBib3JkZXI6IHZhcigtLWJvcmRlci10cmFuc3BhcmVudCk7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cbiAgICAmOmhvdmVye1xuICAgICAgYm9yZGVyOiB2YXIoLS1ib3JkZXItZ3JleSk7XG4gICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cbiAgICAgIGg0e1xuICAgICAgICBjb2xvcjogJGNvbG9yLS1jYXJuYXRpb247XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaDQsIC5hdXRob3J7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgbWFyZ2luLWxlZnQ6IDJyZW07XG4gICAgfVxuICB9XG5cbiAgLmRhdGV7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbSAwIDFyZW07XG5cbiAgICB9XG4gIH1cblxuICAmLS1idXR0b257XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbiIsIi5pbmZvcm1hdGlvbmFse1xuICBtYXJnaW46IDRyZW0gMDtcblxuICAubm9uZSB7XG4gICAgZGlzcGxheTpub25lO1xuICB9XG5cbiAgJl9fdGFie1xuICAgIHBhZGRpbmc6IDRyZW0gMXJlbTtcbiAgICAvLyBwYWRkaW5nOiA0cmVtIDVyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1pbi1oZWlnaHQ6IDcwcmVtO1xuICAgIH1cblxuICAgIHB7XG4gICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgIG1hcmdpbjogMnJlbSAwO1xuICAgIH1cbiAgfVxuXG4gIC50YWItLWJsdWV7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLS1zZWNvbmRhcnk7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOjpiZWZvcmV7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiAyMTAlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6LTEwMCU7XG4gICAgICB6LWluZGV4OiAtMTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXJ7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiAyMTAlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDotMTAwJTtcbiAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgICB9XG5cbiAgICBoMntcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICBwYWRkaW5nOiAxMHJlbSA4cmVtIDZyZW0gMnJlbTtcbiAgICB9XG4gIH1cblxuICAudGFiLS1ncmV5e1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOjpiZWZvcmV7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiAyMTAlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6LTEwMCU7XG4gICAgICB6LWluZGV4OiAtMTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXJ7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiAyMTAlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDotMTAwJTtcbiAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgIHBhZGRpbmc6IDEzcmVtIDJyZW0gNnJlbSA4cmVtXG4gICAgfVxuXG4gICAgbGl7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgbWFyZ2luOiAwIDAgMnJlbSAycmVtO1xuXG4gICAgICAmOjpiZWZvcmV7XG4gICAgICAgIHRvcDogOXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIGg0e1xuICAgICAgbWFyZ2luOiAwIDAgMnJlbSAwO1xuICAgIH1cbiAgfVxuXG4gIC5hcmVhLS1uYW1lX19idXR0b25ze1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcblxuICAgICAgLmFyZWEtLW5hbWVfX3Jvd3tcbiAgICAgICAgZmxleDogMSAxIDMzLjMzJTtcbiAgICAgIH1cblxuICAgICAgbGFiZWx7XG4gICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBoZWlnaHQ6IDRyZW07XG4gICAgICAgIHBhZGRpbmc6IDAuMjVyZW0gMS41cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOlxuICAgICAgICAgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCxcbiAgICAgICAgICAkd2hpdGUgMCUsXG4gICAgICAgICAgJHdoaXRlIDUwJSxcbiAgICAgICAgICAkY29sb3ItLXNlY29uZGFyeSA1MCUsXG4gICAgICAgICAgJGNvbG9yLS1zZWNvbmRhcnkgMTAwJSk7XG5cbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDIxNSUgMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogOTklIDEwJTtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1wb3NpdGlvbiAwLjVzO1xuICAgICAgICBtYXJnaW46IDFyZW07XG5cbiAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG4gICAgICAgICAgY29sb3I6ICRjb2xvci0tY2FybmF0aW9uO1xuICAgICAgICB9XG5cbiAgICAgIH1cbiAgICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkK2xhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvci0tc2Vjb25kYXJ5O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmFyZWEtLW5hbWVfX3NlbGVjdHtcblxuICAgIHNlbGVjdHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci0tc2Vjb25kYXJ5O1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gbGl0dGxlIGJsdWUgdHJpYW5nbGVcbiAgLnRyaWFuZ2xle1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAmOjphZnRlcntcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAtNHJlbTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUpO1xuICAgICAgd2lkdGg6IDA7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBib3JkZXItbGVmdDogMnJlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yaWdodDogMnJlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci10b3A6IDJyZW0gc29saWQgJGNvbG9yLS1zZWNvbmRhcnk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAmOjphZnRlcntcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxNSU7XG4gICAgICAgIGxlZnQ6IC02cmVtO1xuICAgICAgICBib3JkZXItdG9wOiAycmVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItbGVmdDogMnJlbSBzb2xpZCAkY29sb3ItLXNlY29uZGFyeTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMnJlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5maWx0ZXJfX2hlYWRpbmd7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgQGluY2x1ZGUgZmxleDtcbiAgfVxufVxuXG4uZmlsdGVye1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgLy8gbWFyZ2luOiAtNXJlbSAwLjVyZW0gMCA0NXJlbTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIG1hcmdpbjogLTAuNXJlbSAtNXJlbSAwIDA7XG4gIH1cblxuICBwe1xuICAgIC8vIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgLy8gdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIG1hcmdpbjogMC41cmVtIDA7XG4gICAgfVxuICB9XG4gIC51aS1ncm91cHtcbiAgICBtYXJnaW46IDAgM3JlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgICBtYXJnaW46IDAgMTlyZW07XG4gICAgfVxuXG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cblxuICAudWktZ3JvdXA6bGFzdC1vZi10eXBle1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgbWFyZ2luOiAtMC4zNXJlbSAycmVtIDAgM3JlbTtcbiAgICB9XG4gIH1cblxuICBzZWxlY3R7XG4gICAgYm9yZGVyOiAycHggc29saWQgJGdyZXktLWRhcms7XG4gICAgY29sb3I6ICRjb2xvci0tcml2ZXItYmVkO1xuICAgIHBhZGRpbmc6IDAuN3JlbTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAwLjRyZW0gY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICB3aWR0aDogMjdyZW07XG4gICAgfVxuXG4gICAgb3B0aW9ue1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGNvbG9yOiAkY29sb3ItLXByaW1hcnk7XG4gICAgfVxuICB9XG59XG5cbi5zZWFyY2gtLWJhbm5lcl9fcmVzdWx0c3tcbiAgLmZpbHRlcntcbiAgICBtYXJnaW46IDA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgIG1hcmdpbjogN3JlbSAwIDAgN3JlbTtcbiAgICB9XG5cbiAgICAuZmxleC1jaGlsZC1hdXRve1xuXG4gICAgICAuYnV0dG9ue1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgICAgICBtYXJnaW46IC0uMzVyZW0gMnJlbSAwIDJyZW07XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAgIG1hcmdpbjogMCAtNXJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBwe1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgfVxuXG4gICAgc2VsZWN0e1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJHdoaXRlO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgJjpmb2N1c3tcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICB3aWR0aDogMjRyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQgLm0tYXJjaGl2ZS1ibG9jayB7XG4gICAgJl9fZmlsdGVycyB7XG4gICAgICAgIG1hcmdpbjogMjVweCAwIDQwcHg7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB9XG4gICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICBjb2xvcjogIzI4NTdhYTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgIzI4NTdhYTtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHg7XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NDBweCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxODNweDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzMuMzMlO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjMjg1N2FhO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAmLmFyY2hpdmUtc2VsZWN0ZWQge1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzI4NTdhYTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fZGF0ZSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICAmX19yZXN1bHQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgICAgICBpZnJhbWUge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDM4MnB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGNvbG9yOiAjMjg1N2FhO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyNXB4O1xuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgICAgY29sb3I6ICMyODU3YWE7XG4gICAgICAgIH1cblxuICAgICAgICAmLS10aHVtYiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGhlaWdodDogMjE3cHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IFxuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE2NnB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7IFxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgICAgICAmLmJsb2ctcG9zdCB7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZWRlZGU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNnB4O1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDI2cHg7XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NDBweCkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwOyBcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubS1hcmNoaXZlLWJsb2NrX19yZXN1bHQtLXRodW1iIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDE1MHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5wZGYge1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGVkZWRlO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjZweDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyNnB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwIDIwcHggMjZweDtcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7IFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTA2cHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICMyODU3YWE7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogIzI4NTdhYTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIubS1hcnQtY29tcCB7XG4gICAgJl9fbWVldCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmNGY0ZjQ7XG4gICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgIC53cC1ibG9jay1idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICZfX2xpbmsge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzI4NTdhYTtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzI4NTdhYTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggNTBweDtcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJl9fbmF2IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgbWFyZ2luOiAxMHB4IGF1dG8gNDZweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAjMWU0Mzg1O1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQ7XG4gICAgICAgICAgICBtYXJnaW46IDAgNXB4O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGNvbG9yOiAjMWU0Mzg1O1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogIzFlNDM4NTtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAyMDZweDtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pbnRybyB7XG4gICAgICAgIG1hcmdpbjogMCAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NDBweCkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgaDMge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci0tbWFyaW5lcjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmX19idXR0b25zIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2YyZjJmMjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAhaW1wb3J0YW50O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgICAmLnZpZGVvIGE6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4vaW1hZ2VzL2Fycm93cy9hcnJvdy0tdmlkZW8uc3ZnXCIpIG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGhlaWdodDogMzdweDtcbiAgICAgICAgICAgIHdpZHRoOiA1MXB4O1xuICAgICAgICB9XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDI0cHggMTNweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzNweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzNweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuL2ltYWdlcy9hcnJvd3MvYXJyb3ctLWxpbmsuc3ZnXCIpIG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJl9fcXVvdGUge1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbjogODBweCAwIDgwcHggIWltcG9ydGFudDtcblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5NDBweCkge1xuICAgICAgICAgICAgbWFyZ2luOiA4MHB4IDEwcmVtIDgwcHggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmX19wcmVzcyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgbWFyZ2luOiAxcmVtIDAgMCAhaW1wb3J0YW50O1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICAgIG1hcmdpbjogMXJlbSAyMDlweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgY29sb3I6ICMyODU3YWE7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmX19zZXBhcmF0b3Ige1xuICAgICAgICBtYXJnaW46IDc1cHggMCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzAwMDtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICAgICBtYXJnaW46IDc1cHggMjNyZW0gIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmX190aXRsZSB7XG4gICAgICAgIGNvbG9yOiAjMjg1N2FhO1xuICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxuXG4gICAgJl9fc2xpZGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2YxZjFmMTtcbiAgICAgICAgcGFkZGluZzogMThweDtcbiAgICAgICAgbWFyZ2luOiA5NXB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTM5MnB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzNXB4IDc2cHggNjhweDtcbiAgICAgICAgICAgIG1hcmdpbjogOTVweCAtMTI1cHggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAuc2xpY2stcHJldiB7XG4gICAgICAgICAgICBsZWZ0OiAtNDdweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4vaW1hZ2VzL2Fycm93cy9hcnJvdy0tc2xpZGVyLS1wcmV2LnN2Z1wiKSBuby1yZXBlYXQ7XG4gICAgICAgIH1cbiAgICAgICAgLnNsaWNrLW5leHQge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi9pbWFnZXMvYXJyb3dzL2Fycm93LS1zbGlkZXItLW5leHQuc3ZnXCIpIG5vLXJlcGVhdDtcbiAgICAgICAgICAgIHJpZ2h0OiAtNDdweDtcbiAgICAgICAgfVxuICAgICAgICAuc2xpY2stYXJyb3cge1xuICAgICAgICAgICAgaGVpZ2h0OiAzOHB4O1xuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTM5MnB4KSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1MnB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyN3B4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpiZWZvcmUsXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA2NDJweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvIDM1cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTM5MnB4KSB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgLy9mb250LXNpemU6IDI1cHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkO1xuICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzOTJweCkge1xuICAgICAgICAgICAgICAgICAgICAvL21hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLS1zbGlkZXMge1xuICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgJi0tc2xpZGUge1xuICAgICAgICAgICAgcGFkZGluZzogMCAxMXB4O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMjNweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmFuY2hvcjpiZWZvcmUsXG4jdmlydHVhbC1yZWNlcHRpb24sXG4jYWJvdXQsXG4jcHJlc3Mge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxNzBweCAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW4tdG9wOiAtMTcwcHggIWltcG9ydGFudDtcbiAgICB9XG59XG5cbmh0bWwge1xuICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xufVxuIiwiLnNpZ251cHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIG1hcmdpbjogOXJlbSAwIDAgMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgIG1hcmdpbjogM3JlbSAwIDAgMDtcbiAgICB9XG5cbiAgICAmX19waWN0dXJlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgYm90dG9tOiA5NnJlbTtcbiAgICAgIHJpZ2h0OiAwO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgICAgIGJvdHRvbTogOTRyZW07XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICBib3R0b206IDQycmVtO1xuICAgICAgfVxuXG4gICAgICBpbWd7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgaGVpZ2h0OiA0NXJlbTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwcmVtO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgICAgICAgICAgaGVpZ2h0OiA2NXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cblxuXG4gICAgJl9fYnV0dG9ue1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAtNnJlbTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUpO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgei1pbmRleDogMTA7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc2xhcmdlKXtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICBsZWZ0OiA5Ny41JTtcbiAgICAgICAgdG9wOiBjYWxjKDEwMCUgLSA0OXJlbSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fZm9ybXtcbiAgICAgIGJhY2tncm91bmQ6ICMxOTNkNWMgdXJsKCcuL2ltYWdlcy9iYWNrZ3JvdW5kcy9DSV9IZWFkZXJJbWFnZV9TdGFuZGFyZC5wbmcnKTtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgcGFkZGluZzogM3JlbTtcbiAgICAgIC8vbWFyZ2luOiAwIDNyZW0gMCAzcmVtO1xuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAgIGhlaWdodDogMjhyZW07XG4gICAgICAgIHBhZGRpbmc6IDhyZW0gNHJlbSA4cmVtIDRyZW07XG4gICAgICAgIC8vbWF4LXdpZHRoOiAxMTRyZW07XG4gICAgICAgIG1heC13aWR0aDogMTAwdnc7XG4gICAgICAgIC8vIG1hcmdpbjogYXV0bztcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICByaWdodDogNTAlO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTUwdncgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtNTB2dyAhaW1wb3J0YW50O1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgIH1cblxuICAgIC8vICAgJjo6YmVmb3Jle1xuICAgIC8vICAgICBjb250ZW50OiAnJztcbiAgICAvLyAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgLy8gICAgIGhlaWdodDogNzUlO1xuICAgIC8vICAgICB3aWR0aDogMTAwdnc7XG4gICAgLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICMxOTNkNWM7XG4gICAgLy8gICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAvLyAgICAgYm90dG9tOiAwO1xuICAgIC8vICAgICByaWdodDogLTNyZW07XG4gICAgLy8gICAgIHotaW5kZXg6IC0xO1xuICAgIC8vICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgLy8gICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgIC8vICAgICAgIGhlaWdodDogNjUlO1xuICAgIC8vICAgICAgIHJpZ2h0OiAxMDAlO1xuICAgIC8vICAgICB9XG5cbiAgICAvLyAgIH1cblxuICAgIC8vICAgJjo6YWZ0ZXJ7XG4gICAgLy8gICAgIGNvbnRlbnQ6ICcnO1xuICAgIC8vICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAvLyAgICAgaGVpZ2h0OiA3NSU7XG4gICAgLy8gICAgIHdpZHRoOiAxMDB2dztcbiAgICAvLyAgICAgYmFja2dyb3VuZC1jb2xvcjogIzE5M2Q1YztcbiAgICAvLyAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIC8vICAgICBib3R0b206IDA7XG4gICAgLy8gICAgIGxlZnQ6IC0zcmVtO1xuICAgIC8vICAgICB6LWluZGV4OiAtMTtcbiAgICAvLyAgICAgZGlzcGxheTogbm9uZTtcblxuICAgIC8vICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAvLyAgICAgICBoZWlnaHQ6IDY1JTtcbiAgICAvLyAgICAgICBsZWZ0OiAxMDAlO1xuICAgIC8vICAgICB9XG5cbiAgICAvLyAgIH1cblxuICAgIC5idXR0b24ge1xuICAgICAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICAgLndwLWJsb2NrLWdyb3VwX19pbm5lci1jb250YWluZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDY4MHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgfVxuXG4gICAgICAuZmxleC1jaGlsZC1hdXRve1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB9XG5cbiAgICAgIGgze1xuICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSl7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWFyZ2luOiA0cmVtIDAgMCAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fY29udGFjdHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci0tc2Vjb25kYXJ5O1xuICAgICAgY29sb3I6ICNBN0MxRTQ7XG4gICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgcGFkZGluZzogM3JlbTtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2Upe1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBwYWRkaW5nOiA0cmVtIDVyZW0gMCA1cmVtO1xuICAgICAgfVxuXG4gICAgICBhe1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgICAgIH1cblxuICAgICAgJi0tZWxle1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuXG4gICAgICAgIC5pbmZve1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS10b3B7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAgICAgcGFkZGluZzogMnJlbSAzcmVtIDJyZW0gM3JlbTtcbiAgICAgICAgfVxuICAgICAgICAubG9nb3tcbiAgICAgICAgICB3aWR0aDogMTI1cHg7XG4gICAgICAgICAgaGVpZ2h0OiA1MnB4O1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICAgICAgd2lkdGg6IDE3MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA3MHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5mb290ZXJfX2NvbnRhY3QtLWVsZXtcbiAgICAgICAgICAvLyBNb2JpbGUgICAgICAgICBEZXNrdG9wXG4gICAgICAgICAgLy8gTG9nbyAxICAgICAgICAgICAxXG4gICAgICAgICAgLy8gU2VhcmNoIDIgICAgICAgICA1XG4gICAgICAgICAgLy8gQWRkcmVzcyAzICAgICAgICAyXG4gICAgICAgICAgLy8gUGhvbmUgNCAgICAgICAgICAzXG4gICAgICAgICAgLy8gRW1haWwgNSAgICAgICAgICA0XG4gICAgICAgICAgJjpudGgtY2hpbGQoMikgeyBvcmRlcjogMzsgfVxuICAgICAgICAgICY6bnRoLWNoaWxkKDMpIHsgb3JkZXI6IDQ7IH1cbiAgICAgICAgICAmOm50aC1jaGlsZCg0KSB7IG9yZGVyOiA1OyB9XG4gICAgICAgICAgJjpudGgtY2hpbGQoNSkgeyBvcmRlcjogMjsgfVxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHsgb3JkZXI6IDI7IH1cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpIHsgb3JkZXI6IDM7IH1cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDQpIHsgb3JkZXI6IDQ7IH1cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDUpIHsgb3JkZXI6IDU7IH1cbiAgICAgICAgICB9XG5cblxuICAgICAgICAgIC8vIEZvb3RlciBzZWFyY2hcbiAgICAgICAgICAubmF2aWdhdGlvbi1mb3Jte1xuICAgICAgICAgICAgbWFyZ2luOiAycmVtO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgICAgICAgICAgbWFyZ2luOiAycmVtIDAgMCAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXXtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICAgICY6OnBsYWNlaG9sZGVye1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB0b3A6IC0xcmVtO1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0wLjVyZW07XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl06YWN0aXZle1xuICAgICAgICAgICAgICAmOjpwbGFjZWhvbGRlcntcbiAgICAgICAgICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl06Zm9jdXN7XG4gICAgICAgICAgICAgICY6OnBsYWNlaG9sZGVye1xuICAgICAgICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl17XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICB3aWR0aDogNXJlbTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiA1cmVtO1xuICAgICAgICAgICAgICB6LWluZGV4OiAxMTtcbiAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubWFnbmlmeWluZy1nbGFzcy1jb250YWluZXJ7XG4gICAgICAgICAgICAgIHRvcDogLTIuNXJlbTtcbiAgICAgICAgICAgICAgcmlnaHQ6IC0ycmVtO1xuICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICAgICAgICAgIHRvcDogLTJyZW07XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAubWFnbmlmeWluZy1nbGFzc3tcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDAuM2VtO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAwLjNlbTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgICAgICAgICAgIHRvcDogM3JlbTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtNHJlbTtcblxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cblxuICAgICAgJi0tYm90dG9te1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICBwYWRkaW5nOiAycmVtIDAgMnJlbSAwcmVtO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICAgIHBhZGRpbmc6IDJyZW0gMCA0cmVtIDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmV7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjQTdDMUU0O1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICByaWdodDogLTNyZW07XG4gICAgICAgICAgd2lkdGg6IDEwMHZ3O1xuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAgICAgICByaWdodDogNDBweDtcbiAgICAgICAgICAgIHdpZHRoOiA5NSU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi0tZWxle1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKXtcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpe1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIGxlZnQ6IDNyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOm50aC1jaGlsZCgyKXtcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICByaWdodDogM3JlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuZmEge1xuICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgcGFkZGluZzogLjVyZW0gMC4yNXJlbSAwIDFyZW07XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuZmEtZmFjZWJvb2sge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLS1yZWdlbnQtYmx1ZTtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3ItLXJlZ2VudC1ibHVlO1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGNvbG9yLS1yZWdlbnQtYmx1ZTtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGNvbG9yLS1yZWdlbnQtYmx1ZTtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItLXNlY29uZGFyeTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuZmEtdHdpdHRlcixcbiAgICAgICAgICAuZmEteC10d2l0dGVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItLXJlZ2VudC1ibHVlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmxpbmt7XG4gICAgICAgICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgIG1hcmdpbjogMnJlbSAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2Upe1xuICAgICAgICAgICAgICBtYXJnaW46IDByZW0gM3JlbSAwcmVtIDA7XG4gICAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpe1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiIsIi5tLWFjY29yZGlvbiB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IDg0MnB4O1xuICAgICZfX2Jsb2NrLXRpdGxlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDQ1cHggYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogIzE3M2M4NztcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbWF4LXdpZHRoOiA4NDJweDtcbiAgICB9XG4gICAgJl9fdGl0bGUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMDYzNDcxO1xuICAgICAgICAgICAgcGFkZGluZzogMTFweCAxOHB4O1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMzM1N2I1O1xuICAgICAgICAgICAgd2lkdGg6IDUzcHg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogN3B4O1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICZfX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMThweCAwO1xuICAgIH1cbiAgICAubS1hY2NvcmRpb25fX3BsdXMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cbiAgICAubS1hY2NvcmRpb25fX21pbnVzIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgXG4gICAgfVxuICAgICZfX2l0ZW0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA3cHg7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgLm0tYWNjb3JkaW9uX19wbHVzIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLm0tYWNjb3JkaW9uX19taW51cyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDsgXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIucHVtLWNvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi9pbWFnZXMvYmFja2dyb3VuZHMvQ0lfSGVhZGVySW1hZ2VfU3RhbmRhcmQucG5nXCIpIHJpZ2h0IGJvdHRvbSFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlciAhaW1wb3J0YW50OyBcbiAgICBwYWRkaW5nOiAzcmVtICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiA1MDBweCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjZmZmO1xuXG4gICAgLnB1bS10aXRsZSB7XG4gICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyAgXG4gICAgfVxuXG4gICAgLnB1bS1jbG9zZSB7XG4gICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbi10b3A6IDE0cHg7IFxuICAgICAgICBmb250LXNpemU6IDQ0cHggIWltcG9ydGFudDsgXG4gICAgICAgICY6YmVmb3JlLFxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNDRweCAhaW1wb3J0YW50O1xuICAgIFxuICAgICAgICB9XG4gICAgfVxuICAgIGlucHV0LCBzZWxlY3Qge1xuICAgICAgICB3aWR0aDogNDklICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMiU7IFxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyJTsgXG4gICAgfVxuICAgIC5mb3JtX19idXR0b24ge1xuICAgICAgICBwb3NpdGlvbjogc3RhdGljOyBcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7IFxuICAgICAgICBjb2xvcjogI2ZmZjsgXG4gICAgfVxuICAgIHAge1xuICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50OyBcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgXG4gICAgfVxufVxuLm0tcG9wdXBfX3JvdyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBpbnB1dCwgc2VsZWN0IHtcbiAgICAgICAgd2lkdGg6IDQ5JTtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7IFxuICAgIH1cbn1cbiIsIi53cC1ibG9jay1wb3N0LXRlbXBsYXRlIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBsaSB7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgXG4gICAgICB9XG4gICAgfSBcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6XCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICB3aWR0aDogNDUlO1xuICAgICAgYmFja2dyb3VuZDogIzk3OTc5NzsgXG4gICAgICBtYXJnaW46IDg1cHggYXV0bzsgXG4gICAgfVxuXG4gIH1cblxuICAud3AtY29udGFpbmVyLTEyLndwLWJsb2NrLXF1ZXJ5IHtcbiAgICBsaSB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzk3OTc5NzsgXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IFxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDsgXG4gICAgICB9XG4gICAgfVxuICAgIC53cC1ibG9jay1wb3N0LXRlbXBsYXRlOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgXG4gICAgfVxuICB9XG4gIFxuICAud3AtYmxvY2stcXVlcnktcGFnaW5hdGlvbiB7XG4gICAgbWFyZ2luOiAwIGF1dG87IFxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgLndwLWJsb2NrLXF1ZXJ5LXBhZ2luYXRpb24tcHJldmlvdXMsXG4gICAgLndwLWJsb2NrLXF1ZXJ5LXBhZ2luYXRpb24tbmV4dCB7XG4gICAgICBwYWRkaW5nOiA5cHggMjJweDsgXG4gICAgfVxuICB9IiwiLndwLWJsb2NrLWNvdmVyIHtcbiAgICB3aWR0aDogMTAwdnc7XG4gICAgbWFyZ2luOiAtMzA5cHggMCAzLjVyZW0gY2FsYyg1MCUgLSA1MHZ3KSAhaW1wb3J0YW50O1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExOTBweCkge1xuICAgICAgICBtaW4taGVpZ2h0OiA1OTBweDsgXG4gICAgfVxuICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE5MHB4KSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDYwMHB4OyBcbiAgICB9XG4gICAgLndwLWJsb2NrLWNvdmVyX19pbm5lci1jb250YWluZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMUU0Mzg1O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcCB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjhweDsgXG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE5MHB4KSB7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDM5cHg7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE5MHB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDExMXB4O1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEzMHB4OyBcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAxMTFweCAxMTFweDtcbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7IFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgIH1cbiAgICAgICAgLndwLWJsb2NrLWdyb3VwIHtcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExOTBweCkge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogNDI0cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuc3RhZmYge1xuICAuZ3JpZC14IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxufVxuXG4uc3RhZmYtLW1lbWJlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luOiAwIDAgMnJlbSAwO1xufVxuLnN0YWZmLS1tZW1iZXIgaDQge1xuICBtYXJnaW46IDA7XG59XG4uc3RhZmYtLW1lbWJlciAuY2FyZCB7XG4gIGJvcmRlcjogdmFyKC0tYm9yZGVyLXRyYW5zcGFyZW50KTtcbn1cbi5zdGFmZi0tbWVtYmVyIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc3RhZmYtLW1lbWJlciBpbWcge1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc3RhZmYtLW1lbWJlciAuY2FyZC0tYmFja3VwIHtcbiAgICBoZWlnaHQ6IDM2LjRyZW07XG4gIH1cbn1cbi5zdGFmZi0tbWVtYmVyX19uYW1lIHtcbiAgY29sb3I6ICMxQjRFNzQ7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uc3RhZmYtLW1lbWJlcl9fdGl0bGUge1xuICBmb250LXNpemU6IDEuNnJlbTtcbiAgY29sb3I6ICM0MjRBNTU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uc3RhZmYtLW1lbWJlcl9fZW1haWwge1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgY29sb3I6ICNBQkFFQjQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG59XG4uc3RhZmYtLW1lbWJlcl9fZW1haWw6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC01cHg7XG4gIGxlZnQ6IDUwJTtcbiAgYmFja2dyb3VuZDogbm9uZSByZXBlYXQgc2Nyb2xsIDAgMCB0cmFuc3BhcmVudDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMnB4O1xuICB3aWR0aDogMDtcbiAgYmFja2dyb3VuZDogI0FCQUVCNDtcbiAgdHJhbnNpdGlvbjogd2lkdGggMC4zcyBlYXNlIDBzLCBsZWZ0IDAuM3MgZWFzZSAwcztcbn1cbi5zdGFmZi0tbWVtYmVyX19lbWFpbDpob3ZlciB7XG4gIGNvbG9yOiAjQUJBRUI0O1xufVxuLnN0YWZmLS1tZW1iZXJfX2VtYWlsOmhvdmVyOjphZnRlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBsZWZ0OiAwO1xufSIsIi5tYXJrZXRpbmctYmFubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogMzUwcHg7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMjtcbiAgbWFyZ2luOiAwIDAgMTNyZW0gMDtcbiAgJWJ1dHRvbiB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgbWF4LXdpZHRoOiAxMTEwcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgbWFyZ2luLXRvcDogNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxM3JlbTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMTByZW07XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAxNXB4O1xuICAgICAgbGVmdDogMTVweDtcbiAgICAgIHJpZ2h0OiAtMTVweDtcbiAgICAgIGJvdHRvbTogLTE1cHg7XG4gICAgICBib3JkZXI6IHZhcigtLWJvcmRlci1ncmV5KTtcbiAgICB9XG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MzlweCkge1xuICAgIC8vIG1heC1oZWlnaHQ6IDQwMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAmX19vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNjUsODcsMTA2LCAwLjgpO1xuICB9XG5cbiAgLmJhbm5lci1pbWd7XG4gICAgaW1ne1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgICAgbWF4LXdpZHRoOiAxMTEwcHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLWNvbnRlbnR7XG4gICAgbWFyZ2luOiAwIDZyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNnJlbTtcbiAgICB6LWluZGV4OiAxMDA7XG5cbiAgICBoMywgaDQge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIG1hcmdpbjogMCAwIDAgMDtcbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICBmb250LXNpemU6IDNyZW07XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICBmb250LXNpemU6IDMuNHJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBoNCB7XG4gICAgICBmb250LXNpemU6IDJyZW07XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICBmb250LXNpemU6IDIuNHJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgICB0b3A6IDlyZW07XG4gICAgfVxuICAgXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzUwcHgpIHtcbiAgICAgIHRvcDogMnJlbTtcbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTBweCkge1xuICAgICAgdG9wOiA0cmVtO1xuICAgIH1cbiAgICBcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MzlweCkge1xuICAgICAgbWFyZ2luOiAwIDJyZW07XG4gICAgfVxuXG4gICAgYnV0dG9uIHtcbiAgICAgIHdpZHRoOiAwO1xuICAgIH1cblxuICAgIC5idXR0b24tLW9yYW5nZXtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuXG4gICAgcHtcbiAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NDBweCkge1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgICBtYXJnaW46IDJyZW07XG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1MHB4KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgICAgbWFyZ2luOiA0cmVtIDE2cmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jb250ZW50LS1saW5rc3tcbiAgICAgIG1hcmdpbjogMnJlbSBhdXRvO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgIC5idXR0b24tLW9yYW5nZXtcbiAgICAgICAgd2lkdGg6IDEzcmVtO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1hcmtldGluZy1iYW5uZXItbGlua3tcbiAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgY29sb3I6ICRjb2xvci0tY2FybmF0aW9uO1xuICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgJjo6YWZ0ZXJ7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAtNXB4O1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmUgcmVwZWF0IHNjcm9sbCAwIDAgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci0tY2FybmF0aW9uO1xuICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCAwLjNzIGVhc2UgMHMsIGxlZnQgMC4zcyBlYXNlIDBzO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyOjphZnRlciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgfVxuICB9XG59XG5cbi5saW5rZWRpbi1mZWVkIHtcbiAgaDMge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICB9XG59XG4iLCIua2l0Y2hlbi1zaW5rLWhlYWRlciB7XG4gIEBpbmNsdWRlIHh5LWNlbGwoMTIpO1xufVxuXG5cbi5raXRjaGVuLXNpbmstY29tcG9uZW50cyB7XG4gIGhyIHtcbiAgICBtYXJnaW46IDNyZW0gMDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsKDEyKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsKDkpO1xuICB9XG59XG5cbi5raXRjaGVuLXNpbmstbmF2IHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbCgzKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogcmlnaHQ7XG5cbiAgICAuZG9jcy1zdWItbWVudSB7XG4gICAgICBmb250LXNpemU6IDAuODVyZW07XG4gICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIH1cblxuICAgIC5kb2NzLW1lbnUtdGl0bGUge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICBwYWRkaW5nLXRvcDogMS41cmVtO1xuICAgIH1cblxuICAgIC5kb2NzLXRvYyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmctbGVmdDogNHJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgfVxuXG4gICAgLmRvY3MtdG9jIC5hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZDogIzIxOTllODtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICB9XG5cbiAgICAuZG9jcy10b2MgLmRvY3Mtc3ViLW1lbnU6Zmlyc3QtY2hpbGQgLmRvY3MtbWVudS10aXRsZSB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIH1cbiAgfVxufVxuXG4ua2l0Y2hlbi1zaW5rLWdyaWQge1xuICAuZ3JpZC14IHtcbiAgICBiYWNrZ3JvdW5kOiAjZDZlY2ZhO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogMnJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgXG4gICAgLmNlbGwsOm50aC1jaGlsZChvZGQpIHtcbiAgICAgIGJhY2tncm91bmQ6ICM3YmMxZWY7XG4gICAgICBjb2xvcjogIzBhMGEwYTtcbiAgICB9XG5cbiAgICAuY2VsbDpudGgtY2hpbGQoZXZlbikge1xuICAgICAgYmFja2dyb3VuZDogIzE3NzliYTtcbiAgICAgIGNvbG9yOiAjZmVmZWZlO1xuICAgIH1cbiAgfVxufVxuIiwiI3NlYXJjaC1yZXN1bHRzIHtcbiAgLnNlYXJjaC0tYm94IHtcbiAgICBtYXJnaW46IDNyZW0gMDtcbiAgICBwYWRkaW5nOiAwIDAgMnJlbSAwO1xuICAgIGJvcmRlci1ib3R0b206IHZhcigtLWJvcmRlci1ncmV5KTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOiAwIDAgM3JlbSAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxNXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogMTVyZW07XG4gICAgICBtaW4taGVpZ2h0OiAxNXJlbTtcbiAgICB9XG5cbiAgICAmX19pdGVtIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICBvcmRlcjogMTtcbiAgICAgIH1cbiAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgb3JkZXI6IDM7XG4gICAgICB9XG4gICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgIG9yZGVyOiAyO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICB3aWR0aDogMjAlO1xuICAgICAgICB9XG4gICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICB9XG4gICAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICBvcmRlcjogMztcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnNlYXJjaC0taW1nIHtcbiAgICAgICAgbWFyZ2luOiAxcmVtIDA7XG4gICAgICAgIGhlaWdodDogMjEuNXJlbTtcbiAgICAgICAgd2lkdGg6IDI5LjVyZW07XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIGhlaWdodDogMTEuMnJlbTtcbiAgICAgICAgICB3aWR0aDogMTYuOXJlbTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDogNjdyZW07XG4gICAgICAgICAgdG9wOiAtMTEuNXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZGF0ZSB7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItLWNhcm5hdGlvbjtcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgfVxuXG4gICAgICBoNCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICB3aWR0aDogNDVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnRpdGxlIHtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIH1cblxuICAgICAgLmF1dGhvciB7XG4gICAgICAgIGNvbG9yOiAkZ3JleS0tZGFyaztcbiAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnBhZ2luYXRpb24ge1xuICAgIC5jdXJyZW50IHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci0tY2FybmF0aW9uO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIC8vcGFkZGluZzogMnB4IDEuMXJlbSA2cHg7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGZvbnQtc2l6ZTogMnJlbTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmVsbGlwc2lzIHtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxMjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW07XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRibGFjaztcbiAgICAgICAgd2lkdGg6IDMuNXJlbTtcbiAgICAgICAgaGVpZ2h0OiAzLjVyZW07XG4gICAgICAgIGxlZnQ6IC0ycHg7XG4gICAgICAgIHRvcDogM3B4O1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkY29sb3ItLWNhcm5hdGlvbjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGNvbG9yLS1jYXJuYXRpb247XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5wYWdpbmF0aW9uLW5leHQge1xuICAgICAgYSB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIlxcMjE5N1xcRkUwRVwiO1xuICAgICAgICAgIG1hcmdpbjogMHJlbSAwcmVtIDAgLTFyZW07XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnBhZ2luYXRpb24tcHJldmlvdXMge1xuICAgICAgYSB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogXCJcXDIxOTdcXEZFMEVcIjtcbiAgICAgICAgICBtYXJnaW46IDByZW0gMHJlbSAwIC0wLjVyZW07XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMjI1ZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uc2VhcmNoLS1iYW5uZXIge1xuICBwYWRkaW5nOiAyMnJlbSAwO1xuXG4gICZfX3Jlc3VsdHMge1xuICAgIG1hcmdpbjogLTlyZW0gMCAwIDA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBtYXJnaW46IC02cmVtIDAgMCAwO1xuICAgIH1cblxuICAgIC5zZWFyY2gtZm9ybSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxLjVweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIHdpZHRoOiA0MCU7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMXJlbSAxOXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXTpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuXG4gICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogODAlO1xuICAgICAgICB0b3A6IDQuNXJlbTtcbiAgICAgICAgei1pbmRleDogMTA7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIGxlZnQ6IDUzLjUlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnJlc3VsdHMtc2hvdyB7XG4gICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIG1hcmdpbjogMCAwIDFyZW0gMTJyZW07XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMXJlbSAxOXJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubWFnbmlmeWluZy1nbGFzc19fY29udGFpbmVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDgwJTtcbiAgICAgIHRvcDogNC41cmVtO1xuICAgICAgei1pbmRleDogMTtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBsZWZ0OiA1My41JTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubWFnbmlmeWluZy1nbGFzcyB7XG4gICAgICBmb250LXNpemU6IDIuNWVtO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDAuNGVtO1xuICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgICBoZWlnaHQ6IDAuNGVtO1xuICAgICAgYm9yZGVyOiAwLjFlbSBzb2xpZCAkd2hpdGU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjM1ZW07XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogLTAuMjVlbTtcbiAgICAgICAgYm90dG9tOiAtMC4xZW07XG4gICAgICAgIGJvcmRlci13aWR0aDogMDtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICB3aWR0aDogMC4zNWVtO1xuICAgICAgICBoZWlnaHQ6IDAuMDhlbTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4jc2VhcmNoLXJlc3VsdHMgLnBhZ2luYXRpb24gbGkucGFnaW5hdGlvbi1uZXh0IGEsXG4jc2VhcmNoLXJlc3VsdHMgLnBhZ2luYXRpb24gbGkucGFnaW5hdGlvbi1wcmV2aW91cyBhIHtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG59XG4jc2VhcmNoLXJlc3VsdHMgLnBhZ2luYXRpb24gbGkucGFnaW5hdGlvbi1wcmV2aW91cyBhOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4vaW1hZ2VzL2Fycm93cy9hcnJvdy0tYmxhY2suc3ZnXCIpIGNlbnRlciBuby1yZXBlYXQ7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgY29udGVudDogJyc7IFxuICBoZWlnaHQ6IDI1cHg7XG4gIHdpZHRoOiAyNXB4O1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyBcbn1cbiNzZWFyY2gtcmVzdWx0cyAucGFnaW5hdGlvbiBsaS5wYWdpbmF0aW9uLW5leHQgYTphZnRlciB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4vaW1hZ2VzL2Fycm93cy9hcnJvdy0tYmxhY2suc3ZnXCIpIGNlbnRlciBuby1yZXBlYXQ7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgY29udGVudDogJyc7IFxuICBoZWlnaHQ6IDI1cHg7XG4gIHdpZHRoOiAyNXB4O1xufVxuXG4ucGFnaW5hdGlvbiAuZWxsaXBzaXM6YWZ0ZXIge1xuICBoZWlnaHQ6IDQwcHg7XG4gIHdpZHRoOiA0MHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyOiAycHggc29saWQgIzAwMDtcbn1cbiIsIi5wYWdlLW5vdC1mb3VuZHtcbiAgbWFyZ2luOiA1cmVtIDA7XG5cbiAgJl9fdGV4dHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMzFyZW0gMCAwIDA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgIGZvbnQtc2l6ZTogMi40cmVtO1xuICAgIH1cbiAgfVxuXG4gICZfX2ltYWdle1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi9pbWFnZXMvYmFja2dyb3VuZHMvNDA0LmpwZycpO1xuICAgIGhlaWdodDogNTAwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgbWFyZ2luOiAwIDZyZW07XG4gICAgfVxuXG4gICAgYnV0dG9ue1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiAzcmVtIGF1dG87XG5cbiAgICAgICY6aG92ZXJ7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5wYWdlLWNvbnRlbnQtLW5vbmV7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgIGhlaWdodDogMzB2aDtcbiAgfVxufVxuIiwiJGFydC0tdHJhbnNpdGlvbi1zcGVlZDogMC4zcztcblxuLmFydC1jb250YWluZXJ7XG4gIHBhZGRpbmctdG9wOiAycmVtO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcjtcbiAgfVxuICAgIC5hcnQtZ3JpZHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZCgpO1xuICAgICAgfVxuICAgICAgLmFydC1jb250ZW50e1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbCgxMik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG59XG5cbiNhcnRfX2NvbXBldGl0aW9uLS1tYXNvbnJ5e1xuICBjb2x1bW4tY291bnQ6IDI7XG4gIGNvbHVtbi1nYXA6IDA7XG4gIG1hcmdpbjogMCAxcmVtO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICBjb2x1bW4tY291bnQ6IDM7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICBjb2x1bW4tY291bnQ6IDQ7XG4gICAgY29sdW1uLWdhcDogMXJlbTtcbiAgfVxuXG4gIC5hcnRfX2NvbXBldGl0aW9uLS1pdGVte1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIHdpZHRoOiA1MCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgICB3aWR0aDogMzMuMzMlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgd2lkdGg6IDI1JTtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIC5pdGVtLS1jb250ZW50e1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuXG4gICAgICAuYXJ0X19jb21wZXRpdGlvbi0tY29udGFpbmVyIGltZyB7XG4gICAgICAgIGJvcmRlcjogNXB4IHNvbGlkICRjb2xvci0tY2FybmF0aW9uO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6Zm9jdXMsICY6YWN0aXZle1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbiAgICAuYXJ0X19jb21wZXRpdGlvbi0tY29udGFpbmVye1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgaW1nIHtcbiAgICAgICAgYm9yZGVyOiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIHRyYW5zaXRpb246IGJvcmRlciAkYXJ0LS10cmFuc2l0aW9uLXNwZWVkIGVhc2U7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLml0ZW0tLWNvbnRlbnR7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItLWNhcm5hdGlvbjtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICRhcnQtLXRyYW5zaXRpb24tc3BlZWQgZWFzZTtcblxuXG4gICAgICBwe1xuICAgICAgICBtYXJnaW46IC0wLjVyZW0gMCAwIDFyZW07XG4gICAgICB9XG5cbiAgICAgICZfX3RoaW57XG4gICAgICAgIGZvbnQtc2l6ZTogMS44cmVtXG4gICAgICB9XG5cbiAgICAgICZfX3RoaWNre1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICB9XG5cbiAgICAgICZfX3RoZW57XG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtXG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5hcnRfX21vZGFsLS1yZXZlYWx7XG4gIGRpc3BsYXk6ICBub25lO1xuICAmOnRhcmdldCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgICB6LWluZGV4OiAxNDA7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAmOnRhcmdldCB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC44KTtcbiAgICB9XG4gIH1cbn1cbi5hcnRfX21vZGFse1xuICBtYXJnaW46IDEwcmVtIDJyZW0gMCAycmVtO1xuXG4gICY6YWN0aXZlLCAmOmZvY3Vze1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgbWFyZ2luOiAxMHJlbSAyMHJlbSAwIDIwcmVtO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgLy8gbWFyZ2luOiAxMHJlbSA0NXJlbSAwIDQ1cmVtO1xuICAgIG1hcmdpbjogMCA0NXJlbTtcbiAgfVxuXG4gIGltZ3tcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgIG1heC13aWR0aDogNDB2dztcbiAgICAgIG1heC1oZWlnaHQ6IDgwdmg7XG4gICAgfVxuICB9XG5cbiAgcHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIG1hcmdpbjogLTAuNXJlbSAwIDAgMDtcbiAgfVxuXG4gIC5tb2RhbC0tY29udGVudC0tdGl0bGV7XG4gICAgZm9udC1zaXplOiAyLjRyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cblxuICAuYXJ0X19tb2RhbC0tY29udGVudHtcblxuICAgIC5tb2RhbC0tY29udGVudC0tdGhpbntcbiAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgIH1cblxuICAgIC5tb2RhbC0tY29udGVudC0tdGhpY2t7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgfVxuXG4gICAgLm1vZGFsLS1jb250ZW50LS10aGVue1xuICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICBjb2xvcjogJGNvbG9yLS1jYXJuYXRpb247XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY29udGVudC0tY29udGFpbmVyLS1sZWZ0e1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jb250ZW50LS1jb250YWluZXItLXJpZ2h0e1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY2xvc2UtLWxpbmt7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuXG4gIC5jbG9zZS1idXR0b257XG4gICAgZm9udC1zaXplOiA0cmVtO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAtNHJlbTtcbiAgfVxufVxuXG4ucmV2ZWFsLW92ZXJsYXl7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAwLjcpO1xuICB9XG59XG5cbi5hbG0tYnRuLXdyYXB7XG4gICY6OmFmdGVye1xuICAgIGNvbnRlbnQ6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuYnV0dG9uLmxvYWRlci0td2hlZWx7XG5cbiAgJjo6YmVmb3JlLCAmOjphZnRlcntcbiAgICBjb250ZW50OiBub25lO1xuICB9XG59XG5cblxuLmxvYWRlci0td2hlZWwge1xuICBjb2xvcjogJGNvbG9yLS1zZWNvbmRhcnk7XG4gIGZvbnQtc2l6ZTogNXJlbTtcbiAgdGV4dC1pbmRlbnQ6IC05OTk5ZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxZW07XG4gIGhlaWdodDogMWVtO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG1hcmdpbjogNzJweCBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgYW5pbWF0aW9uOiBsb2FkNiAxLjdzIGluZmluaXRlIGVhc2UsIHJvdW5kIDEuN3MgaW5maW5pdGUgZWFzZTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cblxuXG4uYXJ0X19jb21wZXRpdGlvbi0tY29udHJvbHN7XG5cbiAgcHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAxLjhyZW07XG4gIH1cblxuICAuYXJ0X19jb21wZXRpdGlvbi0tc2VsZWN0e1xuICAgIHdpZHRoOiA1MCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIGF1dG8gMnJlbTtcbiAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTA7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBvcHRpb24ge1xuICAgICAgY29sb3I6ICRjb2xvci0tcHJpbWFyeTtcbiAgICB9XG4gIH1cblxuICAudWktZ3JvdXB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjo6YmVmb3Jle1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4vaW1hZ2VzL2JhY2tncm91bmRzL2RvdWJsZV9jaGV2cm9ucy5zdmcnKTtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBoZWlnaHQ6IDVyZW07XG4gICAgICB3aWR0aDogNXJlbTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDY5JTtcbiAgICAgIHRvcDogMS41cmVtO1xuICAgICAgei1pbmRleDogMDtcbiAgICB9XG4gIH1cblxufVxuIiwiLnBhZ2UtdGVtcGxhdGUtc3Vydml2aW5nLWluc2lkZS1jb25ncmVzcyB7XG4gICAgLm1haW4tY29udGVudCB1bCB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9kaXN0L2ltYWdlcy9jYXBfZG9tZS5zdmdcIikgbm8tcmVwZWF0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAxcHg7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9vdGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vZGlzdC9pbWFnZXMvYmFja2dyb3VuZHMvYmFja2dyb3VuZC1zdXJ2aXZpbmcucG5nXCIpIHRvcCBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDgwNXB4O1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSA2MDBweDtcbiAgICB9XG4gICAgLm5hdmlnYXRpb24tbW9iaWxlIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2E1MmUyOTtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwKSBpbnZlcnQoMSk7XG4gICAgICAgIH1cbiAgICAgICAgLm5hdmlnYXRpb24tbW9iaWxlX19oYW1idXJnZXIgLm5hdmlnYXRpb25fX2ljb24sXG4gICAgICAgIC5uYXZpZ2F0aW9uLW1vYmlsZV9faGFtYnVyZ2VyIC5uYXZpZ2F0aW9uX19pY29uOjpiZWZvcmUsXG4gICAgICAgIC5uYXZpZ2F0aW9uLW1vYmlsZV9faGFtYnVyZ2VyIC5uYXZpZ2F0aW9uX19pY29uOjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLm5hdmlnYXRpb24ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjYTUyZTI5O1xuICAgICAgICAubmF2aWdhdGlvbi1kZXNrdG9wIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgICAgICAubmF2aWdhdGlvbi1kZXNrdG9wX19saXN0IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgLm5hdmlnYXRpb25fX2l0ZW0taW1nIHtcbiAgICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwKSBpbnZlcnQoMSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLm5hdmlnYXRpb24tLXNlYXJjaCB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgfVxuICAgIC5uYXZpZ2F0aW9uLW1lbnUgLm5hdmlnYXRpb25fX2l0ZW0gLnRpdGxlIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gICAgLm5hdmlnYXRpb24tbWVudSBpbWcge1xuICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMCkgaW52ZXJ0KDEpO1xuICAgIH1cbiAgICAubmF2aWdhdGlvbi1tZW51IC5uYXZpZ2F0aW9uX19pdGVtOmhvdmVyIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gICAgLm5hdmlnYXRpb24gLm5hdmlnYXRpb24tZGVza3RvcF9fbGlzdCAubmF2aWdhdGlvbl9fbGluayB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuICAgIC5uYXZpZ2F0aW9uLS1zZWFyY2hfX2Zvcm0gLm1hZ25pZnlpbmctZ2xhc3MtY29udGFpbmVyIC5tYWduaWZ5aW5nLWdsYXNzOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgfVxuICAgIC5uYXZpZ2F0aW9uLS1zZWFyY2hfX2Zvcm0gLm1hZ25pZnlpbmctZ2xhc3MtY29udGFpbmVyIC5tYWduaWZ5aW5nLWdsYXNzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkd2hpdGU7XG4gICAgfVxuICAgIC5tYWluLWNvbnRhaW5lciB7XG4gICAgfVxuICAgIC5tYWluLWdyaWQgLm1haW4tY29udGVudCB1bCxcbiAgICAubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQgb2wgLm1haW4tZ3JpZCAubWFpbi1jb250ZW50IHAge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgICAubWFpbi1ncmlkXG4gICAgICAgIC5tYWluLWNvbnRlbnRcbiAgICAgICAgLmVudHJ5LWNvbnRlbnRcbiAgICAgICAgLnBmLWNvbnRlbnRcbiAgICAgICAgPiA6bm90KGFydGljbGUpOm5vdChibG9ja3F1b3RlKTpub3QoZmlndXJlKTpub3QodWwpOm5vdCgud3AtYmxvY2staW1hZ2UpOm5vdCgud3AtYmxvY2stcXVlcnkpIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDg1cHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG4gICAgLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICB9XG4gICAgfVxuICAgIC53cC1ibG9jay1saXN0IHtcbiAgICAgICAgbGlzdC1zdHlsZTogZGlzYztcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzN3B4O1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5tLXN1cnZpdmluZyB7XG4gICAgJl9faW50cm8ge1xuICAgICAgICBtYXgtd2lkdGg6IDEwODBweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGdhcDogMTAwcHg7XG4gICAgICAgIG1hcmdpbjogMTg1cHggYXV0byBhdXRvICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA3MHB4KSB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2E1MmUyOTtcbiAgICAgICAgICAgIG1hcmdpbjogMTg1cHggMCA3MHB4IGNhbGMoNTAlIC0gNTB2dykgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDB2dyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogNTBweDtcbiAgICAgICAgICAgIGdhcDogNTBweDtcbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHdoaXRlO1xuICAgICAgICB9XG4gICAgICAgIHAuaGFzLXRleHQtYWxpZ24tY2VudGVyIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMzY2cHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgfVxuICAgICAgICBmaWd1cmUge1xuICAgICAgICAgICAgbWFyZ2luOiAtNTBweDtcbiAgICAgICAgfVxuICAgICAgICAud3AtYmxvY2stYnV0dG9ucyB7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYgPiAud3AtYmxvY2stYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBoMSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNDZweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTA1cHgpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDQwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBwLFxuICAgICAgICBoMSxcbiAgICAgICAgaDIge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgICAgICB9XG4gICAgfVxuICAgICZfX2Jvb2sge1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDcwcHgpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC05MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLndwLWJsb2NrLWNvbHVtbnMge1xuICAgICAgICAgICAgZ2FwOiAxMDBweDtcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNzBweCkge1xuICAgICAgICAgICAgICAgIGdhcDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDUzMHB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gMjBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM5ZDJjMjg7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogIzlkMmMyODtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBociB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCA1MHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgICZfX2Z1bGwge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMHZ3ICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAxMDB2dyAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgMCAwIGNhbGMoNTAlIC0gNTB2dykgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogOTBweDtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vc3JjL2ltYWdlcy9iYWNrZ3JvdW5kcy9iYWNrZ3JvdW5kX3N1cnZpdmluZ19ibHVlLmpwZ1wiKSB0b3AgcmlnaHQgbm8tcmVwZWF0ICNmMWVlZTg7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA3MHB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nOiA1MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDg3NXB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDU1cHg7XG4gICAgICAgIH1cbiAgICAgICAgLndwLWJsb2NrLWdyb3VwIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTA4NXB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIH1cbiAgICB9XG4gICAgJl9fdGFsa2luZyB7XG4gICAgICAgIGdhcDogMTcwcHg7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNzBweCkge1xuICAgICAgICAgICAgZ2FwOiA1MHB4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tbGVmdCB7XG4gICAgICAgICAgICAud3AtYmxvY2stZ3JvdXBfX2lubmVyLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMjVweDtcbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi0tcmlnaHQge1xuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBmaWd1cmUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNDdweDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDMwcHggMDtcbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICZfX2NpdGUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyM3B4O1xuICAgICAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCLigJRcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogLTIzcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJl9fY2l0YXRpb24ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyM3B4O1xuICAgICAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCLigJRcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogLTIzcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJl9fcXVvdGUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNzBweCkge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA5MCU7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwi4oCcXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IC03MHB4O1xuICAgICAgICAgICAgbGVmdDogLTUwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDEyMXB4O1xuICAgICAgICAgICAgY29sb3I6ICNiZmJmYmY7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi1jb3ZlciB7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNzBweCkge1xuICAgICAgICAgICAgJl9fZGVza3RvcCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDcwcHgpIHtcbiAgICAgICAgICAgICZfX21vYmlsZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmX19mb3JtIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmVkO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMHZ3ICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAxMDB2dyAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgMCAwIGNhbGMoNTAlIC0gNTB2dykgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMTE4cHggNTBweDtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vc3JjL2ltYWdlcy9iYWNrZ3JvdW5kcy9iYWNrZ3JvdW5kLXN1cnZpdmluZzIuanBnXCIpIHRvcCByaWdodCBuby1yZXBlYXQgI2YxZWVlODtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA3MHB4KSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9zcmMvaW1hZ2VzL2JhY2tncm91bmRzL2JhY2tncm91bmRfc3Vydml2aW5nMi1tb2JpbGUuanBnXCIpIHRvcCByaWdodCBuby1yZXBlYXQgI2YxZWVlODtcbiAgICAgICAgICAgIHBhZGRpbmc6IDUwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLndwLWJsb2NrLWNvbHVtbnMge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDg1cHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgfVxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZzogNXB4IDE1cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICB9XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgICAgICAmLmdmb3JtX3RpdGxlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGZvcm0ge1xuICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5nZm9ybV9mb290ZXIgLnRvcF9sYWJlbCB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRibGFjaztcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICMwMDA7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJlt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLmxpbmtlZGluLWZlZWQge1xuICBtYXgtd2lkdGg6IDEwMjRweDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuXG4gIGJ1dHRvbjo6YmVmb3JlLFxuICAuYnV0dG9uOjpiZWZvcmUsXG4gIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YmVmb3JlLFxuICBidXR0b246OmFmdGVyLFxuICAuYnV0dG9uOjphZnRlcixcbiAgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIl19 */
