@charset "UTF-8";
/**
 * Foundation for Sites
 * Version 6.9.0
 * https://get.foundation
 * Licensed under MIT Open Source
 */
@media print, screen and (min-width: 40.0625em) {
  .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: 0;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

b,
strong {
  font-weight: bolder;
}

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

small {
  font-size: 80%;
}

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

img {
  border-style: none;
}

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

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

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

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

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

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

legend {
  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;
}

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

[draggable=false] {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
}

.foundation-mq {
  font-family: "small=0em&medium=40.0625em&large=64em&xlarge=75em&xxlarge=90em";
}

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

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

body {
  margin: 0;
  padding: 0;
  background: #fefefe;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
  font-weight: normal;
  line-height: 1.5;
  color: #0a0a0a;
  -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;
}

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

pre {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

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

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

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

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

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

.cell {
  flex: 0 0 auto;
  min-height: 0;
  min-width: 0;
  width: 100%;
}
.cell.auto {
  flex: 1 1 0;
}
.cell.shrink {
  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 {
  flex-basis: auto;
}

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

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

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

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

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

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

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

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

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

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

@media print, screen and (min-width: 40.0625em) {
  .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% - 1.875rem);
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media print, screen and (min-width: 40.0625em) {
  .medium-offset-0 {
    margin-left: 0%;
  }
  .grid-margin-x > .medium-offset-0 {
    margin-left: calc(0% + 1.875rem / 2);
  }
  .medium-offset-1 {
    margin-left: 8.3333333333%;
  }
  .grid-margin-x > .medium-offset-1 {
    margin-left: calc(8.3333333333% + 1.875rem / 2);
  }
  .medium-offset-2 {
    margin-left: 16.6666666667%;
  }
  .grid-margin-x > .medium-offset-2 {
    margin-left: calc(16.6666666667% + 1.875rem / 2);
  }
  .medium-offset-3 {
    margin-left: 25%;
  }
  .grid-margin-x > .medium-offset-3 {
    margin-left: calc(25% + 1.875rem / 2);
  }
  .medium-offset-4 {
    margin-left: 33.3333333333%;
  }
  .grid-margin-x > .medium-offset-4 {
    margin-left: calc(33.3333333333% + 1.875rem / 2);
  }
  .medium-offset-5 {
    margin-left: 41.6666666667%;
  }
  .grid-margin-x > .medium-offset-5 {
    margin-left: calc(41.6666666667% + 1.875rem / 2);
  }
  .medium-offset-6 {
    margin-left: 50%;
  }
  .grid-margin-x > .medium-offset-6 {
    margin-left: calc(50% + 1.875rem / 2);
  }
  .medium-offset-7 {
    margin-left: 58.3333333333%;
  }
  .grid-margin-x > .medium-offset-7 {
    margin-left: calc(58.3333333333% + 1.875rem / 2);
  }
  .medium-offset-8 {
    margin-left: 66.6666666667%;
  }
  .grid-margin-x > .medium-offset-8 {
    margin-left: calc(66.6666666667% + 1.875rem / 2);
  }
  .medium-offset-9 {
    margin-left: 75%;
  }
  .grid-margin-x > .medium-offset-9 {
    margin-left: calc(75% + 1.875rem / 2);
  }
  .medium-offset-10 {
    margin-left: 83.3333333333%;
  }
  .grid-margin-x > .medium-offset-10 {
    margin-left: calc(83.3333333333% + 1.875rem / 2);
  }
  .medium-offset-11 {
    margin-left: 91.6666666667%;
  }
  .grid-margin-x > .medium-offset-11 {
    margin-left: calc(91.6666666667% + 1.875rem / 2);
  }
}
@media print, screen and (min-width: 64em) {
  .large-offset-0 {
    margin-left: 0%;
  }
  .grid-margin-x > .large-offset-0 {
    margin-left: calc(0% + 1.875rem / 2);
  }
  .large-offset-1 {
    margin-left: 8.3333333333%;
  }
  .grid-margin-x > .large-offset-1 {
    margin-left: calc(8.3333333333% + 1.875rem / 2);
  }
  .large-offset-2 {
    margin-left: 16.6666666667%;
  }
  .grid-margin-x > .large-offset-2 {
    margin-left: calc(16.6666666667% + 1.875rem / 2);
  }
  .large-offset-3 {
    margin-left: 25%;
  }
  .grid-margin-x > .large-offset-3 {
    margin-left: calc(25% + 1.875rem / 2);
  }
  .large-offset-4 {
    margin-left: 33.3333333333%;
  }
  .grid-margin-x > .large-offset-4 {
    margin-left: calc(33.3333333333% + 1.875rem / 2);
  }
  .large-offset-5 {
    margin-left: 41.6666666667%;
  }
  .grid-margin-x > .large-offset-5 {
    margin-left: calc(41.6666666667% + 1.875rem / 2);
  }
  .large-offset-6 {
    margin-left: 50%;
  }
  .grid-margin-x > .large-offset-6 {
    margin-left: calc(50% + 1.875rem / 2);
  }
  .large-offset-7 {
    margin-left: 58.3333333333%;
  }
  .grid-margin-x > .large-offset-7 {
    margin-left: calc(58.3333333333% + 1.875rem / 2);
  }
  .large-offset-8 {
    margin-left: 66.6666666667%;
  }
  .grid-margin-x > .large-offset-8 {
    margin-left: calc(66.6666666667% + 1.875rem / 2);
  }
  .large-offset-9 {
    margin-left: 75%;
  }
  .grid-margin-x > .large-offset-9 {
    margin-left: calc(75% + 1.875rem / 2);
  }
  .large-offset-10 {
    margin-left: 83.3333333333%;
  }
  .grid-margin-x > .large-offset-10 {
    margin-left: calc(83.3333333333% + 1.875rem / 2);
  }
  .large-offset-11 {
    margin-left: 91.6666666667%;
  }
  .grid-margin-x > .large-offset-11 {
    margin-left: calc(91.6666666667% + 1.875rem / 2);
  }
}
.grid-y {
  display: flex;
  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 {
  flex-basis: auto;
}
@media print, screen and (min-width: 40.0625em) {
  .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 {
    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 {
    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 {
  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: 40.0625em) {
  .grid-y > .medium-auto {
    flex: 1 1 0;
    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 {
    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 {
    flex: 1 1 0;
    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 {
    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: -0.9375rem;
  margin-bottom: -0.9375rem;
}
@media print, screen and (min-width: 40.0625em) {
  .grid-padding-y .grid-padding-y {
    margin-top: -0.9375rem;
    margin-bottom: -0.9375rem;
  }
}
.grid-padding-y > .cell {
  padding-top: 0.9375rem;
  padding-bottom: 0.9375rem;
}
@media print, screen and (min-width: 40.0625em) {
  .grid-padding-y > .cell {
    padding-top: 0.9375rem;
    padding-bottom: 0.9375rem;
  }
}

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

.grid-frame {
  overflow: hidden;
  position: relative;
  flex-wrap: nowrap;
  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: flex;
  flex-direction: column;
  max-height: 100%;
}
.cell-block-container > .grid-x {
  max-height: 100%;
  flex-wrap: nowrap;
}

@media print, screen and (min-width: 40.0625em) {
  .medium-grid-frame {
    overflow: hidden;
    position: relative;
    flex-wrap: nowrap;
    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: flex;
    flex-direction: column;
    max-height: 100%;
  }
  .medium-cell-block-container > .grid-x {
    max-height: 100%;
    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;
    flex-wrap: nowrap;
    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: flex;
    flex-direction: column;
    max-height: 100%;
  }
  .large-cell-block-container > .grid-x {
    max-height: 100%;
    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 {
  overflow: hidden;
  position: relative;
  flex-wrap: nowrap;
  align-items: stretch;
  height: 100vh;
  width: auto;
}
@media print, screen and (min-width: 40.0625em) {
  .grid-y.medium-grid-frame {
    overflow: hidden;
    position: relative;
    flex-wrap: nowrap;
    align-items: stretch;
    height: 100vh;
    width: auto;
  }
}
@media print, screen and (min-width: 64em) {
  .grid-y.large-grid-frame {
    overflow: hidden;
    position: relative;
    flex-wrap: nowrap;
    align-items: stretch;
    height: 100vh;
    width: auto;
  }
}

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

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

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

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

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

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

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

h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", 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: #cacaca;
}

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

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

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

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

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

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

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

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

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

li {
  font-size: inherit;
}

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

ol {
  margin-left: 1.25rem;
}

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

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

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

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

figure {
  margin: 0;
}

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

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

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

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

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

.cite-block, cite {
  display: block;
  color: #8a8a8a;
  font-size: 0.8125rem;
}
.cite-block:before, cite:before {
  content: "— ";
}

.code-inline, code {
  border: 1px solid #cacaca;
  background-color: #e6e6e6;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: normal;
  color: #0a0a0a;
  display: inline;
  max-width: 100%;
  word-wrap: break-word;
  padding: 0.125rem 0.3125rem 0.0625rem;
}

.code-block {
  border: 1px solid #cacaca;
  background-color: #e6e6e6;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: normal;
  color: #0a0a0a;
  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: 40.0625em) {
  .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;
    -webkit-print-color-adjust: economy;
            print-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 #8a8a8a;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  @page {
    margin: 0.5cm;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
  .print-break-inside {
    page-break-inside: auto;
  }
}
.button {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 1rem 0;
  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;
  padding: 0.85em 1em;
}
[data-whatinput=mouse] .button {
  outline: 0;
}
.button.tiny {
  font-size: 0.6rem;
}
.button.small {
  font-size: 0.75rem;
}
.button.large {
  font-size: 1.25rem;
}
.button.expanded {
  display: block;
  width: 100%;
  margin-right: 0;
  margin-left: 0;
}
.button, .button.disabled, .button[disabled], .button.disabled:hover, .button[disabled]:hover, .button.disabled:focus, .button[disabled]:focus {
  background-color: #1779ba;
  color: #fefefe;
}
.button:hover, .button:focus {
  background-color: rgb(19.55, 102.85, 158.1);
  color: #fefefe;
}
.button.primary, .button.primary.disabled, .button.primary[disabled], .button.primary.disabled:hover, .button.primary[disabled]:hover, .button.primary.disabled:focus, .button.primary[disabled]:focus {
  background-color: #1779ba;
  color: #fefefe;
}
.button.primary:hover, .button.primary:focus {
  background-color: rgb(18.4, 96.8, 148.8);
  color: #fefefe;
}
.button.secondary, .button.secondary.disabled, .button.secondary[disabled], .button.secondary.disabled:hover, .button.secondary[disabled]:hover, .button.secondary.disabled:focus, .button.secondary[disabled]:focus {
  background-color: #767676;
  color: #fefefe;
}
.button.secondary:hover, .button.secondary:focus {
  background-color: rgb(94.4, 94.4, 94.4);
  color: #fefefe;
}
.button.success, .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: #0a0a0a;
}
.button.success:hover, .button.success:focus {
  background-color: rgb(34.2386266094, 187.3613733906, 91.3030042918);
  color: #0a0a0a;
}
.button.warning, .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: #0a0a0a;
}
.button.warning:hover, .button.warning:focus {
  background-color: rgb(204, 139.2, 0);
  color: #0a0a0a;
}
.button.alert, .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: #fefefe;
}
.button.alert:hover, .button.alert:focus {
  background-color: rgb(165.0996015936, 58.6103585657, 42.1003984064);
  color: #fefefe;
}
.button.hollow, .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, .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 #1779ba;
  color: #1779ba;
}
.button.hollow:hover, .button.hollow:focus {
  border-color: rgb(11.5, 60.5, 93);
  color: rgb(11.5, 60.5, 93);
}
.button.hollow.primary, .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 #1779ba;
  color: #1779ba;
}
.button.hollow.primary:hover, .button.hollow.primary:focus {
  border-color: rgb(11.5, 60.5, 93);
  color: rgb(11.5, 60.5, 93);
}
.button.hollow.secondary, .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 #767676;
  color: #767676;
}
.button.hollow.secondary:hover, .button.hollow.secondary:focus {
  border-color: #3b3b3b;
  color: #3b3b3b;
}
.button.hollow.success, .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, .button.hollow.success:focus {
  border-color: rgb(21.3991416309, 117.1008583691, 57.0643776824);
  color: rgb(21.3991416309, 117.1008583691, 57.0643776824);
}
.button.hollow.warning, .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, .button.hollow.warning:focus {
  border-color: rgb(127.5, 87, 0);
  color: rgb(127.5, 87, 0);
}
.button.hollow.alert, .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, .button.hollow.alert:focus {
  border-color: rgb(103.187250996, 36.6314741036, 26.312749004);
  color: rgb(103.187250996, 36.6314741036, 26.312749004);
}
.button.clear, .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, .button.clear.disabled, .button.clear[disabled], .button.clear.disabled:hover, .button.clear[disabled]:hover, .button.clear.disabled:focus, .button.clear[disabled]:focus {
  color: #1779ba;
}
.button.clear:hover, .button.clear:focus {
  color: rgb(11.5, 60.5, 93);
}
.button.clear.primary, .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: #1779ba;
}
.button.clear.primary:hover, .button.clear.primary:focus {
  color: rgb(11.5, 60.5, 93);
}
.button.clear.secondary, .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: #767676;
}
.button.clear.secondary:hover, .button.clear.secondary:focus {
  color: #3b3b3b;
}
.button.clear.success, .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, .button.clear.success:focus {
  color: rgb(21.3991416309, 117.1008583691, 57.0643776824);
}
.button.clear.warning, .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, .button.clear.warning:focus {
  color: rgb(127.5, 87, 0);
}
.button.clear.alert, .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, .button.clear.alert:focus {
  color: rgb(103.187250996, 36.6314741036, 26.312749004);
}
.button.disabled, .button[disabled] {
  opacity: 0.25;
  cursor: not-allowed;
}
.button.dropdown::after {
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0.4em;
  content: "";
  border-bottom-width: 0;
  border-color: #fefefe transparent transparent;
  position: relative;
  top: 0.4em;
  display: inline-block;
  float: right;
  margin-left: 1em;
}
.button.dropdown.hollow::after, .button.dropdown.clear::after {
  border-top-color: #1779ba;
}
.button.dropdown.hollow.primary::after, .button.dropdown.clear.primary::after {
  border-top-color: #1779ba;
}
.button.dropdown.hollow.secondary::after, .button.dropdown.clear.secondary::after {
  border-top-color: #767676;
}
.button.dropdown.hollow.success::after, .button.dropdown.clear.success::after {
  border-top-color: #3adb76;
}
.button.dropdown.hollow.warning::after, .button.dropdown.clear.warning::after {
  border-top-color: #ffae00;
}
.button.dropdown.hollow.alert::after, .button.dropdown.clear.alert::after {
  border-top-color: #cc4b37;
}
.button.arrow-only::after {
  top: -0.1em;
  float: none;
  margin-left: 0;
}

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

[type=text], [type=password], [type=date], [type=datetime], [type=datetime-local], [type=month], [type=week], [type=email], [type=number], [type=search], [type=tel], [type=time], [type=url], [type=color],
textarea {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 2.4375rem;
  margin: 0 0 1rem;
  padding: 0.5rem;
  border: 1px solid #cacaca;
  border-radius: 0;
  background-color: #fefefe;
  box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.1);
  font-family: inherit;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #0a0a0a;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
}
[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 #8a8a8a;
  background-color: #fefefe;
  box-shadow: 0 0 5px #cacaca;
  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: #e6e6e6;
  cursor: not-allowed;
}

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

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

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

::placeholder {
  color: #cacaca;
}

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

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

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

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

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

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

.input-group {
  display: flex;
  width: 100%;
  margin-bottom: 1rem;
  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 #cacaca;
  background: #e6e6e6;
  color: #0a0a0a;
  text-align: center;
  white-space: nowrap;
  display: flex;
  flex: 0 0 auto;
  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;
  flex: 1 1 0px;
  min-width: 0;
}

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

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

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

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

select {
  height: 2.4375rem;
  margin: 0 0 1rem;
  padding: 0.5rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 1px solid #cacaca;
  border-radius: 0;
  background-color: #fefefe;
  font-family: inherit;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #0a0a0a;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  background-origin: content-box;
  background-position: right -1rem center;
  background-repeat: no-repeat;
  background-size: 9px 6px;
  padding-right: 1.5rem;
  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%28138, 138, 138%29"></polygon></svg>');
}
@media screen and (min-width: 0\0 ) {
  select {
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg==");
  }
}
select:focus {
  outline: none;
  border: 1px solid #8a8a8a;
  background-color: #fefefe;
  box-shadow: 0 0 5px #cacaca;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
}
select:disabled {
  background-color: #e6e6e6;
  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: rgb(249, 236.1, 234.1);
}
.is-invalid-input:not(:focus)::-moz-placeholder {
  color: #cc4b37;
}
.is-invalid-input:not(:focus)::placeholder {
  color: #cc4b37;
}

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

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

.accordion {
  margin-left: 0;
  background: #fefefe;
  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 #e6e6e6;
  border-bottom: 0;
  font-size: 0.75rem;
  line-height: 1;
  color: #1779ba;
}
:last-child:not(.is-active) > .accordion-title {
  border-bottom: 1px solid #e6e6e6;
  border-radius: 0 0 0 0;
}
.accordion-title:hover, .accordion-title:focus {
  background-color: #e6e6e6;
}
.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 #e6e6e6;
  border-bottom: 0;
  background-color: #fefefe;
  color: #0a0a0a;
}
:last-child > .accordion-content:last-child {
  border-bottom: 1px solid #e6e6e6;
}

.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-style: solid;
  border-width: 6px;
  content: "";
  border-bottom-width: 0;
  border-color: #fefefe 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 {
  transform: rotate(180deg);
  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-style: solid;
  border-width: 6px;
  content: "";
  border-bottom-width: 0;
  border-color: #fefefe transparent transparent;
  top: 0;
  bottom: 0;
  margin: auto;
}

.submenu-toggle[aria-expanded=true]::after {
  transform: scaleY(-1);
  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: #1779ba;
  color: #fefefe;
}
.badge.primary {
  background: #1779ba;
  color: #fefefe;
}
.badge.secondary {
  background: #767676;
  color: #fefefe;
}
.badge.success {
  background: #3adb76;
  color: #0a0a0a;
}
.badge.warning {
  background: #ffae00;
  color: #0a0a0a;
}
.badge.alert {
  background: #cc4b37;
  color: #fefefe;
}

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

.button-group {
  margin-bottom: 1rem;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  flex-grow: 1;
}
.button-group::before, .button-group::after {
  display: none;
}
.button-group::before, .button-group::after {
  display: table;
  content: " ";
  flex-basis: 0;
  order: 1;
}
.button-group::after {
  clear: both;
}
.button-group .button {
  margin: 0;
  margin-right: 1px;
  margin-bottom: 1px;
  font-size: 0.9rem;
  flex: 0 0 auto;
}
.button-group .button:last-child {
  margin-right: 0;
}
.button-group.tiny .button {
  font-size: 0.6rem;
}
.button-group.small .button {
  font-size: 0.75rem;
}
.button-group.large .button {
  font-size: 1.25rem;
}
.button-group.expanded .button {
  flex: 1 1 0px;
}
.button-group.primary .button, .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: #1779ba;
  color: #fefefe;
}
.button-group.primary .button:hover, .button-group.primary .button:focus {
  background-color: rgb(18.4, 96.8, 148.8);
  color: #fefefe;
}
.button-group.secondary .button, .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: #767676;
  color: #fefefe;
}
.button-group.secondary .button:hover, .button-group.secondary .button:focus {
  background-color: rgb(94.4, 94.4, 94.4);
  color: #fefefe;
}
.button-group.success .button, .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: #0a0a0a;
}
.button-group.success .button:hover, .button-group.success .button:focus {
  background-color: rgb(34.2386266094, 187.3613733906, 91.3030042918);
  color: #0a0a0a;
}
.button-group.warning .button, .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: #0a0a0a;
}
.button-group.warning .button:hover, .button-group.warning .button:focus {
  background-color: rgb(204, 139.2, 0);
  color: #0a0a0a;
}
.button-group.alert .button, .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: #fefefe;
}
.button-group.alert .button:hover, .button-group.alert .button:focus {
  background-color: rgb(165.0996015936, 58.6103585657, 42.1003984064);
  color: #fefefe;
}
.button-group.hollow .button, .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, .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 #1779ba;
  color: #1779ba;
}
.button-group.hollow .button:hover, .button-group.hollow .button:focus {
  border-color: rgb(11.5, 60.5, 93);
  color: rgb(11.5, 60.5, 93);
}
.button-group.hollow.primary .button, .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, .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 #1779ba;
  color: #1779ba;
}
.button-group.hollow.primary .button:hover, .button-group.hollow.primary .button:focus, .button-group.hollow .button.primary:hover, .button-group.hollow .button.primary:focus {
  border-color: rgb(11.5, 60.5, 93);
  color: rgb(11.5, 60.5, 93);
}
.button-group.hollow.secondary .button, .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, .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 #767676;
  color: #767676;
}
.button-group.hollow.secondary .button:hover, .button-group.hollow.secondary .button:focus, .button-group.hollow .button.secondary:hover, .button-group.hollow .button.secondary:focus {
  border-color: #3b3b3b;
  color: #3b3b3b;
}
.button-group.hollow.success .button, .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, .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, .button-group.hollow.success .button:focus, .button-group.hollow .button.success:hover, .button-group.hollow .button.success:focus {
  border-color: rgb(21.3991416309, 117.1008583691, 57.0643776824);
  color: rgb(21.3991416309, 117.1008583691, 57.0643776824);
}
.button-group.hollow.warning .button, .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, .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, .button-group.hollow.warning .button:focus, .button-group.hollow .button.warning:hover, .button-group.hollow .button.warning:focus {
  border-color: rgb(127.5, 87, 0);
  color: rgb(127.5, 87, 0);
}
.button-group.hollow.alert .button, .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, .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, .button-group.hollow.alert .button:focus, .button-group.hollow .button.alert:hover, .button-group.hollow .button.alert:focus {
  border-color: rgb(103.187250996, 36.6314741036, 26.312749004);
  color: rgb(103.187250996, 36.6314741036, 26.312749004);
}
.button-group.clear .button, .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 .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: #1779ba;
}
.button-group.clear .button:hover, .button-group.clear .button:focus {
  color: rgb(11.5, 60.5, 93);
}
.button-group.clear.primary .button, .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 .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: #1779ba;
}
.button-group.clear.primary .button:hover, .button-group.clear.primary .button:focus, .button-group.clear .button.primary:hover, .button-group.clear .button.primary:focus {
  color: rgb(11.5, 60.5, 93);
}
.button-group.clear.secondary .button, .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 .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: #767676;
}
.button-group.clear.secondary .button:hover, .button-group.clear.secondary .button:focus, .button-group.clear .button.secondary:hover, .button-group.clear .button.secondary:focus {
  color: #3b3b3b;
}
.button-group.clear.success .button, .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 .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 .button:focus, .button-group.clear .button.success:hover, .button-group.clear .button.success:focus {
  color: rgb(21.3991416309, 117.1008583691, 57.0643776824);
}
.button-group.clear.warning .button, .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 .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 .button:focus, .button-group.clear .button.warning:hover, .button-group.clear .button.warning:focus {
  color: rgb(127.5, 87, 0);
}
.button-group.clear.alert .button, .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 .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 .button:focus, .button-group.clear .button.alert:hover, .button-group.clear .button.alert:focus {
  color: rgb(103.187250996, 36.6314741036, 26.312749004);
}
.button-group.no-gaps .button {
  margin-right: -0.0625rem;
}
.button-group.no-gaps .button + .button {
  border-left-color: transparent;
}
.button-group.stacked, .button-group.stacked-for-small, .button-group.stacked-for-medium {
  flex-wrap: wrap;
}
.button-group.stacked .button, .button-group.stacked-for-small .button, .button-group.stacked-for-medium .button {
  flex: 0 0 100%;
}
.button-group.stacked .button:last-child, .button-group.stacked-for-small .button:last-child, .button-group.stacked-for-medium .button:last-child {
  margin-bottom: 0;
}
.button-group.stacked.expanded .button, .button-group.stacked-for-small.expanded .button, .button-group.stacked-for-medium.expanded .button {
  flex: 1 1 0px;
}
@media print, screen and (min-width: 40.0625em) {
  .button-group.stacked-for-small .button {
    flex: 0 0 auto;
    margin-bottom: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .button-group.stacked-for-medium .button {
    flex: 0 0 auto;
    margin-bottom: 0;
  }
}
@media print, screen and (max-width: 40.06125em) {
  .button-group.stacked-for-small.expanded {
    display: block;
  }
  .button-group.stacked-for-small.expanded .button {
    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 {
    display: block;
    margin-right: 0;
  }
}

.callout {
  background-color: rgb(254.85, 254.85, 254.85);
  color: #0a0a0a;
  position: relative;
  margin: 0 0 1rem 0;
  padding: 1rem;
  border: 1px solid rgba(10, 10, 10, 0.25);
  border-radius: 0;
}
.callout > :first-child {
  margin-top: 0;
}
.callout > :last-child {
  margin-bottom: 0;
}
.callout.primary {
  background-color: rgb(214.8186602871, 235.9894736842, 250.0313397129);
  color: #0a0a0a;
}
.callout.secondary {
  background-color: rgb(234.45, 234.45, 234.45);
  color: #0a0a0a;
}
.callout.success {
  background-color: rgb(225.45, 249.6, 234.45);
  color: #0a0a0a;
}
.callout.warning {
  background-color: rgb(255, 242.85, 216.75);
  color: #0a0a0a;
}
.callout.alert {
  background-color: rgb(247.35, 228, 225);
  color: #0a0a0a;
}
.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: flex;
  flex-direction: column;
  flex-grow: 1;
  margin-bottom: 1rem;
  border: 1px solid #e6e6e6;
  border-radius: 0;
  background: #fefefe;
  box-shadow: none;
  overflow: hidden;
  color: #0a0a0a;
}
.card > :last-child {
  margin-bottom: 0;
}

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

.card-section {
  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: #8a8a8a;
  cursor: pointer;
}
[data-whatinput=mouse] .close-button {
  outline: 0;
}
.close-button:hover, .close-button:focus {
  color: #0a0a0a;
}
.close-button.small {
  right: 0.66rem;
  top: 0.33em;
  font-size: 1.5em;
  line-height: 1;
}

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

.menu {
  padding: 0;
  margin: 0;
  list-style: none;
  position: relative;
  display: flex;
  flex-wrap: wrap;
}
[data-whatinput=mouse] .menu li {
  outline: 0;
}
.menu a,
.menu .button {
  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 {
  flex-wrap: wrap;
  flex-direction: row;
}
.menu.vertical {
  flex-wrap: nowrap;
  flex-direction: column;
}
.menu.vertical.icon-top li a img,
.menu.vertical.icon-top li a i,
.menu.vertical.icon-top li a svg, .menu.vertical.icon-bottom li a img,
.menu.vertical.icon-bottom li a i,
.menu.vertical.icon-bottom li a svg {
  text-align: left;
}
.menu.expanded li {
  flex: 1 1 0px;
}
.menu.expanded.icon-top li a img,
.menu.expanded.icon-top li a i,
.menu.expanded.icon-top li a svg, .menu.expanded.icon-bottom li a img,
.menu.expanded.icon-bottom li a i,
.menu.expanded.icon-bottom li a svg {
  text-align: left;
}
.menu.simple {
  align-items: center;
}
.menu.simple li + li {
  margin-left: 1rem;
}
.menu.simple a {
  padding: 0;
}
@media print, screen and (min-width: 40.0625em) {
  .menu.medium-horizontal {
    flex-wrap: wrap;
    flex-direction: row;
  }
  .menu.medium-vertical {
    flex-wrap: nowrap;
    flex-direction: column;
  }
  .menu.medium-expanded li {
    flex: 1 1 0px;
  }
  .menu.medium-simple li {
    flex: 1 1 0px;
  }
}
@media print, screen and (min-width: 64em) {
  .menu.large-horizontal {
    flex-wrap: wrap;
    flex-direction: row;
  }
  .menu.large-vertical {
    flex-wrap: nowrap;
    flex-direction: column;
  }
  .menu.large-expanded li {
    flex: 1 1 0px;
  }
  .menu.large-simple li {
    flex: 1 1 0px;
  }
}
.menu.nested {
  margin-right: 0;
  margin-left: 1rem;
}
.menu.icons a {
  display: flex;
}
.menu.icon-top a, .menu.icon-right a, .menu.icon-bottom a, .menu.icon-left a {
  display: flex;
}
.menu.icon-left li a, .menu.nested.icon-left li a {
  flex-flow: row nowrap;
}
.menu.icon-left li a img,
.menu.icon-left li a i,
.menu.icon-left li a svg, .menu.nested.icon-left li a img,
.menu.nested.icon-left li a i,
.menu.nested.icon-left li a svg {
  margin-right: 0.25rem;
}
.menu.icon-right li a, .menu.nested.icon-right li a {
  flex-flow: row nowrap;
}
.menu.icon-right li a img,
.menu.icon-right li a i,
.menu.icon-right li a svg, .menu.nested.icon-right li a img,
.menu.nested.icon-right li a i,
.menu.nested.icon-right li a svg {
  margin-left: 0.25rem;
}
.menu.icon-top li a, .menu.nested.icon-top li a {
  flex-flow: column nowrap;
}
.menu.icon-top li a img,
.menu.icon-top li a i,
.menu.icon-top li a svg, .menu.nested.icon-top li a img,
.menu.nested.icon-top li a i,
.menu.nested.icon-top li a svg {
  align-self: stretch;
  margin-bottom: 0.25rem;
  text-align: center;
}
.menu.icon-bottom li a, .menu.nested.icon-bottom li a {
  flex-flow: column nowrap;
}
.menu.icon-bottom li a img,
.menu.icon-bottom li a i,
.menu.icon-bottom li a svg, .menu.nested.icon-bottom li a img,
.menu.nested.icon-bottom li a i,
.menu.nested.icon-bottom li a svg {
  align-self: stretch;
  margin-bottom: 0.25rem;
  text-align: center;
}
.menu .is-active > a {
  background: #1779ba;
  color: #fefefe;
}
.menu .active > a {
  background: #1779ba;
  color: #fefefe;
}
.menu.align-left {
  justify-content: flex-start;
}
.menu.align-right li {
  display: flex;
  justify-content: flex-end;
}
.menu.align-right li .submenu li {
  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.icon-top li a img,
.menu.align-right.icon-top li a i,
.menu.align-right.icon-top li a svg, .menu.align-right.icon-bottom li a img,
.menu.align-right.icon-bottom li a i,
.menu.align-right.icon-bottom li a svg {
  text-align: right;
}
.menu.align-right .nested {
  margin-right: 1rem;
  margin-left: 0;
}
.menu.align-center li {
  display: flex;
  justify-content: center;
}
.menu.align-center li .submenu li {
  justify-content: flex-start;
}
.menu .menu-text {
  padding: 0.7rem 1rem;
  font-weight: bold;
  line-height: 1;
  color: inherit;
}

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

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

.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: #fefefe;
}
.drilldown .is-drilldown-submenu {
  position: absolute;
  top: 0;
  left: 100%;
  z-index: -1;
  width: 100%;
  background: #fefefe;
  transition: transform 0.15s linear;
}
.drilldown .is-drilldown-submenu.is-active {
  z-index: 1;
  display: block;
  transform: translateX(-100%);
}
.drilldown .is-drilldown-submenu.is-closing {
  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-style: solid;
  border-width: 6px;
  content: "";
  border-right-width: 0;
  border-color: transparent transparent transparent #1779ba;
  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-style: solid;
  border-width: 6px;
  content: "";
  border-right-width: 0;
  border-color: transparent transparent transparent #1779ba;
  right: 1rem;
  left: auto;
}
.drilldown.align-right .is-drilldown-submenu-parent > a::after {
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px;
  content: "";
  border-left-width: 0;
  border-color: transparent #1779ba transparent transparent;
  right: auto;
  left: 1rem;
}
.drilldown .js-drilldown-back > a::before {
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px;
  content: "";
  border-left-width: 0;
  border-color: transparent #1779ba 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 #cacaca;
  border-radius: 0;
  background-color: #fefefe;
  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-style: solid;
  border-width: 6px;
  content: "";
  border-bottom-width: 0;
  border-color: #1779ba transparent transparent;
  right: 5px;
  left: auto;
  margin-top: -3px;
}
[data-whatinput=mouse] .dropdown.menu a {
  outline: 0;
}
.dropdown.menu > li > a {
  background: #fefefe;
  padding: 0.7rem 1rem;
}
.dropdown.menu > li.is-active > a {
  background: rgb(54.3888888889, 69.2222222222, 79.1111111111);
  color: #e6e6e6;
}
.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-style: solid;
  border-width: 6px;
  content: "";
  border-left-width: 0;
  border-color: transparent #1779ba transparent transparent;
  right: auto;
  left: 5px;
}
.dropdown.menu.vertical > li.opens-right > a::after {
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px;
  content: "";
  border-right-width: 0;
  border-color: transparent transparent transparent #1779ba;
}
@media print, screen and (min-width: 40.0625em) {
  .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-style: solid;
    border-width: 6px;
    content: "";
    border-bottom-width: 0;
    border-color: #1779ba 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-style: solid;
    border-width: 6px;
    content: "";
    border-left-width: 0;
    border-color: transparent #1779ba transparent transparent;
    right: auto;
    left: 5px;
  }
  .dropdown.menu.medium-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px;
    content: "";
    border-right-width: 0;
    border-color: transparent transparent transparent #1779ba;
  }
}
@media print, screen and (min-width: 64em) {
  .dropdown.menu.large-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto;
  }
  .dropdown.menu.large-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0;
  }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem;
  }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px;
    content: "";
    border-bottom-width: 0;
    border-color: #1779ba 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-style: solid;
    border-width: 6px;
    content: "";
    border-left-width: 0;
    border-color: transparent #1779ba transparent transparent;
    right: auto;
    left: 5px;
  }
  .dropdown.menu.large-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px;
    content: "";
    border-right-width: 0;
    border-color: transparent transparent transparent #1779ba;
  }
}
.dropdown.menu.align-right .is-dropdown-submenu.first-sub {
  top: 100%;
  right: 0;
  left: auto;
}

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

.is-dropdown-submenu-parent {
  position: relative;
}
.is-dropdown-submenu-parent a::after {
  position: absolute;
  top: 50%;
  right: 5px;
  left: auto;
  margin-top: -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 #cacaca;
  background: #fefefe;
}
.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-style: solid;
  border-width: 6px;
  content: "";
  border-left-width: 0;
  border-color: transparent #1779ba transparent transparent;
  right: auto;
  left: 5px;
}
.is-dropdown-submenu .is-dropdown-submenu-parent.opens-right > a::after {
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px;
  content: "";
  border-right-width: 0;
  border-color: transparent transparent transparent #1779ba;
}
.is-dropdown-submenu .is-dropdown-submenu {
  margin-top: -1px;
}
.is-dropdown-submenu > li {
  width: 100%;
}
.is-dropdown-submenu.js-dropdown-active {
  display: block;
}

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

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

.media-object {
  display: flex;
  margin-bottom: 1rem;
  flex-wrap: nowrap;
}
.media-object img {
  max-width: none;
}
@media print, screen and (max-width: 40.06125em) {
  .media-object.stack-for-small {
    flex-wrap: wrap;
  }
}

.media-object-section {
  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: 40.06125em) {
  .stack-for-small .media-object-section {
    padding: 0;
    padding-bottom: 1rem;
    flex-basis: 100%;
    max-width: 100%;
  }
  .stack-for-small .media-object-section img {
    width: 100%;
  }
}
.media-object-section.main-section {
  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(254, 254, 254, 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 {
  z-index: 12;
  transition: transform 0.5s ease;
  backface-visibility: hidden;
  background: #2C3840;
  position: fixed;
}
[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(10, 10, 10, 0.7);
}
.off-canvas.is-open {
  transform: translate(0, 0);
}

.off-canvas-absolute {
  z-index: 12;
  transition: transform 0.5s ease;
  backface-visibility: hidden;
  background: #2C3840;
  position: absolute;
}
[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(10, 10, 10, 0.7);
}
.off-canvas-absolute.is-open {
  transform: translate(0, 0);
}

.position-left {
  top: 0;
  left: 0;
  height: 100%;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  width: 280px;
  transform: translateX(-280px);
}
@media print, screen and (min-width: 40.0625em) {
  .position-left {
    width: 280px;
    transform: translateX(-280px);
  }
}
.off-canvas-content .off-canvas.position-left {
  transform: translateX(-280px);
}
@media print, screen and (min-width: 40.0625em) {
  .off-canvas-content .off-canvas.position-left {
    transform: translateX(-280px);
  }
}
.off-canvas-content .off-canvas.position-left.is-transition-overlap.is-open {
  transform: translate(0, 0);
}

.off-canvas-content.is-open-left.has-transition-push {
  transform: translateX(280px);
}
@media print, screen and (min-width: 40.0625em) {
  .off-canvas-content.is-open-left.has-transition-push {
    transform: translateX(280px);
  }
}

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

.position-right {
  top: 0;
  right: 0;
  height: 100%;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  width: 280px;
  transform: translateX(280px);
}
@media print, screen and (min-width: 40.0625em) {
  .position-right {
    width: 280px;
    transform: translateX(280px);
  }
}
.off-canvas-content .off-canvas.position-right {
  transform: translateX(280px);
}
@media print, screen and (min-width: 40.0625em) {
  .off-canvas-content .off-canvas.position-right {
    transform: translateX(280px);
  }
}
.off-canvas-content .off-canvas.position-right.is-transition-overlap.is-open {
  transform: translate(0, 0);
}

.off-canvas-content.is-open-right.has-transition-push {
  transform: translateX(-280px);
}
@media print, screen and (min-width: 40.0625em) {
  .off-canvas-content.is-open-right.has-transition-push {
    transform: translateX(-280px);
  }
}

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

.position-top {
  top: 0;
  left: 0;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  height: 250px;
  transform: translateY(-250px);
}
@media print, screen and (min-width: 40.0625em) {
  .position-top {
    height: 250px;
    transform: translateY(-250px);
  }
}
.off-canvas-content .off-canvas.position-top {
  transform: translateY(-250px);
}
@media print, screen and (min-width: 40.0625em) {
  .off-canvas-content .off-canvas.position-top {
    transform: translateY(-250px);
  }
}
.off-canvas-content .off-canvas.position-top.is-transition-overlap.is-open {
  transform: translate(0, 0);
}

.off-canvas-content.is-open-top.has-transition-push {
  transform: translateY(250px);
}
@media print, screen and (min-width: 40.0625em) {
  .off-canvas-content.is-open-top.has-transition-push {
    transform: translateY(250px);
  }
}

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

.position-bottom {
  bottom: 0;
  left: 0;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  height: 250px;
  transform: translateY(250px);
}
@media print, screen and (min-width: 40.0625em) {
  .position-bottom {
    height: 250px;
    transform: translateY(250px);
  }
}
.off-canvas-content .off-canvas.position-bottom {
  transform: translateY(250px);
}
@media print, screen and (min-width: 40.0625em) {
  .off-canvas-content .off-canvas.position-bottom {
    transform: translateY(250px);
  }
}
.off-canvas-content .off-canvas.position-bottom.is-transition-overlap.is-open {
  transform: translate(0, 0);
}

.off-canvas-content.is-open-bottom.has-transition-push {
  transform: translateY(-250px);
}
@media print, screen and (min-width: 40.0625em) {
  .off-canvas-content.is-open-bottom.has-transition-push {
    transform: translateY(-250px);
  }
}

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

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

@media print, screen and (min-width: 40.0625em) {
  .position-left.reveal-for-medium {
    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 {
    transform: none;
  }
  .off-canvas-content.has-reveal-left {
    margin-left: 280px;
  }
  .position-left.reveal-for-medium ~ .off-canvas-content {
    margin-left: 280px;
  }
  .position-right.reveal-for-medium {
    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 {
    transform: none;
  }
  .off-canvas-content.has-reveal-right {
    margin-right: 280px;
  }
  .position-right.reveal-for-medium ~ .off-canvas-content {
    margin-right: 280px;
  }
  .position-top.reveal-for-medium {
    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 {
    transform: none;
  }
  .off-canvas-content.has-reveal-top {
    margin-top: 280px;
  }
  .position-top.reveal-for-medium ~ .off-canvas-content {
    margin-top: 280px;
  }
  .position-bottom.reveal-for-medium {
    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 {
    transform: none;
  }
  .off-canvas-content.has-reveal-bottom {
    margin-bottom: 280px;
  }
  .position-bottom.reveal-for-medium ~ .off-canvas-content {
    margin-bottom: 280px;
  }
}
@media print, screen and (min-width: 64em) {
  .position-left.reveal-for-large {
    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 {
    transform: none;
  }
  .off-canvas-content.has-reveal-left {
    margin-left: 280px;
  }
  .position-left.reveal-for-large ~ .off-canvas-content {
    margin-left: 280px;
  }
  .position-right.reveal-for-large {
    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 {
    transform: none;
  }
  .off-canvas-content.has-reveal-right {
    margin-right: 280px;
  }
  .position-right.reveal-for-large ~ .off-canvas-content {
    margin-right: 280px;
  }
  .position-top.reveal-for-large {
    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 {
    transform: none;
  }
  .off-canvas-content.has-reveal-top {
    margin-top: 280px;
  }
  .position-top.reveal-for-large ~ .off-canvas-content {
    margin-top: 280px;
  }
  .position-bottom.reveal-for-large {
    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 {
    transform: none;
  }
  .off-canvas-content.has-reveal-bottom {
    margin-bottom: 280px;
  }
  .position-bottom.reveal-for-large ~ .off-canvas-content {
    margin-bottom: 280px;
  }
}
@media print, screen and (min-width: 40.0625em) {
  .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;
    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;
    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(10, 10, 10, 0.5);
  color: #fefefe;
}

.orbit-next, .orbit-previous {
  z-index: 10;
  padding: 1rem;
  color: #fefefe;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
[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: rgba(10, 10, 10, 0.5);
}

.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: #cacaca;
}
.orbit-bullets button:hover {
  background-color: #8a8a8a;
}
.orbit-bullets button.is-active {
  background-color: #8a8a8a;
}

.pagination {
  margin-left: 0;
  margin-bottom: 1rem;
}
.pagination::before, .pagination::after {
  display: table;
  content: " ";
  flex-basis: 0;
  order: 1;
}
.pagination::after {
  clear: both;
}
.pagination li {
  margin-right: 0.0625rem;
  border-radius: 0;
  font-size: 0.875rem;
  display: none;
}
.pagination li:last-child, .pagination li:first-child {
  display: inline-block;
}
@media print, screen and (min-width: 40.0625em) {
  .pagination li {
    display: inline-block;
  }
}
.pagination a,
.pagination button {
  display: block;
  padding: 0.1875rem 0.625rem;
  border-radius: 0;
  color: #0a0a0a;
}
.pagination a:hover,
.pagination button:hover {
  background: #e6e6e6;
}
.pagination .current {
  padding: 0.1875rem 0.625rem;
  background: #1779ba;
  color: #fefefe;
  cursor: default;
}
.pagination .disabled {
  padding: 0.1875rem 0.625rem;
  color: #cacaca;
  cursor: not-allowed;
}
.pagination .disabled:hover {
  background: transparent;
}
.pagination .ellipsis::after {
  padding: 0.1875rem 0.625rem;
  content: "…";
  color: #0a0a0a;
}

.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: #cacaca;
}
.progress.primary .progress-meter {
  background-color: #1779ba;
}
.progress.secondary .progress-meter {
  background-color: #767676;
}
.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: #1779ba;
}

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

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

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

.slider-handle {
  left: 0;
  z-index: 1;
  cursor: grab;
  display: inline-block;
  width: 1.4rem;
  height: 1.4rem;
  border-radius: 0;
  background-color: #1779ba;
  transition: all 0.2s ease-in-out;
  touch-action: manipulation;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
[data-whatinput=mouse] .slider-handle {
  outline: 0;
}
.slider-handle:hover {
  background-color: rgb(19.55, 102.85, 158.1);
}
.slider-handle.is-dragging {
  transition: all 0s linear;
  cursor: grabbing;
}

.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;
  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;
  transform: translateX(-50%);
}

.sticky-container {
  position: relative;
}

.sticky {
  position: relative;
  z-index: 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;
  -webkit-overflow-scrolling: touch;
}
html.is-reveal-open body {
  overflow-y: hidden;
}

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

.reveal {
  position: relative;
  top: 100px;
  margin-right: auto;
  margin-left: auto;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  z-index: 1006;
  backface-visibility: hidden;
  display: none;
  padding: 1rem;
  border: 1px solid #cacaca;
  border-radius: 0;
  background-color: #fefefe;
}
[data-whatinput=mouse] .reveal {
  outline: 0;
}
@media print, screen and (min-width: 40.0625em) {
  .reveal {
    min-height: 0;
  }
}
.reveal .column {
  min-width: 0;
}
.reveal > :last-child {
  margin-bottom: 0;
}
@media print, screen and (min-width: 40.0625em) {
  .reveal {
    width: 600px;
    max-width: 75rem;
  }
}
.reveal.collapse {
  padding: 0;
}
@media print, screen and (min-width: 40.0625em) {
  .reveal.tiny {
    width: 30%;
    max-width: 75rem;
  }
}
@media print, screen and (min-width: 40.0625em) {
  .reveal.small {
    width: 50%;
    max-width: 75rem;
  }
}
@media print, screen and (min-width: 40.0625em) {
  .reveal.large {
    width: 90%;
    max-width: 75rem;
  }
}
.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: 40.06125em) {
  .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 {
  position: relative;
  margin-bottom: 1rem;
  outline: 0;
  font-size: 0.875rem;
  font-weight: bold;
  color: #fefefe;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  height: 2rem;
}

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

.switch-paddle {
  position: relative;
  display: block;
  width: 4rem;
  height: 2rem;
  border-radius: 0;
  background: #cacaca;
  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;
  transform: translate3d(0, 0, 0);
  border-radius: 0;
  background: #fefefe;
  transition: all 0.25s ease-out;
  content: "";
}
input:checked ~ .switch-paddle {
  background: #1779ba;
}
input:checked ~ .switch-paddle::after {
  left: 2.25rem;
}
input:focus-visible ~ .switch-paddle {
  background: rgb(181.8, 181.8, 181.8);
}
input:focus-visible ~ .switch-paddle::after {
  background: #fefefe;
}
input:checked:focus-visible ~ .switch-paddle {
  background: rgb(19.55, 102.85, 158.1);
}
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%;
  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: 0.625rem;
}
.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: 0.75rem;
}
.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: 1rem;
}
.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 rgb(241.3, 241.3, 241.3);
  background-color: #fefefe;
}

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

thead {
  background: rgb(247.65, 247.65, 247.65);
  color: #0a0a0a;
}

tfoot {
  background: rgb(241.3, 241.3, 241.3);
  color: #0a0a0a;
}

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

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

tbody tr:nth-child(even) {
  border-bottom: 0;
  background-color: rgb(241.3, 241.3, 241.3);
}

table.unstriped tbody {
  background-color: #fefefe;
}
table.unstriped tbody tr {
  border-bottom: 1px solid rgb(241.3, 241.3, 241.3);
  background-color: #fefefe;
}

@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: rgb(242.55, 242.55, 242.55);
}
table.hover tfoot tr:hover {
  background-color: rgb(236.2, 236.2, 236.2);
}
table.hover tbody tr:hover {
  background-color: rgb(248.9, 248.9, 248.9);
}
table.hover:not(.unstriped) tr:nth-of-type(even):hover {
  background-color: rgb(236.15, 236.15, 236.15);
}

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

.tabs {
  margin: 0;
  border: 1px solid #e6e6e6;
  background: #fefefe;
  list-style-type: none;
}
.tabs::before, .tabs::after {
  display: table;
  content: " ";
  flex-basis: 0;
  order: 1;
}
.tabs::after {
  clear: both;
}

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

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

.tabs.primary {
  background: #1779ba;
}
.tabs.primary > li > a {
  color: #fefefe;
}
.tabs.primary > li > a:hover, .tabs.primary > li > a:focus {
  background: rgb(21.85, 114.95, 176.7);
}

.tabs-title {
  float: left;
}
.tabs-title > a {
  display: block;
  padding: 1.25rem 1.5rem;
  font-size: 0.75rem;
  line-height: 1;
  color: #1779ba;
}
[data-whatinput=mouse] .tabs-title > a {
  outline: 0;
}
.tabs-title > a:hover {
  background: #fefefe;
  color: rgb(19.78, 104.06, 159.96);
}
.tabs-title > a:focus, .tabs-title > a[aria-selected=true] {
  background: #e6e6e6;
  color: #1779ba;
}

.tabs-content {
  border: 1px solid #e6e6e6;
  border-top: 0;
  background: #fefefe;
  color: #0a0a0a;
  transition: all 0.5s ease;
}

.tabs-content.vertical {
  border: 1px solid #e6e6e6;
  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 #fefefe;
  border-radius: 0;
  box-shadow: 0 0 0 1px rgba(10, 10, 10, 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(23, 121, 186, 0.5);
}
a.thumbnail image {
  box-shadow: none;
}

.title-bar {
  padding: 0.5rem;
  background: #2C3840;
  color: #fefefe;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.title-bar .menu-icon {
  margin-left: 0.25rem;
  margin-right: 0.25rem;
}

.title-bar-left,
.title-bar-right {
  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 #8a8a8a;
  font-weight: bold;
  cursor: help;
}

.tooltip {
  position: absolute;
  top: calc(100% + 0.6495rem);
  z-index: 1200;
  max-width: 10rem;
  padding: 0.75rem;
  border-radius: 0;
  background-color: #0a0a0a;
  font-size: 80%;
  color: #fefefe;
}
.tooltip::before {
  position: absolute;
}
.tooltip.bottom::before {
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0.75rem;
  content: "";
  border-top-width: 0;
  border-color: transparent transparent #0a0a0a;
  bottom: 100%;
}
.tooltip.bottom.align-center::before {
  left: 50%;
  transform: translateX(-50%);
}
.tooltip.top::before {
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0.75rem;
  content: "";
  border-bottom-width: 0;
  border-color: #0a0a0a transparent transparent;
  top: 100%;
  bottom: auto;
}
.tooltip.top.align-center::before {
  left: 50%;
  transform: translateX(-50%);
}
.tooltip.left::before {
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0.75rem;
  content: "";
  border-right-width: 0;
  border-color: transparent transparent transparent #0a0a0a;
  left: 100%;
}
.tooltip.left.align-center::before {
  bottom: auto;
  top: 50%;
  transform: translateY(-50%);
}
.tooltip.right::before {
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0.75rem;
  content: "";
  border-left-width: 0;
  border-color: transparent #0a0a0a transparent transparent;
  right: 100%;
  left: auto;
}
.tooltip.right.align-center::before {
  bottom: auto;
  top: 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 {
  padding: 0rem;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
}
.top-bar,
.top-bar ul {
  background-color: #2C3840;
}
.top-bar input {
  max-width: 200px;
  margin-right: 1rem;
}
.top-bar .input-group-field {
  width: 100%;
  margin-right: 0;
}
.top-bar input.button {
  width: auto;
}

.top-bar {
  flex-wrap: wrap;
}
.top-bar .top-bar-left,
.top-bar .top-bar-right {
  flex: 0 0 100%;
  max-width: 100%;
}

@media print, screen and (min-width: 40.0625em) {
  .top-bar {
    flex-wrap: nowrap;
  }
  .top-bar .top-bar-left {
    flex: 1 1 auto;
    margin-right: auto;
  }
  .top-bar .top-bar-right {
    flex: 0 1 auto;
    margin-left: auto;
  }
}
@media print, screen and (max-width: 63.99875em) {
  .top-bar.stacked-for-medium {
    flex-wrap: wrap;
  }
  .top-bar.stacked-for-medium .top-bar-left,
  .top-bar.stacked-for-medium .top-bar-right {
    flex: 0 0 100%;
    max-width: 100%;
  }
}
@media print, screen and (max-width: 74.99875em) {
  .top-bar.stacked-for-large {
    flex-wrap: wrap;
  }
  .top-bar.stacked-for-large .top-bar-left,
  .top-bar.stacked-for-large .top-bar-right {
    flex: 0 0 100%;
    max-width: 100%;
  }
}

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

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

.hide {
  display: none !important;
}

.invisible {
  visibility: hidden;
}

.visible {
  visibility: visible;
}

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

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

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

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

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

@media screen and (max-width: 40.06125em), 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;
  }
}

.show-for-dark-mode {
  display: none;
}

.hide-for-dark-mode {
  display: block;
}

@media screen and (prefers-color-scheme: dark) {
  .show-for-dark-mode {
    display: block !important;
  }
  .hide-for-dark-mode {
    display: none !important;
  }
}
.show-for-ie {
  display: none;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .show-for-ie {
    display: block !important;
  }
  .hide-for-ie {
    display: none !important;
  }
}
.show-for-sticky {
  display: none;
}

.is-stuck .show-for-sticky {
  display: block;
}

.is-stuck .hide-for-sticky {
  display: none;
}

.align-left {
  justify-content: flex-start;
}

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

.align-center {
  justify-content: center;
}

.align-justify {
  justify-content: space-between;
}

.align-spaced {
  justify-content: space-around;
}

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

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

.align-center.vertical.menu > li > a {
  justify-content: center;
}

.align-top {
  align-items: flex-start;
}

.align-self-top {
  align-self: flex-start;
}

.align-bottom {
  align-items: flex-end;
}

.align-self-bottom {
  align-self: flex-end;
}

.align-middle {
  align-items: center;
}

.align-self-middle {
  align-self: center;
}

.align-stretch {
  align-items: stretch;
}

.align-self-stretch {
  align-self: stretch;
}

.align-center-middle {
  justify-content: center;
  align-items: center;
  align-content: center;
}

.small-order-1 {
  order: 1;
}

.small-order-2 {
  order: 2;
}

.small-order-3 {
  order: 3;
}

.small-order-4 {
  order: 4;
}

.small-order-5 {
  order: 5;
}

.small-order-6 {
  order: 6;
}

@media print, screen and (min-width: 40.0625em) {
  .medium-order-1 {
    order: 1;
  }
  .medium-order-2 {
    order: 2;
  }
  .medium-order-3 {
    order: 3;
  }
  .medium-order-4 {
    order: 4;
  }
  .medium-order-5 {
    order: 5;
  }
  .medium-order-6 {
    order: 6;
  }
}
@media print, screen and (min-width: 64em) {
  .large-order-1 {
    order: 1;
  }
  .large-order-2 {
    order: 2;
  }
  .large-order-3 {
    order: 3;
  }
  .large-order-4 {
    order: 4;
  }
  .large-order-5 {
    order: 5;
  }
  .large-order-6 {
    order: 6;
  }
}
.flex-container {
  display: flex;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.slide-out-left.mui-leave.mui-leave-active {
  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;
  transform: perspective(2000px) rotateX(-90deg);
  transform-origin: top;
  transition-property: transform, opacity;
  opacity: 0;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.spin-out-ccw.mui-leave.mui-leave-active {
  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;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

#wpadminbar {
  position: fixed !important;
}

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

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

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

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

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

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

/**** TABLE OF CONTENTS ****

00. VARIABLES
0. ACCESSIBILTY TOOLBAR STYLES
1. PRELOADER STYLES
2. GENERAL STYLES
3. HEADER STYLES
  3a. Header Option One Styles
  3b. Header Option Two Styles
  3c. Header Option Three Styles
  3d. Header Option Four Styles
  3e. Mobile Off-Canvas Menu Styles
  3f. Mobile Top Bar Menu Styles
  3g. Sticky Header Styles
  3h. Header Overrides

4. HOME PAGE STYLES

5. INTERNAL PAGE STYLES
  5a. Breadcrumbs Styles
  5b. Page Title and Title Bar Styles
  5c. Default Page Template Styles
  5d. Full Width Page Template Styles
  5e. Post Navigation Footer Styles
  5f. Left Sidebar Page Template Styles
  5g. Sidebar Styles
  5h. Social Sharing Shortcode Styles
  5i. Gallery Shortcode Styles
  5j. Pagination Styles
  5k. Gravity Form Styles
  5l. Search Results Styles

6. BLOG PAGE AND SINGLE BLOG POST STYLES
  6a. Blog Loop Shortcode Styles
  6b. Comments Section Styles
  6c. AJAX Blog Loop Shortcode Styles

7. PORTFOLIO STYLES

8. SERVICES STYLES

9. STAFF STYLES

10. 404 PAGE STYLES

11. FOOTER STYLES

** END TABLE OF CONTENTS **/
/**** 00. VARIABLES ****/
/**** 0. ACCESSIBILTY TOOLBAR STYLES ****/
.screen-reader-shortcut {
  position: absolute;
  top: -624.9375rem;
}
.screen-reader-shortcut:focus {
  left: 6px;
  top: 7px;
  height: auto;
  width: auto;
  display: block;
  font-size: 14px;
  font-weight: 600;
  padding: 15px 23px 14px;
  background: #f1f1f1;
  color: #0073aa;
  z-index: 100000;
  line-height: normal;
  text-decoration: none;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
}

.tooltip {
  background: #fef3a1;
  border-radius: 0.1875rem;
  border: 0.0625rem solid #003a71;
  color: #000000;
  font-size: 0.875rem;
  font-weight: 700;
  max-width: 13.75rem;
  padding: 0.375rem 0.625rem;
  width: auto;
}
.tooltip.right:before {
  border: inset 0.375rem !important;
  border-color: transparent #fef3a1 transparent transparent !important;
  z-index: 10;
}
.tooltip.right:after {
  border: inset 0.5rem !important;
  border-color: transparent #003a71 transparent transparent !important;
  content: "";
  display: block;
  height: 0;
  left: auto;
  position: absolute;
  right: 100%;
  top: 50%;
  transform: translateY(-50%);
  width: 0;
  z-index: 1;
}

div#a11y-toolbar {
  border: 0.0625rem solid #CED4DA;
  border-radius: 0 0.25rem 0.25rem 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  position: fixed;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1002;
}
div#a11y-toolbar div#a11y-fontsize button, div#a11y-toolbar div#a11y-contrast button {
  background: rgba(255, 255, 255, 0.85);
  border-left: 0;
  cursor: pointer;
  font-size: 1.375rem;
  padding: 0.625rem 0.375rem;
  width: 100%;
  transition: all 0.2s ease-out;
}
div#a11y-toolbar div#a11y-fontsize button:hover, div#a11y-toolbar div#a11y-fontsize button:focus, div#a11y-toolbar div#a11y-contrast button:hover, div#a11y-toolbar div#a11y-contrast button:focus {
  background: #FFFFFF;
}
div#a11y-toolbar div#a11y-fontsize button.a11y-fontsize, div#a11y-toolbar div#a11y-contrast button.a11y-fontsize {
  border-radius: 0 0.25rem 0 0;
  border-bottom: 0.0625rem solid #CED4DA;
}
div#a11y-toolbar div#a11y-fontsize button.a11y-contrast, div#a11y-toolbar div#a11y-contrast button.a11y-contrast {
  border-radius: 0 0 0.25rem 0;
}
div#a11y-toolbar div#a11y-fontsize button.a11y-active, div#a11y-toolbar div#a11y-contrast button.a11y-active {
  background: #CED4DA;
  color: #FFFFFF;
}
div#a11y-toolbar div#a11y-fontsize button.a11y-active.a11y-fontsize, div#a11y-toolbar div#a11y-contrast button.a11y-active.a11y-fontsize {
  border-bottom: 0.0625rem solid #F1F3F5 !important;
}
div#a11y-toolbar div#a11y-fontsize button span[data-tooltip], div#a11y-toolbar div#a11y-contrast button span[data-tooltip] {
  border: 0;
  cursor: pointer;
  display: block;
  text-decoration: none;
}
div#a11y-toolbar.a11y-left {
  border-left: 0;
}
@media only screen and (max-width: 40em) {
  div#a11y-toolbar.a11y-left {
    bottom: 0.9375rem;
    top: auto;
    transform: none;
  }
  div#a11y-toolbar.a11y-left.backtop-left {
    bottom: 4.6875rem;
  }
}
div#a11y-toolbar.a11y-right {
  border-radius: 0.25rem 0 0 0.25rem;
  border-right: 0;
  right: 0;
}
@media only screen and (max-width: 40em) {
  div#a11y-toolbar.a11y-right {
    bottom: 0.9375rem;
    top: auto;
    transform: none;
  }
  div#a11y-toolbar.a11y-right.backtop-right {
    bottom: 4.6875rem;
  }
}
div#a11y-toolbar.a11y-right div#a11y-fontsize button.a11y-fontsize, div#a11y-toolbar.a11y-right div#a11y-contrast button.a11y-fontsize {
  border-radius: 0.25rem 0 0 0;
}
div#a11y-toolbar.a11y-right div#a11y-fontsize button.a11y-contrast, div#a11y-toolbar.a11y-right div#a11y-contrast button.a11y-contrast {
  border-radius: 0;
}

/**** TOGGLE FONTSIZE STYLES ****/
html.a11y-fontsize .bs-btn, html.a11y-fontsize .button,
html.a11y-fontsize header#masthead .alt-nav-wrapper .alt-nav-my-cart a,
html.a11y-fontsize .top-bar-social ul li.custom-button a,
html.a11y-fontsize nav.off-canvas ul.social-media-wrapper li.custom-button a,
html.a11y-fontsize nav.off-canvas .alt-nav-my-cart a {
  font-size: 1.25rem !important;
}
html.a11y-fontsize p, html.a11y-fontsize a, html.a11y-fontsize li, html.a11y-fontsize span, html.a11y-fontsize time, html.a11y-fontsize strong, html.a11y-fontsize em, html.a11y-fontsize code {
  font-size: 1.25rem;
}
html.a11y-fontsize h2, html.a11y-fontsize h2 span, html.a11y-fontsize h2 a {
  font-size: 2.125rem !important;
}
html.a11y-fontsize h3, html.a11y-fontsize h3 span, html.a11y-fontsize h3 a,
html.a11y-fontsize body.woocommerce ul.products > li.product > a .woocommerce-loop-product__title, html.a11y-fontsize body.woocommerce-page ul.products > li.product > a .woocommerce-loop-product__title, html.a11y-fontsize div.woocommerce ul.products > li.product > a .woocommerce-loop-product__title {
  font-size: 1.875rem !important;
}
html.a11y-fontsize h4, html.a11y-fontsize h4 span, html.a11y-fontsize h4 a,
html.a11y-fontsize h5, html.a11y-fontsize h5 span, html.a11y-fontsize h5 a,
html.a11y-fontsize h6, html.a11y-fontsize h6 span, html.a11y-fontsize h6 a {
  font-size: 1.625rem !important;
}
html.a11y-fontsize nav.off-canvas .menu > li > a,
html.a11y-fontsize header#masthead .menu > li > a {
  font-size: 1.5rem !important;
  letter-spacing: -0.0625rem;
}
html.a11y-fontsize header#masthead .site-title-bar.title-bar button.menu-icon span {
  font-size: 0.625rem !important;
}
html.a11y-fontsize .breadcrumbs-wrapper #breadcrumbs li,
html.a11y-fontsize .breadcrumbs-wrapper #breadcrumbs li a,
html.a11y-fontsize body.woocommerce .breadcrumbs-wrapper nav.woocommerce-breadcrumb, html.a11y-fontsize body.woocommerce-page .breadcrumbs-wrapper nav.woocommerce-breadcrumb,
html.a11y-fontsize body.woocommerce .breadcrumbs-wrapper nav.woocommerce-breadcrumb span.separator, html.a11y-fontsize body.woocommerce-page .breadcrumbs-wrapper nav.woocommerce-breadcrumb span.separator, html.a11y-fontsize div.woocommerce .breadcrumbs-wrapper nav.woocommerce-breadcrumb span.separator,
html.a11y-fontsize body.woocommerce .breadcrumbs-wrapper nav.woocommerce-breadcrumb a, html.a11y-fontsize body.woocommerce-page .breadcrumbs-wrapper nav.woocommerce-breadcrumb a, html.a11y-fontsize div.woocommerce .breadcrumbs-wrapper nav.woocommerce-breadcrumb a {
  font-size: 1.125rem;
}
html.a11y-fontsize .entry-content figure.wp-caption figcaption.wp-caption-text {
  font-size: 1.25rem;
}
html.a11y-fontsize label,
html.a11y-fontsize .gform_wrapper .top_label .gfield_label {
  font-size: 1.25rem;
  line-height: 1.2;
}
html.a11y-fontsize .gform_wrapper form .gform_body li.gfield .ginput_complex input + label {
  font-size: 1rem !important;
  line-height: 1;
}
html.a11y-fontsize h1.entry-title {
  font-size: 2.5rem !important;
}
html.a11y-fontsize aside.sidebar .widget h6 {
  font-size: 1.5rem !important;
}
html.a11y-fontsize aside.sidebar .widget li, html.a11y-fontsize aside.sidebar .widget li a {
  font-size: 1.375rem !important;
  line-height: 1.4;
}
html.a11y-fontsize #footer-container .pre-footer h4 {
  font-size: 1.75rem !important;
}
html.a11y-fontsize #footer-container .pre-footer p, html.a11y-fontsize #footer-container .pre-footer a, html.a11y-fontsize #footer-container .pre-footer li, html.a11y-fontsize #footer-container .pre-footer span, html.a11y-fontsize #footer-container .pre-footer time, html.a11y-fontsize #footer-container .pre-footer strong, html.a11y-fontsize #footer-container .pre-footer em {
  font-size: 1.25rem;
}
html.a11y-fontsize #footer-container .footer-container h6 {
  font-size: 1.75rem !important;
}
html.a11y-fontsize #footer-container .footer-container p, html.a11y-fontsize #footer-container .footer-container a, html.a11y-fontsize #footer-container .footer-container li, html.a11y-fontsize #footer-container .footer-container span, html.a11y-fontsize #footer-container .footer-container time, html.a11y-fontsize #footer-container .footer-container strong, html.a11y-fontsize #footer-container .footer-container em {
  font-size: 1.25rem;
}
html.a11y-fontsize #footer-container #copyright p, html.a11y-fontsize #footer-container #copyright a, html.a11y-fontsize #footer-container #copyright li, html.a11y-fontsize #footer-container #copyright span, html.a11y-fontsize #footer-container #copyright time, html.a11y-fontsize #footer-container #copyright strong, html.a11y-fontsize #footer-container #copyright em {
  font-size: 1.25rem;
}

html.a11y-contrast a, html.a11y-contrast abbr, html.a11y-contrast article, html.a11y-contrast aside, html.a11y-contrast basefont, html.a11y-contrast bdi, html.a11y-contrast big, html.a11y-contrast blink, html.a11y-contrast blockquote, html.a11y-contrast body, html.a11y-contrast button, html.a11y-contrast canvas, html.a11y-contrast caption, html.a11y-contrast center, html.a11y-contrast code, html.a11y-contrast col, html.a11y-contrast colgroup, html.a11y-contrast command, html.a11y-contrast dd, html.a11y-contrast details, html.a11y-contrast dir, html.a11y-contrast div, html.a11y-contrast dl, html.a11y-contrast dt, html.a11y-contrast embed, html.a11y-contrast fieldset, html.a11y-contrast figcaption, html.a11y-contrast figure, html.a11y-contrast font, html.a11y-contrast footer, html.a11y-contrast form, html.a11y-contrast header, html.a11y-contrast hgroup, html.a11y-contrast html, html.a11y-contrast iframe, html.a11y-contrast img, html.a11y-contrast input, html.a11y-contrast kbd, html.a11y-contrast label, html.a11y-contrast legend, html.a11y-contrast li, html.a11y-contrast listing, html.a11y-contrast mark, html.a11y-contrast marquee, html.a11y-contrast menu, html.a11y-contrast meter, html.a11y-contrast multicol, html.a11y-contrast nav, html.a11y-contrast nobr, html.a11y-contrast object, html.a11y-contrast ol, html.a11y-contrast option, html.a11y-contrast p, html.a11y-contrast plaintext, html.a11y-contrast pre, html.a11y-contrast progress, html.a11y-contrast q, html.a11y-contrast s, html.a11y-contrast section, html.a11y-contrast select, html.a11y-contrast small, html.a11y-contrast span, html.a11y-contrast strike, html.a11y-contrast sub, html.a11y-contrast summary, html.a11y-contrast sup, html.a11y-contrast table, html.a11y-contrast td, html.a11y-contrast textarea, html.a11y-contrast th, html.a11y-contrast time, html.a11y-contrast tr, html.a11y-contrast tt, html.a11y-contrast ul, html.a11y-contrast var, html.a11y-contrast xmp, html.a11y-contrast body.woocommerce ul.products > li.product > a span.price span.amount, html.a11y-contrast body.woocommerce-page ul.products > li.product > a span.price span.amount, html.a11y-contrast div.woocommerce ul.products > li.product > a span.price span.amount, html.a11y-contrast #main-container h2, html.a11y-contrast #main-container h2 span, html.a11y-contrast #main-container h3, html.a11y-contrast #main-container h3 span, html.a11y-contrast #main-container h4, html.a11y-contrast #main-container h4 span, html.a11y-contrast #main-container h5, html.a11y-contrast #main-container h5 span, html.a11y-contrast #main-container h6, html.a11y-contrast #main-container h6 span, html.a11y-contrast .pre-footer-container .pre-footer h1, html.a11y-contrast .pre-footer-container .pre-footer h2, html.a11y-contrast .pre-footer-container .pre-footer h3, html.a11y-contrast .pre-footer-container .pre-footer h4, html.a11y-contrast .pre-footer-container .pre-footer h5, html.a11y-contrast .pre-footer-container .pre-footer h6, html.a11y-contrast .footer-container .footer h1, html.a11y-contrast .footer-container .footer h2, html.a11y-contrast .footer-container .footer h3, html.a11y-contrast .footer-container .footer h4, html.a11y-contrast .footer-container .footer h5, html.a11y-contrast .footer-container .footer h6, html.a11y-contrast span.required, html.a11y-contrast body.woocommerce span.required, html.a11y-contrast body.woocommerce-page span.required, html.a11y-contrast div.woocommerce span.required {
  color: #F3F3F3 !important;
}
html.a11y-contrast a {
  color: yellow !important;
}
html.a11y-contrast #main-container a, html.a11y-contrast .pre-footer-container a, html.a11y-contrast .footer-container .footer a, html.a11y-contrast #copyright a {
  text-decoration: underline !important;
}
html.a11y-contrast a, html.a11y-contrast abbr, html.a11y-contrast acronym, html.a11y-contrast address, html.a11y-contrast article, html.a11y-contrast aside, html.a11y-contrast b, html.a11y-contrast basefont, html.a11y-contrast bdi, html.a11y-contrast big, html.a11y-contrast blink, html.a11y-contrast blockquote, html.a11y-contrast body, html.a11y-contrast canvas, html.a11y-contrast caption, html.a11y-contrast center, html.a11y-contrast cite, html.a11y-contrast code, html.a11y-contrast col, html.a11y-contrast colgroup, html.a11y-contrast command, html.a11y-contrast dd, html.a11y-contrast details, html.a11y-contrast dfn, html.a11y-contrast dir, html.a11y-contrast div, html.a11y-contrast dl, html.a11y-contrast dt, html.a11y-contrast em, html.a11y-contrast embed, html.a11y-contrast fieldset, html.a11y-contrast figcaption, html.a11y-contrast figure, html.a11y-contrast font, html.a11y-contrast footer, html.a11y-contrast form, html.a11y-contrast h1, html.a11y-contrast h1 a, html.a11y-contrast h1 a b, html.a11y-contrast h1 abbr, html.a11y-contrast h1 center, html.a11y-contrast h1 span, html.a11y-contrast h2, html.a11y-contrast h2 a, html.a11y-contrast h2 a b, html.a11y-contrast h2 abbr, html.a11y-contrast h2 center, html.a11y-contrast h2 span, html.a11y-contrast h3, html.a11y-contrast h3 a, html.a11y-contrast h3 a b, html.a11y-contrast h3 abbr, html.a11y-contrast h3 center, html.a11y-contrast h3 span, html.a11y-contrast h4, html.a11y-contrast h4 a, html.a11y-contrast h4 a b, html.a11y-contrast h4 abbr, html.a11y-contrast h4 center, html.a11y-contrast h4 span, html.a11y-contrast h5, html.a11y-contrast h5 a, html.a11y-contrast h5 a b, html.a11y-contrast h5 abbr, html.a11y-contrast h5 center, html.a11y-contrast h5 span, html.a11y-contrast h6, html.a11y-contrast h6 a, html.a11y-contrast h6 a b, html.a11y-contrast h6 abbr, html.a11y-contrast h6 center, html.a11y-contrast h6 span, html.a11y-contrast header, html.a11y-contrast hgroup, html.a11y-contrast html, html.a11y-contrast i, html.a11y-contrast iframe, html.a11y-contrast input, html.a11y-contrast kbd, html.a11y-contrast label, html.a11y-contrast legend, html.a11y-contrast li, html.a11y-contrast listing, html.a11y-contrast mark, html.a11y-contrast marquee, html.a11y-contrast menu, html.a11y-contrast meter, html.a11y-contrast multicol, html.a11y-contrast nav, html.a11y-contrast nobr, html.a11y-contrast object, html.a11y-contrast ol, html.a11y-contrast option, html.a11y-contrast p, html.a11y-contrast plaintext, html.a11y-contrast pre, html.a11y-contrast progress, html.a11y-contrast q, html.a11y-contrast s, html.a11y-contrast section, html.a11y-contrast small, html.a11y-contrast span, html.a11y-contrast strike, html.a11y-contrast strong, html.a11y-contrast sub, html.a11y-contrast summary, html.a11y-contrast sup, html.a11y-contrast table, html.a11y-contrast td, html.a11y-contrast textarea, html.a11y-contrast th, html.a11y-contrast time, html.a11y-contrast tr, html.a11y-contrast tt, html.a11y-contrast u, html.a11y-contrast ul, html.a11y-contrast var, html.a11y-contrast xmp, html.a11y-contrast .bs-btn, html.a11y-contrast .button, html.a11y-contrast header#masthead .top-bar-social ul.social-media-wrapper li.custom-button a {
  background-color: #000000 !important;
  color: #F3F3F3 !important;
}
html.a11y-contrast input[type=text], html.a11y-contrast input[type=email], html.a11y-contrast input[type=password], html.a11y-contrast input[type=tel], html.a11y-contrast textarea, html.a11y-contrast select {
  background-color: #FFFFFF !important;
  color: #000000 !important;
}
html.a11y-contrast img {
  background: #808080 !important;
  background-color: #808080 !important;
  mix-blend-mode: unset !important;
}
html.a11y-contrast body.woocommerce-page .woocommerce-tabs ul.tabs.wc-tabs li.active,
html.a11y-contrast body.woocommerce-page .woocommerce-tabs ul.tabs.wc-tabs li.active a {
  background: #FFFFFF !important;
}
html.a11y-contrast body.woocommerce span.onsale:before, html.a11y-contrast body.woocommerce-page span.onsale:before, html.a11y-contrast div.woocommerce span.onsale:before {
  border-top-color: #000000;
}
html.a11y-contrast body.woocommerce span.onsale:after, html.a11y-contrast body.woocommerce-page span.onsale:after, html.a11y-contrast div.woocommerce span.onsale:after {
  border-bottom-color: #000000;
}

/**** 1. PRELOADER STYLES ****/
#preloader {
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 9999999;
  width: 100%;
  height: 100%;
  overflow: visible;
  background: #FFF;
}
#preloader .preloader-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}
#preloader img {
  display: block;
  max-width: 18.75rem;
  padding: 25px;
  width: 100%;
}
@media only screen and (max-width: 40em) {
  #preloader img {
    height: auto;
    padding: 0.9375rem 0 0;
  }
}
#preloader .letter-holder {
  display: inline-block;
  padding: 1rem;
}
#preloader .letter {
  float: left;
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif;
  font-size: 2rem;
  font-weight: 700;
  color: #00693B;
  letter-spacing: 0.625rem;
  text-transform: uppercase;
}
#preloader .animate-loading .letter {
  animation-name: loadingF;
  animation-duration: 1.6s;
  animation-iteration-count: infinite;
  animation-direction: linear;
}
#preloader .l-1 {
  animation-delay: 0.48s;
}
#preloader .l-2 {
  animation-delay: 0.6s;
}
#preloader .l-3 {
  animation-delay: 0.72s;
}
#preloader .l-4 {
  animation-delay: 0.84s;
}
#preloader .l-5 {
  animation-delay: 0.96s;
}
#preloader .l-6 {
  animation-delay: 1.08s;
}
#preloader .l-7 {
  animation-delay: 1.2s;
}
#preloader .l-8 {
  animation-delay: 1.32s;
}
#preloader .l-9 {
  animation-delay: 1.44s;
}
#preloader .l-10 {
  animation-delay: 1.56s;
}
@keyframes loadingF {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.admin-bar #preloader img {
  margin-top: 16px;
}
@media only screen and (max-width: 782px) {
  .admin-bar #preloader img {
    margin-top: 23px;
  }
}

/**** 2. GENERAL STYLES ****/
* {
  hyphens: none !important;
}

input[type=text],
input[type=email],
input[type=tel],
input[type=password],
input[type=submit],
textarea,
select,
button {
  -webkit-appearance: none !important;
  -moz-apperance: none !important;
}

a[href^=tel] {
  text-decoration: none;
  -webkit-appearance: none !important;
  -moz-apperance: none !important;
}

a {
  font-family: "source-sans-pro", Arial, Helvetica, sans-serif;
}

p, li, span, time, dl, dt, dd {
  font-family: "source-sans-pro", Arial, Helvetica, sans-serif;
}

.main-content p, .main-content li, .main-content span, .main-content time, .main-content dl, .main-content dt, .main-content dd {
  font-size: 1.125rem;
  line-height: 1.5;
}
.main-content p {
  margin-bottom: 2rem;
}
.main-content p:last-of-type {
  margin-bottom: 0;
}
.main-content ul, .main-content ol {
  margin-bottom: 2rem;
}

.pipe-separator {
  display: inline-block;
  font-size: 125%;
  line-height: 1.5625rem;
  margin: 0 0.375rem;
}

button.menu-icon {
  align-items: space-between;
  background: none;
  color: #003a71;
  display: flex;
  flex-wrap: wrap;
  font-size: 0.625rem;
  height: 2.125rem;
  letter-spacing: -0.01rem;
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: left;
  text-transform: lowercase;
  width: 2.25rem;
}
button.menu-icon:before, button.menu-icon:after {
  display: none !important;
}
button.menu-icon span.menu-icon-bar {
  background: #00693B;
  border-radius: 0.5rem;
  height: 0.25rem;
  margin-bottom: 0.1875rem;
  opacity: 1;
  width: 100%;
  transition: all 0.2s ease-out;
}
button.menu-icon span.keep-together {
  color: #00693B;
  font-size: 0.75rem;
  line-height: 0.5;
}
button.menu-icon span.keep-together i {
  color: #00693B;
  display: inline;
  font-size: 0.6875rem;
  line-height: 0.7;
  position: relative;
  right: 0;
  top: 0.0625rem;
}
button.menu-icon.active span.menu-icon-bar {
  background: #912712;
}
button.menu-icon.active span.menu-icon-bar-1 {
  transform: rotate(45deg);
}
button.menu-icon.active span.menu-icon-bar-2 {
  opacity: 0;
}
button.menu-icon.active span.menu-icon-bar-3 {
  margin-top: -0.875rem;
  transform: rotate(-45deg);
}
button.menu-icon.active span.keep-together {
  margin-top: 0.3125rem;
}
button.menu-icon:hover span.menu-icon-bar, button.menu-icon:focus span.menu-icon-bar {
  background: #912712;
}

h1, h2, h3, h4, h5, h6 {
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif;
  font-weight: 700;
  letter-spacing: 0.15rem;
  line-height: 1.1;
  text-align: left;
}
h1.aligncenter, h2.aligncenter, h3.aligncenter, h4.aligncenter, h5.aligncenter, h6.aligncenter {
  text-align: center;
}
h1.alignleft, h2.alignleft, h3.alignleft, h4.alignleft, h5.alignleft, h6.alignleft {
  text-align: left;
}
h1.alignright, h2.alignright, h3.alignright, h4.alignright, h5.alignright, h6.alignright {
  text-align: right;
}

h2, h2 span {
  font-size: 2rem !important;
}

h3, h3 span {
  font-size: 1.5rem !important;
}

h4, h4 span {
  font-size: 1.25rem !important;
}

h5, h5 span {
  font-size: 1.125rem !important;
}

h6, h6 span {
  font-size: 1.0625rem !important;
}

@media only screen and (max-width: 37.5em) {
  .alignright, .alignleft, .aligncenter, .alignnone {
    float: none;
    margin: 0 0 1.25rem 0;
    padding: 0;
    width: 100%;
  }
}

.alignleft {
  padding-right: 2rem;
}

.alignright {
  padding-left: 2rem;
}

figure.alignright, figure.alignleft, figure.aligncenter, figure.alignnone {
  margin-bottom: 0.9375rem;
}
@media only screen and (max-width: 37.5em) {
  figure.alignright img, figure.alignleft img, figure.aligncenter img, figure.alignnone img {
    height: auto;
    width: 100%;
  }
}

.section-heading {
  float: none !important;
}
.section-heading span.section-heading-inner {
  display: inline-block;
  line-height: 1.1;
  margin-bottom: 1.25rem !important;
  padding-bottom: 0.625rem !important;
  position: relative;
}
.section-heading span.section-heading-inner:after {
  background: #003a71;
  bottom: 0;
  content: "";
  display: block;
  height: 0.1875rem;
  left: 0;
  max-width: 9.375rem;
  position: absolute;
  width: 100%;
}
.section-heading.aligncenter span.section-heading-inner:after {
  left: 50%;
  transform: translateX(-50%);
}
.section-heading.alignright span.section-heading-inner:after {
  left: 100%;
  transform: translateX(-100%);
}

span.sub-title {
  display: block;
  font-size: 65%;
  margin: 0.625rem 0;
}

.pl15 {
  padding-left: 0.9375rem !important;
}

.pr15 {
  padding-right: 0.9375rem !important;
}

.mt15 {
  margin-top: 0.9375rem !important;
}

.mb15 {
  margin-bottom: 0.9375rem !important;
}

.vcard abbr {
  border: 0 !important;
  text-decoration: none !important;
  cursor: text !important;
}

.vcard .type {
  display: none;
}

.off-canvas-content #masthead {
  margin: 0 auto;
}

ul.pagination {
  display: inline-block;
  text-align: center;
  width: 100%;
}
ul.pagination li {
  display: inline-block;
}
/* Foundation 6 Tabs Styles */
.tabs {
  border: 0;
  overflow: hidden;
}
.tabs .tabs-title {
  margin-right: 0.25rem;
}
@media only screen and (max-width: 47.9375em) {
  .tabs .tabs-title {
    margin-right: 0;
    width: 100%;
  }
}
.tabs .tabs-title a {
  background: #003a71;
  border: 0.0625rem solid #003a71;
  bottom: -0.0625rem;
  color: #FFFFFF;
  font-size: 1rem;
  font-weight: 700;
  padding: 0.75rem 0.9375rem;
  position: relative;
  text-decoration: none !important;
  transition: padding 0.2s ease-out;
}
@media only screen and (max-width: 47.9375em) {
  .tabs .tabs-title a {
    border-top: 0;
    border-bottom: 0.0625rem solid #F1F3F5;
    box-shadow: 0 -0.125rem 0.4375rem #001e61;
  }
}
.tabs .tabs-title.is-active a {
  background: #912712;
  border-bottom: 0.0625rem solid #F1F3F5;
  color: #FFFFFF;
}
@media only screen and (max-width: 47.9375em) {
  .tabs .tabs-title.is-active:first-child a {
    border-top: 0.0625rem solid #003a71;
  }
}
@media only screen and (max-width: 47.9375em) {
  .tabs .tabs-title.is-active:last-child a {
    border-bottom: 0.0625rem solid #003a71;
  }
}

.tabs-content {
  background: #F1F3F5;
  border-top: 0.0625rem solid #003a71;
}

.off-canvas-content #footer-container {
  max-width: none;
  margin: 0 auto;
  padding: 0;
}

.hide-for-now {
  display: none;
  visibility: hidden;
  width: 1px;
  height: 1px;
  position: absolute;
  speak: none;
  left: -9999px;
}

.the-tags {
  display: inline-block;
  width: 100%;
  margin: 2.5rem 0;
  text-align: left;
}
.the-tags a {
  display: inline-block;
  margin-bottom: 0.3125rem;
}

.keep-together {
  display: inline-block !important;
}

body.modal-active {
  overflow: hidden;
}

form#searchform {
  border: 0.0625rem solid #003a71;
  border-radius: 0.1875rem;
  overflow: hidden;
  position: relative;
}
form#searchform:after {
  color: #FFFFFF;
  content: "\f002";
  cursor: pointer;
  display: block;
  font-family: "Font Awesome 5 Pro", "fontawesome";
  font-size: 1.125rem;
  font-weight: 900;
  pointer-events: none;
  position: absolute;
  right: 0.5rem;
  top: 0.3125rem;
}
form#searchform .input-group {
  margin: 0;
}
form#searchform .input-group .input-group-field {
  border: 0;
  box-shadow: none;
  line-height: 2.25rem;
  max-width: none;
  padding: 0 0.625rem;
}
form#searchform input#searchsubmit {
  background: #003a71 !important;
  text-indent: -9999px;
  min-width: 2.25rem;
  padding: 0;
  transition: all 0.2s ease-out;
}
form#searchform input#searchsubmit:hover, form#searchform input#searchsubmit:focus {
  background: #000000 !important;
}

.bs-btn, .gform_footer input.gform_button, #respond .button {
  background: #FFFFFF;
  border-radius: 0.1875rem;
  color: #001717;
  display: inline-block;
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif;
  font-size: 1.125rem;
  font-weight: 400 !important;
  letter-spacing: 0.15rem;
  line-height: 1 !important;
  padding: 1.25rem 2.1875rem;
  text-decoration: none !important;
  text-transform: uppercase;
  transition: all 0.2s ease-out;
}

.bs-btn.bs-btn-white {
  background: #FFFFFF;
}

.bs-btn.bs-btn-white:hover,
.bs-btn.bs-btn-white:focus {
  background: #001717;
  color: #FFFFFF;
}

.bs-btn.bs-btn-red,
.gform_footer input.gform_button,
#respond .button {
  background: #912712;
  color: #FFFFFF !important;
}

.bs-btn.bs-btn-red:hover,
.bs-btn.bs-btn-red:focus,
.gform_footer input.gform_button:hover,
.gform_footer input.gform_button:focus,
#respond .button:hover,
#respond .button:focus {
  background: #000000;
  color: #FFFFFF !important;
}

.bs-btn.bs-btn-blue {
  background: #003a71 !important;
  color: #FFFFFF !important;
}

.bs-btn.bs-btn-blue:hover,
.bs-btn.bs-btn-blue:focus {
  background: #000000 !important;
  color: #FFFFFF !important;
}

.bs-btn.bs-btn-clear {
  background: none !important;
  color: #000000 !important;
}

.bs-btn.bs-btn-clear:hover,
.bs-btn.bs-btn-clear:focus {
  background: #000000 !important;
  color: #FFFFFF !important;
}

.bs-btn.bs-btn-black {
  background: #000000;
  color: #FFFFFF;
}

.bs-btn.bs-btn-black:hover,
.bs-btn.bs-btn-black:focus {
  background: #FFFFFF;
  color: #000000;
}

.bs-btn:hover,
.bs-btn:focus,
.gform_footer input.gform_button:hover,
.gform_footer input.gform_button:focus,
#respond .button:hover,
#respond .button:focus {
  background: #000000;
  color: #FFFFFF;
}

.bs-btns-wrapper {
  text-align: left;
  width: 100%;
}
@media only screen and (max-width: 37.5em) {
  .bs-btns-wrapper {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
}
.bs-btns-wrapper .bs-btn {
  display: inline-block;
  margin: 0 0.625rem 0.625rem 0;
}
@media only screen and (max-width: 37.5em) {
  .bs-btns-wrapper .bs-btn {
    margin: 0.625rem 0.3125rem 0;
    text-align: center;
    width: auto;
  }
}

img.lazyload {
  min-height: 12.5rem;
  width: 100%;
}

img.lazyloaded {
  opacity: 1;
}

.max-width-sixteen-hundred {
  max-width: 100rem !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.max-width-thirteen-sixtysix {
  width: 100%;
  max-width: 85.375rem;
  margin-left: auto !important;
  margin-right: auto !important;
}

.max-width-twelve-hundred {
  width: 100%;
  max-width: 75rem;
  margin-left: auto !important;
  margin-right: auto !important;
}

.max-width-eleven-seventy {
  width: 100%;
  max-width: 73.125rem;
  margin-left: auto !important;
  margin-right: auto !important;
}

.max-width-nine-seventy {
  max-width: 60.625rem !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.max-width-eight-thirty {
  max-width: 51.875rem !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.max-width-eight-hundred {
  max-width: 50rem !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.entry-content h2, .entry-content h3, .entry-content h4, .entry-content h5, .entry-content h6 {
  line-height: 1.2;
  margin-bottom: 0.3125rem;
  text-transform: uppercase;
}
.entry-content h2 + h3, .entry-content h3 + h4, .entry-content h4 + h5, .entry-content h5 + h6 {
  margin-top: 1rem;
}
.entry-content h4, .entry-content h5, .entry-content h6 {
  text-transform: uppercase;
}
.entry-content figure.wp-caption figcaption.wp-caption-text, .entry-content figure.wp-caption figcaption.vc_figure-caption, .entry-content figure.vc_figure figcaption.wp-caption-text, .entry-content figure.vc_figure figcaption.vc_figure-caption {
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif;
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 500;
  letter-spacing: 0.05rem;
  margin-top: 0;
  padding: 0.25rem;
  text-align: center;
  text-transform: uppercase;
}
.entry-content ul.row {
  margin-left: 1.25rem;
}
.entry-content ul.row li.columns {
  padding-left: 0;
}
.entry-content ul.row .column:last-child:not(:first-child),
.entry-content ul.row .columns:last-child:not(:first-child),
.entry-content ol.row .column:last-child:not(:first-child),
.entry-content ol.row .columns:last-child:not(:first-child) {
  float: left;
}
.entry-content p + ul, .entry-content p + ol {
  margin-top: -0.9375rem;
}
.entry-content ul li, .entry-content ol li {
  margin-bottom: 0.625rem;
}
.entry-content ul li:last-of-type, .entry-content ol li:last-of-type {
  margin-bottom: 0;
}

.readable-line-length {
  max-width: 50rem;
  margin: 0 auto;
}

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

.readable-line-length.text-align-center {
  margin-right: auto !important;
  margin-left: auto !important;
  display: block;
}

@media only screen and (max-width: 39.9375em) {
  html .main-wrap .main-content,
  html .main-wrap .sidebar {
    margin-left: 0.9375rem;
    margin-right: 0.9375rem;
  }
}
#copyright {
  padding: 1rem 0.9375rem;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media only screen and (max-width: 64em) {
  #copyright {
    flex-direction: column;
  }
}
#copyright p {
  margin-bottom: 0;
}
#copyright ul.social-media-wrapper {
  list-style: none;
  margin: 0;
  text-align: right;
}
@media only screen and (max-width: 64em) {
  #copyright ul.social-media-wrapper {
    text-align: center;
    width: 100%;
  }
}
#copyright ul.social-media-wrapper li {
  display: inline-block;
  font-size: 1.25rem;
  height: 2.25rem;
  line-height: 2.25rem;
  width: 2.25rem;
}
@media only screen and (max-width: 64em) {
  #copyright .small-12.medium-12.large-7 {
    margin-bottom: 0.625rem;
  }
  #copyright .small-12.medium-12.large-7 p {
    text-align: center;
  }
}

#back-top {
  position: fixed;
  bottom: 1.5625rem;
  right: 0;
  z-index: 999;
}
#back-top a {
  border-right: 0;
  color: #FFFFFF;
  display: inline-block;
  height: 2.5rem;
  line-height: 2.5rem;
  opacity: 1;
  text-align: center;
  width: 2.8125rem;
  transition: all 0.2s ease-out;
}
#back-top a img {
  position: relative;
  top: 0.9375rem;
  transform: rotate(-90deg);
  width: 2.375rem;
  transition: top 0.2s ease-out;
}
#back-top a:hover img, #back-top a:focus img {
  top: 0.625rem;
}
#back-top.backtop-right {
  left: auto;
  right: 0;
}
#back-top.backtop-right a {
  border-radius: 0.25rem 0 0 0.25rem;
}
#back-top.backtop-left {
  left: 0;
  right: auto;
}
#back-top.backtop-left a {
  border-radius: 0 0.25rem 0.25rem 0;
}
#back-top.backtop-center {
  bottom: 0;
  left: 50%;
  right: auto;
  transform: translateX(-50%);
}
#back-top.backtop-center a {
  border-radius: 0.25rem 0.25rem 0 0;
  height: 1.875rem;
  line-height: 1.875rem;
}

/**** 3. HEADER STYLES ****/
header#masthead {
  background-size: cover;
  left: 0;
  margin-left: auto;
  margin-right: auto;
  padding: 0.625rem 0 0.5rem;
  position: relative;
  top: 0;
  width: 100%;
  z-index: 99;
}
@media only screen and (max-width: 64em) {
  header#masthead {
    padding: 0.625rem 0 0.5rem !important;
  }
}
header#masthead #header-inner {
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
  width: 100%;
}
@media only screen and (max-width: 40em) {
  header#masthead #header-inner {
    padding-left: 0;
    padding-right: 0;
  }
}
@media only screen and (max-width: 40em) {
  header#masthead .site-title-bar.title-bar {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
  }
}
header#masthead nav.top-bar {
  align-items: flex-start;
  background: none;
  display: flex;
  flex-wrap: wrap;
}
header#masthead nav.top-bar .top-bar-top {
  margin-bottom: 1rem;
  width: 100%;
}
header#masthead nav.top-bar .top-bar-top .top-bar-title {
  margin-right: 0;
}
header#masthead nav.top-bar .top-bar-social {
  list-style: none;
  margin: 0;
}
header#masthead nav.top-bar .top-bar-social ul.social-media-wrapper {
  display: flex;
  margin: 0;
}
header#masthead nav.top-bar .top-bar-social ul.social-media-wrapper li {
  display: inline-block;
  font-size: 1.5rem;
  height: 3rem;
  line-height: 3rem;
  position: relative;
  text-align: center;
  vertical-align: top;
  width: 3rem;
  z-index: 99;
}
header#masthead nav.top-bar .top-bar-social ul.social-media-wrapper li.inline-social-search-wrapper {
  font-size: 1.125rem;
  line-height: inherit;
  margin: 0 1.875rem 0 0.625rem;
}
@media only screen and (max-width: 64em) {
  header#masthead nav.top-bar .top-bar-social ul.social-media-wrapper li.inline-social-search-wrapper {
    margin: 0 0.625rem 0 0;
  }
}
header#masthead nav.top-bar .top-bar-social ul.social-media-wrapper li.inline-social-search-wrapper button.search-toggle {
  color: #001717;
  height: 3rem;
  line-height: inherit;
  width: 3rem;
}
header#masthead nav.top-bar .top-bar-social ul.social-media-wrapper li.inline-social-search-wrapper form#searchform {
  right: 0;
  margin: 1.25rem 0 0 0 !important;
  position: absolute !important;
}
@media only screen and (max-width: 64em) {
  header#masthead nav.top-bar .top-bar-social ul.social-media-wrapper li.inline-social-search-wrapper form#searchform {
    left: 0;
    right: auto;
  }
}
header#masthead nav.top-bar .top-bar-social ul.social-media-wrapper li.inline-social-search-wrapper form#searchform.show {
  margin: 0.5rem 0 0 0 !important;
}
@media only screen and (max-width: 64em) {
  header#masthead nav.top-bar .top-bar-social ul.social-media-wrapper li.inline-social-search-wrapper form#searchform.show {
    left: 0;
    right: auto;
  }
}
header#masthead nav.top-bar .top-bar-social ul.social-media-wrapper li.telephone {
  margin-left: 0;
  margin-bottom: 0.625rem;
  text-align: right;
  width: 100%;
}
@media only screen and (max-width: 64em) {
  header#masthead nav.top-bar .top-bar-social ul.social-media-wrapper li.telephone {
    text-align: center;
  }
}
header#masthead nav.top-bar .top-bar-social ul.social-media-wrapper li.telephone a {
  font-weight: 700;
}
header#masthead nav.top-bar .top-bar-social ul.social-media-wrapper li.custom-button {
  width: auto !important;
}
header#masthead nav.top-bar .top-bar-social ul.social-media-wrapper li.custom-button a {
  border-radius: 0.1875rem;
  display: block;
  line-height: inherit;
  padding: 0 0.9375rem;
  width: auto !important;
  white-space: nowrap;
}
@media only screen and (max-width: 64em) {
  header#masthead nav.top-bar .top-bar-social ul.social-media-wrapper li {
    margin-left: 0;
  }
}
header#masthead nav.top-bar .top-bar-social ul.social-media-wrapper li a {
  display: block;
}
header#masthead nav.top-bar .above-menu-search-wrapper form#searchform,
header#masthead nav.top-bar .inline-social-search-wrapper form#searchform,
header#masthead nav.top-bar .menu-search-wrapper form#searchform {
  background: #CED4DA !important;
  border: 0;
  border-radius: 0;
  display: block;
  margin: 2.5rem 0 0 0;
  max-width: none;
  opacity: 0;
  padding: 0.9375rem;
  position: absolute;
  right: 0;
  top: 100%;
  visibility: hidden;
  width: 18.75rem;
  z-index: 1;
  transition: all 0.2s ease-out;
}
@media only screen and (max-width: 64em) {
  header#masthead nav.top-bar .above-menu-search-wrapper form#searchform,
  header#masthead nav.top-bar .inline-social-search-wrapper form#searchform,
  header#masthead nav.top-bar .menu-search-wrapper form#searchform {
    left: 0;
    right: auto;
  }
}
header#masthead nav.top-bar .above-menu-search-wrapper form#searchform.show,
header#masthead nav.top-bar .inline-social-search-wrapper form#searchform.show,
header#masthead nav.top-bar .menu-search-wrapper form#searchform.show {
  margin: 0.625rem 0 0 0;
  opacity: 1;
  visibility: visible;
  z-index: 99;
}
header#masthead nav.top-bar .above-menu-search-wrapper form#searchform .input-group,
header#masthead nav.top-bar .inline-social-search-wrapper form#searchform .input-group,
header#masthead nav.top-bar .menu-search-wrapper form#searchform .input-group {
  background: #FFFFFF;
  margin: 0;
}
header#masthead nav.top-bar .above-menu-search-wrapper form#searchform .input-group .input-group-button:before,
header#masthead nav.top-bar .inline-social-search-wrapper form#searchform .input-group .input-group-button:before,
header#masthead nav.top-bar .menu-search-wrapper form#searchform .input-group .input-group-button:before {
  background: url(../../../src/assets/images/black-arrow.svg) no-repeat left center;
  color: #001717;
  content: "";
  cursor: pointer;
  display: block;
  font-family: fontawesome;
  height: 0.625rem;
  right: 1.75rem;
  pointer-events: none;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 2.375rem;
  z-index: 10;
  transition: right 0.2s ease-out;
}
header#masthead nav.top-bar .above-menu-search-wrapper form#searchform .input-group .input-group-button:hover:before, header#masthead nav.top-bar .above-menu-search-wrapper form#searchform .input-group .input-group-button:focus:before,
header#masthead nav.top-bar .inline-social-search-wrapper form#searchform .input-group .input-group-button:hover:before,
header#masthead nav.top-bar .inline-social-search-wrapper form#searchform .input-group .input-group-button:focus:before,
header#masthead nav.top-bar .menu-search-wrapper form#searchform .input-group .input-group-button:hover:before,
header#masthead nav.top-bar .menu-search-wrapper form#searchform .input-group .input-group-button:focus:before {
  right: 1.125rem;
}
header#masthead nav.top-bar .above-menu-search-wrapper form#searchform input#s,
header#masthead nav.top-bar .inline-social-search-wrapper form#searchform input#s,
header#masthead nav.top-bar .menu-search-wrapper form#searchform input#s {
  border: 0;
  border-radius: 0 !important;
  box-shadow: none;
  height: auto;
  line-height: 2.125rem;
  padding: 0 0.625rem 0 0.3125rem;
}
header#masthead nav.top-bar .above-menu-search-wrapper form#searchform input#searchsubmit,
header#masthead nav.top-bar .inline-social-search-wrapper form#searchform input#searchsubmit,
header#masthead nav.top-bar .menu-search-wrapper form#searchform input#searchsubmit {
  background: #FFAF26 !important;
  border: 0;
  border-radius: 0 !important;
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif !important;
  font-size: 1.125rem;
  font-weight: 700;
  height: 2.125rem;
  line-height: 2.125rem;
  margin: 0;
  padding: 0 0.625rem;
  text-indent: -9999px;
  text-transform: uppercase;
  width: 2.125rem;
  transition: all 0.2s ease-out;
}
header#masthead nav.top-bar .above-menu-search-wrapper form#searchform input#searchsubmit:hover, header#masthead nav.top-bar .above-menu-search-wrapper form#searchform input#searchsubmit:focus,
header#masthead nav.top-bar .inline-social-search-wrapper form#searchform input#searchsubmit:hover,
header#masthead nav.top-bar .inline-social-search-wrapper form#searchform input#searchsubmit:focus,
header#masthead nav.top-bar .menu-search-wrapper form#searchform input#searchsubmit:hover,
header#masthead nav.top-bar .menu-search-wrapper form#searchform input#searchsubmit:focus {
  background: #000000;
}
header#masthead nav.top-bar .above-menu-search-wrapper {
  margin: 0.75rem 0 0 0;
}
header#masthead nav.top-bar .above-menu-search-wrapper form#searchform {
  background: none;
  border: 0.0625rem solid #003a71;
  margin: 0;
  opacity: 1;
  overflow: hidden;
  padding: 0;
  top: 0;
  visibility: visible;
}
header#masthead nav.top-bar .above-menu-search-wrapper form#searchform:before {
  right: 0.5rem;
  top: 0.3125rem;
}
header#masthead nav.top-bar .above-menu-search-wrapper form#searchform:after {
  display: none;
}
header#masthead .logo-wrapper.hide-for-small-only .custom-logo-link {
  display: inline-block;
  padding: 0.625rem 0 1rem !important;
  text-align: center;
  width: 100%;
}
header#masthead .logo-wrapper.hide-for-small-only .custom-logo-link img.custom-logo, header#masthead .logo-wrapper.hide-for-small-only .custom-logo-link svg {
  display: block;
  height: auto;
  margin: 0;
  max-width: 12.875rem;
  width: 100%;
}
header#masthead .alt-nav-wrapper {
  align-items: center;
  display: flex;
  justify-content: center;
  margin: 0 0 0.625rem 0;
  width: 100%;
}
header#masthead .alt-nav-wrapper .alt-nav-my-cart {
  margin-left: 0.625rem;
  margin-top: 0.625rem;
  text-align: center;
}
header#masthead .alt-nav-wrapper .alt-nav-my-cart a {
  align-items: center;
  border-radius: 6.25rem;
  display: inline-block;
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif;
  font-size: 0.9375rem !important;
  font-weight: 700;
  padding: 0.4375rem 0.9375rem;
  text-transform: uppercase;
  width: auto;
  transition: all 0.2s ease-out;
}
header#masthead .alt-nav-wrapper .alt-nav-my-cart i {
  display: inline;
  font-size: 1.125rem;
  margin-right: 0.125rem;
}
header#masthead .alt-nav-wrapper .alt-nav-my-cart span.cart-contents {
  background: #FFFFFF;
  border-radius: 100%;
  color: #003a71;
  display: inline-block;
  line-height: 1.25rem;
  height: 1.25rem;
  margin: 0 0 0 0.3125rem;
  min-width: 1.25rem;
  text-align: center !important;
}
header#masthead .alt-nav-wrapper .menu {
  background: none;
  justify-content: flex-end;
}
header#masthead .alt-nav-wrapper .menu > li {
  margin-left: 0.5rem;
  padding-left: 0.5rem;
  border-left: 0.0625rem solid #CED4DA;
  border-right: 0;
}
header#masthead .alt-nav-wrapper .menu > li:first-child {
  margin-left: 0;
  padding-left: 0;
  border-left: 0;
}
header#masthead .alt-nav-wrapper .menu > li > a {
  background: none;
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
  padding: 0 !important;
  text-transform: uppercase;
}
header#masthead .alt-nav-wrapper .menu > li.is-active > a {
  color: inherit;
}
header#masthead .desktop-menu {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
header#masthead .desktop-menu.menu > li > a {
  padding: 0 1rem !important;
  white-space: nowrap;
  line-height: 2.25rem;
}
header#masthead .desktop-menu.menu > li > a:before {
  content: "" !important;
  width: 0;
  height: 0.5rem;
  display: block !important;
  position: absolute;
  top: 0;
  left: 0;
  transition: width 0.2s ease-out;
}
header#masthead .desktop-menu.menu > li > a:hover:before {
  width: 100%;
}
header#masthead .desktop-menu.menu > li:last-of-type ul.dropdown {
  left: auto;
  right: 0;
}
header#masthead .menu > li {
  float: none;
  display: inline-block;
}
header#masthead .menu > li > a {
  background: none;
  padding: 0 !important;
  font-size: 1rem;
  font-weight: 400;
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif;
  line-height: 1;
  text-transform: uppercase;
}
header#masthead .menu > li.menu-item-has-children > a {
  position: relative;
}
header#masthead .menu > li.menu-item-has-children > a:before {
  display: none;
}
header#masthead .menu > li:not(:last-child) {
  border-right: 0;
}
header#masthead .menu .active > a {
  background: none;
  color: #FFFFFF;
}
header#masthead .menu > li {
  position: relative;
}
header#masthead .menu .dropdown {
  min-width: 15.625rem;
  display: block;
  visibility: hidden;
  opacity: 0;
  margin-top: 20px;
  padding: 0;
  z-index: -1;
  text-align: left;
  transition: all 0.2s ease-out;
}
header#masthead .menu .dropdown li a {
  height: auto;
  line-height: 1;
  font-size: 0.9375rem;
  font-weight: 400;
  padding: 0.9375rem 1.25rem !important;
  display: block;
  position: relative;
  white-space: normal;
  transition: all 0.2s ease-out;
}
header#masthead .menu .dropdown li {
  transition: background 0.2s ease-out;
}
header#masthead .menu .dropdown li a:hover:after {
  content: "";
}
header#masthead .menu .dropdown li:after {
  display: none;
}
header#masthead .menu > li.is-active:hover .dropdown,
header#masthead .menu > li.is-active:focus .dropdown,
header#masthead .menu > li:focus-within .dropdown {
  visibility: visible;
  opacity: 1;
  margin-top: 0;
  z-index: 1;
}
header#masthead .menu > li.opens-left > .is-dropdown-submenu {
  left: 0;
  top: 100%;
}
header#masthead .menu > li.opens-left:last-child > .is-dropdown-submenu {
  left: auto;
  right: 0;
  margin-right: 0;
}
header#masthead .menu > li.is-dropdown-submenu-parent > a::after {
  display: none;
}
header#masthead nav.top-bar.has-search .desktop-menu {
  padding-right: 3rem !important;
  width: 100% !important;
}

@media only screen and (max-width: 39.9375em) {
  .title-bar {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
  }
}
/* 3a. Header Option One Styles */
header#masthead.header-option-one .top-bar {
  display: flex;
  background: none;
  flex-wrap: wrap;
  align-items: center;
}
header#masthead.header-option-one .top-bar .top-bar-left {
  width: 100%;
  max-width: 12.9375rem;
}
@media only screen and (max-width: 64em) {
  header#masthead.header-option-one .top-bar .top-bar-left {
    max-width: 100%;
  }
}
header#masthead.header-option-one .top-bar .top-bar-left .top-bar-title {
  margin: 0;
}
header#masthead.header-option-one .top-bar .top-bar-left .logo-wrapper.hide-for-small-only .custom-logo-link {
  padding: 1.5rem 0 !important;
}
header#masthead.header-option-one .top-bar .top-bar-right {
  align-items: center;
  display: flex;
  flex-direction: row;
  position: relative;
  width: calc(100% - 407px);
}
@media only screen and (max-width: 81.25em) {
  header#masthead.header-option-one .top-bar .top-bar-right {
    padding-left: 1.875rem;
    width: calc(100% - 207px);
  }
}
@media only screen and (max-width: 68.75em) {
  header#masthead.header-option-one .top-bar .top-bar-right {
    padding-left: 1rem;
  }
}
@media only screen and (max-width: 64em) {
  header#masthead.header-option-one .top-bar .top-bar-right {
    align-items: center;
    justify-content: center;
    padding-left: 0;
    width: 100%;
  }
}
header#masthead.header-option-one .top-bar .top-bar-right .alt-nav-wrapper {
  justify-content: flex-end;
  order: 1;
}
@media only screen and (max-width: 64em) {
  header#masthead.header-option-one .top-bar .top-bar-right .alt-nav-wrapper {
    justify-content: center;
  }
}
header#masthead.header-option-one .top-bar .top-bar-right .alt-nav-wrapper .alt-nav-my-cart {
  margin-left: 0.625rem;
  margin-top: 0;
  text-align: right;
}
header#masthead.header-option-one .top-bar .top-bar-right .top-bar-social {
  order: 3;
}
header#masthead.header-option-one .top-bar .top-bar-right .top-bar-social ul.social-media-wrapper {
  text-align: right;
}
header#masthead.header-option-one .top-bar .top-bar-right .top-bar-social ul.social-media-wrapper li:not(.custom-button):not(.inline-social-search-wrapper) {
  display: none;
}
header#masthead.header-option-one .top-bar .top-bar-right .desktop-menu {
  height: 100%;
  order: 2;
}
header#masthead.header-option-one .above-menu-search-wrapper {
  margin-bottom: 0.625rem;
}
header#masthead.header-option-one .above-menu-search-wrapper,
header#masthead.header-option-one .inline-social-search-wrapper {
  height: 2.25rem;
  position: relative;
}
header#masthead.header-option-one .above-menu-search-wrapper form#searchform,
header#masthead.header-option-one .inline-social-search-wrapper form#searchform {
  background: #FFFFFF;
  border: 0.0625rem solid #CED4DA;
  border-radius: 0.1875rem;
  margin: 0;
  max-width: 12.5rem;
  position: relative !important;
  right: 0;
  width: 100%;
}
@media only screen and (max-width: 64em) {
  header#masthead.header-option-one .above-menu-search-wrapper form#searchform,
  header#masthead.header-option-one .inline-social-search-wrapper form#searchform {
    margin: 0 auto !important;
  }
}
header#masthead.header-option-one .above-menu-search-wrapper form#searchform:after,
header#masthead.header-option-one .inline-social-search-wrapper form#searchform:after {
  position: absolute;
  content: "\f002";
  font-family: fontawesome !important;
  width: 34px;
  height: 34px;
  line-height: 34px;
  text-align: center;
  top: 0;
  right: 0;
  cursor: pointer;
}
header#masthead.header-option-one .above-menu-search-wrapper form#searchform input#searchsubmit,
header#masthead.header-option-one .inline-social-search-wrapper form#searchform input#searchsubmit {
  text-indent: -9999px;
  margin: 0 !important;
  width: 34px;
  height: 34px;
  background: none;
}
header#masthead.header-option-one .above-menu-search-wrapper form#searchform input#s,
header#masthead.header-option-one .inline-social-search-wrapper form#searchform input#s {
  max-width: none;
  border: 0;
  box-shadow: none;
  padding: 0 1.25rem 0 0.625rem !important;
  line-height: 34px;
  height: 34px;
  background: none;
}
header#masthead.header-option-one .above-menu-search-wrapper form#searchform .input-group,
header#masthead.header-option-one .inline-social-search-wrapper form#searchform .input-group {
  margin: 0;
}
header#masthead.header-option-one nav.top-bar .menu-search-wrapper {
  bottom: 0;
  height: 2.25rem;
  position: absolute;
  right: 0;
  width: 2.25rem;
}
header#masthead.header-option-one nav.top-bar .menu-search-wrapper button {
  cursor: pointer !important;
  font-size: 1.125rem;
  height: 2.25rem;
  line-height: 2.25rem;
  text-align: right;
  vertical-align: top;
  width: 2.25rem;
  transition: all 0.2s ease-out;
}
header#masthead.header-option-one nav.top-bar .menu-search-wrapper form#searchform:after {
  display: none;
}
header#masthead.header-option-one nav.top-bar .menu-search-wrapper form#searchform.show {
  margin: 0;
}
header#masthead.header-option-one nav.top-bar .inline-social-search-wrapper button {
  text-align: center;
}
header#masthead.header-option-one nav.top-bar .inline-social-search-wrapper form#searchform {
  border-radius: 0;
}
header#masthead.header-option-one nav.top-bar .inline-social-search-wrapper form#searchform:after {
  content: "";
  display: block !important;
}

@media only screen and (max-width: 64em) {
  header#masthead.header-option-one {
    display: block;
  }
  header#masthead.header-option-one .logo-wrapper {
    text-align: center;
  }
  header#masthead.header-option-one .logo-wrapper img {
    display: block;
    margin: 0 auto;
  }
  header#masthead.header-option-one nav.top-bar .top-bar-title a {
    display: inline-block;
    padding: 0;
    margin-bottom: 1rem;
  }
  header#masthead.header-option-one nav.top-bar .top-bar-right .alt-nav-wrapper {
    width: 100%;
  }
  header#masthead.header-option-one nav.top-bar .top-bar-right .alt-nav-wrapper ul.menu {
    margin: 0.625rem 0;
    justify-content: center;
  }
  header#masthead.header-option-one nav.top-bar .top-bar-right .top-bar-social {
    width: 100%;
  }
  header#masthead.header-option-one nav.top-bar .top-bar-right .top-bar-social ul.social-media-wrapper {
    text-align: center;
    margin-bottom: 1rem;
  }
  header#masthead.header-option-one nav.top-bar .top-bar-right > .dropdown.menu.desktop-menu {
    width: 100%;
    padding: 0;
    margin-right: auto;
  }
  header#masthead.header-option-one nav.top-bar .top-bar-right form#searchform {
    left: auto;
    right: 0;
  }
  header#masthead.header-option-one nav.top-bar .top-bar-right form#searchform.show {
    margin: 0.5rem 0 0 0;
  }
}
@media only screen and (max-width: 40em) {
  header#masthead.header-option-one {
    padding: 0 !important;
  }
  header#masthead.header-option-one .logo-wrapper.hide-for-small-only {
    display: none !important;
  }
  header#masthead.header-option-one .top-bar {
    padding: 0 !important;
  }
  header#masthead.header-option-one .top-bar-social {
    display: none;
  }
  header#masthead.header-option-one .menu-search-wrapper {
    display: none;
  }
}
/* 3b. Header Option Two Styles */
header#masthead.header-option-two .top-bar {
  display: flex;
  background: none;
  flex-wrap: wrap;
}
header#masthead.header-option-two .top-bar .top-bar-left {
  width: 100%;
  max-width: 18.75rem;
}
@media only screen and (max-width: 64em) {
  header#masthead.header-option-two .top-bar .top-bar-left {
    max-width: 100%;
    text-align: center;
  }
}
header#masthead.header-option-two .top-bar .top-bar-left .top-bar-title {
  margin: 0;
}
header#masthead.header-option-two .top-bar .top-bar-left .logo-wrapper.hide-for-small-only .custom-logo-link {
  display: inline-block;
  padding: 0 !important;
}
header#masthead.header-option-two .top-bar .top-bar-left .logo-wrapper.hide-for-small-only .custom-logo-link img.custom-logo {
  width: 18.75rem;
  height: auto;
  display: block;
}
header#masthead.header-option-two .top-bar .top-bar-right {
  width: calc(100% - 18.75rem);
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  padding-left: 2.5rem;
  position: relative;
}
@media only screen and (max-width: 64em) {
  header#masthead.header-option-two .top-bar .top-bar-right {
    align-items: center;
    padding-left: 0;
    text-align: center;
    width: 100%;
  }
}
header#masthead.header-option-two .top-bar .top-bar-right .alt-nav-wrapper {
  justify-content: flex-end;
  order: 1;
}
@media only screen and (max-width: 64em) {
  header#masthead.header-option-two .top-bar .top-bar-right .alt-nav-wrapper {
    justify-content: center;
  }
}
header#masthead.header-option-two .top-bar .top-bar-right .alt-nav-wrapper .alt-nav-my-cart {
  margin-top: 0;
}
header#masthead.header-option-two .top-bar .top-bar-right .top-bar-social {
  order: 2;
  text-align: right;
}
@media only screen and (max-width: 64em) {
  header#masthead.header-option-two .top-bar .top-bar-right .top-bar-social ul.social-media-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
}
header#masthead.header-option-two .top-bar .top-bar-right .top-bar-social ul.social-media-wrapper li.inline-social-search-wrapper form#searchform:after {
  content: "";
  display: block !important;
}
header#masthead.header-option-two .top-bar .top-bar-bottom {
  position: relative;
  width: 100%;
}
header#masthead.header-option-two nav.top-bar.has-search ul.desktop-menu {
  width: calc(100% - 4rem);
  margin-right: 3.75rem;
}
header#masthead.header-option-two nav.top-bar .menu-search-wrapper {
  bottom: 0;
  height: 2.25rem;
  position: absolute;
  right: 0;
  width: 2.25rem;
}
header#masthead.header-option-two nav.top-bar .menu-search-wrapper button {
  cursor: pointer !important;
  font-size: 1.25rem;
  height: 2.25rem;
  line-height: 2.25rem;
  vertical-align: top;
  text-align: center;
  width: 2.25rem;
  transition: all 0.2s ease-out;
}
@media only screen and (max-width: 64em) {
  header#masthead.header-option-two nav.top-bar .menu-search-wrapper form#searchform {
    left: auto;
    right: 0;
  }
}
header#masthead.header-option-two nav.top-bar .menu-search-wrapper form#searchform:after {
  display: none;
}
header#masthead.header-option-two nav.top-bar .menu-search-wrapper form#searchform.show {
  margin: 0;
}
@media only screen and (max-width: 64em) {
  header#masthead.header-option-two nav.top-bar .menu-search-wrapper form#searchform.show {
    margin: 0.5rem 0 0 0;
  }
}
header#masthead.header-option-two nav.top-bar .above-menu-search-wrapper form#searchform {
  position: relative;
}

@media only screen and (max-width: 47.9375em) {
  header#masthead.header-option-two {
    display: block;
  }
  header#masthead.header-option-two .logo-wrapper {
    text-align: center;
  }
  header#masthead.header-option-two .logo-wrapper img {
    display: block;
    margin: 0 auto;
  }
  header#masthead.header-option-two .top-bar .top-bar-title a {
    display: inline-block;
    margin-bottom: 1rem;
    padding: 0;
  }
  header#masthead.header-option-two .top-bar .top-bar-right .alt-nav-wrapper {
    width: 100%;
  }
  header#masthead.header-option-two .top-bar .top-bar-right .alt-nav-wrapper ul.menu {
    justify-content: center;
    margin: 0.625rem 0;
  }
  header#masthead.header-option-two .top-bar .top-bar-right .top-bar-social {
    width: 100%;
  }
  header#masthead.header-option-two .top-bar .top-bar-right .top-bar-social ul.social-media-wrapper {
    margin-bottom: 1rem;
    text-align: center;
  }
  header#masthead.header-option-two .top-bar .top-bar-right > .dropdown.menu.desktop-menu {
    margin-right: auto;
    padding: 0;
    width: calc(100% - 3rem);
  }
}
@media only screen and (max-width: 40em) {
  header#masthead.header-option-two {
    padding: 0 !important;
  }
  header#masthead.header-option-two .logo-wrapper.hide-for-small-only {
    display: none !important;
  }
  header#masthead.header-option-two .top-bar {
    padding: 0 !important;
  }
  header#masthead.header-option-two .top-bar-social {
    display: none;
  }
  header#masthead.header-option-two .menu-search-wrapper {
    display: none;
  }
}
/* 3c. Header Option Three Styles */
header#masthead.header-option-three .top-bar .top-bar-top .alt-nav-wrapper {
  order: 1;
}
header#masthead.header-option-three .top-bar .top-bar-top .alt-nav-wrapper .menu {
  justify-content: center;
}
header#masthead.header-option-three .top-bar .top-bar-left {
  order: 2;
  position: relative;
  width: 100%;
}
header#masthead.header-option-three .top-bar .top-bar-left .desktop-menu {
  background: none;
  order: 3;
}
header#masthead.header-option-three .top-bar .top-bar-left .top-bar-title {
  margin: 0;
}
header#masthead.header-option-three .top-bar .top-bar-right {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  order: 1;
  margin-bottom: 0.9375rem;
  position: relative;
  width: 100%;
}
header#masthead.header-option-three .top-bar .top-bar-right .top-bar-social ul.social-media-wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
@media only screen and (max-width: 64em) {
  header#masthead.header-option-three .top-bar .top-bar-right .top-bar-social ul.social-media-wrapper {
    text-align: center;
  }
}
header#masthead.header-option-three .top-bar .top-bar-right .top-bar-social ul.social-media-wrapper li.telephone {
  text-align: center;
}
header#masthead.header-option-three nav.top-bar.has-search ul.desktop-menu {
  width: calc(100% - 4rem);
  margin-right: 3.75rem;
}
header#masthead.header-option-three nav.top-bar .logo-wrapper .custom-logo-link {
  padding-bottom: 0 !important;
}
header#masthead.header-option-three nav.top-bar .alt-nav-wrapper .alt-nav-my-cart {
  margin-top: 0;
}
header#masthead.header-option-three nav.top-bar .above-menu-search-wrapper {
  margin-bottom: 0.625rem;
}
header#masthead.header-option-three nav.top-bar .above-menu-search-wrapper form#searchform {
  margin: 0 auto !important;
  position: relative;
}
header#masthead.header-option-three nav.top-bar .menu-search-wrapper {
  bottom: 0;
  height: 2.25rem;
  position: absolute;
  right: 0;
  width: 2.25rem;
}
header#masthead.header-option-three nav.top-bar .menu-search-wrapper button {
  font-size: 1.25rem;
  height: 2.25rem;
  line-height: 2.25rem;
  text-align: right;
  width: 2.25rem;
  transition: all 0.2s ease-out;
}
@media only screen and (max-width: 64em) {
  header#masthead.header-option-three nav.top-bar .menu-search-wrapper form#searchform {
    left: auto;
    right: 0;
  }
}
header#masthead.header-option-three nav.top-bar .menu-search-wrapper form#searchform.show {
  margin: 0;
}
@media only screen and (max-width: 64em) {
  header#masthead.header-option-three nav.top-bar .menu-search-wrapper form#searchform.show {
    margin: 0.5rem 0 0 0;
  }
}
header#masthead.header-option-three nav.top-bar .menu-search-wrapper form#searchform:after {
  display: none;
}
header#masthead.header-option-three nav.top-bar .inline-social-search-wrapper button {
  text-align: center;
}
header#masthead.header-option-three nav.top-bar .inline-social-search-wrapper form#searchform:after {
  display: block !important;
}

@media only screen and (max-width: 64em) {
  header#masthead.header-option-three {
    display: block;
  }
  header#masthead.header-option-three .logo-wrapper {
    text-align: center;
  }
  header#masthead.header-option-three .logo-wrapper img {
    display: block;
    margin: 0 auto;
  }
  header#masthead.header-option-three .top-bar .top-bar-title a {
    display: inline-block;
    padding: 0;
  }
  header#masthead.header-option-three .top-bar .top-bar-right .alt-nav-wrapper {
    width: 100%;
  }
  header#masthead.header-option-three .top-bar .top-bar-right .alt-nav-wrapper ul.menu {
    justify-content: center;
    margin: 0.625rem 0;
  }
  header#masthead.header-option-three .top-bar .top-bar-right > .dropdown.menu.desktop-menu {
    margin-right: auto;
    padding: 0;
    width: calc(100% - 3rem);
  }
}
@media only screen and (max-width: 40em) {
  header#masthead.header-option-three {
    padding: 0 !important;
  }
  header#masthead.header-option-three .logo-wrapper.hide-for-small-only {
    display: none !important;
  }
  header#masthead.header-option-three .top-bar {
    padding: 0 !important;
  }
  header#masthead.header-option-three .top-bar-social {
    display: none;
  }
  header#masthead.header-option-three .menu-search-wrapper {
    display: none;
  }
}
/* 3d. Header Option Four Styles */
header#masthead.header-option-four {
  padding: 0 0 0.5rem 0 !important;
}
header#masthead.header-option-four .top-bar {
  align-items: flex-end;
}
header#masthead.header-option-four .top-bar .top-bar-top {
  align-items: center;
  background: #003a71;
  display: flex;
  justify-content: space-between;
  margin: 0 -0.9375rem 0.9375rem;
  padding: 0.625rem 0.9375rem;
  position: relative;
  width: calc(100% + 1.875rem);
}
header#masthead.header-option-four .top-bar .top-bar-top:before, header#masthead.header-option-four .top-bar .top-bar-top:after {
  background: #003a71;
  content: "";
  display: block;
  height: 100%;
  left: 100%;
  position: absolute;
  top: 0;
  width: 200%;
}
header#masthead.header-option-four .top-bar .top-bar-top:after {
  left: auto;
  right: 100%;
}
header#masthead.header-option-four .top-bar .top-bar-top .alt-nav-wrapper {
  justify-content: flex-start;
  margin: 0;
  width: 50%;
}
header#masthead.header-option-four .top-bar .top-bar-top .alt-nav-wrapper .menu > li {
  border-left: 0.125rem solid #FFFFFF;
  margin-left: 0.5rem;
  padding-left: 0.5rem;
}
header#masthead.header-option-four .top-bar .top-bar-top .alt-nav-wrapper .menu > li:first-child {
  border-left: 0;
  margin-left: 0;
  padding-left: 0;
}
header#masthead.header-option-four .top-bar .top-bar-top .alt-nav-wrapper .menu > li > a {
  color: #FFFFFF;
  font-weight: 700;
  line-height: 1.3;
  position: relative;
}
header#masthead.header-option-four .top-bar .top-bar-top .alt-nav-wrapper .menu > li > a:before {
  background: #FFFFFF;
  bottom: 0;
  content: "";
  display: block;
  left: 0;
  height: 0.125rem;
  opacity: 0;
  position: absolute;
  visibility: hidden;
  width: 0;
  transition: all 0.2s ease-out;
}
header#masthead.header-option-four .top-bar .top-bar-top .alt-nav-wrapper .menu > li > a:hover:before {
  opacity: 1;
  visibility: visible;
  width: 100%;
}
header#masthead.header-option-four .top-bar .top-bar-top .alt-nav-wrapper .alt-nav-my-cart {
  margin-left: 0.625rem;
  margin-top: 0;
  text-align: center;
}
header#masthead.header-option-four .top-bar .top-bar-top .top-bar-social {
  margin: 0;
  width: 50%;
}
header#masthead.header-option-four .top-bar .top-bar-top .top-bar-social ul.social-media-wrapper {
  background: none;
  text-align: right;
}
header#masthead.header-option-four .top-bar .top-bar-top .top-bar-social ul.social-media-wrapper li a {
  color: #FFFFFF;
}
header#masthead.header-option-four .top-bar .top-bar-top .top-bar-social ul.social-media-wrapper li:not(.custom-button):not(.telephone) a, header#masthead.header-option-four .top-bar .top-bar-top .top-bar-social ul.social-media-wrapper li.menu-search-wrapper button {
  border-radius: 100%;
  line-height: 2.25rem;
  transition: background 0.2s ease-out;
}
header#masthead.header-option-four .top-bar .top-bar-top .top-bar-social ul.social-media-wrapper li:not(.custom-button):not(.telephone) a:hover, header#masthead.header-option-four .top-bar .top-bar-top .top-bar-social ul.social-media-wrapper li:not(.custom-button):not(.telephone) a:focus, header#masthead.header-option-four .top-bar .top-bar-top .top-bar-social ul.social-media-wrapper li.menu-search-wrapper button:hover, header#masthead.header-option-four .top-bar .top-bar-top .top-bar-social ul.social-media-wrapper li.menu-search-wrapper button:focus {
  background: #FFFFFF;
  color: #003a71;
}
@media only screen and (max-width: 64em) {
  header#masthead.header-option-four .top-bar .top-bar-top .top-bar-social ul.social-media-wrapper li.telephone {
    text-align: right;
  }
}
header#masthead.header-option-four .top-bar .top-bar-top .top-bar-social ul.social-media-wrapper li.inline-social-search-wrapper button {
  color: #FFFFFF;
}
header#masthead.header-option-four .top-bar .top-bar-top .top-bar-social ul.social-media-wrapper li.inline-social-search-wrapper form#searchform.show {
  margin: 0.625rem 0 0 0 !important;
}
header#masthead.header-option-four .top-bar .top-bar-top .top-bar-social ul.social-media-wrapper li.custom-button a {
  display: block;
}
header#masthead.header-option-four .top-bar .top-bar-top .top-bar-social .top-bar-my-cart {
  margin-left: 0.625rem;
  margin-top: 0;
  text-align: center;
}
header#masthead.header-option-four .top-bar .top-bar-top .top-bar-social .top-bar-my-cart a {
  padding: 0.5rem 0.625rem 0.4375rem;
}
header#masthead.header-option-four .top-bar .top-bar-left {
  width: 100%;
  max-width: 300px;
}
@media only screen and (max-width: 64em) {
  header#masthead.header-option-four .top-bar .top-bar-left {
    max-width: 100%;
  }
}
header#masthead.header-option-four .top-bar .top-bar-left .top-bar-title {
  margin: 0;
}
header#masthead.header-option-four .top-bar .top-bar-left .logo-wrapper.hide-for-small-only .custom-logo-link {
  padding: 0 !important;
}
header#masthead.header-option-four .top-bar .top-bar-right {
  align-items: flex-end;
  display: flex;
  flex-direction: column;
  padding-left: 2.5rem;
  position: relative;
  width: calc(100% - 18.75rem);
}
@media only screen and (max-width: 64em) {
  header#masthead.header-option-four .top-bar .top-bar-right {
    align-items: center;
    justify-content: center;
    padding-left: 0;
    width: 100%;
  }
}
header#masthead.header-option-four .top-bar .top-bar-right .desktop-menu {
  order: 2;
}
header#masthead.header-option-four .top-bar .top-bar-right .top-bar-search .above-menu-search-wrapper {
  margin: 0 0 0.3125rem 0;
}
header#masthead.header-option-four .top-bar .top-bar-right .top-bar-search .above-menu-search-wrapper form#searchform:before {
  right: 0.625rem !important;
}
header#masthead.header-option-four .above-menu-search-wrapper {
  margin-bottom: 0.625rem;
}
header#masthead.header-option-four .above-menu-search-wrapper,
header#masthead.header-option-four .inline-social-search-wrapper {
  height: 2.25rem;
  position: relative;
}
header#masthead.header-option-four .above-menu-search-wrapper form#searchform,
header#masthead.header-option-four .inline-social-search-wrapper form#searchform {
  background: #FFFFFF;
  border: 0.0625rem solid #CED4DA;
  border-radius: 0.1875rem;
  margin: 0;
  max-width: 12.5rem;
  position: relative !important;
  right: 0;
  width: 100%;
}
@media only screen and (max-width: 64em) {
  header#masthead.header-option-four .above-menu-search-wrapper form#searchform,
  header#masthead.header-option-four .inline-social-search-wrapper form#searchform {
    margin: 0 auto !important;
  }
}
header#masthead.header-option-four .above-menu-search-wrapper form#searchform:after,
header#masthead.header-option-four .inline-social-search-wrapper form#searchform:after {
  position: absolute;
  content: "\f002";
  font-family: fontawesome !important;
  width: 34px;
  height: 34px;
  line-height: 34px;
  text-align: center;
  top: 0;
  right: 0;
  cursor: pointer;
}
header#masthead.header-option-four .above-menu-search-wrapper form#searchform input#searchsubmit,
header#masthead.header-option-four .inline-social-search-wrapper form#searchform input#searchsubmit {
  text-indent: -9999px;
  margin: 0 !important;
  width: 34px;
  height: 34px;
  background: none;
}
header#masthead.header-option-four .above-menu-search-wrapper form#searchform input#s,
header#masthead.header-option-four .inline-social-search-wrapper form#searchform input#s {
  max-width: none;
  border: 0;
  box-shadow: none;
  padding: 0 10px !important;
  line-height: 34px;
  height: 34px;
  background: none;
}
header#masthead.header-option-four .above-menu-search-wrapper form#searchform .input-group,
header#masthead.header-option-four .inline-social-search-wrapper form#searchform .input-group {
  margin: 0;
}
header#masthead.header-option-four nav.top-bar .menu-search-wrapper {
  bottom: 0;
  height: 2.25rem;
  position: absolute;
  right: 0;
  width: 2.25rem;
}
header#masthead.header-option-four nav.top-bar .menu-search-wrapper button {
  cursor: pointer !important;
  font-size: 1.125rem;
  height: 2.25rem;
  line-height: 2.25rem;
  text-align: right;
  vertical-align: top;
  width: 2.25rem;
  transition: all 0.2s ease-out;
}
header#masthead.header-option-four nav.top-bar .menu-search-wrapper form#searchform:after {
  display: none;
}
header#masthead.header-option-four nav.top-bar .menu-search-wrapper form#searchform.show {
  margin: 0;
}
header#masthead.header-option-four nav.top-bar .inline-social-search-wrapper button {
  text-align: center;
}
header#masthead.header-option-four nav.top-bar .inline-social-search-wrapper form#searchform {
  border-radius: 0;
}
header#masthead.header-option-four nav.top-bar .inline-social-search-wrapper form#searchform:after {
  content: "";
  display: block !important;
}

@media only screen and (max-width: 64em) {
  header#masthead.header-option-four {
    display: block;
  }
  header#masthead.header-option-four .logo-wrapper {
    text-align: center;
  }
  header#masthead.header-option-four .logo-wrapper img {
    display: block;
    margin: 0 auto;
  }
  header#masthead.header-option-four nav.top-bar .top-bar-title a {
    display: inline-block;
    padding: 0;
    margin-bottom: 1rem;
  }
  header#masthead.header-option-four nav.top-bar .top-bar-right .alt-nav-wrapper {
    width: 100%;
  }
  header#masthead.header-option-four nav.top-bar .top-bar-right .alt-nav-wrapper ul.menu {
    margin: 0.625rem 0;
    justify-content: center;
  }
  header#masthead.header-option-four nav.top-bar .top-bar-right .top-bar-social {
    width: 100%;
  }
  header#masthead.header-option-four nav.top-bar .top-bar-right .top-bar-social ul.social-media-wrapper {
    text-align: center;
    margin-bottom: 1rem;
  }
  header#masthead.header-option-four nav.top-bar .top-bar-right > .dropdown.menu.desktop-menu {
    width: 100%;
    padding: 0;
    margin-right: auto;
  }
  header#masthead.header-option-four nav.top-bar .top-bar-right form#searchform {
    left: auto;
    right: 0;
  }
  header#masthead.header-option-four nav.top-bar .top-bar-right form#searchform.show {
    margin: 0.5rem 0 0 0;
  }
}
@media only screen and (max-width: 40em) {
  header#masthead.header-option-four {
    padding: 0 !important;
  }
  header#masthead.header-option-four .logo-wrapper.hide-for-small-only {
    display: none !important;
  }
  header#masthead.header-option-four .top-bar {
    padding: 0 !important;
  }
  header#masthead.header-option-four .top-bar-social {
    display: none;
  }
  header#masthead.header-option-four .menu-search-wrapper {
    display: none;
  }
}
/* 3e. Mobile Off-Canvas Menu Styles */
.title-bar-left {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.title-bar-left .title-bar-title a.custom-logo-link {
  width: 100%;
  max-width: 15.625rem;
  display: inline-block;
}
.title-bar-left .title-bar-title a.custom-logo-link img, .title-bar-left .title-bar-title a.custom-logo-link svg {
  width: 100%;
  height: auto;
  display: block;
}

@media only screen and (max-width: 40em) {
  body:not(.topbar) nav.site-navigation {
    display: none !important;
  }
}

@media only screen and (max-width: 40em) {
  body.topbar header:not(.header-option-one) nav.site-navigation .top-bar-right, body.topbar header:not(.header-option-one) nav.site-navigation .top-bar-top, body.topbar header:not(.header-option-one) nav.site-navigation .top-bar-bottom .menu-search-wrapper {
    display: none !important;
  }
}

@media only screen and (max-width: 40em) {
  body.topbar header#masthead.header-option-three nav.site-navigation .menu-search-wrapper {
    display: none !important;
  }
}

nav.off-canvas a.custom-logo-link {
  display: inline-block;
  width: 100%;
  padding: 0 1rem;
}
nav.off-canvas a.custom-logo-link img.custom-logo {
  display: block;
  margin: 0.625rem auto;
  width: 100%;
  height: auto;
}
nav.off-canvas button.submenu-toggle {
  background: #912712;
}
nav.off-canvas button.submenu-toggle:after {
  border-top-color: #FFFFFF !important;
}
nav.off-canvas .menu:not(.nested) > li > a {
  font-size: 1.125rem !important;
  font-weight: 400;
  min-height: 2.5rem;
  text-transform: uppercase;
}
nav.off-canvas .menu > li.current-menu-item > a, nav.off-canvas .menu > li.current-menu-parent > a {
  background: #FFAF26;
}
nav.off-canvas .menu.nested {
  margin-left: 0;
}
nav.off-canvas .menu.nested > li > a {
  font-size: 1.0625rem;
  font-weight: 400;
  min-height: 2.5rem;
  padding-left: 1.875rem !important;
  padding-bottom: 0.75rem;
  padding-top: 0.6875rem;
  text-transform: uppercase;
  white-space: normal;
}
nav.off-canvas .menu.nested > li > ul > li > a {
  padding-bottom: 0.375rem;
  padding-top: 0.375rem;
}
nav.off-canvas .menu.nested > li > ul > li > a:before {
  content: "◦";
  display: inline-block;
  font-size: 1.5rem;
  line-height: 1.0625rem;
  margin-right: 0.25rem;
  position: relative;
  top: 0.125rem;
  text-transform: lowercase;
}
nav.off-canvas .submenu-toggle {
  color: #FFFFFF;
  height: 2.52375rem;
}
nav.off-canvas .submenu-toggle:after {
  border-top-color: #FFFFFF;
}
nav.off-canvas > ul.menu {
  padding: 0;
}
nav.off-canvas > ul.menu li.current_page_parent a {
  background: #FFAF26;
  color: #FFFFFF;
}
nav.off-canvas ul.menu.alt-menu {
  flex-direction: column;
}
nav.off-canvas > .menu > li.is-active > a,
nav.off-canvas .submenu li.is-active a {
  color: #FFFFFF;
}
nav.off-canvas > .menu > li.is-active > a:hover, nav.off-canvas > .menu > li.is-active > a:focus,
nav.off-canvas .submenu li.is-active a:hover,
nav.off-canvas .submenu li.is-active a:focus {
  color: #FFFFFF;
}
nav.off-canvas ul.social-media-wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0.625rem 0 0.9375rem 0;
  padding: 0 0.9375rem;
  text-align: left;
}
nav.off-canvas ul.social-media-wrapper li {
  display: inline-block;
  font-size: 1.5rem;
  height: 2.625rem;
  line-height: 2.625rem;
  width: 2.625rem;
}
nav.off-canvas ul.social-media-wrapper li a {
  display: block;
  text-align: center;
}
nav.off-canvas ul.social-media-wrapper li.custom-button {
  height: auto;
  width: auto;
  display: block;
  width: 100%;
  margin: 0.9375rem 0 0 0;
}
nav.off-canvas ul.social-media-wrapper li.custom-button a {
  border-radius: 0.1875rem;
  display: block;
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif;
  font-size: 1.125rem !important;
  font-weight: 400;
  letter-spacing: 0.125rem;
  line-height: 1;
  padding: 0.75rem 0.625rem;
  text-transform: uppercase;
  transition: all 0.2s ease-out;
}
nav.off-canvas ul.social-media-wrapper li.custom-button.top-bar-my-cart a {
  display: block;
  padding: 0.5rem 0.625rem;
}
nav.off-canvas ul.social-media-wrapper li.custom-button.top-bar-my-cart i {
  display: inline;
  font-size: 1.125rem;
  margin-right: 0.125rem;
}
nav.off-canvas ul.social-media-wrapper li.custom-button.top-bar-my-cart span.cart-contents {
  background: #FFFFFF;
  border-radius: 100%;
  color: #003a71;
  display: inline-block;
  line-height: 1.25rem;
  height: 1.25rem;
  margin: 0 0 0 0.3125rem;
  min-width: 1.25rem;
}
nav.off-canvas ul.social-media-wrapper li.menu-search-wrapper {
  display: none;
}
nav.off-canvas ul.social-media-wrapper li:not(.custom-button) {
  margin: 0 0.3125rem;
}
nav.off-canvas ul.social-media-wrapper li:not(.custom-button) a {
  background: #001717;
  border-radius: 100%;
  font-size: 1rem;
  transition: background 0.2s ease-out;
}
nav.off-canvas ul.social-media-wrapper li:not(.custom-button) a:hover, nav.off-canvas ul.social-media-wrapper li:not(.custom-button) a:focus, nav.off-canvas ul.social-media-wrapper li:not(.custom-button) a:active {
  background: #00693B;
  color: #FFFFFF;
}
nav.off-canvas .alt-nav-my-cart {
  text-align: center;
}
nav.off-canvas .alt-nav-my-cart a {
  align-items: center;
  background: #912712;
  color: #FFFFFF;
  display: block;
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif;
  font-size: 0.9375rem !important;
  font-weight: 700;
  max-width: calc(100% - 2rem);
  margin: 0.9375rem auto 0.9375rem;
  padding: 0.4375rem 0.625rem;
  text-transform: uppercase;
  width: 100%;
  transition: all 0.2s ease-out;
}
nav.off-canvas .alt-nav-my-cart a:hover, nav.off-canvas .alt-nav-my-cart a:focus {
  background: #003a71;
}
nav.off-canvas .alt-nav-my-cart i {
  display: inline;
  font-size: 1.125rem;
  margin-right: 0.125rem;
}
nav.off-canvas .alt-nav-my-cart span.cart-contents {
  background: #FFFFFF;
  border-radius: 100%;
  color: #003a71;
  display: inline-block;
  line-height: 1.25rem;
  height: 1.25rem;
  margin: 0 0 0 0.3125rem;
  min-width: 1.25rem;
  text-align: center;
}
nav.off-canvas form#searchform {
  border: 0;
  border-radius: 0;
  margin-left: auto;
  margin-right: auto;
  max-width: calc(100% - 2rem);
  overflow: hidden;
  position: relative;
  width: 100%;
}
nav.off-canvas form#searchform:after {
  color: #000000;
  content: "\f002";
  cursor: pointer;
  display: none;
  height: 2.625rem;
  line-height: 2.625rem;
  position: absolute;
  right: 0;
  text-align: center;
  top: 0;
  width: 2.625rem;
  pointer-events: none;
}
nav.off-canvas form#searchform .input-group {
  background: #FFFFFF;
  margin: 0;
}
nav.off-canvas form#searchform .input-group .input-group-button:before {
  background: url(../../../src/assets/images/black-arrow.svg) no-repeat left center;
  color: #001717;
  content: "";
  cursor: pointer;
  display: block;
  font-family: fontawesome;
  height: 0.625rem;
  right: 1.125rem;
  pointer-events: none;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 2.375rem;
  z-index: 10;
  transition: right 0.2s ease-out;
}
nav.off-canvas form#searchform .input-group .input-group-button:hover:before, nav.off-canvas form#searchform .input-group .input-group-button:focus:before {
  right: 0.625rem;
}
nav.off-canvas form#searchform input#s {
  background: #CED4DA;
  border: 0;
  border-radius: 0;
  height: 2.625rem;
  line-height: 2.625rem;
  padding: 0.25rem 0.625rem !important;
}
nav.off-canvas form#searchform input#searchsubmit {
  background: #FFAF26 !important;
  height: 2.625rem;
  margin: 0;
  text-indent: -9999px;
  width: 2.625rem;
}
nav.off-canvas form#searchform input#searchsubmit:hover, nav.off-canvas form#searchform input#searchsubmit:focus {
  background: #000000;
}

/* 3f. Mobile Top Bar Menu Styles */
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu {
  padding: 0.9375rem;
  width: 100%;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu .submenu-toggle {
  background: #912712;
  color: #FFFFFF;
  height: 2.52375rem;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu .submenu-toggle:after {
  border-top-color: #FFFFFF;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu > ul.menu {
  padding: 0;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu ul.menu.alt-menu {
  display: flex !important;
  flex-direction: column;
  opacity: 1 !important;
  visibility: visible !important;
  z-index: 10 !important;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu ul.menu.alt-menu li {
  width: 100%;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu .menu:not(.nested) > li > a {
  font-size: 1.125rem !important;
  font-weight: 700;
  padding: 0.6875rem 0 !important;
  text-transform: uppercase;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu .menu.nested {
  margin-left: 0;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu .menu.nested > li > a {
  font-size: 1rem !important;
  font-weight: 600;
  padding: 0.625rem 1.25rem !important;
  text-transform: none !important;
  white-space: normal;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu > .menu > li.is-active > a,
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu .submenu li.is-active a {
  color: #912712;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu > .menu > li.is-active > a:hover, body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu > .menu > li.is-active > a:focus,
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu .submenu li.is-active a:hover,
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu .submenu li.is-active a:focus {
  color: #912712;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu ul.social-media-wrapper {
  margin: 0 0 0.625rem 0;
  text-align: left;
}
@media only screen and (max-width: 40em) {
  body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu ul.social-media-wrapper {
    display: flex;
    flex-wrap: wrap;
  }
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu ul.social-media-wrapper li {
  border: 0;
  display: inline-block;
  vertical-align: top;
  width: 2.25rem;
  height: 2.25rem;
  margin-left: 0;
  margin-bottom: 0.5rem;
  text-align: center;
  position: relative;
  z-index: 99;
  font-size: 1.5rem;
  flex-grow: 1;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu ul.social-media-wrapper li a, body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu ul.social-media-wrapper li i {
  width: 100% !important;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu ul.social-media-wrapper li.inline-social-search-wrapper {
  font-size: 1.25rem;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu ul.social-media-wrapper li:not(.custom-button):after {
  width: 2.25rem;
  height: 2.25rem;
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  border-radius: 100%;
  opacity: 0;
  transform: scale(0);
  transition: all 250ms ease-out;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu ul.social-media-wrapper li.inline-social-search-wrapper {
  width: auto;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu ul.social-media-wrapper li.menu-search-wrapper {
  display: none;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu ul.social-media-wrapper li.custom-button {
  width: 100%;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu ul.social-media-wrapper li.custom-button a {
  align-items: center;
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif;
  font-size: 0.9375rem !important;
  font-weight: 700;
  padding: 0 0.625rem;
  position: relative;
  text-transform: uppercase;
  width: 100%;
  transition: all 0.2s ease-out;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu ul.social-media-wrapper li.custom-button a:hover, body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu ul.social-media-wrapper li.custom-button a:focus {
  background: #000000 !important;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu ul.social-media-wrapper li.custom-button.top-bar-my-cart i,
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu ul.social-media-wrapper li.custom-button.alt-nav-my-cart i {
  display: inline;
  font-size: 1.125rem;
  margin-right: 0.125rem;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu ul.social-media-wrapper li.custom-button.top-bar-my-cart span.cart-contents,
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu ul.social-media-wrapper li.custom-button.alt-nav-my-cart span.cart-contents {
  background: #FFFFFF;
  border-radius: 100%;
  color: #003a71;
  display: inline-block;
  line-height: 1.25rem;
  height: 1.25rem;
  margin: 0 0 0 0.3125rem;
  min-width: 1.25rem;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu ul.social-media-wrapper li a, body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu ul.social-media-wrapper li a i {
  display: block;
  font-size: 1.5rem;
  width: 2.25rem;
  height: 2.25rem;
  line-height: 2.25rem;
  padding: 0;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu ul.social-media-wrapper li a:hover, body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu ul.social-media-wrapper li a:focus, body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu ul.social-media-wrapper li a i:hover, body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu ul.social-media-wrapper li a i:focus {
  background: none !important;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu ul.social-media-wrapper li.custom-button a {
  padding: 0 0.625rem;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu .alt-nav-my-cart {
  text-align: center;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu .alt-nav-my-cart a {
  align-items: center;
  background: #912712;
  color: #FFFFFF;
  display: block;
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif;
  font-size: 0.9375rem !important;
  font-weight: 700;
  max-width: 100%;
  margin: 0.4375rem 0 0.9375rem;
  padding: 0.5rem 0.625rem;
  text-transform: uppercase;
  width: 100%;
  transition: all 0.2s ease-out;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu .alt-nav-my-cart a:hover, body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu .alt-nav-my-cart a:focus {
  background: #003a71;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu .alt-nav-my-cart i {
  display: inline;
  font-size: 1.125rem;
  margin-right: 0.125rem;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu .alt-nav-my-cart span.cart-contents {
  background: #FFFFFF;
  border-radius: 100%;
  color: #003a71;
  display: inline-block;
  line-height: 1.25rem;
  height: 1.25rem;
  margin: 0 0 0 0.3125rem;
  min-width: 1.25rem;
  text-align: center;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu form#searchform {
  position: absolute;
  right: 0;
  position: relative;
  max-width: 100%;
  width: 100%;
  text-align: right;
  border: 0.0625rem solid #CED4DA;
  border-radius: 0.1875rem;
  background: #FFFFFF;
  margin: 0;
}
@media only screen and (max-width: 64em) {
  body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu form#searchform {
    margin: 0 auto;
  }
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu form#searchform:after {
  color: #FFFFFF;
  content: "\f002";
  cursor: pointer;
  font-family: fontawesome !important;
  height: 2.125rem;
  line-height: 2.125rem;
  position: absolute;
  right: 0;
  text-align: center;
  top: 0;
  width: 2.125rem;
  pointer-events: none;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu form#searchform input#searchsubmit {
  text-indent: -9999px;
  margin: 0;
  width: 2.125rem;
  height: 2.125rem;
  background: #912712;
  color: #FFFFFF;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu form#searchform input#searchsubmit:hover, body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu form#searchform input#searchsubmit:focus {
  background: #000000;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu form#searchform input#s {
  background: #FFFFFF;
  border: 0;
  box-shadow: none;
  height: 2.125rem;
  line-height: 2.125rem;
  max-width: none;
  padding: 0 0.625rem !important;
}
body.topbar header#masthead .top-bar nav#mobile-menu.mobile-menu.vertical.menu form#searchform .input-group {
  margin: 0;
}

/* 3g. Sticky Header Styles */
@media only screen and (min-width: 40.0625rem) {
  #masthead {
    will-change: opacity, transform;
  }
  body.sticky-prep #masthead.sticky-header {
    opacity: 0;
    position: fixed;
    width: 100%;
    top: 0;
    transform: translateY(-100%);
  }
  body.admin-bar.sticky-prep #masthead.sticky-header {
    opacity: 0;
    top: 0;
    transform: translateY(-100%);
  }
  body.sticky-header.sticky-prep #masthead.sticky-header {
    opacity: 1;
    top: 0;
    transform: translateY(0);
    transition: transform 1s, opacity 1s;
  }
  body.admin-bar.sticky-header.sticky-prep #masthead.sticky-header {
    opacity: 1;
    top: 2rem;
    transform: translateY(0);
    transition: transform 1s, opacity 1s;
  }
}
/* 3h. Header Overrides */
.top-bar .top-bar-social li.custom-button a {
  align-items: center;
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif;
  font-size: 0.9375rem !important;
  font-weight: 700;
  text-transform: uppercase;
  width: 100%;
}
.top-bar .top-bar-social li.custom-button.top-bar-my-cart i {
  display: inline;
  font-size: 1.125rem;
  margin-right: 0.125rem;
}
.top-bar .top-bar-social li.custom-button.top-bar-my-cart span.cart-contents {
  background: #FFFFFF;
  border-radius: 100%;
  color: #003a71;
  display: inline-block;
  line-height: 1.25rem;
  height: 1.25rem;
  margin: 0 0 0 0.3125rem;
  min-width: 1.25rem;
}
.top-bar ul.social-media-wrapper .menu-search-wrapper {
  border-left: 0 !important;
}

body.topbar .menu-icon:before,
body.offcanvas .menu-icon:before {
  background: none !important;
  box-shadow: 0 0.4375rem 0 inherit;
  content: "";
  display: block;
  left: 0;
  height: 0.125rem;
  position: absolute;
  top: 0;
  width: 100%;
  transition: all 0.2s ease-out;
}
body.topbar .menu-icon:after,
body.offcanvas .menu-icon:after {
  box-shadow: 0 0.875rem 0 inherit;
  transition: all 0.2s ease-out;
}
body.topbar .menu-icon.active:before,
body.offcanvas .menu-icon.active:before {
  background: none !important;
  left: 0.375rem;
  top: 0;
  transform: rotate(45deg);
}
body.topbar .menu-icon.active:after, body.topbar .menu-icon.active:hover:after,
body.offcanvas .menu-icon.active:after,
body.offcanvas .menu-icon.active:hover:after {
  background: none !important;
  box-shadow: 0 0.875rem 0 inherit !important;
  left: -0.5625rem;
  top: -0.3125rem;
  transform: rotate(-45deg);
}

/**** 4. HOME PAGE STYLES ****/
.home-hero-wrapper {
  padding-top: 18.75rem;
  padding-bottom: 18.75rem;
}
@media only screen and (max-width: 64em) {
  .home-hero-wrapper {
    padding-top: 7.5rem;
    padding-bottom: 8.125rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .home-hero-wrapper {
    padding-top: 5rem;
    padding-bottom: 5.625rem;
  }
}
.home-hero-wrapper .home-hero-caption {
  max-width: 42.1875rem;
  width: 100%;
}
.home-hero-wrapper .home-hero-caption h2 {
  color: #FFFFFF !important;
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif;
  font-size: 4rem !important;
  font-weight: 900 !important;
  text-align: left;
  text-transform: uppercase !important;
}
@media only screen and (max-width: 30em) {
  .home-hero-wrapper .home-hero-caption h2 {
    font-size: 3.4375rem !important;
  }
}
.home-hero-wrapper .home-hero-caption p {
  color: #FFFFFF !important;
  font-family: "source-sans-pro", Arial, Helvetica, sans-serif;
  font-size: 1.5rem;
  text-align: left;
}
.home-hero-wrapper .home-hero-caption .bs-btn {
  font-size: 1.25rem !important;
  padding: 1.25rem 3.75rem;
}

.home-tagline-wrapper {
  padding: 6.25rem 0;
}
@media only screen and (max-width: 47.9375em) {
  .home-tagline-wrapper {
    padding: 5rem 0;
  }
}
.home-tagline-wrapper h2 {
  color: #001717 !important;
  font-size: 2.5rem !important;
  font-weight: 400;
  letter-spacing: 0.025rem;
  text-align: center;
  text-transform: initial;
}

.home-portals-wrapper {
  margin-left: -1.25rem !important;
  margin-bottom: -6.25rem !important;
  position: relative;
  width: calc(100% + 20px) !important;
  z-index: 999;
}
.home-portals-wrapper .home-portal {
  background: #FFFFFF;
  box-shadow: 0.5rem 0.5rem 1rem rgba(0, 0, 0, 0.25);
  margin-left: 1.25rem;
  width: calc(33.3333% - 1.25rem);
}
@media only screen and (max-width: 56.25em) {
  .home-portals-wrapper .home-portal {
    margin-bottom: 1.25rem;
    width: calc(100% - 1.25rem);
  }
  .home-portals-wrapper .home-portal.home-portal-3 {
    margin-bottom: 0;
  }
}
.home-portals-wrapper .home-portal .vc_column-inner {
  padding: 0;
}
.home-portals-wrapper .home-portal .wpb_single_image {
  overflow: hidden;
}
.home-portals-wrapper .home-portal .wpb_single_image img {
  transition: transform 1s ease-in-out;
}
.home-portals-wrapper .home-portal h3 {
  font-size: 2rem !important;
  margin-bottom: 2.5rem;
  padding: 1.875rem 2.5rem;
  text-transform: uppercase;
}
@media only screen and (max-width: 84.375em) {
  .home-portals-wrapper .home-portal h3 {
    min-height: 8.5rem;
  }
}
@media only screen and (max-width: 56.25em) {
  .home-portals-wrapper .home-portal h3 {
    margin-bottom: 1.25rem;
    min-height: 0;
    padding: 1.25rem 1.25rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .home-portals-wrapper .home-portal h3 {
    margin-bottom: 0;
    padding: 0.625rem 1.25rem;
  }
}
.home-portals-wrapper .home-portal a.portal-learn-more {
  align-items: center;
  display: flex;
  font-size: 1.25rem;
  justify-content: space-between;
  letter-spacing: 0.15rem;
  line-height: 1;
  padding: 2.5625rem 2.5rem 2.5rem;
  text-decoration: none;
  text-transform: uppercase;
  transition: all 0.2s ease-out;
}
@media only screen and (max-width: 56.25em) {
  .home-portals-wrapper .home-portal a.portal-learn-more {
    padding: 2.5rem 1.25rem 2.4375rem;
  }
}
.home-portals-wrapper .home-portal a.portal-learn-more img {
  width: 2.625rem;
  transition: all 0.2s ease-out;
}
.home-portals-wrapper .home-portal a.portal-learn-more span.portal-learn-more-inner {
  border-bottom: 0.0625rem solid #001717;
  line-height: 1;
}
.home-portals-wrapper .home-portal a.portal-learn-more:hover, .home-portals-wrapper .home-portal a.portal-learn-more:focus, .home-portals-wrapper .home-portal a.portal-learn-more:active {
  background: #F1F3F5 !important;
}
.home-portals-wrapper .home-portal a.portal-learn-more:hover img, .home-portals-wrapper .home-portal a.portal-learn-more:focus img, .home-portals-wrapper .home-portal a.portal-learn-more:active img {
  margin-right: 1.25rem;
}
.home-portals-wrapper .home-portal:hover .wpb_single_image img, .home-portals-wrapper .home-portal:focus .wpb_single_image img {
  transform: scale(1.1);
}

.news-and-events-wrapper {
  padding-bottom: 6.25rem;
  padding-top: 12.5rem;
}
@media only screen and (max-width: 47.9375em) {
  .news-and-events-wrapper {
    padding-top: 10rem;
  }
}
.news-and-events-wrapper .news-and-events-column-1 {
  border-right: 0.25rem solid #001717;
}
.news-and-events-wrapper .news-and-events-column-1 h3 {
  letter-spacing: 0.15rem;
}
@media only screen and (max-width: 47.9375em) {
  .news-and-events-wrapper .news-and-events-column-1 {
    border-right: 0;
    margin-bottom: 3.75rem;
  }
}
.news-and-events-wrapper .news-and-events-column-2 {
  border-left: 0.25rem solid #001717;
  margin-left: -0.25rem;
  padding: 0.125rem 1.3125rem 0.5rem 1.5625rem;
}
@media only screen and (max-width: 47.9375em) {
  .news-and-events-wrapper .news-and-events-column-2 {
    border-left: 0;
    margin-left: 0;
    margin-bottom: 3.75rem;
    padding: 0;
  }
}
.news-and-events-wrapper .news-and-events-column-2 .wpb_wrapper p {
  margin-bottom: 0;
}
.news-and-events-wrapper .news-and-events-column-2 .wpb_wrapper p strong {
  display: block;
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif;
  margin-bottom: 1rem !important;
}
.news-and-events-wrapper .news-and-events-column-3 .wpb_wrapper p {
  margin-bottom: 0;
}
.news-and-events-wrapper .news-and-events-column-3 .wpb_wrapper p br {
  display: none;
}
.news-and-events-wrapper .news-and-events-column-3 .wpb_wrapper p strong {
  display: block;
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif;
  margin-bottom: 1rem !important;
}
.news-and-events-wrapper .news-and-events-column-3 .wpb_wrapper h3 {
  font-size: 2rem !important;
  font-weight: 400;
  margin-bottom: 0.625rem;
  max-width: 100%;
  text-transform: capitalize;
}
.news-and-events-wrapper .news-and-events-column-3 .wpb_wrapper h3 a {
  color: #001717;
  text-decoration: none;
}
.news-and-events-wrapper .news-and-events-column-3 .wpb_wrapper .event-excerpt {
  margin-top: 0.75rem;
  margin-bottom: 2.5rem;
}
@media only screen and (max-width: 47.9375em) {
  .news-and-events-wrapper .news-and-events-column-3 .wpb_wrapper .event-excerpt {
    margin-bottom: 0.625rem;
  }
}
.news-and-events-wrapper .news-and-events-column-3 .wpb_wrapper .event-excerpt p {
  font-size: 1.125rem;
  line-height: 1.5;
}
.news-and-events-wrapper .news-and-events-column-3 .wpb_wrapper .event-excerpt + p a {
  align-items: center;
  display: flex;
  font-size: 1.25rem;
  justify-content: flex-start;
  letter-spacing: 0.15rem;
  line-height: 1;
  text-decoration: none;
  text-transform: uppercase;
  transition: all 0.2s ease-out;
}
.news-and-events-wrapper .news-and-events-column-3 .wpb_wrapper .event-excerpt + p a img {
  margin-left: 2.5rem;
  width: 2.625rem;
  transition: all 0.2s ease-out;
}
.news-and-events-wrapper .news-and-events-column-3 .wpb_wrapper .event-excerpt + p a span.event-learn-more-inner {
  border-bottom: 0.0625rem solid #001717;
  line-height: 1;
}
.news-and-events-wrapper .news-and-events-column-3 .wpb_wrapper .event-excerpt + p a:hover img, .news-and-events-wrapper .news-and-events-column-3 .wpb_wrapper .event-excerpt + p a:focus img {
  margin-left: 1.25rem;
}
.news-and-events-wrapper h3 {
  font-size: 4rem !important;
  letter-spacing: 0.025rem;
  max-width: 13.75rem;
  text-transform: uppercase;
}
@media only screen and (max-width: 47.9375em) {
  .news-and-events-wrapper h3 {
    max-width: 100%;
  }
}

a.news-learn-more,
a.blog-read-more {
  align-items: center;
  display: flex;
  font-size: 1.25rem;
  font-weight: 600;
  justify-content: flex-start;
  letter-spacing: 0.15rem;
  line-height: 1;
  padding: 2.5rem 0 0.625rem;
  text-decoration: none !important;
  text-transform: uppercase;
}
a.news-learn-more img,
a.blog-read-more img {
  margin-left: 2.5rem;
  width: 2.625rem;
  transition: all 0.2s ease-out;
}
a.news-learn-more span.blog-read-more-inner,
a.news-learn-more span.news-learn-more-inner,
a.blog-read-more span.blog-read-more-inner,
a.blog-read-more span.news-learn-more-inner {
  border-bottom: 0.0625rem solid #001717;
  line-height: 1 !important;
}
a.news-learn-more:hover img, a.news-learn-more:focus img,
a.blog-read-more:hover img,
a.blog-read-more:focus img {
  margin-left: 1.25rem;
}

@media only screen and (max-width: 47.9375em) {
  a.news-learn-more {
    padding: 0;
  }
}

.rotatingtweets {
  margin: 6.25rem 0 5rem !important;
  padding: 0 5rem;
}
@media only screen and (max-width: 47.9375em) {
  .rotatingtweets {
    padding: 0 3.75rem;
  }
}
.rotatingtweets .slick-list {
  margin: 0 auto;
  max-width: 64rem;
  width: 100%;
}
.rotatingtweets .slick-list:before {
  color: #00693B;
  content: "\f099";
  display: block;
  font-family: "fontawesome" !important;
  font-size: 2.875rem;
  height: 2.5rem;
  line-height: 2.5rem;
  margin: 0 auto 2.5rem;
  width: 2.5rem;
}
.rotatingtweets button.slick-arrow {
  border: 0.125rem solid #001717;
  border-radius: 100%;
  font-size: 1.875rem !important;
  font-weight: 100;
  height: 4rem;
  left: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 4rem;
  transition: all 0.2s ease-out;
}
@media only screen and (max-width: 47.9375em) {
  .rotatingtweets button.slick-arrow {
    height: 3rem;
    width: 3rem;
  }
}
.rotatingtweets button.slick-arrow.slick-next {
  left: auto;
  right: 0;
}
.rotatingtweets button.slick-arrow span {
  font-size: 1.875rem !important;
  line-height: 3.875rem;
  position: relative;
  left: 0.125rem;
}
@media only screen and (max-width: 47.9375em) {
  .rotatingtweets button.slick-arrow span {
    font-size: 1.125rem !important;
    line-height: 2.875rem;
    left: 0.0625rem;
  }
}
.rotatingtweets button.slick-arrow.slick-prev span {
  left: auto;
  right: 0.125rem;
}
@media only screen and (max-width: 47.9375em) {
  .rotatingtweets button.slick-arrow.slick-prev span {
    left: auto;
    right: 0.0625rem;
  }
}
.rotatingtweets button.slick-arrow:hover, .rotatingtweets button.slick-arrow:focus, .rotatingtweets button.slick-arrow:active {
  background: #00693B;
  border: 0.125rem solid #00693B;
}
.rotatingtweets button.slick-arrow:hover span, .rotatingtweets button.slick-arrow:focus span, .rotatingtweets button.slick-arrow:active span {
  color: #FFFFFF !important;
}
.rotatingtweets .rotatingtweet {
  overflow: hidden;
}
.rotatingtweets .rotatingtweet p.rtw_main {
  font-size: 2rem;
  font-style: italic;
  text-align: center;
}
@media only screen and (max-width: 47.9375em) {
  .rotatingtweets .rotatingtweet p.rtw_main {
    font-size: 1.75rem;
  }
}
.rotatingtweets .rotatingtweet p.rtw_main a {
  text-decoration: none;
}
.rotatingtweets .rotatingtweet p.rtw_meta {
  font-family: "source-sans-pro", Arial, Helvetica, sans-serif !important;
  text-align: center;
  text-transform: uppercase;
}
.rotatingtweets .rotatingtweet p.rtw_meta a {
  color: #00693B;
  font-family: "source-sans-pro", Arial, Helvetica, sans-serif !important;
  font-weight: 700;
}

.home .main-wrap.full-width {
  margin-top: 0;
  max-width: 100%;
}
.home .main-wrap.full-width .main-content {
  margin: 0 !important;
  width: 100% !important;
}

@media only screen and (max-width: 40em) {
  .home .main-wrap .main-content {
    margin-right: 0;
    margin-left: 0;
    width: 100%;
  }
  .main-wrap {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}
/**** 5. INTERNAL PAGE STYLES ****/
/* 5a. Breadcrumbs Styles */
.breadcrumbs-wrapper {
  padding: 0 0.9375rem;
}
.breadcrumbs-wrapper #breadcrumbs {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  margin: 1rem 0;
}
.breadcrumbs-wrapper #breadcrumbs li {
  float: none;
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif !important;
  font-size: 0.875rem;
  font-weight: 700;
  text-transform: none;
}
.breadcrumbs-wrapper #breadcrumbs li:after {
  display: none;
}
.breadcrumbs-wrapper #breadcrumbs li a {
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif !important;
  font-size: 0.875rem;
  font-weight: 700;
}
.breadcrumbs-wrapper #breadcrumbs li.separator {
  font-size: 0.875rem;
  font-weight: 700;
  margin: 0 0.625rem;
}

/* 5b. Page Title and Title Bar Styles */
header.inline-page-header {
  display: flex;
  flex-direction: column;
}
header.inline-page-header h1.entry-title {
  order: 2;
}
header.inline-page-header h2.page-subtitle {
  margin-bottom: 3.125rem;
  order: 1;
  text-transform: uppercase;
}

h1.entry-title {
  font-size: 4rem !important;
  margin-bottom: 2.5rem;
  position: relative;
  text-transform: uppercase;
  z-index: 10;
}
@media only screen and (max-width: 40em) {
  h1.entry-title {
    font-size: 3.4375rem !important;
  }
}
h1.entry-title span.vcard {
  font-family: inherit;
  font-size: inherit;
  letter-spacing: inherit;
}

.featured-hero-title-bar {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 0.625rem 0.9375rem;
  position: relative;
}
.featured-hero-title-bar:before {
  background: rgba(0, 0, 0, 0.35);
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
}
.featured-hero-title-bar h1.entry-title {
  text-align: center;
  text-shadow: 0 0.125rem 0.0625rem #000000;
}
.featured-hero-title-bar time, .featured-hero-title-bar p.byline.author, .featured-hero-title-bar p.bs-post-date, .featured-hero-title-bar p.bs-post-cats, .featured-hero-title-bar p.bs-post-comments, .featured-hero-title-bar p.search-query, .featured-hero-title-bar ul li, .featured-hero-title-bar span {
  margin-bottom: 0;
  position: relative;
  text-shadow: 0 0.125rem 0.0625rem #000000;
  z-index: 10;
}
.featured-hero-title-bar ul {
  display: block;
  list-style: none;
  margin-bottom: 0;
  margin-left: -0.75rem;
  text-align: center;
  width: 100%;
}
.featured-hero-title-bar ul li {
  display: inline-block;
  padding: 0 0 0 0.75rem;
}
.featured-hero-title-bar .blog-meta p.bs-post-date {
  order: 1;
}
.featured-hero-title-bar .blog-meta p.byline.author {
  order: 2;
}
.featured-hero-title-bar .blog-meta p.byline.author a {
  font-weight: 700;
}
.featured-hero-title-bar .blog-meta p.bs-post-cats {
  order: 3;
}
.featured-hero-title-bar .blog-meta p.bs-post-cats a {
  font-weight: 700;
}
.featured-hero-title-bar .blog-meta p.bs-post-comments {
  order: 4;
}

/* 5c. Default Page Template Styles */
.main-wrap .main-content a {
  text-decoration: underline;
}
@media only screen and (max-width: 47.9375em) {
  .main-wrap .main-content {
    order: 1 !important;
    width: calc(100% - 1.875rem) !important;
  }
}

body:not(.home) .main-wrap {
  margin-top: 3.75rem;
  margin-bottom: 0;
}

/* 5d. Full Width Page Template Styles */
.main-wrap.full-width {
  width: 100%;
}
.main-wrap.full-width .main-content {
  margin-left: 0.9375rem !important;
  margin-right: 0.9375rem !important;
  margin-bottom: 0 !important;
  width: 100%;
}

/* 5e. Post Navigation Footer Styles */
footer.portfolio-navigation nav.navigation.post-navigation {
  padding: 0 0.9375rem;
}
footer nav.navigation.post-navigation {
  margin: 2rem auto 0;
  max-width: 75rem;
}

/* 5f. Left Sidebar Page Template Styles */
/* 5g. Sidebar Styles */
aside.sidebar {
  background: #F1F3F5;
  padding: 1.5625rem;
}
@media only screen and (max-width: 47.9375em) {
  aside.sidebar {
    order: 2 !important;
    width: calc(100% - 1.875rem) !important;
  }
}
aside.sidebar.portfolio-sidebar {
  background: none;
  padding: 0;
}
aside.sidebar.portfolio-sidebar img.wp-post-image {
  margin-bottom: 0;
}
aside.sidebar .widget {
  margin-bottom: 1.875rem;
}
aside.sidebar .widget:last-of-type {
  margin-bottom: 0;
}
aside.sidebar .widget h6 {
  border-bottom: 0.125rem solid #003a71;
  font-size: 1.125rem !important;
  margin-bottom: 0.625rem;
  padding-bottom: 0.625rem;
  text-transform: uppercase;
}
aside.sidebar .widget ul {
  list-style: none;
  margin: 0;
}
aside.sidebar .widget ul > li {
  margin-bottom: 0.625rem;
  position: relative;
}
aside.sidebar .widget ul > li > a {
  color: #00693B;
  display: inline-block;
  font-size: 1.125rem !important;
  font-weight: 700;
  vertical-align: middle;
}
aside.sidebar .widget ul > li:last-child > a {
  margin-bottom: 0;
}
aside.sidebar li.recentcomments {
  align-items: flex-end;
  display: inline-flex;
  flex-wrap: wrap;
}
aside.sidebar li.recentcomments span.comment-author-link {
  display: inline-block;
  line-height: 1.8;
  margin-right: 0.25rem;
}
aside.sidebar li.recentcomments a {
  margin-left: 0.25rem;
}

/* 5h. Social Sharing Shortcode Styles */
.bs-social-share-outer {
  margin: 1.875rem auto 0;
  max-width: 51.875rem;
  padding: 0 0.9375rem;
}

.bs-social-share-container {
  margin: 0 auto 1.875rem;
  width: auto;
}
.bs-social-share-container .bs-social-share-inner {
  display: flex;
  margin-left: -1rem;
}
@media only screen and (max-width: 40em) {
  .bs-social-share-container .bs-social-share-inner {
    margin-left: -0.25rem;
  }
}
.bs-social-share-container .bs-social-share-inner .single-social-share {
  font-size: 1.5rem;
  line-height: 1.5rem;
  margin-left: 1rem;
  text-align: center;
  width: calc(20% - 1rem);
  transition: all 0.2s ease-out;
}
@media only screen and (max-width: 40em) {
  .bs-social-share-container .bs-social-share-inner .single-social-share {
    margin-left: 0.25rem;
    width: calc(20% - 0.25rem);
  }
}
.bs-social-share-container .bs-social-share-inner .single-social-share a {
  display: block;
  text-align: center;
}
.bs-social-share-container .bs-social-share-inner .single-social-share a i {
  transition: all 0.2s ease-out;
}
.bs-social-share-container .bs-social-share-inner .single-social-share.social-share-twitter a i {
  color: #00aced;
}
.bs-social-share-container .bs-social-share-inner .single-social-share.social-share-facebook a i {
  color: #3b5998;
}
.bs-social-share-container .bs-social-share-inner .single-social-share.social-share-google a i {
  color: #dd4b39;
}
.bs-social-share-container .bs-social-share-inner .single-social-share.social-share-linkedin a i {
  color: #007bb6;
}
.bs-social-share-container .bs-social-share-inner .single-social-share.social-share-pinterest a i {
  color: #cb2027;
}
.bs-social-share-container .bs-social-share-inner .single-social-share:hover a i, .bs-social-share-container .bs-social-share-inner .single-social-share:focus a i {
  color: #003a71 !important;
}
.bs-social-share-container .bs-social-share-inner.show-count .single-social-share {
  align-items: center;
  display: flex;
  justify-content: space-between;
  padding: 0.3125rem;
}
.bs-social-share-container .bs-social-share-inner.show-count .single-social-share a {
  text-align: left;
  width: calc(100% - 1.5rem);
}
.bs-social-share-container .bs-social-share-inner.show-count .single-social-share a i {
  color: #FFFFFF;
}
.bs-social-share-container .bs-social-share-inner.show-count .single-social-share.social-share-twitter {
  background: #00aced;
}
.bs-social-share-container .bs-social-share-inner.show-count .single-social-share.social-share-facebook {
  background: #3b5998;
  color: #FFFFFF;
}
.bs-social-share-container .bs-social-share-inner.show-count .single-social-share.social-share-google {
  background: #dd4b39;
  color: #FFFFFF;
}
.bs-social-share-container .bs-social-share-inner.show-count .single-social-share.social-share-linkedin {
  background: #007bb6;
  color: #FFFFFF;
}
.bs-social-share-container .bs-social-share-inner.show-count .single-social-share.social-share-pinterest {
  background: #cb2027;
  color: #FFFFFF;
}
.bs-social-share-container .bs-social-share-inner.show-count .single-social-share span {
  background: #FFFFFF;
  color: #000000;
  display: inline-block;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.125rem;
  margin-left: 0.3125rem;
  padding: 0.1875rem;
  width: 1.5rem;
}
.bs-social-share-container .bs-social-share-inner.show-count .single-social-share:hover, .bs-social-share-container .bs-social-share-inner.show-count .single-social-share:focus {
  background: #003a71 !important;
}
.bs-social-share-container .bs-social-share-inner.show-count .single-social-share:hover a i, .bs-social-share-container .bs-social-share-inner.show-count .single-social-share:focus a i {
  color: #FFFFFF !important;
}

/* 5i. Gallery Shortcode Styles */
.gallery {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 1.875rem;
  margin-left: -0.9375rem;
}
.gallery figure.gallery-item {
  margin-bottom: 0.9375rem;
  overflow: hidden;
  padding-left: 0.9375rem;
  position: relative;
}
.gallery figure.gallery-item .gallery-icon {
  width: 100%;
}
.gallery figure.gallery-item .gallery-icon a {
  display: block;
  overflow: hidden;
  width: 100%;
}
.gallery figure.gallery-item .gallery-icon a img {
  display: block;
  height: auto;
  width: 100%;
  transition: all 0.2s ease-out;
}
.gallery figure.gallery-item figcaption.wp-caption-text {
  background: rgba(0, 58, 113, 0.85);
  color: #FFFFFF;
  display: block;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.2;
  padding: 0.25rem 0.625rem;
  position: absolute;
  top: 100%;
  width: 100%;
  transition: all 0.2s ease-out;
}
.gallery figure.gallery-item:hover .gallery-icon, .gallery figure.gallery-item:focus .gallery-icon {
  width: 100%;
}
.gallery figure.gallery-item:hover .gallery-icon a img, .gallery figure.gallery-item:focus .gallery-icon a img {
  transform: scale(1.1) rotate(3deg);
}
.gallery figure.gallery-item:hover figcaption.wp-caption-text, .gallery figure.gallery-item:focus figcaption.wp-caption-text {
  transform: translateY(-100%);
}
.gallery.gallery-columns-4 .gallery-item {
  width: 25%;
}
@media only screen and (max-width: 47.9375em) {
  .gallery.gallery-columns-4 .gallery-item {
    width: 33.3333%;
  }
}
@media only screen and (max-width: 30em) {
  .gallery.gallery-columns-4 .gallery-item {
    width: 50%;
  }
}
.gallery.gallery-columns-3 .gallery-item {
  width: 33.3333%;
}
@media only screen and (max-width: 30em) {
  .gallery.gallery-columns-3 .gallery-item {
    width: 50%;
  }
}
.gallery.gallery-columns-2 .gallery-item {
  width: 50%;
}
.gallery figure.gallery-item {
  margin-bottom: 0.9375rem;
  overflow: hidden;
  padding-left: 0.9375rem;
  position: relative;
}
.gallery figure.gallery-item .gallery-icon {
  width: 100%;
}
.gallery figure.gallery-item .gallery-icon a {
  display: block;
  width: 100%;
}
.gallery figure.gallery-item .gallery-icon a img {
  display: block;
  height: auto;
  width: 100%;
}
.gallery figure.gallery-item figcaption.wp-caption-text {
  background: rgba(0, 58, 113, 0.85);
  color: #FFFFFF;
  display: block;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.2;
  padding: 0.25rem 0.625rem;
  position: absolute;
  top: 100%;
  width: 100%;
  transition: all 0.2s ease-out;
}
.gallery figure.gallery-item:hover figcaption.wp-caption-text, .gallery figure.gallery-item:focus figcaption.wp-caption-text {
  transform: translateY(-100%);
}

/* 5j. Pagination Styles */
ul.pagination {
  border-top: 0.125rem solid #003a71;
  margin-top: 1.25rem;
  padding-top: 0.9375rem;
  text-align: center;
  width: 100%;
}
@media only screen and (max-width: 50em) {
  ul.pagination {
    margin-left: 0.9375rem;
  }
}
ul.pagination li, ul.pagination li span, ul.pagination li a {
  display: inline-block;
  font-size: 1rem;
  font-weight: 700;
  height: 1.875rem;
  line-height: 1.875rem;
  padding: 0 !important;
  text-align: center;
  width: 1.875rem;
}
ul.pagination li span.current {
  background: #912712;
  color: #FFFFFF !important;
}
ul.pagination li a {
  text-decoration: none !important;
  transition: all 0.2s ease-out !important;
}
ul.pagination li a:hover, ul.pagination li a:focus {
  background: #003a71;
  color: #FFFFFF !important;
}

/* 5k. Gravity Form Styles */
.main-content > .entry-content > .gform_wrapper {
  margin-top: 0 !important;
}

.gform_wrapper {
  margin: 0 !important;
}
@media only screen and (min-width: 641px) {
  .gform_wrapper form .gform_body {
    width: calc(100% + 1rem);
  }
}
.gform_wrapper form .gform_body li.gfield {
  margin-top: 0;
}
.gform_wrapper form .gform_body li.gfield input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=image]):not([type=file]), .gform_wrapper form .gform_body li.gfield select, .gform_wrapper form .gform_body li.gfield textarea {
  border: 0.0625rem solid #808080 !important;
  border-radius: 0.1875rem !important;
  box-shadow: none;
  font-size: 1.125rem;
  min-height: 4rem;
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
}
.gform_wrapper form .gform_body li.gfield .ginput_container {
  margin-top: 0 !important;
}
.gform_wrapper form .gform_body li.gfield .ginput_container input, .gform_wrapper form .gform_body li.gfield .ginput_container select, .gform_wrapper form .gform_body li.gfield .ginput_container textarea {
  margin-bottom: 1.875rem !important;
}
.gform_wrapper form .gform_body li.gfield .ginput_complex {
  display: flex;
  flex-wrap: wrap;
  margin-left: -1rem;
  margin-right: 0;
  width: calc(100% + 1rem) !important;
}
.gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_full, .gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_left, .gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_right, .gform_wrapper form .gform_body li.gfield .ginput_complex .name_first, .gform_wrapper form .gform_body li.gfield .ginput_complex .name_last {
  display: flex;
  position: relative;
  padding-left: 1rem;
  padding-right: 0;
}
.gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_full input, .gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_full select, .gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_full textarea, .gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_left input, .gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_left select, .gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_left textarea, .gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_right input, .gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_right select, .gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_right textarea, .gform_wrapper form .gform_body li.gfield .ginput_complex .name_first input, .gform_wrapper form .gform_body li.gfield .ginput_complex .name_first select, .gform_wrapper form .gform_body li.gfield .ginput_complex .name_first textarea, .gform_wrapper form .gform_body li.gfield .ginput_complex .name_last input, .gform_wrapper form .gform_body li.gfield .ginput_complex .name_last select, .gform_wrapper form .gform_body li.gfield .ginput_complex .name_last textarea {
  margin-bottom: 1.25rem !important;
  margin-left: 0 !important;
}
.gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_full input + label, .gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_full select + label, .gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_full textarea + label, .gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_left input + label, .gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_left select + label, .gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_left textarea + label, .gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_right input + label, .gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_right select + label, .gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_right textarea + label, .gform_wrapper form .gform_body li.gfield .ginput_complex .name_first input + label, .gform_wrapper form .gform_body li.gfield .ginput_complex .name_first select + label, .gform_wrapper form .gform_body li.gfield .ginput_complex .name_first textarea + label, .gform_wrapper form .gform_body li.gfield .ginput_complex .name_last input + label, .gform_wrapper form .gform_body li.gfield .ginput_complex .name_last select + label, .gform_wrapper form .gform_body li.gfield .ginput_complex .name_last textarea + label {
  color: #001717;
  font-style: italic;
  font-weight: 700;
  line-height: 1.2;
  margin: 0 0 0 0.0625rem;
  position: absolute;
  top: calc(100% - 1.125rem);
  transform: translateY(-100%);
}
.gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_full.has-label-below input, .gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_full.has-label-below select, .gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_full.has-label-below textarea, .gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_left.has-label-below input, .gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_left.has-label-below select, .gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_left.has-label-below textarea, .gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_right.has-label-below input, .gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_right.has-label-below select, .gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_right.has-label-below textarea, .gform_wrapper form .gform_body li.gfield .ginput_complex .name_first.has-label-below input, .gform_wrapper form .gform_body li.gfield .ginput_complex .name_first.has-label-below select, .gform_wrapper form .gform_body li.gfield .ginput_complex .name_first.has-label-below textarea, .gform_wrapper form .gform_body li.gfield .ginput_complex .name_last.has-label-below input, .gform_wrapper form .gform_body li.gfield .ginput_complex .name_last.has-label-below select, .gform_wrapper form .gform_body li.gfield .ginput_complex .name_last.has-label-below textarea {
  margin-bottom: 2.1875rem !important;
}
.gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_full {
  width: 100%;
}
.gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_left, .gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_right, .gform_wrapper form .gform_body li.gfield .ginput_complex .name_first, .gform_wrapper form .gform_body li.gfield .ginput_complex .name_last {
  float: none;
  margin-right: 0;
  width: 50%;
}
@media only screen and (max-width: 40em) {
  .gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_left, .gform_wrapper form .gform_body li.gfield .ginput_complex .ginput_right, .gform_wrapper form .gform_body li.gfield .ginput_complex .name_first, .gform_wrapper form .gform_body li.gfield .ginput_complex .name_last {
    width: 100%;
  }
}
.gform_wrapper form .gform_body li.gfield .ginput_container_address_label {
  background: #F1F3F5;
  display: block;
  padding: 1rem 1rem 0 1rem;
  width: 100%;
}
.gform_wrapper form .gform_body li.gfield .ginput_complex.ginput_container_address {
  background: #F1F3F5;
  margin-left: 0;
  margin-bottom: 1.25rem;
  padding: 0.25rem 1rem 0.3125rem 0;
  width: 100% !important;
}
.gform_wrapper form .gform_body li.gfield .ginput_complex.ginput_container_address .ginput_full, .gform_wrapper form .gform_body li.gfield .ginput_complex.ginput_container_address .ginput_left, .gform_wrapper form .gform_body li.gfield .ginput_complex.ginput_container_address .ginput_right {
  margin: 0;
  padding: 0 0 0 1rem !important;
}
.gform_wrapper form .gform_body li.gfield .ginput_complex.ginput_container_address .ginput_full input, .gform_wrapper form .gform_body li.gfield .ginput_complex.ginput_container_address .ginput_full select, .gform_wrapper form .gform_body li.gfield .ginput_complex.ginput_container_address .ginput_left input, .gform_wrapper form .gform_body li.gfield .ginput_complex.ginput_container_address .ginput_left select, .gform_wrapper form .gform_body li.gfield .ginput_complex.ginput_container_address .ginput_right input, .gform_wrapper form .gform_body li.gfield .ginput_complex.ginput_container_address .ginput_right select {
  margin-bottom: 1.5625rem !important;
}
.gform_wrapper form .gform_body li.gfield .ginput_complex.ginput_container_address .ginput_full input + label, .gform_wrapper form .gform_body li.gfield .ginput_complex.ginput_container_address .ginput_full select + label, .gform_wrapper form .gform_body li.gfield .ginput_complex.ginput_container_address .ginput_left input + label, .gform_wrapper form .gform_body li.gfield .ginput_complex.ginput_container_address .ginput_left select + label, .gform_wrapper form .gform_body li.gfield .ginput_complex.ginput_container_address .ginput_right input + label, .gform_wrapper form .gform_body li.gfield .ginput_complex.ginput_container_address .ginput_right select + label {
  top: calc(100% - 0.625rem);
}
.gform_wrapper form .gform_body li.gfield .ginput_complex.ginput_container_address .ginput_full select, .gform_wrapper form .gform_body li.gfield .ginput_complex.ginput_container_address .ginput_left select, .gform_wrapper form .gform_body li.gfield .ginput_complex.ginput_container_address .ginput_right select {
  margin-top: 0;
}
.gform_wrapper form .gform_body li.gfield .ginput_complex.ginput_container_address .ginput_right + .ginput_left {
  margin-right: 0;
}
.gform_wrapper form .gform_footer {
  margin: 1.875rem 0 0 0;
  padding: 0;
}
.gform_wrapper form .gform_footer input.gform_button {
  background: #FFAF26;
  color: #001717 !important;
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif;
  margin-right: 0;
  padding: 1.375rem 6.25rem;
}
.gform_wrapper form .gform_footer input.gform_button:hover, .gform_wrapper form .gform_footer input.gform_button:focus {
  background: #001717;
  color: #FFFFFF !important;
}

.gform_wrapper.gform_validation_error form .validation_error {
  background: #912712;
  border-color: #912712;
  color: #FFFFFF;
  font-family: "source-sans-pro", Arial, Helvetica, sans-serif;
  font-size: 1.375rem;
  padding: 0.9375rem;
}
.gform_wrapper.gform_validation_error form .gform_body ul.gform_fields li.gfield.gfield_error {
  margin-top: 0 !important;
  padding-left: 0.3125rem;
  padding-right: 0.3125rem;
}
.gform_wrapper.gform_validation_error form .gform_body ul.gform_fields li.gfield.gfield_error label.gfield_label {
  margin-top: 0;
}
.gform_wrapper.gform_validation_error form .gform_body ul.gform_fields li.gfield.gfield_error input[type=text], .gform_wrapper.gform_validation_error form .gform_body ul.gform_fields li.gfield.gfield_error input[type=email], .gform_wrapper.gform_validation_error form .gform_body ul.gform_fields li.gfield.gfield_error textarea {
  margin-bottom: 0.375rem !important;
}
.gform_wrapper.gform_validation_error form .gform_body ul.gform_fields li.gfield.gfield_error .gfield_description.validation_message {
  color: red;
  padding: 0;
}
.gform_wrapper.gform_validation_error form .gform_body ul.gform_fields li.gfield.gfield_error .ginput_complex .ginput_left input + label, .gform_wrapper.gform_validation_error form .gform_body ul.gform_fields li.gfield.gfield_error .ginput_complex .ginput_right input + label {
  top: 100%;
}
.gform_wrapper.gform_validation_error form .gform_body ul.gform_fields li.gfield.gfield_error.floatLabel label.gfield_label {
  font-size: 90%;
  left: 0.625rem;
  top: 0.625rem;
}
.gform_wrapper.gform_validation_error form .gform_body ul.gform_fields li.gfield.gfield_error.floatLabel input[type=text], .gform_wrapper.gform_validation_error form .gform_body ul.gform_fields li.gfield.gfield_error.floatLabel input[type=email], .gform_wrapper.gform_validation_error form .gform_body ul.gform_fields li.gfield.gfield_error.floatLabel textarea {
  padding: 1.25rem 0.9375rem;
}

/* 5l. Search Results Styles */
body.search-results section#main-container div.main-wrap article.main-content section.bs-blog-loop article.type-page.page .entry-content .blog-meta {
  display: none;
}
body.search-results section#main-container div.main-wrap article.main-content section.bs-blog-loop article.type-page.page .entry-content .bs-post-excerpt {
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif;
}

/**** 6. BLOG PAGE AND SINGLE BLOG POST STYLES ****/
.single-post .main-wrap, .blog .main-wrap, .search-results .main-wrap, .single-service .main-wrap, .archive .main-wrap, .tag .main-wrap, .single-staff .main-wrap {
  margin-bottom: 2.5rem;
}
.single-post .main-wrap .main-content .bs-entry-meta, .blog .main-wrap .main-content .bs-entry-meta, .search-results .main-wrap .main-content .bs-entry-meta, .single-service .main-wrap .main-content .bs-entry-meta, .archive .main-wrap .main-content .bs-entry-meta, .tag .main-wrap .main-content .bs-entry-meta, .single-staff .main-wrap .main-content .bs-entry-meta {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 0;
}
.single-post .main-wrap .main-content .bs-entry-meta p, .blog .main-wrap .main-content .bs-entry-meta p, .search-results .main-wrap .main-content .bs-entry-meta p, .single-service .main-wrap .main-content .bs-entry-meta p, .archive .main-wrap .main-content .bs-entry-meta p, .tag .main-wrap .main-content .bs-entry-meta p, .single-staff .main-wrap .main-content .bs-entry-meta p {
  border-right: 0.125rem solid #003a71;
  margin: 0 0.625rem 0 0;
  padding: 0 0.625rem 0 0;
}
.single-post .main-wrap .main-content .bs-entry-meta p:last-of-type, .blog .main-wrap .main-content .bs-entry-meta p:last-of-type, .search-results .main-wrap .main-content .bs-entry-meta p:last-of-type, .single-service .main-wrap .main-content .bs-entry-meta p:last-of-type, .archive .main-wrap .main-content .bs-entry-meta p:last-of-type, .tag .main-wrap .main-content .bs-entry-meta p:last-of-type, .single-staff .main-wrap .main-content .bs-entry-meta p:last-of-type {
  border-right: 0;
  margin: 0;
  padding: 0;
}
.single-post .main-wrap.no-sidebar, .blog .main-wrap.no-sidebar, .search-results .main-wrap.no-sidebar, .single-service .main-wrap.no-sidebar, .archive .main-wrap.no-sidebar, .tag .main-wrap.no-sidebar, .single-staff .main-wrap.no-sidebar {
  display: flex;
  justify-content: center;
}
.single-post .main-wrap.no-sidebar article.main-content, .blog .main-wrap.no-sidebar article.main-content, .search-results .main-wrap.no-sidebar article.main-content, .single-service .main-wrap.no-sidebar article.main-content, .archive .main-wrap.no-sidebar article.main-content, .tag .main-wrap.no-sidebar article.main-content, .single-staff .main-wrap.no-sidebar article.main-content {
  max-width: 50rem;
  width: 100%;
}
.single-post .main-wrap.blog-sidebar-left, .single-post .main-wrap.single-sidebar-left, .blog .main-wrap.blog-sidebar-left, .blog .main-wrap.single-sidebar-left, .search-results .main-wrap.blog-sidebar-left, .search-results .main-wrap.single-sidebar-left, .single-service .main-wrap.blog-sidebar-left, .single-service .main-wrap.single-sidebar-left, .archive .main-wrap.blog-sidebar-left, .archive .main-wrap.single-sidebar-left, .tag .main-wrap.blog-sidebar-left, .tag .main-wrap.single-sidebar-left, .single-staff .main-wrap.blog-sidebar-left, .single-staff .main-wrap.single-sidebar-left {
  display: flex;
}
.single-post .main-wrap.blog-sidebar-left .main-content, .single-post .main-wrap.single-sidebar-left .main-content, .blog .main-wrap.blog-sidebar-left .main-content, .blog .main-wrap.single-sidebar-left .main-content, .search-results .main-wrap.blog-sidebar-left .main-content, .search-results .main-wrap.single-sidebar-left .main-content, .single-service .main-wrap.blog-sidebar-left .main-content, .single-service .main-wrap.single-sidebar-left .main-content, .archive .main-wrap.blog-sidebar-left .main-content, .archive .main-wrap.single-sidebar-left .main-content, .tag .main-wrap.blog-sidebar-left .main-content, .tag .main-wrap.single-sidebar-left .main-content, .single-staff .main-wrap.blog-sidebar-left .main-content, .single-staff .main-wrap.single-sidebar-left .main-content {
  order: 2;
}
.single-post .main-wrap.blog-sidebar-left aside.sidebar, .single-post .main-wrap.single-sidebar-left aside.sidebar, .blog .main-wrap.blog-sidebar-left aside.sidebar, .blog .main-wrap.single-sidebar-left aside.sidebar, .search-results .main-wrap.blog-sidebar-left aside.sidebar, .search-results .main-wrap.single-sidebar-left aside.sidebar, .single-service .main-wrap.blog-sidebar-left aside.sidebar, .single-service .main-wrap.single-sidebar-left aside.sidebar, .archive .main-wrap.blog-sidebar-left aside.sidebar, .archive .main-wrap.single-sidebar-left aside.sidebar, .tag .main-wrap.blog-sidebar-left aside.sidebar, .tag .main-wrap.single-sidebar-left aside.sidebar, .single-staff .main-wrap.blog-sidebar-left aside.sidebar, .single-staff .main-wrap.single-sidebar-left aside.sidebar {
  order: 1;
}
.single-post .main-wrap.blog-full-width.no-sidebar article.main-content, .single-post .main-wrap.single-full-width.no-sidebar article.main-content, .blog .main-wrap.blog-full-width.no-sidebar article.main-content, .blog .main-wrap.single-full-width.no-sidebar article.main-content, .search-results .main-wrap.blog-full-width.no-sidebar article.main-content, .search-results .main-wrap.single-full-width.no-sidebar article.main-content, .single-service .main-wrap.blog-full-width.no-sidebar article.main-content, .single-service .main-wrap.single-full-width.no-sidebar article.main-content, .archive .main-wrap.blog-full-width.no-sidebar article.main-content, .archive .main-wrap.single-full-width.no-sidebar article.main-content, .tag .main-wrap.blog-full-width.no-sidebar article.main-content, .tag .main-wrap.single-full-width.no-sidebar article.main-content, .single-staff .main-wrap.blog-full-width.no-sidebar article.main-content, .single-staff .main-wrap.single-full-width.no-sidebar article.main-content {
  max-width: 100%;
}
.single-post .about-the-author-wrap, .blog .about-the-author-wrap, .search-results .about-the-author-wrap, .single-service .about-the-author-wrap, .archive .about-the-author-wrap, .tag .about-the-author-wrap, .single-staff .about-the-author-wrap {
  display: flex;
  margin: 2rem 0;
  padding: 0.9375rem;
}
.single-post .about-the-author-wrap .author-image, .blog .about-the-author-wrap .author-image, .search-results .about-the-author-wrap .author-image, .single-service .about-the-author-wrap .author-image, .archive .about-the-author-wrap .author-image, .tag .about-the-author-wrap .author-image, .single-staff .about-the-author-wrap .author-image {
  border-radius: 100%;
  margin-right: 0.625rem;
  height: 5rem;
  overflow: hidden;
  width: 5rem;
}
.single-post .about-the-author-wrap .author-image img, .blog .about-the-author-wrap .author-image img, .search-results .about-the-author-wrap .author-image img, .single-service .about-the-author-wrap .author-image img, .archive .about-the-author-wrap .author-image img, .tag .about-the-author-wrap .author-image img, .single-staff .about-the-author-wrap .author-image img {
  height: auto;
  width: 100%;
}
.single-post .about-the-author-wrap .author-description, .blog .about-the-author-wrap .author-description, .search-results .about-the-author-wrap .author-description, .single-service .about-the-author-wrap .author-description, .archive .about-the-author-wrap .author-description, .tag .about-the-author-wrap .author-description, .single-staff .about-the-author-wrap .author-description {
  width: calc(100% - 5.625rem);
}
.single-post .about-the-author-wrap .author-description p:last-of-type, .blog .about-the-author-wrap .author-description p:last-of-type, .search-results .about-the-author-wrap .author-description p:last-of-type, .single-service .about-the-author-wrap .author-description p:last-of-type, .archive .about-the-author-wrap .author-description p:last-of-type, .tag .about-the-author-wrap .author-description p:last-of-type, .single-staff .about-the-author-wrap .author-description p:last-of-type {
  margin-bottom: 0;
}
.single-post .about-the-author-wrap .author-description p strong, .blog .about-the-author-wrap .author-description p strong, .search-results .about-the-author-wrap .author-description p strong, .single-service .about-the-author-wrap .author-description p strong, .archive .about-the-author-wrap .author-description p strong, .tag .about-the-author-wrap .author-description p strong, .single-staff .about-the-author-wrap .author-description p strong {
  font-size: 115%;
}
.single-post .about-the-author-wrap .author-description.no-avatar, .blog .about-the-author-wrap .author-description.no-avatar, .search-results .about-the-author-wrap .author-description.no-avatar, .single-service .about-the-author-wrap .author-description.no-avatar, .archive .about-the-author-wrap .author-description.no-avatar, .tag .about-the-author-wrap .author-description.no-avatar, .single-staff .about-the-author-wrap .author-description.no-avatar {
  width: 100%;
}

/* 6a. Blog Loop Shortcode Styles */
.bs-blog-loop .bs-post-title {
  margin-bottom: 0.625rem;
}
.bs-blog-loop .bs-post-title p strong {
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif;
  text-transform: uppercase;
}
.bs-blog-loop .bs-post-title h3 {
  font-size: 2rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.025rem !important;
  max-width: 100%;
  text-transform: capitalize;
}
.bs-blog-loop .bs-post-title h3 a {
  color: #001717;
  display: inline-block;
  text-decoration: none;
}
.bs-blog-loop .blog-meta {
  display: flex;
  flex-direction: column;
  margin-bottom: 0.625rem;
}
.bs-blog-loop .blog-meta p {
  margin-bottom: 0.3125rem;
}
.bs-blog-loop .blog-meta p a {
  display: inline-block;
}
.bs-blog-loop .blog-meta p i {
  display: inline-block;
  font-size: 1.25rem;
  line-height: 1.5rem;
  margin-right: 0.1875rem;
  min-height: 1.5rem;
  text-align: center;
  width: 1.5rem;
}
.bs-blog-loop .blog-meta p.bs-post-date {
  order: 1;
}
.bs-blog-loop .blog-meta p.bs-post-byline {
  order: 2;
}
.bs-blog-loop .blog-meta p.bs-post-byline span.avatar img {
  height: auto;
  margin-right: 0.1875rem;
  mix-blend-mode: multiply;
  width: 1.5rem;
}
.bs-blog-loop .blog-meta p.bs-post-cats {
  order: 3;
}
.bs-blog-loop .blog-meta p.bs-post-comments {
  order: 4;
}
.bs-blog-loop .bs-post-excerpt {
  margin-bottom: 0.9375rem;
}
.bs-blog-loop .bs-post-excerpt p {
  font-size: 1.125rem;
  line-height: 1.5;
}
.bs-blog-loop .blog-footer a {
  font-size: 1.25rem;
  font-weight: 400 !important;
  line-height: 1;
  padding: 0;
  text-transform: uppercase;
}
.bs-blog-loop .blog-footer a span {
  border-bottom: 0.0625rem solid #001717;
}
.bs-blog-loop.bs-blog-loop-list article.bs-single-post {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 5rem;
}
.bs-blog-loop.bs-blog-loop-list article.bs-single-post:last-of-type {
  border-bottom: 0;
  margin-bottom: 0;
  padding-bottom: 0;
}
.bs-blog-loop.bs-blog-loop-list article.bs-single-post .blog-featured-image {
  order: 2;
  width: 18.75rem;
}
@media only screen and (max-width: 40em) {
  .bs-blog-loop.bs-blog-loop-list article.bs-single-post .blog-featured-image {
    margin-bottom: 0.625rem;
    order: 1;
    width: 100%;
  }
}
.bs-blog-loop.bs-blog-loop-list article.bs-single-post .entry-content {
  order: 1;
  padding-right: 1.25rem;
  width: calc(100% - 18.75rem);
}
@media only screen and (max-width: 40em) {
  .bs-blog-loop.bs-blog-loop-list article.bs-single-post .entry-content {
    order: 2;
    padding-right: 0;
    width: 100%;
  }
}
.bs-blog-loop.bs-blog-loop-list article.bs-single-post .entry-content.thumbnail-hidden {
  padding-right: 0;
  width: 100%;
}
.bs-blog-loop.bs-blog-loop-list article.bs-single-post .blog-footer a {
  font-weight: 700;
}
.bs-blog-loop.bs-blog-loop-grid, .bs-blog-loop.bs-blog-loop-carousel {
  display: flex;
  flex-wrap: wrap;
  margin-left: -1.875rem;
  margin-bottom: -2.8125rem !important;
}
.bs-blog-loop.bs-blog-loop-grid article.bs-single-post, .bs-blog-loop.bs-blog-loop-carousel article.bs-single-post {
  margin-bottom: 2.8125rem;
  margin-left: 1.875rem;
  transition: box-shadow 0.2s ease-out;
}
@media only screen and (max-width: 37.5em) {
  .bs-blog-loop.bs-blog-loop-grid article.bs-single-post, .bs-blog-loop.bs-blog-loop-carousel article.bs-single-post {
    width: calc(100% - 1.875rem);
  }
}
.bs-blog-loop.bs-blog-loop-grid article.bs-single-post .blog-featured-image, .bs-blog-loop.bs-blog-loop-carousel article.bs-single-post .blog-featured-image {
  background: #003a71;
  border: 0.125rem solid #003a71;
  border-bottom: 0;
}
.bs-blog-loop.bs-blog-loop-grid article.bs-single-post .blog-featured-image figure, .bs-blog-loop.bs-blog-loop-grid article.bs-single-post .blog-featured-image a, .bs-blog-loop.bs-blog-loop-carousel article.bs-single-post .blog-featured-image figure, .bs-blog-loop.bs-blog-loop-carousel article.bs-single-post .blog-featured-image a {
  display: block;
  overflow: hidden;
  width: 100%;
}
.bs-blog-loop.bs-blog-loop-grid article.bs-single-post .blog-featured-image figure img, .bs-blog-loop.bs-blog-loop-grid article.bs-single-post .blog-featured-image a img, .bs-blog-loop.bs-blog-loop-carousel article.bs-single-post .blog-featured-image figure img, .bs-blog-loop.bs-blog-loop-carousel article.bs-single-post .blog-featured-image a img {
  display: block;
  transition: all 0.2s ease-out;
}
.bs-blog-loop.bs-blog-loop-grid article.bs-single-post .blog-meta .bs-entry-meta, .bs-blog-loop.bs-blog-loop-carousel article.bs-single-post .blog-meta .bs-entry-meta {
  flex-wrap: wrap;
  margin-bottom: 0;
}
.bs-blog-loop.bs-blog-loop-grid article.bs-single-post .blog-meta .bs-entry-meta p, .bs-blog-loop.bs-blog-loop-carousel article.bs-single-post .blog-meta .bs-entry-meta p {
  border: 0;
  display: block;
  margin: 0;
  padding: 0;
  width: 100%;
}
.bs-blog-loop.bs-blog-loop-grid article.bs-single-post .entry-content, .bs-blog-loop.bs-blog-loop-carousel article.bs-single-post .entry-content {
  background: #e1e1e1;
  border: 0.125rem solid #003a71;
  border-top: 0;
  border-bottom: 0;
  padding: 0.9375rem;
}
.bs-blog-loop.bs-blog-loop-grid article.bs-single-post .bs-post-excerpt, .bs-blog-loop.bs-blog-loop-carousel article.bs-single-post .bs-post-excerpt {
  margin-bottom: 0.9375rem;
}
.bs-blog-loop.bs-blog-loop-grid article.bs-single-post .blog-footer, .bs-blog-loop.bs-blog-loop-carousel article.bs-single-post .blog-footer {
  margin-bottom: -0.9375rem;
  margin-left: -0.9375rem;
  margin-right: -0.9375rem;
  width: calc(100% + 1.875rem);
}
.bs-blog-loop.bs-blog-loop-grid article.bs-single-post .blog-footer a, .bs-blog-loop.bs-blog-loop-carousel article.bs-single-post .blog-footer a {
  background: #003a71;
  color: white;
  display: block;
  font-weight: 700;
  padding: 0.9375rem;
  text-decoration: none;
  transition: background 0.2s ease-out;
}
.bs-blog-loop.bs-blog-loop-grid article.bs-single-post .blog-footer a:hover, .bs-blog-loop.bs-blog-loop-grid article.bs-single-post .blog-footer a:focus, .bs-blog-loop.bs-blog-loop-carousel article.bs-single-post .blog-footer a:hover, .bs-blog-loop.bs-blog-loop-carousel article.bs-single-post .blog-footer a:focus {
  background: #912712;
}
.bs-blog-loop.bs-blog-loop-grid article.bs-single-post:hover, .bs-blog-loop.bs-blog-loop-grid article.bs-single-post:focus, .bs-blog-loop.bs-blog-loop-carousel article.bs-single-post:hover, .bs-blog-loop.bs-blog-loop-carousel article.bs-single-post:focus {
  box-shadow: 0 1.25rem 3.75rem rgba(0, 0, 80, 0.45);
}
.bs-blog-loop.bs-blog-loop-grid article.bs-single-post:hover .blog-featured-image figure img, .bs-blog-loop.bs-blog-loop-grid article.bs-single-post:hover .blog-featured-image a img, .bs-blog-loop.bs-blog-loop-grid article.bs-single-post:focus .blog-featured-image figure img, .bs-blog-loop.bs-blog-loop-grid article.bs-single-post:focus .blog-featured-image a img, .bs-blog-loop.bs-blog-loop-carousel article.bs-single-post:hover .blog-featured-image figure img, .bs-blog-loop.bs-blog-loop-carousel article.bs-single-post:hover .blog-featured-image a img, .bs-blog-loop.bs-blog-loop-carousel article.bs-single-post:focus .blog-featured-image figure img, .bs-blog-loop.bs-blog-loop-carousel article.bs-single-post:focus .blog-featured-image a img {
  transform: scale(1.1) rotate(3deg);
}
.bs-blog-loop.bs-blog-loop-grid.grid-2-cols article.bs-single-post, .bs-blog-loop.bs-blog-loop-carousel.grid-2-cols article.bs-single-post {
  width: calc(50% - 1.875rem);
}
@media only screen and (max-width: 37.5em) {
  .bs-blog-loop.bs-blog-loop-grid.grid-2-cols article.bs-single-post, .bs-blog-loop.bs-blog-loop-carousel.grid-2-cols article.bs-single-post {
    width: calc(100% - 1.875rem);
  }
}
.bs-blog-loop.bs-blog-loop-grid.grid-3-cols article.bs-single-post, .bs-blog-loop.bs-blog-loop-carousel.grid-3-cols article.bs-single-post {
  width: calc(33.3333% - 1.875rem);
}
@media only screen and (max-width: 47.9375em) {
  .bs-blog-loop.bs-blog-loop-grid.grid-3-cols article.bs-single-post, .bs-blog-loop.bs-blog-loop-carousel.grid-3-cols article.bs-single-post {
    width: calc(50% - 1.875rem);
  }
}
@media only screen and (max-width: 37.5em) {
  .bs-blog-loop.bs-blog-loop-grid.grid-3-cols article.bs-single-post, .bs-blog-loop.bs-blog-loop-carousel.grid-3-cols article.bs-single-post {
    width: calc(100% - 1.875rem);
  }
}
.bs-blog-loop.bs-blog-loop-grid.grid-4-cols article.bs-single-post, .bs-blog-loop.bs-blog-loop-carousel.grid-4-cols article.bs-single-post {
  width: calc(25% - 1.875rem);
}
@media only screen and (max-width: 64em) {
  .bs-blog-loop.bs-blog-loop-grid.grid-4-cols article.bs-single-post, .bs-blog-loop.bs-blog-loop-carousel.grid-4-cols article.bs-single-post {
    width: calc(50% - 1.875rem);
  }
}
@media only screen and (max-width: 37.5em) {
  .bs-blog-loop.bs-blog-loop-grid.grid-4-cols article.bs-single-post, .bs-blog-loop.bs-blog-loop-carousel.grid-4-cols article.bs-single-post {
    width: calc(100% - 1.875rem);
  }
}
.bs-blog-loop.bs-blog-loop-grid nav.custom-pagination, .bs-blog-loop.bs-blog-loop-carousel nav.custom-pagination {
  margin-left: 1.875rem;
}
.bs-blog-loop.bs-blog-loop-carousel article.bs-single-post {
  box-shadow: none !important;
}
.bs-blog-loop.bs-blog-loop-carousel .slick-list {
  width: 100%;
}
.bs-blog-loop.bs-blog-loop-carousel ul.slick-dots {
  margin-bottom: 2.1875rem;
  margin-left: 1.875rem;
  margin-top: -1.875rem;
  position: relative;
  width: calc(100% - 1.875rem);
  z-index: 99;
}
.bs-blog-loop.bs-blog-loop-carousel ul.slick-dots li:only-child {
  display: none;
}
.bs-blog-loop nav.custom-pagination {
  border-top: 0.125rem solid #003a71;
  margin-top: 1.25rem;
  padding-top: 0.9375rem;
  text-align: center;
  width: 100%;
}
@media only screen and (max-width: 50em) {
  .bs-blog-loop nav.custom-pagination {
    margin-left: 0.9375rem;
  }
}
.bs-blog-loop nav.custom-pagination .page-numbers {
  display: inline-block;
  font-weight: 700;
  height: 1.875rem;
  line-height: 1.875rem;
  text-align: center;
  text-decoration: none;
  width: 1.875rem;
}
.bs-blog-loop nav.custom-pagination span.page-numbers.page-num {
  font-weight: 700;
  width: auto;
}
.bs-blog-loop nav.custom-pagination span.pipe-separator {
  font-size: 1.25rem;
  margin: 0 0.4375rem;
}
.bs-blog-loop nav.custom-pagination span.page-numbers.current {
  background: #912712;
  color: #FFFFFF !important;
}
.bs-blog-loop nav.custom-pagination a.page-numbers {
  transition: all 0.2s ease-out;
}
.bs-blog-loop nav.custom-pagination a.page-numbers:hover, .bs-blog-loop nav.custom-pagination a.page-numbers:focus {
  background: #003a71;
  color: #FFFFFF;
}

/* 6b. Comments Section Styles */
section#comments {
  background: #F1F3F5;
  margin: 2rem 0 0 0;
  padding: 0.9375rem;
}
section#comments ol.comment-list {
  list-style: none;
  margin: 0;
}
section#comments ol.comment-list > li {
  border-left: 0.125rem solid #003a71;
  margin-bottom: 2.5rem;
  padding-left: 0.625rem;
}
section#comments ol.comment-list > li:last-child {
  margin-bottom: 0;
}
section#comments ol.comment-list > li p:last-of-type {
  margin-bottom: 0;
}
section#comments ol.comment-list header.comment-author {
  align-items: flex-start;
  display: flex;
}
section#comments ol.comment-list header.comment-author img {
  margin-right: 0.625rem;
}
section#comments ol.comment-list header.comment-author time {
  display: block;
  font-size: 0.75rem;
  line-height: 1;
}
section#comments ol.comment-list header.comment-author cite {
  color: #000000;
  font-size: 0.875rem;
}
section#comments ol.comment-list ul.children {
  list-style: none;
  margin: 0.9375rem 0 0 0;
}
section#comments ol.comment-list ul.children li {
  border-left: 0.125rem solid #003a71;
  padding-bottom: 1.25rem;
  padding-left: 0.625rem;
}
section#comments ol.comment-list ul.children li:last-child {
  padding-bottom: 0;
}
section#comments ol.comment-list ul.children li p:last-of-type {
  margin-bottom: 0;
}
section#comments ol.comment-list a.comment-reply-link {
  display: block;
  font-weight: 700;
  font-size: 0.875rem;
}

section#respond {
  background: #F1F3F5;
  margin: 2rem 0 0 0;
  padding: 0.9375rem;
}
section#respond p:last-of-type {
  margin: 0;
}
section#respond form#commentform input[type=text], section#respond form#commentform textarea {
  border: 0.0625rem solid #003a71;
  border-radius: 0.1875rem;
  box-shadow: none;
  min-height: 2.8125rem;
}
section#respond form#commentform input.button {
  font-size: 1rem;
  padding: 0.625rem;
}
section#respond form#commentform label {
  font-weight: 700;
}

/* 6c. AJAX Blog Loop Shortcode Styles */
.bs-ajax-blog-loop .bs-ajax-blog-loop-wrapper {
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
}
.bs-ajax-blog-loop .bs-ajax-blog-loop-wrapper .bs-ajax-blog-loop-left {
  height: auto;
  width: 33.3333%;
}
@media only screen and (max-width: 50em) {
  .bs-ajax-blog-loop .bs-ajax-blog-loop-wrapper .bs-ajax-blog-loop-left {
    width: 100%;
  }
}
.bs-ajax-blog-loop .bs-ajax-blog-loop-wrapper .bs-ajax-blog-loop-left ul.bs-ajax-blog-images {
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  height: auto;
  list-style: none;
  margin-left: -0.9375rem;
  margin-bottom: 1.875rem;
}
.bs-ajax-blog-loop .bs-ajax-blog-loop-wrapper .bs-ajax-blog-loop-left ul.bs-ajax-blog-images li {
  margin-bottom: 0.5rem;
  padding-left: 0.9375rem;
}
.bs-ajax-blog-loop .bs-ajax-blog-loop-wrapper .bs-ajax-blog-loop-left ul.bs-ajax-blog-images .slick-slide, .bs-ajax-blog-loop .bs-ajax-blog-loop-wrapper .bs-ajax-blog-loop-left ul.bs-ajax-blog-images .slick-track {
  height: auto !important;
  transition: height 0.2s ease-out;
}
.bs-ajax-blog-loop .bs-ajax-blog-loop-wrapper .bs-ajax-blog-loop-left ul.bs-ajax-blog-images button.slick-arrow {
  bottom: -1.25rem;
  cursor: pointer !important;
  height: 1.25rem;
  left: 0;
  line-height: 1.25rem;
  padding-left: 0.9375rem;
  position: absolute;
  text-align: center;
  width: 50%;
}
.bs-ajax-blog-loop .bs-ajax-blog-loop-wrapper .bs-ajax-blog-loop-left ul.bs-ajax-blog-images button.slick-next {
  left: auto;
  right: 0;
}
.bs-ajax-blog-loop .bs-ajax-blog-loop-wrapper .bs-ajax-blog-loop-right {
  background: #FFFFFF;
  margin-left: 1.875rem;
  position: relative;
  transition: all 0.5s ease-out;
  width: calc(66.6666% - 1.875rem);
}
@media only screen and (max-width: 50em) {
  .bs-ajax-blog-loop .bs-ajax-blog-loop-wrapper .bs-ajax-blog-loop-right {
    margin-left: 0;
    width: 100%;
  }
}
.bs-ajax-blog-loop .bs-ajax-blog-loop-wrapper .bs-ajax-blog-loop-right.loading {
  background: rgba(0, 0, 0, 0.25);
}
.bs-ajax-blog-loop .bs-ajax-blog-loop-wrapper .bs-ajax-blog-loop-right.loaded {
  background: #FFFFFF;
}
.bs-ajax-blog-loop .bs-ajax-blog-loop-wrapper .bs-ajax-blog-loop-right .bs-ajax-swap-area.ajax-loading {
  display: none;
}
.bs-ajax-blog-loop .bs-ajax-blog-loop-wrapper .bs-ajax-blog-loop-right img.loading-animation {
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
}
.bs-ajax-blog-loop .bs-ajax-blog-loop-wrapper .bs-ajax-blog-loop-right .bs-post-featured-image img {
  height: auto;
  width: 100%;
}
.bs-ajax-blog-loop .bs-ajax-blog-loop-wrapper .bs-ajax-blog-loop-right .bs-post-title {
  margin-bottom: 0.625rem;
}
.bs-ajax-blog-loop .bs-ajax-blog-loop-wrapper .bs-ajax-blog-loop-right .bs-post-title h3 a {
  display: inline-block;
}
.bs-ajax-blog-loop .bs-ajax-blog-loop-wrapper .bs-ajax-blog-loop-right .bs-post-meta {
  display: flex;
  flex-direction: column;
  margin-bottom: 0.625rem;
}
.bs-ajax-blog-loop .bs-ajax-blog-loop-wrapper .bs-ajax-blog-loop-right .bs-post-meta p {
  margin-bottom: 0.3125rem;
}
.bs-ajax-blog-loop .bs-ajax-blog-loop-wrapper .bs-ajax-blog-loop-right .bs-post-meta p a {
  display: inline-block;
}
.bs-ajax-blog-loop .bs-ajax-blog-loop-wrapper .bs-ajax-blog-loop-right .bs-post-meta p i {
  display: inline-block;
  font-size: 1.25rem;
  line-height: 1.5rem;
  margin-right: 0.1875rem;
  min-height: 1.5rem;
  text-align: center;
  width: 1.5rem;
}
.bs-ajax-blog-loop .bs-ajax-blog-loop-wrapper .bs-ajax-blog-loop-right .bs-post-meta p.bs-post-date {
  order: 1;
}
.bs-ajax-blog-loop .bs-ajax-blog-loop-wrapper .bs-ajax-blog-loop-right .bs-post-meta p.bs-post-byline {
  order: 2;
}
.bs-ajax-blog-loop .bs-ajax-blog-loop-wrapper .bs-ajax-blog-loop-right .bs-post-meta p.bs-post-byline span.avatar img {
  height: auto;
  margin-right: 0.1875rem;
  mix-blend-mode: multiply;
  width: 1.5rem;
}
.bs-ajax-blog-loop .bs-ajax-blog-loop-wrapper .bs-ajax-blog-loop-right .bs-post-meta p.bs-post-cats {
  order: 3;
}
.bs-ajax-blog-loop .bs-ajax-blog-loop-wrapper .bs-ajax-blog-loop-right .bs-post-meta p.bs-post-comments {
  order: 4;
}
.bs-ajax-blog-loop .bs-ajax-blog-loop-wrapper .bs-ajax-blog-loop-right .bs-post-footer a {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}

/**** 7. PORTFOLIO STYLES ****/
/**** 8. SERVICES STYLES ****/
/**** 9. STAFF STYLES ****/
/* Single Staff Item Styles */
.single-staff .main-content .staff-featured-image {
  margin-top: 0.3125rem;
  max-width: 20.625rem;
  width: 100%;
}
.single-staff .main-content ul.staff-category {
  list-style: none;
  margin: 0 0 0.9375rem 0;
  text-align: left;
}
.single-staff .main-content ul.staff-category li {
  display: inline-block;
  padding-right: 0.25rem;
}
.single-staff .main-content ul.staff-category li.cat-name {
  padding-right: 0.375rem;
}
.single-staff .main-content ul.staff-category li.cat-name:after {
  content: ",";
}
.single-staff .main-content ul.staff-category li.cat-name:last-child:after {
  content: "";
}

/* Staff Shortcode Styles */
.staffs-wrapper .staff-filter-toggle {
  display: none;
  margin-bottom: 0.9375rem;
}
@media only screen and (max-width: 47.9375em) {
  .staffs-wrapper .staff-filter-toggle {
    display: block;
  }
}
.staffs-wrapper .staff-filter-toggle a {
  background: #003a71;
  color: #FFFFFF;
  display: inline-block;
  font-weight: 700;
  padding: 0.625rem;
  text-decoration: none;
}
.staffs-wrapper ul#filters, .staffs-wrapper ul[id*=filters-] {
  align-items: center;
  display: flex;
  justify-content: flex-start;
  list-style: none;
  margin: 0 0 1.25rem -0.9375rem;
  width: 100%;
  transition: opacity 0.2s ease-out;
}
@media only screen and (max-width: 47.9375em) {
  .staffs-wrapper ul#filters, .staffs-wrapper ul[id*=filters-] {
    display: none;
    margin: 0 0 1.25rem 0;
  }
}
.staffs-wrapper ul#filters li, .staffs-wrapper ul[id*=filters-] li {
  padding-left: 0.9375rem;
}
@media only screen and (max-width: 47.9375em) {
  .staffs-wrapper ul#filters li, .staffs-wrapper ul[id*=filters-] li {
    margin-bottom: 0.125rem;
    padding-left: 0;
  }
}
.staffs-wrapper ul#filters li a, .staffs-wrapper ul[id*=filters-] li a {
  background: #003a71;
  color: #FFFFFF;
  display: block;
  font-weight: 700;
  padding: 0.375rem 0.9375rem;
  text-align: center;
  text-decoration: none;
}
.staffs-wrapper ul#filters li a.active, .staffs-wrapper ul#filters li a:hover, .staffs-wrapper ul#filters li a:focus, .staffs-wrapper ul[id*=filters-] li a.active, .staffs-wrapper ul[id*=filters-] li a:hover, .staffs-wrapper ul[id*=filters-] li a:focus {
  background: #912712;
}
.staffs-wrapper .single-staff-item .staff-thumbnail a {
  display: block;
  overflow: hidden;
}
.staffs-wrapper .single-staff-item .staff-thumbnail a img {
  transition: all 0.2s ease-out;
}
.staffs-wrapper .single-staff-item:hover .staff-thumbnail a img, .staffs-wrapper .single-staff-item:focus .staff-thumbnail a img {
  transform: scale(1.1) rotate(3deg);
}
.staffs-wrapper.staffs-display-grid.grid-cols-1 .single-staff-item {
  width: 100%;
}
.staffs-wrapper.staffs-display-grid.grid-cols-2 .single-staff-item {
  width: 50%;
}
@media only screen and (max-width: 25em) {
  .staffs-wrapper.staffs-display-grid.grid-cols-2 .single-staff-item {
    width: 100%;
  }
}
.staffs-wrapper.staffs-display-grid.grid-cols-3 .single-staff-item {
  width: 33.3333%;
}
@media only screen and (max-width: 47.9375em) {
  .staffs-wrapper.staffs-display-grid.grid-cols-3 .single-staff-item {
    width: 50%;
  }
}
@media only screen and (max-width: 25em) {
  .staffs-wrapper.staffs-display-grid.grid-cols-3 .single-staff-item {
    width: 100%;
  }
}
.staffs-wrapper.staffs-display-grid.grid-cols-4 .single-staff-item {
  width: 25%;
}
@media only screen and (max-width: 47.9375em) {
  .staffs-wrapper.staffs-display-grid.grid-cols-4 .single-staff-item {
    width: 33.3333%;
  }
}
@media only screen and (max-width: 37.5em) {
  .staffs-wrapper.staffs-display-grid.grid-cols-4 .single-staff-item {
    width: 50%;
  }
}
@media only screen and (max-width: 25em) {
  .staffs-wrapper.staffs-display-grid.grid-cols-4 .single-staff-item {
    width: 100%;
  }
}
.staffs-wrapper.staffs-display-grid .staffs-container {
  display: flex;
  flex-wrap: wrap;
  margin: 0 0 0 -1.25rem;
  transition: height 0.2s ease-out;
}
.staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item {
  box-shadow: 0.5rem 0.5rem 1rem rgba(0, 0, 0, 0.25);
  margin-bottom: 5rem;
  margin-left: 1.25rem;
  overflow: hidden;
  width: calc(33.3333% - 1.25rem);
}
@media only screen and (max-width: 64em) {
  .staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item {
    width: calc(50% - 1.25rem);
  }
}
@media only screen and (max-width: 40em) {
  .staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item {
    width: calc(100% - 1.25rem);
  }
}
.staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item section.staff-photo img.staff-thumbnail {
  display: block;
  width: 100%;
  height: auto;
}
.staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item section.staff-content {
  background: #FFFFFF;
  display: flex;
  flex-wrap: wrap;
  position: relative;
  flex-direction: column;
  overflow: hidden;
}
.staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item section.staff-content h2.staff-title {
  color: #001717 !important;
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif;
  font-size: 2rem !important;
  line-height: 1;
  padding: 2.5rem 2.5rem 0;
  text-align: left;
  text-transform: uppercase;
  width: 100%;
  transition: all 0.2s ease-out;
}
@media only screen and (max-width: 64em) {
  .staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item section.staff-content h2.staff-title {
    padding: 1.25rem 1.25rem 0;
  }
}
.staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item section.staff-content p.staff-position {
  margin-bottom: 0;
}
.staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item section.staff-content ul.staff-category {
  line-height: 1.5;
  list-style: none;
  margin: 0;
  padding: 0 2.5rem;
  text-align: left;
  width: 100%;
  transition: all 0.2s ease-out;
}
@media only screen and (max-width: 64em) {
  .staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item section.staff-content ul.staff-category {
    padding: 0 1.25rem;
  }
}
.staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item section.staff-content ul.staff-category li {
  color: #001717 !important;
  display: inline-block;
  font-family: "source-sans-pro", Arial, Helvetica, sans-serif;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.5;
}
.staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item section.staff-content a.staff-learn-more {
  align-items: center;
  display: flex;
  font-size: 1.25rem;
  font-weight: 400;
  justify-content: flex-start;
  letter-spacing: 0.15rem;
  line-height: 1;
  margin-top: 0.625rem;
  padding: 2.5rem;
  text-decoration: none !important;
  text-transform: uppercase;
  transition: background 0.2s ease-out;
}
@media only screen and (max-width: 64em) {
  .staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item section.staff-content a.staff-learn-more {
    padding: 1.25rem;
  }
}
.staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item section.staff-content a.staff-learn-more span {
  border-bottom: 0.0625rem solid #001717;
  line-height: 1;
}
.staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item section.staff-content a.staff-learn-more img {
  margin-left: 2.5rem;
  width: 2.625rem;
  transition: all 0.2s ease-out;
}
.staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item section.staff-content a.staff-learn-more span.news-learn-more-inner {
  border-bottom: 0.0625rem solid #001717;
}
.staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item section.staff-content a.staff-learn-more:hover, .staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item section.staff-content a.staff-learn-more:focus {
  background: #F1F3F5;
}
.staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item section.staff-content a.staff-learn-more:hover img, .staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item section.staff-content a.staff-learn-more:focus img {
  margin-left: 1.25rem;
}
.staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item section.staff-content:hover h2.staff-title, .staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item section.staff-content:focus h2.staff-title {
  opacity: 1;
}
.staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item section.staff-content:hover ul.staff-category, .staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item section.staff-content:focus ul.staff-category {
  opacity: 1;
}
.staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item section.staff-bio {
  background: #FFAF26;
  height: 100%;
  left: 0;
  margin-top: 3.75rem;
  overflow: auto;
  opacity: 0;
  padding: 2.5rem;
  position: absolute;
  top: 0;
  visibility: hidden;
  width: 100%;
  z-index: -1;
  transition: all 0.5s ease-out;
}
@media only screen and (max-width: 64em) {
  .staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item section.staff-bio {
    padding: 1.25rem;
  }
}
.staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item section.staff-bio a.close-bio {
  font-size: 1.5rem;
  height: 1.5rem;
  line-height: 1.5rem;
  opacity: 0;
  right: 2.1875rem;
  position: absolute;
  text-align: center;
  top: 2.8125rem;
  transition: all 0.75s ease-out 0.5s;
  width: 1.5rem;
  visibility: hidden;
  z-index: 100;
}
@media only screen and (max-width: 64em) {
  .staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item section.staff-bio a.close-bio {
    right: 0.9375rem;
    top: 1.5625rem;
  }
}
.staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item section.staff-bio h2 {
  color: #001717 !important;
  font-size: 2rem !important;
  letter-spacing: 0.15rem;
  margin-bottom: 1.25rem;
  opacity: 0;
  padding-right: 1.25rem;
  text-transform: uppercase;
  transform: translateY(100px);
  transition: all 0.5s ease-out;
  visibility: hidden;
}
.staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item section.staff-bio p {
  font-size: 1.25rem;
  font-family: "source-sans-pro", Arial, Helvetica, sans-serif;
  margin-bottom: 2rem;
  opacity: 0;
  transform: translateY(250px);
  transition: all 0.5s ease-out;
  visibility: hidden;
}
.staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item section.staff-bio p:last-of-type {
  margin-bottom: 0;
}
.staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item section.staff-bio.is-active {
  margin-top: 0;
  opacity: 1;
  visibility: visible;
  z-index: 10;
}
.staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item section.staff-bio.is-active h2, .staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item section.staff-bio.is-active p, .staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item section.staff-bio.is-active a.close-bio {
  opacity: 1;
  transform: translateY(0%);
  visibility: visible;
}
.staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item .single-staff-link.staff-has-no-bio .staff-category {
  padding-bottom: 2.5rem;
}
@media only screen and (max-width: 47.9375em) {
  .staffs-wrapper.staffs-display-grid .staffs-container .single-staff-item .single-staff-link.staff-has-no-bio .staff-category {
    padding-bottom: 1.25rem;
  }
}
.staffs-wrapper.staffs-display-list .single-staff-item {
  border-bottom: 0.0625rem solid #003a71;
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 1.5625rem;
  padding-bottom: 1.5625rem;
}
.staffs-wrapper.staffs-display-list .single-staff-item:last-of-type {
  border-bottom: 0;
  margin-bottom: 0;
  padding-bottom: 0;
}
.staffs-wrapper.staffs-display-list .single-staff-item .staff-thumbnail {
  order: 2;
  width: 18.75rem;
}
@media only screen and (max-width: 40em) {
  .staffs-wrapper.staffs-display-list .single-staff-item .staff-thumbnail {
    margin-bottom: 0.625rem;
    order: 1;
    width: 100%;
  }
}
.staffs-wrapper.staffs-display-list .single-staff-item .staff-thumbnail img {
  margin-bottom: 0;
  width: 100%;
}
.staffs-wrapper.staffs-display-list .single-staff-item .staff-content {
  order: 1;
  padding-right: 1.25rem;
  width: calc(100% - 18.75rem);
}
@media only screen and (max-width: 40em) {
  .staffs-wrapper.staffs-display-list .single-staff-item .staff-content {
    order: 2;
    padding-right: 0;
    width: 100%;
  }
}
.staffs-wrapper.staffs-display-list .single-staff-item .staff-content p.staff-meta {
  margin-bottom: 0;
}
.staffs-wrapper.staffs-display-list .single-staff-item .staff-content p.staff-meta i {
  padding-right: 0.375rem;
  width: 1.25rem;
}
.staffs-wrapper.staffs-display-list .single-staff-item .staff-content ul.staff-category {
  display: inline-block;
  list-style: none;
  margin: 0 0 0.625rem 0;
  text-align: left;
  width: 100%;
}
.staffs-wrapper.staffs-display-list .single-staff-item .staff-content ul.staff-category li {
  display: inline-block;
  padding-right: 0.375rem;
  width: 1.4375rem;
}
.staffs-wrapper.staffs-display-list .single-staff-item .staff-content ul.staff-category li.cat-name {
  width: auto;
}
.staffs-wrapper.staffs-display-list .single-staff-item .staff-content ul.staff-category li.cat-name:after {
  content: ",";
}
.staffs-wrapper.staffs-display-list .single-staff-item .staff-content ul.staff-category li.cat-name:last-of-type:after {
  content: "";
}
.staffs-wrapper.staffs-display-list .single-staff-item .staff-content .staff-read-more {
  font-weight: 700;
}

/**** 10. 404 PAGE STYLES ****/
.error404 .main-wrap.no-sidebar {
  display: flex;
  justify-content: center;
}
.error404 .main-wrap.no-sidebar article.main-content {
  max-width: 50rem;
  width: 100%;
}

/**** 11. FOOTER STYLES ****/
footer.footer .widget {
  padding: 0 0.9375rem;
}
@media only screen and (max-width: 40em) {
  footer.footer .widget {
    margin-bottom: 2.5rem;
  }
  footer.footer .widget:last-of-type {
    margin-bottom: 0;
  }
}
footer.footer .widget p:last-of-type {
  margin-bottom: 0;
}
footer.footer h6 {
  font-size: 1.5rem !important;
  margin-bottom: 0.3125rem !important;
  text-align: left;
}
footer.footer ul.menu {
  flex-direction: column;
}
footer.footer ul.menu li {
  display: block;
  padding: 0;
}
footer.footer ul.menu li a {
  padding: 0;
  display: block;
  line-height: 1.6;
  text-transform: capitalize;
  transition: color 0.2s ease-out;
}
footer.footer ul.menu li.is-active a {
  background: none;
  color: inherit;
}

div#bs-sitewide-popup .bs-popup-overlay {
  background: rgba(0, 0, 0, 0.85);
  bottom: 0;
  cursor: pointer !important;
  height: 100%;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
  z-index: 1000;
}
div#bs-sitewide-popup .bs-popup-inner {
  background: #FFFFFF;
  border: 0.125rem solid #003a71;
  left: 50%;
  margin: 0 auto;
  max-height: 80vh;
  max-width: calc(100% - 1.875rem);
  padding: 1.875rem;
  position: fixed;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  width: 37.5rem;
  z-index: 1001;
  transition: all 0.2s ease-out;
}
div#bs-sitewide-popup .bs-popup-inner h2, div#bs-sitewide-popup .bs-popup-inner h3, div#bs-sitewide-popup .bs-popup-inner h4, div#bs-sitewide-popup .bs-popup-inner h5, div#bs-sitewide-popup .bs-popup-inner h6 {
  color: #003a71;
}
div#bs-sitewide-popup .bs-popup-inner p {
  color: #000000;
}
div#bs-sitewide-popup .bs-popup-close {
  background: #000000;
  color: #FFFFFF;
  cursor: pointer !important;
  font-size: 2.5rem;
  line-height: 5rem;
  height: 5rem;
  pointer-events: none;
  position: fixed;
  right: 0;
  text-align: center;
  top: 0;
  width: 5rem;
  z-index: 1001;
}
div#bs-sitewide-popup .bs-popup-hide-forever {
  font-weight: 700;
}
div#bs-sitewide-popup.popup-bottom-left .bs-popup-inner, div#bs-sitewide-popup.popup-bottom-right .bs-popup-inner, div#bs-sitewide-popup.popup-bottom-full .bs-popup-inner {
  bottom: 0;
  left: 0;
  right: auto;
  transform: none;
  top: auto;
}
div#bs-sitewide-popup.popup-bottom-right .bs-popup-inner {
  left: auto;
  right: 0;
}
div#bs-sitewide-popup.popup-bottom-full .bs-popup-inner {
  left: 0;
  max-width: 100%;
  right: 0;
  width: 100%;
}

div#instafeed.has-arrows {
  padding: 0 1.875rem;
  position: relative;
}
div#instafeed.has-arrows .slick-arrow {
  background: #003a71;
  border-radius: 0.1875rem;
  color: #FFFFFF;
  cursor: pointer;
  height: 1.5rem;
  position: absolute;
  top: calc(50% - 1rem);
  transform: translateY(-50%);
  width: 1.5rem;
  transition: background 0.2s ease-out;
}
div#instafeed.has-arrows .slick-arrow:hover, div#instafeed.has-arrows .slick-arrow:focus {
  background: #912712;
}
div#instafeed.has-arrows .slick-arrow.slick-prev {
  left: 0;
}
div#instafeed.has-arrows .slick-arrow.slick-next {
  right: 0;
}
div#instafeed a.instagram-image {
  overflow: hidden;
  position: relative;
}
div#instafeed a.instagram-image span.ig-caption {
  background: rgba(0, 58, 113, 0.85);
  bottom: 0;
  color: #FFFFFF;
  display: block;
  opacity: 0;
  position: absolute;
  text-align: center;
  transform: translateY(100%);
  width: 100%;
  transition: all 0.2s ease-out;
}
div#instafeed a.instagram-image img {
  transform: none;
  transition: all 0.2s ease-out;
}
div#instafeed a.instagram-image:hover span.ig-caption, div#instafeed a.instagram-image:focus span.ig-caption {
  opacity: 1;
  transform: translateY(0);
}
div#instafeed a.instagram-image:hover img, div#instafeed a.instagram-image:focus img {
  transform: scale(1.1) rotate(3deg);
}
div#instafeed .slick-list.draggable {
  margin-left: -1.25rem;
}
div#instafeed .slick-list.draggable a.instagram-image.slick-slide {
  margin-left: 1.25rem;
}

ul.slick-dots {
  line-height: 1;
  list-style: none;
  margin: 0.9375rem 0 0;
  text-align: center;
}
ul.slick-dots li {
  background: #FFFFFF;
  border: 0.125rem solid #003a71;
  border-radius: 100%;
  cursor: pointer;
  display: inline-block;
  height: 0.875rem;
  margin: 0 0.3125rem;
  text-indent: -9999px;
  width: 0.875rem;
}
ul.slick-dots li.slick-active {
  background: #003a71;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

input::-webkit-inner-spin-button {
  opacity: 1;
}

body.woocommerce span.required, body.woocommerce-page span.required, div.woocommerce span.required {
  color: #912712 !important;
}
body.woocommerce .star-rating:before, body.woocommerce-page .star-rating:before, div.woocommerce .star-rating:before {
  color: #b99c00;
}
body.woocommerce .star-rating span, body.woocommerce-page .star-rating span, div.woocommerce .star-rating span {
  font-family: star !important;
}
body.woocommerce .star-rating span:before, body.woocommerce-page .star-rating span:before, div.woocommerce .star-rating span:before {
  color: #b99c00 !important;
}
body.woocommerce p.woocommerce-result-count, body.woocommerce-page p.woocommerce-result-count, div.woocommerce p.woocommerce-result-count {
  font-weight: 700;
  text-transform: uppercase;
}
body.woocommerce form.woocommerce-ordering select, body.woocommerce-page form.woocommerce-ordering select, div.woocommerce form.woocommerce-ordering select {
  border: 0.0625rem solid #003a71;
  border-radius: 0.375rem;
}
body.woocommerce .breadcrumbs-wrapper nav.woocommerce-breadcrumb, body.woocommerce-page .breadcrumbs-wrapper nav.woocommerce-breadcrumb, div.woocommerce .breadcrumbs-wrapper nav.woocommerce-breadcrumb {
  color: #333;
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif !important;
  font-size: 0.875rem;
  font-weight: 700;
  margin: 1rem 0 !important;
}
body.woocommerce .breadcrumbs-wrapper nav.woocommerce-breadcrumb span.separator, body.woocommerce-page .breadcrumbs-wrapper nav.woocommerce-breadcrumb span.separator, div.woocommerce .breadcrumbs-wrapper nav.woocommerce-breadcrumb span.separator {
  font-size: 0.875rem;
  font-weight: 700;
  margin: 0 0.625rem;
}
body.woocommerce .breadcrumbs-wrapper nav.woocommerce-breadcrumb a, body.woocommerce-page .breadcrumbs-wrapper nav.woocommerce-breadcrumb a, div.woocommerce .breadcrumbs-wrapper nav.woocommerce-breadcrumb a {
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif !important;
  font-size: 0.875rem;
  font-weight: 700;
}
body.woocommerce .breadcrumbs-wrapper.shop-layout-narrow-content, body.woocommerce-page .breadcrumbs-wrapper.shop-layout-narrow-content, div.woocommerce .breadcrumbs-wrapper.shop-layout-narrow-content {
  margin-left: auto;
  margin-right: auto;
  max-width: 51.875rem;
  width: 100%;
}
body.woocommerce .woocommerce-shop-title, body.woocommerce-page .woocommerce-shop-title, div.woocommerce .woocommerce-shop-title {
  padding: 1.5625rem 0.9375rem 0;
}
@media only screen and (max-width: 47.9375em) {
  body.woocommerce .woocommerce-shop-title, body.woocommerce-page .woocommerce-shop-title, div.woocommerce .woocommerce-shop-title {
    padding: 1.5rem 0.9375rem 1.25rem;
  }
}
body.woocommerce .woocommerce-shop-title h1, body.woocommerce-page .woocommerce-shop-title h1, div.woocommerce .woocommerce-shop-title h1 {
  font-size: 2.5rem !important;
}
body.woocommerce .woocommerce-shop-title h1 i, body.woocommerce-page .woocommerce-shop-title h1 i, div.woocommerce .woocommerce-shop-title h1 i {
  font-size: 1.875rem !important;
}
body.woocommerce .woocommerce-shop-title.shop-layout-narrow-content, body.woocommerce-page .woocommerce-shop-title.shop-layout-narrow-content, div.woocommerce .woocommerce-shop-title.shop-layout-narrow-content {
  margin-left: auto;
  margin-right: auto;
  max-width: 51.875rem;
  width: 100%;
}
body.woocommerce .main-wrap.shop-layout-sidebar-left article.main-content.woocommerce-index, body.woocommerce-page .main-wrap.shop-layout-sidebar-left article.main-content.woocommerce-index, div.woocommerce .main-wrap.shop-layout-sidebar-left article.main-content.woocommerce-index {
  order: 2;
}
body.woocommerce .main-wrap.shop-layout-sidebar-left aside.woocommerce-sidebar.sidebar, body.woocommerce-page .main-wrap.shop-layout-sidebar-left aside.woocommerce-sidebar.sidebar, div.woocommerce .main-wrap.shop-layout-sidebar-left aside.woocommerce-sidebar.sidebar {
  order: 1;
}
body.woocommerce .main-wrap.shop-layout-sidebar-right article.main-content.woocommerce-index, body.woocommerce-page .main-wrap.shop-layout-sidebar-right article.main-content.woocommerce-index, div.woocommerce .main-wrap.shop-layout-sidebar-right article.main-content.woocommerce-index {
  order: 1;
}
body.woocommerce .main-wrap.shop-layout-sidebar-right aside.woocommerce-sidebar.sidebar, body.woocommerce-page .main-wrap.shop-layout-sidebar-right aside.woocommerce-sidebar.sidebar, div.woocommerce .main-wrap.shop-layout-sidebar-right aside.woocommerce-sidebar.sidebar {
  order: 2;
}
body.woocommerce .main-wrap.shop-layout-full-width article.main-content.woocommerce-index, body.woocommerce-page .main-wrap.shop-layout-full-width article.main-content.woocommerce-index, div.woocommerce .main-wrap.shop-layout-full-width article.main-content.woocommerce-index {
  max-width: 100%;
  width: 100%;
}
body.woocommerce .main-wrap.shop-layout-narrow-content article.main-content.woocommerce-index, body.woocommerce-page .main-wrap.shop-layout-narrow-content article.main-content.woocommerce-index, div.woocommerce .main-wrap.shop-layout-narrow-content article.main-content.woocommerce-index {
  margin-left: auto;
  margin-right: auto;
  max-width: 50rem;
  width: calc(100% - 1.875rem);
}
body.woocommerce .woocommerce-index h1.page-title, body.woocommerce-page .woocommerce-index h1.page-title, div.woocommerce .woocommerce-index h1.page-title {
  display: none;
}
body.woocommerce h2.woocommerce-page-title, body.woocommerce-page h2.woocommerce-page-title, div.woocommerce h2.woocommerce-page-title {
  font-size: 1.625rem !important;
  margin-bottom: 0.625rem;
  text-transform: uppercase;
}
body.woocommerce h2.woocommerce-page-title + p.woocommerce-result-count, body.woocommerce-page h2.woocommerce-page-title + p.woocommerce-result-count, div.woocommerce h2.woocommerce-page-title + p.woocommerce-result-count {
  margin-top: -0.625rem;
}
@media only screen and (max-width: 47.9375em) {
  body.woocommerce .woocommerce-ordering, body.woocommerce-page .woocommerce-ordering, div.woocommerce .woocommerce-ordering {
    float: none;
    max-width: 13.75rem;
  }
}
body.woocommerce ul.products, body.woocommerce-page ul.products, div.woocommerce ul.products {
  display: flex;
  flex-wrap: wrap;
}
body.woocommerce ul.products > li.product, body.woocommerce-page ul.products > li.product, div.woocommerce ul.products > li.product {
  float: none;
}
body.woocommerce ul.products > li.product .woocommerce-loop-category__title, body.woocommerce-page ul.products > li.product .woocommerce-loop-category__title, div.woocommerce ul.products > li.product .woocommerce-loop-category__title {
  font-size: 1.5rem !important;
  padding: 0;
  text-align: center;
}
body.woocommerce ul.products > li.product > a .image-wrapper, body.woocommerce-page ul.products > li.product > a .image-wrapper, div.woocommerce ul.products > li.product > a .image-wrapper {
  border: 0.0625rem solid #003a71;
  margin-bottom: 0.625rem;
  overflow: hidden;
}
body.woocommerce ul.products > li.product > a img, body.woocommerce-page ul.products > li.product > a img, div.woocommerce ul.products > li.product > a img {
  margin-bottom: 0;
  transition: all 0.2s ease-out;
}
body.woocommerce ul.products > li.product > a .woocommerce-loop-product__title, body.woocommerce-page ul.products > li.product > a .woocommerce-loop-product__title, div.woocommerce ul.products > li.product > a .woocommerce-loop-product__title {
  font-size: 1.375rem !important;
  padding: 0 0 0.625rem 0;
}
body.woocommerce ul.products > li.product > a span.price, body.woocommerce-page ul.products > li.product > a span.price, div.woocommerce ul.products > li.product > a span.price {
  font-size: 1.125rem;
  margin-bottom: 0;
}
body.woocommerce ul.products > li.product > a span.price span.amount, body.woocommerce-page ul.products > li.product > a span.price span.amount, div.woocommerce ul.products > li.product > a span.price span.amount {
  color: #003a71 !important;
}
body.woocommerce ul.products > li.product:hover > a img, body.woocommerce ul.products > li.product:focus > a img, body.woocommerce-page ul.products > li.product:hover > a img, body.woocommerce-page ul.products > li.product:focus > a img, div.woocommerce ul.products > li.product:hover > a img, div.woocommerce ul.products > li.product:focus > a img {
  transform: scale(1.2) rotate(3deg);
}
body.woocommerce ul.products.columns-2, body.woocommerce ul.products.columns-3, body.woocommerce ul.products.columns-4, body.woocommerce-page ul.products.columns-2, body.woocommerce-page ul.products.columns-3, body.woocommerce-page ul.products.columns-4, div.woocommerce ul.products.columns-2, div.woocommerce ul.products.columns-3, div.woocommerce ul.products.columns-4 {
  margin-left: -1.875rem;
  margin-bottom: 0;
}
body.woocommerce ul.products.columns-2 > li.product, body.woocommerce ul.products.columns-3 > li.product, body.woocommerce ul.products.columns-4 > li.product, body.woocommerce-page ul.products.columns-2 > li.product, body.woocommerce-page ul.products.columns-3 > li.product, body.woocommerce-page ul.products.columns-4 > li.product, div.woocommerce ul.products.columns-2 > li.product, div.woocommerce ul.products.columns-3 > li.product, div.woocommerce ul.products.columns-4 > li.product {
  margin: 0 0 2.8125rem 0;
  padding-left: 1.875rem;
  width: 33.3333%;
}
body.woocommerce ul.products.columns-2 > li.product.last, body.woocommerce ul.products.columns-3 > li.product.last, body.woocommerce ul.products.columns-4 > li.product.last, body.woocommerce-page ul.products.columns-2 > li.product.last, body.woocommerce-page ul.products.columns-3 > li.product.last, body.woocommerce-page ul.products.columns-4 > li.product.last, div.woocommerce ul.products.columns-2 > li.product.last, div.woocommerce ul.products.columns-3 > li.product.last, div.woocommerce ul.products.columns-4 > li.product.last {
  margin: 0 0 2.8125rem 0;
}
@media only screen and (max-width: 47.9375em) {
  body.woocommerce ul.products.columns-2 > li.product, body.woocommerce ul.products.columns-3 > li.product, body.woocommerce ul.products.columns-4 > li.product, body.woocommerce-page ul.products.columns-2 > li.product, body.woocommerce-page ul.products.columns-3 > li.product, body.woocommerce-page ul.products.columns-4 > li.product, div.woocommerce ul.products.columns-2 > li.product, div.woocommerce ul.products.columns-3 > li.product, div.woocommerce ul.products.columns-4 > li.product {
    width: 50%;
  }
}
@media only screen and (max-width: 37.5em) {
  body.woocommerce ul.products.columns-2 > li.product, body.woocommerce ul.products.columns-3 > li.product, body.woocommerce ul.products.columns-4 > li.product, body.woocommerce-page ul.products.columns-2 > li.product, body.woocommerce-page ul.products.columns-3 > li.product, body.woocommerce-page ul.products.columns-4 > li.product, div.woocommerce ul.products.columns-2 > li.product, div.woocommerce ul.products.columns-3 > li.product, div.woocommerce ul.products.columns-4 > li.product {
    width: 100%;
  }
  body.woocommerce ul.products.columns-2 > li.product.last, body.woocommerce ul.products.columns-3 > li.product.last, body.woocommerce ul.products.columns-4 > li.product.last, body.woocommerce-page ul.products.columns-2 > li.product.last, body.woocommerce-page ul.products.columns-3 > li.product.last, body.woocommerce-page ul.products.columns-4 > li.product.last, div.woocommerce ul.products.columns-2 > li.product.last, div.woocommerce ul.products.columns-3 > li.product.last, div.woocommerce ul.products.columns-4 > li.product.last {
    margin: 0;
  }
  body.woocommerce ul.products.columns-2 > li.product.last + li.product.first, body.woocommerce ul.products.columns-3 > li.product.last + li.product.first, body.woocommerce ul.products.columns-4 > li.product.last + li.product.first, body.woocommerce-page ul.products.columns-2 > li.product.last + li.product.first, body.woocommerce-page ul.products.columns-3 > li.product.last + li.product.first, body.woocommerce-page ul.products.columns-4 > li.product.last + li.product.first, div.woocommerce ul.products.columns-2 > li.product.last + li.product.first, div.woocommerce ul.products.columns-3 > li.product.last + li.product.first, div.woocommerce ul.products.columns-4 > li.product.last + li.product.first {
    margin: 2.8125rem 0 !important;
  }
}
body.woocommerce ul.products.columns-2 > li.product .image-wrapper, body.woocommerce ul.products.columns-3 > li.product .image-wrapper, body.woocommerce ul.products.columns-4 > li.product .image-wrapper, body.woocommerce-page ul.products.columns-2 > li.product .image-wrapper, body.woocommerce-page ul.products.columns-3 > li.product .image-wrapper, body.woocommerce-page ul.products.columns-4 > li.product .image-wrapper, div.woocommerce ul.products.columns-2 > li.product .image-wrapper, div.woocommerce ul.products.columns-3 > li.product .image-wrapper, div.woocommerce ul.products.columns-4 > li.product .image-wrapper {
  border: 0;
}
body.woocommerce ul.products.columns-2 > li.product a.woocommerce-LoopProduct-link, body.woocommerce ul.products.columns-3 > li.product a.woocommerce-LoopProduct-link, body.woocommerce ul.products.columns-4 > li.product a.woocommerce-LoopProduct-link, body.woocommerce-page ul.products.columns-2 > li.product a.woocommerce-LoopProduct-link, body.woocommerce-page ul.products.columns-3 > li.product a.woocommerce-LoopProduct-link, body.woocommerce-page ul.products.columns-4 > li.product a.woocommerce-LoopProduct-link, div.woocommerce ul.products.columns-2 > li.product a.woocommerce-LoopProduct-link, div.woocommerce ul.products.columns-3 > li.product a.woocommerce-LoopProduct-link, div.woocommerce ul.products.columns-4 > li.product a.woocommerce-LoopProduct-link {
  background: #F1F3F5;
  border: 0.125rem solid #912712;
  display: block;
  padding: 0 0 0.9375rem 0;
}
body.woocommerce ul.products.columns-2 > li.product h2.woocommerce-loop-product__title, body.woocommerce ul.products.columns-3 > li.product h2.woocommerce-loop-product__title, body.woocommerce ul.products.columns-4 > li.product h2.woocommerce-loop-product__title, body.woocommerce-page ul.products.columns-2 > li.product h2.woocommerce-loop-product__title, body.woocommerce-page ul.products.columns-3 > li.product h2.woocommerce-loop-product__title, body.woocommerce-page ul.products.columns-4 > li.product h2.woocommerce-loop-product__title, div.woocommerce ul.products.columns-2 > li.product h2.woocommerce-loop-product__title, div.woocommerce ul.products.columns-3 > li.product h2.woocommerce-loop-product__title, div.woocommerce ul.products.columns-4 > li.product h2.woocommerce-loop-product__title {
  padding: 0 0.9375rem 0.625rem;
}
body.woocommerce ul.products.columns-2 > li.product span.price, body.woocommerce ul.products.columns-3 > li.product span.price, body.woocommerce ul.products.columns-4 > li.product span.price, body.woocommerce-page ul.products.columns-2 > li.product span.price, body.woocommerce-page ul.products.columns-3 > li.product span.price, body.woocommerce-page ul.products.columns-4 > li.product span.price, div.woocommerce ul.products.columns-2 > li.product span.price, div.woocommerce ul.products.columns-3 > li.product span.price, div.woocommerce ul.products.columns-4 > li.product span.price {
  padding: 0 0.9375rem;
}
body.woocommerce ul.products.columns-2 > li.product div.star-rating, body.woocommerce ul.products.columns-3 > li.product div.star-rating, body.woocommerce ul.products.columns-4 > li.product div.star-rating, body.woocommerce-page ul.products.columns-2 > li.product div.star-rating, body.woocommerce-page ul.products.columns-3 > li.product div.star-rating, body.woocommerce-page ul.products.columns-4 > li.product div.star-rating, div.woocommerce ul.products.columns-2 > li.product div.star-rating, div.woocommerce ul.products.columns-3 > li.product div.star-rating, div.woocommerce ul.products.columns-4 > li.product div.star-rating {
  margin-left: 0.9375rem;
}
body.woocommerce ul.products.columns-2 > li.product .button, body.woocommerce ul.products.columns-3 > li.product .button, body.woocommerce ul.products.columns-4 > li.product .button, body.woocommerce-page ul.products.columns-2 > li.product .button, body.woocommerce-page ul.products.columns-3 > li.product .button, body.woocommerce-page ul.products.columns-4 > li.product .button, div.woocommerce ul.products.columns-2 > li.product .button, div.woocommerce ul.products.columns-3 > li.product .button, div.woocommerce ul.products.columns-4 > li.product .button {
  border-radius: 0 !important;
  display: block;
  margin-top: 0;
}
body.woocommerce ul.products.columns-2 > li.product, body.woocommerce-page ul.products.columns-2 > li.product, div.woocommerce ul.products.columns-2 > li.product {
  width: 50%;
}
@media only screen and (max-width: 37.5em) {
  body.woocommerce ul.products.columns-2 > li.product, body.woocommerce-page ul.products.columns-2 > li.product, div.woocommerce ul.products.columns-2 > li.product {
    width: 100%;
  }
}
body.woocommerce ul.products.columns-4 > li.product, body.woocommerce-page ul.products.columns-4 > li.product, div.woocommerce ul.products.columns-4 > li.product {
  width: 25%;
}
@media only screen and (max-width: 64em) {
  body.woocommerce ul.products.columns-4 > li.product, body.woocommerce-page ul.products.columns-4 > li.product, div.woocommerce ul.products.columns-4 > li.product {
    clear: none !important;
    width: 33.3333%;
  }
}
@media only screen and (max-width: 47.9375em) {
  body.woocommerce ul.products.columns-4 > li.product, body.woocommerce-page ul.products.columns-4 > li.product, div.woocommerce ul.products.columns-4 > li.product {
    width: 50%;
  }
}
@media only screen and (max-width: 37.5em) {
  body.woocommerce ul.products.columns-4 > li.product, body.woocommerce-page ul.products.columns-4 > li.product, div.woocommerce ul.products.columns-4 > li.product {
    width: 100%;
  }
}
body.woocommerce .product-top-wrapper, body.woocommerce-page .product-top-wrapper, div.woocommerce .product-top-wrapper {
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 48em) {
  body.woocommerce .product-top-wrapper, body.woocommerce-page .product-top-wrapper, div.woocommerce .product-top-wrapper {
    flex-direction: column;
  }
}
body.woocommerce .product-top-wrapper span.onsale, body.woocommerce-page .product-top-wrapper span.onsale, div.woocommerce .product-top-wrapper span.onsale {
  left: 0 !important;
}
body.woocommerce .product-top-wrapper div.woocommerce-product-gallery, body.woocommerce-page .product-top-wrapper div.woocommerce-product-gallery, div.woocommerce .product-top-wrapper div.woocommerce-product-gallery {
  margin-bottom: 0;
}
body.woocommerce .product-top-wrapper div.summary.entry-summary, body.woocommerce-page .product-top-wrapper div.summary.entry-summary, div.woocommerce .product-top-wrapper div.summary.entry-summary {
  float: none;
  margin-bottom: 0;
}
body.woocommerce span.onsale, body.woocommerce-page span.onsale, div.woocommerce span.onsale {
  background: #003a71;
  border-radius: 0;
  color: #FFFFFF !important;
  height: auto;
  line-height: 1;
  margin: 0.5rem 0.0625rem 0 0 !important;
  min-height: 0;
  min-width: 0;
  padding: 0.625rem;
  position: absolute;
  text-transform: uppercase;
  width: auto;
}
body.woocommerce span.onsale:before, body.woocommerce span.onsale:after, body.woocommerce-page span.onsale:before, body.woocommerce-page span.onsale:after, div.woocommerce span.onsale:before, div.woocommerce span.onsale:after {
  border: 1.0625rem solid transparent;
  content: "";
  height: 0.0625rem;
  left: -1.0625rem;
  position: absolute;
  width: 0.0625rem;
}
body.woocommerce span.onsale:before, body.woocommerce-page span.onsale:before, div.woocommerce span.onsale:before {
  border-top-color: #003a71;
  top: 0;
}
body.woocommerce span.onsale:after, body.woocommerce-page span.onsale:after, div.woocommerce span.onsale:after {
  border-bottom-color: #003a71;
  bottom: 0;
}
body.woocommerce .product.sale span.onsale, body.woocommerce-page .product.sale span.onsale, div.woocommerce .product.sale span.onsale {
  border-radius: 0;
  left: 1.875rem;
  padding: 0.625rem;
  right: auto;
  top: 0;
}
body.woocommerce .product.sale span.onsale:before, body.woocommerce .product.sale span.onsale:after, body.woocommerce-page .product.sale span.onsale:before, body.woocommerce-page .product.sale span.onsale:after, div.woocommerce .product.sale span.onsale:before, div.woocommerce .product.sale span.onsale:after {
  left: auto;
  right: -1.0625rem;
}
body.woocommerce .main-wrap .button, body.woocommerce .main-wrap .button.wc-backward, body.woocommerce .button, body.woocommerce .button.wc-backward, body.woocommerce .comment-form p.form-submit input, body.woocommerce-page .main-wrap .button, body.woocommerce-page .main-wrap .button.wc-backward, body.woocommerce-page .button, body.woocommerce-page .button.wc-backward, body.woocommerce-page .comment-form p.form-submit input, div.woocommerce .main-wrap .button, div.woocommerce .main-wrap .button.wc-backward, div.woocommerce .button, div.woocommerce .button.wc-backward, div.woocommerce .comment-form p.form-submit input {
  background: #912712 !important;
  border-radius: 6.25rem !important;
  color: #FFFFFF !important;
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif;
  font-size: 0.875rem;
  font-weight: 700 !important;
  letter-spacing: -0.03em;
  line-height: 1;
  padding: 0.9375rem 1.25rem;
  position: relative;
  text-decoration: none;
  text-transform: uppercase;
  transition: all 0.2s ease-out;
}
body.woocommerce .main-wrap .button:hover, body.woocommerce .main-wrap .button:focus, body.woocommerce .main-wrap .button.wc-backward:hover, body.woocommerce .main-wrap .button.wc-backward:focus, body.woocommerce .button:hover, body.woocommerce .button:focus, body.woocommerce .button.wc-backward:hover, body.woocommerce .button.wc-backward:focus, body.woocommerce .comment-form p.form-submit input:hover, body.woocommerce .comment-form p.form-submit input:focus, body.woocommerce-page .main-wrap .button:hover, body.woocommerce-page .main-wrap .button:focus, body.woocommerce-page .main-wrap .button.wc-backward:hover, body.woocommerce-page .main-wrap .button.wc-backward:focus, body.woocommerce-page .button:hover, body.woocommerce-page .button:focus, body.woocommerce-page .button.wc-backward:hover, body.woocommerce-page .button.wc-backward:focus, body.woocommerce-page .comment-form p.form-submit input:hover, body.woocommerce-page .comment-form p.form-submit input:focus, div.woocommerce .main-wrap .button:hover, div.woocommerce .main-wrap .button:focus, div.woocommerce .main-wrap .button.wc-backward:hover, div.woocommerce .main-wrap .button.wc-backward:focus, div.woocommerce .button:hover, div.woocommerce .button:focus, div.woocommerce .button.wc-backward:hover, div.woocommerce .button.wc-backward:focus, div.woocommerce .comment-form p.form-submit input:hover, div.woocommerce .comment-form p.form-submit input:focus {
  background: #000000 !important;
}
body.woocommerce .add_to_cart_button.ajax_add_to_cart,
body.woocommerce .button.product_type_variable, body.woocommerce-page .add_to_cart_button.ajax_add_to_cart,
body.woocommerce-page .button.product_type_variable, div.woocommerce .add_to_cart_button.ajax_add_to_cart,
div.woocommerce .button.product_type_variable {
  padding: 0.9375rem;
  text-align: left;
}
body.woocommerce .add_to_cart_button.ajax_add_to_cart:after,
body.woocommerce .button.product_type_variable:after, body.woocommerce-page .add_to_cart_button.ajax_add_to_cart:after,
body.woocommerce-page .button.product_type_variable:after, div.woocommerce .add_to_cart_button.ajax_add_to_cart:after,
div.woocommerce .button.product_type_variable:after {
  background: #00693B;
  border-radius: 100%;
  bottom: 0.125rem;
  color: #FFFFFF;
  line-height: 2.1875rem;
  margin: 0;
  padding: 0.3125rem;
  position: absolute;
  right: 0.125rem;
  text-align: center;
  top: 0;
  width: 2.625rem;
}
body.woocommerce .add_to_cart_button.ajax_add_to_cart.added:after,
body.woocommerce .button.product_type_variable.added:after, body.woocommerce-page .add_to_cart_button.ajax_add_to_cart.added:after,
body.woocommerce-page .button.product_type_variable.added:after, div.woocommerce .add_to_cart_button.ajax_add_to_cart.added:after,
div.woocommerce .button.product_type_variable.added:after {
  border-radius: 0;
}
body.woocommerce .add_to_cart_button.ajax_add_to_cart + a.added_to_cart,
body.woocommerce .button.product_type_variable + a.added_to_cart, body.woocommerce-page .add_to_cart_button.ajax_add_to_cart + a.added_to_cart,
body.woocommerce-page .button.product_type_variable + a.added_to_cart, div.woocommerce .add_to_cart_button.ajax_add_to_cart + a.added_to_cart,
div.woocommerce .button.product_type_variable + a.added_to_cart {
  font-weight: 700;
  padding: 0;
}
@media only screen and (max-width: 47.9375em) {
  body.woocommerce .main-wrap, body.woocommerce-page .main-wrap, div.woocommerce .main-wrap {
    flex-direction: column;
    margin-top: 0;
  }
}
@media only screen and (max-width: 47.9375em) {
  body.woocommerce .main-wrap .main-content, body.woocommerce-page .main-wrap .main-content, div.woocommerce .main-wrap .main-content {
    max-width: 100% !important;
    width: calc(100% - 1.875rem) !important;
  }
}
@media only screen and (max-width: 59.4375em) {
  body.woocommerce .main-wrap .woocommerce-index, body.woocommerce-page .main-wrap .woocommerce-index, div.woocommerce .main-wrap .woocommerce-index {
    max-width: calc(100% - 16.25rem);
    width: 100%;
  }
}
@media only screen and (max-width: 47.9375em) {
  body.woocommerce .main-wrap .woocommerce-index, body.woocommerce-page .main-wrap .woocommerce-index, div.woocommerce .main-wrap .woocommerce-index {
    max-width: 100%;
    order: 1 !important;
    width: calc(100% - 1.875rem) !important;
  }
}
body.woocommerce .main-wrap .woocommerce-index .related.products h3, body.woocommerce-page .main-wrap .woocommerce-index .related.products h3, div.woocommerce .main-wrap .woocommerce-index .related.products h3 {
  margin-bottom: 0.25rem;
}
body.woocommerce .main-wrap .woocommerce-index .related.products ul.products li, body.woocommerce-page .main-wrap .woocommerce-index .related.products ul.products li, div.woocommerce .main-wrap .woocommerce-index .related.products ul.products li {
  width: 33.333%;
}
body.woocommerce .main-wrap .woocommerce-index .related.products ul.products li h2.woocommerce-loop-product__title, body.woocommerce-page .main-wrap .woocommerce-index .related.products ul.products li h2.woocommerce-loop-product__title, div.woocommerce .main-wrap .woocommerce-index .related.products ul.products li h2.woocommerce-loop-product__title {
  font-size: 1.375rem !important;
}
@media only screen and (max-width: 40em) {
  body.woocommerce .main-wrap .woocommerce-index .related.products ul.products li, body.woocommerce-page .main-wrap .woocommerce-index .related.products ul.products li, div.woocommerce .main-wrap .woocommerce-index .related.products ul.products li {
    width: 50%;
  }
}
@media only screen and (max-width: 25em) {
  body.woocommerce .main-wrap .woocommerce-index .related.products ul.products li, body.woocommerce-page .main-wrap .woocommerce-index .related.products ul.products li, div.woocommerce .main-wrap .woocommerce-index .related.products ul.products li {
    width: 100%;
  }
}
body.woocommerce .main-wrap .woocommerce-index .related.products ul.products li.sale span.onsale, body.woocommerce-page .main-wrap .woocommerce-index .related.products ul.products li.sale span.onsale, div.woocommerce .main-wrap .woocommerce-index .related.products ul.products li.sale span.onsale {
  left: 1.875rem;
}
body.woocommerce .main-wrap aside.sidebar, body.woocommerce-page .main-wrap aside.sidebar, div.woocommerce .main-wrap aside.sidebar {
  background: #F1F3F5;
  padding: 1.5625rem;
}
@media only screen and (max-width: 59.4375em) {
  body.woocommerce .main-wrap aside.sidebar, body.woocommerce-page .main-wrap aside.sidebar, div.woocommerce .main-wrap aside.sidebar {
    width: 12.5rem !important;
  }
}
@media only screen and (max-width: 47.9375em) {
  body.woocommerce .main-wrap aside.sidebar, body.woocommerce-page .main-wrap aside.sidebar, div.woocommerce .main-wrap aside.sidebar {
    order: 2 !important;
    width: calc(100% - 1.875rem) !important;
  }
}
body.woocommerce .main-wrap aside.sidebar .widget_product_categories h6, body.woocommerce-page .main-wrap aside.sidebar .widget_product_categories h6, div.woocommerce .main-wrap aside.sidebar .widget_product_categories h6 {
  border-bottom: 0.125rem solid #003a71;
  font-size: 1.125rem !important;
  margin-bottom: 0.625rem;
  padding-bottom: 0.625rem;
  text-transform: uppercase;
}
body.woocommerce .main-wrap aside.sidebar .widget_product_categories h6:before, body.woocommerce-page .main-wrap aside.sidebar .widget_product_categories h6:before, div.woocommerce .main-wrap aside.sidebar .widget_product_categories h6:before {
  content: "\f07a";
  font-family: fontawesome;
  font-size: 1.25rem;
  margin-right: 0.3125rem;
}
body.woocommerce .main-wrap aside.sidebar .widget_product_categories ul.product-categories, body.woocommerce-page .main-wrap aside.sidebar .widget_product_categories ul.product-categories, div.woocommerce .main-wrap aside.sidebar .widget_product_categories ul.product-categories {
  list-style: none;
  margin: 0;
}
body.woocommerce .main-wrap aside.sidebar .widget_product_categories ul.product-categories > li.cat-item, body.woocommerce-page .main-wrap aside.sidebar .widget_product_categories ul.product-categories > li.cat-item, div.woocommerce .main-wrap aside.sidebar .widget_product_categories ul.product-categories > li.cat-item {
  position: relative;
}
body.woocommerce .main-wrap aside.sidebar .widget_product_categories ul.product-categories > li.cat-item > a, body.woocommerce-page .main-wrap aside.sidebar .widget_product_categories ul.product-categories > li.cat-item > a, div.woocommerce .main-wrap aside.sidebar .widget_product_categories ul.product-categories > li.cat-item > a {
  color: #003a71;
  display: inline-block;
  font-size: 1.125rem !important;
  font-weight: 700;
  margin-bottom: 0.625rem;
  vertical-align: middle;
}
body.woocommerce .main-wrap aside.sidebar .widget_product_categories ul.product-categories > li.cat-item i.close-cat-list, body.woocommerce-page .main-wrap aside.sidebar .widget_product_categories ul.product-categories > li.cat-item i.close-cat-list, div.woocommerce .main-wrap aside.sidebar .widget_product_categories ul.product-categories > li.cat-item i.close-cat-list {
  color: #912712;
  cursor: pointer;
  opacity: 0;
  position: absolute;
  right: 0;
  top: 0.3125rem;
  transition: all 0.2s ease-out;
}
body.woocommerce .main-wrap aside.sidebar .widget_product_categories ul.product-categories > li.cat-item > i.toggle-cat-list, body.woocommerce-page .main-wrap aside.sidebar .widget_product_categories ul.product-categories > li.cat-item > i.toggle-cat-list, div.woocommerce .main-wrap aside.sidebar .widget_product_categories ul.product-categories > li.cat-item > i.toggle-cat-list {
  color: #912712 !important;
  cursor: pointer !important;
  display: inline-block;
  height: 1.25rem;
  line-height: 1.25rem;
  position: relative;
  top: 0.25rem;
  vertical-align: top;
  width: 1.25rem;
  transition: all 0.2s ease-out;
}
body.woocommerce .main-wrap aside.sidebar .widget_product_categories ul.product-categories > li.cat-item > i.toggle-cat-list.animate-chevron, body.woocommerce-page .main-wrap aside.sidebar .widget_product_categories ul.product-categories > li.cat-item > i.toggle-cat-list.animate-chevron, div.woocommerce .main-wrap aside.sidebar .widget_product_categories ul.product-categories > li.cat-item > i.toggle-cat-list.animate-chevron {
  left: -0.3125rem;
  top: 0.5625rem;
  transform: rotate(90deg);
}
body.woocommerce .main-wrap aside.sidebar .widget_product_categories ul.product-categories > li.cat-item > i.toggle-cat-list.animate-chevron ~ i.close-cat-list, body.woocommerce-page .main-wrap aside.sidebar .widget_product_categories ul.product-categories > li.cat-item > i.toggle-cat-list.animate-chevron ~ i.close-cat-list, div.woocommerce .main-wrap aside.sidebar .widget_product_categories ul.product-categories > li.cat-item > i.toggle-cat-list.animate-chevron ~ i.close-cat-list {
  opacity: 1;
}
body.woocommerce .main-wrap aside.sidebar .widget_product_categories ul.product-categories ul.children, body.woocommerce-page .main-wrap aside.sidebar .widget_product_categories ul.product-categories ul.children, div.woocommerce .main-wrap aside.sidebar .widget_product_categories ul.product-categories ul.children {
  border-top: 0.0625rem solid #FFFFFF;
  list-style: none;
  height: 0;
  margin-left: 1.0625rem;
  opacity: 0;
  padding-top: 0.625rem;
  position: relative;
  z-index: -1;
  transition: all 0.5s ease-out;
}
body.woocommerce .main-wrap aside.sidebar .widget_product_categories ul.product-categories ul.children.show-cats, body.woocommerce-page .main-wrap aside.sidebar .widget_product_categories ul.product-categories ul.children.show-cats, div.woocommerce .main-wrap aside.sidebar .widget_product_categories ul.product-categories ul.children.show-cats {
  height: auto;
  opacity: 1;
  z-index: 10;
}
body.woocommerce .main-wrap aside.sidebar .widget_product_categories ul.product-categories ul.children li, body.woocommerce-page .main-wrap aside.sidebar .widget_product_categories ul.product-categories ul.children li, div.woocommerce .main-wrap aside.sidebar .widget_product_categories ul.product-categories ul.children li {
  border-bottom: 0.0625rem solid #FFFFFF;
  margin-bottom: 0.625rem;
  padding-bottom: 0.625rem;
}
body.woocommerce .main-wrap aside.sidebar .widget_product_categories ul.product-categories ul.children li a, body.woocommerce-page .main-wrap aside.sidebar .widget_product_categories ul.product-categories ul.children li a, div.woocommerce .main-wrap aside.sidebar .widget_product_categories ul.product-categories ul.children li a {
  color: #5B5B5B;
  display: block;
  font-size: 0.875rem;
  font-weight: 700;
  padding: 0 0.3125rem !important;
}
body.woocommerce .main-wrap aside.sidebar .widget_product_categories ul.product-categories ul.children li.current-cat > a, body.woocommerce-page .main-wrap aside.sidebar .widget_product_categories ul.product-categories ul.children li.current-cat > a, div.woocommerce .main-wrap aside.sidebar .widget_product_categories ul.product-categories ul.children li.current-cat > a {
  color: #000000;
}
body.woocommerce .woocommerce-tabs, body.woocommerce-page .woocommerce-tabs, div.woocommerce .woocommerce-tabs {
  margin-top: 3.75rem !important;
  margin-bottom: 3.75rem !important;
}
body.woocommerce .woocommerce-tabs ul.tabs.wc-tabs, body.woocommerce-page .woocommerce-tabs ul.tabs.wc-tabs, div.woocommerce .woocommerce-tabs ul.tabs.wc-tabs {
  border: 0;
  margin-bottom: 0;
  padding-left: 0;
}
body.woocommerce .woocommerce-tabs ul.tabs.wc-tabs:before, body.woocommerce-page .woocommerce-tabs ul.tabs.wc-tabs:before, div.woocommerce .woocommerce-tabs ul.tabs.wc-tabs:before {
  border-bottom: 0.0625rem solid #003a71;
}
body.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li, body.woocommerce-page .woocommerce-tabs ul.tabs.wc-tabs li, div.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li {
  background: #003a71;
  border: 0.0625rem solid #003a71;
  border-radius: 0;
  color: #FFFFFF;
  margin: 0;
  padding: 0 0.625rem;
  transition: background 0.2s ease-out;
}
body.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li:before, body.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li:after, body.woocommerce-page .woocommerce-tabs ul.tabs.wc-tabs li:before, body.woocommerce-page .woocommerce-tabs ul.tabs.wc-tabs li:after, div.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li:before, div.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li:after {
  display: none;
}
body.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li a, body.woocommerce-page .woocommerce-tabs ul.tabs.wc-tabs li a, div.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li a {
  color: #FFFFFF;
  display: block;
  width: 100%;
}
body.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li:hover, body.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li:focus, body.woocommerce-page .woocommerce-tabs ul.tabs.wc-tabs li:hover, body.woocommerce-page .woocommerce-tabs ul.tabs.wc-tabs li:focus, div.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li:hover, div.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li:focus {
  background: #912712;
}
body.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li:hover a, body.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li:focus a, body.woocommerce-page .woocommerce-tabs ul.tabs.wc-tabs li:hover a, body.woocommerce-page .woocommerce-tabs ul.tabs.wc-tabs li:focus a, div.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li:hover a, div.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li:focus a {
  color: #FFFFFF;
}
body.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li.active, body.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li.active:hover, body.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li.active:focus, body.woocommerce-page .woocommerce-tabs ul.tabs.wc-tabs li.active, body.woocommerce-page .woocommerce-tabs ul.tabs.wc-tabs li.active:hover, body.woocommerce-page .woocommerce-tabs ul.tabs.wc-tabs li.active:focus, div.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li.active, div.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li.active:hover, div.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li.active:focus {
  background: #F1F3F5;
  border-bottom-color: #F1F3F5 !important;
}
body.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li.active a, body.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li.active:hover a, body.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li.active:focus a, body.woocommerce-page .woocommerce-tabs ul.tabs.wc-tabs li.active a, body.woocommerce-page .woocommerce-tabs ul.tabs.wc-tabs li.active:hover a, body.woocommerce-page .woocommerce-tabs ul.tabs.wc-tabs li.active:focus a, div.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li.active a, div.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li.active:hover a, div.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li.active:focus a {
  color: #333 !important;
}
@media only screen and (max-width: 40em) {
  body.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li, body.woocommerce-page .woocommerce-tabs ul.tabs.wc-tabs li, div.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li {
    border-bottom: 0.0625rem solid #F1F3F5;
    box-shadow: 0 -0.125rem 0.4375rem #001e61;
    padding: 0 0.625rem;
    width: 100%;
    transition: padding 0.2s ease-out;
  }
  body.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li.active, body.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li.active:hover, body.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li.active:focus, body.woocommerce-page .woocommerce-tabs ul.tabs.wc-tabs li.active, body.woocommerce-page .woocommerce-tabs ul.tabs.wc-tabs li.active:hover, body.woocommerce-page .woocommerce-tabs ul.tabs.wc-tabs li.active:focus, div.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li.active, div.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li.active:hover, div.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li.active:focus {
    background: #912712;
    padding: 0.3125rem 0.625rem;
  }
  body.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li.active a, body.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li.active:hover a, body.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li.active:focus a, body.woocommerce-page .woocommerce-tabs ul.tabs.wc-tabs li.active a, body.woocommerce-page .woocommerce-tabs ul.tabs.wc-tabs li.active:hover a, body.woocommerce-page .woocommerce-tabs ul.tabs.wc-tabs li.active:focus a, div.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li.active a, div.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li.active:hover a, div.woocommerce .woocommerce-tabs ul.tabs.wc-tabs li.active:focus a {
    color: #FFFFFF !important;
  }
}
body.woocommerce .woocommerce-tabs .woocommerce-Tabs-panel, body.woocommerce-page .woocommerce-tabs .woocommerce-Tabs-panel, div.woocommerce .woocommerce-tabs .woocommerce-Tabs-panel {
  background: #F1F3F5;
  border: 0.0625rem solid #003a71;
  border-top: 0;
  padding: 0.9375rem !important;
}
body.woocommerce .woocommerce-tabs .woocommerce-Tabs-panel p:last-of-type, body.woocommerce-page .woocommerce-tabs .woocommerce-Tabs-panel p:last-of-type, div.woocommerce .woocommerce-tabs .woocommerce-Tabs-panel p:last-of-type {
  margin-bottom: 0;
}
body.woocommerce .woocommerce-tabs .woocommerce-Tabs-panel table.shop_attributes, body.woocommerce .woocommerce-tabs .woocommerce-Tabs-panel table.shop_attributes tbody, body.woocommerce-page .woocommerce-tabs .woocommerce-Tabs-panel table.shop_attributes, body.woocommerce-page .woocommerce-tabs .woocommerce-Tabs-panel table.shop_attributes tbody, div.woocommerce .woocommerce-tabs .woocommerce-Tabs-panel table.shop_attributes, div.woocommerce .woocommerce-tabs .woocommerce-Tabs-panel table.shop_attributes tbody {
  border: 0.0625rem solid #F1F3F5 !important;
  margin-bottom: 0;
}
body.woocommerce .woocommerce-tabs .woocommerce-Tabs-panel h2.woocommerce-Reviews-title, body.woocommerce .woocommerce-tabs .woocommerce-Tabs-panel h2.woocommerce-Reviews-title span, body.woocommerce-page .woocommerce-tabs .woocommerce-Tabs-panel h2.woocommerce-Reviews-title, body.woocommerce-page .woocommerce-tabs .woocommerce-Tabs-panel h2.woocommerce-Reviews-title span, div.woocommerce .woocommerce-tabs .woocommerce-Tabs-panel h2.woocommerce-Reviews-title, div.woocommerce .woocommerce-tabs .woocommerce-Tabs-panel h2.woocommerce-Reviews-title span {
  font-size: 1.5rem !important;
  margin-bottom: 0.9375rem;
}
body.woocommerce #reviews #comments ol.commentlist li.comment .comment_container img.avatar, body.woocommerce-page #reviews #comments ol.commentlist li.comment .comment_container img.avatar, div.woocommerce #reviews #comments ol.commentlist li.comment .comment_container img.avatar {
  border: 0;
  border-radius: 100%;
  padding: 0 !important;
}
body.woocommerce #reviews #comments ol.commentlist li.comment .comment_container .comment-text, body.woocommerce-page #reviews #comments ol.commentlist li.comment .comment_container .comment-text, div.woocommerce #reviews #comments ol.commentlist li.comment .comment_container .comment-text {
  background: #FFFFFF;
  margin: 0 0 0 2.5rem;
}
body.woocommerce #reviews #comments ol.commentlist li.comment .comment_container .comment-text .star-rating, body.woocommerce-page #reviews #comments ol.commentlist li.comment .comment_container .comment-text .star-rating, div.woocommerce #reviews #comments ol.commentlist li.comment .comment_container .comment-text .star-rating {
  margin-left: 0.625rem;
}
body.woocommerce #reviews #comments ol.commentlist li.comment .comment_container .comment-text p.meta, body.woocommerce-page #reviews #comments ol.commentlist li.comment .comment_container .comment-text p.meta, div.woocommerce #reviews #comments ol.commentlist li.comment .comment_container .comment-text p.meta {
  color: #000000;
}
body.woocommerce #reviews #review_form_wrapper #reply-title, body.woocommerce-page #reviews #review_form_wrapper #reply-title, div.woocommerce #reviews #review_form_wrapper #reply-title {
  color: #003a71;
  font-size: 1.125rem;
  font-weight: 700;
}
body.woocommerce #reviews #review_form_wrapper p.stars, body.woocommerce-page #reviews #review_form_wrapper p.stars, div.woocommerce #reviews #review_form_wrapper p.stars {
  color: #b99c00;
}
body.woocommerce #reviews #review_form_wrapper p.stars a:before, body.woocommerce-page #reviews #review_form_wrapper p.stars a:before, div.woocommerce #reviews #review_form_wrapper p.stars a:before {
  color: #b99c00;
}
body.woocommerce .product_meta span.sku_wrapper strong, body.woocommerce-page .product_meta span.sku_wrapper strong, div.woocommerce .product_meta span.sku_wrapper strong {
  color: #000000;
  display: inline-block;
  width: 100%;
}
body.woocommerce .product_meta span.posted_in strong, body.woocommerce-page .product_meta span.posted_in strong, div.woocommerce .product_meta span.posted_in strong {
  color: #000000;
  display: inline-block;
  margin-top: 10px;
  width: 100%;
}
body.woocommerce form.cart, body.woocommerce-page form.cart, div.woocommerce form.cart {
  margin-bottom: 0 !important;
}
body.woocommerce form.cart input, body.woocommerce-page form.cart input, div.woocommerce form.cart input {
  border: 0.0625rem solid #003a71;
  border-radius: 0.375rem;
  min-height: 2.75rem;
}
body.woocommerce form.cart button, body.woocommerce-page form.cart button, div.woocommerce form.cart button {
  margin-left: 0.625rem;
}
body.woocommerce .woocommerce-product-gallery.images .flex-viewport, body.woocommerce-page .woocommerce-product-gallery.images .flex-viewport, div.woocommerce .woocommerce-product-gallery.images .flex-viewport {
  border: 0.0625rem solid #CED4DA;
}
body.woocommerce .woocommerce-product-gallery.images .flex-viewport .woocommerce-product-gallery__image, body.woocommerce-page .woocommerce-product-gallery.images .flex-viewport .woocommerce-product-gallery__image, div.woocommerce .woocommerce-product-gallery.images .flex-viewport .woocommerce-product-gallery__image {
  border: 0 !important;
}
body.woocommerce .woocommerce-product-gallery.images .woocommerce-product-gallery__image, body.woocommerce-page .woocommerce-product-gallery.images .woocommerce-product-gallery__image, div.woocommerce .woocommerce-product-gallery.images .woocommerce-product-gallery__image {
  border: 0.0625rem solid #003a71;
  cursor: grab !important;
  margin-bottom: 0.625rem;
  position: relative;
}
body.woocommerce .woocommerce-product-gallery.images ol.flex-control-nav.flex-control-thumbs, body.woocommerce-page .woocommerce-product-gallery.images ol.flex-control-nav.flex-control-thumbs, div.woocommerce .woocommerce-product-gallery.images ol.flex-control-nav.flex-control-thumbs {
  margin-left: -0.625rem;
}
body.woocommerce .woocommerce-product-gallery.images ol.flex-control-nav.flex-control-thumbs li, body.woocommerce-page .woocommerce-product-gallery.images ol.flex-control-nav.flex-control-thumbs li, div.woocommerce .woocommerce-product-gallery.images ol.flex-control-nav.flex-control-thumbs li {
  padding-left: 0.625rem;
}
body.woocommerce .summary.entry-summary, body.woocommerce-page .summary.entry-summary, div.woocommerce .summary.entry-summary {
  display: flex;
  flex-direction: column;
}
body.woocommerce .summary.entry-summary h2.product_title.entry-title, body.woocommerce-page .summary.entry-summary h2.product_title.entry-title, div.woocommerce .summary.entry-summary h2.product_title.entry-title {
  order: 1;
  border-bottom: 0.125rem solid #003a71;
  font-size: 1.875rem !important;
  margin-bottom: 0.625rem;
  padding-bottom: 0.625rem;
}
body.woocommerce .summary.entry-summary .woocommerce-product-details__short-description, body.woocommerce-page .summary.entry-summary .woocommerce-product-details__short-description, div.woocommerce .summary.entry-summary .woocommerce-product-details__short-description {
  order: 2;
}
body.woocommerce .summary.entry-summary p.price, body.woocommerce-page .summary.entry-summary p.price, div.woocommerce .summary.entry-summary p.price {
  order: 4;
}
body.woocommerce .summary.entry-summary p.price strong, body.woocommerce-page .summary.entry-summary p.price strong, div.woocommerce .summary.entry-summary p.price strong {
  color: #000000;
  display: block;
  font-size: 1rem;
  line-height: 1;
}
body.woocommerce .summary.entry-summary form.cart, body.woocommerce-page .summary.entry-summary form.cart, div.woocommerce .summary.entry-summary form.cart {
  display: flex;
  order: 5;
}
body.woocommerce .summary.entry-summary form.cart .quantity, body.woocommerce-page .summary.entry-summary form.cart .quantity, div.woocommerce .summary.entry-summary form.cart .quantity {
  order: 1;
}
body.woocommerce .summary.entry-summary form.cart .quantity input.input-text, body.woocommerce-page .summary.entry-summary form.cart .quantity input.input-text, div.woocommerce .summary.entry-summary form.cart .quantity input.input-text {
  margin-bottom: 0;
}
body.woocommerce .summary.entry-summary form.cart button, body.woocommerce-page .summary.entry-summary form.cart button, div.woocommerce .summary.entry-summary form.cart button {
  max-height: 2.75rem;
  order: 2;
}
body.woocommerce .summary.entry-summary .product_meta, body.woocommerce-page .summary.entry-summary .product_meta, div.woocommerce .summary.entry-summary .product_meta {
  border-bottom: 0.125rem solid #003a71;
  border-top: 0.125rem solid #003a71;
  margin: 0 0 0.9375rem;
  order: 3;
  padding: 0.625rem 0 0.625rem;
}
body.woocommerce nav.woocommerce-pagination ul.page-numbers, body.woocommerce-page nav.woocommerce-pagination ul.page-numbers, div.woocommerce nav.woocommerce-pagination ul.page-numbers {
  border: 0 !important;
  border-top: 0.125rem solid #003a71 !important;
  background: none;
  border-radius: 0;
  margin-top: 1.25rem;
  overflow: hidden;
  padding: 0.9375rem 0 0;
  text-align: center;
  width: 100%;
}
body.woocommerce nav.woocommerce-pagination ul.page-numbers li, body.woocommerce-page nav.woocommerce-pagination ul.page-numbers li, div.woocommerce nav.woocommerce-pagination ul.page-numbers li {
  border: 0 !important;
  display: inline-block;
  float: none;
  width: 1.875rem;
}
body.woocommerce nav.woocommerce-pagination ul.page-numbers li span.current, body.woocommerce-page nav.woocommerce-pagination ul.page-numbers li span.current, div.woocommerce nav.woocommerce-pagination ul.page-numbers li span.current {
  background: #912712;
  border-radius: 0;
  color: #FFFFFF !important;
  font-weight: 700;
  overflow: hidden;
}
body.woocommerce nav.woocommerce-pagination ul.page-numbers li a.page-numbers, body.woocommerce-page nav.woocommerce-pagination ul.page-numbers li a.page-numbers, div.woocommerce nav.woocommerce-pagination ul.page-numbers li a.page-numbers {
  background: #FFFFFF;
  border-radius: 0;
  font-weight: 700;
  overflow: hidden;
}
body.woocommerce nav.woocommerce-pagination ul.page-numbers li a.page-numbers:hover, body.woocommerce nav.woocommerce-pagination ul.page-numbers li a.page-numbers:focus, body.woocommerce-page nav.woocommerce-pagination ul.page-numbers li a.page-numbers:hover, body.woocommerce-page nav.woocommerce-pagination ul.page-numbers li a.page-numbers:focus, div.woocommerce nav.woocommerce-pagination ul.page-numbers li a.page-numbers:hover, div.woocommerce nav.woocommerce-pagination ul.page-numbers li a.page-numbers:focus {
  background: #003a71;
  color: #FFFFFF !important;
}
body.woocommerce .input-number-group, body.woocommerce-page .input-number-group, div.woocommerce .input-number-group {
  display: flex;
  justify-content: flex-start;
  margin-bottom: 0;
  max-width: 12.5rem;
}
body.woocommerce .input-number-group input[type=number]::-webkit-inner-spin-button,
body.woocommerce .input-number-group input[type=number]::-webkit-outer-spin-button, body.woocommerce-page .input-number-group input[type=number]::-webkit-inner-spin-button,
body.woocommerce-page .input-number-group input[type=number]::-webkit-outer-spin-button, div.woocommerce .input-number-group input[type=number]::-webkit-inner-spin-button,
div.woocommerce .input-number-group input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
          appearance: none;
}
body.woocommerce .input-number-group input[type=number], body.woocommerce-page .input-number-group input[type=number], div.woocommerce .input-number-group input[type=number] {
  -moz-appearance: textfield;
}
body.woocommerce .input-number-group .input-group-button, body.woocommerce-page .input-number-group .input-group-button, div.woocommerce .input-number-group .input-group-button {
  line-height: calc(80px / 2);
}
body.woocommerce .input-number-group .input-number, body.woocommerce-page .input-number-group .input-number, div.woocommerce .input-number-group .input-number {
  border-radius: 0 !important;
  display: block;
  margin: 0;
  max-width: 3.125rem;
  outline: none;
  padding: 0;
  text-align: center;
  vertical-align: top;
  width: 100%;
}
body.woocommerce .input-number-group .input-number,
body.woocommerce .input-number-group .input-number-decrement,
body.woocommerce .input-number-group .input-number-increment, body.woocommerce-page .input-number-group .input-number,
body.woocommerce-page .input-number-group .input-number-decrement,
body.woocommerce-page .input-number-group .input-number-increment, div.woocommerce .input-number-group .input-number,
div.woocommerce .input-number-group .input-number-decrement,
div.woocommerce .input-number-group .input-number-increment {
  border: 0.0625rem solid #003a71;
  height: 40px;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  border-radius: 0;
}
body.woocommerce .input-number-group .input-number-decrement,
body.woocommerce .input-number-group .input-number-increment, body.woocommerce-page .input-number-group .input-number-decrement,
body.woocommerce-page .input-number-group .input-number-increment, div.woocommerce .input-number-group .input-number-decrement,
div.woocommerce .input-number-group .input-number-increment {
  background: #003a71;
  color: #FFFFFF !important;
  cursor: pointer;
  display: inline-block;
  font-family: Arial !important;
  font-size: 1.5rem;
  font-weight: 700;
  text-align: center;
  width: 2.1875rem;
  transition: all 0.2s ease-out;
}
body.woocommerce .input-number-group .input-number-decrement:hover, body.woocommerce .input-number-group .input-number-decrement:focus,
body.woocommerce .input-number-group .input-number-increment:hover,
body.woocommerce .input-number-group .input-number-increment:focus, body.woocommerce-page .input-number-group .input-number-decrement:hover, body.woocommerce-page .input-number-group .input-number-decrement:focus,
body.woocommerce-page .input-number-group .input-number-increment:hover,
body.woocommerce-page .input-number-group .input-number-increment:focus, div.woocommerce .input-number-group .input-number-decrement:hover, div.woocommerce .input-number-group .input-number-decrement:focus,
div.woocommerce .input-number-group .input-number-increment:hover,
div.woocommerce .input-number-group .input-number-increment:focus {
  background: #000000;
}
body.woocommerce .input-number-group .input-number-decrement, body.woocommerce-page .input-number-group .input-number-decrement, div.woocommerce .input-number-group .input-number-decrement {
  border-radius: 0.1875rem 0 0 0.1875rem;
}
body.woocommerce .input-number-group .input-number-increment, body.woocommerce-page .input-number-group .input-number-increment, div.woocommerce .input-number-group .input-number-increment {
  border-radius: 0 0.1875rem 0.1875rem 0;
}
body.woocommerce form.woocommerce-cart-form table, body.woocommerce-page form.woocommerce-cart-form table, div.woocommerce form.woocommerce-cart-form table {
  border-color: #003a71 !important;
  border-radius: 0 !important;
  overflow: hidden;
}
body.woocommerce form.woocommerce-cart-form table thead, body.woocommerce-page form.woocommerce-cart-form table thead, div.woocommerce form.woocommerce-cart-form table thead {
  border: 0 !important;
  background: #003a71;
  color: #FFFFFF;
}
body.woocommerce form.woocommerce-cart-form table thead tr th.product-name, body.woocommerce-page form.woocommerce-cart-form table thead tr th.product-name, div.woocommerce form.woocommerce-cart-form table thead tr th.product-name {
  width: 50%;
}
body.woocommerce form.woocommerce-cart-form table thead tr th.product-price,
body.woocommerce form.woocommerce-cart-form table thead tr th.product-quantity,
body.woocommerce form.woocommerce-cart-form table thead tr th.product-subtotal, body.woocommerce-page form.woocommerce-cart-form table thead tr th.product-price,
body.woocommerce-page form.woocommerce-cart-form table thead tr th.product-quantity,
body.woocommerce-page form.woocommerce-cart-form table thead tr th.product-subtotal, div.woocommerce form.woocommerce-cart-form table thead tr th.product-price,
div.woocommerce form.woocommerce-cart-form table thead tr th.product-quantity,
div.woocommerce form.woocommerce-cart-form table thead tr th.product-subtotal {
  text-align: center;
}
body.woocommerce form.woocommerce-cart-form table thead tr th.product-remove, body.woocommerce-page form.woocommerce-cart-form table thead tr th.product-remove, div.woocommerce form.woocommerce-cart-form table thead tr th.product-remove {
  padding-left: 0;
  padding-right: 0;
  width: 2rem;
}
body.woocommerce form.woocommerce-cart-form table tbody tr td, body.woocommerce-page form.woocommerce-cart-form table tbody tr td, div.woocommerce form.woocommerce-cart-form table tbody tr td {
  border-color: #003a71 !important;
}
body.woocommerce form.woocommerce-cart-form table tbody tr td.product-name, body.woocommerce-page form.woocommerce-cart-form table tbody tr td.product-name, div.woocommerce form.woocommerce-cart-form table tbody tr td.product-name {
  width: 50%;
}
body.woocommerce form.woocommerce-cart-form table tbody tr td.product-name span.product-thumbnail, body.woocommerce-page form.woocommerce-cart-form table tbody tr td.product-name span.product-thumbnail, div.woocommerce form.woocommerce-cart-form table tbody tr td.product-name span.product-thumbnail {
  display: inline-block;
  height: auto;
  width: 4.6875rem !important;
}
body.woocommerce form.woocommerce-cart-form table tbody tr td.product-name span.product-thumbnail a, body.woocommerce-page form.woocommerce-cart-form table tbody tr td.product-name span.product-thumbnail a, div.woocommerce form.woocommerce-cart-form table tbody tr td.product-name span.product-thumbnail a {
  display: block;
  margin-right: 0.3125rem !important;
}
body.woocommerce form.woocommerce-cart-form table tbody tr td.product-name span.product-thumbnail img, body.woocommerce-page form.woocommerce-cart-form table tbody tr td.product-name span.product-thumbnail img, div.woocommerce form.woocommerce-cart-form table tbody tr td.product-name span.product-thumbnail img {
  height: auto;
  width: 100% !important;
}
body.woocommerce form.woocommerce-cart-form table tbody tr td.product-price, body.woocommerce-page form.woocommerce-cart-form table tbody tr td.product-price, div.woocommerce form.woocommerce-cart-form table tbody tr td.product-price {
  text-align: center;
}
body.woocommerce form.woocommerce-cart-form table tbody tr td.product-quantity, body.woocommerce-page form.woocommerce-cart-form table tbody tr td.product-quantity, div.woocommerce form.woocommerce-cart-form table tbody tr td.product-quantity {
  text-align: center;
}
body.woocommerce form.woocommerce-cart-form table tbody tr td.product-quantity .quantity .input-number-group, body.woocommerce-page form.woocommerce-cart-form table tbody tr td.product-quantity .quantity .input-number-group, div.woocommerce form.woocommerce-cart-form table tbody tr td.product-quantity .quantity .input-number-group {
  justify-content: center;
}
body.woocommerce form.woocommerce-cart-form table tbody tr td.product-subtotal, body.woocommerce-page form.woocommerce-cart-form table tbody tr td.product-subtotal, div.woocommerce form.woocommerce-cart-form table tbody tr td.product-subtotal {
  text-align: center;
}
body.woocommerce form.woocommerce-cart-form table tbody tr td.product-remove, body.woocommerce-page form.woocommerce-cart-form table tbody tr td.product-remove, div.woocommerce form.woocommerce-cart-form table tbody tr td.product-remove {
  padding-left: 0;
  padding-right: 0;
  text-align: center;
  width: 2.625rem;
}
body.woocommerce form.woocommerce-cart-form table tbody tr td.product-remove a.remove, body.woocommerce-page form.woocommerce-cart-form table tbody tr td.product-remove a.remove, div.woocommerce form.woocommerce-cart-form table tbody tr td.product-remove a.remove {
  display: inline-block;
  margin-right: 0;
  margin-top: 0.25rem;
  text-decoration: none !important;
}
body.woocommerce form.woocommerce-cart-form table tbody tr:last-of-type, body.woocommerce-page form.woocommerce-cart-form table tbody tr:last-of-type, div.woocommerce form.woocommerce-cart-form table tbody tr:last-of-type {
  background: #003a71;
}
body.woocommerce form.woocommerce-cart-form table tbody input.input-text.qty.text, body.woocommerce-page form.woocommerce-cart-form table tbody input.input-text.qty.text, div.woocommerce form.woocommerce-cart-form table tbody input.input-text.qty.text {
  border: 0.0625rem solid #003a71;
  box-shadow: none;
}
body.woocommerce form.woocommerce-cart-form table tbody .quantity, body.woocommerce-page form.woocommerce-cart-form table tbody .quantity, div.woocommerce form.woocommerce-cart-form table tbody .quantity {
  max-width: 12.5rem;
}
body.woocommerce form.woocommerce-cart-form table tbody .coupon .button, body.woocommerce-page form.woocommerce-cart-form table tbody .coupon .button, div.woocommerce form.woocommerce-cart-form table tbody .coupon .button {
  background: #FFFFFF !important;
  color: #003a71 !important;
  line-height: 2.5rem;
  max-height: 2.5rem;
  padding-top: 0;
  padding-bottom: 0;
  padding-left: 0.875rem;
  padding-right: 0.875rem;
}
body.woocommerce form.woocommerce-cart-form table tbody .coupon .button:hover, body.woocommerce form.woocommerce-cart-form table tbody .coupon .button:focus, body.woocommerce-page form.woocommerce-cart-form table tbody .coupon .button:hover, body.woocommerce-page form.woocommerce-cart-form table tbody .coupon .button:focus, div.woocommerce form.woocommerce-cart-form table tbody .coupon .button:hover, div.woocommerce form.woocommerce-cart-form table tbody .coupon .button:focus {
  background: #000000 !important;
  color: #FFFFFF !important;
}
body.woocommerce form.woocommerce-cart-form table tbody .coupon input#coupon_code, body.woocommerce-page form.woocommerce-cart-form table tbody .coupon input#coupon_code, div.woocommerce form.woocommerce-cart-form table tbody .coupon input#coupon_code {
  border: 0.0625rem solid #003a71;
  border-radius: 0.375rem;
  box-shadow: none;
  min-height: 2.5rem;
  min-width: 7.5rem;
}
body.woocommerce form.woocommerce-cart-form table tbody .button[name=update_cart], body.woocommerce-page form.woocommerce-cart-form table tbody .button[name=update_cart], div.woocommerce form.woocommerce-cart-form table tbody .button[name=update_cart] {
  background: #FFFFFF !important;
  color: #003a71 !important;
  min-height: 2.5rem;
}
body.woocommerce form.woocommerce-cart-form table tbody .button[name=update_cart]:hover, body.woocommerce form.woocommerce-cart-form table tbody .button[name=update_cart]:focus, body.woocommerce-page form.woocommerce-cart-form table tbody .button[name=update_cart]:hover, body.woocommerce-page form.woocommerce-cart-form table tbody .button[name=update_cart]:focus, div.woocommerce form.woocommerce-cart-form table tbody .button[name=update_cart]:hover, div.woocommerce form.woocommerce-cart-form table tbody .button[name=update_cart]:focus {
  background: #000000 !important;
  color: #FFFFFF !important;
}
body.woocommerce .wc-proceed-to-checkout, body.woocommerce-page .wc-proceed-to-checkout, div.woocommerce .wc-proceed-to-checkout {
  padding: 0;
}
body.woocommerce .cart-collaterals, body.woocommerce-page .cart-collaterals, div.woocommerce .cart-collaterals {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-left: -1.875rem;
  width: calc(100% + 1.875rem);
}
body.woocommerce .cart-collaterals div.coupon, body.woocommerce-page .cart-collaterals div.coupon, div.woocommerce .cart-collaterals div.coupon {
  padding-left: 1.875rem;
  width: 50%;
}
@media only screen and (max-width: 56.25em) {
  body.woocommerce .cart-collaterals div.coupon, body.woocommerce-page .cart-collaterals div.coupon, div.woocommerce .cart-collaterals div.coupon {
    margin-bottom: 1.5rem;
    width: 100%;
  }
}
body.woocommerce .cart-collaterals div.coupon label, body.woocommerce-page .cart-collaterals div.coupon label, div.woocommerce .cart-collaterals div.coupon label {
  color: #003a71;
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif;
  font-size: 1.5rem !important;
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 0.25rem;
}
body.woocommerce .cart-collaterals div.coupon input, body.woocommerce-page .cart-collaterals div.coupon input, div.woocommerce .cart-collaterals div.coupon input {
  border-color: #003a71 !important;
  border-radius: 0.1875rem !important;
  min-height: 2.8125rem;
  margin-bottom: 0.625rem;
}
body.woocommerce .cart-collaterals div.coupon .button, body.woocommerce-page .cart-collaterals div.coupon .button, div.woocommerce .cart-collaterals div.coupon .button {
  width: 100%;
}
body.woocommerce .cart-collaterals div.cart_totals, body.woocommerce-page .cart-collaterals div.cart_totals, div.woocommerce .cart-collaterals div.cart_totals {
  padding-left: 1.875rem;
  width: 50%;
}
@media only screen and (max-width: 56.25em) {
  body.woocommerce .cart-collaterals div.cart_totals, body.woocommerce-page .cart-collaterals div.cart_totals, div.woocommerce .cart-collaterals div.cart_totals {
    width: 100%;
  }
}
body.woocommerce .cart-collaterals div.cart_totals h2, body.woocommerce-page .cart-collaterals div.cart_totals h2, div.woocommerce .cart-collaterals div.cart_totals h2 {
  font-size: 1.5rem !important;
  margin-bottom: 0.25rem;
}
body.woocommerce .cart-collaterals div.cart_totals table, body.woocommerce-page .cart-collaterals div.cart_totals table, div.woocommerce .cart-collaterals div.cart_totals table {
  border-color: #003a71;
  border-radius: 0;
  margin-bottom: 0.625rem;
  overflow: hidden;
}
body.woocommerce .cart-collaterals div.cart_totals table tr.order-total, body.woocommerce-page .cart-collaterals div.cart_totals table tr.order-total, div.woocommerce .cart-collaterals div.cart_totals table tr.order-total {
  background: #003a71;
  color: #FFFFFF;
}
body.woocommerce .cart-collaterals div.cart_totals table tr.order-total td span, body.woocommerce-page .cart-collaterals div.cart_totals table tr.order-total td span, div.woocommerce .cart-collaterals div.cart_totals table tr.order-total td span {
  color: #FFFFFF !important;
}
body.woocommerce .cart-collaterals div.cart_totals button.button[name=update_cart], body.woocommerce-page .cart-collaterals div.cart_totals button.button[name=update_cart], div.woocommerce .cart-collaterals div.cart_totals button.button[name=update_cart] {
  margin-bottom: 0.9375rem;
  width: 100%;
}
body.woocommerce .cart-collaterals div.cart_totals button.button:disabled, body.woocommerce .cart-collaterals div.cart_totals button.button:disabled[disabled], body.woocommerce-page .cart-collaterals div.cart_totals button.button:disabled, body.woocommerce-page .cart-collaterals div.cart_totals button.button:disabled[disabled], div.woocommerce .cart-collaterals div.cart_totals button.button:disabled, div.woocommerce .cart-collaterals div.cart_totals button.button:disabled[disabled] {
  padding: 0.9375rem 2.5rem !important;
  width: 100%;
}
body.woocommerce form.woocommerce-form-coupon,
body.woocommerce div.woocommerce-form-coupon, body.woocommerce-page form.woocommerce-form-coupon,
body.woocommerce-page div.woocommerce-form-coupon, div.woocommerce form.woocommerce-form-coupon,
div.woocommerce div.woocommerce-form-coupon {
  background: #F1F3F5 !important;
  border: 0.0625rem solid #003a71 !important;
  border-radius: 0 !important;
  margin: 0 0 1.5rem !important;
  padding: 0.9375rem !important;
}
body.woocommerce form.woocommerce-form-coupon > p,
body.woocommerce div.woocommerce-form-coupon > p, body.woocommerce-page form.woocommerce-form-coupon > p,
body.woocommerce-page div.woocommerce-form-coupon > p, div.woocommerce form.woocommerce-form-coupon > p,
div.woocommerce div.woocommerce-form-coupon > p {
  color: #000000 !important;
  font-weight: 700;
}
body.woocommerce form.woocommerce-form-coupon .woocommerce-form-coupon-toggle,
body.woocommerce div.woocommerce-form-coupon .woocommerce-form-coupon-toggle, body.woocommerce-page form.woocommerce-form-coupon .woocommerce-form-coupon-toggle,
body.woocommerce-page div.woocommerce-form-coupon .woocommerce-form-coupon-toggle, div.woocommerce form.woocommerce-form-coupon .woocommerce-form-coupon-toggle,
div.woocommerce div.woocommerce-form-coupon .woocommerce-form-coupon-toggle {
  display: none;
}
body.woocommerce form.woocommerce-form-coupon .form-row,
body.woocommerce div.woocommerce-form-coupon .form-row, body.woocommerce-page form.woocommerce-form-coupon .form-row,
body.woocommerce-page div.woocommerce-form-coupon .form-row, div.woocommerce form.woocommerce-form-coupon .form-row,
div.woocommerce div.woocommerce-form-coupon .form-row {
  margin-bottom: 0;
  padding: 0;
}
body.woocommerce form.woocommerce-form-coupon .form-row.form-row-first,
body.woocommerce div.woocommerce-form-coupon .form-row.form-row-first, body.woocommerce-page form.woocommerce-form-coupon .form-row.form-row-first,
body.woocommerce-page div.woocommerce-form-coupon .form-row.form-row-first, div.woocommerce form.woocommerce-form-coupon .form-row.form-row-first,
div.woocommerce div.woocommerce-form-coupon .form-row.form-row-first {
  width: calc(100% - 200px) !important;
}
@media only screen and (max-width: 30em) {
  body.woocommerce form.woocommerce-form-coupon .form-row.form-row-first,
  body.woocommerce div.woocommerce-form-coupon .form-row.form-row-first, body.woocommerce-page form.woocommerce-form-coupon .form-row.form-row-first,
  body.woocommerce-page div.woocommerce-form-coupon .form-row.form-row-first, div.woocommerce form.woocommerce-form-coupon .form-row.form-row-first,
  div.woocommerce div.woocommerce-form-coupon .form-row.form-row-first {
    margin-bottom: 0.625rem;
    width: 100% !important;
  }
}
body.woocommerce form.woocommerce-form-coupon .form-row.form-row-last,
body.woocommerce div.woocommerce-form-coupon .form-row.form-row-last, body.woocommerce-page form.woocommerce-form-coupon .form-row.form-row-last,
body.woocommerce-page div.woocommerce-form-coupon .form-row.form-row-last, div.woocommerce form.woocommerce-form-coupon .form-row.form-row-last,
div.woocommerce div.woocommerce-form-coupon .form-row.form-row-last {
  text-align: right;
  width: 12.5rem !important;
}
@media only screen and (max-width: 30em) {
  body.woocommerce form.woocommerce-form-coupon .form-row.form-row-last,
  body.woocommerce div.woocommerce-form-coupon .form-row.form-row-last, body.woocommerce-page form.woocommerce-form-coupon .form-row.form-row-last,
  body.woocommerce-page div.woocommerce-form-coupon .form-row.form-row-last, div.woocommerce form.woocommerce-form-coupon .form-row.form-row-last,
  div.woocommerce div.woocommerce-form-coupon .form-row.form-row-last {
    text-align: left;
    width: 100% !important;
  }
  body.woocommerce form.woocommerce-form-coupon .form-row.form-row-last button,
  body.woocommerce div.woocommerce-form-coupon .form-row.form-row-last button, body.woocommerce-page form.woocommerce-form-coupon .form-row.form-row-last button,
  body.woocommerce-page div.woocommerce-form-coupon .form-row.form-row-last button, div.woocommerce form.woocommerce-form-coupon .form-row.form-row-last button,
  div.woocommerce div.woocommerce-form-coupon .form-row.form-row-last button {
    max-width: 100% !important;
    width: 100% !important;
  }
}
body.woocommerce form.woocommerce-form-coupon input[type=text],
body.woocommerce div.woocommerce-form-coupon input[type=text], body.woocommerce-page form.woocommerce-form-coupon input[type=text],
body.woocommerce-page div.woocommerce-form-coupon input[type=text], div.woocommerce form.woocommerce-form-coupon input[type=text],
div.woocommerce div.woocommerce-form-coupon input[type=text] {
  border-color: #003a71 !important;
  border-radius: 0.1875rem !important;
  box-shadow: none !important;
  min-height: 2.75rem;
}
body.woocommerce .billing-shipping-tabs, body.woocommerce-page .billing-shipping-tabs, div.woocommerce .billing-shipping-tabs {
  border-color: #003a71;
}
body.woocommerce .billing-shipping-wrapper, body.woocommerce-page .billing-shipping-wrapper, div.woocommerce .billing-shipping-wrapper {
  border-color: #003a71;
  max-height: 100%;
  margin-bottom: 1.5rem;
  transition: max-height 0.2s ease-out;
}
body.woocommerce .billing-shipping-wrapper .shipping-details, body.woocommerce .billing-shipping-wrapper .billing-details, body.woocommerce-page .billing-shipping-wrapper .shipping-details, body.woocommerce-page .billing-shipping-wrapper .billing-details, div.woocommerce .billing-shipping-wrapper .shipping-details, div.woocommerce .billing-shipping-wrapper .billing-details {
  padding: 0.9375rem;
}
body.woocommerce span.select2-container .select2-dropdown, body.woocommerce-page span.select2-container .select2-dropdown, div.woocommerce span.select2-container .select2-dropdown {
  margin-top: -0.0625rem;
}
body.woocommerce span.select2-container .select2-dropdown input.select2-search__field, body.woocommerce-page span.select2-container .select2-dropdown input.select2-search__field, div.woocommerce span.select2-container .select2-dropdown input.select2-search__field {
  border-color: #003a71;
  border-radius: 0.1875rem;
  box-shadow: 0;
  display: none;
}
body.woocommerce.woocommerce-checkout form.checkout_coupon, body.woocommerce-page.woocommerce-checkout form.checkout_coupon, div.woocommerce.woocommerce-checkout form.checkout_coupon {
  display: block !important;
}
body.woocommerce.woocommerce-checkout span.select2-container .select2-dropdown, body.woocommerce-page.woocommerce-checkout span.select2-container .select2-dropdown, div.woocommerce.woocommerce-checkout span.select2-container .select2-dropdown {
  margin-top: -0.8125rem;
}
body.woocommerce form.woocommerce-checkout, body.woocommerce-page form.woocommerce-checkout, div.woocommerce form.woocommerce-checkout {
  position: relative !important;
}
body.woocommerce form.woocommerce-checkout .woocommerce-billing-fields input.input-text, body.woocommerce form.woocommerce-checkout .woocommerce-billing-fields textarea, body.woocommerce form.woocommerce-checkout .woocommerce-billing-fields .select2-selection, body.woocommerce form.woocommerce-checkout .woocommerce-billing-fields select,
body.woocommerce form.woocommerce-checkout .woocommerce-account-fields input.input-text,
body.woocommerce form.woocommerce-checkout .woocommerce-account-fields textarea,
body.woocommerce form.woocommerce-checkout .woocommerce-account-fields .select2-selection,
body.woocommerce form.woocommerce-checkout .woocommerce-account-fields select,
body.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields input.input-text,
body.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields textarea,
body.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields .select2-selection,
body.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields select,
body.woocommerce form.woocommerce-checkout .woocommerce-additional-fields input.input-text,
body.woocommerce form.woocommerce-checkout .woocommerce-additional-fields textarea,
body.woocommerce form.woocommerce-checkout .woocommerce-additional-fields .select2-selection,
body.woocommerce form.woocommerce-checkout .woocommerce-additional-fields select, body.woocommerce-page form.woocommerce-checkout .woocommerce-billing-fields input.input-text, body.woocommerce-page form.woocommerce-checkout .woocommerce-billing-fields textarea, body.woocommerce-page form.woocommerce-checkout .woocommerce-billing-fields .select2-selection, body.woocommerce-page form.woocommerce-checkout .woocommerce-billing-fields select,
body.woocommerce-page form.woocommerce-checkout .woocommerce-account-fields input.input-text,
body.woocommerce-page form.woocommerce-checkout .woocommerce-account-fields textarea,
body.woocommerce-page form.woocommerce-checkout .woocommerce-account-fields .select2-selection,
body.woocommerce-page form.woocommerce-checkout .woocommerce-account-fields select,
body.woocommerce-page form.woocommerce-checkout .woocommerce-shipping-fields input.input-text,
body.woocommerce-page form.woocommerce-checkout .woocommerce-shipping-fields textarea,
body.woocommerce-page form.woocommerce-checkout .woocommerce-shipping-fields .select2-selection,
body.woocommerce-page form.woocommerce-checkout .woocommerce-shipping-fields select,
body.woocommerce-page form.woocommerce-checkout .woocommerce-additional-fields input.input-text,
body.woocommerce-page form.woocommerce-checkout .woocommerce-additional-fields textarea,
body.woocommerce-page form.woocommerce-checkout .woocommerce-additional-fields .select2-selection,
body.woocommerce-page form.woocommerce-checkout .woocommerce-additional-fields select, div.woocommerce form.woocommerce-checkout .woocommerce-billing-fields input.input-text, div.woocommerce form.woocommerce-checkout .woocommerce-billing-fields textarea, div.woocommerce form.woocommerce-checkout .woocommerce-billing-fields .select2-selection, div.woocommerce form.woocommerce-checkout .woocommerce-billing-fields select,
div.woocommerce form.woocommerce-checkout .woocommerce-account-fields input.input-text,
div.woocommerce form.woocommerce-checkout .woocommerce-account-fields textarea,
div.woocommerce form.woocommerce-checkout .woocommerce-account-fields .select2-selection,
div.woocommerce form.woocommerce-checkout .woocommerce-account-fields select,
div.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields input.input-text,
div.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields textarea,
div.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields .select2-selection,
div.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields select,
div.woocommerce form.woocommerce-checkout .woocommerce-additional-fields input.input-text,
div.woocommerce form.woocommerce-checkout .woocommerce-additional-fields textarea,
div.woocommerce form.woocommerce-checkout .woocommerce-additional-fields .select2-selection,
div.woocommerce form.woocommerce-checkout .woocommerce-additional-fields select {
  border-color: #003a71 !important;
  border-radius: 0.1875rem !important;
  min-height: 2.75rem;
  margin-bottom: 0.625rem;
}
body.woocommerce form.woocommerce-checkout .woocommerce-billing-fields label,
body.woocommerce form.woocommerce-checkout .woocommerce-account-fields label,
body.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields label,
body.woocommerce form.woocommerce-checkout .woocommerce-additional-fields label, body.woocommerce-page form.woocommerce-checkout .woocommerce-billing-fields label,
body.woocommerce-page form.woocommerce-checkout .woocommerce-account-fields label,
body.woocommerce-page form.woocommerce-checkout .woocommerce-shipping-fields label,
body.woocommerce-page form.woocommerce-checkout .woocommerce-additional-fields label, div.woocommerce form.woocommerce-checkout .woocommerce-billing-fields label,
div.woocommerce form.woocommerce-checkout .woocommerce-account-fields label,
div.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields label,
div.woocommerce form.woocommerce-checkout .woocommerce-additional-fields label {
  color: #001717;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
}
body.woocommerce form.woocommerce-checkout .woocommerce-billing-fields .form-row,
body.woocommerce form.woocommerce-checkout .woocommerce-account-fields .form-row,
body.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields .form-row,
body.woocommerce form.woocommerce-checkout .woocommerce-additional-fields .form-row, body.woocommerce-page form.woocommerce-checkout .woocommerce-billing-fields .form-row,
body.woocommerce-page form.woocommerce-checkout .woocommerce-account-fields .form-row,
body.woocommerce-page form.woocommerce-checkout .woocommerce-shipping-fields .form-row,
body.woocommerce-page form.woocommerce-checkout .woocommerce-additional-fields .form-row, div.woocommerce form.woocommerce-checkout .woocommerce-billing-fields .form-row,
div.woocommerce form.woocommerce-checkout .woocommerce-account-fields .form-row,
div.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields .form-row,
div.woocommerce form.woocommerce-checkout .woocommerce-additional-fields .form-row {
  padding: 0;
}
body.woocommerce form.woocommerce-checkout .woocommerce-billing-fields .form-row.form-row-first, body.woocommerce form.woocommerce-checkout .woocommerce-billing-fields .form-row.form-row-last,
body.woocommerce form.woocommerce-checkout .woocommerce-account-fields .form-row.form-row-first,
body.woocommerce form.woocommerce-checkout .woocommerce-account-fields .form-row.form-row-last,
body.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields .form-row.form-row-first,
body.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields .form-row.form-row-last,
body.woocommerce form.woocommerce-checkout .woocommerce-additional-fields .form-row.form-row-first,
body.woocommerce form.woocommerce-checkout .woocommerce-additional-fields .form-row.form-row-last, body.woocommerce-page form.woocommerce-checkout .woocommerce-billing-fields .form-row.form-row-first, body.woocommerce-page form.woocommerce-checkout .woocommerce-billing-fields .form-row.form-row-last,
body.woocommerce-page form.woocommerce-checkout .woocommerce-account-fields .form-row.form-row-first,
body.woocommerce-page form.woocommerce-checkout .woocommerce-account-fields .form-row.form-row-last,
body.woocommerce-page form.woocommerce-checkout .woocommerce-shipping-fields .form-row.form-row-first,
body.woocommerce-page form.woocommerce-checkout .woocommerce-shipping-fields .form-row.form-row-last,
body.woocommerce-page form.woocommerce-checkout .woocommerce-additional-fields .form-row.form-row-first,
body.woocommerce-page form.woocommerce-checkout .woocommerce-additional-fields .form-row.form-row-last, div.woocommerce form.woocommerce-checkout .woocommerce-billing-fields .form-row.form-row-first, div.woocommerce form.woocommerce-checkout .woocommerce-billing-fields .form-row.form-row-last,
div.woocommerce form.woocommerce-checkout .woocommerce-account-fields .form-row.form-row-first,
div.woocommerce form.woocommerce-checkout .woocommerce-account-fields .form-row.form-row-last,
div.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields .form-row.form-row-first,
div.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields .form-row.form-row-last,
div.woocommerce form.woocommerce-checkout .woocommerce-additional-fields .form-row.form-row-first,
div.woocommerce form.woocommerce-checkout .woocommerce-additional-fields .form-row.form-row-last {
  width: 49.25% !important;
}
body.woocommerce form.woocommerce-checkout .woocommerce-billing-fields .form-row.form-row-wide:last-of-type, body.woocommerce form.woocommerce-checkout .woocommerce-billing-fields .form-row.notes,
body.woocommerce form.woocommerce-checkout .woocommerce-account-fields .form-row.form-row-wide:last-of-type,
body.woocommerce form.woocommerce-checkout .woocommerce-account-fields .form-row.notes,
body.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields .form-row.form-row-wide:last-of-type,
body.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields .form-row.notes,
body.woocommerce form.woocommerce-checkout .woocommerce-additional-fields .form-row.form-row-wide:last-of-type,
body.woocommerce form.woocommerce-checkout .woocommerce-additional-fields .form-row.notes, body.woocommerce-page form.woocommerce-checkout .woocommerce-billing-fields .form-row.form-row-wide:last-of-type, body.woocommerce-page form.woocommerce-checkout .woocommerce-billing-fields .form-row.notes,
body.woocommerce-page form.woocommerce-checkout .woocommerce-account-fields .form-row.form-row-wide:last-of-type,
body.woocommerce-page form.woocommerce-checkout .woocommerce-account-fields .form-row.notes,
body.woocommerce-page form.woocommerce-checkout .woocommerce-shipping-fields .form-row.form-row-wide:last-of-type,
body.woocommerce-page form.woocommerce-checkout .woocommerce-shipping-fields .form-row.notes,
body.woocommerce-page form.woocommerce-checkout .woocommerce-additional-fields .form-row.form-row-wide:last-of-type,
body.woocommerce-page form.woocommerce-checkout .woocommerce-additional-fields .form-row.notes, div.woocommerce form.woocommerce-checkout .woocommerce-billing-fields .form-row.form-row-wide:last-of-type, div.woocommerce form.woocommerce-checkout .woocommerce-billing-fields .form-row.notes,
div.woocommerce form.woocommerce-checkout .woocommerce-account-fields .form-row.form-row-wide:last-of-type,
div.woocommerce form.woocommerce-checkout .woocommerce-account-fields .form-row.notes,
div.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields .form-row.form-row-wide:last-of-type,
div.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields .form-row.notes,
div.woocommerce form.woocommerce-checkout .woocommerce-additional-fields .form-row.form-row-wide:last-of-type,
div.woocommerce form.woocommerce-checkout .woocommerce-additional-fields .form-row.notes {
  margin-bottom: 0;
}
body.woocommerce form.woocommerce-checkout .woocommerce-billing-fields .form-row.form-row-wide:last-of-type input, body.woocommerce form.woocommerce-checkout .woocommerce-billing-fields .form-row.form-row-wide:last-of-type textarea, body.woocommerce form.woocommerce-checkout .woocommerce-billing-fields .form-row.notes input, body.woocommerce form.woocommerce-checkout .woocommerce-billing-fields .form-row.notes textarea,
body.woocommerce form.woocommerce-checkout .woocommerce-account-fields .form-row.form-row-wide:last-of-type input,
body.woocommerce form.woocommerce-checkout .woocommerce-account-fields .form-row.form-row-wide:last-of-type textarea,
body.woocommerce form.woocommerce-checkout .woocommerce-account-fields .form-row.notes input,
body.woocommerce form.woocommerce-checkout .woocommerce-account-fields .form-row.notes textarea,
body.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields .form-row.form-row-wide:last-of-type input,
body.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields .form-row.form-row-wide:last-of-type textarea,
body.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields .form-row.notes input,
body.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields .form-row.notes textarea,
body.woocommerce form.woocommerce-checkout .woocommerce-additional-fields .form-row.form-row-wide:last-of-type input,
body.woocommerce form.woocommerce-checkout .woocommerce-additional-fields .form-row.form-row-wide:last-of-type textarea,
body.woocommerce form.woocommerce-checkout .woocommerce-additional-fields .form-row.notes input,
body.woocommerce form.woocommerce-checkout .woocommerce-additional-fields .form-row.notes textarea, body.woocommerce-page form.woocommerce-checkout .woocommerce-billing-fields .form-row.form-row-wide:last-of-type input, body.woocommerce-page form.woocommerce-checkout .woocommerce-billing-fields .form-row.form-row-wide:last-of-type textarea, body.woocommerce-page form.woocommerce-checkout .woocommerce-billing-fields .form-row.notes input, body.woocommerce-page form.woocommerce-checkout .woocommerce-billing-fields .form-row.notes textarea,
body.woocommerce-page form.woocommerce-checkout .woocommerce-account-fields .form-row.form-row-wide:last-of-type input,
body.woocommerce-page form.woocommerce-checkout .woocommerce-account-fields .form-row.form-row-wide:last-of-type textarea,
body.woocommerce-page form.woocommerce-checkout .woocommerce-account-fields .form-row.notes input,
body.woocommerce-page form.woocommerce-checkout .woocommerce-account-fields .form-row.notes textarea,
body.woocommerce-page form.woocommerce-checkout .woocommerce-shipping-fields .form-row.form-row-wide:last-of-type input,
body.woocommerce-page form.woocommerce-checkout .woocommerce-shipping-fields .form-row.form-row-wide:last-of-type textarea,
body.woocommerce-page form.woocommerce-checkout .woocommerce-shipping-fields .form-row.notes input,
body.woocommerce-page form.woocommerce-checkout .woocommerce-shipping-fields .form-row.notes textarea,
body.woocommerce-page form.woocommerce-checkout .woocommerce-additional-fields .form-row.form-row-wide:last-of-type input,
body.woocommerce-page form.woocommerce-checkout .woocommerce-additional-fields .form-row.form-row-wide:last-of-type textarea,
body.woocommerce-page form.woocommerce-checkout .woocommerce-additional-fields .form-row.notes input,
body.woocommerce-page form.woocommerce-checkout .woocommerce-additional-fields .form-row.notes textarea, div.woocommerce form.woocommerce-checkout .woocommerce-billing-fields .form-row.form-row-wide:last-of-type input, div.woocommerce form.woocommerce-checkout .woocommerce-billing-fields .form-row.form-row-wide:last-of-type textarea, div.woocommerce form.woocommerce-checkout .woocommerce-billing-fields .form-row.notes input, div.woocommerce form.woocommerce-checkout .woocommerce-billing-fields .form-row.notes textarea,
div.woocommerce form.woocommerce-checkout .woocommerce-account-fields .form-row.form-row-wide:last-of-type input,
div.woocommerce form.woocommerce-checkout .woocommerce-account-fields .form-row.form-row-wide:last-of-type textarea,
div.woocommerce form.woocommerce-checkout .woocommerce-account-fields .form-row.notes input,
div.woocommerce form.woocommerce-checkout .woocommerce-account-fields .form-row.notes textarea,
div.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields .form-row.form-row-wide:last-of-type input,
div.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields .form-row.form-row-wide:last-of-type textarea,
div.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields .form-row.notes input,
div.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields .form-row.notes textarea,
div.woocommerce form.woocommerce-checkout .woocommerce-additional-fields .form-row.form-row-wide:last-of-type input,
div.woocommerce form.woocommerce-checkout .woocommerce-additional-fields .form-row.form-row-wide:last-of-type textarea,
div.woocommerce form.woocommerce-checkout .woocommerce-additional-fields .form-row.notes input,
div.woocommerce form.woocommerce-checkout .woocommerce-additional-fields .form-row.notes textarea {
  margin-bottom: 0;
}
body.woocommerce form.woocommerce-checkout .woocommerce-billing-fields .select2-container,
body.woocommerce form.woocommerce-checkout .woocommerce-account-fields .select2-container,
body.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields .select2-container,
body.woocommerce form.woocommerce-checkout .woocommerce-additional-fields .select2-container, body.woocommerce-page form.woocommerce-checkout .woocommerce-billing-fields .select2-container,
body.woocommerce-page form.woocommerce-checkout .woocommerce-account-fields .select2-container,
body.woocommerce-page form.woocommerce-checkout .woocommerce-shipping-fields .select2-container,
body.woocommerce-page form.woocommerce-checkout .woocommerce-additional-fields .select2-container, div.woocommerce form.woocommerce-checkout .woocommerce-billing-fields .select2-container,
div.woocommerce form.woocommerce-checkout .woocommerce-account-fields .select2-container,
div.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields .select2-container,
div.woocommerce form.woocommerce-checkout .woocommerce-additional-fields .select2-container {
  min-height: 2.5rem;
}
body.woocommerce form.woocommerce-checkout .woocommerce-billing-fields .select2-selection span.select2-selection__rendered,
body.woocommerce form.woocommerce-checkout .woocommerce-account-fields .select2-selection span.select2-selection__rendered,
body.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields .select2-selection span.select2-selection__rendered,
body.woocommerce form.woocommerce-checkout .woocommerce-additional-fields .select2-selection span.select2-selection__rendered, body.woocommerce-page form.woocommerce-checkout .woocommerce-billing-fields .select2-selection span.select2-selection__rendered,
body.woocommerce-page form.woocommerce-checkout .woocommerce-account-fields .select2-selection span.select2-selection__rendered,
body.woocommerce-page form.woocommerce-checkout .woocommerce-shipping-fields .select2-selection span.select2-selection__rendered,
body.woocommerce-page form.woocommerce-checkout .woocommerce-additional-fields .select2-selection span.select2-selection__rendered, div.woocommerce form.woocommerce-checkout .woocommerce-billing-fields .select2-selection span.select2-selection__rendered,
div.woocommerce form.woocommerce-checkout .woocommerce-account-fields .select2-selection span.select2-selection__rendered,
div.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields .select2-selection span.select2-selection__rendered,
div.woocommerce form.woocommerce-checkout .woocommerce-additional-fields .select2-selection span.select2-selection__rendered {
  line-height: 2.375rem;
}
body.woocommerce form.woocommerce-checkout .woocommerce-billing-fields .select2-selection span.select2-selection__arrow,
body.woocommerce form.woocommerce-checkout .woocommerce-account-fields .select2-selection span.select2-selection__arrow,
body.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields .select2-selection span.select2-selection__arrow,
body.woocommerce form.woocommerce-checkout .woocommerce-additional-fields .select2-selection span.select2-selection__arrow, body.woocommerce-page form.woocommerce-checkout .woocommerce-billing-fields .select2-selection span.select2-selection__arrow,
body.woocommerce-page form.woocommerce-checkout .woocommerce-account-fields .select2-selection span.select2-selection__arrow,
body.woocommerce-page form.woocommerce-checkout .woocommerce-shipping-fields .select2-selection span.select2-selection__arrow,
body.woocommerce-page form.woocommerce-checkout .woocommerce-additional-fields .select2-selection span.select2-selection__arrow, div.woocommerce form.woocommerce-checkout .woocommerce-billing-fields .select2-selection span.select2-selection__arrow,
div.woocommerce form.woocommerce-checkout .woocommerce-account-fields .select2-selection span.select2-selection__arrow,
div.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields .select2-selection span.select2-selection__arrow,
div.woocommerce form.woocommerce-checkout .woocommerce-additional-fields .select2-selection span.select2-selection__arrow {
  min-height: 2.375rem;
}
body.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields h3#ship-to-different-address, body.woocommerce-page form.woocommerce-checkout .woocommerce-shipping-fields h3#ship-to-different-address, div.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields h3#ship-to-different-address {
  width: 100%;
}
body.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields h3#ship-to-different-address label, body.woocommerce-page form.woocommerce-checkout .woocommerce-shipping-fields h3#ship-to-different-address label, div.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields h3#ship-to-different-address label {
  align-items: center;
  display: flex;
  width: 100%;
}
body.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields h3#ship-to-different-address label input, body.woocommerce-page form.woocommerce-checkout .woocommerce-shipping-fields h3#ship-to-different-address label input, div.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields h3#ship-to-different-address label input {
  margin: 0 0.125rem 0 0.625rem;
  order: 2;
}
body.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields h3#ship-to-different-address label span, body.woocommerce-page form.woocommerce-checkout .woocommerce-shipping-fields h3#ship-to-different-address label span, div.woocommerce form.woocommerce-checkout .woocommerce-shipping-fields h3#ship-to-different-address label span {
  color: #003a71;
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif;
  font-weight: 700;
  line-height: 1.625rem;
  order: 1;
}
body.woocommerce form.woocommerce-checkout #customer_details .col-1, body.woocommerce form.woocommerce-checkout #customer_details .col-2, body.woocommerce-page form.woocommerce-checkout #customer_details .col-1, body.woocommerce-page form.woocommerce-checkout #customer_details .col-2, div.woocommerce form.woocommerce-checkout #customer_details .col-1, div.woocommerce form.woocommerce-checkout #customer_details .col-2 {
  margin-bottom: 2.5rem;
}
body.woocommerce p.tabs-title.checkout-cont-btn, body.woocommerce-page p.tabs-title.checkout-cont-btn, div.woocommerce p.tabs-title.checkout-cont-btn {
  float: right;
  margin: 1.875rem -1rem 0 0;
  text-align: right;
}
body.woocommerce h3#order_review_heading, body.woocommerce-page h3#order_review_heading, div.woocommerce h3#order_review_heading {
  margin-bottom: 0.25rem;
}
body.woocommerce table.shop_table, body.woocommerce table.shop_attributes, body.woocommerce-page table.shop_table, body.woocommerce-page table.shop_attributes, div.woocommerce table.shop_table, div.woocommerce table.shop_attributes {
  border: 0.0625rem solid #003a71 !important;
  border-radius: 0;
  border-spacing: 0;
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif;
  overflow: hidden;
  padding: 0;
}
body.woocommerce table.shop_table thead, body.woocommerce table.shop_attributes thead, body.woocommerce-page table.shop_table thead, body.woocommerce-page table.shop_attributes thead, div.woocommerce table.shop_table thead, div.woocommerce table.shop_attributes thead {
  background: #003a71;
  color: #FFFFFF;
}
body.woocommerce table.shop_table thead th.product-name, body.woocommerce table.shop_attributes thead th.product-name, body.woocommerce-page table.shop_table thead th.product-name, body.woocommerce-page table.shop_attributes thead th.product-name, div.woocommerce table.shop_table thead th.product-name, div.woocommerce table.shop_attributes thead th.product-name {
  width: 40%;
}
body.woocommerce table.shop_table thead th.product-total, body.woocommerce table.shop_attributes thead th.product-total, body.woocommerce-page table.shop_table thead th.product-total, body.woocommerce-page table.shop_attributes thead th.product-total, div.woocommerce table.shop_table thead th.product-total, div.woocommerce table.shop_attributes thead th.product-total {
  width: 60%;
}
body.woocommerce table.shop_table tbody, body.woocommerce table.shop_attributes tbody, body.woocommerce-page table.shop_table tbody, body.woocommerce-page table.shop_attributes tbody, div.woocommerce table.shop_table tbody, div.woocommerce table.shop_attributes tbody {
  border: 0.0625rem solid #003a71 !important;
}
body.woocommerce table.shop_table tbody th, body.woocommerce table.shop_attributes tbody th, body.woocommerce-page table.shop_table tbody th, body.woocommerce-page table.shop_attributes tbody th, div.woocommerce table.shop_table tbody th, div.woocommerce table.shop_attributes tbody th {
  text-align: left;
  text-transform: capitalize;
}
body.woocommerce table.shop_table tbody td, body.woocommerce table.shop_table tbody th, body.woocommerce table.shop_attributes tbody td, body.woocommerce table.shop_attributes tbody th, body.woocommerce-page table.shop_table tbody td, body.woocommerce-page table.shop_table tbody th, body.woocommerce-page table.shop_attributes tbody td, body.woocommerce-page table.shop_attributes tbody th, div.woocommerce table.shop_table tbody td, div.woocommerce table.shop_table tbody th, div.woocommerce table.shop_attributes tbody td, div.woocommerce table.shop_attributes tbody th {
  border-top-color: #003a71 !important;
}
body.woocommerce table.shop_table tbody td.product-name span.product-title, body.woocommerce table.shop_attributes tbody td.product-name span.product-title, body.woocommerce-page table.shop_table tbody td.product-name span.product-title, body.woocommerce-page table.shop_attributes tbody td.product-name span.product-title, div.woocommerce table.shop_table tbody td.product-name span.product-title, div.woocommerce table.shop_attributes tbody td.product-name span.product-title {
  font-weight: 700;
}
body.woocommerce table.shop_table tbody tr.cart-item td.product-total span.amount,
body.woocommerce table.shop_table tbody tr.cart-item td.product-total span.amount span.woocommerce-Price-currencySymbol, body.woocommerce table.shop_attributes tbody tr.cart-item td.product-total span.amount,
body.woocommerce table.shop_attributes tbody tr.cart-item td.product-total span.amount span.woocommerce-Price-currencySymbol, body.woocommerce-page table.shop_table tbody tr.cart-item td.product-total span.amount,
body.woocommerce-page table.shop_table tbody tr.cart-item td.product-total span.amount span.woocommerce-Price-currencySymbol, body.woocommerce-page table.shop_attributes tbody tr.cart-item td.product-total span.amount,
body.woocommerce-page table.shop_attributes tbody tr.cart-item td.product-total span.amount span.woocommerce-Price-currencySymbol, div.woocommerce table.shop_table tbody tr.cart-item td.product-total span.amount,
div.woocommerce table.shop_table tbody tr.cart-item td.product-total span.amount span.woocommerce-Price-currencySymbol, div.woocommerce table.shop_attributes tbody tr.cart-item td.product-total span.amount,
div.woocommerce table.shop_attributes tbody tr.cart-item td.product-total span.amount span.woocommerce-Price-currencySymbol {
  color: #000000 !important;
}
body.woocommerce table.shop_table tfoot, body.woocommerce table.shop_attributes tfoot, body.woocommerce-page table.shop_table tfoot, body.woocommerce-page table.shop_attributes tfoot, div.woocommerce table.shop_table tfoot, div.woocommerce table.shop_attributes tfoot {
  border-color: #003a71 !important;
}
body.woocommerce table.shop_table tfoot th, body.woocommerce table.shop_table tfoot td, body.woocommerce table.shop_attributes tfoot th, body.woocommerce table.shop_attributes tfoot td, body.woocommerce-page table.shop_table tfoot th, body.woocommerce-page table.shop_table tfoot td, body.woocommerce-page table.shop_attributes tfoot th, body.woocommerce-page table.shop_attributes tfoot td, div.woocommerce table.shop_table tfoot th, div.woocommerce table.shop_table tfoot td, div.woocommerce table.shop_attributes tfoot th, div.woocommerce table.shop_attributes tfoot td {
  border-color: #003a71 !important;
}
body.woocommerce table.shop_table tfoot tr td span.amount,
body.woocommerce table.shop_table tfoot tr td span.amount span.woocommerce-Price-currencySymbol, body.woocommerce table.shop_attributes tfoot tr td span.amount,
body.woocommerce table.shop_attributes tfoot tr td span.amount span.woocommerce-Price-currencySymbol, body.woocommerce-page table.shop_table tfoot tr td span.amount,
body.woocommerce-page table.shop_table tfoot tr td span.amount span.woocommerce-Price-currencySymbol, body.woocommerce-page table.shop_attributes tfoot tr td span.amount,
body.woocommerce-page table.shop_attributes tfoot tr td span.amount span.woocommerce-Price-currencySymbol, div.woocommerce table.shop_table tfoot tr td span.amount,
div.woocommerce table.shop_table tfoot tr td span.amount span.woocommerce-Price-currencySymbol, div.woocommerce table.shop_attributes tfoot tr td span.amount,
div.woocommerce table.shop_attributes tfoot tr td span.amount span.woocommerce-Price-currencySymbol {
  color: #000000 !important;
}
body.woocommerce table.shop_table tfoot tr.shipping td, body.woocommerce table.shop_attributes tfoot tr.shipping td, body.woocommerce-page table.shop_table tfoot tr.shipping td, body.woocommerce-page table.shop_attributes tfoot tr.shipping td, div.woocommerce table.shop_table tfoot tr.shipping td, div.woocommerce table.shop_attributes tfoot tr.shipping td {
  color: #000000;
}
body.woocommerce table.shop_table tfoot tr.tax-total, body.woocommerce table.shop_attributes tfoot tr.tax-total, body.woocommerce-page table.shop_table tfoot tr.tax-total, body.woocommerce-page table.shop_attributes tfoot tr.tax-total, div.woocommerce table.shop_table tfoot tr.tax-total, div.woocommerce table.shop_attributes tfoot tr.tax-total {
  background: #003a71 !important;
}
body.woocommerce table.shop_table tfoot tr.tax-total th, body.woocommerce table.shop_table tfoot tr.tax-total td, body.woocommerce table.shop_attributes tfoot tr.tax-total th, body.woocommerce table.shop_attributes tfoot tr.tax-total td, body.woocommerce-page table.shop_table tfoot tr.tax-total th, body.woocommerce-page table.shop_table tfoot tr.tax-total td, body.woocommerce-page table.shop_attributes tfoot tr.tax-total th, body.woocommerce-page table.shop_attributes tfoot tr.tax-total td, div.woocommerce table.shop_table tfoot tr.tax-total th, div.woocommerce table.shop_table tfoot tr.tax-total td, div.woocommerce table.shop_attributes tfoot tr.tax-total th, div.woocommerce table.shop_attributes tfoot tr.tax-total td {
  border-color: #003a71 !important;
}
body.woocommerce table.shop_table tfoot tr.order-total, body.woocommerce table.shop_attributes tfoot tr.order-total, body.woocommerce-page table.shop_table tfoot tr.order-total, body.woocommerce-page table.shop_attributes tfoot tr.order-total, div.woocommerce table.shop_table tfoot tr.order-total, div.woocommerce table.shop_attributes tfoot tr.order-total {
  background: #003a71;
  color: #FFFFFF;
}
body.woocommerce table.shop_table tfoot tr.order-total td strong span.amount,
body.woocommerce table.shop_table tfoot tr.order-total td strong span.amount span.woocommerce-Price-currencySymbol, body.woocommerce table.shop_attributes tfoot tr.order-total td strong span.amount,
body.woocommerce table.shop_attributes tfoot tr.order-total td strong span.amount span.woocommerce-Price-currencySymbol, body.woocommerce-page table.shop_table tfoot tr.order-total td strong span.amount,
body.woocommerce-page table.shop_table tfoot tr.order-total td strong span.amount span.woocommerce-Price-currencySymbol, body.woocommerce-page table.shop_attributes tfoot tr.order-total td strong span.amount,
body.woocommerce-page table.shop_attributes tfoot tr.order-total td strong span.amount span.woocommerce-Price-currencySymbol, div.woocommerce table.shop_table tfoot tr.order-total td strong span.amount,
div.woocommerce table.shop_table tfoot tr.order-total td strong span.amount span.woocommerce-Price-currencySymbol, div.woocommerce table.shop_attributes tfoot tr.order-total td strong span.amount,
div.woocommerce table.shop_attributes tfoot tr.order-total td strong span.amount span.woocommerce-Price-currencySymbol {
  color: #FFFFFF !important;
}
body.woocommerce table.shop_table tfoot tr.order-total small.includes_tax span.woocommerce-Price-amount,
body.woocommerce table.shop_table tfoot tr.order-total small.includes_tax span.woocommerce-Price-amount span.woocommerce-Price-currencySymbol, body.woocommerce table.shop_attributes tfoot tr.order-total small.includes_tax span.woocommerce-Price-amount,
body.woocommerce table.shop_attributes tfoot tr.order-total small.includes_tax span.woocommerce-Price-amount span.woocommerce-Price-currencySymbol, body.woocommerce-page table.shop_table tfoot tr.order-total small.includes_tax span.woocommerce-Price-amount,
body.woocommerce-page table.shop_table tfoot tr.order-total small.includes_tax span.woocommerce-Price-amount span.woocommerce-Price-currencySymbol, body.woocommerce-page table.shop_attributes tfoot tr.order-total small.includes_tax span.woocommerce-Price-amount,
body.woocommerce-page table.shop_attributes tfoot tr.order-total small.includes_tax span.woocommerce-Price-amount span.woocommerce-Price-currencySymbol, div.woocommerce table.shop_table tfoot tr.order-total small.includes_tax span.woocommerce-Price-amount,
div.woocommerce table.shop_table tfoot tr.order-total small.includes_tax span.woocommerce-Price-amount span.woocommerce-Price-currencySymbol, div.woocommerce table.shop_attributes tfoot tr.order-total small.includes_tax span.woocommerce-Price-amount,
div.woocommerce table.shop_attributes tfoot tr.order-total small.includes_tax span.woocommerce-Price-amount span.woocommerce-Price-currencySymbol {
  color: #FFFFFF !important;
}
body.woocommerce table.shop_table tr th, body.woocommerce table.shop_table tr td, body.woocommerce-page table.shop_table tr th, body.woocommerce-page table.shop_table tr td, div.woocommerce table.shop_table tr th, div.woocommerce table.shop_table tr td {
  padding: 0.5625rem 0.75rem;
}
body.woocommerce table.shop_table tr.shipping p, body.woocommerce-page table.shop_table tr.shipping p, div.woocommerce table.shop_table tr.shipping p {
  margin-bottom: 0;
}
body.woocommerce table.shop_table tr.shipping a.shipping-calculator-button, body.woocommerce-page table.shop_table tr.shipping a.shipping-calculator-button, div.woocommerce table.shop_table tr.shipping a.shipping-calculator-button {
  font-weight: 700;
}
body.woocommerce table.shop_table tr.shipping .shipping-calculator-form p.form-row, body.woocommerce-page table.shop_table tr.shipping .shipping-calculator-form p.form-row, div.woocommerce table.shop_table tr.shipping .shipping-calculator-form p.form-row {
  margin-bottom: 0.25rem;
  padding: 0;
}
body.woocommerce table.shop_table tr.shipping .shipping-calculator-form p.form-row .select2, body.woocommerce-page table.shop_table tr.shipping .shipping-calculator-form p.form-row .select2, div.woocommerce table.shop_table tr.shipping .shipping-calculator-form p.form-row .select2 {
  display: block;
  margin-bottom: 0.25rem;
  min-height: 2.625rem;
}
body.woocommerce table.shop_table tr.shipping .shipping-calculator-form p.form-row .select2 .select2-selection, body.woocommerce-page table.shop_table tr.shipping .shipping-calculator-form p.form-row .select2 .select2-selection, div.woocommerce table.shop_table tr.shipping .shipping-calculator-form p.form-row .select2 .select2-selection {
  border-color: #003a71;
  min-height: 2.625rem;
}
body.woocommerce table.shop_table tr.shipping .shipping-calculator-form p.form-row .select2 .select2-selection__rendered,
body.woocommerce table.shop_table tr.shipping .shipping-calculator-form p.form-row .select2 .select2-selection__arrow, body.woocommerce-page table.shop_table tr.shipping .shipping-calculator-form p.form-row .select2 .select2-selection__rendered,
body.woocommerce-page table.shop_table tr.shipping .shipping-calculator-form p.form-row .select2 .select2-selection__arrow, div.woocommerce table.shop_table tr.shipping .shipping-calculator-form p.form-row .select2 .select2-selection__rendered,
div.woocommerce table.shop_table tr.shipping .shipping-calculator-form p.form-row .select2 .select2-selection__arrow {
  line-height: 2.625rem;
  min-height: 2.625rem;
}
body.woocommerce table.shop_table tr.shipping .shipping-calculator-form p.form-row .input-text, body.woocommerce-page table.shop_table tr.shipping .shipping-calculator-form p.form-row .input-text, div.woocommerce table.shop_table tr.shipping .shipping-calculator-form p.form-row .input-text {
  border-color: #003a71;
  border-radius: 0.1875rem;
  box-shadow: 0;
}
body.woocommerce table.shop_table tr.shipping .shipping-calculator-form button.button, body.woocommerce-page table.shop_table tr.shipping .shipping-calculator-form button.button, div.woocommerce table.shop_table tr.shipping .shipping-calculator-form button.button {
  margin-bottom: 0.3125rem;
}
body.woocommerce div.woocommerce-checkout-payment, body.woocommerce #payment, body.woocommerce-page div.woocommerce-checkout-payment, body.woocommerce-page #payment, div.woocommerce div.woocommerce-checkout-payment, div.woocommerce #payment {
  background: #003a71;
}
body.woocommerce div.woocommerce-checkout-payment ul.wc_payment_methods,
body.woocommerce div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods, body.woocommerce #payment ul.wc_payment_methods,
body.woocommerce #payment ul.woocommerce-PaymentMethods, body.woocommerce-page div.woocommerce-checkout-payment ul.wc_payment_methods,
body.woocommerce-page div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods, body.woocommerce-page #payment ul.wc_payment_methods,
body.woocommerce-page #payment ul.woocommerce-PaymentMethods, div.woocommerce div.woocommerce-checkout-payment ul.wc_payment_methods,
div.woocommerce div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods, div.woocommerce #payment ul.wc_payment_methods,
div.woocommerce #payment ul.woocommerce-PaymentMethods {
  background: #003a71;
  border-radius: 0;
}
body.woocommerce div.woocommerce-checkout-payment ul.wc_payment_methods > li > label,
body.woocommerce div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods > li > label, body.woocommerce #payment ul.wc_payment_methods > li > label,
body.woocommerce #payment ul.woocommerce-PaymentMethods > li > label, body.woocommerce-page div.woocommerce-checkout-payment ul.wc_payment_methods > li > label,
body.woocommerce-page div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods > li > label, body.woocommerce-page #payment ul.wc_payment_methods > li > label,
body.woocommerce-page #payment ul.woocommerce-PaymentMethods > li > label, div.woocommerce div.woocommerce-checkout-payment ul.wc_payment_methods > li > label,
div.woocommerce div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods > li > label, div.woocommerce #payment ul.wc_payment_methods > li > label,
div.woocommerce #payment ul.woocommerce-PaymentMethods > li > label {
  font-size: 1.125rem;
  font-weight: 700;
  color: #FFFFFF;
}
body.woocommerce div.woocommerce-checkout-payment ul.wc_payment_methods li.wc_payment_method label,
body.woocommerce div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.wc_payment_method label, body.woocommerce #payment ul.wc_payment_methods li.wc_payment_method label,
body.woocommerce #payment ul.woocommerce-PaymentMethods li.wc_payment_method label, body.woocommerce-page div.woocommerce-checkout-payment ul.wc_payment_methods li.wc_payment_method label,
body.woocommerce-page div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.wc_payment_method label, body.woocommerce-page #payment ul.wc_payment_methods li.wc_payment_method label,
body.woocommerce-page #payment ul.woocommerce-PaymentMethods li.wc_payment_method label, div.woocommerce div.woocommerce-checkout-payment ul.wc_payment_methods li.wc_payment_method label,
div.woocommerce div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.wc_payment_method label, div.woocommerce #payment ul.wc_payment_methods li.wc_payment_method label,
div.woocommerce #payment ul.woocommerce-PaymentMethods li.wc_payment_method label {
  margin: 0;
  width: 100%;
}
body.woocommerce div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_paypal a.about_paypal,
body.woocommerce div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_paypal a.about_paypal, body.woocommerce #payment ul.wc_payment_methods li.payment_method_paypal a.about_paypal,
body.woocommerce #payment ul.woocommerce-PaymentMethods li.payment_method_paypal a.about_paypal, body.woocommerce-page div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_paypal a.about_paypal,
body.woocommerce-page div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_paypal a.about_paypal, body.woocommerce-page #payment ul.wc_payment_methods li.payment_method_paypal a.about_paypal,
body.woocommerce-page #payment ul.woocommerce-PaymentMethods li.payment_method_paypal a.about_paypal, div.woocommerce div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_paypal a.about_paypal,
div.woocommerce div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_paypal a.about_paypal, div.woocommerce #payment ul.wc_payment_methods li.payment_method_paypal a.about_paypal,
div.woocommerce #payment ul.woocommerce-PaymentMethods li.payment_method_paypal a.about_paypal {
  color: #FFFFFF;
  margin-left: 0.625rem;
}
body.woocommerce div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe label,
body.woocommerce div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe label, body.woocommerce #payment ul.wc_payment_methods li.payment_method_stripe label,
body.woocommerce #payment ul.woocommerce-PaymentMethods li.payment_method_stripe label, body.woocommerce-page div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe label,
body.woocommerce-page div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe label, body.woocommerce-page #payment ul.wc_payment_methods li.payment_method_stripe label,
body.woocommerce-page #payment ul.woocommerce-PaymentMethods li.payment_method_stripe label, div.woocommerce div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe label,
div.woocommerce div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe label, div.woocommerce #payment ul.wc_payment_methods li.payment_method_stripe label,
div.woocommerce #payment ul.woocommerce-PaymentMethods li.payment_method_stripe label {
  margin: 0;
  padding-left: 0;
}
body.woocommerce div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe label img,
body.woocommerce div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe label img, body.woocommerce #payment ul.wc_payment_methods li.payment_method_stripe label img,
body.woocommerce #payment ul.woocommerce-PaymentMethods li.payment_method_stripe label img, body.woocommerce-page div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe label img,
body.woocommerce-page div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe label img, body.woocommerce-page #payment ul.wc_payment_methods li.payment_method_stripe label img,
body.woocommerce-page #payment ul.woocommerce-PaymentMethods li.payment_method_stripe label img, div.woocommerce div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe label img,
div.woocommerce div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe label img, div.woocommerce #payment ul.wc_payment_methods li.payment_method_stripe label img,
div.woocommerce #payment ul.woocommerce-PaymentMethods li.payment_method_stripe label img {
  float: none;
}
@media only screen and (max-width: 37.5em) {
  body.woocommerce div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe label img,
  body.woocommerce div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe label img, body.woocommerce #payment ul.wc_payment_methods li.payment_method_stripe label img,
  body.woocommerce #payment ul.woocommerce-PaymentMethods li.payment_method_stripe label img, body.woocommerce-page div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe label img,
  body.woocommerce-page div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe label img, body.woocommerce-page #payment ul.wc_payment_methods li.payment_method_stripe label img,
  body.woocommerce-page #payment ul.woocommerce-PaymentMethods li.payment_method_stripe label img, div.woocommerce div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe label img,
  div.woocommerce div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe label img, div.woocommerce #payment ul.wc_payment_methods li.payment_method_stripe label img,
  div.woocommerce #payment ul.woocommerce-PaymentMethods li.payment_method_stripe label img {
    max-width: 1.5625rem;
  }
}
@media only screen and (max-width: 30em) {
  body.woocommerce div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe label img,
  body.woocommerce div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe label img, body.woocommerce #payment ul.wc_payment_methods li.payment_method_stripe label img,
  body.woocommerce #payment ul.woocommerce-PaymentMethods li.payment_method_stripe label img, body.woocommerce-page div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe label img,
  body.woocommerce-page div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe label img, body.woocommerce-page #payment ul.wc_payment_methods li.payment_method_stripe label img,
  body.woocommerce-page #payment ul.woocommerce-PaymentMethods li.payment_method_stripe label img, div.woocommerce div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe label img,
  div.woocommerce div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe label img, div.woocommerce #payment ul.wc_payment_methods li.payment_method_stripe label img,
  div.woocommerce #payment ul.woocommerce-PaymentMethods li.payment_method_stripe label img {
    max-width: 1.25rem;
  }
}
body.woocommerce div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe,
body.woocommerce div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe, body.woocommerce #payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe,
body.woocommerce #payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe, body.woocommerce-page div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe,
body.woocommerce-page div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe, body.woocommerce-page #payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe,
body.woocommerce-page #payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe, div.woocommerce div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe,
div.woocommerce div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe, div.woocommerce #payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe,
div.woocommerce #payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe {
  background-color: #FFFFFF !important;
}
body.woocommerce div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe:before,
body.woocommerce div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe:before, body.woocommerce #payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe:before,
body.woocommerce #payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe:before, body.woocommerce-page div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe:before,
body.woocommerce-page div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe:before, body.woocommerce-page #payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe:before,
body.woocommerce-page #payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe:before, div.woocommerce div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe:before,
div.woocommerce div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe:before, div.woocommerce #payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe:before,
div.woocommerce #payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe:before {
  border: 1em solid #FFFFFF !important;
  border-right-color: transparent !important;
  border-left-color: transparent !important;
  border-top-color: transparent !important;
}
body.woocommerce div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe input#wc-stripe-new-payment-method,
body.woocommerce div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe input#wc-stripe-new-payment-method, body.woocommerce #payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe input#wc-stripe-new-payment-method,
body.woocommerce #payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe input#wc-stripe-new-payment-method, body.woocommerce-page div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe input#wc-stripe-new-payment-method,
body.woocommerce-page div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe input#wc-stripe-new-payment-method, body.woocommerce-page #payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe input#wc-stripe-new-payment-method,
body.woocommerce-page #payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe input#wc-stripe-new-payment-method, div.woocommerce div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe input#wc-stripe-new-payment-method,
div.woocommerce div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe input#wc-stripe-new-payment-method, div.woocommerce #payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe input#wc-stripe-new-payment-method,
div.woocommerce #payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe input#wc-stripe-new-payment-method {
  margin: 0 0.3125rem 0 0 !important;
}
body.woocommerce div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row,
body.woocommerce div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row, body.woocommerce #payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row,
body.woocommerce #payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row, body.woocommerce-page div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row,
body.woocommerce-page div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row, body.woocommerce-page #payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row,
body.woocommerce-page #payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row, div.woocommerce div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row,
div.woocommerce div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row, div.woocommerce #payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row,
div.woocommerce #payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row {
  padding: 0;
}
body.woocommerce div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row label,
body.woocommerce div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row label, body.woocommerce #payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row label,
body.woocommerce #payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row label, body.woocommerce-page div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row label,
body.woocommerce-page div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row label, body.woocommerce-page #payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row label,
body.woocommerce-page #payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row label, div.woocommerce div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row label,
div.woocommerce div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row label, div.woocommerce #payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row label,
div.woocommerce #payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row label {
  color: #003a71;
  font-weight: 700 !important;
  line-height: 1;
}
body.woocommerce div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-card-element,
body.woocommerce div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-exp-element,
body.woocommerce div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-cvc-element,
body.woocommerce div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-card-element,
body.woocommerce div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-exp-element,
body.woocommerce div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-cvc-element, body.woocommerce #payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-card-element,
body.woocommerce #payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-exp-element,
body.woocommerce #payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-cvc-element,
body.woocommerce #payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-card-element,
body.woocommerce #payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-exp-element,
body.woocommerce #payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-cvc-element, body.woocommerce-page div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-card-element,
body.woocommerce-page div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-exp-element,
body.woocommerce-page div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-cvc-element,
body.woocommerce-page div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-card-element,
body.woocommerce-page div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-exp-element,
body.woocommerce-page div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-cvc-element, body.woocommerce-page #payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-card-element,
body.woocommerce-page #payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-exp-element,
body.woocommerce-page #payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-cvc-element,
body.woocommerce-page #payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-card-element,
body.woocommerce-page #payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-exp-element,
body.woocommerce-page #payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-cvc-element, div.woocommerce div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-card-element,
div.woocommerce div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-exp-element,
div.woocommerce div.woocommerce-checkout-payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-cvc-element,
div.woocommerce div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-card-element,
div.woocommerce div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-exp-element,
div.woocommerce div.woocommerce-checkout-payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-cvc-element, div.woocommerce #payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-card-element,
div.woocommerce #payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-exp-element,
div.woocommerce #payment ul.wc_payment_methods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-cvc-element,
div.woocommerce #payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-card-element,
div.woocommerce #payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-exp-element,
div.woocommerce #payment ul.woocommerce-PaymentMethods li.payment_method_stripe div.payment_box.payment_method_stripe fieldset#wc-stripe-cc-form .form-row #stripe-cvc-element {
  border: 0.0625rem solid #003a71 !important;
  border-radius: 0.375rem;
}
body.woocommerce div.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text p, body.woocommerce #payment .woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text p, body.woocommerce-page div.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text p, body.woocommerce-page #payment .woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text p, div.woocommerce div.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text p, div.woocommerce #payment .woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text p {
  color: #FFFFFF !important;
}
body.woocommerce div.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text p a, body.woocommerce #payment .woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text p a, body.woocommerce-page div.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text p a, body.woocommerce-page #payment .woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text p a, div.woocommerce div.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text p a, div.woocommerce #payment .woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text p a {
  color: #FFFFFF !important;
  position: relative;
  text-shadow: 0.125rem 0.0625rem 0 #003a71;
  z-index: 10;
}
body.woocommerce div.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text p a:after, body.woocommerce #payment .woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text p a:after, body.woocommerce-page div.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text p a:after, body.woocommerce-page #payment .woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text p a:after, div.woocommerce div.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text p a:after, div.woocommerce #payment .woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text p a:after {
  background: #003a71;
  bottom: 0.125rem;
  content: "";
  display: block;
  height: 0.125rem;
  left: 0;
  position: absolute;
  width: 100%;
  z-index: -1;
  transition: background 0.2s ease-out;
}
body.woocommerce div.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text p a:hover:after, body.woocommerce #payment .woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text p a:hover:after, body.woocommerce-page div.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text p a:hover:after, body.woocommerce-page #payment .woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text p a:hover:after, div.woocommerce div.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text p a:hover:after, div.woocommerce #payment .woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text p a:hover:after {
  background: #FFFFFF;
}
body.woocommerce div.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper .woocommerce-terms-and-conditions, body.woocommerce #payment .woocommerce-terms-and-conditions-wrapper .woocommerce-terms-and-conditions, body.woocommerce-page div.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper .woocommerce-terms-and-conditions, body.woocommerce-page #payment .woocommerce-terms-and-conditions-wrapper .woocommerce-terms-and-conditions, div.woocommerce div.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper .woocommerce-terms-and-conditions, div.woocommerce #payment .woocommerce-terms-and-conditions-wrapper .woocommerce-terms-and-conditions {
  background: #FFFFFF;
  border: 0 !important;
  border-radius: 0.125rem;
  padding: 1rem !important;
}
body.woocommerce div.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper span.woocommerce-terms-and-conditions-checkbox-text, body.woocommerce #payment .woocommerce-terms-and-conditions-wrapper span.woocommerce-terms-and-conditions-checkbox-text, body.woocommerce-page div.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper span.woocommerce-terms-and-conditions-checkbox-text, body.woocommerce-page #payment .woocommerce-terms-and-conditions-wrapper span.woocommerce-terms-and-conditions-checkbox-text, div.woocommerce div.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper span.woocommerce-terms-and-conditions-checkbox-text, div.woocommerce #payment .woocommerce-terms-and-conditions-wrapper span.woocommerce-terms-and-conditions-checkbox-text {
  color: #FFFFFF !important;
  font-size: 1rem !important;
}
body.woocommerce div.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper span.woocommerce-terms-and-conditions-checkbox-text a, body.woocommerce #payment .woocommerce-terms-and-conditions-wrapper span.woocommerce-terms-and-conditions-checkbox-text a, body.woocommerce-page div.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper span.woocommerce-terms-and-conditions-checkbox-text a, body.woocommerce-page #payment .woocommerce-terms-and-conditions-wrapper span.woocommerce-terms-and-conditions-checkbox-text a, div.woocommerce div.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper span.woocommerce-terms-and-conditions-checkbox-text a, div.woocommerce #payment .woocommerce-terms-and-conditions-wrapper span.woocommerce-terms-and-conditions-checkbox-text a {
  color: #FFFFFF !important;
  position: relative;
  text-shadow: 0.125rem 0.0625rem 0 #003a71;
  z-index: 10;
}
body.woocommerce div.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper span.woocommerce-terms-and-conditions-checkbox-text a:after, body.woocommerce #payment .woocommerce-terms-and-conditions-wrapper span.woocommerce-terms-and-conditions-checkbox-text a:after, body.woocommerce-page div.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper span.woocommerce-terms-and-conditions-checkbox-text a:after, body.woocommerce-page #payment .woocommerce-terms-and-conditions-wrapper span.woocommerce-terms-and-conditions-checkbox-text a:after, div.woocommerce div.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper span.woocommerce-terms-and-conditions-checkbox-text a:after, div.woocommerce #payment .woocommerce-terms-and-conditions-wrapper span.woocommerce-terms-and-conditions-checkbox-text a:after {
  background: #003a71;
  bottom: 0.125rem;
  content: "";
  display: block;
  height: 0.125rem;
  left: 0;
  position: absolute;
  width: 100%;
  z-index: -1;
  transition: background 0.2s ease-out;
}
body.woocommerce div.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper span.woocommerce-terms-and-conditions-checkbox-text a:hover:after, body.woocommerce #payment .woocommerce-terms-and-conditions-wrapper span.woocommerce-terms-and-conditions-checkbox-text a:hover:after, body.woocommerce-page div.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper span.woocommerce-terms-and-conditions-checkbox-text a:hover:after, body.woocommerce-page #payment .woocommerce-terms-and-conditions-wrapper span.woocommerce-terms-and-conditions-checkbox-text a:hover:after, div.woocommerce div.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper span.woocommerce-terms-and-conditions-checkbox-text a:hover:after, div.woocommerce #payment .woocommerce-terms-and-conditions-wrapper span.woocommerce-terms-and-conditions-checkbox-text a:hover:after {
  background: #FFFFFF;
}
body.woocommerce div.woocommerce-checkout-payment .form-row.place-order, body.woocommerce #payment .form-row.place-order, body.woocommerce-page div.woocommerce-checkout-payment .form-row.place-order, body.woocommerce-page #payment .form-row.place-order, div.woocommerce div.woocommerce-checkout-payment .form-row.place-order, div.woocommerce #payment .form-row.place-order {
  background: #003a71;
  border-radius: 0 0 0.375rem 0.375rem;
  padding-bottom: 0;
}
body.woocommerce div.woocommerce-checkout-payment button#place_order, body.woocommerce #payment button#place_order, body.woocommerce-page div.woocommerce-checkout-payment button#place_order, body.woocommerce-page #payment button#place_order, div.woocommerce div.woocommerce-checkout-payment button#place_order, div.woocommerce #payment button#place_order {
  background: #FFFFFF !important;
  color: #003a71 !important;
  margin-bottom: 0.9375rem;
}
body.woocommerce div.woocommerce-checkout-payment button#place_order:hover, body.woocommerce div.woocommerce-checkout-payment button#place_order:focus, body.woocommerce #payment button#place_order:hover, body.woocommerce #payment button#place_order:focus, body.woocommerce-page div.woocommerce-checkout-payment button#place_order:hover, body.woocommerce-page div.woocommerce-checkout-payment button#place_order:focus, body.woocommerce-page #payment button#place_order:hover, body.woocommerce-page #payment button#place_order:focus, div.woocommerce div.woocommerce-checkout-payment button#place_order:hover, div.woocommerce div.woocommerce-checkout-payment button#place_order:focus, div.woocommerce #payment button#place_order:hover, div.woocommerce #payment button#place_order:focus {
  background: #000000 !important;
  color: #FFFFFF !important;
}
@media only screen and (max-width: 48rem) {
  body.woocommerce div.woocommerce-checkout-payment button#place_order, body.woocommerce #payment button#place_order, body.woocommerce-page div.woocommerce-checkout-payment button#place_order, body.woocommerce-page #payment button#place_order, div.woocommerce div.woocommerce-checkout-payment button#place_order, div.woocommerce #payment button#place_order {
    float: right;
    width: auto;
  }
}
@media only screen and (max-width: 37.5em) {
  body.woocommerce div.woocommerce-checkout-payment button#place_order, body.woocommerce #payment button#place_order, body.woocommerce-page div.woocommerce-checkout-payment button#place_order, body.woocommerce-page #payment button#place_order, div.woocommerce div.woocommerce-checkout-payment button#place_order, div.woocommerce #payment button#place_order {
    float: none;
    width: 100%;
  }
}
body.woocommerce div.woocommerce-checkout-payment .return-to-shop, body.woocommerce #payment .return-to-shop, body.woocommerce-page div.woocommerce-checkout-payment .return-to-shop, body.woocommerce-page #payment .return-to-shop, div.woocommerce div.woocommerce-checkout-payment .return-to-shop, div.woocommerce #payment .return-to-shop {
  background: #FFFFFF !important;
  color: #003a71 !important;
  margin-bottom: 0.9375rem;
}
body.woocommerce div.woocommerce-checkout-payment .return-to-shop:hover, body.woocommerce div.woocommerce-checkout-payment .return-to-shop:focus, body.woocommerce #payment .return-to-shop:hover, body.woocommerce #payment .return-to-shop:focus, body.woocommerce-page div.woocommerce-checkout-payment .return-to-shop:hover, body.woocommerce-page div.woocommerce-checkout-payment .return-to-shop:focus, body.woocommerce-page #payment .return-to-shop:hover, body.woocommerce-page #payment .return-to-shop:focus, div.woocommerce div.woocommerce-checkout-payment .return-to-shop:hover, div.woocommerce div.woocommerce-checkout-payment .return-to-shop:focus, div.woocommerce #payment .return-to-shop:hover, div.woocommerce #payment .return-to-shop:focus {
  background: #000000 !important;
  color: #FFFFFF !important;
}
@media only screen and (max-width: 37.5em) {
  body.woocommerce div.woocommerce-checkout-payment .return-to-shop, body.woocommerce #payment .return-to-shop, body.woocommerce-page div.woocommerce-checkout-payment .return-to-shop, body.woocommerce-page #payment .return-to-shop, div.woocommerce div.woocommerce-checkout-payment .return-to-shop, div.woocommerce #payment .return-to-shop {
    float: none;
    width: 100%;
  }
}
body.woocommerce div#payment.woocommerce-Payment ul.woocommerce-PaymentMethods + div.form-row, body.woocommerce-page div#payment.woocommerce-Payment ul.woocommerce-PaymentMethods + div.form-row, div.woocommerce div#payment.woocommerce-Payment ul.woocommerce-PaymentMethods + div.form-row {
  background: #003a71;
}
body.woocommerce div#payment.woocommerce-Payment .about_paypal, body.woocommerce-page div#payment.woocommerce-Payment .about_paypal, div.woocommerce div#payment.woocommerce-Payment .about_paypal {
  margin-left: 0.625rem;
}
body.woocommerce .woocommerce-info, body.woocommerce-page .woocommerce-info, div.woocommerce .woocommerce-info {
  border-top-color: #003a71;
  height: auto;
  opacity: 1;
  padding-left: 2.5rem;
  padding-right: 2.8125rem;
  visibility: visible;
  transition: all 0.2s ease-out;
}
body.woocommerce .woocommerce-info *, body.woocommerce-page .woocommerce-info *, div.woocommerce .woocommerce-info * {
  color: #003a71;
}
body.woocommerce .woocommerce-info:before, body.woocommerce-page .woocommerce-info:before, div.woocommerce .woocommerce-info:before {
  color: #003a71;
  left: 0.9375rem !important;
}
body.woocommerce .woocommerce-info .clear-notice, body.woocommerce-page .woocommerce-info .clear-notice, div.woocommerce .woocommerce-info .clear-notice {
  color: red;
  cursor: pointer;
  display: block;
  font-family: fontawesome;
  position: absolute;
  right: 0.625rem;
  top: 50%;
  transform: translateY(-50%);
  z-index: 50;
}
@media only screen and (max-width: 40em) {
  body.woocommerce .woocommerce-info, body.woocommerce-page .woocommerce-info, div.woocommerce .woocommerce-info {
    line-height: 1.2;
    margin: 0 0 1.25rem;
    padding: 0.625rem 2.8125rem 0.625rem 0.625rem;
  }
  body.woocommerce .woocommerce-info:before, body.woocommerce-page .woocommerce-info:before, div.woocommerce .woocommerce-info:before {
    display: none;
  }
}
body.woocommerce .woocommerce-info.hide-notice, body.woocommerce-page .woocommerce-info.hide-notice, div.woocommerce .woocommerce-info.hide-notice {
  border: 0;
  height: 0;
  margin: 0;
  opacity: 0;
  padding: 0;
  visibility: hidden;
}
body.woocommerce form.checkout_coupon.woocommerce-form-coupon.hide-notice, body.woocommerce-page form.checkout_coupon.woocommerce-form-coupon.hide-notice, div.woocommerce form.checkout_coupon.woocommerce-form-coupon.hide-notice {
  display: none;
}
body.woocommerce .woocommerce-error, body.woocommerce .woocommerce-info, body.woocommerce .woocommerce-message, body.woocommerce-page .woocommerce-error, body.woocommerce-page .woocommerce-info, body.woocommerce-page .woocommerce-message, div.woocommerce .woocommerce-error, div.woocommerce .woocommerce-info, div.woocommerce .woocommerce-message {
  background: #F1F3F5;
  font-weight: 700;
  padding: 0.9375rem 0.9375rem 0.9375rem 2.8125rem;
  position: relative;
}
body.woocommerce .woocommerce-error a.button, body.woocommerce .woocommerce-info a.button, body.woocommerce .woocommerce-message a.button, body.woocommerce-page .woocommerce-error a.button, body.woocommerce-page .woocommerce-info a.button, body.woocommerce-page .woocommerce-message a.button, div.woocommerce .woocommerce-error a.button, div.woocommerce .woocommerce-info a.button, div.woocommerce .woocommerce-message a.button {
  margin-left: 0.625rem;
}
body.woocommerce .woocommerce-error:before, body.woocommerce .woocommerce-info:before, body.woocommerce .woocommerce-message:before, body.woocommerce-page .woocommerce-error:before, body.woocommerce-page .woocommerce-info:before, body.woocommerce-page .woocommerce-message:before, div.woocommerce .woocommerce-error:before, div.woocommerce .woocommerce-info:before, div.woocommerce .woocommerce-message:before {
  align-items: center;
  color: #FFFFFF !important;
  display: flex;
  height: 100%;
  left: 0 !important;
  padding: 0 0.625rem;
  position: absolute;
  top: 0;
}
body.woocommerce .woocommerce-message, body.woocommerce-page .woocommerce-message, div.woocommerce .woocommerce-message {
  border-top-color: #44a044;
}
body.woocommerce .woocommerce-message a, body.woocommerce-page .woocommerce-message a, div.woocommerce .woocommerce-message a {
  color: #00693B;
}
body.woocommerce .woocommerce-message:before, body.woocommerce-page .woocommerce-message:before, div.woocommerce .woocommerce-message:before {
  background: #44a044;
}
body.woocommerce .woocommerce-error, body.woocommerce-page .woocommerce-error, div.woocommerce .woocommerce-error {
  border-top-color: #912712;
}
body.woocommerce .woocommerce-error a, body.woocommerce-page .woocommerce-error a, div.woocommerce .woocommerce-error a {
  color: #912712;
}
body.woocommerce .woocommerce-error:before, body.woocommerce-page .woocommerce-error:before, div.woocommerce .woocommerce-error:before {
  background: #912712;
}
body.woocommerce .woocommerce-info, body.woocommerce-page .woocommerce-info, div.woocommerce .woocommerce-info {
  border-top-color: #1e73be;
}
body.woocommerce .woocommerce-info a, body.woocommerce-page .woocommerce-info a, div.woocommerce .woocommerce-info a {
  color: #1e73be;
}
body.woocommerce .woocommerce-info:before, body.woocommerce-page .woocommerce-info:before, div.woocommerce .woocommerce-info:before {
  background: #1e73be;
}

.woocommerce-page.single-product h2.woocommerce-page-title {
  display: none;
}
.woocommerce-page.single-product .woocommerce-product-gallery .gallery figure.gallery-item figcaption.wp-caption-text {
  display: none;
}

.woocommerce-form input.input-text {
  border: 0.0625rem solid #003a71;
  border-radius: 0.375rem;
}
.woocommerce-form label.woocommerce-form__label.woocommerce-form__label-for-checkbox.inline {
  display: block;
  margin-top: 0.625rem;
}

div.woocommerce-order p.woocommerce-notice {
  color: #003a71 !important;
  font-size: 1.75rem !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
}
div.woocommerce-order ul.woocommerce-order-overview {
  border: 0.0625rem solid #003a71;
  border-radius: 0.375rem;
  display: flex;
  justify-content: space-between;
}
div.woocommerce-order ul.woocommerce-order-overview li {
  border-right: 0.0625rem solid #003a71;
  float: none;
  margin: 0;
  padding: 0.9375rem;
  text-align: center;
  width: 25%;
}
div.woocommerce-order ul.woocommerce-order-overview li strong {
  font-size: 1rem !important;
  line-height: 1.2 !important;
  margin-top: 0.3125rem;
}
@media only screen and (max-width: 30em) {
  div.woocommerce-order ul.woocommerce-order-overview li strong {
    font-size: 0.875rem !important;
  }
}
div.woocommerce-order .woocommerce-order-details h2 {
  font-size: 1.75rem !important;
  margin-bottom: 0.3125rem;
}

.select2-dropdown {
  border-color: #003a71;
}

.select2-container--default .select2-results__option--highlighted[aria-selected], .select2-container--default .select2-results__option--highlighted[data-selected] {
  background: #003a71;
}

.woocommerce-account .woocommerce-MyAccount-navigation {
  width: 100%;
  float: none;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0 0 2.5rem 0;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li {
  width: 33.3333%;
}
@media only screen and (max-width: 30em) {
  .woocommerce-account .woocommerce-MyAccount-navigation ul li {
    width: 50%;
  }
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
  color: #FFFFFF;
  background: #912712;
  border-radius: 2.1875rem;
  display: block;
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  margin: 0 auto 0.25rem;
  max-width: calc(100% - 0.25rem);
  padding: 0.25rem;
  text-align: center;
  text-transform: uppercase;
  transition: background 0.2s ease-out;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover, .woocommerce-account .woocommerce-MyAccount-navigation ul li a:focus {
  background: #000000;
}
@media only screen and (max-width: 30em) {
  .woocommerce-account .woocommerce-MyAccount-navigation ul li a {
    letter-spacing: -0.03em;
  }
}
.woocommerce-account .woocommerce-MyAccount-content {
  float: none;
  width: 100%;
}
.woocommerce-account .woocommerce-MyAccount-content form .form-row {
  padding: 0;
}
.woocommerce-account .woocommerce-MyAccount-content form input.input-text {
  border: 0.0625rem solid #003a71;
  border-radius: 0.375rem;
}
.woocommerce-account .woocommerce-MyAccount-content form fieldset legend {
  color: #000000;
  display: block;
  font-size: 1.25rem;
  font-weight: 700;
  margin: 0;
  padding: 1.25rem 0 0 0;
}

@media only screen and (max-width: 47.9375em) {
  .woocommerce table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item, .woocommerce-page table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item {
    border-top: 0.3125rem solid #003a71;
    padding: 0.9375rem;
    position: relative;
  }
  .woocommerce table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item:first-child, .woocommerce-page table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item:first-child {
    border-top: 0;
  }
  .woocommerce table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item:nth-child(2n), .woocommerce-page table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item:nth-child(2n) {
    background: #FFFFFF;
  }
  .woocommerce table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item:nth-child(2n) td, .woocommerce-page table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item:nth-child(2n) td {
    background: #FFFFFF;
  }
  .woocommerce table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item:nth-child(2n) td.product-price, .woocommerce table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item:nth-child(2n) td.product-subtotal, .woocommerce-page table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item:nth-child(2n) td.product-price, .woocommerce-page table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item:nth-child(2n) td.product-subtotal {
    background: #F1F3F5;
  }
  .woocommerce table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item td, .woocommerce-page table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item td {
    border: 0;
    text-align: center !important;
  }
  .woocommerce table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item td .quantity, .woocommerce-page table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item td .quantity {
    display: block !important;
    justify-content: center;
    margin: 0 auto 0.3125rem;
    width: auto;
  }
  .woocommerce table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item td:before, .woocommerce-page table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item td:before {
    content: attr(data-title) !important;
    display: block;
    text-align: center;
    width: 100%;
  }
  .woocommerce table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item td.product-name, .woocommerce-page table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item td.product-name {
    padding-top: 0;
    width: 100%;
  }
  .woocommerce table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item td.product-name span.product-title, .woocommerce-page table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item td.product-name span.product-title {
    display: inline-block;
    font-size: 1.125rem;
  }
  .woocommerce table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item td.product-name span.product-thumbnail, .woocommerce-page table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item td.product-name span.product-thumbnail {
    display: block;
    float: none;
    width: 100% !important;
  }
  .woocommerce table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item td.product-name span.product-thumbnail a, .woocommerce-page table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item td.product-name span.product-thumbnail a {
    margin-right: 0 !important;
  }
  .woocommerce table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item td.product-name span.product-thumbnail img, .woocommerce-page table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item td.product-name span.product-thumbnail img {
    height: auto;
    max-width: 12.5rem;
  }
  .woocommerce table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item td.product-remove, .woocommerce-page table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item td.product-remove {
    position: absolute;
    right: 0.625rem;
    top: 0.3125rem;
  }
  .woocommerce table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item td.product-price, .woocommerce table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item td.product-subtotal, .woocommerce-page table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item td.product-price, .woocommerce-page table.shop_table_responsive tr.woocommerce-cart-form__cart-item.cart_item td.product-subtotal {
    background: #F1F3F5;
  }
}
body {
  background: #FFFFFF;
}

::-webkit-input-placeholder {
  color: #001717 !important;
  font-size: 1rem !important;
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif !important;
}

::-moz-placeholder {
  color: #001717 !important;
  font-size: 1rem !important;
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif !important;
}

:-ms-input-placeholder {
  color: #001717 !important;
  font-size: 1rem !important;
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif !important;
}

:-moz-placeholder {
  color: #001717 !important;
  font-size: 1rem !important;
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif !important;
}

::-moz-selection {
  background: #00693B;
  color: #FFFFFF;
}

::selection {
  background: #00693B;
  color: #FFFFFF;
}

::-moz-selection {
  background: #00693B;
  color: #FFFFFF;
}

.main-content .entry-content blockquote {
  border-left-color: #00693B;
  border-left-width: 0.25rem;
  margin: 2rem 0;
  padding: 0.5rem 0.9375rem;
}
.main-content .entry-content blockquote p {
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif;
  font-size: 1.875rem;
  font-style: italic;
  line-height: 1.25;
  margin: 0;
}

body.page-id-30 {
  background: #F1F3F5;
}

body:not(.home) .main-wrap .main-content {
  margin-bottom: 5rem;
}
body:not(.home) .main-wrap .main-content .wpb_wrapper .wpb_text_column:last-of-type {
  margin-bottom: 0;
}

.gform_wrapper .gform_body li.gfield.floatLabel {
  position: relative;
}
.gform_wrapper .gform_body li.gfield.floatLabel label {
  font-weight: 400;
  left: 1.3125rem;
  position: absolute;
  top: 1.3125rem;
  transition: all 0.2s ease-out;
}
.gform_wrapper .gform_body li.gfield.floatLabel label[data-attr=active] {
  font-size: 80%;
  left: 0;
  top: -1.4375rem;
}

header#masthead {
  padding: 0 !important;
}
@media only screen and (max-width: 64em) {
  header#masthead #header-inner {
    height: auto;
  }
}
header#masthead #header-inner nav.site-navigation.top-bar .menu .dropdown {
  border: 0 !important;
}
header#masthead #header-inner nav.site-navigation.top-bar .menu .dropdown.first-sub {
  box-shadow: 0 0.25rem 0.5rem -0.125rem rgba(0, 0, 0, 0.25);
}
header#masthead #header-inner nav.site-navigation.top-bar .menu .dropdown.first-sub .dropdown {
  position: relative;
  top: auto;
}
header#masthead #header-inner nav.site-navigation.top-bar .menu .dropdown.first-sub .dropdown li a {
  display: flex;
}
header#masthead #header-inner nav.site-navigation.top-bar .menu .dropdown.first-sub .dropdown li a:before {
  content: "◦";
  display: inline-block;
  font-size: 1.5rem;
  line-height: 1.0625rem;
  margin-right: 0.25rem;
  position: relative;
  top: -0.125rem;
  text-transform: lowercase;
}
@media only screen and (max-width: 64em) {
  header#masthead #header-inner nav.site-navigation.top-bar .top-bar-left .site-desktop-title.top-bar-title .logo-wrapper.hide-for-small-only a.custom-logo-link {
    padding: 0 !important;
    text-align: center;
  }
  header#masthead #header-inner nav.site-navigation.top-bar .top-bar-left .site-desktop-title.top-bar-title .logo-wrapper.hide-for-small-only a.custom-logo-link img {
    margin: 0.625rem auto;
  }
}
header#masthead #header-inner nav.site-navigation.top-bar .top-bar-right {
  height: 7.375rem;
}
@media only screen and (max-width: 64em) {
  header#masthead #header-inner nav.site-navigation.top-bar .top-bar-right {
    flex-direction: column;
    height: auto;
    justify-content: center;
  }
}
header#masthead #header-inner nav.site-navigation.top-bar .top-bar-right .top-bar-social {
  align-items: center;
  display: flex;
  height: 7.375rem;
}
@media only screen and (max-width: 64em) {
  header#masthead #header-inner nav.site-navigation.top-bar .top-bar-right .top-bar-social {
    height: auto;
    margin-bottom: 1.25rem;
    order: 1;
    width: auto;
  }
}
header#masthead #header-inner nav.site-navigation.top-bar .top-bar-right .top-bar-social ul.social-media-wrapper {
  margin-bottom: 0;
}
header#masthead #header-inner nav.site-navigation.top-bar .top-bar-right .top-bar-social ul.social-media-wrapper li {
  align-items: center;
  display: flex;
  height: 7.375rem;
}
@media only screen and (max-width: 64em) {
  header#masthead #header-inner nav.site-navigation.top-bar .top-bar-right .top-bar-social ul.social-media-wrapper li {
    height: auto;
  }
}
header#masthead #header-inner nav.site-navigation.top-bar .top-bar-right .top-bar-social ul.social-media-wrapper li:not(.custom-button):not(.inline-social-search-wrapper) {
  display: none;
}
header#masthead #header-inner nav.site-navigation.top-bar .top-bar-right .top-bar-social ul.social-media-wrapper li.inline-social-search-wrapper button.search-toggle {
  position: relative;
  height: 7.375rem;
}
header#masthead #header-inner nav.site-navigation.top-bar .top-bar-right .top-bar-social ul.social-media-wrapper li.inline-social-search-wrapper button.search-toggle:before, header#masthead #header-inner nav.site-navigation.top-bar .top-bar-right .top-bar-social ul.social-media-wrapper li.inline-social-search-wrapper button.search-toggle:active:before {
  background: #FFAF26;
  content: "";
  display: block;
  height: 0.5rem;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  visibility: hidden;
  width: 0;
  transition: all 0.2s ease-out;
}
@media only screen and (max-width: 64em) {
  header#masthead #header-inner nav.site-navigation.top-bar .top-bar-right .top-bar-social ul.social-media-wrapper li.inline-social-search-wrapper button.search-toggle {
    height: auto;
  }
}
header#masthead #header-inner nav.site-navigation.top-bar .top-bar-right .top-bar-social ul.social-media-wrapper li.inline-social-search-wrapper button.search-toggle:hover:before, header#masthead #header-inner nav.site-navigation.top-bar .top-bar-right .top-bar-social ul.social-media-wrapper li.inline-social-search-wrapper button.search-toggle:focus:before, header#masthead #header-inner nav.site-navigation.top-bar .top-bar-right .top-bar-social ul.social-media-wrapper li.inline-social-search-wrapper button.search-toggle.search-active:before {
  opacity: 1;
  visibility: visible;
  width: 100%;
}
@media only screen and (max-width: 64em) {
  header#masthead #header-inner nav.site-navigation.top-bar .top-bar-right .top-bar-social ul.social-media-wrapper li.inline-social-search-wrapper button.search-toggle:hover:before, header#masthead #header-inner nav.site-navigation.top-bar .top-bar-right .top-bar-social ul.social-media-wrapper li.inline-social-search-wrapper button.search-toggle:focus:before, header#masthead #header-inner nav.site-navigation.top-bar .top-bar-right .top-bar-social ul.social-media-wrapper li.inline-social-search-wrapper button.search-toggle.search-active:before {
    display: none;
  }
}
@media only screen and (max-width: 64em) {
  header#masthead #header-inner nav.site-navigation.top-bar .top-bar-right .top-bar-social ul.social-media-wrapper li.inline-social-search-wrapper form#searchform {
    margin-top: 1.875rem !important;
  }
}
header#masthead #header-inner nav.site-navigation.top-bar .top-bar-right .top-bar-social ul.social-media-wrapper li.inline-social-search-wrapper form#searchform.show {
  margin-top: 0 !important;
}
@media only screen and (max-width: 64em) {
  header#masthead #header-inner nav.site-navigation.top-bar .top-bar-right .top-bar-social ul.social-media-wrapper li.inline-social-search-wrapper form#searchform.show {
    margin-top: 0.625rem !important;
  }
}
header#masthead #header-inner nav.site-navigation.top-bar .top-bar-right .top-bar-social ul.social-media-wrapper li.custom-button a {
  font-weight: 400;
  letter-spacing: 0.15rem;
  padding: 0 1.375rem;
}
@media only screen and (max-width: 64em) {
  header#masthead #header-inner nav.site-navigation.top-bar .top-bar-right ul.desktop-menu {
    margin-left: auto;
    margin-right: auto;
    max-width: 43.75rem;
    order: 2;
  }
}
header#masthead #header-inner nav.site-navigation.top-bar .top-bar-right ul.desktop-menu > li > a {
  align-items: center;
  display: flex;
  height: 7.375rem;
  letter-spacing: 0.15rem;
}
@media only screen and (max-width: 75em) {
  header#masthead #header-inner nav.site-navigation.top-bar .top-bar-right ul.desktop-menu > li > a {
    letter-spacing: 0.015rem;
  }
}
@media only screen and (max-width: 64em) {
  header#masthead #header-inner nav.site-navigation.top-bar .top-bar-right ul.desktop-menu > li > a {
    height: auto;
    padding: 0.375rem 0.9375rem !important;
  }
}

/**** INTERNAL PAGE STYLES ****/
.contact-info-wrapper .contact-info-col-2 {
  margin-top: -6rem;
  position: relative;
  z-index: 10;
}
@media only screen and (max-width: 56.25em) {
  .contact-info-wrapper .contact-info-col-2 {
    margin-top: 0;
  }
}

@media only screen and (max-width: 47.9375em) {
  .contact-info-columns {
    display: flex;
    flex-wrap: wrap;
  }
}
@media only screen and (max-width: 68.75em) {
  .contact-info-columns .vc_col-sm-6 {
    margin-bottom: 3.75rem;
    width: 100%;
  }
  .contact-info-columns .vc_col-sm-6:last-of-type {
    margin-bottom: 0;
  }
}
@media only screen and (max-width: 47.9375em) {
  .contact-info-columns .vc_col-sm-6 {
    margin-bottom: 3.75rem;
    width: 50% !important;
  }
  .contact-info-columns .vc_col-sm-6:last-of-type {
    margin-bottom: 2.5rem;
  }
}
@media only screen and (max-width: 37.5em) {
  .contact-info-columns .vc_col-sm-6 {
    margin-bottom: 3.75rem;
    width: 100% !important;
  }
}

p.contact-element {
  align-items: center;
  display: flex;
  justify-content: flex-start;
  margin-bottom: 1.5rem;
}
p.contact-element span.contact-icon {
  background: #001717;
  border-radius: 100%;
  color: #FFFFFF !important;
  display: block;
  font-size: 0.875rem;
  height: 2rem;
  line-height: 2rem;
  margin-right: 1.5625rem;
  text-align: center;
  width: 2rem;
}
p.contact-element span.contact-icon.contact-dash {
  border-radius: 0;
  height: 0.125rem;
}
p.contact-element span.contact-text {
  font-size: 1rem;
  width: calc(100% - 5.5625rem);
}
p.contact-element span.contact-text strong {
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif;
}
p.contact-element span.contact-text a {
  color: #001717;
  text-decoration: none;
}
p.contact-element span.contact-text a:hover, p.contact-element span.contact-text a:focus {
  text-decoration: underline;
}
p.contact-element span.contact-text a[href*=mailto] {
  white-space: prewrap;
}

.contact-map-wrapper .wpb_wrapper {
  max-height: 47.25rem;
  padding: 0 !important;
}
.contact-map-wrapper .wpb_map_wraper {
  filter: grayscale(100%);
  position: relative;
  width: 100%;
  -webkit-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  -o-filter: grayscale(100%);
}
@media only screen and (max-width: 75em) {
  .contact-map-wrapper .wpb_map_wraper {
    height: 0;
    padding-bottom: 39.37%;
  }
  .contact-map-wrapper .wpb_map_wraper iframe {
    bottom: 0;
    height: 100%;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
  }
}
@media only screen and (max-width: 47.9375em) {
  .contact-map-wrapper .wpb_map_wraper {
    padding-bottom: 75%;
  }
}
.contact-map-wrapper .wpb_map_wraper:after {
  background: rgba(0, 0, 0, 0.15);
  content: "";
  height: 100%;
  left: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  width: 100%;
}

.single-tribe_events #tribe-events-content {
  display: flex;
  flex-direction: column;
}
.single-tribe_events #tribe-events-content .tribe-events-back {
  margin-bottom: 2.5rem;
}
.single-tribe_events #tribe-events-content .tribe-events-back a {
  align-items: center;
  display: flex;
  font-size: 1.25rem;
  justify-content: flex-start;
  letter-spacing: 0.15rem;
  line-height: 1;
  text-decoration: none;
  text-transform: uppercase;
  transition: all 0.2s ease-out;
}
.single-tribe_events #tribe-events-content .tribe-events-back a img {
  margin-right: 2.5rem;
  transform: rotate(180deg);
  width: 2.625rem;
  transition: all 0.2s ease-out;
}
.single-tribe_events #tribe-events-content .tribe-events-back a span.tribe-events-back-inner {
  border-bottom: 0.0625rem solid #001717;
  line-height: 1;
}
.single-tribe_events #tribe-events-content .tribe-events-back a:hover img, .single-tribe_events #tribe-events-content .tribe-events-back a:focus img {
  margin-right: 1.25rem;
}
.single-tribe_events #tribe-events-content h1.tribe-events-single-event-title {
  font-size: 4rem;
  line-height: 1.5;
  text-transform: uppercase;
}
.single-tribe_events #tribe-events-content .tribe-events-schedule {
  margin-top: 0;
}
.single-tribe_events #tribe-events-content .tribe-events-schedule h2 {
  margin-bottom: 0;
}
.single-tribe_events #tribe-events-content .tribe_events.type-tribe_events .tribe-events-cal-links a.tribe-events-button {
  background: #FFAF26;
  border-radius: 0.1875rem;
  color: #001717;
  display: inline-block;
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 2.5rem;
  letter-spacing: 0.15rem;
  margin-top: 2.5rem;
  padding: 0 1.375rem;
  width: auto !important;
  white-space: nowrap;
  transition: background 0.2s ease-out;
}
.single-tribe_events #tribe-events-content .tribe_events.type-tribe_events .tribe-events-cal-links a.tribe-events-button:hover, .single-tribe_events #tribe-events-content .tribe_events.type-tribe_events .tribe-events-cal-links a.tribe-events-button:focus {
  background: #001717;
  color: #FFFFFF;
}
.single-tribe_events #tribe-events-content .tribe_events.type-tribe_events .tribe-events-single-section {
  background: #F1F3F5;
  border: 0;
  margin-top: 4.0625rem;
  margin-bottom: 1.25rem;
}
.single-tribe_events #tribe-events-content .tribe_events.type-tribe_events .tribe-events-single-section .tribe-events-meta-group {
  margin-bottom: 3.75rem;
}
.single-tribe_events #tribe-events-content .tribe_events.type-tribe_events .tribe-events-single-section .tribe-events-meta-group:last-of-type {
  margin-bottom: 1.25rem;
}
.single-tribe_events #tribe-events-content .tribe_events.type-tribe_events .tribe-events-single-section .tribe-events-meta-group dl dt {
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif;
  letter-spacing: 0.025rem;
  margin-bottom: 0;
  text-transform: uppercase;
}
.single-tribe_events #tribe-events-content .tribe_events.type-tribe_events .tribe-events-single-section .tribe-events-meta-group dl dd {
  margin-bottom: 1.875rem;
}
.single-tribe_events #tribe-events-content .tribe_events.type-tribe_events .tribe-events-single-section .tribe-events-meta-group dl dd.tribe-venue, .single-tribe_events #tribe-events-content .tribe_events.type-tribe_events .tribe-events-single-section .tribe-events-meta-group dl dd:last-child {
  margin-bottom: 0;
}

.single.single-post a.all-posts-back {
  align-items: center;
  display: flex;
  font-size: 1.25rem;
  justify-content: flex-start;
  letter-spacing: 0.15rem;
  line-height: 1;
  margin-bottom: 2.5rem;
  text-decoration: none;
  text-transform: uppercase;
  transition: all 0.2s ease-out;
}
.single.single-post a.all-posts-back img {
  margin-right: 2.5rem;
  transform: rotate(180deg);
  width: 2.625rem;
  transition: all 0.2s ease-out;
}
.single.single-post a.all-posts-back span.all-posts-back-inner {
  border-bottom: 0.0625rem solid #001717;
  line-height: 1;
}
.single.single-post a.all-posts-back:hover img, .single.single-post a.all-posts-back:focus img {
  margin-right: 1.25rem;
}
.single.single-post .bs-entry-meta {
  margin-top: -1.875rem;
  margin-bottom: 1.875rem !important;
}
.single.single-post .entry-content {
  margin-bottom: 5rem;
}

/**** PRE-FOOTER & FOOTER STYLES ****/
.sponsor-logo-container .sponsor-logo-wrapper .slick-list {
  margin: 3.75rem auto 1.25rem -6.25rem;
}
@media only screen and (max-width: 75em) {
  .sponsor-logo-container .sponsor-logo-wrapper .slick-list {
    margin: 3.75rem auto 1.25rem -2.5rem;
  }
}
.sponsor-logo-container .sponsor-logo-wrapper .slick-list .slick-slide {
  padding-left: 6.25rem;
}
@media only screen and (max-width: 75em) {
  .sponsor-logo-container .sponsor-logo-wrapper .slick-list .slick-slide {
    padding-left: 2.5rem;
  }
}
.sponsor-logo-container .sponsor-logo-wrapper .slick-list .single-sponsor-logo-item .entry-content {
  background: #F1F3F5;
}
.sponsor-logo-container .sponsor-logo-wrapper .slick-list .single-sponsor-logo-item img {
  mix-blend-mode: multiple;
  width: 100%;
}
.sponsor-logo-container .sponsor-logo-wrapper .slick-list .single-sponsor-logo-item p.donor-level {
  font-family: "source-sans-pro", Arial, Helvetica, sans-serif;
  line-height: 1;
  margin: 1.25rem 0 0;
  text-align: center;
  text-transform: uppercase;
}
.sponsor-logo-container .sponsor-logo-wrapper .slick-dots li {
  border: 0.0625rem solid #001717;
}
.sponsor-logo-container .sponsor-logo-wrapper .slick-dots li.slick-active {
  background: #001717;
}

#footer-container .footer-container .footer.grid-x section.widget.large-3 p, #footer-container .footer-container .footer.grid-x section.widget.large-3 li, #footer-container .footer-container .footer.grid-x section.widget.large-3 a, #footer-container .footer-container .footer.grid-x section.widget.large-3 span {
  font-family: "source-sans-pro", Arial, Helvetica, sans-serif;
}
#footer-container .footer-container .footer.grid-x section.widget.large-3 h6 {
  font-family: "Barlow Semi Condensed", Arial, Helvetica, sans-serif;
  font-size: 1.25rem !important;
  letter-spacing: 0.15rem;
  margin-bottom: 1.25rem !important;
  text-transform: uppercase;
}
@media only screen and (max-width: 47.9375em) {
  #footer-container .footer-container .footer.grid-x section.widget.large-3 h6 {
    margin-bottom: 0.625rem !important;
    text-align: center;
  }
}
#footer-container .footer-container .footer.grid-x section.widget.large-3 .menu li a {
  margin-bottom: 0.75rem;
  text-transform: uppercase;
}
@media only screen and (max-width: 47.9375em) {
  #footer-container .footer-container .footer.grid-x section.widget.large-3 .menu li a {
    text-align: center;
  }
}
#footer-container .footer-container .footer.grid-x section.widget.large-3 .social-media-wrapper {
  display: flex;
  margin-left: -0.75rem;
}
@media only screen and (max-width: 47.9375em) {
  #footer-container .footer-container .footer.grid-x section.widget.large-3 .social-media-wrapper {
    justify-content: center;
  }
}
#footer-container .footer-container .footer.grid-x section.widget.large-3 .social-media-wrapper li {
  padding-left: 0.75rem;
}
#footer-container .footer-container .footer.grid-x section.widget.large-3 .social-media-wrapper li a {
  background: #001717;
  border-radius: 100%;
  color: #F1F3F5;
  display: block;
  height: 2rem;
  line-height: 2rem;
  text-align: center;
  width: 2rem;
  transition: background 0.2s ease-out;
}
#footer-container .footer-container .footer.grid-x section.widget.large-3 .social-media-wrapper li a:hover, #footer-container .footer-container .footer.grid-x section.widget.large-3 .social-media-wrapper li a:focus {
  background: #00693B;
}
#footer-container .footer-container .footer.grid-x section.widget.large-3 .footer-logo-container {
  display: flex;
}
#footer-container .footer-container .footer.grid-x section.widget.large-3 .footer-logo-container img {
  margin-right: 3.75rem;
  margin-top: -0.625rem;
}
@media only screen and (max-width: 47.9375em) {
  #footer-container .footer-container .footer.grid-x section.widget.large-3 .footer-logo-container img {
    margin-right: 1.25rem;
  }
}
#footer-container .footer-container .footer.grid-x section.widget.large-3 .gform_wrapper form {
  display: flex;
  width: 100%;
}
#footer-container .footer-container .footer.grid-x section.widget.large-3 .gform_wrapper form .gform_body {
  margin: 0;
  width: calc(100% - 2rem);
}
#footer-container .footer-container .footer.grid-x section.widget.large-3 .gform_wrapper form .gform_body li.gfield {
  padding: 0;
}
#footer-container .footer-container .footer.grid-x section.widget.large-3 .gform_wrapper form .gform_body li.gfield input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=image]):not([type=file]) {
  border: 0 !important;
  border-radius: 0 !important;
  max-height: 2.375rem;
  min-height: 0;
  padding: 0 1.25rem 0 0.9375rem;
}
#footer-container .footer-container .footer.grid-x section.widget.large-3 .gform_wrapper form .gform_body li.gfield.floatLabel label {
  left: 0.9375rem;
  top: 0.625rem;
}
#footer-container .footer-container .footer.grid-x section.widget.large-3 .gform_wrapper form .gform_body li.gfield.floatLabel label[data-attr=active] {
  left: 0;
  top: -1rem;
}
#footer-container .footer-container .footer.grid-x section.widget.large-3 .gform_wrapper form .gform_footer {
  margin: 0;
  position: relative;
  width: 2.375rem;
}
#footer-container .footer-container .footer.grid-x section.widget.large-3 .gform_wrapper form .gform_footer input.gform_button {
  background: #FFAF26;
  border-radius: 0 !important;
  height: 2.375rem;
  line-height: 2.375rem;
  padding: 0;
  text-indent: -9999px;
  width: 2.375rem;
}
#footer-container .footer-container .footer.grid-x section.widget.large-3 .gform_wrapper form .gform_footer:after {
  background: url(../../../src/assets/images/black-arrow.svg) no-repeat left center;
  color: #001717;
  content: "";
  cursor: pointer;
  display: block;
  font-family: fontawesome;
  height: 0.625rem;
  right: 0.9375rem;
  pointer-events: none;
  position: absolute;
  top: 0.90625rem;
  width: 2.375rem;
  z-index: 10;
  transition: right 0.2s ease-out;
}
#footer-container .footer-container .footer.grid-x section.widget.large-3 .gform_wrapper form .gform_footer:hover:after, #footer-container .footer-container .footer.grid-x section.widget.large-3 .gform_wrapper form .gform_footer:focus:after {
  right: 0.625rem;
}
#footer-container .footer-container .footer.grid-x section.widget.large-3:first-child {
  width: 36.65%;
}
@media only screen and (max-width: 64em) {
  #footer-container .footer-container .footer.grid-x section.widget.large-3:first-child {
    margin-bottom: 3.75rem;
    width: 100%;
  }
}
@media only screen and (max-width: 47.9375em) {
  #footer-container .footer-container .footer.grid-x section.widget.large-3:first-child h6, #footer-container .footer-container .footer.grid-x section.widget.large-3:first-child p {
    text-align: left;
  }
}
#footer-container .footer-container .footer.grid-x section.widget.large-3:nth-child(2) {
  width: 17.52%;
}
@media only screen and (max-width: 64em) {
  #footer-container .footer-container .footer.grid-x section.widget.large-3:nth-child(2) {
    width: 33.3333%;
  }
}
@media only screen and (max-width: 47.9375em) {
  #footer-container .footer-container .footer.grid-x section.widget.large-3:nth-child(2) {
    margin-bottom: 3.75rem;
    width: 100%;
  }
}
#footer-container .footer-container .footer.grid-x section.widget.large-3:nth-child(3) {
  width: 21.77%;
}
@media only screen and (max-width: 64em) {
  #footer-container .footer-container .footer.grid-x section.widget.large-3:nth-child(3) {
    width: 33.3333%;
  }
}
@media only screen and (max-width: 47.9375em) {
  #footer-container .footer-container .footer.grid-x section.widget.large-3:nth-child(3) {
    margin-bottom: 3.75rem;
    text-align: center;
    width: 100%;
  }
}
#footer-container .footer-container .footer.grid-x section.widget.large-3:last-child {
  width: 24.06%;
}
@media only screen and (max-width: 64em) {
  #footer-container .footer-container .footer.grid-x section.widget.large-3:last-child {
    width: 33.3333%;
  }
}
@media only screen and (max-width: 47.9375em) {
  #footer-container .footer-container .footer.grid-x section.widget.large-3:last-child {
    width: 100%;
  }
}

#copyright-container p, #copyright-container p a {
  font-family: "source-sans-pro", Arial, Helvetica, sans-serif;
}

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

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

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

.mobile-menu {
  display: none;
}

.off-canvas > ul.menu {
  height: auto;
  padding: 1rem;
}
.off-canvas > ul.menu a {
  color: #FFFFFF;
  font-weight: 600;
  font-size: 0.9375rem;
}
.off-canvas .menu .active > a {
  background-color: #ccc;
}

.title-bar-title a {
  font-size: 1rem;
  color: #B9B9B9;
}

.mobile-menu .menu .is-active > a,
.mobile-off-canvas-menu .menu .is-active > a {
  background-color: rgb(54.3888888889, 69.2222222222, 79.1111111111);
}

.top-bar .top-bar-title a {
  font-size: 1rem;
  color: #B9B9B9;
  padding-left: 1rem;
  line-height: 1.8;
}
.top-bar .menu a {
  color: #e6e6e6;
  padding-top: 0;
  padding-bottom: 0;
  font-weight: bold;
  font-size: 0.8rem;
  line-height: 1;
}
.top-bar .menu a:hover:not(.button) {
  background-color: #42525D;
}
.top-bar .menu .active > a {
  background-color: #ccc;
}
.top-bar .menu > li:not(.menu-text) > a {
  padding: 1rem;
}
.top-bar .menu li:not(:last-child) {
  border-right: 1px solid #4e4e4e;
}
.top-bar .dropdown.menu .submenu {
  border: 0;
}
.top-bar .dropdown.menu .has-submenu.is-down-arrow a {
  padding-right: 1rem;
}
.top-bar .dropdown.menu .has-submenu.is-down-arrow > a::after {
  border: 0;
}
.top-bar .dropdown.menu:first-child > li.is-dropdown-submenu-parent > a::after {
  display: none;
}

@media print, screen and (max-width: 40.06125em) {
  .site-navigation {
    padding: 0;
  }
}

.post-navigation::before, .post-navigation::after {
  display: table;
  content: " ";
  flex-basis: 0;
  order: 1;
}
.post-navigation::after {
  clear: both;
}

.nav-previous {
  float: left;
}

.nav-next {
  float: right;
}

.main-wrap {
  max-width: 85rem;
  margin: 0 auto;
  display: flex;
  flex-flow: row wrap;
}
@media print, screen and (min-width: 40.0625em) {
  .main-wrap {
    margin-top: 3rem;
    padding-right: 0;
    padding-left: 0;
  }
}
.main-wrap.sidebar-left .main-content {
  order: 1;
}
.main-wrap.sidebar-left .sidebar {
  order: 2;
}
@media print, screen and (min-width: 40.0625em) {
  .main-wrap.sidebar-left .main-content {
    order: 2;
  }
  .main-wrap.sidebar-left .sidebar {
    order: 1;
  }
}
.main-wrap.full-width .main-content {
  flex: 0 0 auto;
  width: calc(100% - 1.875rem);
  margin-left: 0.9375rem;
  margin-right: 0.9375rem;
}
.main-wrap .main-content {
  flex: 0 0 auto;
  width: calc(100% - 1.875rem);
  margin-left: 0.9375rem;
  margin-right: 0.9375rem;
}
@media print, screen and (min-width: 40.0625em) {
  .main-wrap .main-content {
    flex: 0 0 auto;
    width: calc(66.6666666667% - 1.875rem);
    margin-left: 0.9375rem;
    margin-right: 0.9375rem;
  }
}
.main-wrap .sidebar {
  flex: 0 0 auto;
  width: calc(100% - 1.875rem);
  margin-left: 0.9375rem;
  margin-right: 0.9375rem;
}
@media print, screen and (min-width: 40.0625em) {
  .main-wrap .sidebar {
    flex: 0 0 auto;
    width: calc(33.3333333333% - 1.875rem);
    margin-left: 0.9375rem;
    margin-right: 0.9375rem;
  }
}

div.pre-footer-container + div.footer-container {
  margin-top: 0;
}
div.pre-footer-container .pre-footer {
  margin: 0 auto;
  max-width: 85rem;
  padding: 5rem 0;
}
div.pre-footer-container .widget {
  padding: 0 0.9375rem;
}
div.pre-footer-container .widget > h4 {
  font-size: 2rem !important;
  font-weight: 700;
  letter-spacing: 0.05rem;
  text-align: center;
  text-transform: uppercase;
}
div.pre-footer-container .widget p:last-of-type {
  margin-bottom: 0;
}

body.home div.pre-footer-container {
  margin-top: 0;
}

.footer-container {
  margin: 0 auto;
  border-top: 1px solid #cacaca;
}

.footer {
  max-width: 85rem;
  margin: 0 auto;
  display: flex;
  flex-flow: row wrap;
  padding: 5rem 0 !important;
}
.footer article {
  flex: 1 1 0;
  width: auto;
  margin-left: 0.9375rem;
  margin-right: 0.9375rem;
  margin: 0;
}
.footer ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

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

.sites-button {
  background: #1779ba;
  font-size: 1.25rem;
  font-weight: bold;
  box-shadow: 0 -2px 0 rgba(0, 0, 0, 0.2) inset;
  border-radius: 3px;
  border: none;
}

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

.featured-hero {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  min-height: 6.25rem;
}
@media print, screen and (min-width: 40.0625em) {
  .featured-hero {
    min-height: 12.5rem;
  }
}
@media screen and (min-width: 75em) {
  .featured-hero {
    min-height: 25rem;
  }
}

.dotted, .section-divider hr {
  border-style: dashed;
  margin: 2rem 0;
}

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

.front-hero .marketing {
  max-width: 55rem;
  margin-left: auto;
  margin-right: auto;
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
}
@media print, screen and (min-width: 40.0625em) {
  .front-hero .marketing {
    padding-right: 0.9375rem;
    padding-left: 0.9375rem;
  }
}
.front-hero .marketing {
  display: flex;
  flex-flow: row wrap;
}
.front-hero {
  background: url("../images/demo/hero-bg-foundation-6-small.svg") bottom center;
  background-size: cover;
  background-position: bottom;
  padding: 4.0625rem 0;
  margin: 0 0 2rem;
  height: auto;
  position: relative;
  text-align: left;
}
@media print, screen and (min-width: 40.0625em) {
  .front-hero {
    background: url("../images/demo/hero-bg-foundation-6-large.svg") bottom center;
    background-size: cover;
    background-position: center;
    height: 42.8125rem;
    margin: 0 0 4.5rem;
  }
}
.front-hero .watch {
  flex: 0 0 auto;
  width: calc(58.3333333333% - 1.875rem);
  margin-left: 0.9375rem;
  margin-right: 0.9375rem;
}
@media print, screen and (min-width: 40.0625em) {
  .front-hero .watch {
    flex: 0 0 auto;
    width: calc(100% - 1.875rem);
    margin-left: 0.9375rem;
    margin-right: 0.9375rem;
  }
}
.front-hero .watch a {
  color: #B4C9D1;
  cursor: pointer;
  font-weight: 400;
  margin-right: 1.25rem;
}
.front-hero .watch a:hover {
  color: #fff;
}
.front-hero .watch #stargazers :before {
  content: "\f09b";
  font-family: FontAwesome;
  font-style: normal;
  font-weight: normal;
  text-decoration: inherit;
  color: #B4C9D1;
  margin-right: 0.5rem;
}
.front-hero .watch #twitter :before {
  content: "\f099";
  font-family: FontAwesome;
  font-style: normal;
  font-weight: normal;
  text-decoration: inherit;
  color: #B4C9D1;
  margin-right: 0.5rem;
}
.front-hero .tagline {
  flex: 0 0 auto;
  width: calc(66.6666666667% - 1.875rem);
  margin-left: 0.9375rem;
  margin-right: 0.9375rem;
}
@media print, screen and (min-width: 40.0625em) {
  .front-hero .tagline {
    flex: 0 0 auto;
    width: calc(41.6666666667% - 1.875rem);
    margin-left: 0.9375rem;
    margin-right: 0.9375rem;
    padding-top: 6rem;
  }
}
.front-hero h1 {
  color: #fff;
  font-weight: 500;
  font-size: 2.2rem;
}
@media print, screen and (min-width: 40.0625em) {
  .front-hero h1 {
    font-size: 2.875rem;
  }
}
.front-hero h4 {
  color: #fefefe;
  font-weight: 300;
  font-size: 1.3125rem;
}
.front-hero .download {
  margin-top: 1.25rem;
}

.intro {
  max-width: 75rem;
  margin-left: auto;
  margin-right: auto;
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
}
@media print, screen and (min-width: 40.0625em) {
  .intro {
    padding-right: 0.9375rem;
    padding-left: 0.9375rem;
  }
}
.intro {
  display: flex;
  flex-flow: row wrap;
}
.intro .fp-intro {
  flex: 0 0 auto;
  width: calc(100% - 1.875rem);
  margin-left: 0.9375rem;
  margin-right: 0.9375rem;
}
@media print, screen and (min-width: 40.0625em) {
  .intro .fp-intro {
    flex: 0 0 auto;
    width: calc(83.3333333333% - 1.875rem);
    margin-left: 0.9375rem;
    margin-right: 0.9375rem;
    margin-left: calc(8.3333333333% + 1.875rem / 2);
  }
  .intro .fp-intro h2 {
    font-weight: 300;
    margin-bottom: 1.5rem;
  }
  .intro .fp-intro h4 {
    font-size: 1.125rem;
    line-height: 1.6;
    color: #777;
    margin-bottom: 2rem;
  }
}

.section-divider {
  max-width: 75rem;
  margin-left: auto;
  margin-right: auto;
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
}
@media print, screen and (min-width: 40.0625em) {
  .section-divider {
    padding-right: 0.9375rem;
    padding-left: 0.9375rem;
  }
}
.section-divider {
  display: flex;
  flex-flow: row wrap;
}
.section-divider hr {
  flex: 0 0 auto;
  width: calc(100% - 1.875rem);
  margin-left: 0.9375rem;
  margin-right: 0.9375rem;
  box-sizing: border-box;
}

.benefits {
  max-width: 75rem;
  margin-left: auto;
  margin-right: auto;
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
}
@media print, screen and (min-width: 40.0625em) {
  .benefits {
    padding-right: 0.9375rem;
    padding-left: 0.9375rem;
  }
}
.benefits {
  display: flex;
  flex-flow: row wrap;
  text-align: center;
}
.benefits header {
  flex: 0 0 auto;
  width: calc(100% - 1.875rem);
  margin-left: 0.9375rem;
  margin-right: 0.9375rem;
}
.benefits header h2 {
  font-weight: 300;
}
.benefits header h4 {
  font-size: 1.125rem;
  line-height: 1.6;
  color: #777;
}
.benefits .semantic,
.benefits .responsive,
.benefits .customizable,
.benefits .professional {
  flex: 0 0 auto;
  width: calc(100% - 1.875rem);
  margin-left: 0.9375rem;
  margin-right: 0.9375rem;
}
@media print, screen and (min-width: 40.0625em) {
  .benefits .semantic,
  .benefits .responsive,
  .benefits .customizable,
  .benefits .professional {
    flex: 0 0 auto;
    width: calc(25% - 1.875rem);
    margin-left: 0.9375rem;
    margin-right: 0.9375rem;
  }
}
.benefits .semantic img,
.benefits .responsive img,
.benefits .customizable img,
.benefits .professional img {
  padding: 1.25rem;
  margin: 1rem auto 0 auto;
}
.benefits .semantic h3,
.benefits .responsive h3,
.benefits .customizable h3,
.benefits .professional h3 {
  color: #0a0a0a;
  font-weight: 300;
  font-size: 1.75rem;
}
.benefits .semantic p,
.benefits .responsive p,
.benefits .customizable p,
.benefits .professional p {
  font-size: 0.9375rem;
}
.benefits .why-foundation {
  flex: 0 0 auto;
  width: calc(100% - 1.875rem);
  margin-left: 0.9375rem;
  margin-right: 0.9375rem;
  margin-top: 4rem;
}

/* === MAIN CONTAINER === */
.directory-container {
  margin: 0 auto;
}

.search-section,
.results-summary,
.tier-header-inner,
.vendor-list {
  width: 100%;
  max-width: 85.375rem;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-right: 0.9375rem !important;
  padding-left: 0.9375rem !important;
}

/* === SEARCH SECTION === */
.search-section {
  background: #f8f9fa;
  border-radius: 12px;
  padding: 25px;
  margin-bottom: 25px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

.search-bar {
  display: flex;
  gap: 10px;
  margin-bottom: 20px;
}

.search-bar input {
  flex: 1;
  padding: 12px 16px;
  border: 2px solid #e1e5e9;
  border-radius: 8px;
  font-size: 16px;
}

.search-bar input:focus {
  outline: none;
}

.search-bar button {
  padding: 0 1.375rem;
  background: #0f7654;
  color: white;
  border: none;
  border-radius: 0.1875rem;
  cursor: pointer;
  font-size: 16px;
  font-weight: 500;
}

.search-bar button:hover {
  background: black;
}

/* === FILTERS === */
.filter-toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 15px;
  background: white;
  border: 2px solid #e1e5e9;
  border-radius: 8px;
  cursor: pointer;
  margin-bottom: 15px;
}

.filter-badge {
  background: #0f7654;
  color: white;
  border-radius: 12px;
  padding: 2px 10px;
  font-size: 12px;
  font-weight: bold;
  margin-left: 10px;
}

.filter-panel {
  display: none;
  padding: 20px;
  background: white;
  border-radius: 8px;
  border: 1px solid #e1e5e9;
  margin-bottom: 15px;
}

.filter-panel.show {
  display: block;
}

.filter-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 20px;
  margin-bottom: 20px;
}

.filter-group {
  display: flex;
  flex-direction: column;
}

.filter-group label {
  font-weight: 600;
  margin-bottom: 8px;
  color: #2c3e50;
}

.filter-group select {
  padding: 10px;
  border: 1px solid #e1e5e9;
  border-radius: 6px;
  background: white;
  font-size: 14px;
}

.filter-group select[multiple] {
  min-height: 120px;
}

.checkbox-filters {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 15px;
  margin: 20px 0;
}

.checkbox-filter {
  display: flex;
  align-items: center;
  gap: 8px;
}

.checkbox-filter input[type=checkbox] {
  width: 18px;
  height: 18px;
  cursor: pointer;
  margin: 0px;
}

.checkbox-filter label {
  cursor: pointer;
  font-size: 14px;
}

.filter-actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  padding-top: 15px;
  border-top: 1px solid #e1e5e9;
}

.clear-btn {
  padding: 10px 20px;
  background: #FFAF26;
  color: #001717;
  border: none;
  border-radius: 0.1875rem;
  cursor: pointer;
  font-size: 14px;
  font-weight: 600;
}

.clear-btn:hover {
  background: #FFAF26;
}

/* === RESULTS SUMMARY === */
.results-summary {
  margin-bottom: 20px;
  padding: 15px;
  background: #f8f9fa;
  border-radius: 8px;
  color: #666;
  font-size: 16px;
}

/* === TIER SECTIONS === */
.tier-section {
  margin-bottom: 40px;
}

.tier-header {
  background-color: white;
  padding: 15px 0px;
}
.tier-header .tier-header-inner {
  display: flex;
  gap: 2rem;
  align-items: center;
}
.tier-header h2 {
  color: black !important;
  text-transform: uppercase !important;
  font-size: 40px !important;
}
.tier-header .disclaimer {
  font-size: 20px;
  font-style: italic;
}

.reviewed-tier-section {
  margin-bottom: 0px;
}

.reviewed-tier-section, .verified-tier-section {
  background-color: white;
}
.reviewed-tier-section .vendor-card, .verified-tier-section .vendor-card {
  background-color: #D9E0DD;
}

.free-tier-warning {
  padding: 15px 20px;
  background: #fff3cd;
  border: 1px solid #ffc107;
  border-radius: 8px 8px 0 0;
  color: #856404;
  font-size: 14px;
  font-weight: 500;
}

.free-tier-section {
  background-color: rgb(109, 138, 121);
  padding-top: 20px;
}

/* CHANGE 1: 3 COLUMN GRID LAYOUT */
.vendor-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}
.vendor-list.reviewed-tier {
  grid-template-columns: repeat(3, 1fr);
}
.vendor-list {
  gap: 20px;
  padding: 20px;
}

/* === VENDOR CARDS === */
.vendor-card {
  background: white;
  border: 1px solid #e1e5e9;
  border-radius: 12px;
  overflow: hidden;
  transition: all 0.3s ease;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
  display: flex;
  flex-direction: column;
}

.vendor-card:hover {
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
  transform: translateY(-2px);
}

/* CHANGE 3: HEADER WITH CONTACT BUTTONS VISIBLE */
.vendor-card-header {
  padding: 20px;
  cursor: pointer;
}

.vendor-header-top {
  margin-bottom: 15px;
}

.vendor-logo-placeholder img {
  height: 80px;
  width: auto;
  margin-bottom: 10px;
}

.vendor-name {
  font-size: 1.2rem;
  font-weight: 600;
  color: #2c3e50;
  margin-bottom: 8px !important;
  word-wrap: break-word;
}

.vendor-website {
  display: block;
  margin-bottom: 8px;
}

.social-icons {
  margin-top: 8px;
}
.social-icons .social-icon {
  margin-right: 5px;
  font-size: 22px;
  color: #495057;
  transition: color 0.3s ease;
}
.social-icons .social-icon:hover {
  color: #0f7654;
}

.vendor-expertise {
  color: #666;
  font-size: 0.9rem;
  margin-bottom: 8px;
}

.vendor-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 15px;
}

.vendor-tag {
  border-radius: 12px;
  font-size: 11px;
  font-weight: 600;
  width: 45px;
}

/* CHANGE 3: CONTACT BUTTONS IN HEADER (RIGHT SIDE) */
.vendor-header-right {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 120px;
}

.contact-btn-small {
  padding: 6px 12px;
  text-decoration: none;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 500;
  transition: all 0.3s ease;
  text-align: center;
  white-space: nowrap;
  display: block;
}

.btn-primary-small {
  background: #667eea;
  color: white;
}

.btn-primary-small:hover {
  background: #5a67d8;
}

.btn-secondary-small {
  background: white;
  color: #495057;
  border: 1px solid #e1e5e9;
}

.btn-secondary-small:hover {
  background: #f8f9fa;
  border-color: #667eea;
}

.expand-btn {
  width: 100%;
  padding: 10px;
  background: #FFAF26;
  color: #001717;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  font-size: 14px;
  font-weight: 500;
  margin-top: 10px;
}

.expand-btn:hover {
  background: rgb(255, 184.400921659, 63.5);
}

/* === VENDOR DETAILS === */
.vendor-details {
  display: none;
  padding: 20px;
  flex-grow: 1;
}

.vendor-details.show {
  display: block;
}

.detail-section {
  padding: 12px;
  background: #f8f9fa;
  border-radius: 8px;
  margin-bottom: 15px;
  position: relative;
}
.detail-section .reviewed-icon {
  position: absolute;
  top: 5px;
  right: 10px;
  width: 40px;
}

.detail-section h4 {
  margin-bottom: 8px;
  color: #2c3e50;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.detail-section p {
  font-size: 13px;
  color: #666;
  line-height: 1.6;
  margin-bottom: 5px;
}

.vendor-counties {
  display: grid;
  gap: 6px;
  grid-template-columns: repeat(2, 1fr);
}
.vendor-counties .vendor-county {
  display: block;
  font-size: 13px;
}

.reviewed-tier-section .vendor-counties {
  grid-template-columns: repeat(3, 1fr);
}

.reviewed-tier-section h2 {
  background-image: url("../images/icons/reviewed.svg");
  background-repeat: no-repeat;
  background-size: contain;
  padding-left: 60px;
}

/* CHANGE 5: PIPE SEPARATOR */
.separator {
  margin: 0 4px;
  color: #999;
}

/* CHANGE 2: VENDOR STATEMENT BELOW CONTACT/LOCATION */
.vendor-statement {
  padding: 15px;
  background: #f8f9fa;
  border-radius: 8px;
  margin-bottom: 15px;
  font-size: 13px;
  line-height: 1.7;
  color: #495057;
}

.vendor-statement strong {
  color: #2c3e50;
  font-weight: 600;
}

/* CHANGE 4: TAGS AT BOTTOM */
.vendor-tags-bottom {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding-top: 15px;
  border-top: 1px solid #e1e5e9;
  margin-top: 15px;
}

.specialty-badge {
  padding: 5px 10px;
  font-size: 16px;
  font-weight: bold;
  color: #001717;
  background-repeat: no-repeat;
  background-size: contain;
  padding-left: 40px;
  display: block;
}
.specialty-badge.tag-small-business {
  background-image: url("../images/icons/small.svg");
}
.specialty-badge.tag-minority-owned {
  background-image: url("../images/icons/minority.svg");
}
.specialty-badge.tag-employee-owned {
  background-image: url("../images/icons/employee.svg");
}
.specialty-badge.tag-woman-owned {
  background-image: url("../images/icons/woman.svg");
}
.specialty-badge.tag-veteran-owned {
  background-image: url("../images/icons/veteran.svg");
}
.specialty-badge.tag-micro-business {
  background-image: url("../images/icons/micro.svg");
}

/* === NO RESULTS === */
.no-results {
  text-align: center;
  padding: 60px 20px;
  background: #f8f9fa;
  border-radius: 12px;
  margin: 20px 0;
}

.no-results h3 {
  color: #495057;
  margin-bottom: 10px;
}

/* === RESPONSIVE DESIGN === */
/* CHANGE 1: RESPONSIVE GRID */
@media (max-width: 1200px) {
  .vendor-list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 768px) {
  .directory-header h1 {
    font-size: 2rem;
  }
  .search-bar {
    flex-direction: column;
  }
  .filter-grid {
    grid-template-columns: 1fr;
  }
  .vendor-list {
    grid-template-columns: 1fr;
  }
  .vendor-header-top {
    flex-direction: column;
  }
  .vendor-header-right {
    flex-direction: row;
    flex-wrap: wrap;
    width: 100%;
  }
  .detail-grid {
    grid-template-columns: 1fr;
  }
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC5jc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2ZvdW5kYXRpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fYnJlYWtwb2ludC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXZlYWwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdmVuZG9yL25vcm1hbGl6ZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9fZ2xvYmFsLnNjc3MiLCJfc2V0dGluZ3Muc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2NsYXNzZXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fZ3JpZC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19ndXR0ZXJzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2NlbGwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fbGF5b3V0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2NvbGxhcHNlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX3Bvc2l0aW9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2ZyYW1lLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2Jhc2Uuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fY29sb3Iuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9faGVscGVycy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19hbGlnbm1lbnQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fcHJpbnQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL190ZXh0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19jaGVja2JveC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fbGFiZWwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2hlbHAtdGV4dC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9faW5wdXQtZ3JvdXAuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2ZpZWxkc2V0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19zZWxlY3Quc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2Vycm9yLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2FjY29yZGlvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19hY2NvcmRpb24tbWVudS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2JhZGdlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2JyZWFkY3J1bWJzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi1ncm91cC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19jYWxsb3V0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2NhcmQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2xvc2UtYnV0dG9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUtaWNvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcmlsbGRvd24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXNwb25zaXZlLWVtYmVkLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2xhYmVsLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lZGlhLW9iamVjdC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MiLCJnbG9iYWwvX2NvbG9ycy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vcmJpdC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19wYWdpbmF0aW9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Byb2dyZXNzLWJhci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zbGlkZXIuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fc3RpY2t5LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3N3aXRjaC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190YWJsZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190YWJzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RodW1ibmFpbC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190aXRsZS1iYXIuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdG9vbHRpcC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190b3AtYmFyLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Zpc2liaWxpdHkuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZmxleC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19mbGV4LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy91dGlsL190cmFuc2l0aW9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy9fY2xhc3Nlcy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fa2V5ZnJhbWUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL19zbGlkZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX2ZhZGUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL19oaW5nZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX3pvb20uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL19zcGluLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy91dGlsL19hbmltYXRpb24uc2NzcyIsImFwcC5zY3NzIiwiZ2xvYmFsL19hY2Nlc3NpYmlsaXR5LnNjc3MiLCJnbG9iYWwvX3dwLWFkbWluLnNjc3MiLCJnbG9iYWwvX3dwLW92ZXJyaWRlcy5zY3NzIiwiZ2xvYmFsL19hbGxvbnN5LWNvcmUuc2NzcyIsImdsb2JhbC9fYnMtYTExeS5zY3NzIiwiZ2xvYmFsL19icy12YXJpYWJsZXMuc2NzcyIsImdsb2JhbC9fcHJlbG9hZGVyLnNjc3MiLCJnbG9iYWwvX2dlbmVyYWwtc3R5bGVzLnNjc3MiLCJnbG9iYWwvX2hlYWRlci5zY3NzIiwiZ2xvYmFsL19oZWFkZXItb25lLnNjc3MiLCJnbG9iYWwvX2hlYWRlci10d28uc2NzcyIsImdsb2JhbC9faGVhZGVyLXRocmVlLnNjc3MiLCJnbG9iYWwvX2hlYWRlci1mb3VyLnNjc3MiLCJnbG9iYWwvX29mZi1jYW52YXMuc2NzcyIsImdsb2JhbC9fbWVudS10b3AtYmFyLnNjc3MiLCJnbG9iYWwvX3N0aWNreS1oZWFkZXIuc2NzcyIsImdsb2JhbC9faGVhZGVyLW92ZXJyaWRlcy5zY3NzIiwiZ2xvYmFsL19ob21lLXBhZ2Uuc2NzcyIsImdsb2JhbC9fYnMtYnJlYWRjcnVtYnMuc2NzcyIsImdsb2JhbC9fYnMtdGl0bGUtc3R5bGVzLnNjc3MiLCJnbG9iYWwvX2RlZmF1bHQtcGFnZS1zdHlsZXMuc2NzcyIsImdsb2JhbC9fZnVsbC13aWR0aC1wYWdlLXN0eWxlcy5zY3NzIiwiZ2xvYmFsL19wb3N0LW5hdi5zY3NzIiwiZ2xvYmFsL19zaWRlYmFyLXN0eWxlcy5zY3NzIiwiZ2xvYmFsL19zb2NpYWwtc2hhcmUuc2NzcyIsImdsb2JhbC9fZ2FsbGVyeS1zaG9ydGNvZGUuc2NzcyIsImdsb2JhbC9fYnMtcGFnaW5hdGlvbi5zY3NzIiwiZ2xvYmFsL19icy1ncmF2aXR5LWZvcm1zLnNjc3MiLCJnbG9iYWwvX2JzLXNlYXJjaC1yZXN1bHRzLnNjc3MiLCJnbG9iYWwvX2JzLWJsb2ctc3R5bGVzLnNjc3MiLCJnbG9iYWwvX2Jsb2ctbG9vcC1zaG9ydGNvZGUuc2NzcyIsImdsb2JhbC9fYnMtY29tbWVudHMuc2NzcyIsImdsb2JhbC9fYWpheC1ibG9nLWxvb3Atc2hvcnRjb2RlLnNjc3MiLCJnbG9iYWwvX2JzLXN0YWZmLnNjc3MiLCJnbG9iYWwvXzQwNC1zdHlsZXMuc2NzcyIsImdsb2JhbC9fYnMtZm9vdGVyLnNjc3MiLCJnbG9iYWwvX2JzLXBvcHVwLnNjc3MiLCJnbG9iYWwvX2luc3RhZmVlZC5zY3NzIiwiZ2xvYmFsL19zbGljay5zY3NzIiwiZ2xvYmFsL193b29jb21tZXJjZS5zY3NzIiwiZ2xvYmFsL19icy1zdHlsZXMuc2NzcyIsIm1vZHVsZXMvX25hdmlnYXRpb24uc2NzcyIsIm1vZHVsZXMvX2NvbnRlbnQuc2NzcyIsIm1vZHVsZXMvX2Zvb3Rlci5zY3NzIiwibW9kdWxlcy9fZWRpdG9yLXN0eWxlLnNjc3MiLCJjb21wb25lbnRzL19idXR0b25zLnNjc3MiLCJjb21wb25lbnRzL19jYXJkcy5zY3NzIiwiY29tcG9uZW50cy9fZmVhdHVyZWQtaW1hZ2Uuc2NzcyIsImNvbXBvbmVudHMvX2RpdmlkZXJzLnNjc3MiLCJjb21wb25lbnRzL19saW5rcy5zY3NzIiwidGVtcGxhdGVzL19mcm9udC5zY3NzIiwidGVtcGxhdGVzL19kYXRhYmFzZS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQjtBQ0FoQjs7Ozs7RUFBQTtBQ21M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UXpSRTtFQ0lBLGdCSHNEYTtFR3JEYixpQkFBQTtFQUNBLGtCQUFBO0VDY00sd0JBQUE7RUFBQSx1QkFBQTtBVjZRUjtBRTFIUTtFTXZLTjtJRW9CTSx3QkFBQTtJQUFBLHVCQUFBO0VWa1JOO0FBQ0Y7QVFwU0k7RUNDRixlQUFBO0VBQ0EsaUJBQUE7RUFDQSxrQkFBQTtFQ2NNLHdCQUFBO0VBQUEsdUJBQUE7QVYwUlI7QUV2SVE7RU1wS0o7SUVpQkksd0JBQUE7SUFBQSx1QkFBQTtFVitSTjtBQUNGO0FRN1NJO0VDSEYsZURJK0I7RUNIL0IsaUJBQUE7RUFDQSxrQkFBQTtFQ3VCSSxnQkFBQTtFQUFBLGVBQUE7QVY4Uk47O0FROVNFO0VDU0EsYUFBQTtFQUNBLG1CQUFBO0FUeVNGOztBUS9TRTtFR3VHQSxjQUFBO0VBSUUsYUFBQTtFQUNBLFlBQUE7RUFzQ0EsV0FUTTtBWDZLVjtBUW5USTtFR29HRixXQUFBO0FYa05GO0FRbFRJO0VHZ0dGLGNBQUE7QVhxTkY7O0FRL1NJO0VHcUlBLFdBVE07QVh1TFY7QVEvU0k7RUdpSUEsV0FUTTtBWDBMVjs7QVFsU007RUFDRSxnQkFBQTtBUnFTUjs7QUVqTFE7RU1ySEY7SUFDRSxnQkFBQTtFUjBTTjtBQUNGO0FFdkxRO0VNckhGO0lBQ0UsZ0JBQUE7RVIrU047QUFDRjtBUW5TSTtFR3dERixjQUFBO0FYOE9GOztBUXZSTTtFR29GRixvQkFUTTtBWGdOVjs7QVEzUk07RUdvRkYscUJBVE07QVhvTlY7O0FRL1JNO0VHb0ZGLFVBVE07QVh3TlY7O0FRblNNO0VHb0ZGLHFCQVRNO0FYNE5WOztBUXZTTTtFR29GRixxQkFUTTtBWGdPVjs7QVEzU007RUdvRkYsVUFUTTtBWG9PVjs7QVEvU007RUdvRkYscUJBVE07QVh3T1Y7O0FRblRNO0VHb0ZGLHFCQVRNO0FYNE9WOztBUXZUTTtFR29GRixVQVRNO0FYZ1BWOztBUTNUTTtFR29GRixxQkFUTTtBWG9QVjs7QVEvVE07RUdvRkYscUJBVE07QVh3UFY7O0FRblVNO0VHb0ZGLFdBVE07QVg0UFY7O0FFL09RO0VNNUdGO0lHNkRKLFdBQUE7SUEyQ0UsV0FUTTtFWGtRUjtFUTVWRTtJR3dERixjQUFBO0VYdVNBO0VRelZJO0lHNkZGLFdBVE07RVh3UVI7RVFuVkk7SUdvRkYsb0JBVE07RVgyUVI7RVF0Vkk7SUdvRkYscUJBVE07RVg4UVI7RVF6Vkk7SUdvRkYsVUFUTTtFWGlSUjtFUTVWSTtJR29GRixxQkFUTTtFWG9SUjtFUS9WSTtJR29GRixxQkFUTTtFWHVSUjtFUWxXSTtJR29GRixVQVRNO0VYMFJSO0VRcldJO0lHb0ZGLHFCQVRNO0VYNlJSO0VReFdJO0lHb0ZGLHFCQVRNO0VYZ1NSO0VRM1dJO0lHb0ZGLFVBVE07RVhtU1I7RVE5V0k7SUdvRkYscUJBVE07RVhzU1I7RVFqWEk7SUdvRkYscUJBVE07RVh5U1I7RVFwWEk7SUdvRkYsV0FUTTtFWDRTUjtBQUNGO0FFaFNRO0VNNUdGO0lHNkRKLFdBQUE7SUEyQ0UsV0FUTTtFWGtUUjtFUTVZRTtJR3dERixjQUFBO0VYdVZBO0VRellJO0lHNkZGLFdBVE07RVh3VFI7RVFuWUk7SUdvRkYsb0JBVE07RVgyVFI7RVF0WUk7SUdvRkYscUJBVE07RVg4VFI7RVF6WUk7SUdvRkYsVUFUTTtFWGlVUjtFUTVZSTtJR29GRixxQkFUTTtFWG9VUjtFUS9ZSTtJR29GRixxQkFUTTtFWHVVUjtFUWxaSTtJR29GRixVQVRNO0VYMFVSO0VRclpJO0lHb0ZGLHFCQVRNO0VYNlVSO0VReFpJO0lHb0ZGLHFCQVRNO0VYZ1ZSO0VRM1pJO0lHb0ZGLFVBVE07RVhtVlI7RVE5Wkk7SUdvRkYscUJBVE07RVhzVlI7RVFqYUk7SUdvRkYscUJBVE07RVh5VlI7RVFwYUk7SUdvRkYsV0FUTTtFWDRWUjtBQUNGO0FRaGFFO0VBQ0UsV0FBQTtBUmthSjs7QVE5WkU7RUFDRSxZQUFBO0FSaWFKOztBUW5ZRTtFRXZHTSx1QkFBQTtFQUFBLHdCQUFBO0FWK2VSO0FFNVZRO0VNNUNOO0lFdkdNLHVCQUFBO0lBQUEsd0JBQUE7RVZvZk47QUFDRjtBUTFZSTtFR29DQSw0QkFUTTtFRDdISixzQkFBQTtFQUFBLHVCQUFBO0FWaWZOO0FFdldRO0VNakNBO0lHNkJKLDRCQVRNO0lEN0hKLHNCQUFBO0lBQUEsdUJBQUE7RVZ1Zko7QUFDRjtBUWxiRTtFR2dFRSxXQVRNO0FYOFhWO0FRamJFO0VHNERFLFdBVE07QVhpWVY7QVE1YUk7RUdvREEscUNBVE07QVhvWVY7QVEvYUk7RUdvREEsc0NBVE07QVh1WVY7QVFsYkk7RUdvREEsMkJBVE07QVgwWVY7QVFyYkk7RUdvREEsc0NBVE07QVg2WVY7QVF4Ykk7RUdvREEsc0NBVE07QVhnWlY7QVEzYkk7RUdvREEsMkJBVE07QVhtWlY7QVE5Ykk7RUdvREEsc0NBVE07QVhzWlY7QVFqY0k7RUdvREEsc0NBVE07QVh5WlY7QVFwY0k7RUdvREEsMkJBVE07QVg0WlY7QVF2Y0k7RUdvREEsc0NBVE07QVgrWlY7QVExY0k7RUdvREEsc0NBVE07QVhrYVY7QVE3Y0k7RUdvREEsNEJBVE07QVhxYVY7QUV4WlE7RU1wRU47SUdnRUUsV0FUTTtFWHlhUjtFUTVkQTtJRzRERSxXQVRNO0VYNGFSO0VRdmRFO0lHb0RBLHFDQVRNO0VYK2FSO0VRMWRFO0lHb0RBLHNDQVRNO0VYa2JSO0VRN2RFO0lHb0RBLDJCQVRNO0VYcWJSO0VRaGVFO0lHb0RBLHNDQVRNO0VYd2JSO0VRbmVFO0lHb0RBLHNDQVRNO0VYMmJSO0VRdGVFO0lHb0RBLDJCQVRNO0VYOGJSO0VRemVFO0lHb0RBLHNDQVRNO0VYaWNSO0VRNWVFO0lHb0RBLHNDQVRNO0VYb2NSO0VRL2VFO0lHb0RBLDJCQVRNO0VYdWNSO0VRbGZFO0lHb0RBLHNDQVRNO0VYMGNSO0VRcmZFO0lHb0RBLHNDQVRNO0VYNmNSO0VReGZFO0lHb0RBLDRCQVRNO0VYZ2RSO0VRdmdCQTtJR2dFRSxXQVRNO0VYbWRSO0VRdGdCQTtJRzRERSxXQVRNO0VYc2RSO0VRamdCRTtJR29EQSxxQ0FUTTtFWHlkUjtFUXBnQkU7SUdvREEsc0NBVE07RVg0ZFI7RVF2Z0JFO0lHb0RBLDJCQVRNO0VYK2RSO0VRMWdCRTtJR29EQSxzQ0FUTTtFWGtlUjtFUTdnQkU7SUdvREEsc0NBVE07RVhxZVI7RVFoaEJFO0lHb0RBLDJCQVRNO0VYd2VSO0VRbmhCRTtJR29EQSxzQ0FUTTtFWDJlUjtFUXRoQkU7SUdvREEsc0NBVE07RVg4ZVI7RVF6aEJFO0lHb0RBLDJCQVRNO0VYaWZSO0VRNWhCRTtJR29EQSxzQ0FUTTtFWG9mUjtFUS9oQkU7SUdvREEsc0NBVE07RVh1ZlI7RVFsaUJFO0lHb0RBLDRCQVRNO0VYMGZSO0FBQ0Y7QUU5ZVE7RU1wRU47SUdnRUUsV0FUTTtFWCtmUjtFUWxqQkE7SUc0REUsV0FUTTtFWGtnQlI7RVE3aUJFO0lHb0RBLHFDQVRNO0VYcWdCUjtFUWhqQkU7SUdvREEsc0NBVE07RVh3Z0JSO0VRbmpCRTtJR29EQSwyQkFUTTtFWDJnQlI7RVF0akJFO0lHb0RBLHNDQVRNO0VYOGdCUjtFUXpqQkU7SUdvREEsc0NBVE07RVhpaEJSO0VRNWpCRTtJR29EQSwyQkFUTTtFWG9oQlI7RVEvakJFO0lHb0RBLHNDQVRNO0VYdWhCUjtFUWxrQkU7SUdvREEsc0NBVE07RVgwaEJSO0VRcmtCRTtJR29EQSwyQkFUTTtFWDZoQlI7RVF4a0JFO0lHb0RBLHNDQVRNO0VYZ2lCUjtFUTNrQkU7SUdvREEsc0NBVE07RVhtaUJSO0VROWtCRTtJR29EQSw0QkFUTTtFWHNpQlI7QUFDRjs7QVEvaEJJO0VFOUlJLHdCQUFBO0VBQUEsdUJBQUE7QVZrckJSO0FFL2hCUTtFTUxKO0lFOUlJLHdCQUFBO0lBQUEsdUJBQUE7RVZ1ckJOO0FBQ0Y7QVFwaUJJO0VFcEpJLHdCQUFBO0VBQUEsdUJBQUE7QVY0ckJSO0FFemlCUTtFTUNKO0lFcEpJLHdCQUFBO0lBQUEsdUJBQUE7RVZpc0JOO0FBQ0Y7QVF6aUJJO0VFekpJLHdCQUFBO0VBQUEsdUJBQUE7QVZzc0JSO0FFbmpCUTtFTU1KO0lFekpJLHdCQUFBO0lBQUEsdUJBQUE7RVYyc0JOO0FBQ0Y7O0FZNXNCRTtFRCtJRSxXQVRNO0FYMGtCVjs7QVlodEJFO0VEK0lFLFVBVE07QVg4a0JWOztBWXB0QkU7RUQrSUUscUJBVE07QVhrbEJWOztBWXh0QkU7RUQrSUUsVUFUTTtBWHNsQlY7O0FZNXRCRTtFRCtJRSxVQVRNO0FYMGxCVjs7QVlodUJFO0VEK0lFLHFCQVRNO0FYOGxCVjs7QVlwdUJFO0VEK0lFLHFCQVRNO0FYa21CVjs7QVl4dUJFO0VEK0lFLFlBVE07QVhzbUJWOztBRXpsQlE7RVVuSk47SUQrSUUsV0FUTTtFWDJtQlI7RVlqdkJBO0lEK0lFLFVBVE07RVg4bUJSO0VZcHZCQTtJRCtJRSxxQkFUTTtFWGluQlI7RVl2dkJBO0lEK0lFLFVBVE07RVhvbkJSO0VZMXZCQTtJRCtJRSxVQVRNO0VYdW5CUjtFWTd2QkE7SUQrSUUscUJBVE07RVgwbkJSO0VZaHdCQTtJRCtJRSxxQkFUTTtFWDZuQlI7RVlud0JBO0lEK0lFLFlBVE07RVhnb0JSO0FBQ0Y7QUVwbkJRO0VVbkpOO0lEK0lFLFdBVE07RVhxb0JSO0VZM3dCQTtJRCtJRSxVQVRNO0VYd29CUjtFWTl3QkE7SUQrSUUscUJBVE07RVgyb0JSO0VZanhCQTtJRCtJRSxVQVRNO0VYOG9CUjtFWXB4QkE7SUQrSUUsVUFUTTtFWGlwQlI7RVl2eEJBO0lEK0lFLHFCQVRNO0VYb3BCUjtFWTF4QkE7SUQrSUUscUJBVE07RVh1cEJSO0VZN3hCQTtJRCtJRSxZQVRNO0VYMHBCUjtBQUNGO0FZanlCRTtFRCtJRSw0QkFUTTtBWDhwQlY7O0FZcHlCRTtFRCtJRSwyQkFUTTtBWGtxQlY7O0FZeHlCRTtFRCtJRSxzQ0FUTTtBWHNxQlY7O0FZNXlCRTtFRCtJRSwyQkFUTTtBWDBxQlY7O0FZaHpCRTtFRCtJRSwyQkFUTTtBWDhxQlY7O0FZcHpCRTtFRCtJRSxzQ0FUTTtBWGtyQlY7O0FZeHpCRTtFRCtJRSxzQ0FUTTtBWHNyQlY7O0FZNXpCRTtFRCtJRSw2QkFUTTtBWDByQlY7O0FFN3FCUTtFVW5KTjtJRCtJRSw0QkFUTTtFWCtyQlI7RVlyMEJBO0lEK0lFLDJCQVRNO0VYa3NCUjtFWXgwQkE7SUQrSUUsc0NBVE07RVhxc0JSO0VZMzBCQTtJRCtJRSwyQkFUTTtFWHdzQlI7RVk5MEJBO0lEK0lFLDJCQVRNO0VYMnNCUjtFWWoxQkE7SUQrSUUsc0NBVE07RVg4c0JSO0VZcDFCQTtJRCtJRSxzQ0FUTTtFWGl0QlI7RVl2MUJBO0lEK0lFLDZCQVRNO0VYb3RCUjtFWTExQkE7SUQrSUUsNEJBVE07RVh1dEJSO0VZNzFCQTtJRCtJRSwyQkFUTTtFWDB0QlI7RVloMkJBO0lEK0lFLHNDQVRNO0VYNnRCUjtFWW4yQkE7SUQrSUUsMkJBVE07RVhndUJSO0VZdDJCQTtJRCtJRSwyQkFUTTtFWG11QlI7RVl6MkJBO0lEK0lFLHNDQVRNO0VYc3VCUjtFWTUyQkE7SUQrSUUsc0NBVE07RVh5dUJSO0VZLzJCQTtJRCtJRSw2QkFUTTtFWDR1QlI7QUFDRjtBRWh1QlE7RVVuSk47SUQrSUUsNEJBVE07RVhpdkJSO0VZdjNCQTtJRCtJRSwyQkFUTTtFWG92QlI7RVkxM0JBO0lEK0lFLHNDQVRNO0VYdXZCUjtFWTczQkE7SUQrSUUsMkJBVE07RVgwdkJSO0VZaDRCQTtJRCtJRSwyQkFUTTtFWDZ2QlI7RVluNEJBO0lEK0lFLHNDQVRNO0VYZ3dCUjtFWXQ0QkE7SUQrSUUsc0NBVE07RVhtd0JSO0VZejRCQTtJRCtJRSw2QkFUTTtFWHN3QlI7QUFDRjtBUXRzQk07RUs5TUUsZUFBQTtFQUFBLGNBQUE7QWJ3NUJSO0FhcjVCTTtFQUVJLGVBQUE7RUFBQSxjQUFBO0FidTVCVjtBYWo0Qlk7RUYySFIsb0JBVE07QVhreEJWO0FhcDRCWTtFRjJIUixxQkFUTTtBWHF4QlY7QWF2NEJZO0VGMkhSLFVBVE07QVh3eEJWO0FhMTRCWTtFRjJIUixxQkFUTTtBWDJ4QlY7QWE3NEJZO0VGMkhSLHFCQVRNO0FYOHhCVjtBYWg1Qlk7RUYySFIsVUFUTTtBWGl5QlY7QWFuNUJZO0VGMkhSLHFCQVRNO0FYb3lCVjtBYXQ1Qlk7RUYySFIscUJBVE07QVh1eUJWO0FhejVCWTtFRjJIUixVQVRNO0FYMHlCVjtBYTU1Qlk7RUYySFIscUJBVE07QVg2eUJWO0FhLzVCWTtFRjJIUixxQkFUTTtBWGd6QlY7QWFsNkJZO0VGMkhSLFdBVE07QVhtekJWO0FFdHlCUTtFVy9ISTtJRjJIUixvQkFUTTtFWHV6QlI7RWF6NkJVO0lGMkhSLHFCQVRNO0VYMHpCUjtFYTU2QlU7SUYySFIsVUFUTTtFWDZ6QlI7RWEvNkJVO0lGMkhSLHFCQVRNO0VYZzBCUjtFYWw3QlU7SUYySFIscUJBVE07RVhtMEJSO0VhcjdCVTtJRjJIUixVQVRNO0VYczBCUjtFYXg3QlU7SUYySFIscUJBVE07RVh5MEJSO0VhMzdCVTtJRjJIUixxQkFUTTtFWDQwQlI7RWE5N0JVO0lGMkhSLFVBVE07RVgrMEJSO0VhajhCVTtJRjJIUixxQkFUTTtFWGsxQlI7RWFwOEJVO0lGMkhSLHFCQVRNO0VYcTFCUjtFYXY4QlU7SUYySFIsV0FUTTtFWHcxQlI7QUFDRjtBRTUwQlE7RVcvSEk7SUYySFIsb0JBVE07RVg2MUJSO0VhLzhCVTtJRjJIUixxQkFUTTtFWGcyQlI7RWFsOUJVO0lGMkhSLFVBVE07RVhtMkJSO0VhcjlCVTtJRjJIUixxQkFUTTtFWHMyQlI7RWF4OUJVO0lGMkhSLHFCQVRNO0VYeTJCUjtFYTM5QlU7SUYySFIsVUFUTTtFWDQyQlI7RWE5OUJVO0lGMkhSLHFCQVRNO0VYKzJCUjtFYWorQlU7SUYySFIscUJBVE07RVhrM0JSO0VhcCtCVTtJRjJIUixVQVRNO0VYcTNCUjtFYXYrQlU7SUYySFIscUJBVE07RVh3M0JSO0VhMStCVTtJRjJIUixxQkFUTTtFWDIzQlI7RWE3K0JVO0lGMkhSLFdBVE07RVg4M0JSO0FBQ0Y7O0FReHpCTTtFSzdLRSxlQUFBO0VBQUEsY0FBQTtBYjArQlI7QWF2K0JNO0VBRUksZ0JBQUE7RUFBQSxlQUFBO0FieStCVjs7QUUzM0JRO0VNb0RGO0lLOU1FLGVBQUE7SUFBQSxjQUFBO0ViMmhDTjtFYXhoQ0k7SUFFSSxlQUFBO0lBQUEsY0FBQTtFYjBoQ1I7QUFDRjtBRXQ0QlE7RVd4SUk7SUZvSVIsb0JBVE07RVh1NUJSO0VhbGhDVTtJRm9JUixxQkFUTTtFWDA1QlI7RWFyaENVO0lGb0lSLFVBVE07RVg2NUJSO0VheGhDVTtJRm9JUixxQkFUTTtFWGc2QlI7RWEzaENVO0lGb0lSLHFCQVRNO0VYbTZCUjtFYTloQ1U7SUZvSVIsVUFUTTtFWHM2QlI7RWFqaUNVO0lGb0lSLHFCQVRNO0VYeTZCUjtFYXBpQ1U7SUZvSVIscUJBVE07RVg0NkJSO0VhdmlDVTtJRm9JUixVQVRNO0VYKzZCUjtFYTFpQ1U7SUZvSVIscUJBVE07RVhrN0JSO0VhN2lDVTtJRm9JUixxQkFUTTtFWHE3QlI7RWFoakNVO0lGb0lSLFdBVE07RVh3N0JSO0FBQ0Y7QUU1NkJRO0VXL0hJO0lGMkhSLG9CQVRNO0VYNjdCUjtFYS9pQ1U7SUYySFIscUJBVE07RVhnOEJSO0VhbGpDVTtJRjJIUixVQVRNO0VYbThCUjtFYXJqQ1U7SUYySFIscUJBVE07RVhzOEJSO0VheGpDVTtJRjJIUixxQkFUTTtFWHk4QlI7RWEzakNVO0lGMkhSLFVBVE07RVg0OEJSO0VhOWpDVTtJRjJIUixxQkFUTTtFWCs4QlI7RWFqa0NVO0lGMkhSLHFCQVRNO0VYazlCUjtFYXBrQ1U7SUYySFIsVUFUTTtFWHE5QlI7RWF2a0NVO0lGMkhSLHFCQVRNO0VYdzlCUjtFYTFrQ1U7SUYySFIscUJBVE07RVgyOUJSO0VhN2tDVTtJRjJIUixXQVRNO0VYODlCUjtBQUNGO0FFbDlCUTtFVy9ISTtJRjJIUixvQkFUTTtFWG0rQlI7RWFybENVO0lGMkhSLHFCQVRNO0VYcytCUjtFYXhsQ1U7SUYySFIsVUFUTTtFWHkrQlI7RWEzbENVO0lGMkhSLHFCQVRNO0VYNCtCUjtFYTlsQ1U7SUYySFIscUJBVE07RVgrK0JSO0Vham1DVTtJRjJIUixVQVRNO0VYay9CUjtFYXBtQ1U7SUYySFIscUJBVE07RVhxL0JSO0Vhdm1DVTtJRjJIUixxQkFUTTtFWHcvQlI7RWExbUNVO0lGMkhSLFVBVE07RVgyL0JSO0VhN21DVTtJRjJIUixxQkFUTTtFWDgvQlI7RWFobkNVO0lGMkhSLHFCQVRNO0VYaWdDUjtFYW5uQ1U7SUYySFIsV0FUTTtFWG9nQ1I7QUFDRjs7QUV4L0JRO0VNMERGO0lLN0tFLGVBQUE7SUFBQSxjQUFBO0ViaW5DTjtFYTltQ0k7SUFFSSxnQkFBQTtJQUFBLGVBQUE7RWJnbkNSO0FBQ0Y7O0FFbmdDUTtFTW9ERjtJSzlNRSxlQUFBO0lBQUEsY0FBQTtFYm1xQ047RWFocUNJO0lBRUksZUFBQTtJQUFBLGNBQUE7RWJrcUNSO0FBQ0Y7QUU5Z0NRO0VXeElJO0lGb0lSLG9CQVRNO0VYK2hDUjtFYTFwQ1U7SUZvSVIscUJBVE07RVhraUNSO0VhN3BDVTtJRm9JUixVQVRNO0VYcWlDUjtFYWhxQ1U7SUZvSVIscUJBVE07RVh3aUNSO0VhbnFDVTtJRm9JUixxQkFUTTtFWDJpQ1I7RWF0cUNVO0lGb0lSLFVBVE07RVg4aUNSO0VhenFDVTtJRm9JUixxQkFUTTtFWGlqQ1I7RWE1cUNVO0lGb0lSLHFCQVRNO0VYb2pDUjtFYS9xQ1U7SUZvSVIsVUFUTTtFWHVqQ1I7RWFsckNVO0lGb0lSLHFCQVRNO0VYMGpDUjtFYXJyQ1U7SUZvSVIscUJBVE07RVg2akNSO0VheHJDVTtJRm9JUixXQVRNO0VYZ2tDUjtBQUNGO0FFcGpDUTtFV3hJSTtJRm9JUixvQkFUTTtFWHFrQ1I7RWFoc0NVO0lGb0lSLHFCQVRNO0VYd2tDUjtFYW5zQ1U7SUZvSVIsVUFUTTtFWDJrQ1I7RWF0c0NVO0lGb0lSLHFCQVRNO0VYOGtDUjtFYXpzQ1U7SUZvSVIscUJBVE07RVhpbENSO0VhNXNDVTtJRm9JUixVQVRNO0VYb2xDUjtFYS9zQ1U7SUZvSVIscUJBVE07RVh1bENSO0VhbHRDVTtJRm9JUixxQkFUTTtFWDBsQ1I7RWFydENVO0lGb0lSLFVBVE07RVg2bENSO0VheHRDVTtJRm9JUixxQkFUTTtFWGdtQ1I7RWEzdENVO0lGb0lSLHFCQVRNO0VYbW1DUjtFYTl0Q1U7SUZvSVIsV0FUTTtFWHNtQ1I7QUFDRjtBRTFsQ1E7RVcvSEk7SUYySFIsb0JBVE07RVgybUNSO0VhN3RDVTtJRjJIUixxQkFUTTtFWDhtQ1I7RWFodUNVO0lGMkhSLFVBVE07RVhpbkNSO0VhbnVDVTtJRjJIUixxQkFUTTtFWG9uQ1I7RWF0dUNVO0lGMkhSLHFCQVRNO0VYdW5DUjtFYXp1Q1U7SUYySFIsVUFUTTtFWDBuQ1I7RWE1dUNVO0lGMkhSLHFCQVRNO0VYNm5DUjtFYS91Q1U7SUYySFIscUJBVE07RVhnb0NSO0VhbHZDVTtJRjJIUixVQVRNO0VYbW9DUjtFYXJ2Q1U7SUYySFIscUJBVE07RVhzb0NSO0VheHZDVTtJRjJIUixxQkFUTTtFWHlvQ1I7RWEzdkNVO0lGMkhSLFdBVE07RVg0b0NSO0FBQ0Y7O0FFaG9DUTtFTTBERjtJSzdLRSxlQUFBO0lBQUEsY0FBQTtFYnl2Q047RWF0dkNJO0lBRUksZ0JBQUE7SUFBQSxlQUFBO0Vid3ZDUjtBQUNGOztBUW5rQ007RU1sTUYsZUFBQTtBZHl3Q0o7O0FRbmtDTTtFTXRNRixvQ0FBQTtBZDZ3Q0o7O0FRM2tDTTtFTWxNRiwwQkFBQTtBZGl4Q0o7O0FRM2tDTTtFTXRNRiwrQ0FBQTtBZHF4Q0o7O0FRbmxDTTtFTWxNRiwyQkFBQTtBZHl4Q0o7O0FRbmxDTTtFTXRNRixnREFBQTtBZDZ4Q0o7O0FRM2xDTTtFTWxNRixnQkFBQTtBZGl5Q0o7O0FRM2xDTTtFTXRNRixxQ0FBQTtBZHF5Q0o7O0FRbm1DTTtFTWxNRiwyQkFBQTtBZHl5Q0o7O0FRbm1DTTtFTXRNRixnREFBQTtBZDZ5Q0o7O0FRM21DTTtFTWxNRiwyQkFBQTtBZGl6Q0o7O0FRM21DTTtFTXRNRixnREFBQTtBZHF6Q0o7O0FRbm5DTTtFTWxNRixnQkFBQTtBZHl6Q0o7O0FRbm5DTTtFTXRNRixxQ0FBQTtBZDZ6Q0o7O0FRM25DTTtFTWxNRiwyQkFBQTtBZGkwQ0o7O0FRM25DTTtFTXRNRixnREFBQTtBZHEwQ0o7O0FRbm9DTTtFTWxNRiwyQkFBQTtBZHkwQ0o7O0FRbm9DTTtFTXRNRixnREFBQTtBZDYwQ0o7O0FRM29DTTtFTWxNRixnQkFBQTtBZGkxQ0o7O0FRM29DTTtFTXRNRixxQ0FBQTtBZHExQ0o7O0FRbnBDTTtFTWxNRiwyQkFBQTtBZHkxQ0o7O0FRbnBDTTtFTXRNRixnREFBQTtBZDYxQ0o7O0FRM3BDTTtFTWxNRiwyQkFBQTtBZGkyQ0o7O0FRM3BDTTtFTXRNRixnREFBQTtBZHEyQ0o7O0FFM3VDUTtFTXdFRjtJTWxNRixlQUFBO0VkMDJDRjtFUXBxQ0k7SU10TUYsb0NBQUE7RWQ2MkNGO0VRM3FDSTtJTWxNRiwwQkFBQTtFZGczQ0Y7RVExcUNJO0lNdE1GLCtDQUFBO0VkbTNDRjtFUWpyQ0k7SU1sTUYsMkJBQUE7RWRzM0NGO0VRaHJDSTtJTXRNRixnREFBQTtFZHkzQ0Y7RVF2ckNJO0lNbE1GLGdCQUFBO0VkNDNDRjtFUXRyQ0k7SU10TUYscUNBQUE7RWQrM0NGO0VRN3JDSTtJTWxNRiwyQkFBQTtFZGs0Q0Y7RVE1ckNJO0lNdE1GLGdEQUFBO0VkcTRDRjtFUW5zQ0k7SU1sTUYsMkJBQUE7RWR3NENGO0VRbHNDSTtJTXRNRixnREFBQTtFZDI0Q0Y7RVF6c0NJO0lNbE1GLGdCQUFBO0VkODRDRjtFUXhzQ0k7SU10TUYscUNBQUE7RWRpNUNGO0VRL3NDSTtJTWxNRiwyQkFBQTtFZG81Q0Y7RVE5c0NJO0lNdE1GLGdEQUFBO0VkdTVDRjtFUXJ0Q0k7SU1sTUYsMkJBQUE7RWQwNUNGO0VRcHRDSTtJTXRNRixnREFBQTtFZDY1Q0Y7RVEzdENJO0lNbE1GLGdCQUFBO0VkZzZDRjtFUTF0Q0k7SU10TUYscUNBQUE7RWRtNkNGO0VRanVDSTtJTWxNRiwyQkFBQTtFZHM2Q0Y7RVFodUNJO0lNdE1GLGdEQUFBO0VkeTZDRjtFUXZ1Q0k7SU1sTUYsMkJBQUE7RWQ0NkNGO0VRdHVDSTtJTXRNRixnREFBQTtFZCs2Q0Y7QUFDRjtBRXR6Q1E7RU13RUY7SU1sTUYsZUFBQTtFZG83Q0Y7RVE5dUNJO0lNdE1GLG9DQUFBO0VkdTdDRjtFUXJ2Q0k7SU1sTUYsMEJBQUE7RWQwN0NGO0VRcHZDSTtJTXRNRiwrQ0FBQTtFZDY3Q0Y7RVEzdkNJO0lNbE1GLDJCQUFBO0VkZzhDRjtFUTF2Q0k7SU10TUYsZ0RBQUE7RWRtOENGO0VRandDSTtJTWxNRixnQkFBQTtFZHM4Q0Y7RVFod0NJO0lNdE1GLHFDQUFBO0VkeThDRjtFUXZ3Q0k7SU1sTUYsMkJBQUE7RWQ0OENGO0VRdHdDSTtJTXRNRixnREFBQTtFZCs4Q0Y7RVE3d0NJO0lNbE1GLDJCQUFBO0VkazlDRjtFUTV3Q0k7SU10TUYsZ0RBQUE7RWRxOUNGO0VRbnhDSTtJTWxNRixnQkFBQTtFZHc5Q0Y7RVFseENJO0lNdE1GLHFDQUFBO0VkMjlDRjtFUXp4Q0k7SU1sTUYsMkJBQUE7RWQ4OUNGO0VReHhDSTtJTXRNRixnREFBQTtFZGkrQ0Y7RVEveENJO0lNbE1GLDJCQUFBO0VkbytDRjtFUTl4Q0k7SU10TUYsZ0RBQUE7RWR1K0NGO0VRcnlDSTtJTWxNRixnQkFBQTtFZDArQ0Y7RVFweUNJO0lNdE1GLHFDQUFBO0VkNitDRjtFUTN5Q0k7SU1sTUYsMkJBQUE7RWRnL0NGO0VRMXlDSTtJTXRNRixnREFBQTtFZG0vQ0Y7RVFqekNJO0lNbE1GLDJCQUFBO0Vkcy9DRjtFUWh6Q0k7SU10TUYsZ0RBQUE7RWR5L0NGO0FBQ0Y7QVFseUNFO0VDL09BLGFBQUE7RUFDQSx3QkFBQTtBVG9oREY7QVFseUNJO0VHbklGLFlBQUE7RUFDQSxnQkFBQTtBWHc2Q0Y7QVFseUNJO0VHMUdBLFlBVE07QVh3NUNWO0FRanlDSTtFRzlHQSxZQVRNO0FYMjVDVjtBUXR4Q007RUFDRSxnQkFBQTtBUnd4Q1I7QUVqNUNRO0VNd0hGO0lBQ0UsZ0JBQUE7RVI0eENOO0FBQ0Y7QUV0NUNRO0VNd0hGO0lBQ0UsZ0JBQUE7RVJpeUNOO0FBQ0Y7QVF0eENNO0VHcExKLGNBQUE7QVg2OENGO0FRMXdDUTtFR3hKSixxQkFUTTtBWDg2Q1Y7QVE3d0NRO0VHeEpKLHNCQVRNO0FYaTdDVjtBUWh4Q1E7RUd4SkosV0FUTTtBWG83Q1Y7QVFueENRO0VHeEpKLHNCQVRNO0FYdTdDVjtBUXR4Q1E7RUd4Skosc0JBVE07QVgwN0NWO0FRenhDUTtFR3hKSixXQVRNO0FYNjdDVjtBUTV4Q1E7RUd4Skosc0JBVE07QVhnOENWO0FRL3hDUTtFR3hKSixzQkFUTTtBWG04Q1Y7QVFseUNRO0VHeEpKLFdBVE07QVhzOENWO0FRcnlDUTtFR3hKSixzQkFUTTtBWHk4Q1Y7QVF4eUNRO0VHeEpKLHNCQVRNO0FYNDhDVjtBUTN5Q1E7RUd4SkosWUFUTTtBWCs4Q1Y7QUVsOENRO0VNZ0lBO0lHL0tOLFdBQUE7SUEyQ0UsWUFUTTtFWG85Q1I7RVFsMENJO0lHcExKLGNBQUE7RVh5L0NBO0VRL3pDTTtJRy9JSixZQVRNO0VYMDlDUjtFUXp6Q007SUd4SkoscUJBVE07RVg2OUNSO0VRNXpDTTtJR3hKSixzQkFUTTtFWGcrQ1I7RVEvekNNO0lHeEpKLFdBVE07RVhtK0NSO0VRbDBDTTtJR3hKSixzQkFUTTtFWHMrQ1I7RVFyMENNO0lHeEpKLHNCQVRNO0VYeStDUjtFUXgwQ007SUd4SkosV0FUTTtFWDQrQ1I7RVEzMENNO0lHeEpKLHNCQVRNO0VYKytDUjtFUTkwQ007SUd4Skosc0JBVE07RVhrL0NSO0VRajFDTTtJR3hKSixXQVRNO0VYcS9DUjtFUXAxQ007SUd4Skosc0JBVE07RVh3L0NSO0VRdjFDTTtJR3hKSixzQkFUTTtFWDIvQ1I7RVExMUNNO0lHeEpKLFlBVE07RVg4L0NSO0FBQ0Y7QUVsL0NRO0VNZ0lBO0lHL0tOLFdBQUE7SUEyQ0UsWUFUTTtFWG9nRFI7RVFsM0NJO0lHcExKLGNBQUE7RVh5aURBO0VRLzJDTTtJRy9JSixZQVRNO0VYMGdEUjtFUXoyQ007SUd4SkoscUJBVE07RVg2Z0RSO0VRNTJDTTtJR3hKSixzQkFUTTtFWGdoRFI7RVEvMkNNO0lHeEpKLFdBVE07RVhtaERSO0VRbDNDTTtJR3hKSixzQkFUTTtFWHNoRFI7RVFyM0NNO0lHeEpKLHNCQVRNO0VYeWhEUjtFUXgzQ007SUd4SkosV0FUTTtFWDRoRFI7RVEzM0NNO0lHeEpKLHNCQVRNO0VYK2hEUjtFUTkzQ007SUd4Skosc0JBVE07RVhraURSO0VRajRDTTtJR3hKSixXQVRNO0VYcWlEUjtFUXA0Q007SUd4Skosc0JBVE07RVh3aURSO0VRdjRDTTtJR3hKSixzQkFUTTtFWDJpRFI7RVExNENNO0lHeEpKLFlBVE07RVg4aURSO0FBQ0Y7O0FRbDRDTTtFRW5URSxzQkFBQTtFQUFBLHlCQUFBO0FWMHJEUjtBRXZpRFE7RU1nS0Y7SUVuVEUsc0JBQUE7SUFBQSx5QkFBQTtFVityRE47QUFDRjtBUXg0Q007RUV4VEUsc0JBQUE7RUFBQSx5QkFBQTtBVm9zRFI7QUVqakRRO0VNcUtGO0lFeFRFLHNCQUFBO0lBQUEseUJBQUE7RVZ5c0ROO0FBQ0Y7O0FRbm1ERTtFRXZHTSxzQkFBQTtFQUFBLHlCQUFBO0FWK3NEUjtBRTVqRFE7RU01Q047SUV2R00sc0JBQUE7SUFBQSx5QkFBQTtFVm90RE47QUFDRjtBUTFtREk7RUdvQ0EsNkJBVE07RUQ3SEoscUJBQUE7RUFBQSx3QkFBQTtBVml0RE47QUV2a0RRO0VNakNBO0lHNkJKLDZCQVRNO0lEN0hKLHFCQUFBO0lBQUEsd0JBQUE7RVZ1dERKO0FBQ0Y7QVFscERFO0VHZ0VFLFlBVE07QVg4bERWO0FRanBERTtFRzRERSxZQVRNO0FYaW1EVjtBUTVvREk7RUdvREEsc0NBVE07QVhvbURWO0FRL29ESTtFR29EQSx1Q0FUTTtBWHVtRFY7QVFscERJO0VHb0RBLDRCQVRNO0FYMG1EVjtBUXJwREk7RUdvREEsdUNBVE07QVg2bURWO0FReHBESTtFR29EQSx1Q0FUTTtBWGduRFY7QVEzcERJO0VHb0RBLDRCQVRNO0FYbW5EVjtBUTlwREk7RUdvREEsdUNBVE07QVhzbkRWO0FRanFESTtFR29EQSx1Q0FUTTtBWHluRFY7QVFwcURJO0VHb0RBLDRCQVRNO0FYNG5EVjtBUXZxREk7RUdvREEsdUNBVE07QVgrbkRWO0FRMXFESTtFR29EQSx1Q0FUTTtBWGtvRFY7QVE3cURJO0VHb0RBLDZCQVRNO0FYcW9EVjtBRXhuRFE7RU1wRU47SUdnRUUsWUFUTTtFWHlvRFI7RVE1ckRBO0lHNERFLFlBVE07RVg0b0RSO0VRdnJERTtJR29EQSxzQ0FUTTtFWCtvRFI7RVExckRFO0lHb0RBLHVDQVRNO0VYa3BEUjtFUTdyREU7SUdvREEsNEJBVE07RVhxcERSO0VRaHNERTtJR29EQSx1Q0FUTTtFWHdwRFI7RVFuc0RFO0lHb0RBLHVDQVRNO0VYMnBEUjtFUXRzREU7SUdvREEsNEJBVE07RVg4cERSO0VRenNERTtJR29EQSx1Q0FUTTtFWGlxRFI7RVE1c0RFO0lHb0RBLHVDQVRNO0VYb3FEUjtFUS9zREU7SUdvREEsNEJBVE07RVh1cURSO0VRbHRERTtJR29EQSx1Q0FUTTtFWDBxRFI7RVFydERFO0lHb0RBLHVDQVRNO0VYNnFEUjtFUXh0REU7SUdvREEsNkJBVE07RVhnckRSO0VRdnVEQTtJR2dFRSxZQVRNO0VYbXJEUjtFUXR1REE7SUc0REUsWUFUTTtFWHNyRFI7RVFqdURFO0lHb0RBLHNDQVRNO0VYeXJEUjtFUXB1REU7SUdvREEsdUNBVE07RVg0ckRSO0VRdnVERTtJR29EQSw0QkFUTTtFWCtyRFI7RVExdURFO0lHb0RBLHVDQVRNO0VYa3NEUjtFUTd1REU7SUdvREEsdUNBVE07RVhxc0RSO0VRaHZERTtJR29EQSw0QkFUTTtFWHdzRFI7RVFudkRFO0lHb0RBLHVDQVRNO0VYMnNEUjtFUXR2REU7SUdvREEsdUNBVE07RVg4c0RSO0VRenZERTtJR29EQSw0QkFUTTtFWGl0RFI7RVE1dkRFO0lHb0RBLHVDQVRNO0VYb3REUjtFUS92REU7SUdvREEsdUNBVE07RVh1dERSO0VRbHdERTtJR29EQSw2QkFUTTtFWDB0RFI7QUFDRjtBRTlzRFE7RU1wRU47SUdnRUUsWUFUTTtFWCt0RFI7RVFseERBO0lHNERFLFlBVE07RVhrdURSO0VRN3dERTtJR29EQSxzQ0FUTTtFWHF1RFI7RVFoeERFO0lHb0RBLHVDQVRNO0VYd3VEUjtFUW54REU7SUdvREEsNEJBVE07RVgydURSO0VRdHhERTtJR29EQSx1Q0FUTTtFWDh1RFI7RVF6eERFO0lHb0RBLHVDQVRNO0VYaXZEUjtFUTV4REU7SUdvREEsNEJBVE07RVhvdkRSO0VRL3hERTtJR29EQSx1Q0FUTTtFWHV2RFI7RVFseURFO0lHb0RBLHVDQVRNO0VYMHZEUjtFUXJ5REU7SUdvREEsNEJBVE07RVg2dkRSO0VReHlERTtJR29EQSx1Q0FUTTtFWGd3RFI7RVEzeURFO0lHb0RBLHVDQVRNO0VYbXdEUjtFUTl5REU7SUdvREEsNkJBVE07RVhzd0RSO0FBQ0Y7O0FRdmtERTtFT3BWRSxnQkFBQTtFQUNBLGtCQUFBO0VBQ0EsaUJBQUE7RUFDQSxvQkFBQTtFQXFDSSxZQUFBO0FmMjNEUjs7QVEza0RFO0VBQ0UsV0FBQTtBUjhrREo7O0FRM2tERTtFT2pTRSxnQkFBQTtFQUNBLGVBQUE7RUFHRixpQ0FBQTtFQUNBLDRDQUFBO0FmODJERjs7QVE5a0RFO0VPelNFLGdCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQkFBQTtFQU1GLGlDQUFBO0VBQ0EsNENBQUE7QWZzM0RGOztBUWpsREU7RU85UkEsYUFBQTtFQUNBLHNCQUFBO0VBQ0EsZ0JBQUE7QWZtM0RGO0FlajNERTtFQUNFLGdCQUFBO0VBQ0EsaUJBQUE7QWZtM0RKOztBRS94RFE7RU0yTUo7SU81V0EsZ0JBQUE7SUFDQSxrQkFBQTtJQUNBLGlCQUFBO0lBQ0Esb0JBQUE7SUFxQ0ksWUFBQTtFZmk2RE47RVF6bERFO0lBQ0UsV0FBQTtFUjJsREo7RVF4bERFO0lPelRBLGdCQUFBO0lBQ0EsZUFBQTtJQUdGLGlDQUFBO0lBQ0EsNENBQUE7RWZrNURBO0VRMWxERTtJT2pURixhQUFBO0lBQ0Esc0JBQUE7SUFDQSxnQkFBQTtFZjg0REE7RWU1NERBO0lBQ0UsZ0JBQUE7SUFDQSxpQkFBQTtFZjg0REY7RVEvbERFO0lPclVBLGdCQUFBO0lBQ0EsZ0JBQUE7SUFDQSxnQkFBQTtJQU1GLGlDQUFBO0lBQ0EsNENBQUE7RWZrNkRBO0FBQ0Y7QUVsMERRO0VNMk1KO0lPNVdBLGdCQUFBO0lBQ0Esa0JBQUE7SUFDQSxpQkFBQTtJQUNBLG9CQUFBO0lBcUNJLFlBQUE7RWZtOEROO0VRM25ERTtJQUNFLFdBQUE7RVI2bkRKO0VRMW5ERTtJT3pUQSxnQkFBQTtJQUNBLGVBQUE7SUFHRixpQ0FBQTtJQUNBLDRDQUFBO0VmbzdEQTtFUTVuREU7SU9qVEYsYUFBQTtJQUNBLHNCQUFBO0lBQ0EsZ0JBQUE7RWZnN0RBO0VlOTZEQTtJQUNFLGdCQUFBO0lBQ0EsaUJBQUE7RWZnN0RGO0VRam9ERTtJT3JVQSxnQkFBQTtJQUNBLGdCQUFBO0lBQ0EsZ0JBQUE7SUFNRixpQ0FBQTtJQUNBLDRDQUFBO0VmbzhEQTtBQUNGO0FRbG9ETTtFT25ZRixnQkFBQTtFQUNBLGtCQUFBO0VBQ0EsaUJBQUE7RUFDQSxvQkFBQTtFQW1DSSxhQUFBO0VQK1ZBLFdBQUE7QVJ3b0RSO0FFNTJEUTtFTXdPQTtJT3pZSixnQkFBQTtJQUNBLGtCQUFBO0lBQ0EsaUJBQUE7SUFDQSxvQkFBQTtJQW1DSSxhQUFBO0lQcVdFLFdBQUE7RVIyb0RSO0FBQ0Y7QUV0M0RRO0VNd09BO0lPellKLGdCQUFBO0lBQ0Esa0JBQUE7SUFDQSxpQkFBQTtJQUNBLG9CQUFBO0lBbUNJLGFBQUE7SVBxV0UsV0FBQTtFUnFwRFI7QUFDRjs7QVFocERNO0VBQ0UsWUFBQTtBUm1wRFI7QUVwNERRO0VNb1BBO0lBQ0UsWUFBQTtFUm1wRFI7QUFDRjtBRXo0RFE7RU1vUEE7SUFDRSxZQUFBO0VSd3BEUjtBQUNGOztBUTE3REU7RUV2R00sc0JBQUE7RUFBQSx5QkFBQTtBVnNpRVI7QUVuNURRO0VNNUNOO0lFdkdNLHNCQUFBO0lBQUEseUJBQUE7RVYyaUVOO0FBQ0Y7QVFqOERJO0VHb0NBLDZCQVRNO0VEN0hKLHFCQUFBO0VBQUEsd0JBQUE7QVZ3aUVOO0FFOTVEUTtFTWpDQTtJRzZCSiw2QkFUTTtJRDdISixxQkFBQTtJQUFBLHdCQUFBO0VWOGlFSjtBQUNGO0FReitERTtFR2dFRSxZQVRNO0FYcTdEVjtBUXgrREU7RUc0REUsWUFUTTtBWHc3RFY7QVFuK0RJO0VHb0RBLHNDQVRNO0FYMjdEVjtBUXQrREk7RUdvREEsdUNBVE07QVg4N0RWO0FReitESTtFR29EQSw0QkFUTTtBWGk4RFY7QVE1K0RJO0VHb0RBLHVDQVRNO0FYbzhEVjtBUS8rREk7RUdvREEsdUNBVE07QVh1OERWO0FRbC9ESTtFR29EQSw0QkFUTTtBWDA4RFY7QVFyL0RJO0VHb0RBLHVDQVRNO0FYNjhEVjtBUXgvREk7RUdvREEsdUNBVE07QVhnOURWO0FRMy9ESTtFR29EQSw0QkFUTTtBWG05RFY7QVE5L0RJO0VHb0RBLHVDQVRNO0FYczlEVjtBUWpnRUk7RUdvREEsdUNBVE07QVh5OURWO0FRcGdFSTtFR29EQSw2QkFUTTtBWDQ5RFY7QUUvOERRO0VNcEVOO0lHZ0VFLFlBVE07RVhnK0RSO0VRbmhFQTtJRzRERSxZQVRNO0VYbStEUjtFUTlnRUU7SUdvREEsc0NBVE07RVhzK0RSO0VRamhFRTtJR29EQSx1Q0FUTTtFWHkrRFI7RVFwaEVFO0lHb0RBLDRCQVRNO0VYNCtEUjtFUXZoRUU7SUdvREEsdUNBVE07RVgrK0RSO0VRMWhFRTtJR29EQSx1Q0FUTTtFWGsvRFI7RVE3aEVFO0lHb0RBLDRCQVRNO0VYcS9EUjtFUWhpRUU7SUdvREEsdUNBVE07RVh3L0RSO0VRbmlFRTtJR29EQSx1Q0FUTTtFWDIvRFI7RVF0aUVFO0lHb0RBLDRCQVRNO0VYOC9EUjtFUXppRUU7SUdvREEsdUNBVE07RVhpZ0VSO0VRNWlFRTtJR29EQSx1Q0FUTTtFWG9nRVI7RVEvaUVFO0lHb0RBLDZCQVRNO0VYdWdFUjtFUTlqRUE7SUdnRUUsWUFUTTtFWDBnRVI7RVE3akVBO0lHNERFLFlBVE07RVg2Z0VSO0VReGpFRTtJR29EQSxzQ0FUTTtFWGdoRVI7RVEzakVFO0lHb0RBLHVDQVRNO0VYbWhFUjtFUTlqRUU7SUdvREEsNEJBVE07RVhzaEVSO0VRamtFRTtJR29EQSx1Q0FUTTtFWHloRVI7RVFwa0VFO0lHb0RBLHVDQVRNO0VYNGhFUjtFUXZrRUU7SUdvREEsNEJBVE07RVgraEVSO0VRMWtFRTtJR29EQSx1Q0FUTTtFWGtpRVI7RVE3a0VFO0lHb0RBLHVDQVRNO0VYcWlFUjtFUWhsRUU7SUdvREEsNEJBVE07RVh3aUVSO0VRbmxFRTtJR29EQSx1Q0FUTTtFWDJpRVI7RVF0bEVFO0lHb0RBLHVDQVRNO0VYOGlFUjtFUXpsRUU7SUdvREEsNkJBVE07RVhpakVSO0FBQ0Y7QUVyaUVRO0VNcEVOO0lHZ0VFLFlBVE07RVhzakVSO0VRem1FQTtJRzRERSxZQVRNO0VYeWpFUjtFUXBtRUU7SUdvREEsc0NBVE07RVg0akVSO0VRdm1FRTtJR29EQSx1Q0FUTTtFWCtqRVI7RVExbUVFO0lHb0RBLDRCQVRNO0VYa2tFUjtFUTdtRUU7SUdvREEsdUNBVE07RVhxa0VSO0VRaG5FRTtJR29EQSx1Q0FUTTtFWHdrRVI7RVFubkVFO0lHb0RBLDRCQVRNO0VYMmtFUjtFUXRuRUU7SUdvREEsdUNBVE07RVg4a0VSO0VRem5FRTtJR29EQSx1Q0FUTTtFWGlsRVI7RVE1bkVFO0lHb0RBLDRCQVRNO0VYb2xFUjtFUS9uRUU7SUdvREEsdUNBVE07RVh1bEVSO0VRbG9FRTtJR29EQSx1Q0FUTTtFWDBsRVI7RVFyb0VFO0lHb0RBLDZCQVRNO0VYNmxFUjtBQUNGOztBUXIxREk7RU9yWUksOEJBQUE7QWY4dEVSO0FFcmxFUTtFTTRQSjtJT3JZSSw4QkFBQTtFZmt1RU47QUFDRjtBRTFsRVE7RU00UEo7SU9yWUksOEJBQUE7RWZ1dUVOO0FBQ0Y7O0FFL2xFUTtFTWdRRjtJT3pZRSw4QkFBQTtFZjZ1RU47QUFDRjtBRXJtRVE7RU1nUUY7SU96WUUsOEJBQUE7RWZrdkVOO0FBQ0Y7QWdCMWpFRTs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQW1CRSxTQUFBO0VBQ0EsVUFBQTtBaEI0akVKOztBZ0J4akVFO0VBQ0UsbUJWMUZzQjtFVTRGdEIsa0JBQUE7RUFDQSxnQlY5Rm1CO0VVK0ZuQixrQ1Y3RnVCO0FOdXBFM0I7O0FnQnRqRUU7O0VBRUUsa0JBQUE7RUFDQSxvQkFBQTtBaEJ5akVKOztBZ0JyakVFOztFQUVFLGlCVmpMaUI7RVVrTGpCLG9CQUFBO0FoQndqRUo7O0FnQnBqRUU7RUFDRSxjVnBIYztFVXFIZCxvQkFBQTtBaEJ1akVKOztBZ0JuakVFOzs7Ozs7RUFNRSw4SlZ4TWU7RVV5TWYsa0JWeEpnQjtFVXlKaEIsbUJWck1tQjtFVXNNbkIsY1Z4Slc7RVV5Slgsa0NWcElvQjtBTjByRXhCO0FnQnBqRUk7Ozs7OztFQUNFLGNBQUE7RUFDQSxjVnROUTtBTml4RWQ7O0FnQmxqRVE7RUFJSSxpQkFEaUI7RUFhakIsZ0JBQUE7RUFRQSxhQUFBO0VBT0EscUJBQUE7QWhCMGhFWjs7QWdCempFUTtFQUlJLGtCQURpQjtFQWFqQixnQkFBQTtFQVFBLGFBQUE7RUFPQSxxQkFBQTtBaEJpaUVaOztBZ0Joa0VRO0VBSUksb0JBRGlCO0VBYWpCLGdCQUFBO0VBUUEsYUFBQTtFQU9BLHFCQUFBO0FoQndpRVo7O0FnQnZrRVE7RUFJSSxtQkFEaUI7RUFhakIsZ0JBQUE7RUFRQSxhQUFBO0VBT0EscUJBQUE7QWhCK2lFWjs7QWdCOWtFUTtFQUlJLG9CQURpQjtFQWFqQixnQkFBQTtFQVFBLGFBQUE7RUFPQSxxQkFBQTtBaEJzakVaOztBZ0JybEVRO0VBSUksZUFEaUI7RUFhakIsZ0JBQUE7RUFRQSxhQUFBO0VBT0EscUJBQUE7QWhCNmpFWjs7QUV4dEVRO0VjNEhBO0lBSUksZUFEaUI7RWhCOGxFM0I7RWdCam1FTTtJQUlJLGlCQURpQjtFaEJpbUUzQjtFZ0JwbUVNO0lBSUksb0JBRGlCO0VoQm9tRTNCO0VnQnZtRU07SUFJSSxvQkFEaUI7RWhCdW1FM0I7RWdCMW1FTTtJQUlJLGtCQURpQjtFaEIwbUUzQjtFZ0I3bUVNO0lBSUksZUFEaUI7RWhCNm1FM0I7QUFDRjtBZ0Ixa0VFO0VBQ0Usb0JBQUE7RUFDQSxjQzFOZ0I7RUQyTmhCLHFCVjdLcUI7RVUrS3JCLGVBQUE7QWhCMmtFSjtBZ0J6a0VJO0VBRUUsaUNWcExlO0FOOHZFckI7QWdCcGtFSTtFQUNFLFNBQUE7QWhCc2tFTjs7QWdCamtFRTtFQUNFLFdBQUE7RUFFQSxnQlZ4U1c7RVV5U1gsU0FBQTtFQUNBLG9CVmhNUTtFVWtNUixhQUFBO0VBQ0EsZUFBQTtFQUNBLGdDVnJNUTtFVXNNUixjQUFBO0FoQmtrRUo7O0FnQjlqRUU7OztFQUdFLG1CVjFOc0I7RVUyTnRCLDRCVnpNa0I7RVUwTWxCLGdCVjdObUI7QU44eEV2Qjs7QWdCN2pFRTtFQUNFLGtCQUFBO0FoQmdrRUo7O0FnQjVqRUU7RUFDRSxvQlZuTmU7RVVvTmYscUJWdE5jO0FOcXhFbEI7O0FnQjNqRUU7RUFDRSxvQlZ6TmU7QU51eEVuQjs7QWdCempFSTtFQUNFLG9CVjlOb0I7RVUrTnBCLGdCQUFBO0FoQjRqRU47O0FnQnZqRUU7RUFDRSxtQlZwT3FCO0FOOHhFekI7QWdCeGpFSTtFQUNFLHFCVnJPd0I7RVVzT3hCLGlCVm5VZTtBTjYzRXJCOztBZ0JyakVFO0VBQ0UsZ0JBQUE7RUFDQSxzQ1YzT2lCO0VVNE9qQiw4QlYzT2dCO0FObXlFcEI7QWdCdGpFSTtFQUNFLGdCVnpRaUI7RVUwUWpCLGNWMVZNO0FOazVFWjs7QWdCMWlFRTtFQUNFLGlDVnJQYTtFVXNQYixZQUFBO0VBQ0EscUJBQUE7QWhCNmlFSjs7QWdCemlFRTtFQUNFLFNBQUE7QWhCNGlFSjs7QWdCamlFRTtFQUNFLFNBQUE7RUFDQSwyQlYzUWdCO0VVNlFoQix5QlZqWVM7RVVtWVQsNERWMVVvQjtFVTJVcEIsY1ZqWUk7QU5tNkVSOztBa0JoM0VFO0VBQ0Usa0JaeUVtQjtFWXhFbkIscUJaeUVzQjtFWXZFdEIsbUJaOUNtQjtFWStDbkIsZ0Jaa0VtQjtFWWpFbkIsY1oxRFE7QU40NkVaOztBa0I5MkVFO0VBQ0UsZVowRGE7RVl6RGIsZ0JaMERjO0FOdXpFbEI7O0FrQjcyRUU7RUFDRSxpQloyRGE7RVkxRGIsY0FBQTtBbEJnM0VKO0FrQjkyRUk7RUFDRSxpQkFBQTtBbEJnM0VOOztBa0IxMkVJO0VBQ0UsY0FBQTtFQUNBLGdCQUFBO0FsQjYyRU47O0FrQnoyRUU7RUFqRkEsY0FBQTtFQUNBLGNaTFU7RVlNVixvQlpzR2U7QU53MUVqQjtBa0I1N0VFO0VBQ0UsYVpxR2tCO0FOeTFFdEI7O0FrQjEyRUU7RUE3RUEseUJadUVZO0VZdEVaLHlCWm5CVztFWXFCWCw0RFpvQ3NCO0VZbkN0QixtQlpWcUI7RVlXckIsY1pwQk07RVkwQk4sZUFBQTtFQUNBLGVBQUE7RUFDQSxxQkFBQTtFQUVBLHFDWnlEYTtBTjIzRWY7O0FrQjcyRUU7RUF0RkEseUJadUVZO0VZdEVaLHlCWm5CVztFWXFCWCw0RFpvQ3NCO0VZbkN0QixtQlpWcUI7RVlXckIsY1pwQk07RVlvQ04sY0FBQTtFQUNBLGNBQUE7RUFDQSxnQkFBQTtFQUVBLGFBNUNtQjtFQTZDbkIscUJBekN5QjtBbEIrOUUzQjs7QW1CbmlGVTtFQUNFLGdCQVJV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O0VBSUUsY2Z4TWlCO0FOa3hGckI7QXFCdmtGRTtFQUNFLHNEQVhZO0FyQm9sRmhCO0FxQjc5RUk7RUFuR0YsYWZhd0I7RWVaeEIsbUJBQUE7QXJCbWtGRjtBcUJ2akZFO0VkM1BBLGNBQUE7RUFDQSxRQUFBO0VBQ0EsU0FBQTtFQUVBLG1CQUFBO0VBQ0EsbUJja1BPO0VkaFBQLFdBQUE7RUFHRSxzQkFBQTtFQUNBLDZDQUFBO0Vja1BBLGtCQUFBO0VBQ0EsVUFBQTtFQUVBLHFCQUFBO0VBQ0EsWUFBQTtFQUNBLGdCQVRPO0FyQndrRlg7QXFCaitFUTtFQUNFLHlCSmxSVTtBakJxdkZwQjtBcUI5OUVZO0VBQ0UseUJmOVVPO0FOOHlGckI7QXFCaitFWTtFQUNFLHlCZjlVTztBTml6RnJCO0FxQnArRVk7RUFDRSx5QmY5VU87QU5vekZyQjtBcUJ2K0VZO0VBQ0UseUJmOVVPO0FOdXpGckI7QXFCMStFWTtFQUNFLHlCZjlVTztBTjB6RnJCO0FxQnArRUk7RUFDRSxXQUFBO0VBQ0EsV0FBQTtFQUNBLGNBQUE7QXJCcytFTjs7QXFCaitFSTtFQUVFLHFCQUFBO0FyQm0rRU47O0FzQi93RkU7O0VBRUUsd0JBQUE7S0FBQSxxQkFBQTtVQUFBLGdCQUFBO0VBdkNGLGNBQUE7RUFDQSxzQkFBQTtFQUNBLFdBQUE7RUFDQSxpQkFMUztFQU1ULGdCQUFBO0VBQ0EsZWhCNlZjO0VnQjNWZCx5QmhCeVZhO0VnQnhWYixnQmhCRmM7RWdCR2QseUJoQmJNO0VnQmNOLGlEaEJ5VmE7RWdCdlZiLG9CaEI2VWtCO0VnQjVVbEIsZWhCNlVnQjtFZ0I1VWhCLG1CaEJWcUI7RWdCV3JCLGdCaEIvQmtCO0VnQmdDbEIsY2hCckJNO0VnQndCSiwyRGhCbVZlO0FObStFbkI7QXNCbHpGRTs7RUFDRSxhQUFBO0VBQ0EseUJoQndVaUI7RWdCdlVqQix5QmhCOUJJO0VnQitCSiwyQmhCeVVpQjtFZ0J0VWYsMkRoQndVYTtBTjIrRW5COztBc0JyeUZFO0VBQ0UsZUFBQTtBdEJ3eUZKO0FzQnR5Rkk7RUFDRSxZQUFBO0F0Qnd5Rk47O0FzQmp5Rkk7OztFQUVFLHlCaEJqRU87RWdCa0VQLG1CaEIyU2tCO0FOMC9FeEI7O0FzQmh5RkU7O0VBRUUsd0JBQUE7S0FBQSxxQkFBQTtVQUFBLGdCQUFBO0VBQ0EsZ0JoQjVEWTtBTisxRmhCOztBc0IveEZFO0VBQ0Usc0JBQUE7QXRCa3lGSjs7QXNCanhGRTtFQUNFLGNoQmhHVTtBTm8zRmQ7O0FzQnJ4RkU7RUFDRSxjaEJoR1U7QU5vM0ZkOztBdUIzN0ZFOzs7RUFHRSxnQkFBQTtBdkI4N0ZKOztBdUIxN0ZFOztFQUVFLHFCQUFBO0VBQ0Esd0JBQUE7RUFFQSxtQkFBQTtFQUNBLGtCakJ5WVc7RWlCeFlYLGdCQUFBO0F2QjQ3Rko7QXVCMTdGSTs7RUFDRSxlQUFBO0F2QjY3Rk47O0F1Qng3RkU7O0VBRUUsb0JBQUE7QXZCMjdGSjs7QXVCdjdGRTtFQUNFLFdBQUE7QXZCMDdGSjs7QXdCcjdGRTtFQWxCQSxjQUFBO0VBQ0EsU0FBQTtFQUVBLG1CbEI0WXFCO0VrQjNZckIsbUJsQjhEcUI7RWtCN0RyQixnQmxCNFl1QjtFa0IzWXZCLGNsQm1ETTtBTnU1RlI7QXdCMzdGSTtFQVRGLGdCQUFBO0VBQ0EsZ0JsQmlDa0I7RWtCaENsQixvQkFBQTtBeEJ1OEZGOztBeUJ6OUZFO0VBR0UsbUJBRmE7RUFHYixvQm5Cd1lpQjtFbUJ2WWpCLGtCbkJ3WWtCO0VtQnZZbEIsY25CdURJO0FObTZGUjs7QTBCMzlGRTtFQUNFLGFBQUE7RUFDQSxXQUFBO0VBQ0EsbUJwQmtZVztFb0IvWFQsb0JBQUE7QTFCNDlGTjtBMEJ4OUZNO0VBQ0Usc0JBQUE7QTFCMDlGUjtBMEJyOUZNO0VBQ0Usc0JBQUE7QTFCdTlGUjs7QTBCbDlGRTs7OztFQUNFLFNBQUE7RUFDQSxtQkFBQTtBMUJ3OUZKOztBMEJoOUZFO0VBRUUsZUFBQTtFQUNBLHlCcEJ3V2tCO0VvQnZXbEIsbUJwQmlCUztFb0JmVCxjcEJrQkk7RW9CakJKLGtCQUFBO0VBQ0EsbUJBQUE7RUFHRSxhQUFBO0VBQ0EsY0FBQTtFQUNBLG1CQUFBO0ExQis4Rk47QTBCdjhGTTtFQUNFLGVBQUE7QTFCeThGUjtBMEJ0OEZNO0VBQ0UsY0FBQTtBMUJ3OEZSOztBMEJuOEZFO0VBRUUsZ0JBQUE7RUFHRSxhQUFBO0VBQ0EsWUFBQTtBMUJtOEZOOztBMEIvN0ZFO0VBRUUsY0FBQTtFQUNBLGlCQUFBO0VBQ0Esa0JBQUE7RUFHRSxhQUFBO0VBQ0EsY0FBQTtBMUIrN0ZOO0EwQng3Rkk7Ozs7RUFPSSxtQkFBQTtFQUNBLFlBQUE7RUFLRixjQUFBO0VBQ0EsaUJBQUE7RUFDQSxlcEJnVFk7QU5tb0ZsQjs7QTJCOWdHRTtFQUNFLFNBQUE7RUFDQSxVQUFBO0VBQ0EsU0FBQTtBM0JpaEdKOztBMkI5Z0dFO0VBQ0UsZUFBQTtFQUNBLHFCQUFBO0EzQmloR0o7O0EyQjlnR0U7RUF4QkEsa0JyQm9ZZ0I7RXFCblloQixnQnJCa1lpQjtFcUJqWWpCLHlCckJnWWdCO0FOMHFGbEI7QTJCeGlHRTtFQUVFLFNBQUE7RUFDQSx1QkFBQTtFQUNBLG9CckI2WGE7QU40cUZqQjs7QTRCbi9GRTtFQWhFQSxpQkFGUztFQUdULGdCQUFBO0VBQ0EsZXRCZ2FjO0VzQjlaZCx3QkFBQTtLQUFBLHFCQUFBO1VBQUEsZ0JBQUE7RUFDQSx5QnRCMlphO0VzQjFaYixnQnRCZ0VjO0VzQi9EZCx5QnRCcURNO0VzQm5ETixvQnRCZ1prQjtFc0IvWWxCLGV0QmdaZ0I7RXNCL1loQixtQnRCeURxQjtFc0J4RHJCLGdCdEJvQ2tCO0VzQm5DbEIsY3RCOENNO0VzQjNDSiwyRHRCc1plO0VzQmxaZiw4QkFBQTtFQUNBLHVDQUFBO0VBQ0EsNEJBQUE7RUFDQSx3QkFBQTtFQUVBLHFCQUFBO0VyQjJHRix3T0FBQTtBUHE4RkY7QU9uOEZFO0VxQnRFQTtJckJ5RUksdVdBQUE7RVBvOEZKO0FBQ0Y7QTRCL2lHRTtFQUNFLGFBQUE7RUFDQSx5QnRCZ1lpQjtFc0IvWGpCLHlCdEIwQkk7RXNCekJKLDJCdEJpWWlCO0VzQjlYZiwyRHRCZ1lhO0FOK3FGbkI7QTRCMWlHRTtFQUNFLHlCdEJZUztFc0JYVCxtQnRCd1hvQjtBTm9yRnhCO0E0QnhpR0U7RUFDRSxhQUFBO0E1QjBpR0o7QTRCdmlHRTtFQUNFLFlBQUE7RUFDQSxzQkFBQTtBNUJ5aUdKO0E0QnZpR0U7RUFDRSxjQUFBO0VBQ0EsaUJBQUE7QTVCeWlHSjs7QTZCL2tHRTtFQUNFLHFCdkIyS3VCO0V1QjFLdkIsd0NBQUE7QTdCa2xHSjtBNkJobEdJO0VBQ0UsY3ZCdUtxQjtBTjI2RjNCO0E2Qm5sR0k7RUFDRSxjdkJ1S3FCO0FOMjZGM0I7O0E2QnhqR0k7RUFDRSxjdkI2SXFCO0FOODZGM0I7O0E2QnRqR0U7RUF6QkEsYUFBQTtFQUNBLG1CQUFBO0VBQ0EsbUJ2QnFXYTtFdUJuV2Isa0J2QitKc0I7RXVCOUp0QixpQnZCK0JtQjtFdUI5Qm5CLGN2QjRKa0I7QU5zN0ZwQjtBNkI1akdJO0VBQ0UsY0FBQTtBN0I4akdOOztBOEIvL0ZFO0VBeEZBLGNBQUE7RUFDQSxtQnhCc0JNO0V3QnJCTixxQkFBQTtBOUIybEdGO0E4QnhsR0k7RUFDRSxtQkFBQTtBOUIwbEdOOztBOEJubEdFO0VBQ0Usc0JBQUE7QTlCc2xHSjtBOEJubEdFO0VBQ0Usc0JBQUE7QTlCcWxHSjs7QThCdmdHRTtFQWxFQSxrQkFBQTtFQUNBLGNBQUE7RUFDQSxxQnhCMEl1QjtFd0J4SXZCLHlCeEIwSXlCO0V3QnpJekIsZ0JBQUE7RUFFQSxrQnhCa0kwQjtFd0JqSTFCLGNBQUE7RUFDQSxjYjJCa0I7QWpCZ2pHcEI7QThCemtHRTtFQUNFLGdDeEJrSXVCO0V3QmpJdkIsc0JBQUE7QTlCMmtHSjtBOEJ4a0dFO0VBRUUseUJ4QjdCUztBTnNtR2I7QThCcmtHSTtFQUNFLGtCQUFBO0VBQ0EsUUFBQTtFQUNBLFdBQUE7RUFDQSxtQkFBQTtFQUNBLFlBbkdtQjtBOUIwcUd6QjtBOEJwa0dJO0VBQ0UsWUFuR29CO0E5QnlxRzFCOztBOEIvaEdFO0VBM0JBLGFBQUE7RUFDQSxheEJvRzBCO0V3QmxHMUIseUJ4QmdHeUI7RXdCL0Z6QixnQkFBQTtFQUNBLHlCeEJ2RE07RXdCeUROLGN4QjFETTtBTnNuR1I7QThCMWpHRTtF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aEN3bEhKO0VnQzMyR0k7SUFuT0EsaUJBQUE7SUFDQSxzQkFBQTtFaENpbEhKO0VnQ2xySEU7SUFDRSxhQUFBO0VoQ29ySEo7RWdDcnJIRTtJQUNFLGFBQUE7RWhDdXJISjtBQUNGO0FnQ3gyR0k7RUF0TUEsZUFBQTtFQUNBLGlCMUI1SXdCO0FONnJINUI7QWdDemlISTtFQUNFLGFBQUE7QWhDMmlITjtBZ0M1aUhJO0VBQ0UsYUFBQTtBaEM4aUhOO0FnQ2hnSEk7RUFFSSxxQkFBQTtBaENpZ0hSO0FnQzkvR007Ozs7O0VBR0UscUIxQm1MWTtBTiswR3BCO0FnQ3ovR0k7RUFFSSxxQkFBQTtBaEMwL0dSO0FnQ3YvR007Ozs7O0VBR0Usb0IxQmtLWTtBTnkxR3BCO0FnQ2wvR0k7RUFFSSx3QkFBQTtBaENtL0dSO0FnQzcrR007Ozs7O0VBUUksbUJBQUE7RUFDQSxzQjFCd0lVO0UwQnZJVixrQkFBQTtBaEM0K0dWO0FnQ3QrR0k7RUFFSSx3QkFBQTtBaEN1K0dSO0FnQ2orR007Ozs7O0VBUUksbUJBQUE7RUFDQSxzQjFCZ0hVO0UwQi9HVixrQkFBQTtBaENnK0dWO0FnQ2ozR0k7RUEvRkYsbUIxQjhGNEI7RTBCN0Y1QixjQUFBO0FoQ205R0Y7QWdDLzJHTTtFQXJHSixtQjFCOEY0QjtFMEI3RjVCLGNBQUE7QWhDdTlHRjtBZ0M3MkdJO0VBdlhFLDJCQUFBO0FoQ3V1SE47QWdDL3RITTtFQUNFLGFBQUE7RUFDQSx5QkFBQTtBaENpdUhSO0FnQy90SFE7RUFDRSwyQkFBQTtBaENpdUhWO0FnQzd0SE07RUFDRSxjQUFBO0VBQ0EsaUIzQk5PO0FMcXVIZjtBZ0M3dEhRO0VBQ0UsaUIzQlRLO0FMd3VIZjtBZ0M1bEhROzs7OztFQVFJLGlCQUFBO0FoQzJsSFo7QWdDNTNHTTtFQTVRRixrQjFCdkl3QjtFMEJ3SXhCLGNBQUE7QWhDMm9ISjtBZ0N0dEhNO0VBQ0UsYUFBQTtFQUNBLHVCQUFBO0FoQ3d0SFI7QWdDdHRIUTtFQUNFLDJCQUFBO0FoQ3d0SFY7QWdDNzNHSTtFQXRJRixvQjFCeFJvQjtFMEIwUnBCLGlC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dkpFO0VBbkZBLGtCQUFBO0VBQ0EsU0FBQTtFQUNBLFdBQUE7RUFDQSxnQkFBQTtFQUNBLGExQ3lhc0I7RTBDdmF0Qix1QzFDc2F5QjtFMENyYXpCLGNBQUE7QWhEaTFKRjs7QWdEandKRTtFQTNFQSxXMUNvYXFCO0UwQ25hckIsYTFDa2FzQjtFMENqYXRCLGMxQ3ZCTTtFQ3NLTixrQkFBQTtFQUNBLFFBQUE7RUFDQSwyQkFBQTtBUGtzSkY7QU8vdUpFO0VBQ0UsVUFBQTtBUGl2Sko7QWdEbDFKRTtFQUdFLHVDMUN5WjZCO0FOeTdJakM7O0FnRDV3SkU7RUFoRUEsT0FBQTtBaERnMUpGOztBZ0Qzd0pFO0VBaEVBLFVBQUE7RUFDQSxRQUFBO0FoRCswSkY7O0FnRDN3SkU7RUEvREEsa0JBQUE7RUFDQSxrQjFDbVl3QjtFMENsWXhCLHFCMUNtWTJCO0UwQ2xZM0Isa0JBQUE7QWhEODBKRjtBT3J3SkU7RUFDRSxVQUFBO0FQdXdKSjtBZ0Q5MEpFO0VBQ0UsYTFDMlhvQjtFMEMxWHBCLGMxQzBYb0I7RTBDelhwQixjMUMwWGtCO0UwQ3hYbEIsa0JBQUE7RUFDQSx5QjFDOURVO0FONjRKZDtBZ0Q3MEpJO0VBQ0UseUIxQ2hFTTtBTis0Slo7QWdENTBKSTtFQUNFLHlCMUNwRU07QU5rNUpaOztBaUQxekpFO0VBcEZBLGNBQUE7RUFDQSxtQjNDRWM7QU5nNUpoQjtBTzF6SkU7RUFFRSxjQUFBO0VBQ0EsWUFBQTtFQUdFLGFBQUE7RUFDQSxRQUFBO0FQeXpKTjtBT3J6SkU7RUFDRSxXQUFBO0FQdXpKSjtBaUR2NUpFO0VBQ0UsdUIzQzBic0I7RTJDemJ0QixnQjNDQ1k7RTJDQVosbUIzQ29ibUI7RTJDOWFqQixhQUFBO0FqRG81Sk47QWlEbDVKTTtFQUVFLHFCQUFBO0FqRG01SlI7QUV2MEpRO0UrQ3pGTjtJQXVCTSxxQkFBQTtFakQ2NEpOO0FBQ0Y7QWlEeDRKRTs7RUFFRSxjQUFBO0VBQ0EsMkIzQzBac0I7RTJDelp0QixnQjNDOUJZO0UyQytCWixjM0MxQ0k7QU5vN0pSO0FpRHg0Skk7O0VBQ0UsbUIzQ2hETztBTjI3SmI7QWlEOTFKSTtFQWxDRiwyQjNDMFl3QjtFMkN6WXhCLG1CaENia0I7RWdDY2xCLGMzQ3pETTtFMkMwRE4sZUFBQTtBakRtNEpGO0FpRGgySkk7RUEzQkYsMkIzQytYd0I7RTJDOVh4QixjM0N0RVk7RTJDdUVaLG1CQUFBO0FqRDgzSkY7QWlENTNKRTtFQUNFLHVCQUFBO0FqRDgzSko7QWlEcDJKSTtFQWpCRiwyQjNDaVh3QjtFMkNoWHhCLFlBQUE7RUFDQSxjM0NuRk07QU4yOEpSOztBaURuMkpJOztFQUVFLHFCQUFBO0VBQ0Esb0JBQUE7RUFDQSxZQXpIc0I7QWpEKzlKNUI7O0FpRG4ySkk7O0VBRUUscUJBQUE7RUFDQSxtQkFBQTtFQUNBLFlBNUhrQjtBakRrK0p4Qjs7QWtEbGdLRTtFQW5DQSxZNUM2aEJnQjtFNEM1aEJoQixtQjVDaUZjO0U0Q2hGZCxnQjVDcUZjO0U0Q3BGZCx5QjVDdUVZO0FOaytKZDtBa0RwZ0tRO0VBQ0UseUI1Q3lCVztBTjYrSnJCO0FrRHZnS1E7RUFDRSx5QjVDeUJXO0FOZy9KckI7QWtEMWdLUTtFQUNFLHlCNUN5Qlc7QU5tL0pyQjtBa0Q3Z0tRO0VBQ0UseUI1Q3lCVztBTnMvSnJCO0FrRGhoS1E7RUFDRSx5QjVDeUJXO0FOeS9KckI7O0FrRDNnS0U7RUF4Q0Esa0JBQUE7RUFDQSxjQUFBO0VBQ0EsU0FBQTtFQUNBLFlBQUE7RUFDQSx5QmpDNEdrQjtBakIyOEpwQjs7QWtEOWdLRTtFM0M4TUEsa0JBQUE7RUFDQSxRQUFBO0VBQ0EsU0FBQTtFQUNBLGdDQUFBO0UyQ2hQQSxTQUFBO0VBQ0Esa0JBQUE7RUFDQSxpQkFBQTtFQUNBLGM1Q29ETTtFNENuRE4sbUJBQUE7QWxEcWpLRjs7QW1EeitKRTtFQXZGQSxrQkFBQTtFQUNBLGM3QzhzQmM7RTZDN3NCZCxtQkFBQTtFQUNBLHNCQUFBO0VBRUEseUI3Q3FEVztFNkNwRFgsZUFBQTtFQUNBLHlCQUFBO0tBQUEsc0JBQUE7VUFBQSxpQkFBQTtFQUNBLGtCQUFBO0FuRG1rS0Y7O0FtRC8rSkU7RUEvRUEsa0JBQUE7RUFDQSxNQUFBO0VBQ0EsT0FBQTtFQUVBLHFCQUFBO0VBQ0EsZUFBQTtFQUNBLGM3QzRyQmM7RTZDMXJCZCx5QjdDc0NZO0U2Q3JDWixnQzdDd3JCa0I7QU53NElwQjtBbUQ5aktFO0VBQ0UseUJBQUE7QW5EZ2tLSjs7QW1EeC9KRTtFQWxFQSxPQUFBO0VBQ0EsVUFBQTtFQUNBLFlBQUE7RUFFQSxxQkFBQTtFQUNBLGE3QytxQm9CO0U2QzlxQnBCLGM3QzZxQnFCO0U2QzNxQnJCLGdCN0NpQ2M7RTZDaENkLHlCbENpRWtCO0VrQ2hFbEIsZ0M3Q3FxQmtCO0U2Q3BxQmxCLDBCQUFBO0U1QzBMQSxrQkFBQTtFQUNBLFFBQUE7RUFDQSwyQkFBQTtBUG00SkY7QU9oN0pFO0VBQ0UsVUFBQTtBUGs3Sko7QW1EN2pLRTtFQUNFLDJDQUFBO0FuRCtqS0o7QW1ENWpLRTtFQUNFLHlCQUFBO0VBQ0EsZ0JBQUE7QW5EOGpLSjs7QW1EN2dLRTs7RUE1Q0EsYTdDMnBCd0I7RTZDMXBCeEIsbUJBQUE7QW5EOGpLRjs7QW1EN2dLRTtFQTdDQSxxQkFBQTtFQUNBLGE3QzZvQnNCO0U2QzVvQnRCLGVBQUE7RUFDQSxpQkFBQTtFQUNBLHVCQUFBO0FuRDhqS0Y7QW1ENWpLRTtFQUNFLE1BQUE7RUFDQSxhN0Nzb0JvQjtFNkNyb0JwQixnQkFBQTtBbkQ4aktKO0FtRDNqS0U7RUFDRSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxTQUFBO0VBQ0EsYTdDbW9CbUI7RTZDbG9CbkIsYzdDbW9Ca0I7RTZDbG9CbEIsMkJBQUE7QW5ENmpLSjs7QW9EOXBLRTtFQUNFLGtCQUFBO0FwRGlxS0o7O0FvRDlwS0U7RUFDRSxrQkFBQTtFQUNBLFVBQUE7RUFDQSwrQkFBQTtBcERpcUtKOztBb0Q5cEtFO0VBQ0UsZUFBQTtFQUNBLFVBQUE7RUFDQSxXQUFBO0FwRGlxS0o7QW9EL3BLSTtFQUNFLE1BQUE7QXBEaXFLTjtBb0Q5cEtJO0VBQ0UsU0FBQTtBcERncUtOOztBb0Q1cEtFO0VBQ0Usa0JBQUE7RUFDQSxXQUFBO0VBQ0EsVUFBQTtBcEQrcEtKO0FvRDdwS0k7RUFDRSxTQUFBO0FwRCtwS047O0FHNWpLRTtFQUNFLGVBQUE7RUFDQSxXQUFBO0VBQ0Esa0JBQUE7QUgraktKO0FHN2pLSTtFQUNFLGtCQUFBO0VBQ0EsaUNBQUE7QUgraktOO0FHNWpLSTtFQUNFLGtCQUFBO0FIOGpLTjs7QUd6aktFO0VBOUZBLGVBQUE7RUFDQSxNQUFBO0VBQ0EsUUFBQTtFQUNBLFNBQUE7RUFDQSxPQUFBO0VBQ0EsYUcrcEJjO0VIN3BCZCxhQUFBO0VBQ0Esd0NHNnBCMEI7RUg1cEIxQixnQkFBQTtFQUNBLGlDQUFBO0FIMHBLRjs7QUdqa0tFO0VBQ0Usa0JBQUE7RUFDQSxVQUFBO0VBQ0Esa0JBQUE7RUFDQSxpQkFBQTtFQUNBLGdCQUFBO0VBQ0EsaUNBQUE7RUExRkYsYUFBQTtFQUVBLDJCQUFBO0VBRUEsYUFBQTtFQUNBLGFHYWU7RUhYZix5Qkc0b0JjO0VIM29CZCxnQkdjYztFSGJkLHlCR0dNO0FOeXBLUjtBTzloS0U7RUFDRSxVQUFBO0FQZ2lLSjtBRTVqS1E7RUN4Qk47SUF0RUUsYUFBQTtFSDhwS0Y7QUFDRjtBRzNwS0U7RUFDRSxZQUFBO0FINnBLSjtBR3pwS0U7RUFDRSxnQkFBQTtBSDJwS0o7QUV2a0tRO0VDeEJOO0lBOUNFLFlHMG1CVztJSHptQlgsZ0JHeENXO0VOeXJLYjtBQUNGO0FHemxLSTtFQUNFLFVBQUE7QUgybEtOO0FFaGxLUTtFQ1BKO0lBL0RBLFVBK0RzQztJQTlEdEMsZ0JHeENXO0VOa3NLYjtBQUNGO0FFdGxLUTtFQ05KO0lBaEVBLFVBZ0VzQztJQS9EdEMsZ0JHeENXO0VOd3NLYjtBQUNGO0FFNWxLUTtFQ0xKO0lBakVBLFVBaUVzQztJQWhFdEMsZ0JHeENXO0VOOHNLYjtBQUNGO0FHcG1LSTtFQTdERixNQUFBO0VBQ0EsUUFBQTtFQUNBLFNBQUE7RUFDQSxPQUFBO0VBRUEsV0FBQTtFQUNBLGVBQUE7RUFDQSxZQUFBO0VBQ0EsZ0JBQUE7RUFDQSxjQUFBO0VBRUEsU0FBQTtFQUNBLGdCQUFBO0FIa3FLRjtBRS9tS1E7RUN4Qk47SUF2Q0EsTUFBQTtJQUNBLFFBQUE7SUFDQSxTQUFBO0lBQ0EsT0FBQTtJQUVBLFdBQUE7SUFDQSxlQUFBO0lBQ0EsWUFBQTtJQUNBLGdCQUFBO0lBQ0EsY0FBQTtJQUVBLFNBQUE7SUFDQSxnQkFBQTtFSGdyS0E7QUFDRjtBR3huS0k7RUFDRSxlQUFBO0FIMG5LTjs7QXFEcmtLRTtFQWpLQSxrQkFBQTtFQUNBLG1CL0NTYztFK0NSZCxVQUFBO0VBR0EsbUJBQUE7RUFDQSxpQkFBQTtFQUNBLGMvQ0ZNO0UrQ0lOLHlCQUFBO0tBQUEsc0JBQUE7VUFBQSxpQkFBQTtFQTBKRSxZL0NpZ0JZO0FONmtKaEI7O0FxRDFrS0U7RUF6SkEsa0JBQUE7RUFDQSxnQkFBQTtFQUNBLFVBQUE7QXJEdXVLRjs7QXFEM2tLRTtFQWxKQSxrQkFBQTtFQUNBLGNBQUE7RUFDQSxXQVBlO0VBUWYsWS9DdW9CYztFK0Nyb0JkLGdCL0NoQmM7RStDaUJkLG1CL0M5Qlk7RStDK0JaLDhCL0M0b0J5QjtFK0N6b0J6QixvQkFBQTtFQUNBLGNBQUE7RUFFQSxlQUFBO0FyRDZ0S0Y7QXFEMXRLRTtFQUNFLFNBQUE7QXJENHRLSjtBcUR4dEtFO0VBQ0Usa0JBQUE7RUFDQSxZL0MwbkJtQjtFK0N6bkJuQixhL0N5bkJtQjtFK0N2bkJuQixjQUFBO0VBQ0EsYUE5QmE7RUErQmIsY0FoQ2M7RUFrQ2QsK0JBQUE7RUFDQSxnQi9DMUNZO0UrQzJDWixtQi9DckRJO0UrQ3NESiw4Qi9Da25CdUI7RStDam5CdkIsV0FBQTtBckR3dEtKO0FxRHB0S0U7RUFDRSxtQnBDakJnQjtBakJ1dUtwQjtBcURwdEtJO0VBQ0UsYUE1Q21CO0FyRGt3S3pCO0FxRGh0S0U7RUFDRSxvQ0EzSXNCO0FyRDYxSzFCO0FxRGh0S0k7RUFDRSxtQi9DekVFO0FOMnhLUjtBcUQ5c0tFO0VBQ0UscUNBM0k2QjtBckQyMUtqQztBcUQzc0tFO0VBQ0UsbUJBakdxQjtFQWtHckIsWUF0R3NCO0FyRG16SzFCO0FPdnFLRTtFQUNFLFVBQUE7QVB5cUtKOztBcUR6bktFO0VBN0VBLGtCQUFBO0VBQ0EsUUFBQTtFQUNBLDJCQUFBO0FyRDBzS0Y7O0FxRDFuS0U7RUEzRUEsUUFBQTtFQUNBLGFBQUE7QXJEeXNLRjtBcUR2c0tFO0VBQ0UsY0FBQTtBckR5c0tKOztBcUQ1bktFO0VBdkVBLFVBQUE7QXJEdXNLRjtBcURyc0tFO0VBQ0UsYUFBQTtBckR1c0tKOztBcUQ3bktFO0VBdkRBLGMvQzBoQm1CO0FOOHBKckI7QXFEdHJLRTtFQUNFLFdBUmE7RUFTYixjL0NzaEJpQjtFK0NyaEJqQixtQkFtRHFCO0FyRHFvS3pCO0FxRHJyS0U7RUFDRSxZL0N1aEJtQjtFK0N0aEJuQixhL0NzaEJtQjtFK0NyaEJuQixXQWZhO0VBZ0JiLFlBZmM7QXJEc3NLbEI7QXFEcHJLRTtFQUNFLGFBbEJxQjtBckR3c0t6Qjs7QXFEM29LRTtFQTNEQSxlL0MyaEJvQjtBTitxSnRCO0FxRHhzS0U7RUFDRSxhQVJhO0VBU2IsZS9DdWhCa0I7RStDdGhCbEIsa0JBdURxQjtBckRtcEt6QjtBcUR2c0tFO0VBQ0UsWS9DdWhCbUI7RStDdGhCbkIsYS9Dc2hCbUI7RStDcmhCbkIsY0FmYTtFQWdCYixlQWZjO0FyRHd0S2xCO0FxRHRzS0U7RUFDRSxVQWxCcUI7QXJEMHRLekI7O0FxRHpwS0U7RUEvREEsYy9DNGhCb0I7QU5nc0p0QjtBcUQxdEtFO0VBQ0UsV0FSYTtFQVNiLGMvQ3doQmtCO0UrQ3ZoQmxCLGVBMkRxQjtBckRpcUt6QjtBcUR6dEtFO0VBQ0UsWS9DdWhCbUI7RStDdGhCbkIsYS9Dc2hCbUI7RStDcmhCbkIsV0FmYTtFQWdCYixZQWZjO0FyRDB1S2xCO0FxRHh0S0U7RUFDRSxhQWxCcUI7QXJENHVLekI7O0FzRGpwS0U7RUE5R0EseUJBQUE7RUFDQSxXQUFBO0VBQ0EsbUJoRDlHYztFZ0QrR2QsZ0JoRDFHYztBTjYyS2hCO0FzRDMxS0U7OztFQUdFLDBDaERncEJXO0VnRC9vQlgseUJoRGhDSTtBTjYzS1I7O0FzRHoxS0U7RUFDRSxpQ2hEMm9CWTtFZ0Qxb0JaLGlCaEQ3QmlCO0FOeTNLckI7O0FzRHgxS0U7RUFDRSx1Q2hENG9Cb0I7RWdEM29CcEIsY2hEN0NJO0FOdzRLUjs7QXNEdjFLRTtFQUNFLG9DaER3b0JvQjtFZ0R2b0JwQixjaERuREk7QU42NEtSOztBc0RuMUtJOztFQUNFLHVCQUFBO0F0RHUxS047QXNEbjFLSTs7OztFQUVFLGlDaERnbkJVO0VnRC9tQlYsaUJoRHhEZTtFZ0R5RGYsZ0JBQUE7QXREdTFLTjs7QXNEajFLSTs7RUFFRSxpQ2hEc21CVTtBTjh1SmhCOztBc0R6NUtNO0VBQ0UsZ0JBQUE7RUFDQSwwQ2hEOHFCbUI7QU44dUozQjs7QXNEOTBLTTtFQUNFLHlCaER0RkE7QU51NktSO0FzRGw1S0U7RUFDRSxpRGhEeXBCVztFZ0R4cEJYLHlCaER2Qkk7QU4yNktSOztBRTMwS1E7RW9EMEdKO0lBQ0UsYUFBQTtFdERxdUtKO0VzRGp1S0E7SUFDRSxhQUFBO0V0RG11S0Y7RXNEaHVLQTs7O0lBR0UsY0FBQTtFdERrdUtGO0VzRC90S0E7SUFDRSxhQUFBO0V0RGl1S0Y7QUFDRjs7QXNEbnRLRTtFQXZHQSxjQUFBO0VBQ0EsV0FBQTtFQUNBLGdCQUFBO0F0RDh6S0Y7O0FzRHZ6S0k7RUFDRSw2Q2hENGlCaUI7QU44d0p2QjtBc0RwektJO0VBQ0UsMENoRHVpQmlCO0FOK3dKdkI7QXNEaHpLSTtFQUNFLDBDaER3aEJZO0FOMHhKbEI7QXNEM3lLTTtFQUNFLDZDaERpaEJpQjtBTjR4SnpCOztBc0Q5dEtFO0VBQ0UsZ0JBQUE7QXREaXVLSjs7QXVEdjVLRTtFQWxGQSxTakR5dEJXO0VpRHh0QlgseUJBQUE7RUFDQSxtQmpEb0JNO0VpRG5CTixxQkFBQTtBdkQ2K0tGO0FPLzNLRTtFQUVFLGNBQUE7RUFDQSxZQUFBO0VBR0UsYUFBQTtFQUNBLFFBQUE7QVA4M0tOO0FPMTNLRTtFQUNFLFdBQUE7QVA0M0tKOztBdURoL0tFO0VBQ0UsY0FBQTtFQUNBLFdBQUE7RUFDQSxXQUFBO0F2RG0vS0o7O0F1RGw2S0k7RUFDRSxVQUFBO0F2RHE2S047QXVEbjZLTTtFQUNFLHVCQUFBO0F2RHE2S1I7O0F1RC81S0U7RUFDRSxtQnRDdkNnQjtBakJ5OEtwQjtBdURoNktJO0VBQ0UsY0FBQTtBdkRrNktOO0F1RGg2S007RUFFRSxxQ0FBQTtBdkRpNktSOztBdUQ1NUtFO0VBM0ZBLFdBQUE7QXZEMi9LRjtBdUR6L0tFO0VBQ0UsY0FBQTtFQUNBLHVCakRtc0JlO0VpRGxzQmYsa0JqRGdzQmlCO0VpRC9yQmpCLGNBQUE7RUFDQSxjdENpQ2dCO0FqQjA5S3BCO0FPMTRLRTtFQUNFLFVBQUE7QVA0NEtKO0F1RDMvS0k7RUFDRSxtQmpEZEU7RWlEZUYsaUNBQUE7QXZENi9LTjtBdUQxL0tJO0VBRUUsbUJqRHhCTztFaUR5QlAsY3RDc0JjO0FqQnErS3BCOztBdUQ5NktFO0VBbEVBLHlCQUFBO0VBQ0EsYUFBQTtFQUNBLG1CakRsQ007RWlEbUNOLGNqRHBDTTtFaURxQ04seUJBQUE7QXZEby9LRjs7QXVEbDdLRTtFQTNEQSx5QkFBQTtFQUNBLGNBQUE7QXZEaS9LRjs7QXVEbjdLRTtFQXZEQSxhQUFBO0VBQ0EsYWpEMnBCb0I7QU5tMUp0QjtBdUQ1K0tFO0VBQ0UsY0FBQTtBdkQ4K0tKOztBd0Q3akxFO0VBekJBLHFCQUFBO0VBQ0EsZUFBQTtFQUNBLG1CbERvRGM7RWtEbERkLHlCbERpd0JpQjtFa0Rod0JqQixnQmxEc0RjO0VrRHJEZCwyQ2xEaXdCaUI7RWtEL3ZCakIsY0FBQTtBeER3bExGOztBd0Rua0xFO0VBakJBLHFDbEQ2dkJxQjtBTjIxSnZCO0F3RHRsTEU7RUFFRSwrQ2xEd3ZCcUI7QU4rMUp6QjtBd0RwbExFO0VBQ0UsZ0JBQUE7QXhEc2xMSjs7QXlEdm1MRTtFQUNFLGVuRDZ3QmU7RW1ENXdCZixtQlZ2Q2E7RVV3Q2IsY25EMkNJO0VtRHhDRixhQUFBO0VBQ0EsMkJBQUE7RUFDQSxtQkFBQTtBekR3bUxOO0F5RGxtTEk7RUFDRSxvQm5EbXdCa0I7RW1EbHdCbEIscUJuRGt3QmtCO0FOazJKeEI7O0F5RC9sTEk7O0VBRUUsYUFBQTtBekRrbUxOOztBeUQvbExJO0VBQ0UsaUJBQUE7QXpEa21MTjs7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QkFBQTtFNURvMUxKO0U0RGwxTEU7SUFDRSx3QkFBQTtFNURvMUxKO0FBQ0Y7QTREaDFMRTtFQUNFLGFBQUE7QTVEazFMSjs7QTREaDFMRTtFQUNFO0lBQ0UseUJBQUE7RTVEbTFMSjtFNERqMUxFO0lBQ0Usd0JBQUE7RTVEbTFMSjtBQUNGO0E0RC8wTEU7RUFDRSxhQUFBO0E1RGkxTEo7O0E0RC8wTEU7RUFDRSxjQUFBO0E1RGsxTEo7O0E0RGgxTEU7RUFDRSxhQUFBO0E1RG0xTEo7O0E2RHg3TEk7RUNuQkYsMkJBaEJRO0E5RCs5TFY7O0E2RDU3TEk7RUNuQkYseUJBaEJRO0E5RG0rTFY7O0E2RGg4TEk7RUNuQkYsdUJBaEJRO0E5RHUrTFY7O0E2RHA4TEk7RUNuQkYsOEJBaEJRO0E5RDIrTFY7O0E2RHg4TEk7RUNuQkYsNkJBaEJRO0E5RCsrTFY7O0E2RG44TFE7RUM1Qk4sMkJBaEJRO0E5RG0vTFY7O0E2RHY4TFE7RUM1Qk4seUJBaEJRO0E5RHUvTFY7O0E2RDM4TFE7RUM1Qk4sdUJBaEJRO0E5RDIvTFY7O0E2RHQ4TEk7RUNwQ0YsdUJBUlE7QTlEcy9MVjs7QTZEdDhMSTtFQ3hCRixzQkFQUTtBOUR5K0xWOztBNkQ5OExJO0VDcENGLHFCQVJRO0E5RDgvTFY7O0E2RDk4TEk7RUN4QkYsb0JBUFE7QTlEaS9MVjs7QTZEdDlMSTtFQ3BDRixtQkFSUTtBOURzZ01WOztBNkR0OUxJO0VDeEJGLGtCQVBRO0E5RHkvTFY7O0E2RDk5TEk7RUNwQ0Ysb0JBUlE7QTlEOGdNVjs7QTZEOTlMSTtFQ3hCRixtQkFQUTtBOURpZ01WOztBNkQ1OUxFO0VDL0NBLHVCQWhCUTtFQWlCUixtQkFSUTtFRHdETixxQkFBQTtBN0RnK0xKOztBNkQxOUxNO0VDaENKLFFEK0JlO0E3RCs5TGpCOztBNkQ5OUxNO0VDaENKLFFEK0JlO0E3RG0rTGpCOztBNkRsK0xNO0VDaENKLFFEK0JlO0E3RHUrTGpCOztBNkR0K0xNO0VDaENKLFFEK0JlO0E3RDIrTGpCOztBNkQxK0xNO0VDaENKLFFEK0JlO0E3RCsrTGpCOztBNkQ5K0xNO0VDaENKLFFEK0JlO0E3RG0vTGpCOztBRTc2TFE7RTJEckVGO0lDaENKLFFEK0JlO0U3RHcvTGY7RTZEdi9MSTtJQ2hDSixRRCtCZTtFN0QyL0xmO0U2RDEvTEk7SUNoQ0osUUQrQmU7RTdEOC9MZjtFNkQ3L0xJO0lDaENKLFFEK0JlO0U3RGlnTWY7RTZEaGdNSTtJQ2hDSixRRCtCZTtFN0RvZ01mO0U2RG5nTUk7SUNoQ0osUUQrQmU7RTdEdWdNZjtBQUNGO0FFbDhMUTtFMkRyRUY7SUNoQ0osUUQrQmU7RTdENGdNZjtFNkQzZ01JO0lDaENKLFFEK0JlO0U3RCtnTWY7RTZEOWdNSTtJQ2hDSixRRCtCZTtFN0RraE1mO0U2RGpoTUk7SUNoQ0osUUQrQmU7RTdEcWhNZjtFNkRwaE1JO0lDaENKLFFEK0JlO0U3RHdoTWY7RTZEdmhNSTtJQ2hDSixRRCtCZTtFN0QyaE1mO0FBQ0Y7QTZEeG5NRTtFQ1lBLGFBQUE7QTlEK21NRjs7QTZEdm5NRTtFQUNFLGNBQUE7QTdEMG5NSjs7QTZEdm5NRTtFQUNFLGNBQUE7QTdEMG5NSjs7QTZEdm5NRTtFQUNFLGNBQUE7QTdEMG5NSjs7QTZEdG5NSTtFQ3NERixtQkFwRW1CO0E5RHdvTXJCOztBNkQxbk1JO0VDc0RGLDJCQXBFbUI7QTlENG9NckI7O0E2RDluTUk7RUNzREYsc0JBcEVtQjtBOURncE1yQjs7QTZEbG9NSTtFQ3NERiw4QkFwRW1CO0E5RG9wTXJCOztBRXIvTFE7RTJEdklFO0lDZlIsYUFBQTtFOURncE1BO0U2RDduTVE7SUFDRSxjQUFBO0U3RCtuTVY7RTZENW5NUTtJQUNFLGNBQUE7RTdEOG5NVjtFNkQzbk1RO0lBQ0UsY0FBQTtFN0Q2bk1WO0U2RHpuTVU7SUMyQlYsbUJBcEVtQjtFOURxcU1uQjtFNkQ1bk1VO0lDMkJWLDJCQXBFbUI7RTlEd3FNbkI7RTZEL25NVTtJQzJCVixzQkFwRW1CO0U5RDJxTW5CO0U2RGxvTVU7SUMyQlYsOEJBcEVtQjtFOUQ4cU1uQjtBQUNGO0FFaGhNUTtFMkR2SUU7SUNmUixhQUFBO0U5RDBxTUE7RTZEdnBNUTtJQUNFLGNBQUE7RTdEeXBNVjtFNkR0cE1RO0lBQ0UsY0FBQTtFN0R3cE1WO0U2RHJwTVE7SUFDRSxjQUFBO0U3RHVwTVY7RTZEbnBNVTtJQzJCVixtQkFwRW1CO0U5RCtyTW5CO0U2RHRwTVU7SUMyQlYsMkJBcEVtQjtFOURrc01uQjtFNkR6cE1VO0lDMkJWLHNCQXBFbUI7RTlEcXNNbkI7RTZENXBNVTtJQzJCViw4QkFwRW1CO0U5RHdzTW5CO0FBQ0Y7QStEeHNNSTtFQ2xCRiwwQkFBQTtFQUNBLGtDQUFBO0VDaURFLDRCQUZVO0VDdkJSLHVDQUFBO0VBR0YsMkJBQUE7QWxFcXNNSjs7QStEbnNNSTtFRW9CQSx3QkFGVTtBakVxck1kOztBK0RudE1JO0VDbEJGLDBCQUFBO0VBQ0Esa0NBQUE7RUNpREUsNEJBRlU7RUN2QlIsdUNBQUE7RUFHRiwyQkFBQTtBbEVpdE1KOztBK0Qvc01JO0VFb0JBLHdCQUZVO0FqRWlzTWQ7O0ErRC90TUk7RUNsQkYsMEJBQUE7RUFDQSxrQ0FBQTtFQ2lERSwyQkFGVTtFQ3ZCUix1Q0FBQTtFQUdGLDJCQUFBO0FsRTZ0TUo7O0ErRDN0TUk7RUVvQkEsd0JBRlU7QWpFNnNNZDs7QStEM3VNSTtFQ2xCRiwwQkFBQTtFQUNBLGtDQUFBO0VDaURFLDJCQUZVO0VDdkJSLHVDQUFBO0VBR0YsMkJBQUE7QWxFeXVNSjs7QStEdnVNSTtFRW9CQSx3QkFGVTtBakV5dE1kOztBK0R2dk1JO0VDbEJGLDBCQUFBO0VBQ0Esa0NBQUE7RUNpREUsd0JBRlU7RUN2QlIsdUNBQUE7RUFHRiwyQkFBQTtBbEVxdk1KOztBK0Rudk1JO0VFb0JBLDJCQUZVO0FqRXF1TWQ7O0ErRG53TUk7RUNsQkYsMEJBQUE7RUFDQSxrQ0FBQTtFQ2lERSx3QkFGVTtFQ3ZCUix1Q0FBQTtFQUdGLDJCQUFBO0FsRWl3TUo7O0ErRC92TUk7RUVvQkEsMkJBRlU7QWpFaXZNZDs7QStEL3dNSTtFQ2xCRiwwQkFBQTtFQUNBLGtDQUFBO0VDaURFLHdCQUZVO0VDdkJSLHVDQUFBO0VBR0YsMkJBQUE7QWxFNndNSjs7QStEM3dN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QUE7QXBFdzlNTjs7QStEcDlNSTtFRW9CQSw4Q0FMcUI7RUdUbkIsVUFBQTtBcEVtOU1OOztBK0RyK01JO0VDbEJGLDBCQUFBO0VBQ0Esa0NBQUE7RUNpREUscUJBRlU7RUkzQlIsdUNBQUE7RUFDQSxVQUFBO0FyRXkrTU47O0ErRGorTUk7RUVvQkEsbUJBRlU7RUloQlIsVUFBQTtBckVvK01OOztBK0RsL01JO0VDbEJGLDBCQUFBO0VBQ0Esa0NBQUE7RUNpREUscUJBRlU7RUkzQlIsdUNBQUE7RUFDQSxVQUFBO0FyRXMvTU47O0ErRDkrTUk7RUVvQkEsbUJBRlU7RUloQlIsVUFBQTtBckVpL01OOztBK0QvL01JO0VDbEJGLDBCQUFBO0VBQ0Esa0NBQUE7RUNpREUsbUJBRlU7RUkzQlIsdUNBQUE7RUFDQSxVQUFBO0FyRW1nTk47O0ErRDMvTUk7RUVvQkEscUJBRlU7RUloQlIsVUFBQTtBckU4L01OOztBK0Q1Z05JO0VDbEJGLDBCQUFBO0VBQ0Esa0NBQUE7RUNpREUsbUJBRlU7RUkzQlIsdUNBQUE7RUFDQSxVQUFBO0FyRWdoTk47O0ErRHhnTkk7RUVvQkEscUJBRlU7RUloQlIsVUFBQTtBckUyZ05OOztBK0R6aE5JO0VDbEJGLDBCQUFBO0VBQ0Esa0NBQUE7RUNpREUsNEJBRlU7RUszQlIsdUNBQUE7RUFDQSxVQUFBO0F0RTZoTk47O0ErRHJoTkk7RUVvQkEsb0JBRlU7RUtoQlIsVUFBQTtBdEV3aE5OOztBK0R0aU5JO0VDbEJGLDBCQUFBO0VBQ0Esa0NBQUE7RUNpREUsb0JBRlU7RUszQlIsdUNBQUE7RUFDQSxVQUFBO0F0RTBpTk47O0ErRGxpTkk7RUVvQkEsMkJBRlU7RUtoQlIsVUFBQTtBdEVxaU5OOztBK0Ruak5JO0VDbEJGLDBCQUFBO0VBQ0Esa0NBQUE7RUNpREUsMkJBRlU7RUszQlIsdUNBQUE7RUFDQSxVQUFBO0F0RXVqTk47O0ErRC9pTkk7RUVvQkEsb0JBRlU7RUtoQlIsVUFBQTtBdEVrak5OOztBK0Roa05JO0VDbEJGLDBCQUFBO0VBQ0Esa0NBQUE7RUNpREUsb0JBRlU7RUszQlIsdUNBQUE7RUFDQSxVQUFBO0F0RW9rTk47O0ErRDVqTkk7RUVvQkEsNEJBRlU7RUtoQlIsVUFBQTtBdEUrak5OOztBZ0UzaU5NO0VBQVkscUNBQUE7QWhFK2lObEI7O0FnRS9pTk07RUFBWSxxQ0FBQTtBaEVtak5sQjs7QWdFN2lOTTtFQUFZLDZDQUFBO0FoRWlqTmxCOztBZ0Vqak5NO0VBQVksMkNBQUE7QWhFcWpObEI7O0FnRXJqTk07RUFBWSw4Q0FBQTtBaEV5ak5sQjs7QWdFempOTTtFQUFZLCtDQUFBO0FoRTZqTmxCOztBZ0U3ak5NO0VBQVksa0RBQUE7QWhFaWtObEI7O0FnRWprTk07RUFBWSw4RUFBQTtBaEVxa05sQjs7QWdFcmtOTTtFQUFZLCtFQUFBO0FoRXlrTmxCOztBZ0V6a05NO0VBQVksOEVBQUE7QWhFNmtObEI7O0FnRXZrTk07RUFBa0Isa0NBQUE7QWhFMmtOeEI7O0FnRTNrTk07RUFBa0Isa0NBQUE7QWhFK2tOeEI7O0FpRXhvTkU7RUFHSTtJQUdJLHlCQUFBO0VqRXVvTlI7RWlFMW9OSTtJQUdJLDBCQUFBO0VqRTBvTlI7QUFDRjtBZ0VobE5FO0VPdEVBLHVCQUFBO0F2RXlwTkY7O0FpRXBwTkU7RUFHSTtJQUdJLHlCQUFBO0VqRW1wTlI7RWlFdHBOSTtJQUdJLG9CQUFBO0VqRXNwTlI7QUFDRjtBZ0UzbE5FO0VPdkVBLDZCQUFBO0F2RXFxTkY7O0FpRWhxTkU7RUFHSTtJQUdJLG9CQUFBO0VqRStwTlI7RWlFbHFOSTtJQUdJLHdCQUFBO0VqRWtxTlI7QUFDRjtBZ0V0bU5FO0VPeEVBLDZCQUFBO0F2RWlyTkY7O0FpRTVxTkU7RUFHSTtJQUdJLHVCQUFBO0VqRTJxTlI7RWlFOXFOSTtJQUdJLHdCQUFBO0VqRThxTlI7RWlFanJOSTtJQUdJLG9CQUFBO0VqRWlyTlI7QUFDRjtBZ0Vwbk5FO0VPekVBLDJCQUFBO0F2RWdzTkY7O0FnRXJuTkU7Ozs7RUFJRSx5QkFBQTtBaEV3bk5KOztBZ0Vubk5FO0VBQVksbUNBQUE7QWhFdW5OZDs7QWdFbm5OTTtFQUFZLG9DQUFBO0FoRXVuTmxC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O0VBQ0ksa0RBQUE7QTVIODRlaEI7O0E0SDE0ZVEsdUJBQUE7QUFDQTtFQUNJLGtCQUFBO0VBQ0Esa0JBQUE7RUFDQSxtQkFBQTtFQUNBLG1CQUFBO0VBQ0EsY0FBQTtBNUg2NGVaOztBNEgxNGVRO0VBQ0ksY0FBQTtFQUNBLG1CQUFBO0E1SDY0ZVo7O0E0SDE0ZVEsOEJBQUE7QUFDQSw4QkFBQTtBQUNBO0VBQ0k7SUFDSSxxQ0FBQTtFNUg2NGVkO0FBQ0Y7QTRIMTRlUTtFQUNJO0lBQXVCLGVBQUE7RTVINjRlakM7RTRINTRlVTtJQUFjLHNCQUFBO0U1SCs0ZXhCO0U0SDk0ZVU7SUFBZSwwQkFBQTtFNUhpNWV6QjtFNEhoNWVVO0lBQWUsMEJBQUE7RTVIbTVlekI7RTRIbDVlVTtJQUFxQixzQkFBQTtFNUhxNWUvQjtFNEhwNWVVO0lBQ0ksbUJBQUE7SUFDQSxlQUFBO0lBQ0EsV0FBQTtFNUhzNWVkO0U0SHA1ZVU7SUFBZSwwQkFBQTtFNUh1NWV6QjtBQUNGIiwiZmlsZSI6ImFwcC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKipcbiAqIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4gKiBWZXJzaW9uIDYuOS4wXG4gKiBodHRwczovL2dldC5mb3VuZGF0aW9uXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcbiAqL1xuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAucmV2ZWFsLmxhcmdlLCAucmV2ZWFsLnNtYWxsLCAucmV2ZWFsLnRpbnksIC5yZXZlYWwge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cbi8qISBub3JtYWxpemUuY3NzIHY4LjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xufVxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xufVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDEwMCU7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICBtYXJnaW46IDA7XG59XG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG5idXR0b24sXG5bdHlwZT1idXR0b25dLFxuW3R5cGU9cmVzZXRdLFxuW3R5cGU9c3VibWl0XSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1idXR0b25dOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9cmVzZXRdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9c3VibWl0XTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9YnV0dG9uXTotbW96LWZvY3VzcmluZyxcblt0eXBlPXJlc2V0XTotbW96LWZvY3VzcmluZyxcblt0eXBlPXN1Ym1pdF06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xufVxuXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZGlzcGxheTogdGFibGU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbn1cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cblt0eXBlPWNoZWNrYm94XSxcblt0eXBlPXJhZGlvXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDA7XG59XG5cblt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5bdHlwZT1zZWFyY2hdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xufVxuXG5bdHlwZT1zZWFyY2hdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIGZvbnQ6IGluaGVyaXQ7XG59XG5cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbltkYXRhLXdoYXRpbnRlbnQ9bW91c2VdICosIFtkYXRhLXdoYXRpbnRlbnQ9bW91c2VdICo6Zm9jdXMsXG5bZGF0YS13aGF0aW50ZW50PXRvdWNoXSAqLFxuW2RhdGEtd2hhdGludGVudD10b3VjaF0gKjpmb2N1cyxcbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gKixcbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gKjpmb2N1cyxcbltkYXRhLXdoYXRpbnB1dD10b3VjaF0gKixcbltkYXRhLXdoYXRpbnB1dD10b3VjaF0gKjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbltkcmFnZ2FibGU9ZmFsc2VdIHtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xufVxuXG4uZm91bmRhdGlvbi1tcSB7XG4gIGZvbnQtZmFtaWx5OiBcInNtYWxsPTBlbSZtZWRpdW09NDAuMDYyNWVtJmxhcmdlPTY0ZW0meGxhcmdlPTc1ZW0meHhsYXJnZT05MGVtXCI7XG59XG5cbmh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBmb250LXNpemU6IDEwMCU7XG59XG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgXCJSb2JvdG9cIiwgXCJPeHlnZW5cIiwgXCJVYnVudHVcIiwgXCJDYW50YXJlbGxcIiwgXCJGaXJhIFNhbnNcIiwgXCJEcm9pZCBTYW5zXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG5pbWcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xufVxuXG50ZXh0YXJlYSB7XG4gIGhlaWdodDogYXV0bztcbiAgbWluLWhlaWdodDogNTBweDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuc2VsZWN0IHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi5tYXBfY2FudmFzIGltZyxcbi5tYXBfY2FudmFzIGVtYmVkLFxuLm1hcF9jYW52YXMgb2JqZWN0LFxuLm1xYS1kaXNwbGF5IGltZyxcbi5tcWEtZGlzcGxheSBlbWJlZCxcbi5tcWEtZGlzcGxheSBvYmplY3Qge1xuICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSBidXR0b24ge1xuICBvdXRsaW5lOiAwO1xufVxuYnV0dG9uIHtcbiAgcGFkZGluZzogMDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGN1cnNvcjogYXV0bztcbn1cblxucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG59XG5cbi5pcy12aXNpYmxlIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cblxuLmlzLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmdyaWQtY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdyaWQtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gIH1cbn1cbi5ncmlkLWNvbnRhaW5lci5mbHVpZCB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdyaWQtY29udGFpbmVyLmZsdWlkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gIH1cbn1cbi5ncmlkLWNvbnRhaW5lci5mdWxsIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5ncmlkLXgge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xufVxuXG4uY2VsbCB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBtaW4taGVpZ2h0OiAwO1xuICBtaW4td2lkdGg6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmNlbGwuYXV0byB7XG4gIGZsZXg6IDEgMSAwO1xufVxuLmNlbGwuc2hyaW5rIHtcbiAgZmxleDogMCAwIGF1dG87XG59XG5cbi5ncmlkLXggPiAuYXV0byB7XG4gIHdpZHRoOiBhdXRvO1xufVxuLmdyaWQteCA+IC5zaHJpbmsge1xuICB3aWR0aDogYXV0bztcbn1cblxuLmdyaWQteCA+IC5zbWFsbC1zaHJpbmssIC5ncmlkLXggPiAuc21hbGwtZnVsbCwgLmdyaWQteCA+IC5zbWFsbC0xLCAuZ3JpZC14ID4gLnNtYWxsLTIsIC5ncmlkLXggPiAuc21hbGwtMywgLmdyaWQteCA+IC5zbWFsbC00LCAuZ3JpZC14ID4gLnNtYWxsLTUsIC5ncmlkLXggPiAuc21hbGwtNiwgLmdyaWQteCA+IC5zbWFsbC03LCAuZ3JpZC14ID4gLnNtYWxsLTgsIC5ncmlkLXggPiAuc21hbGwtOSwgLmdyaWQteCA+IC5zbWFsbC0xMCwgLmdyaWQteCA+IC5zbWFsbC0xMSwgLmdyaWQteCA+IC5zbWFsbC0xMiB7XG4gIGZsZXgtYmFzaXM6IGF1dG87XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdyaWQteCA+IC5tZWRpdW0tc2hyaW5rLCAuZ3JpZC14ID4gLm1lZGl1bS1mdWxsLCAuZ3JpZC14ID4gLm1lZGl1bS0xLCAuZ3JpZC14ID4gLm1lZGl1bS0yLCAuZ3JpZC14ID4gLm1lZGl1bS0zLCAuZ3JpZC14ID4gLm1lZGl1bS00LCAuZ3JpZC14ID4gLm1lZGl1bS01LCAuZ3JpZC14ID4gLm1lZGl1bS02LCAuZ3JpZC14ID4gLm1lZGl1bS03LCAuZ3JpZC14ID4gLm1lZGl1bS04LCAuZ3JpZC14ID4gLm1lZGl1bS05LCAuZ3JpZC14ID4gLm1lZGl1bS0xMCwgLmdyaWQteCA+IC5tZWRpdW0tMTEsIC5ncmlkLXggPiAubWVkaXVtLTEyIHtcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC14ID4gLmxhcmdlLXNocmluaywgLmdyaWQteCA+IC5sYXJnZS1mdWxsLCAuZ3JpZC14ID4gLmxhcmdlLTEsIC5ncmlkLXggPiAubGFyZ2UtMiwgLmdyaWQteCA+IC5sYXJnZS0zLCAuZ3JpZC14ID4gLmxhcmdlLTQsIC5ncmlkLXggPiAubGFyZ2UtNSwgLmdyaWQteCA+IC5sYXJnZS02LCAuZ3JpZC14ID4gLmxhcmdlLTcsIC5ncmlkLXggPiAubGFyZ2UtOCwgLmdyaWQteCA+IC5sYXJnZS05LCAuZ3JpZC14ID4gLmxhcmdlLTEwLCAuZ3JpZC14ID4gLmxhcmdlLTExLCAuZ3JpZC14ID4gLmxhcmdlLTEyIHtcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICB9XG59XG4uZ3JpZC14ID4gLnNtYWxsLTEyLCAuZ3JpZC14ID4gLnNtYWxsLTExLCAuZ3JpZC14ID4gLnNtYWxsLTEwLCAuZ3JpZC14ID4gLnNtYWxsLTksIC5ncmlkLXggPiAuc21hbGwtOCwgLmdyaWQteCA+IC5zbWFsbC03LCAuZ3JpZC14ID4gLnNtYWxsLTYsIC5ncmlkLXggPiAuc21hbGwtNSwgLmdyaWQteCA+IC5zbWFsbC00LCAuZ3JpZC14ID4gLnNtYWxsLTMsIC5ncmlkLXggPiAuc21hbGwtMiwgLmdyaWQteCA+IC5zbWFsbC0xIHtcbiAgZmxleDogMCAwIGF1dG87XG59XG5cbi5ncmlkLXggPiAuc21hbGwtMSB7XG4gIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xufVxuXG4uZ3JpZC14ID4gLnNtYWxsLTIge1xuICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG59XG5cbi5ncmlkLXggPiAuc21hbGwtMyB7XG4gIHdpZHRoOiAyNSU7XG59XG5cbi5ncmlkLXggPiAuc21hbGwtNCB7XG4gIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbn1cblxuLmdyaWQteCA+IC5zbWFsbC01IHtcbiAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xufVxuXG4uZ3JpZC14ID4gLnNtYWxsLTYge1xuICB3aWR0aDogNTAlO1xufVxuXG4uZ3JpZC14ID4gLnNtYWxsLTcge1xuICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG59XG5cbi5ncmlkLXggPiAuc21hbGwtOCB7XG4gIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbn1cblxuLmdyaWQteCA+IC5zbWFsbC05IHtcbiAgd2lkdGg6IDc1JTtcbn1cblxuLmdyaWQteCA+IC5zbWFsbC0xMCB7XG4gIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbn1cblxuLmdyaWQteCA+IC5zbWFsbC0xMSB7XG4gIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcbn1cblxuLmdyaWQteCA+IC5zbWFsbC0xMiB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5ncmlkLXggPiAubWVkaXVtLWF1dG8ge1xuICAgIGZsZXg6IDEgMSAwO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTEyLCAuZ3JpZC14ID4gLm1lZGl1bS0xMSwgLmdyaWQteCA+IC5tZWRpdW0tMTAsIC5ncmlkLXggPiAubWVkaXVtLTksIC5ncmlkLXggPiAubWVkaXVtLTgsIC5ncmlkLXggPiAubWVkaXVtLTcsIC5ncmlkLXggPiAubWVkaXVtLTYsIC5ncmlkLXggPiAubWVkaXVtLTUsIC5ncmlkLXggPiAubWVkaXVtLTQsIC5ncmlkLXggPiAubWVkaXVtLTMsIC5ncmlkLXggPiAubWVkaXVtLTIsIC5ncmlkLXggPiAubWVkaXVtLTEsIC5ncmlkLXggPiAubWVkaXVtLXNocmluayB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gIH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLXggPiAubGFyZ2UtYXV0byB7XG4gICAgZmxleDogMSAxIDA7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbiAgLmdyaWQteCA+IC5sYXJnZS0xMiwgLmdyaWQteCA+IC5sYXJnZS0xMSwgLmdyaWQteCA+IC5sYXJnZS0xMCwgLmdyaWQteCA+IC5sYXJnZS05LCAuZ3JpZC14ID4gLmxhcmdlLTgsIC5ncmlkLXggPiAubGFyZ2UtNywgLmdyaWQteCA+IC5sYXJnZS02LCAuZ3JpZC14ID4gLmxhcmdlLTUsIC5ncmlkLXggPiAubGFyZ2UtNCwgLmdyaWQteCA+IC5sYXJnZS0zLCAuZ3JpZC14ID4gLmxhcmdlLTIsIC5ncmlkLXggPiAubGFyZ2UtMSwgLmdyaWQteCA+IC5sYXJnZS1zaHJpbmsge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICB9XG4gIC5ncmlkLXggPiAubGFyZ2Utc2hyaW5rIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLmdyaWQteCA+IC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmdyaWQteCA+IC5sYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmdyaWQteCA+IC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmdyaWQteCA+IC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbi5ncmlkLW1hcmdpbi14Om5vdCguZ3JpZC14KSA+IC5jZWxsIHtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi5ncmlkLW1hcmdpbi15Om5vdCguZ3JpZC15KSA+IC5jZWxsIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uZ3JpZC1tYXJnaW4teCB7XG4gIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5ncmlkLW1hcmdpbi14IHtcbiAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gIH1cbn1cbi5ncmlkLW1hcmdpbi14ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXggPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICB9XG59XG4uZ3JpZC1tYXJnaW4teCA+IC5hdXRvIHtcbiAgd2lkdGg6IGF1dG87XG59XG4uZ3JpZC1tYXJnaW4teCA+IC5zaHJpbmsge1xuICB3aWR0aDogYXV0bztcbn1cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEge1xuICB3aWR0aDogY2FsYyg4LjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMiB7XG4gIHdpZHRoOiBjYWxjKDE2LjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMyB7XG4gIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTQge1xuICB3aWR0aDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTUge1xuICB3aWR0aDogY2FsYyg0MS42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTYge1xuICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC03IHtcbiAgd2lkdGg6IGNhbGMoNTguMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC04IHtcbiAgd2lkdGg6IGNhbGMoNjYuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC05IHtcbiAgd2lkdGg6IGNhbGMoNzUlIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTAge1xuICB3aWR0aDogY2FsYyg4My4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTExIHtcbiAgd2lkdGg6IGNhbGMoOTEuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMiB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5ncmlkLW1hcmdpbi14ID4gLmF1dG8ge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNocmluayB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMSB7XG4gICAgd2lkdGg6IGNhbGMoOC4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0yIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0zIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNSB7XG4gICAgd2lkdGg6IGNhbGMoNDEuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNiB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTcge1xuICAgIHdpZHRoOiBjYWxjKDU4LjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTgge1xuICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTkge1xuICAgIHdpZHRoOiBjYWxjKDc1JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMCB7XG4gICAgd2lkdGg6IGNhbGMoODMuMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTEge1xuICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEyIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1hdXRvIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMSB7XG4gICAgd2lkdGg6IGNhbGMoOC4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTMge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTUge1xuICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS02IHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTcge1xuICAgIHdpZHRoOiBjYWxjKDU4LjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS04IHtcbiAgICB3aWR0aDogY2FsYyg2Ni42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IGNhbGMoNzUlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xMCB7XG4gICAgd2lkdGg6IGNhbGMoODMuMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogY2FsYyg5MS42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMTIge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLWF1dG8ge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLXNocmluayB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMSB7XG4gICAgd2lkdGg6IGNhbGMoOC4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0yIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0zIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtNCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtNSB7XG4gICAgd2lkdGg6IGNhbGMoNDEuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTcge1xuICAgIHdpZHRoOiBjYWxjKDU4LjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTgge1xuICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTkge1xuICAgIHdpZHRoOiBjYWxjKDc1JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IGNhbGMoODMuMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMTEge1xuICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTEyIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICB9XG59XG5cbi5ncmlkLXBhZGRpbmcteCAuZ3JpZC1wYWRkaW5nLXgge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ3JpZC1wYWRkaW5nLXggLmdyaWQtcGFkZGluZy14IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07XG4gIH1cbn1cbi5ncmlkLWNvbnRhaW5lcjpub3QoLmZ1bGwpID4gLmdyaWQtcGFkZGluZy14IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdyaWQtY29udGFpbmVyOm5vdCguZnVsbCkgPiAuZ3JpZC1wYWRkaW5nLXgge1xuICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTtcbiAgfVxufVxuLmdyaWQtcGFkZGluZy14ID4gLmNlbGwge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ3JpZC1wYWRkaW5nLXggPiAuY2VsbCB7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICB9XG59XG5cbi5zbWFsbC11cC0xID4gLmNlbGwge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnNtYWxsLXVwLTIgPiAuY2VsbCB7XG4gIHdpZHRoOiA1MCU7XG59XG5cbi5zbWFsbC11cC0zID4gLmNlbGwge1xuICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG59XG5cbi5zbWFsbC11cC00ID4gLmNlbGwge1xuICB3aWR0aDogMjUlO1xufVxuXG4uc21hbGwtdXAtNSA+IC5jZWxsIHtcbiAgd2lkdGg6IDIwJTtcbn1cblxuLnNtYWxsLXVwLTYgPiAuY2VsbCB7XG4gIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbn1cblxuLnNtYWxsLXVwLTcgPiAuY2VsbCB7XG4gIHdpZHRoOiAxNC4yODU3MTQyODU3JTtcbn1cblxuLnNtYWxsLXVwLTggPiAuY2VsbCB7XG4gIHdpZHRoOiAxMi41JTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAubWVkaXVtLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm1lZGl1bS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLm1lZGl1bS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAubWVkaXVtLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDIwJTtcbiAgfVxuICAubWVkaXVtLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTQuMjg1NzE0Mjg1NyU7XG4gIH1cbiAgLm1lZGl1bS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMi41JTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmxhcmdlLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAubGFyZ2UtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAubGFyZ2UtdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjAlO1xuICB9XG4gIC5sYXJnZS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTQuMjg1NzE0Mjg1NyU7XG4gIH1cbiAgLmxhcmdlLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEyLjUlO1xuICB9XG59XG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0xID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xufVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0yID4gLmNlbGwge1xuICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7XG59XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTMgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDMzLjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xufVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC00ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG59XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTUgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDIwJSAtIDEuODc1cmVtKTtcbn1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNiA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoMTYuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG59XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTcgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDE0LjI4NTcxNDI4NTclIC0gMS44NzVyZW0pO1xufVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC04ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxMi41JSAtIDEuODc1cmVtKTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTQuMjg1NzE0Mjg1NyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMi41JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjAlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxNDI4NTclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMS44NzVyZW0pO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTQuMjg1NzE0Mjg1NyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMi41JSAtIDEuODc1cmVtKTtcbiAgfVxufVxuLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmNlbGwge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xIHtcbiAgd2lkdGg6IDguMzMzMzMzMzMzMyU7XG59XG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTIge1xuICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG59XG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTMge1xuICB3aWR0aDogMjUlO1xufVxuLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC00IHtcbiAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xufVxuLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC01IHtcbiAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xufVxuLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC02IHtcbiAgd2lkdGg6IDUwJTtcbn1cbi5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNyB7XG4gIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcbn1cbi5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOCB7XG4gIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbn1cbi5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOSB7XG4gIHdpZHRoOiA3NSU7XG59XG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEwIHtcbiAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xufVxuLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMSB7XG4gIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcbn1cbi5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTIge1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMSB7XG4gICAgd2lkdGg6IDguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTMge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS02IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLnNtYWxsLXBhZGRpbmctY29sbGFwc2Uge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLnNtYWxsLXBhZGRpbmctY29sbGFwc2UgPiAuY2VsbCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmNlbGwge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xIHtcbiAgICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTMge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS02IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAubWVkaXVtLXBhZGRpbmctY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAubWVkaXVtLXBhZGRpbmctY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC03IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0zIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTkge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS02IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLmxhcmdlLXBhZGRpbmctY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuLnNtYWxsLW9mZnNldC0wIHtcbiAgbWFyZ2luLWxlZnQ6IDAlO1xufVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMCB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDAlICsgMS44NzVyZW0gLyAyKTtcbn1cblxuLnNtYWxsLW9mZnNldC0xIHtcbiAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMzMyU7XG59XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0xIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoOC4zMzMzMzMzMzMzJSArIDEuODc1cmVtIC8gMik7XG59XG5cbi5zbWFsbC1vZmZzZXQtMiB7XG4gIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NjY3JTtcbn1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTIge1xuICBtYXJnaW4tbGVmdDogY2FsYygxNi42NjY2NjY2NjY3JSArIDEuODc1cmVtIC8gMik7XG59XG5cbi5zbWFsbC1vZmZzZXQtMyB7XG4gIG1hcmdpbi1sZWZ0OiAyNSU7XG59XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0zIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoMjUlICsgMS44NzVyZW0gLyAyKTtcbn1cblxuLnNtYWxsLW9mZnNldC00IHtcbiAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzMzMlO1xufVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtNCB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzMzMzMzMlICsgMS44NzVyZW0gLyAyKTtcbn1cblxuLnNtYWxsLW9mZnNldC01IHtcbiAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY2NjclO1xufVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtNSB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDQxLjY2NjY2NjY2NjclICsgMS44NzVyZW0gLyAyKTtcbn1cblxuLnNtYWxsLW9mZnNldC02IHtcbiAgbWFyZ2luLWxlZnQ6IDUwJTtcbn1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTYge1xuICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAxLjg3NXJlbSAvIDIpO1xufVxuXG4uc21hbGwtb2Zmc2V0LTcge1xuICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMzMyU7XG59XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC03IHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoNTguMzMzMzMzMzMzMyUgKyAxLjg3NXJlbSAvIDIpO1xufVxuXG4uc21hbGwtb2Zmc2V0LTgge1xuICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjY2NyU7XG59XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC04IHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoNjYuNjY2NjY2NjY2NyUgKyAxLjg3NXJlbSAvIDIpO1xufVxuXG4uc21hbGwtb2Zmc2V0LTkge1xuICBtYXJnaW4tbGVmdDogNzUlO1xufVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtOSB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDc1JSArIDEuODc1cmVtIC8gMik7XG59XG5cbi5zbWFsbC1vZmZzZXQtMTAge1xuICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMzMyU7XG59XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDgzLjMzMzMzMzMzMzMlICsgMS44NzVyZW0gLyAyKTtcbn1cblxuLnNtYWxsLW9mZnNldC0xMSB7XG4gIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NjY3JTtcbn1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTExIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoOTEuNjY2NjY2NjY2NyUgKyAxLjg3NXJlbSAvIDIpO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5tZWRpdW0tb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDAlICsgMS44NzVyZW0gLyAyKTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDguMzMzMzMzMzMzMyUgKyAxLjg3NXJlbSAvIDIpO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDE2LjY2NjY2NjY2NjclICsgMS44NzVyZW0gLyAyKTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMjUlICsgMS44NzVyZW0gLyAyKTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygzMy4zMzMzMzMzMzMzJSArIDEuODc1cmVtIC8gMik7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNDEuNjY2NjY2NjY2NyUgKyAxLjg3NXJlbSAvIDIpO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAxLjg3NXJlbSAvIDIpO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDU4LjMzMzMzMzMzMzMlICsgMS44NzVyZW0gLyAyKTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg2Ni42NjY2NjY2NjY3JSArIDEuODc1cmVtIC8gMik7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDc1JSArIDEuODc1cmVtIC8gMik7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4My4zMzMzMzMzMzMzJSArIDEuODc1cmVtIC8gMik7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg5MS42NjY2NjY2NjY3JSArIDEuODc1cmVtIC8gMik7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygwJSArIDEuODc1cmVtIC8gMik7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoOC4zMzMzMzMzMzMzJSArIDEuODc1cmVtIC8gMik7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDE2LjY2NjY2NjY2NjclICsgMS44NzVyZW0gLyAyKTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDI1JSArIDEuODc1cmVtIC8gMik7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzMzMzMzMlICsgMS44NzVyZW0gLyAyKTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNDEuNjY2NjY2NjY2NyUgKyAxLjg3NXJlbSAvIDIpO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlICsgMS44NzVyZW0gLyAyKTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTguMzMzMzMzMzMzMyUgKyAxLjg3NXJlbSAvIDIpO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg2Ni42NjY2NjY2NjY3JSArIDEuODc1cmVtIC8gMik7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg3NSUgKyAxLjg3NXJlbSAvIDIpO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDgzLjMzMzMzMzMzMzMlICsgMS44NzVyZW0gLyAyKTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg5MS42NjY2NjY2NjY3JSArIDEuODc1cmVtIC8gMik7XG4gIH1cbn1cbi5ncmlkLXkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG59XG4uZ3JpZC15ID4gLmNlbGwge1xuICBoZWlnaHQ6IGF1dG87XG4gIG1heC1oZWlnaHQ6IG5vbmU7XG59XG4uZ3JpZC15ID4gLmF1dG8ge1xuICBoZWlnaHQ6IGF1dG87XG59XG4uZ3JpZC15ID4gLnNocmluayB7XG4gIGhlaWdodDogYXV0bztcbn1cbi5ncmlkLXkgPiAuc21hbGwtc2hyaW5rLCAuZ3JpZC15ID4gLnNtYWxsLWZ1bGwsIC5ncmlkLXkgPiAuc21hbGwtMSwgLmdyaWQteSA+IC5zbWFsbC0yLCAuZ3JpZC15ID4gLnNtYWxsLTMsIC5ncmlkLXkgPiAuc21hbGwtNCwgLmdyaWQteSA+IC5zbWFsbC01LCAuZ3JpZC15ID4gLnNtYWxsLTYsIC5ncmlkLXkgPiAuc21hbGwtNywgLmdyaWQteSA+IC5zbWFsbC04LCAuZ3JpZC15ID4gLnNtYWxsLTksIC5ncmlkLXkgPiAuc21hbGwtMTAsIC5ncmlkLXkgPiAuc21hbGwtMTEsIC5ncmlkLXkgPiAuc21hbGwtMTIge1xuICBmbGV4LWJhc2lzOiBhdXRvO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ3JpZC15ID4gLm1lZGl1bS1zaHJpbmssIC5ncmlkLXkgPiAubWVkaXVtLWZ1bGwsIC5ncmlkLXkgPiAubWVkaXVtLTEsIC5ncmlkLXkgPiAubWVkaXVtLTIsIC5ncmlkLXkgPiAubWVkaXVtLTMsIC5ncmlkLXkgPiAubWVkaXVtLTQsIC5ncmlkLXkgPiAubWVkaXVtLTUsIC5ncmlkLXkgPiAubWVkaXVtLTYsIC5ncmlkLXkgPiAubWVkaXVtLTcsIC5ncmlkLXkgPiAubWVkaXVtLTgsIC5ncmlkLXkgPiAubWVkaXVtLTksIC5ncmlkLXkgPiAubWVkaXVtLTEwLCAuZ3JpZC15ID4gLm1lZGl1bS0xMSwgLmdyaWQteSA+IC5tZWRpdW0tMTIge1xuICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLXkgPiAubGFyZ2Utc2hyaW5rLCAuZ3JpZC15ID4gLmxhcmdlLWZ1bGwsIC5ncmlkLXkgPiAubGFyZ2UtMSwgLmdyaWQteSA+IC5sYXJnZS0yLCAuZ3JpZC15ID4gLmxhcmdlLTMsIC5ncmlkLXkgPiAubGFyZ2UtNCwgLmdyaWQteSA+IC5sYXJnZS01LCAuZ3JpZC15ID4gLmxhcmdlLTYsIC5ncmlkLXkgPiAubGFyZ2UtNywgLmdyaWQteSA+IC5sYXJnZS04LCAuZ3JpZC15ID4gLmxhcmdlLTksIC5ncmlkLXkgPiAubGFyZ2UtMTAsIC5ncmlkLXkgPiAubGFyZ2UtMTEsIC5ncmlkLXkgPiAubGFyZ2UtMTIge1xuICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gIH1cbn1cbi5ncmlkLXkgPiAuc21hbGwtMTIsIC5ncmlkLXkgPiAuc21hbGwtMTEsIC5ncmlkLXkgPiAuc21hbGwtMTAsIC5ncmlkLXkgPiAuc21hbGwtOSwgLmdyaWQteSA+IC5zbWFsbC04LCAuZ3JpZC15ID4gLnNtYWxsLTcsIC5ncmlkLXkgPiAuc21hbGwtNiwgLmdyaWQteSA+IC5zbWFsbC01LCAuZ3JpZC15ID4gLnNtYWxsLTQsIC5ncmlkLXkgPiAuc21hbGwtMywgLmdyaWQteSA+IC5zbWFsbC0yLCAuZ3JpZC15ID4gLnNtYWxsLTEge1xuICBmbGV4OiAwIDAgYXV0bztcbn1cbi5ncmlkLXkgPiAuc21hbGwtMSB7XG4gIGhlaWdodDogOC4zMzMzMzMzMzMzJTtcbn1cbi5ncmlkLXkgPiAuc21hbGwtMiB7XG4gIGhlaWdodDogMTYuNjY2NjY2NjY2NyU7XG59XG4uZ3JpZC15ID4gLnNtYWxsLTMge1xuICBoZWlnaHQ6IDI1JTtcbn1cbi5ncmlkLXkgPiAuc21hbGwtNCB7XG4gIGhlaWdodDogMzMuMzMzMzMzMzMzMyU7XG59XG4uZ3JpZC15ID4gLnNtYWxsLTUge1xuICBoZWlnaHQ6IDQxLjY2NjY2NjY2NjclO1xufVxuLmdyaWQteSA+IC5zbWFsbC02IHtcbiAgaGVpZ2h0OiA1MCU7XG59XG4uZ3JpZC15ID4gLnNtYWxsLTcge1xuICBoZWlnaHQ6IDU4LjMzMzMzMzMzMzMlO1xufVxuLmdyaWQteSA+IC5zbWFsbC04IHtcbiAgaGVpZ2h0OiA2Ni42NjY2NjY2NjY3JTtcbn1cbi5ncmlkLXkgPiAuc21hbGwtOSB7XG4gIGhlaWdodDogNzUlO1xufVxuLmdyaWQteSA+IC5zbWFsbC0xMCB7XG4gIGhlaWdodDogODMuMzMzMzMzMzMzMyU7XG59XG4uZ3JpZC15ID4gLnNtYWxsLTExIHtcbiAgaGVpZ2h0OiA5MS42NjY2NjY2NjY3JTtcbn1cbi5ncmlkLXkgPiAuc21hbGwtMTIge1xuICBoZWlnaHQ6IDEwMCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5ncmlkLXkgPiAubWVkaXVtLWF1dG8ge1xuICAgIGZsZXg6IDEgMSAwO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZ3JpZC15ID4gLm1lZGl1bS0xMiwgLmdyaWQteSA+IC5tZWRpdW0tMTEsIC5ncmlkLXkgPiAubWVkaXVtLTEwLCAuZ3JpZC15ID4gLm1lZGl1bS05LCAuZ3JpZC15ID4gLm1lZGl1bS04LCAuZ3JpZC15ID4gLm1lZGl1bS03LCAuZ3JpZC15ID4gLm1lZGl1bS02LCAuZ3JpZC15ID4gLm1lZGl1bS01LCAuZ3JpZC15ID4gLm1lZGl1bS00LCAuZ3JpZC15ID4gLm1lZGl1bS0zLCAuZ3JpZC15ID4gLm1lZGl1bS0yLCAuZ3JpZC15ID4gLm1lZGl1bS0xLCAuZ3JpZC15ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICB9XG4gIC5ncmlkLXkgPiAubWVkaXVtLXNocmluayB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5ncmlkLXkgPiAubWVkaXVtLTEge1xuICAgIGhlaWdodDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC15ID4gLm1lZGl1bS0yIHtcbiAgICBoZWlnaHQ6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5ncmlkLXkgPiAubWVkaXVtLTMge1xuICAgIGhlaWdodDogMjUlO1xuICB9XG4gIC5ncmlkLXkgPiAubWVkaXVtLTQge1xuICAgIGhlaWdodDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmdyaWQteSA+IC5tZWRpdW0tNSB7XG4gICAgaGVpZ2h0OiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC15ID4gLm1lZGl1bS02IHtcbiAgICBoZWlnaHQ6IDUwJTtcbiAgfVxuICAuZ3JpZC15ID4gLm1lZGl1bS03IHtcbiAgICBoZWlnaHQ6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5ncmlkLXkgPiAubWVkaXVtLTgge1xuICAgIGhlaWdodDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmdyaWQteSA+IC5tZWRpdW0tOSB7XG4gICAgaGVpZ2h0OiA3NSU7XG4gIH1cbiAgLmdyaWQteSA+IC5tZWRpdW0tMTAge1xuICAgIGhlaWdodDogODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmdyaWQteSA+IC5tZWRpdW0tMTEge1xuICAgIGhlaWdodDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmdyaWQteSA+IC5tZWRpdW0tMTIge1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQteSA+IC5sYXJnZS1hdXRvIHtcbiAgICBmbGV4OiAxIDEgMDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQteSA+IC5sYXJnZS0xMiwgLmdyaWQteSA+IC5sYXJnZS0xMSwgLmdyaWQteSA+IC5sYXJnZS0xMCwgLmdyaWQteSA+IC5sYXJnZS05LCAuZ3JpZC15ID4gLmxhcmdlLTgsIC5ncmlkLXkgPiAubGFyZ2UtNywgLmdyaWQteSA+IC5sYXJnZS02LCAuZ3JpZC15ID4gLmxhcmdlLTUsIC5ncmlkLXkgPiAubGFyZ2UtNCwgLmdyaWQteSA+IC5sYXJnZS0zLCAuZ3JpZC15ID4gLmxhcmdlLTIsIC5ncmlkLXkgPiAubGFyZ2UtMSwgLmdyaWQteSA+IC5sYXJnZS1zaHJpbmsge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICB9XG4gIC5ncmlkLXkgPiAubGFyZ2Utc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQteSA+IC5sYXJnZS0xIHtcbiAgICBoZWlnaHQ6IDguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmdyaWQteSA+IC5sYXJnZS0yIHtcbiAgICBoZWlnaHQ6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5ncmlkLXkgPiAubGFyZ2UtMyB7XG4gICAgaGVpZ2h0OiAyNSU7XG4gIH1cbiAgLmdyaWQteSA+IC5sYXJnZS00IHtcbiAgICBoZWlnaHQ6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5ncmlkLXkgPiAubGFyZ2UtNSB7XG4gICAgaGVpZ2h0OiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC15ID4gLmxhcmdlLTYge1xuICAgIGhlaWdodDogNTAlO1xuICB9XG4gIC5ncmlkLXkgPiAubGFyZ2UtNyB7XG4gICAgaGVpZ2h0OiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC15ID4gLmxhcmdlLTgge1xuICAgIGhlaWdodDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmdyaWQteSA+IC5sYXJnZS05IHtcbiAgICBoZWlnaHQ6IDc1JTtcbiAgfVxuICAuZ3JpZC15ID4gLmxhcmdlLTEwIHtcbiAgICBoZWlnaHQ6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5ncmlkLXkgPiAubGFyZ2UtMTEge1xuICAgIGhlaWdodDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmdyaWQteSA+IC5sYXJnZS0xMiB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbi5ncmlkLXBhZGRpbmcteSAuZ3JpZC1wYWRkaW5nLXkge1xuICBtYXJnaW4tdG9wOiAtMC45Mzc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMC45Mzc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ3JpZC1wYWRkaW5nLXkgLmdyaWQtcGFkZGluZy15IHtcbiAgICBtYXJnaW4tdG9wOiAtMC45Mzc1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IC0wLjkzNzVyZW07XG4gIH1cbn1cbi5ncmlkLXBhZGRpbmcteSA+IC5jZWxsIHtcbiAgcGFkZGluZy10b3A6IDAuOTM3NXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuOTM3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdyaWQtcGFkZGluZy15ID4gLmNlbGwge1xuICAgIHBhZGRpbmctdG9wOiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDAuOTM3NXJlbTtcbiAgfVxufVxuXG4uZ3JpZC1tYXJnaW4teSB7XG4gIG1hcmdpbi10b3A6IC0wLjkzNzVyZW07XG4gIG1hcmdpbi1ib3R0b206IC0wLjkzNzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5ncmlkLW1hcmdpbi15IHtcbiAgICBtYXJnaW4tdG9wOiAtMC45Mzc1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IC0wLjkzNzVyZW07XG4gIH1cbn1cbi5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgbWFyZ2luLXRvcDogMC45Mzc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICAgIG1hcmdpbi10b3A6IDAuOTM3NXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07XG4gIH1cbn1cbi5ncmlkLW1hcmdpbi15ID4gLmF1dG8ge1xuICBoZWlnaHQ6IGF1dG87XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5zaHJpbmsge1xuICBoZWlnaHQ6IGF1dG87XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xIHtcbiAgaGVpZ2h0OiBjYWxjKDguMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0yIHtcbiAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMyB7XG4gIGhlaWdodDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC00IHtcbiAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7XG4gIGhlaWdodDogY2FsYyg0MS42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYge1xuICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gIGhlaWdodDogY2FsYyg1OC4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTgge1xuICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHtcbiAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEwIHtcbiAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTEge1xuICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMiB7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMge1xuICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTUge1xuICAgIGhlaWdodDogY2FsYyg0MS42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTcge1xuICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC04IHtcbiAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOSB7XG4gICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMCB7XG4gICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTExIHtcbiAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1hdXRvIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLXNocmluayB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xIHtcbiAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0zIHtcbiAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS00IHtcbiAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTUge1xuICAgIGhlaWdodDogY2FsYyg0MS42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNiB7XG4gICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNyB7XG4gICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS04IHtcbiAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTkge1xuICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEwIHtcbiAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTExIHtcbiAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEyIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtYXV0byB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLXNocmluayB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEge1xuICAgIGhlaWdodDogY2FsYyg4LjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTIge1xuICAgIGhlaWdodDogY2FsYygxNi42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0zIHtcbiAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTQge1xuICAgIGhlaWdodDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS01IHtcbiAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNiB7XG4gICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS03IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtOCB7XG4gICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTkge1xuICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTAge1xuICAgIGhlaWdodDogY2FsYyg4My4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEyIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgfVxufVxuXG4uZ3JpZC1mcmFtZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMTAwdnc7XG59XG5cbi5jZWxsIC5ncmlkLWZyYW1lIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5jZWxsLWJsb2NrIHtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xufVxuXG4uY2VsbC1ibG9jay15IHtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcbn1cblxuLmNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWF4LWhlaWdodDogMTAwJTtcbn1cbi5jZWxsLWJsb2NrLWNvbnRhaW5lciA+IC5ncmlkLXgge1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAubWVkaXVtLWdyaWQtZnJhbWUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIHdpZHRoOiAxMDB2dztcbiAgfVxuICAuY2VsbCAubWVkaXVtLWdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5tZWRpdW0tY2VsbC1ibG9jayB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xuICB9XG4gIC5tZWRpdW0tY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICB9XG4gIC5tZWRpdW0tY2VsbC1ibG9jay1jb250YWluZXIgPiAuZ3JpZC14IHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG4gIC5tZWRpdW0tY2VsbC1ibG9jay15IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB3aWR0aDogMTAwdnc7XG4gIH1cbiAgLmNlbGwgLmxhcmdlLWdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5sYXJnZS1jZWxsLWJsb2NrIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG4gIH1cbiAgLmxhcmdlLWNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgfVxuICAubGFyZ2UtY2VsbC1ibG9jay1jb250YWluZXIgPiAuZ3JpZC14IHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG4gIC5sYXJnZS1jZWxsLWJsb2NrLXkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcbiAgfVxufVxuLmdyaWQteS5ncmlkLWZyYW1lIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIGhlaWdodDogMTAwdmg7XG4gIHdpZHRoOiBhdXRvO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ3JpZC15Lm1lZGl1bS1ncmlkLWZyYW1lIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC15LmxhcmdlLWdyaWQtZnJhbWUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLmNlbGwgLmdyaWQteS5ncmlkLWZyYW1lIHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuY2VsbCAuZ3JpZC15Lm1lZGl1bS1ncmlkLWZyYW1lIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jZWxsIC5ncmlkLXkubGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbi5ncmlkLW1hcmdpbi15IHtcbiAgbWFyZ2luLXRvcDogLTAuOTM3NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogLTAuOTM3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkge1xuICAgIG1hcmdpbi10b3A6IC0wLjkzNzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogLTAuOTM3NXJlbTtcbiAgfVxufVxuLmdyaWQtbWFyZ2luLXkgPiAuY2VsbCB7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICBtYXJnaW4tdG9wOiAwLjkzNzVyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkgPiAuY2VsbCB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7XG4gICAgbWFyZ2luLXRvcDogMC45Mzc1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTtcbiAgfVxufVxuLmdyaWQtbWFyZ2luLXkgPiAuYXV0byB7XG4gIGhlaWdodDogYXV0bztcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNocmluayB7XG4gIGhlaWdodDogYXV0bztcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEge1xuICBoZWlnaHQ6IGNhbGMoOC4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTIge1xuICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHtcbiAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTQge1xuICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC01IHtcbiAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNiB7XG4gIGhlaWdodDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC03IHtcbiAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOCB7XG4gIGhlaWdodDogY2FsYyg2Ni42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkge1xuICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAge1xuICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMSB7XG4gIGhlaWdodDogY2FsYyg5MS42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5ncmlkLW1hcmdpbi15ID4gLmF1dG8ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zaHJpbmsge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xIHtcbiAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0yIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMyB7XG4gICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC00IHtcbiAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7XG4gICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYge1xuICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTgge1xuICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHtcbiAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEwIHtcbiAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTEge1xuICAgIGhlaWdodDogY2FsYyg5MS42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLWF1dG8ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEge1xuICAgIGhlaWdodDogY2FsYyg4LjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0yIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTMge1xuICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTQge1xuICAgIGhlaWdodDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNSB7XG4gICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS02IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS03IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTgge1xuICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOSB7XG4gICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTAge1xuICAgIGhlaWdodDogY2FsYyg4My4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTEge1xuICAgIGhlaWdodDogY2FsYyg5MS42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTIge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS1hdXRvIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2Utc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTMge1xuICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNCB7XG4gICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTUge1xuICAgIGhlaWdodDogY2FsYyg0MS42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS02IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTcge1xuICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS04IHtcbiAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtOSB7XG4gICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMCB7XG4gICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTExIHtcbiAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTIge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICB9XG59XG5cbi5ncmlkLWZyYW1lLmdyaWQtbWFyZ2luLXkge1xuICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAxLjg3NXJlbSk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5ncmlkLWZyYW1lLmdyaWQtbWFyZ2luLXkge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCArIDEuODc1cmVtKTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQtZnJhbWUuZ3JpZC1tYXJnaW4teSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMS44NzVyZW0pO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkubWVkaXVtLWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCArIDEuODc1cmVtKTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkubGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMS44NzVyZW0pO1xuICB9XG59XG5kaXYsXG5kbCxcbmR0LFxuZGQsXG51bCxcbm9sLFxubGksXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYsXG5wcmUsXG5mb3JtLFxucCxcbmJsb2NrcXVvdGUsXG50aCxcbnRkIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG5wIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogMS42O1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xufVxuXG5lbSxcbmkge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5zdHJvbmcsXG5iIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuaDEsIC5oMSxcbmgyLCAuaDIsXG5oMywgLmgzLFxuaDQsIC5oNCxcbmg1LCAuaDUsXG5oNiwgLmg2IHtcbiAgZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBcIlJvYm90b1wiLCBcIk94eWdlblwiLCBcIlVidW50dVwiLCBcIkNhbnRhcmVsbFwiLCBcIkZpcmEgU2Fuc1wiLCBcIkRyb2lkIFNhbnNcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xufVxuaDEgc21hbGwsIC5oMSBzbWFsbCxcbmgyIHNtYWxsLCAuaDIgc21hbGwsXG5oMyBzbWFsbCwgLmgzIHNtYWxsLFxuaDQgc21hbGwsIC5oNCBzbWFsbCxcbmg1IHNtYWxsLCAuaDUgc21hbGwsXG5oNiBzbWFsbCwgLmg2IHNtYWxsIHtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGNvbG9yOiAjY2FjYWNhO1xufVxuXG5oMSwgLmgxIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuaDIsIC5oMiB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5oMywgLmgzIHtcbiAgZm9udC1zaXplOiAxLjE4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuaDQsIC5oNCB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuaDUsIC5oNSB7XG4gIGZvbnQtc2l6ZTogMS4wNjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbmg2LCAuaDYge1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICBoMSwgLmgxIHtcbiAgICBmb250LXNpemU6IDNyZW07XG4gIH1cbiAgaDIsIC5oMiB7XG4gICAgZm9udC1zaXplOiAyLjVyZW07XG4gIH1cbiAgaDMsIC5oMyB7XG4gICAgZm9udC1zaXplOiAxLjkzNzVyZW07XG4gIH1cbiAgaDQsIC5oNCB7XG4gICAgZm9udC1zaXplOiAxLjU2MjVyZW07XG4gIH1cbiAgaDUsIC5oNSB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICB9XG4gIGg2LCAuaDYge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxufVxuYSB7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogIzE3NzliYTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5hOmhvdmVyLCBhOmZvY3VzIHtcbiAgY29sb3I6IHJnYigxOS43OCwgMTA0LjA2LCAxNTkuOTYpO1xufVxuYSBpbWcge1xuICBib3JkZXI6IDA7XG59XG5cbmhyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIG1heC13aWR0aDogNzVyZW07XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAxLjI1cmVtIGF1dG87XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJvcmRlci1sZWZ0OiAwO1xufVxuXG51bCxcbm9sLFxuZGwge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xuICBsaW5lLWhlaWdodDogMS42O1xufVxuXG5saSB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbn1cblxudWwge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xufVxuXG5vbCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xufVxuXG51bCB1bCwgdWwgb2wsIG9sIHVsLCBvbCBvbCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5kbCBkdCB7XG4gIG1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBwYWRkaW5nOiAwLjU2MjVyZW0gMS4yNXJlbSAwIDEuMTg3NXJlbTtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2FjYWNhO1xufVxuYmxvY2txdW90ZSwgYmxvY2txdW90ZSBwIHtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgY29sb3I6ICM4YThhOGE7XG59XG5cbmFiYnIsIGFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAjMGEwYTBhO1xuICBjdXJzb3I6IGhlbHA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAwO1xufVxuXG5rYmQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuMjVyZW0gMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4uc3ViaGVhZGVyIHtcbiAgbWFyZ2luLXRvcDogMC4ycmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGNvbG9yOiAjOGE4YThhO1xufVxuXG4ubGVhZCB7XG4gIGZvbnQtc2l6ZTogMTI1JTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbn1cblxuLnN0YXQge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5wICsgLnN0YXQge1xuICBtYXJnaW4tdG9wOiAtMXJlbTtcbn1cblxudWwubm8tYnVsbGV0LCBvbC5uby1idWxsZXQge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmNpdGUtYmxvY2ssIGNpdGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICM4YThhOGE7XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xufVxuLmNpdGUtYmxvY2s6YmVmb3JlLCBjaXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4oCUIFwiO1xufVxuXG4uY29kZS1pbmxpbmUsIGNvZGUge1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICBmb250LWZhbWlseTogQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuMzEyNXJlbSAwLjA2MjVyZW07XG59XG5cbi5jb2RlLWJsb2NrIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBwcmU7XG4gIHBhZGRpbmc6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cblxuLnRleHQtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi50ZXh0LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi50ZXh0LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnRleHQtanVzdGlmeSB7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLm1lZGl1bS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbiAgLm1lZGl1bS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuICAubWVkaXVtLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLm1lZGl1bS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbiAgLmxhcmdlLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG4gIC5sYXJnZS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC5sYXJnZS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gIH1cbn1cbi5zaG93LWZvci1wcmludCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIHByaW50IHtcbiAgKiB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbiAgICBwcmludC1jb2xvci1hZGp1c3Q6IGVjb25vbXk7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG4gIC5oaWRlLWZvci1wcmludCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIHRhYmxlLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50O1xuICB9XG4gIHRoZWFkLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDtcbiAgfVxuICB0Ym9keS5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7XG4gIH1cbiAgdHIuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xuICB9XG4gIHRkLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG4gIH1cbiAgdGguc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcbiAgfVxuICBhLFxuICBhOnZpc2l0ZWQge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG4gIGFbaHJlZl06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xuICB9XG4gIC5pciBhOmFmdGVyLFxuICBhW2hyZWZePVwiamF2YXNjcmlwdDpcIl06YWZ0ZXIsXG4gIGFbaHJlZl49XCIjXCJdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG4gIGFiYnJbdGl0bGVdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XG4gIH1cbiAgcHJlLFxuICBibG9ja3F1b3RlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOGE4YThhO1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgfVxuICB0aGVhZCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwO1xuICB9XG4gIHRyLFxuICBpbWcge1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgfVxuICBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIEBwYWdlIHtcbiAgICBtYXJnaW46IDAuNWNtO1xuICB9XG4gIHAsXG4gIGgyLFxuICBoMyB7XG4gICAgb3JwaGFuczogMztcbiAgICB3aWRvd3M6IDM7XG4gIH1cbiAgaDIsXG4gIGgzIHtcbiAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcbiAgfVxuICAucHJpbnQtYnJlYWstaW5zaWRlIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXV0bztcbiAgfVxufVxuLmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBhZGRpbmc6IDAuODVlbSAxZW07XG59XG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdIC5idXR0b24ge1xuICBvdXRsaW5lOiAwO1xufVxuLmJ1dHRvbi50aW55IHtcbiAgZm9udC1zaXplOiAwLjZyZW07XG59XG4uYnV0dG9uLnNtYWxsIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xufVxuLmJ1dHRvbi5sYXJnZSB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cbi5idXR0b24uZXhwYW5kZWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4uYnV0dG9uLCAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE3NzliYTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYnV0dG9uOmhvdmVyLCAuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE5LjU1LCAxMDIuODUsIDE1OC4xKTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYnV0dG9uLnByaW1hcnksIC5idXR0b24ucHJpbWFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5wcmltYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLnByaW1hcnlbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24ucHJpbWFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTc3OWJhO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5idXR0b24ucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5wcmltYXJ5OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE4LjQsIDk2LjgsIDE0OC44KTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYnV0dG9uLnNlY29uZGFyeSwgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQsIC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3Njc2NzY7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmJ1dHRvbi5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uc2Vjb25kYXJ5OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDk0LjQsIDk0LjQsIDk0LjQpO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5idXR0b24uc3VjY2VzcywgLmJ1dHRvbi5zdWNjZXNzLmRpc2FibGVkLCAuYnV0dG9uLnN1Y2Nlc3NbZGlzYWJsZWRdLCAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uc3VjY2Vzc1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uc3VjY2Vzcy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmJ1dHRvbi5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLnN1Y2Nlc3M6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMzQuMjM4NjI2NjA5NCwgMTg3LjM2MTM3MzM5MDYsIDkxLjMwMzAwNDI5MTgpO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5idXR0b24ud2FybmluZywgLmJ1dHRvbi53YXJuaW5nLmRpc2FibGVkLCAuYnV0dG9uLndhcm5pbmdbZGlzYWJsZWRdLCAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24ud2FybmluZ1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24ud2FybmluZy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmJ1dHRvbi53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLndhcm5pbmc6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjA0LCAxMzkuMiwgMCk7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmJ1dHRvbi5hbGVydCwgLmJ1dHRvbi5hbGVydC5kaXNhYmxlZCwgLmJ1dHRvbi5hbGVydFtkaXNhYmxlZF0sIC5idXR0b24uYWxlcnQuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uYWxlcnRbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmFsZXJ0LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmFsZXJ0W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmJ1dHRvbi5hbGVydDpob3ZlciwgLmJ1dHRvbi5hbGVydDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigxNjUuMDk5NjAxNTkzNiwgNTguNjEwMzU4NTY1NywgNDIuMTAwMzk4NDA2NCk7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmJ1dHRvbi5ob2xsb3csIC5idXR0b24uaG9sbG93OmhvdmVyLCAuYnV0dG9uLmhvbGxvdzpmb2N1cywgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ1dHRvbi5ob2xsb3csIC5idXR0b24uaG9sbG93LmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMTc3OWJhO1xuICBjb2xvcjogIzE3NzliYTtcbn1cbi5idXR0b24uaG9sbG93OmhvdmVyLCAuYnV0dG9uLmhvbGxvdzpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogcmdiKDExLjUsIDYwLjUsIDkzKTtcbiAgY29sb3I6IHJnYigxMS41LCA2MC41LCA5Myk7XG59XG4uYnV0dG9uLmhvbGxvdy5wcmltYXJ5LCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5LmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeS5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93LnByaW1hcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uaG9sbG93LnByaW1hcnlbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzE3NzliYTtcbiAgY29sb3I6ICMxNzc5YmE7XG59XG4uYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoMTEuNSwgNjAuNSwgOTMpO1xuICBjb2xvcjogcmdiKDExLjUsIDYwLjUsIDkzKTtcbn1cbi5idXR0b24uaG9sbG93LnNlY29uZGFyeSwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5LmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnlbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM3Njc2NzY7XG4gIGNvbG9yOiAjNzY3Njc2O1xufVxuLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMzYjNiM2I7XG4gIGNvbG9yOiAjM2IzYjNiO1xufVxuLmJ1dHRvbi5ob2xsb3cuc3VjY2VzcywgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzcy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzc1tkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LnN1Y2Nlc3MuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3NbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMzYWRiNzY7XG4gIGNvbG9yOiAjM2FkYjc2O1xufVxuLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogcmdiKDIxLjM5OTE0MTYzMDksIDExNy4xMDA4NTgzNjkxLCA1Ny4wNjQzNzc2ODI0KTtcbiAgY29sb3I6IHJnYigyMS4zOTkxNDE2MzA5LCAxMTcuMTAwODU4MzY5MSwgNTcuMDY0Mzc3NjgyNCk7XG59XG4uYnV0dG9uLmhvbGxvdy53YXJuaW5nLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cud2FybmluZy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cud2FybmluZ1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93Lndhcm5pbmcuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uaG9sbG93Lndhcm5pbmdbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmYWUwMDtcbiAgY29sb3I6ICNmZmFlMDA7XG59XG4uYnV0dG9uLmhvbGxvdy53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoMTI3LjUsIDg3LCAwKTtcbiAgY29sb3I6IHJnYigxMjcuNSwgODcsIDApO1xufVxuLmJ1dHRvbi5ob2xsb3cuYWxlcnQsIC5idXR0b24uaG9sbG93LmFsZXJ0LmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5hbGVydFtkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LmFsZXJ0LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5hbGVydFtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93LmFsZXJ0LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvdy5hbGVydFtkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2M0YjM3O1xuICBjb2xvcjogI2NjNGIzNztcbn1cbi5idXR0b24uaG9sbG93LmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5hbGVydDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogcmdiKDEwMy4xODcyNTA5OTYsIDM2LjYzMTQ3NDEwMzYsIDI2LjMxMjc0OTAwNCk7XG4gIGNvbG9yOiByZ2IoMTAzLjE4NzI1MDk5NiwgMzYuNjMxNDc0MTAzNiwgMjYuMzEyNzQ5MDA0KTtcbn1cbi5idXR0b24uY2xlYXIsIC5idXR0b24uY2xlYXI6aG92ZXIsIC5idXR0b24uY2xlYXI6Zm9jdXMsIC5idXR0b24uY2xlYXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uY2xlYXIuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idXR0b24uY2xlYXIsIC5idXR0b24uY2xlYXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06Zm9jdXMge1xuICBjb2xvcjogIzE3NzliYTtcbn1cbi5idXR0b24uY2xlYXI6aG92ZXIsIC5idXR0b24uY2xlYXI6Zm9jdXMge1xuICBjb2xvcjogcmdiKDExLjUsIDYwLjUsIDkzKTtcbn1cbi5idXR0b24uY2xlYXIucHJpbWFyeSwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5LmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnlbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnByaW1hcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uY2xlYXIucHJpbWFyeVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXIucHJpbWFyeS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5jbGVhci5wcmltYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGNvbG9yOiAjMTc3OWJhO1xufVxuLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXMge1xuICBjb2xvcjogcmdiKDExLjUsIDYwLjUsIDkzKTtcbn1cbi5idXR0b24uY2xlYXIuc2Vjb25kYXJ5LCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnlbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeS5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnlbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnlbZGlzYWJsZWRdOmZvY3VzIHtcbiAgY29sb3I6ICM3Njc2NzY7XG59XG4uYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6Zm9jdXMge1xuICBjb2xvcjogIzNiM2IzYjtcbn1cbi5idXR0b24uY2xlYXIuc3VjY2VzcywgLmJ1dHRvbi5jbGVhci5zdWNjZXNzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3NbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3MuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uY2xlYXIuc3VjY2Vzc1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXIuc3VjY2Vzcy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5jbGVhci5zdWNjZXNzW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGNvbG9yOiAjM2FkYjc2O1xufVxuLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMge1xuICBjb2xvcjogcmdiKDIxLjM5OTE0MTYzMDksIDExNy4xMDA4NTgzNjkxLCA1Ny4wNjQzNzc2ODI0KTtcbn1cbi5idXR0b24uY2xlYXIud2FybmluZywgLmJ1dHRvbi5jbGVhci53YXJuaW5nLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLndhcm5pbmdbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLndhcm5pbmcuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uY2xlYXIud2FybmluZ1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXIud2FybmluZy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5jbGVhci53YXJuaW5nW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGNvbG9yOiAjZmZhZTAwO1xufVxuLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXMge1xuICBjb2xvcjogcmdiKDEyNy41LCA4NywgMCk7XG59XG4uYnV0dG9uLmNsZWFyLmFsZXJ0LCAuYnV0dG9uLmNsZWFyLmFsZXJ0LmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFsZXJ0W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5hbGVydC5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhci5hbGVydFtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXIuYWxlcnQuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXIuYWxlcnRbZGlzYWJsZWRdOmZvY3VzIHtcbiAgY29sb3I6ICNjYzRiMzc7XG59XG4uYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzIHtcbiAgY29sb3I6IHJnYigxMDMuMTg3MjUwOTk2LCAzNi42MzE0NzQxMDM2LCAyNi4zMTI3NDkwMDQpO1xufVxuLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbltkaXNhYmxlZF0ge1xuICBvcGFjaXR5OiAwLjI1O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuLmJ1dHRvbi5kcm9wZG93bjo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwLjRlbTtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgYm9yZGVyLWNvbG9yOiAjZmVmZWZlIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMC40ZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tbGVmdDogMWVtO1xufVxuLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3c6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyOjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICMxNzc5YmE7XG59XG4uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5wcmltYXJ5OjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhci5wcmltYXJ5OjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICMxNzc5YmE7XG59XG4uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5zZWNvbmRhcnk6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLnNlY29uZGFyeTo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjNzY3Njc2O1xufVxuLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuc3VjY2Vzczo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIuc3VjY2Vzczo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjM2FkYjc2O1xufVxuLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cud2FybmluZzo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIud2FybmluZzo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjZmZhZTAwO1xufVxuLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuYWxlcnQ6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLmFsZXJ0OjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNjYzRiMzc7XG59XG4uYnV0dG9uLmFycm93LW9ubHk6OmFmdGVyIHtcbiAgdG9wOiAtMC4xZW07XG4gIGZsb2F0OiBub25lO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuYS5idXR0b246aG92ZXIsIGEuYnV0dG9uOmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5bdHlwZT10ZXh0XSwgW3R5cGU9cGFzc3dvcmRdLCBbdHlwZT1kYXRlXSwgW3R5cGU9ZGF0ZXRpbWVdLCBbdHlwZT1kYXRldGltZS1sb2NhbF0sIFt0eXBlPW1vbnRoXSwgW3R5cGU9d2Vla10sIFt0eXBlPWVtYWlsXSwgW3R5cGU9bnVtYmVyXSwgW3R5cGU9c2VhcmNoXSwgW3R5cGU9dGVsXSwgW3R5cGU9dGltZV0sIFt0eXBlPXVybF0sIFt0eXBlPWNvbG9yXSxcbnRleHRhcmVhIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDIuNDM3NXJlbTtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC41cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgxMCwgMTAsIDEwLCAwLjEpO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzBhMGEwYTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG59XG5bdHlwZT10ZXh0XTpmb2N1cywgW3R5cGU9cGFzc3dvcmRdOmZvY3VzLCBbdHlwZT1kYXRlXTpmb2N1cywgW3R5cGU9ZGF0ZXRpbWVdOmZvY3VzLCBbdHlwZT1kYXRldGltZS1sb2NhbF06Zm9jdXMsIFt0eXBlPW1vbnRoXTpmb2N1cywgW3R5cGU9d2Vla106Zm9jdXMsIFt0eXBlPWVtYWlsXTpmb2N1cywgW3R5cGU9bnVtYmVyXTpmb2N1cywgW3R5cGU9c2VhcmNoXTpmb2N1cywgW3R5cGU9dGVsXTpmb2N1cywgW3R5cGU9dGltZV06Zm9jdXMsIFt0eXBlPXVybF06Zm9jdXMsIFt0eXBlPWNvbG9yXTpmb2N1cyxcbnRleHRhcmVhOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzhhOGE4YTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgYm94LXNoYWRvdzogMCAwIDVweCAjY2FjYWNhO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbn1cblxudGV4dGFyZWEge1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG50ZXh0YXJlYVtyb3dzXSB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuaW5wdXQ6ZGlzYWJsZWQsIGlucHV0W3JlYWRvbmx5XSxcbnRleHRhcmVhOmRpc2FibGVkLFxudGV4dGFyZWFbcmVhZG9ubHldIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuW3R5cGU9c3VibWl0XSxcblt0eXBlPWJ1dHRvbl0ge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG5pbnB1dFt0eXBlPXNlYXJjaF0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG46OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNjYWNhY2E7XG59XG5cblt0eXBlPWZpbGVdLFxuW3R5cGU9Y2hlY2tib3hdLFxuW3R5cGU9cmFkaW9dIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuW3R5cGU9Y2hlY2tib3hdICsgbGFiZWwsXG5bdHlwZT1yYWRpb10gKyBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5bdHlwZT1jaGVja2JveF0gKyBsYWJlbFtmb3JdLFxuW3R5cGU9cmFkaW9dICsgbGFiZWxbZm9yXSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxubGFiZWwgPiBbdHlwZT1jaGVja2JveF0sXG5sYWJlbCA+IFt0eXBlPXJhZGlvXSB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xufVxuXG5bdHlwZT1maWxlXSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjg7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxubGFiZWwubWlkZGxlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgcGFkZGluZzogMC41NjI1cmVtIDA7XG59XG5cbi5oZWxwLXRleHQge1xuICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuLmlucHV0LWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xufVxuLmlucHV0LWdyb3VwID4gOmZpcnN0LWNoaWxkLCAuaW5wdXQtZ3JvdXAgPiA6Zmlyc3QtY2hpbGQuaW5wdXQtZ3JvdXAtYnV0dG9uID4gKiB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7XG59XG4uaW5wdXQtZ3JvdXAgPiA6bGFzdC1jaGlsZCwgLmlucHV0LWdyb3VwID4gOmxhc3QtY2hpbGQuaW5wdXQtZ3JvdXAtYnV0dG9uID4gKiB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7XG59XG5cbi5pbnB1dC1ncm91cC1idXR0b24gYSxcbi5pbnB1dC1ncm91cC1idXR0b24gaW5wdXQsXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGJ1dHRvbixcbi5pbnB1dC1ncm91cC1idXR0b24gbGFiZWwsIC5pbnB1dC1ncm91cC1idXR0b24sIC5pbnB1dC1ncm91cC1maWVsZCwgLmlucHV0LWdyb3VwLWxhYmVsIHtcbiAgbWFyZ2luOiAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGFiZWwge1xuICBwYWRkaW5nOiAwIDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJhY2tncm91bmQ6ICNlNmU2ZTY7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLmlucHV0LWdyb3VwLWxhYmVsOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xufVxuLmlucHV0LWdyb3VwLWxhYmVsOmxhc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogMDtcbn1cblxuLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgZmxleDogMSAxIDBweDtcbiAgbWluLXdpZHRoOiAwO1xufVxuXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDAgMCBhdXRvO1xufVxuLmlucHV0LWdyb3VwLWJ1dHRvbiBhLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBpbnB1dCxcbi5pbnB1dC1ncm91cC1idXR0b24gYnV0dG9uLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBsYWJlbCB7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbmZpZWxkc2V0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG59XG5cbmxlZ2VuZCB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG4uZmllbGRzZXQge1xuICBtYXJnaW46IDEuMTI1cmVtIDA7XG4gIHBhZGRpbmc6IDEuMjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG59XG4uZmllbGRzZXQgbGVnZW5kIHtcbiAgbWFyZ2luOiAwO1xuICBtYXJnaW4tbGVmdDogLTAuMTg3NXJlbTtcbiAgcGFkZGluZzogMCAwLjE4NzVyZW07XG59XG5cbnNlbGVjdCB7XG4gIGhlaWdodDogMi40Mzc1cmVtO1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiAgYmFja2dyb3VuZC1vcmlnaW46IGNvbnRlbnQtYm94O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAtMXJlbSBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogOXB4IDZweDtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZlcnNpb249XCIxLjFcIiB3aWR0aD1cIjMyXCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDMyIDI0XCI+PHBvbHlnb24gcG9pbnRzPVwiMCwwIDMyLDAgMTYsMjRcIiBzdHlsZT1cImZpbGw6IHJnYiUyODEzOCwgMTM4LCAxMzglMjlcIj48L3BvbHlnb24+PC9zdmc+Jyk7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwXFwwICkge1xuICBzZWxlY3Qge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBSXBKUkVGVWVOckVrY2tOZ0RBTUJCZlJrRXQwT2JSQkJkc0dYVURnbVFmSzRYaEgybThjelFBQXkyN1IzdHN3NFFmZTJ4OHVPTzZvWUxiNkdsT29yM0dGK3N3VVJBT21VSitSd3RFSnM5V3ZUR0VZeEJYcUkxTVFBWmhDZlVRS1J6RE1WaitUd3JBSVY2anZTVUVrWUFyMUxTa2N5VEJiL1YrS1lmWDd4QWV1c3Ezc0xEdEdIM2tFR0FDUFdJZmxOWmZoUlFBQUFBQkpSVTVFcmtKZ2dnPT1cIik7XG4gIH1cbn1cbnNlbGVjdDpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM4YThhOGE7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGJveC1zaGFkb3c6IDAgMCA1cHggI2NhY2FjYTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG59XG5zZWxlY3Q6ZGlzYWJsZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuc2VsZWN0OjotbXMtZXhwYW5kIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbnNlbGVjdFttdWx0aXBsZV0ge1xuICBoZWlnaHQ6IGF1dG87XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG5zZWxlY3Q6bm90KFttdWx0aXBsZV0pIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4uaXMtaW52YWxpZC1pbnB1dDpub3QoOmZvY3VzKSB7XG4gIGJvcmRlci1jb2xvcjogI2NjNGIzNztcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI0OSwgMjM2LjEsIDIzNC4xKTtcbn1cbi5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjY2M0YjM3O1xufVxuXG4uaXMtaW52YWxpZC1sYWJlbCB7XG4gIGNvbG9yOiAjY2M0YjM3O1xufVxuXG4uZm9ybS1lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjY2M0YjM3O1xufVxuLmZvcm0tZXJyb3IuaXMtdmlzaWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uYWNjb3JkaW9uIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cbi5hY2NvcmRpb25bZGlzYWJsZWRdIC5hY2NvcmRpb24tdGl0bGUge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uYWNjb3JkaW9uLWl0ZW06Zmlyc3QtY2hpbGQgPiA6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAwO1xufVxuLmFjY29yZGlvbi1pdGVtOmxhc3QtY2hpbGQgPiA6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7XG59XG5cbi5hY2NvcmRpb24tdGl0bGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxLjI1cmVtIDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAjMTc3OWJhO1xufVxuOmxhc3QtY2hpbGQ6bm90KC5pcy1hY3RpdmUpID4gLmFjY29yZGlvbi10aXRsZSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTZlNmU2O1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAwO1xufVxuLmFjY29yZGlvbi10aXRsZTpob3ZlciwgLmFjY29yZGlvbi10aXRsZTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG59XG4uYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICByaWdodDogMXJlbTtcbiAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgY29udGVudDogXCIrXCI7XG59XG4uaXMtYWN0aXZlID4gLmFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHtcbiAgY29udGVudDogXCLigJNcIjtcbn1cblxuLmFjY29yZGlvbi1jb250ZW50IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG46bGFzdC1jaGlsZCA+IC5hY2NvcmRpb24tY29udGVudDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNmU2ZTY7XG59XG5cbi5hY2NvcmRpb24tbWVudSBsaSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmFjY29yZGlvbi1tZW51IGEge1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbn1cbi5hY2NvcmRpb24tbWVudSAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUgYSB7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtO1xufVxuLmFjY29yZGlvbi1tZW51IC5uZXN0ZWQuaXMtYWNjb3JkaW9uLXN1Ym1lbnUge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xufVxuLmFjY29yZGlvbi1tZW51LmFsaWduLXJpZ2h0IC5uZXN0ZWQuaXMtYWNjb3JkaW9uLXN1Ym1lbnUge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLmFjY29yZGlvbi1tZW51IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQ6bm90KC5oYXMtc3VibWVudS10b2dnbGUpID4gYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5hY2NvcmRpb24tbWVudSAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50Om5vdCguaGFzLXN1Ym1lbnUtdG9nZ2xlKSA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogNnB4O1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICBib3JkZXItY29sb3I6ICNmZWZlZmUgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6IC0zcHg7XG4gIHJpZ2h0OiAxcmVtO1xufVxuLmFjY29yZGlvbi1tZW51LmFsaWduLWxlZnQgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgcmlnaHQ6IDFyZW07XG4gIGxlZnQ6IGF1dG87XG59XG4uYWNjb3JkaW9uLW1lbnUuYWxpZ24tcmlnaHQgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDFyZW07XG59XG4uYWNjb3JkaW9uLW1lbnUgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudFthcmlhLWV4cGFuZGVkPXRydWVdID4gYTo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xufVxuXG4uaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaGFzLXN1Ym1lbnUtdG9nZ2xlID4gYSB7XG4gIG1hcmdpbi1yaWdodDogNDBweDtcbn1cblxuLnN1Ym1lbnUtdG9nZ2xlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uc3VibWVudS10b2dnbGU6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogNnB4O1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICBib3JkZXItY29sb3I6ICNmZWZlZmUgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBtYXJnaW46IGF1dG87XG59XG5cbi5zdWJtZW51LXRvZ2dsZVthcmlhLWV4cGFuZGVkPXRydWVdOjphZnRlciB7XG4gIHRyYW5zZm9ybTogc2NhbGVZKC0xKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbn1cblxuLnN1Ym1lbnUtdG9nZ2xlLXRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKSAhaW1wb3J0YW50O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xufVxuXG4uYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1pbi13aWR0aDogMi4xZW07XG4gIHBhZGRpbmc6IDAuM2VtO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGZvbnQtc2l6ZTogMC42cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6ICMxNzc5YmE7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmJhZGdlLnByaW1hcnkge1xuICBiYWNrZ3JvdW5kOiAjMTc3OWJhO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5iYWRnZS5zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kOiAjNzY3Njc2O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5iYWRnZS5zdWNjZXNzIHtcbiAgYmFja2dyb3VuZDogIzNhZGI3NjtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uYmFkZ2Uud2FybmluZyB7XG4gIGJhY2tncm91bmQ6ICNmZmFlMDA7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmJhZGdlLmFsZXJ0IHtcbiAgYmFja2dyb3VuZDogI2NjNGIzNztcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5icmVhZGNydW1icyB7XG4gIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbi5icmVhZGNydW1iczo6YmVmb3JlLCAuYnJlYWRjcnVtYnM6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBmbGV4LWJhc2lzOiAwO1xuICBvcmRlcjogMTtcbn1cbi5icmVhZGNydW1iczo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cbi5icmVhZGNydW1icyBsaSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBmb250LXNpemU6IDAuNjg3NXJlbTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5icmVhZGNydW1icyBsaTpub3QoOmxhc3QtY2hpbGQpOjphZnRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwIDAuNzVyZW07XG4gIG9wYWNpdHk6IDE7XG4gIGNvbnRlbnQ6IFwiL1wiO1xuICBjb2xvcjogI2NhY2FjYTtcbn1cbi5icmVhZGNydW1icyBhIHtcbiAgY29sb3I6ICMxNzc5YmE7XG59XG4uYnJlYWRjcnVtYnMgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuLmJyZWFkY3J1bWJzIC5kaXNhYmxlZCB7XG4gIGNvbG9yOiAjY2FjYWNhO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uYnV0dG9uLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgZmxleC1ncm93OiAxO1xufVxuLmJ1dHRvbi1ncm91cDo6YmVmb3JlLCAuYnV0dG9uLWdyb3VwOjphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uYnV0dG9uLWdyb3VwOjpiZWZvcmUsIC5idXR0b24tZ3JvdXA6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBmbGV4LWJhc2lzOiAwO1xuICBvcmRlcjogMTtcbn1cbi5idXR0b24tZ3JvdXA6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG4uYnV0dG9uLWdyb3VwIC5idXR0b24ge1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi1yaWdodDogMXB4O1xuICBtYXJnaW4tYm90dG9tOiAxcHg7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICBmbGV4OiAwIDAgYXV0bztcbn1cbi5idXR0b24tZ3JvdXAgLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuLmJ1dHRvbi1ncm91cC50aW55IC5idXR0b24ge1xuICBmb250LXNpemU6IDAuNnJlbTtcbn1cbi5idXR0b24tZ3JvdXAuc21hbGwgLmJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbn1cbi5idXR0b24tZ3JvdXAubGFyZ2UgLmJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cbi5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbiB7XG4gIGZsZXg6IDEgMSAwcHg7XG59XG4uYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNzc5YmE7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE4LjQsIDk2LjgsIDE0OC44KTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC5idXR0b25bZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc2NzY3NjtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDk0LjQsIDk0LjQsIDk0LjQpO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNhZGI3NjtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMzQuMjM4NjI2NjA5NCwgMTg3LjM2MTM3MzM5MDYsIDkxLjMwMzAwNDI5MTgpO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjA0LCAxMzkuMiwgMCk7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b25bZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGIzNztcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigxNjUuMDk5NjAxNTkzNiwgNTguNjEwMzU4NTY1NywgNDIuMTAwMzk4NDA2NCk7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxNzc5YmE7XG4gIGNvbG9yOiAjMTc3OWJhO1xufVxuLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbjpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogcmdiKDExLjUsIDYwLjUsIDkzKTtcbiAgY29sb3I6IHJnYigxMS41LCA2MC41LCA5Myk7XG59XG4uYnV0dG9uLWdyb3VwLmhvbGxvdy5wcmltYXJ5IC5idXR0b24sIC5idXR0b24tZ3JvdXAuaG9sbG93LnByaW1hcnkgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5ob2xsb3cucHJpbWFyeSAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cucHJpbWFyeSAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5wcmltYXJ5IC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5wcmltYXJ5IC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93LnByaW1hcnkgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ucHJpbWFyeSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5wcmltYXJ5LmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnByaW1hcnlbZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ucHJpbWFyeVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ucHJpbWFyeS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxNzc5YmE7XG4gIGNvbG9yOiAjMTc3OWJhO1xufVxuLmJ1dHRvbi1ncm91cC5ob2xsb3cucHJpbWFyeSAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5wcmltYXJ5IC5idXR0b246Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5wcmltYXJ5OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoMTEuNSwgNjAuNSwgOTMpO1xuICBjb2xvcjogcmdiKDExLjUsIDYwLjUsIDkzKTtcbn1cbi5idXR0b24tZ3JvdXAuaG9sbG93LnNlY29uZGFyeSAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zZWNvbmRhcnkgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc2Vjb25kYXJ5IC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zZWNvbmRhcnkgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc2Vjb25kYXJ5IC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zZWNvbmRhcnkgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc2Vjb25kYXJ5IC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnNlY29uZGFyeSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM3Njc2NzY7XG4gIGNvbG9yOiAjNzY3Njc2O1xufVxuLmJ1dHRvbi1ncm91cC5ob2xsb3cuc2Vjb25kYXJ5IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93LnNlY29uZGFyeSAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zZWNvbmRhcnk6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMzYjNiM2I7XG4gIGNvbG9yOiAjM2IzYjNiO1xufVxuLmJ1dHRvbi1ncm91cC5ob2xsb3cuc3VjY2VzcyAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zdWNjZXNzIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93LnN1Y2Nlc3MgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93LnN1Y2Nlc3MgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc3VjY2VzcyAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc3VjY2VzcyAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zdWNjZXNzIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnN1Y2Nlc3MsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc3VjY2Vzcy5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zdWNjZXNzLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnN1Y2Nlc3NbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc3VjY2Vzc1tkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjM2FkYjc2O1xuICBjb2xvcjogIzNhZGI3Njtcbn1cbi5idXR0b24tZ3JvdXAuaG9sbG93LnN1Y2Nlc3MgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc3VjY2VzcyAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc3VjY2Vzczpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogcmdiKDIxLjM5OTE0MTYzMDksIDExNy4xMDA4NTgzNjkxLCA1Ny4wNjQzNzc2ODI0KTtcbiAgY29sb3I6IHJnYigyMS4zOTkxNDE2MzA5LCAxMTcuMTAwODU4MzY5MSwgNTcuMDY0Mzc3NjgyNCk7XG59XG4uYnV0dG9uLWdyb3VwLmhvbGxvdy53YXJuaW5nIC5idXR0b24sIC5idXR0b24tZ3JvdXAuaG9sbG93Lndhcm5pbmcgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5ob2xsb3cud2FybmluZyAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cud2FybmluZyAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy53YXJuaW5nIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy53YXJuaW5nIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93Lndhcm5pbmcgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ud2FybmluZywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi53YXJuaW5nLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLndhcm5pbmdbZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ud2FybmluZ1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ud2FybmluZy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmZmFlMDA7XG4gIGNvbG9yOiAjZmZhZTAwO1xufVxuLmJ1dHRvbi1ncm91cC5ob2xsb3cud2FybmluZyAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy53YXJuaW5nIC5idXR0b246Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ud2FybmluZzpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi53YXJuaW5nOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoMTI3LjUsIDg3LCAwKTtcbiAgY29sb3I6IHJnYigxMjcuNSwgODcsIDApO1xufVxuLmJ1dHRvbi1ncm91cC5ob2xsb3cuYWxlcnQgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuYWxlcnQgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuYWxlcnQgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93LmFsZXJ0IC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93LmFsZXJ0IC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5hbGVydCAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5hbGVydCAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5hbGVydCwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5hbGVydC5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5hbGVydFtkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uYWxlcnQuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uYWxlcnRbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmFsZXJ0LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmFsZXJ0W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYzRiMzc7XG4gIGNvbG9yOiAjY2M0YjM3O1xufVxuLmJ1dHRvbi1ncm91cC5ob2xsb3cuYWxlcnQgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuYWxlcnQgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5hbGVydDpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5hbGVydDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogcmdiKDEwMy4xODcyNTA5OTYsIDM2LjYzMTQ3NDEwMzYsIDI2LjMxMjc0OTAwNCk7XG4gIGNvbG9yOiByZ2IoMTAzLjE4NzI1MDk5NiwgMzYuNjMxNDc0MTAzNiwgMjYuMzEyNzQ5MDA0KTtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b246Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGNvbG9yOiAjMTc3OWJhO1xufVxuLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b246Zm9jdXMge1xuICBjb2xvcjogcmdiKDExLjUsIDYwLjUsIDkzKTtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIucHJpbWFyeSAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnByaW1hcnkgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5jbGVhci5wcmltYXJ5IC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnByaW1hcnkgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci5wcmltYXJ5IC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnByaW1hcnkgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhci5wcmltYXJ5IC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24ucHJpbWFyeSwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGNvbG9yOiAjMTc3OWJhO1xufVxuLmJ1dHRvbi1ncm91cC5jbGVhci5wcmltYXJ5IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIucHJpbWFyeSAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24ucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnByaW1hcnk6Zm9jdXMge1xuICBjb2xvcjogcmdiKDExLjUsIDYwLjUsIDkzKTtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIuc2Vjb25kYXJ5IC5idXR0b24sIC5idXR0b24tZ3JvdXAuY2xlYXIuc2Vjb25kYXJ5IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIuc2Vjb25kYXJ5IC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnNlY29uZGFyeSAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnNlY29uZGFyeSAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci5zZWNvbmRhcnkgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhci5zZWNvbmRhcnkgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zZWNvbmRhcnksIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zZWNvbmRhcnlbZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc2Vjb25kYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnNlY29uZGFyeS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnNlY29uZGFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICBjb2xvcjogIzc2NzY3Njtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIuc2Vjb25kYXJ5IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIuc2Vjb25kYXJ5IC5idXR0b246Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zZWNvbmRhcnk6Zm9jdXMge1xuICBjb2xvcjogIzNiM2IzYjtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIuc3VjY2VzcyAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnN1Y2Nlc3MgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5jbGVhci5zdWNjZXNzIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnN1Y2Nlc3MgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci5zdWNjZXNzIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnN1Y2Nlc3MgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhci5zdWNjZXNzIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc3VjY2VzcywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGNvbG9yOiAjM2FkYjc2O1xufVxuLmJ1dHRvbi1ncm91cC5jbGVhci5zdWNjZXNzIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIuc3VjY2VzcyAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnN1Y2Nlc3M6Zm9jdXMge1xuICBjb2xvcjogcmdiKDIxLjM5OTE0MTYzMDksIDExNy4xMDA4NTgzNjkxLCA1Ny4wNjQzNzc2ODI0KTtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIud2FybmluZyAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmNsZWFyLndhcm5pbmcgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5jbGVhci53YXJuaW5nIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyLndhcm5pbmcgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci53YXJuaW5nIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLndhcm5pbmcgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhci53YXJuaW5nIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24ud2FybmluZywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGNvbG9yOiAjZmZhZTAwO1xufVxuLmJ1dHRvbi1ncm91cC5jbGVhci53YXJuaW5nIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIud2FybmluZyAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24ud2FybmluZzpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLndhcm5pbmc6Zm9jdXMge1xuICBjb2xvcjogcmdiKDEyNy41LCA4NywgMCk7XG59XG4uYnV0dG9uLWdyb3VwLmNsZWFyLmFsZXJ0IC5idXR0b24sIC5idXR0b24tZ3JvdXAuY2xlYXIuYWxlcnQgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5jbGVhci5hbGVydCAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhci5hbGVydCAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLmFsZXJ0IC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLmFsZXJ0IC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIuYWxlcnQgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5hbGVydCwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmFsZXJ0LmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uYWxlcnRbZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uYWxlcnQuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5hbGVydFtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5hbGVydC5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmFsZXJ0W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGNvbG9yOiAjY2M0YjM3O1xufVxuLmJ1dHRvbi1ncm91cC5jbGVhci5hbGVydCAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLmFsZXJ0IC5idXR0b246Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5hbGVydDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmFsZXJ0OmZvY3VzIHtcbiAgY29sb3I6IHJnYigxMDMuMTg3MjUwOTk2LCAzNi42MzE0NzQxMDM2LCAyNi4zMTI3NDkwMDQpO1xufVxuLmJ1dHRvbi1ncm91cC5uby1nYXBzIC5idXR0b24ge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjA2MjVyZW07XG59XG4uYnV0dG9uLWdyb3VwLm5vLWdhcHMgLmJ1dHRvbiArIC5idXR0b24ge1xuICBib3JkZXItbGVmdC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uYnV0dG9uLWdyb3VwLnN0YWNrZWQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIHtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuLmJ1dHRvbi1ncm91cC5zdGFja2VkIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0gLmJ1dHRvbiB7XG4gIGZsZXg6IDAgMCAxMDAlO1xufVxuLmJ1dHRvbi1ncm91cC5zdGFja2VkIC5idXR0b246bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCAuYnV0dG9uOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIC5idXR0b246bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uYnV0dG9uLWdyb3VwLnN0YWNrZWQuZXhwYW5kZWQgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCAuYnV0dG9uIHtcbiAgZmxleDogMSAxIDBweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCAuYnV0dG9uIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAuYnV0dG9uIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDAuMDYxMjVlbSkge1xuICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIC5idXR0b24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtLmV4cGFuZGVkIC5idXR0b24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG4uY2FsbG91dCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTQuODUsIDI1NC44NSwgMjU0Ljg1KTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuLmNhbGxvdXQgPiA6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLmNhbGxvdXQgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uY2FsbG91dC5wcmltYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIxNC44MTg2NjAyODcxLCAyMzUuOTg5NDczNjg0MiwgMjUwLjAzMTMzOTcxMjkpO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5jYWxsb3V0LnNlY29uZGFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyMzQuNDUsIDIzNC40NSwgMjM0LjQ1KTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uY2FsbG91dC5zdWNjZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIyNS40NSwgMjQ5LjYsIDIzNC40NSk7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmNhbGxvdXQud2FybmluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDI0Mi44NSwgMjE2Ljc1KTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uY2FsbG91dC5hbGVydCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyNDcuMzUsIDIyOCwgMjI1KTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uY2FsbG91dC5zbWFsbCB7XG4gIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG59XG4uY2FsbG91dC5sYXJnZSB7XG4gIHBhZGRpbmctdG9wOiAzcmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgcGFkZGluZy1sZWZ0OiAzcmVtO1xufVxuXG4uY2FyZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXgtZ3JvdzogMTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uY2FyZCA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtZGl2aWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICBwYWRkaW5nOiAxcmVtO1xuICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xufVxuLmNhcmQtZGl2aWRlciA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtc2VjdGlvbiB7XG4gIGZsZXg6IDEgMCBhdXRvO1xuICBwYWRkaW5nOiAxcmVtO1xufVxuLmNhcmQtc2VjdGlvbiA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtaW1hZ2Uge1xuICBtaW4taGVpZ2h0OiAxcHg7XG59XG5cbi5jbG9zZS1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xuICBjb2xvcjogIzhhOGE4YTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAuY2xvc2UtYnV0dG9uIHtcbiAgb3V0bGluZTogMDtcbn1cbi5jbG9zZS1idXR0b246aG92ZXIsIC5jbG9zZS1idXR0b246Zm9jdXMge1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5jbG9zZS1idXR0b24uc21hbGwge1xuICByaWdodDogMC42NnJlbTtcbiAgdG9wOiAwLjMzZW07XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uY2xvc2UtYnV0dG9uLm1lZGl1bSwgLmNsb3NlLWJ1dHRvbiB7XG4gIHJpZ2h0OiAxcmVtO1xuICB0b3A6IDAuNXJlbTtcbiAgZm9udC1zaXplOiAyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4ubWVudSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdIC5tZW51IGxpIHtcbiAgb3V0bGluZTogMDtcbn1cbi5tZW51IGEsXG4ubWVudSAuYnV0dG9uIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtO1xufVxuLm1lbnUgaW5wdXQsXG4ubWVudSBzZWxlY3QsXG4ubWVudSBhLFxuLm1lbnUgYnV0dG9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5tZW51IGlucHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLm1lbnUsIC5tZW51Lmhvcml6b250YWwge1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG59XG4ubWVudS52ZXJ0aWNhbCB7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuLm1lbnUudmVydGljYWwuaWNvbi10b3AgbGkgYSBpbWcsXG4ubWVudS52ZXJ0aWNhbC5pY29uLXRvcCBsaSBhIGksXG4ubWVudS52ZXJ0aWNhbC5pY29uLXRvcCBsaSBhIHN2ZywgLm1lbnUudmVydGljYWwuaWNvbi1ib3R0b20gbGkgYSBpbWcsXG4ubWVudS52ZXJ0aWNhbC5pY29uLWJvdHRvbSBsaSBhIGksXG4ubWVudS52ZXJ0aWNhbC5pY29uLWJvdHRvbSBsaSBhIHN2ZyB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG4ubWVudS5leHBhbmRlZCBsaSB7XG4gIGZsZXg6IDEgMSAwcHg7XG59XG4ubWVudS5leHBhbmRlZC5pY29uLXRvcCBsaSBhIGltZyxcbi5tZW51LmV4cGFuZGVkLmljb24tdG9wIGxpIGEgaSxcbi5tZW51LmV4cGFuZGVkLmljb24tdG9wIGxpIGEgc3ZnLCAubWVudS5leHBhbmRlZC5pY29uLWJvdHRvbSBsaSBhIGltZyxcbi5tZW51LmV4cGFuZGVkLmljb24tYm90dG9tIGxpIGEgaSxcbi5tZW51LmV4cGFuZGVkLmljb24tYm90dG9tIGxpIGEgc3ZnIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi5tZW51LnNpbXBsZSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4ubWVudS5zaW1wbGUgbGkgKyBsaSB7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xufVxuLm1lbnUuc2ltcGxlIGEge1xuICBwYWRkaW5nOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAubWVudS5tZWRpdW0taG9yaXpvbnRhbCB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbiAgLm1lbnUubWVkaXVtLXZlcnRpY2FsIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG4gIC5tZW51Lm1lZGl1bS1leHBhbmRlZCBsaSB7XG4gICAgZmxleDogMSAxIDBweDtcbiAgfVxuICAubWVudS5tZWRpdW0tc2ltcGxlIGxpIHtcbiAgICBmbGV4OiAxIDEgMHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWVudS5sYXJnZS1ob3Jpem9udGFsIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAubWVudS5sYXJnZS12ZXJ0aWNhbCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuICAubWVudS5sYXJnZS1leHBhbmRlZCBsaSB7XG4gICAgZmxleDogMSAxIDBweDtcbiAgfVxuICAubWVudS5sYXJnZS1zaW1wbGUgbGkge1xuICAgIGZsZXg6IDEgMSAwcHg7XG4gIH1cbn1cbi5tZW51Lm5lc3RlZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG59XG4ubWVudS5pY29ucyBhIHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5tZW51Lmljb24tdG9wIGEsIC5tZW51Lmljb24tcmlnaHQgYSwgLm1lbnUuaWNvbi1ib3R0b20gYSwgLm1lbnUuaWNvbi1sZWZ0IGEge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLm1lbnUuaWNvbi1sZWZ0IGxpIGEsIC5tZW51Lm5lc3RlZC5pY29uLWxlZnQgbGkgYSB7XG4gIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbn1cbi5tZW51Lmljb24tbGVmdCBsaSBhIGltZyxcbi5tZW51Lmljb24tbGVmdCBsaSBhIGksXG4ubWVudS5pY29uLWxlZnQgbGkgYSBzdmcsIC5tZW51Lm5lc3RlZC5pY29uLWxlZnQgbGkgYSBpbWcsXG4ubWVudS5uZXN0ZWQuaWNvbi1sZWZ0IGxpIGEgaSxcbi5tZW51Lm5lc3RlZC5pY29uLWxlZnQgbGkgYSBzdmcge1xuICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07XG59XG4ubWVudS5pY29uLXJpZ2h0IGxpIGEsIC5tZW51Lm5lc3RlZC5pY29uLXJpZ2h0IGxpIGEge1xuICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG59XG4ubWVudS5pY29uLXJpZ2h0IGxpIGEgaW1nLFxuLm1lbnUuaWNvbi1yaWdodCBsaSBhIGksXG4ubWVudS5pY29uLXJpZ2h0IGxpIGEgc3ZnLCAubWVudS5uZXN0ZWQuaWNvbi1yaWdodCBsaSBhIGltZyxcbi5tZW51Lm5lc3RlZC5pY29uLXJpZ2h0IGxpIGEgaSxcbi5tZW51Lm5lc3RlZC5pY29uLXJpZ2h0IGxpIGEgc3ZnIHtcbiAgbWFyZ2luLWxlZnQ6IDAuMjVyZW07XG59XG4ubWVudS5pY29uLXRvcCBsaSBhLCAubWVudS5uZXN0ZWQuaWNvbi10b3AgbGkgYSB7XG4gIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbn1cbi5tZW51Lmljb24tdG9wIGxpIGEgaW1nLFxuLm1lbnUuaWNvbi10b3AgbGkgYSBpLFxuLm1lbnUuaWNvbi10b3AgbGkgYSBzdmcsIC5tZW51Lm5lc3RlZC5pY29uLXRvcCBsaSBhIGltZyxcbi5tZW51Lm5lc3RlZC5pY29uLXRvcCBsaSBhIGksXG4ubWVudS5uZXN0ZWQuaWNvbi10b3AgbGkgYSBzdmcge1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4ubWVudS5pY29uLWJvdHRvbSBsaSBhLCAubWVudS5uZXN0ZWQuaWNvbi1ib3R0b20gbGkgYSB7XG4gIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbn1cbi5tZW51Lmljb24tYm90dG9tIGxpIGEgaW1nLFxuLm1lbnUuaWNvbi1ib3R0b20gbGkgYSBpLFxuLm1lbnUuaWNvbi1ib3R0b20gbGkgYSBzdmcsIC5tZW51Lm5lc3RlZC5pY29uLWJvdHRvbSBsaSBhIGltZyxcbi5tZW51Lm5lc3RlZC5pY29uLWJvdHRvbSBsaSBhIGksXG4ubWVudS5uZXN0ZWQuaWNvbi1ib3R0b20gbGkgYSBzdmcge1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4ubWVudSAuaXMtYWN0aXZlID4gYSB7XG4gIGJhY2tncm91bmQ6ICMxNzc5YmE7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLm1lbnUgLmFjdGl2ZSA+IGEge1xuICBiYWNrZ3JvdW5kOiAjMTc3OWJhO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5tZW51LmFsaWduLWxlZnQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG4ubWVudS5hbGlnbi1yaWdodCBsaSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG4ubWVudS5hbGlnbi1yaWdodCBsaSAuc3VibWVudSBsaSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cbi5tZW51LmFsaWduLXJpZ2h0LnZlcnRpY2FsIGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLm1lbnUuYWxpZ24tcmlnaHQudmVydGljYWwgbGkgLnN1Ym1lbnUgbGkge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbi5tZW51LmFsaWduLXJpZ2h0Lmljb24tdG9wIGxpIGEgaW1nLFxuLm1lbnUuYWxpZ24tcmlnaHQuaWNvbi10b3AgbGkgYSBpLFxuLm1lbnUuYWxpZ24tcmlnaHQuaWNvbi10b3AgbGkgYSBzdmcsIC5tZW51LmFsaWduLXJpZ2h0Lmljb24tYm90dG9tIGxpIGEgaW1nLFxuLm1lbnUuYWxpZ24tcmlnaHQuaWNvbi1ib3R0b20gbGkgYSBpLFxuLm1lbnUuYWxpZ24tcmlnaHQuaWNvbi1ib3R0b20gbGkgYSBzdmcge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbi5tZW51LmFsaWduLXJpZ2h0IC5uZXN0ZWQge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLm1lbnUuYWxpZ24tY2VudGVyIGxpIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4ubWVudS5hbGlnbi1jZW50ZXIgbGkgLnN1Ym1lbnUgbGkge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG4ubWVudSAubWVudS10ZXh0IHtcbiAgcGFkZGluZzogMC43cmVtIDFyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi5tZW51LWNlbnRlcmVkID4gLm1lbnUge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi5tZW51LWNlbnRlcmVkID4gLm1lbnUgbGkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi5tZW51LWNlbnRlcmVkID4gLm1lbnUgbGkgLnN1Ym1lbnUgbGkge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG5cbi5uby1qcyBbZGF0YS1yZXNwb25zaXZlLW1lbnVdIHVsIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm1lbnUtaWNvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4ubWVudS1pY29uOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMnB4O1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICBib3gtc2hhZG93OiAwIDdweCAwICNmZWZlZmUsIDAgMTRweCAwICNmZWZlZmU7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG4ubWVudS1pY29uOmhvdmVyOjphZnRlciB7XG4gIGJhY2tncm91bmQ6ICNjYWNhY2E7XG4gIGJveC1zaGFkb3c6IDAgN3B4IDAgI2NhY2FjYSwgMCAxNHB4IDAgI2NhY2FjYTtcbn1cblxuLm1lbnUtaWNvbi5kYXJrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDE2cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5tZW51LWljb24uZGFyazo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDJweDtcbiAgYmFja2dyb3VuZDogIzBhMGEwYTtcbiAgYm94LXNoYWRvdzogMCA3cHggMCAjMGEwYTBhLCAwIDE0cHggMCAjMGEwYTBhO1xuICBjb250ZW50OiBcIlwiO1xufVxuLm1lbnUtaWNvbi5kYXJrOmhvdmVyOjphZnRlciB7XG4gIGJhY2tncm91bmQ6ICM4YThhOGE7XG4gIGJveC1zaGFkb3c6IDAgN3B4IDAgIzhhOGE4YSwgMCAxNHB4IDAgIzhhOGE4YTtcbn1cblxuLmlzLWRyaWxsZG93biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5pcy1kcmlsbGRvd24gbGkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5pcy1kcmlsbGRvd24uYW5pbWF0ZS1oZWlnaHQge1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgMC41cztcbn1cblxuLmRyaWxsZG93biBhIHtcbiAgcGFkZGluZzogMC43cmVtIDFyZW07XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG59XG4uZHJpbGxkb3duIC5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAxMDAlO1xuICB6LWluZGV4OiAtMTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBsaW5lYXI7XG59XG4uZHJpbGxkb3duIC5pcy1kcmlsbGRvd24tc3VibWVudS5pcy1hY3RpdmUge1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbn1cbi5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51LmlzLWNsb3Npbmcge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG59XG4uZHJpbGxkb3duIC5pcy1kcmlsbGRvd24tc3VibWVudSBhIHtcbiAgcGFkZGluZzogMC43cmVtIDFyZW07XG59XG4uZHJpbGxkb3duIC5uZXN0ZWQuaXMtZHJpbGxkb3duLXN1Ym1lbnUge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLmRyaWxsZG93biAuZHJpbGxkb3duLXN1Ym1lbnUtY292ZXItcHJldmlvdXMge1xuICBtaW4taGVpZ2h0OiAxMDAlO1xufVxuLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogNnB4O1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzE3NzliYTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLXRvcDogLTZweDtcbiAgcmlnaHQ6IDFyZW07XG59XG4uZHJpbGxkb3duLmFsaWduLWxlZnQgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogNnB4O1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzE3NzliYTtcbiAgcmlnaHQ6IDFyZW07XG4gIGxlZnQ6IGF1dG87XG59XG4uZHJpbGxkb3duLmFsaWduLXJpZ2h0IC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDZweDtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzE3NzliYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDFyZW07XG59XG4uZHJpbGxkb3duIC5qcy1kcmlsbGRvd24tYmFjayA+IGE6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDZweDtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzE3NzliYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07XG59XG5cbi5kcm9wZG93bi1wYW5lIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDMwMHB4O1xuICBwYWRkaW5nOiAxcmVtO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbi5kcm9wZG93bi1wYW5lLmlzLW9wZW5pbmcge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5kcm9wZG93bi1wYW5lLmlzLW9wZW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLmRyb3Bkb3duLXBhbmUudGlueSB7XG4gIHdpZHRoOiAxMDBweDtcbn1cblxuLmRyb3Bkb3duLXBhbmUuc21hbGwge1xuICB3aWR0aDogMjAwcHg7XG59XG5cbi5kcm9wZG93bi1wYW5lLmxhcmdlIHtcbiAgd2lkdGg6IDQwMHB4O1xufVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMTAwJTtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87XG59XG4uZHJvcGRvd24ubWVudSA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB0b3A6IDEwMCU7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAwO1xufVxuLmRyb3Bkb3duLm1lbnUgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbn1cbi5kcm9wZG93bi5tZW51ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDZweDtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgYm9yZGVyLWNvbG9yOiAjMTc3OWJhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICByaWdodDogNXB4O1xuICBsZWZ0OiBhdXRvO1xuICBtYXJnaW4tdG9wOiAtM3B4O1xufVxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAuZHJvcGRvd24ubWVudSBhIHtcbiAgb3V0bGluZTogMDtcbn1cbi5kcm9wZG93bi5tZW51ID4gbGkgPiBhIHtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgcGFkZGluZzogMC43cmVtIDFyZW07XG59XG4uZHJvcGRvd24ubWVudSA+IGxpLmlzLWFjdGl2ZSA+IGEge1xuICBiYWNrZ3JvdW5kOiByZ2IoNTQuMzg4ODg4ODg4OSwgNjkuMjIyMjIyMjIyMiwgNzkuMTExMTExMTExMSk7XG4gIGNvbG9yOiAjZTZlNmU2O1xufVxuLm5vLWpzIC5kcm9wZG93bi5tZW51IHVsIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5kcm9wZG93bi5tZW51IC5uZXN0ZWQuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgdG9wOiAwO1xufVxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAxMDAlO1xuICBsZWZ0OiBhdXRvO1xufVxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDEwMCU7XG59XG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICByaWdodDogMTRweDtcbn1cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogNnB4O1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMTc3OWJhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICByaWdodDogYXV0bztcbiAgbGVmdDogNXB4O1xufVxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogNnB4O1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzE3NzliYTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1ob3Jpem9udGFsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDZweDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTc3OWJhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiA1cHg7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlO1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxNHB4O1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMxNzc5YmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogNXB4O1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogNnB4O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzE3NzliYTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogNnB4O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6ICMxNzc5YmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcmlnaHQ6IDVweDtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwO1xuICB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMTRweDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMxNzc5YmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogNXB4O1xuICB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMTc3OWJhO1xuICB9XG59XG4uZHJvcGRvd24ubWVudS5hbGlnbi1yaWdodCAuaXMtZHJvcGRvd24tc3VibWVudS5maXJzdC1zdWIge1xuICB0b3A6IDEwMCU7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvO1xufVxuXG4uaXMtZHJvcGRvd24tbWVudS52ZXJ0aWNhbCB7XG4gIHdpZHRoOiAxMDBweDtcbn1cbi5pcy1kcm9wZG93bi1tZW51LnZlcnRpY2FsLmFsaWduLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgYTo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICByaWdodDogNXB4O1xuICBsZWZ0OiBhdXRvO1xuICBtYXJnaW4tdG9wOiAtNnB4O1xufVxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLWlubmVyID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IGF1dG87XG59XG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgcmlnaHQ6IDEwMCU7XG4gIGxlZnQ6IGF1dG87XG59XG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAxMDAlO1xufVxuXG4uaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAxMDAlO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBub25lO1xuICBtaW4td2lkdGg6IDIwMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xufVxuLmRyb3Bkb3duIC5pcy1kcm9wZG93bi1zdWJtZW51IGEge1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbn1cbi5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgcmlnaHQ6IDE0cHg7XG59XG4uaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogNnB4O1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMTc3OWJhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICByaWdodDogYXV0bztcbiAgbGVmdDogNXB4O1xufVxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMTc3OWJhO1xufVxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICBtYXJnaW4tdG9wOiAtMXB4O1xufVxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUgPiBsaSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUuanMtZHJvcGRvd24tYWN0aXZlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5yZXNwb25zaXZlLWVtYmVkLFxuLmZsZXgtdmlkZW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDc1JTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5yZXNwb25zaXZlLWVtYmVkIGlmcmFtZSxcbi5yZXNwb25zaXZlLWVtYmVkIG9iamVjdCxcbi5yZXNwb25zaXZlLWVtYmVkIGVtYmVkLFxuLnJlc3BvbnNpdmUtZW1iZWQgdmlkZW8sXG4uZmxleC12aWRlbyBpZnJhbWUsXG4uZmxleC12aWRlbyBvYmplY3QsXG4uZmxleC12aWRlbyBlbWJlZCxcbi5mbGV4LXZpZGVvIHZpZGVvIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4ucmVzcG9uc2l2ZS1lbWJlZC53aWRlc2NyZWVuLFxuLmZsZXgtdmlkZW8ud2lkZXNjcmVlbiB7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG59XG5cbi5sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBiYWNrZ3JvdW5kOiAjMTc3OWJhO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5sYWJlbC5wcmltYXJ5IHtcbiAgYmFja2dyb3VuZDogIzE3NzliYTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4ubGFiZWwuc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZDogIzc2NzY3NjtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4ubGFiZWwuc3VjY2VzcyB7XG4gIGJhY2tncm91bmQ6ICMzYWRiNzY7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmxhYmVsLndhcm5pbmcge1xuICBiYWNrZ3JvdW5kOiAjZmZhZTAwO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5sYWJlbC5hbGVydCB7XG4gIGJhY2tncm91bmQ6ICNjYzRiMzc7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4ubWVkaWEtb2JqZWN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZmxleC13cmFwOiBub3dyYXA7XG59XG4ubWVkaWEtb2JqZWN0IGltZyB7XG4gIG1heC13aWR0aDogbm9uZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MC4wNjEyNWVtKSB7XG4gIC5tZWRpYS1vYmplY3Quc3RhY2stZm9yLXNtYWxsIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cbn1cblxuLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgZmxleDogMCAxIGF1dG87XG59XG4ubWVkaWEtb2JqZWN0LXNlY3Rpb246Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xufVxuLm1lZGlhLW9iamVjdC1zZWN0aW9uOmxhc3QtY2hpbGQ6bm90KDpudGgtY2hpbGQoMikpIHtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtO1xufVxuLm1lZGlhLW9iamVjdC1zZWN0aW9uID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQwLjA2MTI1ZW0pIHtcbiAgLnN0YWNrLWZvci1zbWFsbCAubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLnN0YWNrLWZvci1zbWFsbCAubWVkaWEtb2JqZWN0LXNlY3Rpb24gaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuLm1lZGlhLW9iamVjdC1zZWN0aW9uLm1haW4tc2VjdGlvbiB7XG4gIGZsZXg6IDEgMSAwcHg7XG59XG5cbi5pcy1vZmYtY2FudmFzLW9wZW4ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uanMtb2ZmLWNhbnZhcy1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDExO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZSwgdmlzaWJpbGl0eSAwLjVzIGVhc2U7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU0LCAyNTQsIDI1NCwgMC4yNSk7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5qcy1vZmYtY2FudmFzLW92ZXJsYXkuaXMtdmlzaWJsZSB7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG4uanMtb2ZmLWNhbnZhcy1vdmVybGF5LmlzLWNsb3NhYmxlIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmpzLW9mZi1jYW52YXMtb3ZlcmxheS5pcy1vdmVybGF5LWFic29sdXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLmpzLW9mZi1jYW52YXMtb3ZlcmxheS5pcy1vdmVybGF5LWZpeGVkIHtcbiAgcG9zaXRpb246IGZpeGVkO1xufVxuXG4ub2ZmLWNhbnZhcy13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ub2ZmLWNhbnZhcyB7XG4gIHotaW5kZXg6IDEyO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tncm91bmQ6ICMyQzM4NDA7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbn1cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gLm9mZi1jYW52YXMge1xuICBvdXRsaW5lOiAwO1xufVxuLm9mZi1jYW52YXMuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgei1pbmRleDogMTI7XG59XG4ub2ZmLWNhbnZhcy5pcy1jbG9zZWQge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4ub2ZmLWNhbnZhcy5pcy10cmFuc2l0aW9uLW92ZXJsYXAge1xuICB6LWluZGV4OiAxMztcbn1cbi5vZmYtY2FudmFzLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgxMCwgMTAsIDEwLCAwLjcpO1xufVxuLm9mZi1jYW52YXMuaXMtb3BlbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG4ub2ZmLWNhbnZhcy1hYnNvbHV0ZSB7XG4gIHotaW5kZXg6IDEyO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tncm91bmQ6ICMyQzM4NDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gLm9mZi1jYW52YXMtYWJzb2x1dGUge1xuICBvdXRsaW5lOiAwO1xufVxuLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgei1pbmRleDogMTI7XG59XG4ub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy1jbG9zZWQge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4ub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy10cmFuc2l0aW9uLW92ZXJsYXAge1xuICB6LWluZGV4OiAxMztcbn1cbi5vZmYtY2FudmFzLWFic29sdXRlLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgxMCwgMTAsIDEwLCAwLjcpO1xufVxuLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtb3BlbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG4ucG9zaXRpb24tbGVmdCB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIHdpZHRoOiAyODBweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yODBweCk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5wb3NpdGlvbi1sZWZ0IHtcbiAgICB3aWR0aDogMjgwcHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yODBweCk7XG4gIH1cbn1cbi5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tbGVmdCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjgwcHgpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWxlZnQge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjgwcHgpO1xuICB9XG59XG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWxlZnQuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLWxlZnQuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyODBweCk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi1sZWZ0Lmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyODBweCk7XG4gIH1cbn1cblxuLnBvc2l0aW9uLWxlZnQuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgLTEzcHggMCAyMHB4IC0xM3B4IHJnYmEoMTAsIDEwLCAxMCwgMC4yNSk7XG59XG5cbi5wb3NpdGlvbi1yaWdodCB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICB3aWR0aDogMjgwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyODBweCk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5wb3NpdGlvbi1yaWdodCB7XG4gICAgd2lkdGg6IDI4MHB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyODBweCk7XG4gIH1cbn1cbi5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tcmlnaHQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjgwcHgpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXJpZ2h0IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjgwcHgpO1xuICB9XG59XG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXJpZ2h0LmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG59XG5cbi5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi1yaWdodC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yODBweCk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi1yaWdodC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI4MHB4KTtcbiAgfVxufVxuXG4ucG9zaXRpb24tcmlnaHQuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMTNweCAwIDIwcHggLTEzcHggcmdiYSgxMCwgMTAsIDEwLCAwLjI1KTtcbn1cblxuLnBvc2l0aW9uLXRvcCB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgaGVpZ2h0OiAyNTBweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNTBweCk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5wb3NpdGlvbi10b3Age1xuICAgIGhlaWdodDogMjUwcHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNTBweCk7XG4gIH1cbn1cbi5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tdG9wIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNTBweCk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tdG9wIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1MHB4KTtcbiAgfVxufVxuLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi10b3AuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLXRvcC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI1MHB4KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLXRvcC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpO1xuICB9XG59XG5cbi5wb3NpdGlvbi10b3AuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMTNweCAyMHB4IC0xM3B4IHJnYmEoMTAsIDEwLCAxMCwgMC4yNSk7XG59XG5cbi5wb3NpdGlvbi1ib3R0b20ge1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIGhlaWdodDogMjUwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNTBweCk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5wb3NpdGlvbi1ib3R0b20ge1xuICAgIGhlaWdodDogMjUwcHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI1MHB4KTtcbiAgfVxufVxuLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1ib3R0b20ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWJvdHRvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI1MHB4KTtcbiAgfVxufVxuLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1ib3R0b20uaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLWJvdHRvbS5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNTBweCk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi1ib3R0b20uaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNTBweCk7XG4gIH1cbn1cblxuLnBvc2l0aW9uLWJvdHRvbS5pcy10cmFuc2l0aW9uLXB1c2gge1xuICBib3gtc2hhZG93OiBpbnNldCAwIDEzcHggMjBweCAtMTNweCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgdHJhbnNmb3JtOiBub25lO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG4ub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy10cmFuc2l0aW9uLW92ZXJsYXAsIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGVhc2U7XG59XG4ub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cbi5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMuaXMtb3BlbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1sZWZ0IHtcbiAgICBtYXJnaW4tbGVmdDogMjgwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tbGVmdDogMjgwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLW1lZGl1bSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXJpZ2h0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI4MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLW1lZGl1bSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1yaWdodDogMjgwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXRvcCB7XG4gICAgbWFyZ2luLXRvcDogMjgwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLW1lZGl1bSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi10b3A6IDI4MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLW1lZGl1bSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1ib3R0b20ge1xuICAgIG1hcmdpbi1ib3R0b206IDI4MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyODBweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWxlZnQge1xuICAgIG1hcmdpbi1sZWZ0OiAyODBweDtcbiAgfVxuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLWxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLWxlZnQ6IDI4MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1yaWdodCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyODBweDtcbiAgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1yaWdodDogMjgwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXRvcCB7XG4gICAgbWFyZ2luLXRvcDogMjgwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLWxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogMjgwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWJvdHRvbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjgwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjgwcHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtLnBvc2l0aW9uLWxlZnQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtLnBvc2l0aW9uLXJpZ2h0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bS5wb3NpdGlvbi10b3AsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtLnBvc2l0aW9uLWJvdHRvbSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZS5wb3NpdGlvbi1sZWZ0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlLnBvc2l0aW9uLXJpZ2h0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlLnBvc2l0aW9uLXRvcCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZS5wb3NpdGlvbi1ib3R0b20ge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLm9yYml0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ub3JiaXQtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLm9yYml0LXNsaWRlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5vcmJpdC1zbGlkZS5uby1tb3Rpb251aS5pcy1hY3RpdmUge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG59XG5cbi5vcmJpdC1maWd1cmUge1xuICBtYXJnaW46IDA7XG59XG5cbi5vcmJpdC1pbWFnZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcbn1cblxuLm9yYml0LWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAsIDEwLCAxMCwgMC41KTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5vcmJpdC1uZXh0LCAub3JiaXQtcHJldmlvdXMge1xuICB6LWluZGV4OiAxMDtcbiAgcGFkZGluZzogMXJlbTtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gLm9yYml0LW5leHQsIFtkYXRhLXdoYXRpbnB1dD1tb3VzZV0gLm9yYml0LXByZXZpb3VzIHtcbiAgb3V0bGluZTogMDtcbn1cbi5vcmJpdC1uZXh0OmhvdmVyLCAub3JiaXQtcHJldmlvdXM6aG92ZXIsIC5vcmJpdC1uZXh0OmFjdGl2ZSwgLm9yYml0LXByZXZpb3VzOmFjdGl2ZSwgLm9yYml0LW5leHQ6Zm9jdXMsIC5vcmJpdC1wcmV2aW91czpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAsIDEwLCAxMCwgMC41KTtcbn1cblxuLm9yYml0LXByZXZpb3VzIHtcbiAgbGVmdDogMDtcbn1cblxuLm9yYml0LW5leHQge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDtcbn1cblxuLm9yYml0LWJ1bGxldHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6IDAuOHJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC44cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdIC5vcmJpdC1idWxsZXRzIHtcbiAgb3V0bGluZTogMDtcbn1cbi5vcmJpdC1idWxsZXRzIGJ1dHRvbiB7XG4gIHdpZHRoOiAxLjJyZW07XG4gIGhlaWdodDogMS4ycmVtO1xuICBtYXJnaW46IDAuMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2FjYWNhO1xufVxuLm9yYml0LWJ1bGxldHMgYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzhhOGE4YTtcbn1cbi5vcmJpdC1idWxsZXRzIGJ1dHRvbi5pcy1hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGE4YThhO1xufVxuXG4ucGFnaW5hdGlvbiB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuLnBhZ2luYXRpb246OmJlZm9yZSwgLnBhZ2luYXRpb246OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBmbGV4LWJhc2lzOiAwO1xuICBvcmRlcjogMTtcbn1cbi5wYWdpbmF0aW9uOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuLnBhZ2luYXRpb24gbGkge1xuICBtYXJnaW4tcmlnaHQ6IDAuMDYyNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5wYWdpbmF0aW9uIGxpOmxhc3QtY2hpbGQsIC5wYWdpbmF0aW9uIGxpOmZpcnN0LWNoaWxkIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAucGFnaW5hdGlvbiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG4ucGFnaW5hdGlvbiBhLFxuLnBhZ2luYXRpb24gYnV0dG9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4ucGFnaW5hdGlvbiBhOmhvdmVyLFxuLnBhZ2luYXRpb24gYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2U2ZTZlNjtcbn1cbi5wYWdpbmF0aW9uIC5jdXJyZW50IHtcbiAgcGFkZGluZzogMC4xODc1cmVtIDAuNjI1cmVtO1xuICBiYWNrZ3JvdW5kOiAjMTc3OWJhO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuLnBhZ2luYXRpb24gLmRpc2FibGVkIHtcbiAgcGFkZGluZzogMC4xODc1cmVtIDAuNjI1cmVtO1xuICBjb2xvcjogI2NhY2FjYTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbi5wYWdpbmF0aW9uIC5kaXNhYmxlZDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuLnBhZ2luYXRpb24gLmVsbGlwc2lzOjphZnRlciB7XG4gIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTtcbiAgY29udGVudDogXCLigKZcIjtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5wYWdpbmF0aW9uLXByZXZpb3VzIGE6OmJlZm9yZSxcbi5wYWdpbmF0aW9uLXByZXZpb3VzLmRpc2FibGVkOjpiZWZvcmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICBjb250ZW50OiBcIsKrXCI7XG59XG5cbi5wYWdpbmF0aW9uLW5leHQgYTo6YWZ0ZXIsXG4ucGFnaW5hdGlvbi1uZXh0LmRpc2FibGVkOjphZnRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgY29udGVudDogXCLCu1wiO1xufVxuXG4ucHJvZ3Jlc3Mge1xuICBoZWlnaHQ6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYWNhY2E7XG59XG4ucHJvZ3Jlc3MucHJpbWFyeSAucHJvZ3Jlc3MtbWV0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTc3OWJhO1xufVxuLnByb2dyZXNzLnNlY29uZGFyeSAucHJvZ3Jlc3MtbWV0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzY3Njc2O1xufVxuLnByb2dyZXNzLnN1Y2Nlc3MgLnByb2dyZXNzLW1ldGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNhZGI3Njtcbn1cbi5wcm9ncmVzcy53YXJuaW5nIC5wcm9ncmVzcy1tZXRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7XG59XG4ucHJvZ3Jlc3MuYWxlcnQgLnByb2dyZXNzLW1ldGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGIzNztcbn1cblxuLnByb2dyZXNzLW1ldGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNzc5YmE7XG59XG5cbi5wcm9ncmVzcy1tZXRlci10ZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLnNsaWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwLjVyZW07XG4gIG1hcmdpbi10b3A6IDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDIuMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHRvdWNoLWFjdGlvbjogbm9uZTtcbn1cblxuLnNsaWRlci1maWxsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDAuNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NhY2FjYTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG59XG4uc2xpZGVyLWZpbGwuaXMtZHJhZ2dpbmcge1xuICB0cmFuc2l0aW9uOiBhbGwgMHMgbGluZWFyO1xufVxuXG4uc2xpZGVyLWhhbmRsZSB7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG4gIGN1cnNvcjogZ3JhYjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMS40cmVtO1xuICBoZWlnaHQ6IDEuNHJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE3NzliYTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdIC5zbGlkZXItaGFuZGxlIHtcbiAgb3V0bGluZTogMDtcbn1cbi5zbGlkZXItaGFuZGxlOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE5LjU1LCAxMDIuODUsIDE1OC4xKTtcbn1cbi5zbGlkZXItaGFuZGxlLmlzLWRyYWdnaW5nIHtcbiAgdHJhbnNpdGlvbjogYWxsIDBzIGxpbmVhcjtcbiAgY3Vyc29yOiBncmFiYmluZztcbn1cblxuLnNsaWRlci5kaXNhYmxlZCxcbi5zbGlkZXJbZGlzYWJsZWRdIHtcbiAgb3BhY2l0eTogMC4yNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLnNsaWRlci52ZXJ0aWNhbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDAuNXJlbTtcbiAgaGVpZ2h0OiAxMi41cmVtO1xuICBtYXJnaW46IDAgMS4yNXJlbTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLCAtMSk7XG59XG4uc2xpZGVyLnZlcnRpY2FsIC5zbGlkZXItZmlsbCB7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDAuNXJlbTtcbiAgbWF4LWhlaWdodDogMTAwJTtcbn1cbi5zbGlkZXIudmVydGljYWwgLnNsaWRlci1oYW5kbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogNTAlO1xuICB3aWR0aDogMS40cmVtO1xuICBoZWlnaHQ6IDEuNHJlbTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuXG4uc3RpY2t5LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnN0aWNreSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnN0aWNreS5pcy1zdHVjayB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogNTtcbiAgd2lkdGg6IDEwMCU7XG59XG4uc3RpY2t5LmlzLXN0dWNrLmlzLWF0LXRvcCB7XG4gIHRvcDogMDtcbn1cbi5zdGlja3kuaXMtc3R1Y2suaXMtYXQtYm90dG9tIHtcbiAgYm90dG9tOiAwO1xufVxuXG4uc3RpY2t5LmlzLWFuY2hvcmVkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICByaWdodDogYXV0bztcbiAgbGVmdDogYXV0bztcbn1cbi5zdGlja3kuaXMtYW5jaG9yZWQuaXMtYXQtYm90dG9tIHtcbiAgYm90dG9tOiAwO1xufVxuXG5odG1sLmlzLXJldmVhbC1vcGVuIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xufVxuaHRtbC5pcy1yZXZlYWwtb3Blbi56Zi1oYXMtc2Nyb2xsIHtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG5odG1sLmlzLXJldmVhbC1vcGVuIGJvZHkge1xuICBvdmVyZmxvdy15OiBoaWRkZW47XG59XG5cbi5yZXZlYWwtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDA1O1xuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwLCAxMCwgMTAsIDAuNDUpO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG5cbi5yZXZlYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMTAwcHg7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgei1pbmRleDogMTAwNjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xufVxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAucmV2ZWFsIHtcbiAgb3V0bGluZTogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLnJldmVhbCB7XG4gICAgbWluLWhlaWdodDogMDtcbiAgfVxufVxuLnJldmVhbCAuY29sdW1uIHtcbiAgbWluLXdpZHRoOiAwO1xufVxuLnJldmVhbCA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLnJldmVhbCB7XG4gICAgd2lkdGg6IDYwMHB4O1xuICAgIG1heC13aWR0aDogNzVyZW07XG4gIH1cbn1cbi5yZXZlYWwuY29sbGFwc2Uge1xuICBwYWRkaW5nOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAucmV2ZWFsLnRpbnkge1xuICAgIHdpZHRoOiAzMCU7XG4gICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAucmV2ZWFsLnNtYWxsIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIG1heC13aWR0aDogNzVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLnJldmVhbC5sYXJnZSB7XG4gICAgd2lkdGg6IDkwJTtcbiAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICB9XG59XG4ucmV2ZWFsLmZ1bGwge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MC4wNjEyNWVtKSB7XG4gIC5yZXZlYWwge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cbi5yZXZlYWwud2l0aG91dC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xufVxuXG4uc3dpdGNoIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBvdXRsaW5lOiAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBoZWlnaHQ6IDJyZW07XG59XG5cbi5zd2l0Y2gtaW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zd2l0Y2gtcGFkZGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDRyZW07XG4gIGhlaWdodDogMnJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZDogI2NhY2FjYTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2Utb3V0O1xuICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbmlucHV0ICsgLnN3aXRjaC1wYWRkbGUge1xuICBtYXJnaW46IDA7XG59XG4uc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMC4yNXJlbTtcbiAgbGVmdDogMC4yNXJlbTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxLjVyZW07XG4gIGhlaWdodDogMS41cmVtO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1vdXQ7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG5pbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGUge1xuICBiYWNrZ3JvdW5kOiAjMTc3OWJhO1xufVxuaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gIGxlZnQ6IDIuMjVyZW07XG59XG5pbnB1dDpmb2N1cy12aXNpYmxlIH4gLnN3aXRjaC1wYWRkbGUge1xuICBiYWNrZ3JvdW5kOiByZ2IoMTgxLjgsIDE4MS44LCAxODEuOCk7XG59XG5pbnB1dDpmb2N1cy12aXNpYmxlIH4gLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbn1cbmlucHV0OmNoZWNrZWQ6Zm9jdXMtdmlzaWJsZSB+IC5zd2l0Y2gtcGFkZGxlIHtcbiAgYmFja2dyb3VuZDogcmdiKDE5LjU1LCAxMDIuODUsIDE1OC4xKTtcbn1cbmlucHV0OmRpc2FibGVkIH4gLnN3aXRjaC1wYWRkbGUge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICBvcGFjaXR5OiAwLjU7XG59XG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdIGlucHV0OmZvY3VzIH4gLnN3aXRjaC1wYWRkbGUge1xuICBvdXRsaW5lOiAwO1xufVxuXG4uc3dpdGNoLWluYWN0aXZlLCAuc3dpdGNoLWFjdGl2ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLnN3aXRjaC1hY3RpdmUge1xuICBsZWZ0OiA4JTtcbiAgZGlzcGxheTogbm9uZTtcbn1cbmlucHV0OmNoZWNrZWQgKyBsYWJlbCA+IC5zd2l0Y2gtYWN0aXZlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5zd2l0Y2gtaW5hY3RpdmUge1xuICByaWdodDogMTUlO1xufVxuaW5wdXQ6Y2hlY2tlZCArIGxhYmVsID4gLnN3aXRjaC1pbmFjdGl2ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zd2l0Y2gudGlueSB7XG4gIGhlaWdodDogMS41cmVtO1xufVxuLnN3aXRjaC50aW55IC5zd2l0Y2gtcGFkZGxlIHtcbiAgd2lkdGg6IDNyZW07XG4gIGhlaWdodDogMS41cmVtO1xuICBmb250LXNpemU6IDAuNjI1cmVtO1xufVxuLnN3aXRjaC50aW55IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gIHRvcDogMC4yNXJlbTtcbiAgbGVmdDogMC4yNXJlbTtcbiAgd2lkdGg6IDFyZW07XG4gIGhlaWdodDogMXJlbTtcbn1cbi5zd2l0Y2gudGlueSBpbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgbGVmdDogMS43NXJlbTtcbn1cblxuLnN3aXRjaC5zbWFsbCB7XG4gIGhlaWdodDogMS43NXJlbTtcbn1cbi5zd2l0Y2guc21hbGwgLnN3aXRjaC1wYWRkbGUge1xuICB3aWR0aDogMy41cmVtO1xuICBoZWlnaHQ6IDEuNzVyZW07XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbn1cbi5zd2l0Y2guc21hbGwgLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgdG9wOiAwLjI1cmVtO1xuICBsZWZ0OiAwLjI1cmVtO1xuICB3aWR0aDogMS4yNXJlbTtcbiAgaGVpZ2h0OiAxLjI1cmVtO1xufVxuLnN3aXRjaC5zbWFsbCBpbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgbGVmdDogMnJlbTtcbn1cblxuLnN3aXRjaC5sYXJnZSB7XG4gIGhlaWdodDogMi41cmVtO1xufVxuLnN3aXRjaC5sYXJnZSAuc3dpdGNoLXBhZGRsZSB7XG4gIHdpZHRoOiA1cmVtO1xuICBoZWlnaHQ6IDIuNXJlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuLnN3aXRjaC5sYXJnZSAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICB0b3A6IDAuMjVyZW07XG4gIGxlZnQ6IDAuMjVyZW07XG4gIHdpZHRoOiAycmVtO1xuICBoZWlnaHQ6IDJyZW07XG59XG4uc3dpdGNoLmxhcmdlIGlucHV0OmNoZWNrZWQgfiAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICBsZWZ0OiAyLjc1cmVtO1xufVxuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxudGhlYWQsXG50Ym9keSxcbnRmb290IHtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiKDI0MS4zLCAyNDEuMywgMjQxLjMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xufVxuXG5jYXB0aW9uIHtcbiAgcGFkZGluZzogMC41cmVtIDAuNjI1cmVtIDAuNjI1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxudGhlYWQge1xuICBiYWNrZ3JvdW5kOiByZ2IoMjQ3LjY1LCAyNDcuNjUsIDI0Ny42NSk7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG50Zm9vdCB7XG4gIGJhY2tncm91bmQ6IHJnYigyNDEuMywgMjQxLjMsIDI0MS4zKTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbnRoZWFkIHRyLFxudGZvb3QgdHIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cbnRoZWFkIHRoLFxudGhlYWQgdGQsXG50Zm9vdCB0aCxcbnRmb290IHRkIHtcbiAgcGFkZGluZzogMC41cmVtIDAuNjI1cmVtIDAuNjI1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxudGJvZHkgdGgsXG50Ym9keSB0ZCB7XG4gIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTtcbn1cblxudGJvZHkgdHI6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI0MS4zLCAyNDEuMywgMjQxLjMpO1xufVxuXG50YWJsZS51bnN0cmlwZWQgdGJvZHkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xufVxudGFibGUudW5zdHJpcGVkIHRib2R5IHRyIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYigyNDEuMywgMjQxLjMsIDI0MS4zKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgdGFibGUuc3RhY2sgdGhlYWQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgdGFibGUuc3RhY2sgdGZvb3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgdGFibGUuc3RhY2sgdHIsXG4gIHRhYmxlLnN0YWNrIHRoLFxuICB0YWJsZS5zdGFjayB0ZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgdGFibGUuc3RhY2sgdGQge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cblxudGFibGUuc2Nyb2xsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG50YWJsZS5ob3ZlciB0aGVhZCB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyNDIuNTUsIDI0Mi41NSwgMjQyLjU1KTtcbn1cbnRhYmxlLmhvdmVyIHRmb290IHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIzNi4yLCAyMzYuMiwgMjM2LjIpO1xufVxudGFibGUuaG92ZXIgdGJvZHkgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjQ4LjksIDI0OC45LCAyNDguOSk7XG59XG50YWJsZS5ob3Zlcjpub3QoLnVuc3RyaXBlZCkgdHI6bnRoLW9mLXR5cGUoZXZlbik6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjM2LjE1LCAyMzYuMTUsIDIzNi4xNSk7XG59XG5cbi50YWJsZS1zY3JvbGwge1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG4udGFicyB7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuLnRhYnM6OmJlZm9yZSwgLnRhYnM6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBmbGV4LWJhc2lzOiAwO1xuICBvcmRlcjogMTtcbn1cbi50YWJzOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4udGFicy52ZXJ0aWNhbCA+IGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBub25lO1xuICB3aWR0aDogYXV0bztcbn1cblxuLnRhYnMuc2ltcGxlID4gbGkgPiBhIHtcbiAgcGFkZGluZzogMDtcbn1cbi50YWJzLnNpbXBsZSA+IGxpID4gYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4udGFicy5wcmltYXJ5IHtcbiAgYmFja2dyb3VuZDogIzE3NzliYTtcbn1cbi50YWJzLnByaW1hcnkgPiBsaSA+IGEge1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi50YWJzLnByaW1hcnkgPiBsaSA+IGE6aG92ZXIsIC50YWJzLnByaW1hcnkgPiBsaSA+IGE6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiByZ2IoMjEuODUsIDExNC45NSwgMTc2LjcpO1xufVxuXG4udGFicy10aXRsZSB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuLnRhYnMtdGl0bGUgPiBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDEuMjVyZW0gMS41cmVtO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogIzE3NzliYTtcbn1cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gLnRhYnMtdGl0bGUgPiBhIHtcbiAgb3V0bGluZTogMDtcbn1cbi50YWJzLXRpdGxlID4gYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIGNvbG9yOiByZ2IoMTkuNzgsIDEwNC4wNiwgMTU5Ljk2KTtcbn1cbi50YWJzLXRpdGxlID4gYTpmb2N1cywgLnRhYnMtdGl0bGUgPiBhW2FyaWEtc2VsZWN0ZWQ9dHJ1ZV0ge1xuICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xuICBjb2xvcjogIzE3NzliYTtcbn1cblxuLnRhYnMtY29udGVudCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xufVxuXG4udGFicy1jb250ZW50LnZlcnRpY2FsIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYm9yZGVyLWxlZnQ6IDA7XG59XG5cbi50YWJzLXBhbmVsIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMXJlbTtcbn1cbi50YWJzLXBhbmVsLmlzLWFjdGl2ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4udGh1bWJuYWlsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlcjogc29saWQgNHB4ICNmZWZlZmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDEwLCAxMCwgMTAsIDAuMik7XG4gIGxpbmUtaGVpZ2h0OiAwO1xufVxuXG5hLnRodW1ibmFpbCB7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQ7XG59XG5hLnRodW1ibmFpbDpob3ZlciwgYS50aHVtYm5haWw6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgNnB4IDFweCByZ2JhKDIzLCAxMjEsIDE4NiwgMC41KTtcbn1cbmEudGh1bWJuYWlsIGltYWdlIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLnRpdGxlLWJhciB7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgYmFja2dyb3VuZDogIzJDMzg0MDtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi50aXRsZS1iYXIgLm1lbnUtaWNvbiB7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07XG59XG5cbi50aXRsZS1iYXItbGVmdCxcbi50aXRsZS1iYXItcmlnaHQge1xuICBmbGV4OiAxIDEgMHB4O1xufVxuXG4udGl0bGUtYmFyLXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi50aXRsZS1iYXItdGl0bGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uaGFzLXRpcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItYm90dG9tOiBkb3R0ZWQgMXB4ICM4YThhOGE7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjdXJzb3I6IGhlbHA7XG59XG5cbi50b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoMTAwJSArIDAuNjQ5NXJlbSk7XG4gIHotaW5kZXg6IDEyMDA7XG4gIG1heC13aWR0aDogMTByZW07XG4gIHBhZGRpbmc6IDAuNzVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtc2l6ZTogODAlO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi50b29sdGlwOjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4udG9vbHRpcC5ib3R0b206OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDAuNzVyZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzBhMGEwYTtcbiAgYm90dG9tOiAxMDAlO1xufVxuLnRvb2x0aXAuYm90dG9tLmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG4udG9vbHRpcC50b3A6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDAuNzVyZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci1jb2xvcjogIzBhMGEwYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgdG9wOiAxMDAlO1xuICBib3R0b206IGF1dG87XG59XG4udG9vbHRpcC50b3AuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cbi50b29sdGlwLmxlZnQ6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDAuNzVyZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMGEwYTBhO1xuICBsZWZ0OiAxMDAlO1xufVxuLnRvb2x0aXAubGVmdC5hbGlnbi1jZW50ZXI6OmJlZm9yZSB7XG4gIGJvdHRvbTogYXV0bztcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cbi50b29sdGlwLnJpZ2h0OjpiZWZvcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwLjc1cmVtO1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMGEwYTBhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICByaWdodDogMTAwJTtcbiAgbGVmdDogYXV0bztcbn1cbi50b29sdGlwLnJpZ2h0LmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgYm90dG9tOiBhdXRvO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuLnRvb2x0aXAuYWxpZ24tdG9wOjpiZWZvcmUge1xuICBib3R0b206IGF1dG87XG4gIHRvcDogMTAlO1xufVxuLnRvb2x0aXAuYWxpZ24tYm90dG9tOjpiZWZvcmUge1xuICBib3R0b206IDEwJTtcbiAgdG9wOiBhdXRvO1xufVxuLnRvb2x0aXAuYWxpZ24tbGVmdDo6YmVmb3JlIHtcbiAgbGVmdDogMTAlO1xuICByaWdodDogYXV0bztcbn1cbi50b29sdGlwLmFsaWduLXJpZ2h0OjpiZWZvcmUge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMTAlO1xufVxuXG4udG9wLWJhciB7XG4gIHBhZGRpbmc6IDByZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4udG9wLWJhcixcbi50b3AtYmFyIHVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJDMzg0MDtcbn1cbi50b3AtYmFyIGlucHV0IHtcbiAgbWF4LXdpZHRoOiAyMDBweDtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xufVxuLnRvcC1iYXIgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi50b3AtYmFyIGlucHV0LmJ1dHRvbiB7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4udG9wLWJhciB7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cbi50b3AtYmFyIC50b3AtYmFyLWxlZnQsXG4udG9wLWJhciAudG9wLWJhci1yaWdodCB7XG4gIGZsZXg6IDAgMCAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLnRvcC1iYXIge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG4gIC50b3AtYmFyIC50b3AtYmFyLWxlZnQge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxuICAudG9wLWJhciAudG9wLWJhci1yaWdodCB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC50b3AtYmFyLnN0YWNrZWQtZm9yLW1lZGl1bSB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG4gIC50b3AtYmFyLnN0YWNrZWQtZm9yLW1lZGl1bSAudG9wLWJhci1sZWZ0LFxuICAudG9wLWJhci5zdGFja2VkLWZvci1tZWRpdW0gLnRvcC1iYXItcmlnaHQge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0Ljk5ODc1ZW0pIHtcbiAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbGFyZ2Uge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuICAudG9wLWJhci5zdGFja2VkLWZvci1sYXJnZSAudG9wLWJhci1sZWZ0LFxuICAudG9wLWJhci5zdGFja2VkLWZvci1sYXJnZSAudG9wLWJhci1yaWdodCB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi50b3AtYmFyLXRpdGxlIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIG1hcmdpbjogMC41cmVtIDFyZW0gMC41cmVtIDA7XG59XG5cbi50b3AtYmFyLWxlZnQsXG4udG9wLWJhci1yaWdodCB7XG4gIGZsZXg6IDAgMCBhdXRvO1xufVxuXG4uaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnZpc2libGUge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDAuMDYxMjVlbSkge1xuICAuaGlkZS1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDBlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5zaG93LWZvci1zbWFsbC1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuaGlkZS1mb3ItbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDAuMDYxMjVlbSkge1xuICAuc2hvdy1mb3ItbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDAuMDYxMjVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2hvdy1mb3ItbWVkaXVtLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaGlkZS1mb3ItbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5zaG93LWZvci1sYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1heC13aWR0aDogNzQuOTk4NzVlbSkge1xuICAuaGlkZS1mb3ItbGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNob3ctZm9yLWxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uc2hvdy1mb3Itc3IsXG4uc2hvdy1vbi1mb2N1cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5zaG93LW9uLWZvY3VzOmFjdGl2ZSwgLnNob3ctb24tZm9jdXM6Zm9jdXMge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBjbGlwOiBhdXRvICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWwgIWltcG9ydGFudDtcbn1cblxuLnNob3ctZm9yLWxhbmRzY2FwZSxcbi5oaWRlLWZvci1wb3J0cmFpdCB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmhpZGUtZm9yLWxhbmRzY2FwZSxcbi5zaG93LWZvci1wb3J0cmFpdCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uc2hvdy1mb3ItZGFyay1tb2RlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmhpZGUtZm9yLWRhcmstbW9kZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcbiAgLnNob3ctZm9yLWRhcmstbW9kZSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICAuaGlkZS1mb3ItZGFyay1tb2RlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5zaG93LWZvci1pZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gIC5zaG93LWZvci1pZSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICAuaGlkZS1mb3ItaWUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnNob3ctZm9yLXN0aWNreSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5pcy1zdHVjayAuc2hvdy1mb3Itc3RpY2t5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5pcy1zdHVjayAuaGlkZS1mb3Itc3RpY2t5IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmFsaWduLWxlZnQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG5cbi5hbGlnbi1yaWdodCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5cbi5hbGlnbi1jZW50ZXIge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmFsaWduLWp1c3RpZnkge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi5hbGlnbi1zcGFjZWQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbn1cblxuLmFsaWduLWxlZnQudmVydGljYWwubWVudSA+IGxpID4gYSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cblxuLmFsaWduLXJpZ2h0LnZlcnRpY2FsLm1lbnUgPiBsaSA+IGEge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuXG4uYWxpZ24tY2VudGVyLnZlcnRpY2FsLm1lbnUgPiBsaSA+IGEge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmFsaWduLXRvcCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuXG4uYWxpZ24tc2VsZi10b3Age1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xufVxuXG4uYWxpZ24tYm90dG9tIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xufVxuXG4uYWxpZ24tc2VsZi1ib3R0b20ge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbn1cblxuLmFsaWduLW1pZGRsZSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5hbGlnbi1zZWxmLW1pZGRsZSB7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbn1cblxuLmFsaWduLXN0cmV0Y2gge1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbn1cblxuLmFsaWduLXNlbGYtc3RyZXRjaCB7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG59XG5cbi5hbGlnbi1jZW50ZXItbWlkZGxlIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnNtYWxsLW9yZGVyLTEge1xuICBvcmRlcjogMTtcbn1cblxuLnNtYWxsLW9yZGVyLTIge1xuICBvcmRlcjogMjtcbn1cblxuLnNtYWxsLW9yZGVyLTMge1xuICBvcmRlcjogMztcbn1cblxuLnNtYWxsLW9yZGVyLTQge1xuICBvcmRlcjogNDtcbn1cblxuLnNtYWxsLW9yZGVyLTUge1xuICBvcmRlcjogNTtcbn1cblxuLnNtYWxsLW9yZGVyLTYge1xuICBvcmRlcjogNjtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAubWVkaXVtLW9yZGVyLTEge1xuICAgIG9yZGVyOiAxO1xuICB9XG4gIC5tZWRpdW0tb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7XG4gIH1cbiAgLm1lZGl1bS1vcmRlci0zIHtcbiAgICBvcmRlcjogMztcbiAgfVxuICAubWVkaXVtLW9yZGVyLTQge1xuICAgIG9yZGVyOiA0O1xuICB9XG4gIC5tZWRpdW0tb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7XG4gIH1cbiAgLm1lZGl1bS1vcmRlci02IHtcbiAgICBvcmRlcjogNjtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW9yZGVyLTEge1xuICAgIG9yZGVyOiAxO1xuICB9XG4gIC5sYXJnZS1vcmRlci0yIHtcbiAgICBvcmRlcjogMjtcbiAgfVxuICAubGFyZ2Utb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7XG4gIH1cbiAgLmxhcmdlLW9yZGVyLTQge1xuICAgIG9yZGVyOiA0O1xuICB9XG4gIC5sYXJnZS1vcmRlci01IHtcbiAgICBvcmRlcjogNTtcbiAgfVxuICAubGFyZ2Utb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7XG4gIH1cbn1cbi5mbGV4LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5mbGV4LWNoaWxkLWF1dG8ge1xuICBmbGV4OiAxIDEgYXV0bztcbn1cblxuLmZsZXgtY2hpbGQtZ3JvdyB7XG4gIGZsZXg6IDEgMCBhdXRvO1xufVxuXG4uZmxleC1jaGlsZC1zaHJpbmsge1xuICBmbGV4OiAwIDEgYXV0bztcbn1cblxuLmZsZXgtZGlyLXJvdyB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG59XG5cbi5mbGV4LWRpci1yb3ctcmV2ZXJzZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbn1cblxuLmZsZXgtZGlyLWNvbHVtbiB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAubWVkaXVtLWZsZXgtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG4gIC5tZWRpdW0tZmxleC1jaGlsZC1hdXRvIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgfVxuICAubWVkaXVtLWZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgZmxleDogMSAwIGF1dG87XG4gIH1cbiAgLm1lZGl1bS1mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gIH1cbiAgLm1lZGl1bS1mbGV4LWRpci1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbiAgLm1lZGl1bS1mbGV4LWRpci1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICB9XG4gIC5tZWRpdW0tZmxleC1kaXItY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG4gIC5tZWRpdW0tZmxleC1kaXItY29sdW1uLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLWZsZXgtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG4gIC5sYXJnZS1mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICB9XG4gIC5sYXJnZS1mbGV4LWNoaWxkLWdyb3cge1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICB9XG4gIC5sYXJnZS1mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gIH1cbiAgLmxhcmdlLWZsZXgtZGlyLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAubGFyZ2UtZmxleC1kaXItcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgfVxuICAubGFyZ2UtZmxleC1kaXItY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG4gIC5sYXJnZS1mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICB9XG59XG4uc2xpZGUtaW4tZG93bi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGlkZS1pbi1kb3duLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xufVxuXG4uc2xpZGUtaW4tbGVmdC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGlkZS1pbi1sZWZ0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xufVxuXG4uc2xpZGUtaW4tdXAubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGlkZS1pbi11cC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbn1cblxuLnNsaWRlLWluLXJpZ2h0Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpZGUtaW4tcmlnaHQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG59XG5cbi5zbGlkZS1vdXQtZG93bi5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWRlLW91dC1kb3duLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xufVxuXG4uc2xpZGUtb3V0LXJpZ2h0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpZGUtb3V0LXJpZ2h0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xufVxuXG4uc2xpZGUtb3V0LXVwLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpZGUtb3V0LXVwLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbn1cblxuLnNsaWRlLW91dC1sZWZ0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpZGUtb3V0LWxlZnQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xufVxuXG4uZmFkZS1pbi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbn1cblxuLmZhZGUtaW4ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uZmFkZS1vdXQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG59XG5cbi5mYWRlLW91dC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1pbi1mcm9tLXRvcC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1pbi1mcm9tLXRvcC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1pbi1mcm9tLXJpZ2h0Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2UtaW4tZnJvbS1yaWdodC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1pbi1mcm9tLWJvdHRvbS5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b207XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLWluLWZyb20tYm90dG9tLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLWluLWZyb20tbGVmdC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1pbi1mcm9tLWxlZnQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2UtaW4tZnJvbS1taWRkbGUteC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1pbi1mcm9tLW1pZGRsZS14Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLWluLWZyb20tbWlkZGxlLXkubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2UtaW4tZnJvbS1taWRkbGUteS5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS10b3AubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tdG9wLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLW91dC1mcm9tLXJpZ2h0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tcmlnaHQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tYm90dG9tLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b207XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLW91dC1mcm9tLWJvdHRvbS5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLW91dC1mcm9tLWxlZnQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLW91dC1mcm9tLWxlZnQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSg5MGRlZyk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1taWRkbGUteC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1taWRkbGUteC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1taWRkbGUteS5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1taWRkbGUteS5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zY2FsZS1pbi11cC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zY2FsZS1pbi11cC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zY2FsZS1pbi1kb3duLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNjYWxlLWluLWRvd24ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc2NhbGUtb3V0LXVwLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zY2FsZS1vdXQtdXAubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zY2FsZS1vdXQtZG93bi5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc2NhbGUtb3V0LWRvd24ubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zcGluLWluLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMC43NXR1cm4pO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zcGluLWluLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zcGluLW91dC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnNwaW4tb3V0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMC43NXR1cm4pO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc3Bpbi1pbi1jY3cubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKDAuNzV0dXJuKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc3Bpbi1pbi1jY3cubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnNwaW4tb3V0LWNjdy5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnNwaW4tb3V0LWNjdy5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0wLjc1dHVybik7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zbG93IHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNzUwbXMgIWltcG9ydGFudDtcbn1cblxuLmZhc3Qge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyNTBtcyAhaW1wb3J0YW50O1xufVxuXG4ubGluZWFyIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhciAhaW1wb3J0YW50O1xufVxuXG4uZWFzZSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlICFpbXBvcnRhbnQ7XG59XG5cbi5lYXNlLWluIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4gIWltcG9ydGFudDtcbn1cblxuLmVhc2Utb3V0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0ICFpbXBvcnRhbnQ7XG59XG5cbi5lYXNlLWluLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dCAhaW1wb3J0YW50O1xufVxuXG4uYm91bmNlLWluIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50O1xufVxuXG4uYm91bmNlLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjUxNSwgMC44NDUpICFpbXBvcnRhbnQ7XG59XG5cbi5ib3VuY2UtaW4tb3V0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc2LCAtMC4yNDUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50O1xufVxuXG4uc2hvcnQtZGVsYXkge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAzMDBtcyAhaW1wb3J0YW50O1xufVxuXG4ubG9uZy1kZWxheSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDcwMG1zICFpbXBvcnRhbnQ7XG59XG5cbkBrZXlmcmFtZXMgc2hha2UtNyB7XG4gIDAlLCAxMCUsIDIwJSwgMzAlLCA0MCUsIDUwJSwgNjAlLCA3MCUsIDgwJSwgOTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNyUpO1xuICB9XG4gIDUlLCAxNSUsIDI1JSwgMzUlLCA0NSUsIDU1JSwgNjUlLCA3NSUsIDg1JSwgOTUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTclKTtcbiAgfVxufVxuLnNoYWtlIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNoYWtlLTc7XG59XG5cbkBrZXlmcmFtZXMgc3Bpbi1jdy0xdHVybiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMXR1cm4pO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB9XG59XG4uc3Bpbi1jdyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzcGluLWN3LTF0dXJuO1xufVxuXG5Aa2V5ZnJhbWVzIHNwaW4tY3ctMXR1cm4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMXR1cm4pO1xuICB9XG59XG4uc3Bpbi1jY3cge1xuICBhbmltYXRpb24tbmFtZTogc3Bpbi1jdy0xdHVybjtcbn1cblxuQGtleWZyYW1lcyB3aWdnbGUtN2RlZyB7XG4gIDQwJSwgNTAlLCA2MCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDdkZWcpO1xuICB9XG4gIDM1JSwgNDUlLCA1NSUsIDY1JSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTdkZWcpO1xuICB9XG4gIDAlLCAzMCUsIDcwJSwgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIH1cbn1cbi53aWdnbGUge1xuICBhbmltYXRpb24tbmFtZTogd2lnZ2xlLTdkZWc7XG59XG5cbi5zaGFrZSxcbi5zcGluLWN3LFxuLnNwaW4tY2N3LFxuLndpZ2dsZSB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNTAwbXM7XG59XG5cbi5pbmZpbml0ZSB7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xufVxuXG4uc2xvdyB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNzUwbXMgIWltcG9ydGFudDtcbn1cblxuLmZhc3Qge1xuICBhbmltYXRpb24tZHVyYXRpb246IDI1MG1zICFpbXBvcnRhbnQ7XG59XG5cbi5saW5lYXIge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXIgIWltcG9ydGFudDtcbn1cblxuLmVhc2Uge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlICFpbXBvcnRhbnQ7XG59XG5cbi5lYXNlLWluIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbiAhaW1wb3J0YW50O1xufVxuXG4uZWFzZS1vdXQge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dCAhaW1wb3J0YW50O1xufVxuXG4uZWFzZS1pbi1vdXQge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dCAhaW1wb3J0YW50O1xufVxuXG4uYm91bmNlLWluIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC4yNCwgMS4yNDUpICFpbXBvcnRhbnQ7XG59XG5cbi5ib3VuY2Utb3V0IHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC41MTUsIDAuODQ1KSAhaW1wb3J0YW50O1xufVxuXG4uYm91bmNlLWluLW91dCB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc2LCAtMC4yNDUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50O1xufVxuXG4uc2hvcnQtZGVsYXkge1xuICBhbmltYXRpb24tZGVsYXk6IDMwMG1zICFpbXBvcnRhbnQ7XG59XG5cbi5sb25nLWRlbGF5IHtcbiAgYW5pbWF0aW9uLWRlbGF5OiA3MDBtcyAhaW1wb3J0YW50O1xufVxuXG4vKlxuICBNeSBjdXN0b20gc3R5bGVzOlxuICBBZGQgeW91ciBzY3NzIGZpbGVzIGJlbG93IHRvIHN0cnVjdHVyZSB5b3VyIHByb2plY3Qgc3R5bGVzXG4qL1xuLnNjcmVlbi1yZWFkZXItdGV4dCB7XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4O1xuICB3aWR0aDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uc2NyZWVuLXJlYWRlci10ZXh0OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBib3gtc2hhZG93OiAwIDAgMnB4IDJweCByZ2JhKDAsIDAsIDAsIDAuNik7XG4gIGNsaXA6IGF1dG8gIWltcG9ydGFudDtcbiAgY29sb3I6ICMyMTc1OWI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBoZWlnaHQ6IGF1dG87XG4gIGxlZnQ6IDVweDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgcGFkZGluZzogMTVweCAyM3B4IDE0cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdG9wOiA1cHg7XG4gIHdpZHRoOiBhdXRvO1xuICB6LWluZGV4OiAxMDAwMDA7XG59XG5cbiN3cGFkbWluYmFyIHtcbiAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7XG59XG5cbmJvZHkuYWRtaW4tYmFyLmYtdG9wYmFyLWZpeGVkIC5zdGlja3kuZml4ZWQge1xuICBtYXJnaW4tdG9wOiAycmVtO1xufVxuYm9keS5hZG1pbi1iYXIub2ZmY2FudmFzIC5vZmYtY2FudmFzIHtcbiAgdG9wOiAyLjg3NXJlbTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4LjkzNzVlbSkge1xuICBib2R5LmFkbWluLWJhci5vZmZjYW52YXMgLm9mZi1jYW52YXMge1xuICAgIHRvcDogMnJlbTtcbiAgfVxufVxuXG4ud3AtY2FwdGlvbiA+IGZpZ2NhcHRpb24ge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBjb2xvcjogIzk5OTtcbiAgcGFkZGluZzogMC4yNXJlbSAwO1xufVxuXG5wLndwLWNhcHRpb24tdGV4dCB7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICBjb2xvcjogIzY2NjtcbiAgcGFkZGluZzogMC42MjVyZW0gMDtcbn1cblxuLmFsaWdubGVmdCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICBtYXJnaW46IDA7XG59XG5cbi5hbGlnbnJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gIG1hcmdpbjogMDtcbn1cblxuLmFsaWduY2VudGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi8qKioqIFRBQkxFIE9GIENPTlRFTlRTICoqKipcblxuMDAuIFZBUklBQkxFU1xuMC4gQUNDRVNTSUJJTFRZIFRPT0xCQVIgU1RZTEVTXG4xLiBQUkVMT0FERVIgU1RZTEVTXG4yLiBHRU5FUkFMIFNUWUxFU1xuMy4gSEVBREVSIFNUWUxFU1xuICAzYS4gSGVhZGVyIE9wdGlvbiBPbmUgU3R5bGVzXG4gIDNiLiBIZWFkZXIgT3B0aW9uIFR3byBTdHlsZXNcbiAgM2MuIEhlYWRlciBPcHRpb24gVGhyZWUgU3R5bGVzXG4gIDNkLiBIZWFkZXIgT3B0aW9uIEZvdXIgU3R5bGVzXG4gIDNlLiBNb2JpbGUgT2ZmLUNhbnZhcyBNZW51IFN0eWxlc1xuICAzZi4gTW9iaWxlIFRvcCBCYXIgTWVudSBTdHlsZXNcbiAgM2cuIFN0aWNreSBIZWFkZXIgU3R5bGVzXG4gIDNoLiBIZWFkZXIgT3ZlcnJpZGVzXG5cbjQuIEhPTUUgUEFHRSBTVFlMRVNcblxuNS4gSU5URVJOQUwgUEFHRSBTVFlMRVNcbiAgNWEuIEJyZWFkY3J1bWJzIFN0eWxlc1xuICA1Yi4gUGFnZSBUaXRsZSBhbmQgVGl0bGUgQmFyIFN0eWxlc1xuICA1Yy4gRGVmYXVsdCBQYWdlIFRlbXBsYXRlIFN0eWxlc1xuICA1ZC4gRnVsbCBXaWR0aCBQYWdlIFRlbXBsYXRlIFN0eWxlc1xuICA1ZS4gUG9zdCBOYXZpZ2F0aW9uIEZvb3RlciBTdHlsZXNcbiAgNWYuIExlZnQgU2lkZWJhciBQYWdlIFRlbXBsYXRlIFN0eWxlc1xuICA1Zy4gU2lkZWJhciBTdHlsZXNcbiAgNWguIFNvY2lhbCBTaGFyaW5nIFNob3J0Y29kZSBTdHlsZXNcbiAgNWkuIEdhbGxlcnkgU2hvcnRjb2RlIFN0eWxlc1xuICA1ai4gUGFnaW5hdGlvbiBTdHlsZXNcbiAgNWsuIEdyYXZpdHkgRm9ybSBTdHlsZXNcbiAgNWwuIFNlYXJjaCBSZXN1bHRzIFN0eWxlc1xuXG42LiBCTE9HIFBBR0UgQU5EIFNJTkdMRSBCTE9HIFBPU1QgU1RZTEVTXG4gIDZhLiBCbG9nIExvb3AgU2hvcnRjb2RlIFN0eWxlc1xuICA2Yi4gQ29tbWVudHMgU2VjdGlvbiBTdHlsZXNcbiAgNmMuIEFKQVggQmxvZyBMb29wIFNob3J0Y29kZSBTdHlsZXNcblxuNy4gUE9SVEZPTElPIFNUWUxFU1xuXG44LiBTRVJWSUNFUyBTVFlMRVNcblxuOS4gU1RBRkYgU1RZTEVTXG5cbjEwLiA0MDQgUEFHRSBTVFlMRVNcblxuMTEuIEZPT1RFUiBTVFlMRVNcblxuKiogRU5EIFRBQkxFIE9GIENPTlRFTlRTICoqL1xuLyoqKiogMDAuIFZBUklBQkxFUyAqKioqL1xuLyoqKiogMC4gQUNDRVNTSUJJTFRZIFRPT0xCQVIgU1RZTEVTICoqKiovXG4uc2NyZWVuLXJlYWRlci1zaG9ydGN1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtNjI0LjkzNzVyZW07XG59XG4uc2NyZWVuLXJlYWRlci1zaG9ydGN1dDpmb2N1cyB7XG4gIGxlZnQ6IDZweDtcbiAgdG9wOiA3cHg7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHBhZGRpbmc6IDE1cHggMjNweCAxNHB4O1xuICBiYWNrZ3JvdW5kOiAjZjFmMWYxO1xuICBjb2xvcjogIzAwNzNhYTtcbiAgei1pbmRleDogMTAwMDAwO1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJveC1zaGFkb3c6IDAgMCAycHggMnB4IHJnYmEoMCwgMCwgMCwgMC42KTtcbn1cblxuLnRvb2x0aXAge1xuICBiYWNrZ3JvdW5kOiAjZmVmM2ExO1xuICBib3JkZXItcmFkaXVzOiAwLjE4NzVyZW07XG4gIGJvcmRlcjogMC4wNjI1cmVtIHNvbGlkICMwMDNhNzE7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXgtd2lkdGg6IDEzLjc1cmVtO1xuICBwYWRkaW5nOiAwLjM3NXJlbSAwLjYyNXJlbTtcbiAgd2lkdGg6IGF1dG87XG59XG4udG9vbHRpcC5yaWdodDpiZWZvcmUge1xuICBib3JkZXI6IGluc2V0IDAuMzc1cmVtICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgI2ZlZjNhMSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB6LWluZGV4OiAxMDtcbn1cbi50b29sdGlwLnJpZ2h0OmFmdGVyIHtcbiAgYm9yZGVyOiBpbnNldCAwLjVyZW0gIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMDAzYTcxIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDEwMCU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHdpZHRoOiAwO1xuICB6LWluZGV4OiAxO1xufVxuXG5kaXYjYTExeS10b29sYmFyIHtcbiAgYm9yZGVyOiAwLjA2MjVyZW0gc29saWQgI0NFRDREQTtcbiAgYm9yZGVyLXJhZGl1czogMCAwLjI1cmVtIDAuMjVyZW0gMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB6LWluZGV4OiAxMDAyO1xufVxuZGl2I2ExMXktdG9vbGJhciBkaXYjYTExeS1mb250c2l6ZSBidXR0b24sIGRpdiNhMTF5LXRvb2xiYXIgZGl2I2ExMXktY29udHJhc3QgYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg1KTtcbiAgYm9yZGVyLWxlZnQ6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1zaXplOiAxLjM3NXJlbTtcbiAgcGFkZGluZzogMC42MjVyZW0gMC4zNzVyZW07XG4gIHdpZHRoOiAxMDAlO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xufVxuZGl2I2ExMXktdG9vbGJhciBkaXYjYTExeS1mb250c2l6ZSBidXR0b246aG92ZXIsIGRpdiNhMTF5LXRvb2xiYXIgZGl2I2ExMXktZm9udHNpemUgYnV0dG9uOmZvY3VzLCBkaXYjYTExeS10b29sYmFyIGRpdiNhMTF5LWNvbnRyYXN0IGJ1dHRvbjpob3ZlciwgZGl2I2ExMXktdG9vbGJhciBkaXYjYTExeS1jb250cmFzdCBidXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xufVxuZGl2I2ExMXktdG9vbGJhciBkaXYjYTExeS1mb250c2l6ZSBidXR0b24uYTExeS1mb250c2l6ZSwgZGl2I2ExMXktdG9vbGJhciBkaXYjYTExeS1jb250cmFzdCBidXR0b24uYTExeS1mb250c2l6ZSB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMC4yNXJlbSAwIDA7XG4gIGJvcmRlci1ib3R0b206IDAuMDYyNXJlbSBzb2xpZCAjQ0VENERBO1xufVxuZGl2I2ExMXktdG9vbGJhciBkaXYjYTExeS1mb250c2l6ZSBidXR0b24uYTExeS1jb250cmFzdCwgZGl2I2ExMXktdG9vbGJhciBkaXYjYTExeS1jb250cmFzdCBidXR0b24uYTExeS1jb250cmFzdCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwLjI1cmVtIDA7XG59XG5kaXYjYTExeS10b29sYmFyIGRpdiNhMTF5LWZvbnRzaXplIGJ1dHRvbi5hMTF5LWFjdGl2ZSwgZGl2I2ExMXktdG9vbGJhciBkaXYjYTExeS1jb250cmFzdCBidXR0b24uYTExeS1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjQ0VENERBO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbmRpdiNhMTF5LXRvb2xiYXIgZGl2I2ExMXktZm9udHNpemUgYnV0dG9uLmExMXktYWN0aXZlLmExMXktZm9udHNpemUsIGRpdiNhMTF5LXRvb2xiYXIgZGl2I2ExMXktY29udHJhc3QgYnV0dG9uLmExMXktYWN0aXZlLmExMXktZm9udHNpemUge1xuICBib3JkZXItYm90dG9tOiAwLjA2MjVyZW0gc29saWQgI0YxRjNGNSAhaW1wb3J0YW50O1xufVxuZGl2I2ExMXktdG9vbGJhciBkaXYjYTExeS1mb250c2l6ZSBidXR0b24gc3BhbltkYXRhLXRvb2x0aXBdLCBkaXYjYTExeS10b29sYmFyIGRpdiNhMTF5LWNvbnRyYXN0IGJ1dHRvbiBzcGFuW2RhdGEtdG9vbHRpcF0ge1xuICBib3JkZXI6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbmRpdiNhMTF5LXRvb2xiYXIuYTExeS1sZWZ0IHtcbiAgYm9yZGVyLWxlZnQ6IDA7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgZGl2I2ExMXktdG9vbGJhci5hMTF5LWxlZnQge1xuICAgIGJvdHRvbTogMC45Mzc1cmVtO1xuICAgIHRvcDogYXV0bztcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgZGl2I2ExMXktdG9vbGJhci5hMTF5LWxlZnQuYmFja3RvcC1sZWZ0IHtcbiAgICBib3R0b206IDQuNjg3NXJlbTtcbiAgfVxufVxuZGl2I2ExMXktdG9vbGJhci5hMTF5LXJpZ2h0IHtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbSAwIDAgMC4yNXJlbTtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICByaWdodDogMDtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDBlbSkge1xuICBkaXYjYTExeS10b29sYmFyLmExMXktcmlnaHQge1xuICAgIGJvdHRvbTogMC45Mzc1cmVtO1xuICAgIHRvcDogYXV0bztcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgZGl2I2ExMXktdG9vbGJhci5hMTF5LXJpZ2h0LmJhY2t0b3AtcmlnaHQge1xuICAgIGJvdHRvbTogNC42ODc1cmVtO1xuICB9XG59XG5kaXYjYTExeS10b29sYmFyLmExMXktcmlnaHQgZGl2I2ExMXktZm9udHNpemUgYnV0dG9uLmExMXktZm9udHNpemUsIGRpdiNhMTF5LXRvb2xiYXIuYTExeS1yaWdodCBkaXYjYTExeS1jb250cmFzdCBidXR0b24uYTExeS1mb250c2l6ZSB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW0gMCAwIDA7XG59XG5kaXYjYTExeS10b29sYmFyLmExMXktcmlnaHQgZGl2I2ExMXktZm9udHNpemUgYnV0dG9uLmExMXktY29udHJhc3QsIGRpdiNhMTF5LXRvb2xiYXIuYTExeS1yaWdodCBkaXYjYTExeS1jb250cmFzdCBidXR0b24uYTExeS1jb250cmFzdCB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi8qKioqIFRPR0dMRSBGT05UU0laRSBTVFlMRVMgKioqKi9cbmh0bWwuYTExeS1mb250c2l6ZSAuYnMtYnRuLCBodG1sLmExMXktZm9udHNpemUgLmJ1dHRvbixcbmh0bWwuYTExeS1mb250c2l6ZSBoZWFkZXIjbWFzdGhlYWQgLmFsdC1uYXYtd3JhcHBlciAuYWx0LW5hdi1teS1jYXJ0IGEsXG5odG1sLmExMXktZm9udHNpemUgLnRvcC1iYXItc29jaWFsIHVsIGxpLmN1c3RvbS1idXR0b24gYSxcbmh0bWwuYTExeS1mb250c2l6ZSBuYXYub2ZmLWNhbnZhcyB1bC5zb2NpYWwtbWVkaWEtd3JhcHBlciBsaS5jdXN0b20tYnV0dG9uIGEsXG5odG1sLmExMXktZm9udHNpemUgbmF2Lm9mZi1jYW52YXMgLmFsdC1uYXYtbXktY2FydCBhIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5odG1sLmExMXktZm9udHNpemUgcCwgaHRtbC5hMTF5LWZvbnRzaXplIGEsIGh0bWwuYTExeS1mb250c2l6ZSBsaSwgaHRtbC5hMTF5LWZvbnRzaXplIHNwYW4sIGh0bWwuYTExeS1mb250c2l6ZSB0aW1lLCBodG1sLmExMXktZm9udHNpemUgc3Ryb25nLCBodG1sLmExMXktZm9udHNpemUgZW0sIGh0bWwuYTExeS1mb250c2l6ZSBjb2RlIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuaHRtbC5hMTF5LWZvbnRzaXplIGgyLCBodG1sLmExMXktZm9udHNpemUgaDIgc3BhbiwgaHRtbC5hMTF5LWZvbnRzaXplIGgyIGEge1xuICBmb250LXNpemU6IDIuMTI1cmVtICFpbXBvcnRhbnQ7XG59XG5odG1sLmExMXktZm9udHNpemUgaDMsIGh0bWwuYTExeS1mb250c2l6ZSBoMyBzcGFuLCBodG1sLmExMXktZm9udHNpemUgaDMgYSxcbmh0bWwuYTExeS1mb250c2l6ZSBib2R5Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzID4gbGkucHJvZHVjdCA+IGEgLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGUsIGh0bWwuYTExeS1mb250c2l6ZSBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMgPiBsaS5wcm9kdWN0ID4gYSAud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X190aXRsZSwgaHRtbC5hMTF5LWZvbnRzaXplIGRpdi53b29jb21tZXJjZSB1bC5wcm9kdWN0cyA+IGxpLnByb2R1Y3QgPiBhIC53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlIHtcbiAgZm9udC1zaXplOiAxLjg3NXJlbSAhaW1wb3J0YW50O1xufVxuaHRtbC5hMTF5LWZvbnRzaXplIGg0LCBodG1sLmExMXktZm9udHNpemUgaDQgc3BhbiwgaHRtbC5hMTF5LWZvbnRzaXplIGg0IGEsXG5odG1sLmExMXktZm9udHNpemUgaDUsIGh0bWwuYTExeS1mb250c2l6ZSBoNSBzcGFuLCBodG1sLmExMXktZm9udHNpemUgaDUgYSxcbmh0bWwuYTExeS1mb250c2l6ZSBoNiwgaHRtbC5hMTF5LWZvbnRzaXplIGg2IHNwYW4sIGh0bWwuYTExeS1mb250c2l6ZSBoNiBhIHtcbiAgZm9udC1zaXplOiAxLjYyNXJlbSAhaW1wb3J0YW50O1xufVxuaHRtbC5hMTF5LWZvbnRzaXplIG5hdi5vZmYtY2FudmFzIC5tZW51ID4gbGkgPiBhLFxuaHRtbC5hMTF5LWZvbnRzaXplIGhlYWRlciNtYXN0aGVhZCAubWVudSA+IGxpID4gYSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtICFpbXBvcnRhbnQ7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wNjI1cmVtO1xufVxuaHRtbC5hMTF5LWZvbnRzaXplIGhlYWRlciNtYXN0aGVhZCAuc2l0ZS10aXRsZS1iYXIudGl0bGUtYmFyIGJ1dHRvbi5tZW51LWljb24gc3BhbiB7XG4gIGZvbnQtc2l6ZTogMC42MjVyZW0gIWltcG9ydGFudDtcbn1cbmh0bWwuYTExeS1mb250c2l6ZSAuYnJlYWRjcnVtYnMtd3JhcHBlciAjYnJlYWRjcnVtYnMgbGksXG5odG1sLmExMXktZm9udHNpemUgLmJyZWFkY3J1bWJzLXdyYXBwZXIgI2JyZWFkY3J1bWJzIGxpIGEsXG5odG1sLmExMXktZm9udHNpemUgYm9keS53b29jb21tZXJjZSAuYnJlYWRjcnVtYnMtd3JhcHBlciBuYXYud29vY29tbWVyY2UtYnJlYWRjcnVtYiwgaHRtbC5hMTF5LWZvbnRzaXplIGJvZHkud29vY29tbWVyY2UtcGFnZSAuYnJlYWRjcnVtYnMtd3JhcHBlciBuYXYud29vY29tbWVyY2UtYnJlYWRjcnVtYixcbmh0bWwuYTExeS1mb250c2l6ZSBib2R5Lndvb2NvbW1lcmNlIC5icmVhZGNydW1icy13cmFwcGVyIG5hdi53b29jb21tZXJjZS1icmVhZGNydW1iIHNwYW4uc2VwYXJhdG9yLCBodG1sLmExMXktZm9udHNpemUgYm9keS53b29jb21tZXJjZS1wYWdlIC5icmVhZGNydW1icy13cmFwcGVyIG5hdi53b29jb21tZXJjZS1icmVhZGNydW1iIHNwYW4uc2VwYXJhdG9yLCBodG1sLmExMXktZm9udHNpemUgZGl2Lndvb2NvbW1lcmNlIC5icmVhZGNydW1icy13cmFwcGVyIG5hdi53b29jb21tZXJjZS1icmVhZGNydW1iIHNwYW4uc2VwYXJhdG9yLFxuaHRtbC5hMTF5LWZvbnRzaXplIGJvZHkud29vY29tbWVyY2UgLmJyZWFkY3J1bWJzLXdyYXBwZXIgbmF2Lndvb2NvbW1lcmNlLWJyZWFkY3J1bWIgYSwgaHRtbC5hMTF5LWZvbnRzaXplIGJvZHkud29vY29tbWVyY2UtcGFnZSAuYnJlYWRjcnVtYnMtd3JhcHBlciBuYXYud29vY29tbWVyY2UtYnJlYWRjcnVtYiBhLCBodG1sLmExMXktZm9udHNpemUgZGl2Lndvb2NvbW1lcmNlIC5icmVhZGNydW1icy13cmFwcGVyIG5hdi53b29jb21tZXJjZS1icmVhZGNydW1iIGEge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xufVxuaHRtbC5hMTF5LWZvbnRzaXplIC5lbnRyeS1jb250ZW50IGZpZ3VyZS53cC1jYXB0aW9uIGZpZ2NhcHRpb24ud3AtY2FwdGlvbi10ZXh0IHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuaHRtbC5hMTF5LWZvbnRzaXplIGxhYmVsLFxuaHRtbC5hMTF5LWZvbnRzaXplIC5nZm9ybV93cmFwcGVyIC50b3BfbGFiZWwgLmdmaWVsZF9sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cbmh0bWwuYTExeS1mb250c2l6ZSAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IGxpLmdmaWVsZCAuZ2lucHV0X2NvbXBsZXggaW5wdXQgKyBsYWJlbCB7XG4gIGZvbnQtc2l6ZTogMXJlbSAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogMTtcbn1cbmh0bWwuYTExeS1mb250c2l6ZSBoMS5lbnRyeS10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMi41cmVtICFpbXBvcnRhbnQ7XG59XG5odG1sLmExMXktZm9udHNpemUgYXNpZGUuc2lkZWJhciAud2lkZ2V0IGg2IHtcbiAgZm9udC1zaXplOiAxLjVyZW0gIWltcG9ydGFudDtcbn1cbmh0bWwuYTExeS1mb250c2l6ZSBhc2lkZS5zaWRlYmFyIC53aWRnZXQgbGksIGh0bWwuYTExeS1mb250c2l6ZSBhc2lkZS5zaWRlYmFyIC53aWRnZXQgbGkgYSB7XG4gIGZvbnQtc2l6ZTogMS4zNzVyZW0gIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cbmh0bWwuYTExeS1mb250c2l6ZSAjZm9vdGVyLWNvbnRhaW5lciAucHJlLWZvb3RlciBoNCB7XG4gIGZvbnQtc2l6ZTogMS43NXJlbSAhaW1wb3J0YW50O1xufVxuaHRtbC5hMTF5LWZvbnRzaXplICNmb290ZXItY29udGFpbmVyIC5wcmUtZm9vdGVyIHAsIGh0bWwuYTExeS1mb250c2l6ZSAjZm9vdGVyLWNvbnRhaW5lciAucHJlLWZvb3RlciBhLCBodG1sLmExMXktZm9udHNpemUgI2Zvb3Rlci1jb250YWluZXIgLnByZS1mb290ZXIgbGksIGh0bWwuYTExeS1mb250c2l6ZSAjZm9vdGVyLWNvbnRhaW5lciAucHJlLWZvb3RlciBzcGFuLCBodG1sLmExMXktZm9udHNpemUgI2Zvb3Rlci1jb250YWluZXIgLnByZS1mb290ZXIgdGltZSwgaHRtbC5hMTF5LWZvbnRzaXplICNmb290ZXItY29udGFpbmVyIC5wcmUtZm9vdGVyIHN0cm9uZywgaHRtbC5hMTF5LWZvbnRzaXplICNmb290ZXItY29udGFpbmVyIC5wcmUtZm9vdGVyIGVtIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuaHRtbC5hMTF5LWZvbnRzaXplICNmb290ZXItY29udGFpbmVyIC5mb290ZXItY29udGFpbmVyIGg2IHtcbiAgZm9udC1zaXplOiAxLjc1cmVtICFpbXBvcnRhbnQ7XG59XG5odG1sLmExMXktZm9udHNpemUgI2Zvb3Rlci1jb250YWluZXIgLmZvb3Rlci1jb250YWluZXIgcCwgaHRtbC5hMTF5LWZvbnRzaXplICNmb290ZXItY29udGFpbmVyIC5mb290ZXItY29udGFpbmVyIGEsIGh0bWwuYTExeS1mb250c2l6ZSAjZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWNvbnRhaW5lciBsaSwgaHRtbC5hMTF5LWZvbnRzaXplICNmb290ZXItY29udGFpbmVyIC5mb290ZXItY29udGFpbmVyIHNwYW4sIGh0bWwuYTExeS1mb250c2l6ZSAjZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWNvbnRhaW5lciB0aW1lLCBodG1sLmExMXktZm9udHNpemUgI2Zvb3Rlci1jb250YWluZXIgLmZvb3Rlci1jb250YWluZXIgc3Ryb25nLCBodG1sLmExMXktZm9udHNpemUgI2Zvb3Rlci1jb250YWluZXIgLmZvb3Rlci1jb250YWluZXIgZW0ge1xuICBmb250LXNpemU6IDEuMjVyZW07XG59XG5odG1sLmExMXktZm9udHNpemUgI2Zvb3Rlci1jb250YWluZXIgI2NvcHlyaWdodCBwLCBodG1sLmExMXktZm9udHNpemUgI2Zvb3Rlci1jb250YWluZXIgI2NvcHlyaWdodCBhLCBodG1sLmExMXktZm9udHNpemUgI2Zvb3Rlci1jb250YWluZXIgI2NvcHlyaWdodCBsaSwgaHRtbC5hMTF5LWZvbnRzaXplICNmb290ZXItY29udGFpbmVyICNjb3B5cmlnaHQgc3BhbiwgaHRtbC5hMTF5LWZvbnRzaXplICNmb290ZXItY29udGFpbmVyICNjb3B5cmlnaHQgdGltZSwgaHRtbC5hMTF5LWZvbnRzaXplICNmb290ZXItY29udGFpbmVyICNjb3B5cmlnaHQgc3Ryb25nLCBodG1sLmExMXktZm9udHNpemUgI2Zvb3Rlci1jb250YWluZXIgI2NvcHlyaWdodCBlbSB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cblxuaHRtbC5hMTF5LWNvbnRyYXN0IGEsIGh0bWwuYTExeS1jb250cmFzdCBhYmJyLCBodG1sLmExMXktY29udHJhc3QgYXJ0aWNsZSwgaHRtbC5hMTF5LWNvbnRyYXN0IGFzaWRlLCBodG1sLmExMXktY29udHJhc3QgYmFzZWZvbnQsIGh0bWwuYTExeS1jb250cmFzdCBiZGksIGh0bWwuYTExeS1jb250cmFzdCBiaWcsIGh0bWwuYTExeS1jb250cmFzdCBibGluaywgaHRtbC5hMTF5LWNvbnRyYXN0IGJsb2NrcXVvdGUsIGh0bWwuYTExeS1jb250cmFzdCBib2R5LCBodG1sLmExMXktY29udHJhc3QgYnV0dG9uLCBodG1sLmExMXktY29udHJhc3QgY2FudmFzLCBodG1sLmExMXktY29udHJhc3QgY2FwdGlvbiwgaHRtbC5hMTF5LWNvbnRyYXN0IGNlbnRlciwgaHRtbC5hMTF5LWNvbnRyYXN0IGNvZGUsIGh0bWwuYTExeS1jb250cmFzdCBjb2wsIGh0bWwuYTExeS1jb250cmFzdCBjb2xncm91cCwgaHRtbC5hMTF5LWNvbnRyYXN0IGNvbW1hbmQsIGh0bWwuYTExeS1jb250cmFzdCBkZCwgaHRtbC5hMTF5LWNvbnRyYXN0IGRldGFpbHMsIGh0bWwuYTExeS1jb250cmFzdCBkaXIsIGh0bWwuYTExeS1jb250cmFzdCBkaXYsIGh0bWwuYTExeS1jb250cmFzdCBkbCwgaHRtbC5hMTF5LWNvbnRyYXN0IGR0LCBodG1sLmExMXktY29udHJhc3QgZW1iZWQsIGh0bWwuYTExeS1jb250cmFzdCBmaWVsZHNldCwgaHRtbC5hMTF5LWNvbnRyYXN0IGZpZ2NhcHRpb24sIGh0bWwuYTExeS1jb250cmFzdCBmaWd1cmUsIGh0bWwuYTExeS1jb250cmFzdCBmb250LCBodG1sLmExMXktY29udHJhc3QgZm9vdGVyLCBodG1sLmExMXktY29udHJhc3QgZm9ybSwgaHRtbC5hMTF5LWNvbnRyYXN0IGhlYWRlciwgaHRtbC5hMTF5LWNvbnRyYXN0IGhncm91cCwgaHRtbC5hMTF5LWNvbnRyYXN0IGh0bWwsIGh0bWwuYTExeS1jb250cmFzdCBpZnJhbWUsIGh0bWwuYTExeS1jb250cmFzdCBpbWcsIGh0bWwuYTExeS1jb250cmFzdCBpbnB1dCwgaHRtbC5hMTF5LWNvbnRyYXN0IGtiZCwgaHRtbC5hMTF5LWNvbnRyYXN0IGxhYmVsLCBodG1sLmExMXktY29udHJhc3QgbGVnZW5kLCBodG1sLmExMXktY29udHJhc3QgbGksIGh0bWwuYTExeS1jb250cmFzdCBsaXN0aW5nLCBodG1sLmExMXktY29udHJhc3QgbWFyaywgaHRtbC5hMTF5LWNvbnRyYXN0IG1hcnF1ZWUsIGh0bWwuYTExeS1jb250cmFzdCBtZW51LCBodG1sLmExMXktY29udHJhc3QgbWV0ZXIsIGh0bWwuYTExeS1jb250cmFzdCBtdWx0aWNvbCwgaHRtbC5hMTF5LWNvbnRyYXN0IG5hdiwgaHRtbC5hMTF5LWNvbnRyYXN0IG5vYnIsIGh0bWwuYTExeS1jb250cmFzdCBvYmplY3QsIGh0bWwuYTExeS1jb250cmFzdCBvbCwgaHRtbC5hMTF5LWNvbnRyYXN0IG9wdGlvbiwgaHRtbC5hMTF5LWNvbnRyYXN0IHAsIGh0bWwuYTExeS1jb250cmFzdCBwbGFpbnRleHQsIGh0bWwuYTExeS1jb250cmFzdCBwcmUsIGh0bWwuYTExeS1jb250cmFzdCBwcm9ncmVzcywgaHRtbC5hMTF5LWNvbnRyYXN0IHEsIGh0bWwuYTExeS1jb250cmFzdCBzLCBodG1sLmExMXktY29udHJhc3Qgc2VjdGlvbiwgaHRtbC5hMTF5LWNvbnRyYXN0IHNlbGVjdCwgaHRtbC5hMTF5LWNvbnRyYXN0IHNtYWxsLCBodG1sLmExMXktY29udHJhc3Qgc3BhbiwgaHRtbC5hMTF5LWNvbnRyYXN0IHN0cmlrZSwgaHRtbC5hMTF5LWNvbnRyYXN0IHN1YiwgaHRtbC5hMTF5LWNvbnRyYXN0IHN1bW1hcnksIGh0bWwuYTExeS1jb250cmFzdCBzdXAsIGh0bWwuYTExeS1jb250cmFzdCB0YWJsZSwgaHRtbC5hMTF5LWNvbnRyYXN0IHRkLCBodG1sLmExMXktY29udHJhc3QgdGV4dGFyZWEsIGh0bWwuYTExeS1jb250cmFzdCB0aCwgaHRtbC5hMTF5LWNvbnRyYXN0IHRpbWUsIGh0bWwuYTExeS1jb250cmFzdCB0ciwgaHRtbC5hMTF5LWNvbnRyYXN0IHR0LCBodG1sLmExMXktY29udHJhc3QgdWwsIGh0bWwuYTExeS1jb250cmFzdCB2YXIsIGh0bWwuYTExeS1jb250cmFzdCB4bXAsIGh0bWwuYTExeS1jb250cmFzdCBib2R5Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzID4gbGkucHJvZHVjdCA+IGEgc3Bhbi5wcmljZSBzcGFuLmFtb3VudCwgaHRtbC5hMTF5LWNvbnRyYXN0IGJvZHkud29vY29tbWVyY2UtcGFnZSB1bC5wcm9kdWN0cyA+IGxpLnByb2R1Y3QgPiBhIHNwYW4ucHJpY2Ugc3Bhbi5hbW91bnQsIGh0bWwuYTExeS1jb250cmFzdCBkaXYud29vY29tbWVyY2UgdWwucHJvZHVjdHMgPiBsaS5wcm9kdWN0ID4gYSBzcGFuLnByaWNlIHNwYW4uYW1vdW50LCBodG1sLmExMXktY29udHJhc3QgI21haW4tY29udGFpbmVyIGgyLCBodG1sLmExMXktY29udHJhc3QgI21haW4tY29udGFpbmVyIGgyIHNwYW4sIGh0bWwuYTExeS1jb250cmFzdCAjbWFpbi1jb250YWluZXIgaDMsIGh0bWwuYTExeS1jb250cmFzdCAjbWFpbi1jb250YWluZXIgaDMgc3BhbiwgaHRtbC5hMTF5LWNvbnRyYXN0ICNtYWluLWNvbnRhaW5lciBoNCwgaHRtbC5hMTF5LWNvbnRyYXN0ICNtYWluLWNvbnRhaW5lciBoNCBzcGFuLCBodG1sLmExMXktY29udHJhc3QgI21haW4tY29udGFpbmVyIGg1LCBodG1sLmExMXktY29udHJhc3QgI21haW4tY29udGFpbmVyIGg1IHNwYW4sIGh0bWwuYTExeS1jb250cmFzdCAjbWFpbi1jb250YWluZXIgaDYsIGh0bWwuYTExeS1jb250cmFzdCAjbWFpbi1jb250YWluZXIgaDYgc3BhbiwgaHRtbC5hMTF5LWNvbnRyYXN0IC5wcmUtZm9vdGVyLWNvbnRhaW5lciAucHJlLWZvb3RlciBoMSwgaHRtbC5hMTF5LWNvbnRyYXN0IC5wcmUtZm9vdGVyLWNvbnRhaW5lciAucHJlLWZvb3RlciBoMiwgaHRtbC5hMTF5LWNvbnRyYXN0IC5wcmUtZm9vdGVyLWNvbnRhaW5lciAucHJlLWZvb3RlciBoMywgaHRtbC5hMTF5LWNvbnRyYXN0IC5wcmUtZm9vdGVyLWNvbnRhaW5lciAucHJlLWZvb3RlciBoNCwgaHRtbC5hMTF5LWNvbnRyYXN0IC5wcmUtZm9vdGVyLWNvbnRhaW5lciAucHJlLWZvb3RlciBoNSwgaHRtbC5hMTF5LWNvbnRyYXN0IC5wcmUtZm9vdGVyLWNvbnRhaW5lciAucHJlLWZvb3RlciBoNiwgaHRtbC5hMTF5LWNvbnRyYXN0IC5mb290ZXItY29udGFpbmVyIC5mb290ZXIgaDEsIGh0bWwuYTExeS1jb250cmFzdCAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyIGgyLCBodG1sLmExMXktY29udHJhc3QgLmZvb3Rlci1jb250YWluZXIgLmZvb3RlciBoMywgaHRtbC5hMTF5LWNvbnRyYXN0IC5mb290ZXItY29udGFpbmVyIC5mb290ZXIgaDQsIGh0bWwuYTExeS1jb250cmFzdCAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyIGg1LCBodG1sLmExMXktY29udHJhc3QgLmZvb3Rlci1jb250YWluZXIgLmZvb3RlciBoNiwgaHRtbC5hMTF5LWNvbnRyYXN0IHNwYW4ucmVxdWlyZWQsIGh0bWwuYTExeS1jb250cmFzdCBib2R5Lndvb2NvbW1lcmNlIHNwYW4ucmVxdWlyZWQsIGh0bWwuYTExeS1jb250cmFzdCBib2R5Lndvb2NvbW1lcmNlLXBhZ2Ugc3Bhbi5yZXF1aXJlZCwgaHRtbC5hMTF5LWNvbnRyYXN0IGRpdi53b29jb21tZXJjZSBzcGFuLnJlcXVpcmVkIHtcbiAgY29sb3I6ICNGM0YzRjMgIWltcG9ydGFudDtcbn1cbmh0bWwuYTExeS1jb250cmFzdCBhIHtcbiAgY29sb3I6IHllbGxvdyAhaW1wb3J0YW50O1xufVxuaHRtbC5hMTF5LWNvbnRyYXN0ICNtYWluLWNvbnRhaW5lciBhLCBodG1sLmExMXktY29udHJhc3QgLnByZS1mb290ZXItY29udGFpbmVyIGEsIGh0bWwuYTExeS1jb250cmFzdCAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyIGEsIGh0bWwuYTExeS1jb250cmFzdCAjY29weXJpZ2h0IGEge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSAhaW1wb3J0YW50O1xufVxuaHRtbC5hMTF5LWNvbnRyYXN0IGEsIGh0bWwuYTExeS1jb250cmFzdCBhYmJyLCBodG1sLmExMXktY29udHJhc3QgYWNyb255bSwgaHRtbC5hMTF5LWNvbnRyYXN0IGFkZHJlc3MsIGh0bWwuYTExeS1jb250cmFzdCBhcnRpY2xlLCBodG1sLmExMXktY29udHJhc3QgYXNpZGUsIGh0bWwuYTExeS1jb250cmFzdCBiLCBodG1sLmExMXktY29udHJhc3QgYmFzZWZvbnQsIGh0bWwuYTExeS1jb250cmFzdCBiZGksIGh0bWwuYTExeS1jb250cmFzdCBiaWcsIGh0bWwuYTExeS1jb250cmFzdCBibGluaywgaHRtbC5hMTF5LWNvbnRyYXN0IGJsb2NrcXVvdGUsIGh0bWwuYTExeS1jb250cmFzdCBib2R5LCBodG1sLmExMXktY29udHJhc3QgY2FudmFzLCBodG1sLmExMXktY29udHJhc3QgY2FwdGlvbiwgaHRtbC5hMTF5LWNvbnRyYXN0IGNlbnRlciwgaHRtbC5hMTF5LWNvbnRyYXN0IGNpdGUsIGh0bWwuYTExeS1jb250cmFzdCBjb2RlLCBodG1sLmExMXktY29udHJhc3QgY29sLCBodG1sLmExMXktY29udHJhc3QgY29sZ3JvdXAsIGh0bWwuYTExeS1jb250cmFzdCBjb21tYW5kLCBodG1sLmExMXktY29udHJhc3QgZGQsIGh0bWwuYTExeS1jb250cmFzdCBkZXRhaWxzLCBodG1sLmExMXktY29udHJhc3QgZGZuLCBodG1sLmExMXktY29udHJhc3QgZGlyLCBodG1sLmExMXktY29udHJhc3QgZGl2LCBodG1sLmExMXktY29udHJhc3QgZGwsIGh0bWwuYTExeS1jb250cmFzdCBkdCwgaHRtbC5hMTF5LWNvbnRyYXN0IGVtLCBodG1sLmExMXktY29udHJhc3QgZW1iZWQsIGh0bWwuYTExeS1jb250cmFzdCBmaWVsZHNldCwgaHRtbC5hMTF5LWNvbnRyYXN0IGZpZ2NhcHRpb24sIGh0bWwuYTExeS1jb250cmFzdCBmaWd1cmUsIGh0bWwuYTExeS1jb250cmFzdCBmb250LCBodG1sLmExMXktY29udHJhc3QgZm9vdGVyLCBodG1sLmExMXktY29udHJhc3QgZm9ybSwgaHRtbC5hMTF5LWNvbnRyYXN0IGgxLCBodG1sLmExMXktY29udHJhc3QgaDEgYSwgaHRtbC5hMTF5LWNvbnRyYXN0IGgxIGEgYiwgaHRtbC5hMTF5LWNvbnRyYXN0IGgxIGFiYnIsIGh0bWwuYTExeS1jb250cmFzdCBoMSBjZW50ZXIsIGh0bWwuYTExeS1jb250cmFzdCBoMSBzcGFuLCBodG1sLmExMXktY29udHJhc3QgaDIsIGh0bWwuYTExeS1jb250cmFzdCBoMiBhLCBodG1sLmExMXktY29udHJhc3QgaDIgYSBiLCBodG1sLmExMXktY29udHJhc3QgaDIgYWJiciwgaHRtbC5hMTF5LWNvbnRyYXN0IGgyIGNlbnRlciwgaHRtbC5hMTF5LWNvbnRyYXN0IGgyIHNwYW4sIGh0bWwuYTExeS1jb250cmFzdCBoMywgaHRtbC5hMTF5LWNvbnRyYXN0IGgzIGEsIGh0bWwuYTExeS1jb250cmFzdCBoMyBhIGIsIGh0bWwuYTExeS1jb250cmFzdCBoMyBhYmJyLCBodG1sLmExMXktY29udHJhc3QgaDMgY2VudGVyLCBodG1sLmExMXktY29udHJhc3QgaDMgc3BhbiwgaHRtbC5hMTF5LWNvbnRyYXN0IGg0LCBodG1sLmExMXktY29udHJhc3QgaDQgYSwgaHRtbC5hMTF5LWNvbnRyYXN0IGg0IGEgYiwgaHRtbC5hMTF5LWNvbnRyYXN0IGg0IGFiYnIsIGh0bWwuYTExeS1jb250cmFzdCBoNCBjZW50ZXIsIGh0bWwuYTExeS1jb250cmFzdCBoNCBzcGFuLCBodG1sLmExMXktY29udHJhc3QgaDUsIGh0bWwuYTExeS1jb250cmFzdCBoNSBhLCBodG1sLmExMXktY29udHJhc3QgaDUgYSBiLCBodG1sLmExMXktY29udHJhc3QgaDUgYWJiciwgaHRtbC5hMTF5LWNvbnRyYXN0IGg1IGNlbnRlciwgaHRtbC5hMTF5LWNvbnRyYXN0IGg1IHNwYW4sIGh0bWwuYTExeS1jb250cmFzdCBoNiwgaHRtbC5hMTF5LWNvbnRyYXN0IGg2IGEsIGh0bWwuYTExeS1jb250cmFzdCBoNiBhIGIsIGh0bWwuYTExeS1jb250cmFzdCBoNiBhYmJyLCBodG1sLmExMXktY29udHJhc3QgaDYgY2VudGVyLCBodG1sLmExMXktY29udHJhc3QgaDYgc3BhbiwgaHRtbC5hMTF5LWNvbnRyYXN0IGhlYWRlciwgaHRtbC5hMTF5LWNvbnRyYXN0IGhncm91cCwgaHRtbC5hMTF5LWNvbnRyYXN0IGh0bWwsIGh0bWwuYTExeS1jb250cmFzdCBpLCBodG1sLmExMXktY29udHJhc3QgaWZyYW1lLCBodG1sLmExMXktY29udHJhc3QgaW5wdXQsIGh0bWwuYTExeS1jb250cmFzdCBrYmQsIGh0bWwuYTExeS1jb250cmFzdCBsYWJlbCwgaHRtbC5hMTF5LWNvbnRyYXN0IGxlZ2VuZCwgaHRtbC5hMTF5LWNvbnRyYXN0IGxpLCBodG1sLmExMXktY29udHJhc3QgbGlzdGluZywgaHRtbC5hMTF5LWNvbnRyYXN0IG1hcmssIGh0bWwuYTExeS1jb250cmFzdCBtYXJxdWVlLCBodG1sLmExMXktY29udHJhc3QgbWVudSwgaHRtbC5hMTF5LWNvbnRyYXN0IG1ldGVyLCBodG1sLmExMXktY29udHJhc3QgbXVsdGljb2wsIGh0bWwuYTExeS1jb250cmFzdCBuYXYsIGh0bWwuYTExeS1jb250cmFzdCBub2JyLCBodG1sLmExMXktY29udHJhc3Qgb2JqZWN0LCBodG1sLmExMXktY29udHJhc3Qgb2wsIGh0bWwuYTExeS1jb250cmFzdCBvcHRpb24sIGh0bWwuYTExeS1jb250cmFzdCBwLCBodG1sLmExMXktY29udHJhc3QgcGxhaW50ZXh0LCBodG1sLmExMXktY29udHJhc3QgcHJlLCBodG1sLmExMXktY29udHJhc3QgcHJvZ3Jlc3MsIGh0bWwuYTExeS1jb250cmFzdCBxLCBodG1sLmExMXktY29udHJhc3QgcywgaHRtbC5hMTF5LWNvbnRyYXN0IHNlY3Rpb24sIGh0bWwuYTExeS1jb250cmFzdCBzbWFsbCwgaHRtbC5hMTF5LWNvbnRyYXN0IHNwYW4sIGh0bWwuYTExeS1jb250cmFzdCBzdHJpa2UsIGh0bWwuYTExeS1jb250cmFzdCBzdHJvbmcsIGh0bWwuYTExeS1jb250cmFzdCBzdWIsIGh0bWwuYTExeS1jb250cmFzdCBzdW1tYXJ5LCBodG1sLmExMXktY29udHJhc3Qgc3VwLCBodG1sLmExMXktY29udHJhc3QgdGFibGUsIGh0bWwuYTExeS1jb250cmFzdCB0ZCwgaHRtbC5hMTF5LWNvbnRyYXN0IHRleHRhcmVhLCBodG1sLmExMXktY29udHJhc3QgdGgsIGh0bWwuYTExeS1jb250cmFzdCB0aW1lLCBodG1sLmExMXktY29udHJhc3QgdHIsIGh0bWwuYTExeS1jb250cmFzdCB0dCwgaHRtbC5hMTF5LWNvbnRyYXN0IHUsIGh0bWwuYTExeS1jb250cmFzdCB1bCwgaHRtbC5hMTF5LWNvbnRyYXN0IHZhciwgaHRtbC5hMTF5LWNvbnRyYXN0IHhtcCwgaHRtbC5hMTF5LWNvbnRyYXN0IC5icy1idG4sIGh0bWwuYTExeS1jb250cmFzdCAuYnV0dG9uLCBodG1sLmExMXktY29udHJhc3QgaGVhZGVyI21hc3RoZWFkIC50b3AtYmFyLXNvY2lhbCB1bC5zb2NpYWwtbWVkaWEtd3JhcHBlciBsaS5jdXN0b20tYnV0dG9uIGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRjNGM0YzICFpbXBvcnRhbnQ7XG59XG5odG1sLmExMXktY29udHJhc3QgaW5wdXRbdHlwZT10ZXh0XSwgaHRtbC5hMTF5LWNvbnRyYXN0IGlucHV0W3R5cGU9ZW1haWxdLCBodG1sLmExMXktY29udHJhc3QgaW5wdXRbdHlwZT1wYXNzd29yZF0sIGh0bWwuYTExeS1jb250cmFzdCBpbnB1dFt0eXBlPXRlbF0sIGh0bWwuYTExeS1jb250cmFzdCB0ZXh0YXJlYSwgaHRtbC5hMTF5LWNvbnRyYXN0IHNlbGVjdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbiAgY29sb3I6ICMwMDAwMDAgIWltcG9ydGFudDtcbn1cbmh0bWwuYTExeS1jb250cmFzdCBpbWcge1xuICBiYWNrZ3JvdW5kOiAjODA4MDgwICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4MDgwODAgIWltcG9ydGFudDtcbiAgbWl4LWJsZW5kLW1vZGU6IHVuc2V0ICFpbXBvcnRhbnQ7XG59XG5odG1sLmExMXktY29udHJhc3QgYm9keS53b29jb21tZXJjZS1wYWdlIC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMud2MtdGFicyBsaS5hY3RpdmUsXG5odG1sLmExMXktY29udHJhc3QgYm9keS53b29jb21tZXJjZS1wYWdlIC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMud2MtdGFicyBsaS5hY3RpdmUgYSB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cbmh0bWwuYTExeS1jb250cmFzdCBib2R5Lndvb2NvbW1lcmNlIHNwYW4ub25zYWxlOmJlZm9yZSwgaHRtbC5hMTF5LWNvbnRyYXN0IGJvZHkud29vY29tbWVyY2UtcGFnZSBzcGFuLm9uc2FsZTpiZWZvcmUsIGh0bWwuYTExeS1jb250cmFzdCBkaXYud29vY29tbWVyY2Ugc3Bhbi5vbnNhbGU6YmVmb3JlIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzAwMDAwMDtcbn1cbmh0bWwuYTExeS1jb250cmFzdCBib2R5Lndvb2NvbW1lcmNlIHNwYW4ub25zYWxlOmFmdGVyLCBodG1sLmExMXktY29udHJhc3QgYm9keS53b29jb21tZXJjZS1wYWdlIHNwYW4ub25zYWxlOmFmdGVyLCBodG1sLmExMXktY29udHJhc3QgZGl2Lndvb2NvbW1lcmNlIHNwYW4ub25zYWxlOmFmdGVyIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzAwMDAwMDtcbn1cblxuLyoqKiogMS4gUFJFTE9BREVSIFNUWUxFUyAqKioqL1xuI3ByZWxvYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgei1pbmRleDogOTk5OTk5OTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGJhY2tncm91bmQ6ICNGRkY7XG59XG4jcHJlbG9hZGVyIC5wcmVsb2FkZXItaW5uZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbn1cbiNwcmVsb2FkZXIgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogMTguNzVyZW07XG4gIHBhZGRpbmc6IDI1cHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICNwcmVsb2FkZXIgaW1nIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZzogMC45Mzc1cmVtIDAgMDtcbiAgfVxufVxuI3ByZWxvYWRlciAubGV0dGVyLWhvbGRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMXJlbTtcbn1cbiNwcmVsb2FkZXIgLmxldHRlciB7XG4gIGZsb2F0OiBsZWZ0O1xuICBmb250LWZhbWlseTogXCJCYXJsb3cgU2VtaSBDb25kZW5zZWRcIiwgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAycmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogIzAwNjkzQjtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNjI1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuI3ByZWxvYWRlciAuYW5pbWF0ZS1sb2FkaW5nIC5sZXR0ZXIge1xuICBhbmltYXRpb24tbmFtZTogbG9hZGluZ0Y7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMS42cztcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gIGFuaW1hdGlvbi1kaXJlY3Rpb246IGxpbmVhcjtcbn1cbiNwcmVsb2FkZXIgLmwtMSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMC40OHM7XG59XG4jcHJlbG9hZGVyIC5sLTIge1xuICBhbmltYXRpb24tZGVsYXk6IDAuNnM7XG59XG4jcHJlbG9hZGVyIC5sLTMge1xuICBhbmltYXRpb24tZGVsYXk6IDAuNzJzO1xufVxuI3ByZWxvYWRlciAubC00IHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjg0cztcbn1cbiNwcmVsb2FkZXIgLmwtNSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMC45NnM7XG59XG4jcHJlbG9hZGVyIC5sLTYge1xuICBhbmltYXRpb24tZGVsYXk6IDEuMDhzO1xufVxuI3ByZWxvYWRlciAubC03IHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAxLjJzO1xufVxuI3ByZWxvYWRlciAubC04IHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAxLjMycztcbn1cbiNwcmVsb2FkZXIgLmwtOSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMS40NHM7XG59XG4jcHJlbG9hZGVyIC5sLTEwIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAxLjU2cztcbn1cbkBrZXlmcmFtZXMgbG9hZGluZ0Yge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5hZG1pbi1iYXIgI3ByZWxvYWRlciBpbWcge1xuICBtYXJnaW4tdG9wOiAxNnB4O1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3ODJweCkge1xuICAuYWRtaW4tYmFyICNwcmVsb2FkZXIgaW1nIHtcbiAgICBtYXJnaW4tdG9wOiAyM3B4O1xuICB9XG59XG5cbi8qKioqIDIuIEdFTkVSQUwgU1RZTEVTICoqKiovXG4qIHtcbiAgLXdlYmtpdC1oeXBoZW5zOiBub25lICFpbXBvcnRhbnQ7XG4gIC1tb3otaHlwaGVuczogbm9uZSAhaW1wb3J0YW50O1xuICBoeXBoZW5zOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbmlucHV0W3R5cGU9dGV4dF0sXG5pbnB1dFt0eXBlPWVtYWlsXSxcbmlucHV0W3R5cGU9dGVsXSxcbmlucHV0W3R5cGU9cGFzc3dvcmRdLFxuaW5wdXRbdHlwZT1zdWJtaXRdLFxudGV4dGFyZWEsXG5zZWxlY3QsXG5idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmUgIWltcG9ydGFudDtcbiAgLW1vei1hcHBlcmFuY2U6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuYVtocmVmXj10ZWxdIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmUgIWltcG9ydGFudDtcbiAgLW1vei1hcHBlcmFuY2U6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuYSB7XG4gIGZvbnQtZmFtaWx5OiBcInNvdXJjZS1zYW5zLXByb1wiLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xufVxuXG5wLCBsaSwgc3BhbiwgdGltZSwgZGwsIGR0LCBkZCB7XG4gIGZvbnQtZmFtaWx5OiBcInNvdXJjZS1zYW5zLXByb1wiLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xufVxuXG4ubWFpbi1jb250ZW50IHAsIC5tYWluLWNvbnRlbnQgbGksIC5tYWluLWNvbnRlbnQgc3BhbiwgLm1haW4tY29udGVudCB0aW1lLCAubWFpbi1jb250ZW50IGRsLCAubWFpbi1jb250ZW50IGR0LCAubWFpbi1jb250ZW50IGRkIHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cbi5tYWluLWNvbnRlbnQgcCB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG4ubWFpbi1jb250ZW50IHA6bGFzdC1vZi10eXBlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5tYWluLWNvbnRlbnQgdWwsIC5tYWluLWNvbnRlbnQgb2wge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuXG4ucGlwZS1zZXBhcmF0b3Ige1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTI1JTtcbiAgbGluZS1oZWlnaHQ6IDEuNTYyNXJlbTtcbiAgbWFyZ2luOiAwIDAuMzc1cmVtO1xufVxuXG5idXR0b24ubWVudS1pY29uIHtcbiAgYWxpZ24taXRlbXM6IHNwYWNlLWJldHdlZW47XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGNvbG9yOiAjMDAzYTcxO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGZvbnQtc2l6ZTogMC42MjVyZW07XG4gIGhlaWdodDogMi4xMjVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG4gIHdpZHRoOiAyLjI1cmVtO1xufVxuYnV0dG9uLm1lbnUtaWNvbjpiZWZvcmUsIGJ1dHRvbi5tZW51LWljb246YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5idXR0b24ubWVudS1pY29uIHNwYW4ubWVudS1pY29uLWJhciB7XG4gIGJhY2tncm91bmQ6ICMwMDY5M0I7XG4gIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgaGVpZ2h0OiAwLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjE4NzVyZW07XG4gIG9wYWNpdHk6IDE7XG4gIHdpZHRoOiAxMDAlO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xufVxuYnV0dG9uLm1lbnUtaWNvbiBzcGFuLmtlZXAtdG9nZXRoZXIge1xuICBjb2xvcjogIzAwNjkzQjtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMC41O1xufVxuYnV0dG9uLm1lbnUtaWNvbiBzcGFuLmtlZXAtdG9nZXRoZXIgaSB7XG4gIGNvbG9yOiAjMDA2OTNCO1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGZvbnQtc2l6ZTogMC42ODc1cmVtO1xuICBsaW5lLWhlaWdodDogMC43O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDAuMDYyNXJlbTtcbn1cbmJ1dHRvbi5tZW51LWljb24uYWN0aXZlIHNwYW4ubWVudS1pY29uLWJhciB7XG4gIGJhY2tncm91bmQ6ICM5MTI3MTI7XG59XG5idXR0b24ubWVudS1pY29uLmFjdGl2ZSBzcGFuLm1lbnUtaWNvbi1iYXItMSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cbmJ1dHRvbi5tZW51LWljb24uYWN0aXZlIHNwYW4ubWVudS1pY29uLWJhci0yIHtcbiAgb3BhY2l0eTogMDtcbn1cbmJ1dHRvbi5tZW51LWljb24uYWN0aXZlIHNwYW4ubWVudS1pY29uLWJhci0zIHtcbiAgbWFyZ2luLXRvcDogLTAuODc1cmVtO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xufVxuYnV0dG9uLm1lbnUtaWNvbi5hY3RpdmUgc3Bhbi5rZWVwLXRvZ2V0aGVyIHtcbiAgbWFyZ2luLXRvcDogMC4zMTI1cmVtO1xufVxuYnV0dG9uLm1lbnUtaWNvbjpob3ZlciBzcGFuLm1lbnUtaWNvbi1iYXIsIGJ1dHRvbi5tZW51LWljb246Zm9jdXMgc3Bhbi5tZW51LWljb24tYmFyIHtcbiAgYmFja2dyb3VuZDogIzkxMjcxMjtcbn1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gIGZvbnQtZmFtaWx5OiBcIkJhcmxvdyBTZW1pIENvbmRlbnNlZFwiLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4xNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbmgxLmFsaWduY2VudGVyLCBoMi5hbGlnbmNlbnRlciwgaDMuYWxpZ25jZW50ZXIsIGg0LmFsaWduY2VudGVyLCBoNS5hbGlnbmNlbnRlciwgaDYuYWxpZ25jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5oMS5hbGlnbmxlZnQsIGgyLmFsaWdubGVmdCwgaDMuYWxpZ25sZWZ0LCBoNC5hbGlnbmxlZnQsIGg1LmFsaWdubGVmdCwgaDYuYWxpZ25sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbmgxLmFsaWducmlnaHQsIGgyLmFsaWducmlnaHQsIGgzLmFsaWducmlnaHQsIGg0LmFsaWducmlnaHQsIGg1LmFsaWducmlnaHQsIGg2LmFsaWducmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuaDIsIGgyIHNwYW4ge1xuICBmb250LXNpemU6IDJyZW0gIWltcG9ydGFudDtcbn1cblxuaDMsIGgzIHNwYW4ge1xuICBmb250LXNpemU6IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG5oNCwgaDQgc3BhbiB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG5oNSwgaDUgc3BhbiB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW0gIWltcG9ydGFudDtcbn1cblxuaDYsIGg2IHNwYW4ge1xuICBmb250LXNpemU6IDEuMDYyNXJlbSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM3LjVlbSkge1xuICAuYWxpZ25yaWdodCwgLmFsaWdubGVmdCwgLmFsaWduY2VudGVyLCAuYWxpZ25ub25lIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW46IDAgMCAxLjI1cmVtIDA7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uYWxpZ25sZWZ0IHtcbiAgcGFkZGluZy1yaWdodDogMnJlbTtcbn1cblxuLmFsaWducmlnaHQge1xuICBwYWRkaW5nLWxlZnQ6IDJyZW07XG59XG5cbmZpZ3VyZS5hbGlnbnJpZ2h0LCBmaWd1cmUuYWxpZ25sZWZ0LCBmaWd1cmUuYWxpZ25jZW50ZXIsIGZpZ3VyZS5hbGlnbm5vbmUge1xuICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM3LjVlbSkge1xuICBmaWd1cmUuYWxpZ25yaWdodCBpbWcsIGZpZ3VyZS5hbGlnbmxlZnQgaW1nLCBmaWd1cmUuYWxpZ25jZW50ZXIgaW1nLCBmaWd1cmUuYWxpZ25ub25lIGltZyB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5zZWN0aW9uLWhlYWRpbmcge1xuICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xufVxuLnNlY3Rpb24taGVhZGluZyBzcGFuLnNlY3Rpb24taGVhZGluZy1pbm5lciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWJvdHRvbTogMC42MjVyZW0gIWltcG9ydGFudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnNlY3Rpb24taGVhZGluZyBzcGFuLnNlY3Rpb24taGVhZGluZy1pbm5lcjphZnRlciB7XG4gIGJhY2tncm91bmQ6ICMwMDNhNzE7XG4gIGJvdHRvbTogMDtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMC4xODc1cmVtO1xuICBsZWZ0OiAwO1xuICBtYXgtd2lkdGg6IDkuMzc1cmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnNlY3Rpb24taGVhZGluZy5hbGlnbmNlbnRlciBzcGFuLnNlY3Rpb24taGVhZGluZy1pbm5lcjphZnRlciB7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuLnNlY3Rpb24taGVhZGluZy5hbGlnbnJpZ2h0IHNwYW4uc2VjdGlvbi1oZWFkaW5nLWlubmVyOmFmdGVyIHtcbiAgbGVmdDogMTAwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbn1cblxuc3Bhbi5zdWItdGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiA2NSU7XG4gIG1hcmdpbjogMC42MjVyZW0gMDtcbn1cblxuLnBsMTUge1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucHIxNSB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubXQxNSB7XG4gIG1hcmdpbi10b3A6IDAuOTM3NXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubWIxNSB7XG4gIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbSAhaW1wb3J0YW50O1xufVxuXG4udmNhcmQgYWJiciB7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgY3Vyc29yOiB0ZXh0ICFpbXBvcnRhbnQ7XG59XG5cbi52Y2FyZCAudHlwZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5vZmYtY2FudmFzLWNvbnRlbnQgI21hc3RoZWFkIHtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbnVsLnBhZ2luYXRpb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG59XG51bC5wYWdpbmF0aW9uIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLyogRm91bmRhdGlvbiA2IFRhYnMgU3R5bGVzICovXG4udGFicyB7XG4gIGJvcmRlcjogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi50YWJzIC50YWJzLXRpdGxlIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLnRhYnMgLnRhYnMtdGl0bGUge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuLnRhYnMgLnRhYnMtdGl0bGUgYSB7XG4gIGJhY2tncm91bmQ6ICMwMDNhNzE7XG4gIGJvcmRlcjogMC4wNjI1cmVtIHNvbGlkICMwMDNhNzE7XG4gIGJvdHRvbTogLTAuMDYyNXJlbTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgcGFkZGluZzogMC43NXJlbSAwLjkzNzVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogcGFkZGluZyAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IHBhZGRpbmcgMC4ycyBlYXNlLW91dDtcbiAgLW1zLXRyYW5zaXRpb246IHBhZGRpbmcgMC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAwLjJzIGVhc2Utb3V0O1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLnRhYnMgLnRhYnMtdGl0bGUgYSB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBib3JkZXItYm90dG9tOiAwLjA2MjVyZW0gc29saWQgI0YxRjNGNTtcbiAgICBib3gtc2hhZG93OiAwIC0wLjEyNXJlbSAwLjQzNzVyZW0gIzAwMWU2MTtcbiAgfVxufVxuLnRhYnMgLnRhYnMtdGl0bGUuaXMtYWN0aXZlIGEge1xuICBiYWNrZ3JvdW5kOiAjOTEyNzEyO1xuICBib3JkZXItYm90dG9tOiAwLjA2MjVyZW0gc29saWQgI0YxRjNGNTtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAudGFicyAudGFicy10aXRsZS5pcy1hY3RpdmU6Zmlyc3QtY2hpbGQgYSB7XG4gICAgYm9yZGVyLXRvcDogMC4wNjI1cmVtIHNvbGlkICMwMDNhNzE7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC50YWJzIC50YWJzLXRpdGxlLmlzLWFjdGl2ZTpsYXN0LWNoaWxkIGEge1xuICAgIGJvcmRlci1ib3R0b206IDAuMDYyNXJlbSBzb2xpZCAjMDAzYTcxO1xuICB9XG59XG5cbi50YWJzLWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kOiAjRjFGM0Y1O1xuICBib3JkZXItdG9wOiAwLjA2MjVyZW0gc29saWQgIzAwM2E3MTtcbn1cblxuLm9mZi1jYW52YXMtY29udGVudCAjZm9vdGVyLWNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogbm9uZTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5oaWRlLWZvci1ub3cge1xuICBkaXNwbGF5OiBub25lO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHNwZWFrOiBub25lO1xuICBsZWZ0OiAtOTk5OXB4O1xufVxuXG4udGhlLXRhZ3Mge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDIuNXJlbSAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLnRoZS10YWdzIGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDAuMzEyNXJlbTtcbn1cblxuLmtlZXAtdG9nZXRoZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbn1cblxuYm9keS5tb2RhbC1hY3RpdmUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5mb3JtI3NlYXJjaGZvcm0ge1xuICBib3JkZXI6IDAuMDYyNXJlbSBzb2xpZCAjMDAzYTcxO1xuICBib3JkZXItcmFkaXVzOiAwLjE4NzVyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbmZvcm0jc2VhcmNoZm9ybTphZnRlciB7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBjb250ZW50OiBcIlxcZjAwMlwiO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBQcm9cIiwgXCJmb250YXdlc29tZVwiO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMC41cmVtO1xuICB0b3A6IDAuMzEyNXJlbTtcbn1cbmZvcm0jc2VhcmNoZm9ybSAuaW5wdXQtZ3JvdXAge1xuICBtYXJnaW46IDA7XG59XG5mb3JtI3NlYXJjaGZvcm0gLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1maWVsZCB7XG4gIGJvcmRlcjogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDIuMjVyZW07XG4gIG1heC13aWR0aDogbm9uZTtcbiAgcGFkZGluZzogMCAwLjYyNXJlbTtcbn1cbmZvcm0jc2VhcmNoZm9ybSBpbnB1dCNzZWFyY2hzdWJtaXQge1xuICBiYWNrZ3JvdW5kOiAjMDAzYTcxICFpbXBvcnRhbnQ7XG4gIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICBtaW4td2lkdGg6IDIuMjVyZW07XG4gIHBhZGRpbmc6IDA7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG59XG5mb3JtI3NlYXJjaGZvcm0gaW5wdXQjc2VhcmNoc3VibWl0OmhvdmVyLCBmb3JtI3NlYXJjaGZvcm0gaW5wdXQjc2VhcmNoc3VibWl0OmZvY3VzIHtcbiAgYmFja2dyb3VuZDogIzAwMDAwMCAhaW1wb3J0YW50O1xufVxuXG4uYnMtYnRuLCAuZ2Zvcm1fZm9vdGVyIGlucHV0Lmdmb3JtX2J1dHRvbiwgI3Jlc3BvbmQgLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGJvcmRlci1yYWRpdXM6IDAuMTg3NXJlbTtcbiAgY29sb3I6ICMwMDE3MTc7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6IFwiQmFybG93IFNlbWkgQ29uZGVuc2VkXCIsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDAgIWltcG9ydGFudDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDEuMjVyZW0gMi4xODc1cmVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbn1cblxuLmJzLWJ0bi5icy1idG4td2hpdGUge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xufVxuXG4uYnMtYnRuLmJzLWJ0bi13aGl0ZTpob3Zlcixcbi5icy1idG4uYnMtYnRuLXdoaXRlOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogIzAwMTcxNztcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5cbi5icy1idG4uYnMtYnRuLXJlZCxcbi5nZm9ybV9mb290ZXIgaW5wdXQuZ2Zvcm1fYnV0dG9uLFxuI3Jlc3BvbmQgLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6ICM5MTI3MTI7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi5icy1idG4uYnMtYnRuLXJlZDpob3Zlcixcbi5icy1idG4uYnMtYnRuLXJlZDpmb2N1cyxcbi5nZm9ybV9mb290ZXIgaW5wdXQuZ2Zvcm1fYnV0dG9uOmhvdmVyLFxuLmdmb3JtX2Zvb3RlciBpbnB1dC5nZm9ybV9idXR0b246Zm9jdXMsXG4jcmVzcG9uZCAuYnV0dG9uOmhvdmVyLFxuI3Jlc3BvbmQgLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICMwMDAwMDA7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi5icy1idG4uYnMtYnRuLWJsdWUge1xuICBiYWNrZ3JvdW5kOiAjMDAzYTcxICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi5icy1idG4uYnMtYnRuLWJsdWU6aG92ZXIsXG4uYnMtYnRuLmJzLWJ0bi1ibHVlOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogIzAwMDAwMCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4uYnMtYnRuLmJzLWJ0bi1jbGVhciB7XG4gIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgY29sb3I6ICMwMDAwMDAgIWltcG9ydGFudDtcbn1cblxuLmJzLWJ0bi5icy1idG4tY2xlYXI6aG92ZXIsXG4uYnMtYnRuLmJzLWJ0bi1jbGVhcjpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICMwMDAwMDAgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cblxuLmJzLWJ0bi5icy1idG4tYmxhY2sge1xuICBiYWNrZ3JvdW5kOiAjMDAwMDAwO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuLmJzLWJ0bi5icy1idG4tYmxhY2s6aG92ZXIsXG4uYnMtYnRuLmJzLWJ0bi1ibGFjazpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGNvbG9yOiAjMDAwMDAwO1xufVxuXG4uYnMtYnRuOmhvdmVyLFxuLmJzLWJ0bjpmb2N1cyxcbi5nZm9ybV9mb290ZXIgaW5wdXQuZ2Zvcm1fYnV0dG9uOmhvdmVyLFxuLmdmb3JtX2Zvb3RlciBpbnB1dC5nZm9ybV9idXR0b246Zm9jdXMsXG4jcmVzcG9uZCAuYnV0dG9uOmhvdmVyLFxuI3Jlc3BvbmQgLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICMwMDAwMDA7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG4uYnMtYnRucy13cmFwcGVyIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM3LjVlbSkge1xuICAuYnMtYnRucy13cmFwcGVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG4uYnMtYnRucy13cmFwcGVyIC5icy1idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMCAwLjYyNXJlbSAwLjYyNXJlbSAwO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNy41ZW0pIHtcbiAgLmJzLWJ0bnMtd3JhcHBlciAuYnMtYnRuIHtcbiAgICBtYXJnaW46IDAuNjI1cmVtIDAuMzEyNXJlbSAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG5pbWcubGF6eWxvYWQge1xuICBtaW4taGVpZ2h0OiAxMi41cmVtO1xuICB3aWR0aDogMTAwJTtcbn1cblxuaW1nLmxhenlsb2FkZWQge1xuICBvcGFjaXR5OiAxO1xufVxuXG4ubWF4LXdpZHRoLXNpeHRlZW4taHVuZHJlZCB7XG4gIG1heC13aWR0aDogMTAwcmVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ubWF4LXdpZHRoLXRoaXJ0ZWVuLXNpeHR5c2l4IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogODUuMzc1cmVtO1xuICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLm1heC13aWR0aC10d2VsdmUtaHVuZHJlZCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDc1cmVtO1xuICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLm1heC13aWR0aC1lbGV2ZW4tc2V2ZW50eSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDczLjEyNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5tYXgtd2lkdGgtbmluZS1zZXZlbnR5IHtcbiAgbWF4LXdpZHRoOiA2MC42MjVyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5tYXgtd2lkdGgtZWlnaHQtdGhpcnR5IHtcbiAgbWF4LXdpZHRoOiA1MS44NzVyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5tYXgtd2lkdGgtZWlnaHQtaHVuZHJlZCB7XG4gIG1heC13aWR0aDogNTByZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5lbnRyeS1jb250ZW50IGgyLCAuZW50cnktY29udGVudCBoMywgLmVudHJ5LWNvbnRlbnQgaDQsIC5lbnRyeS1jb250ZW50IGg1LCAuZW50cnktY29udGVudCBoNiB7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIG1hcmdpbi1ib3R0b206IDAuMzEyNXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5lbnRyeS1jb250ZW50IGgyICsgaDMsIC5lbnRyeS1jb250ZW50IGgzICsgaDQsIC5lbnRyeS1jb250ZW50IGg0ICsgaDUsIC5lbnRyeS1jb250ZW50IGg1ICsgaDYge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xufVxuLmVudHJ5LWNvbnRlbnQgaDQsIC5lbnRyeS1jb250ZW50IGg1LCAuZW50cnktY29udGVudCBoNiB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4uZW50cnktY29udGVudCBmaWd1cmUud3AtY2FwdGlvbiBmaWdjYXB0aW9uLndwLWNhcHRpb24tdGV4dCwgLmVudHJ5LWNvbnRlbnQgZmlndXJlLndwLWNhcHRpb24gZmlnY2FwdGlvbi52Y19maWd1cmUtY2FwdGlvbiwgLmVudHJ5LWNvbnRlbnQgZmlndXJlLnZjX2ZpZ3VyZSBmaWdjYXB0aW9uLndwLWNhcHRpb24tdGV4dCwgLmVudHJ5LWNvbnRlbnQgZmlndXJlLnZjX2ZpZ3VyZSBmaWdjYXB0aW9uLnZjX2ZpZ3VyZS1jYXB0aW9uIHtcbiAgZm9udC1mYW1pbHk6IFwiQmFybG93IFNlbWkgQ29uZGVuc2VkXCIsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDVyZW07XG4gIG1hcmdpbi10b3A6IDA7XG4gIHBhZGRpbmc6IDAuMjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5lbnRyeS1jb250ZW50IHVsLnJvdyB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xufVxuLmVudHJ5LWNvbnRlbnQgdWwucm93IGxpLmNvbHVtbnMge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4uZW50cnktY29udGVudCB1bC5yb3cgLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmVudHJ5LWNvbnRlbnQgdWwucm93IC5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4uZW50cnktY29udGVudCBvbC5yb3cgLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmVudHJ5LWNvbnRlbnQgb2wucm93IC5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBmbG9hdDogbGVmdDtcbn1cbi5lbnRyeS1jb250ZW50IHAgKyB1bCwgLmVudHJ5LWNvbnRlbnQgcCArIG9sIHtcbiAgbWFyZ2luLXRvcDogLTAuOTM3NXJlbTtcbn1cbi5lbnRyeS1jb250ZW50IHVsIGxpLCAuZW50cnktY29udGVudCBvbCBsaSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xufVxuLmVudHJ5LWNvbnRlbnQgdWwgbGk6bGFzdC1vZi10eXBlLCAuZW50cnktY29udGVudCBvbCBsaTpsYXN0LW9mLXR5cGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ucmVhZGFibGUtbGluZS1sZW5ndGgge1xuICBtYXgtd2lkdGg6IDUwcmVtO1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLnRleHQtYWxpZ24tY2VudGVyLCAudGV4dC1hbGlnbi1jZW50ZXIgKiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnJlYWRhYmxlLWxpbmUtbGVuZ3RoLnRleHQtYWxpZ24tY2VudGVyIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICBodG1sIC5tYWluLXdyYXAgLm1haW4tY29udGVudCxcbiAgaHRtbCAubWFpbi13cmFwIC5zaWRlYmFyIHtcbiAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICB9XG59XG4jY29weXJpZ2h0IHtcbiAgcGFkZGluZzogMXJlbSAwLjkzNzVyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NGVtKSB7XG4gICNjb3B5cmlnaHQge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbn1cbiNjb3B5cmlnaHQgcCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4jY29weXJpZ2h0IHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjRlbSkge1xuICAjY29weXJpZ2h0IHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiNjb3B5cmlnaHQgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgaGVpZ2h0OiAyLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMi4yNXJlbTtcbiAgd2lkdGg6IDIuMjVyZW07XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0ZW0pIHtcbiAgI2NvcHlyaWdodCAuc21hbGwtMTIubWVkaXVtLTEyLmxhcmdlLTcge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xuICB9XG4gICNjb3B5cmlnaHQgLnNtYWxsLTEyLm1lZGl1bS0xMi5sYXJnZS03IHAge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4jYmFjay10b3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMS41NjI1cmVtO1xuICByaWdodDogMDtcbiAgei1pbmRleDogOTk5O1xufVxuI2JhY2stdG9wIGEge1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMi41cmVtO1xuICBsaW5lLWhlaWdodDogMi41cmVtO1xuICBvcGFjaXR5OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAyLjgxMjVyZW07XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG59XG4jYmFjay10b3AgYSBpbWcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMC45Mzc1cmVtO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICB3aWR0aDogMi4zNzVyZW07XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogdG9wIDAuMnMgZWFzZS1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogdG9wIDAuMnMgZWFzZS1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiB0b3AgMC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogdG9wIDAuMnMgZWFzZS1vdXQ7XG59XG4jYmFjay10b3AgYTpob3ZlciBpbWcsICNiYWNrLXRvcCBhOmZvY3VzIGltZyB7XG4gIHRvcDogMC42MjVyZW07XG59XG4jYmFjay10b3AuYmFja3RvcC1yaWdodCB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwO1xufVxuI2JhY2stdG9wLmJhY2t0b3AtcmlnaHQgYSB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW0gMCAwIDAuMjVyZW07XG59XG4jYmFjay10b3AuYmFja3RvcC1sZWZ0IHtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGF1dG87XG59XG4jYmFjay10b3AuYmFja3RvcC1sZWZ0IGEge1xuICBib3JkZXItcmFkaXVzOiAwIDAuMjVyZW0gMC4yNXJlbSAwO1xufVxuI2JhY2stdG9wLmJhY2t0b3AtY2VudGVyIHtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiA1MCU7XG4gIHJpZ2h0OiBhdXRvO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG4jYmFjay10b3AuYmFja3RvcC1jZW50ZXIgYSB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW0gMC4yNXJlbSAwIDA7XG4gIGhlaWdodDogMS44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTtcbn1cblxuLyoqKiogMy4gSEVBREVSIFNUWUxFUyAqKioqL1xuaGVhZGVyI21hc3RoZWFkIHtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgbGVmdDogMDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgcGFkZGluZzogMC42MjVyZW0gMCAwLjVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogOTk7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0ZW0pIHtcbiAgaGVhZGVyI21hc3RoZWFkIHtcbiAgICBwYWRkaW5nOiAwLjYyNXJlbSAwIDAuNXJlbSAhaW1wb3J0YW50O1xuICB9XG59XG5oZWFkZXIjbWFzdGhlYWQgI2hlYWRlci1pbm5lciB7XG4gIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MGVtKSB7XG4gIGhlYWRlciNtYXN0aGVhZCAjaGVhZGVyLWlubmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MGVtKSB7XG4gIGhlYWRlciNtYXN0aGVhZCAuc2l0ZS10aXRsZS1iYXIudGl0bGUtYmFyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gIH1cbn1cbmhlYWRlciNtYXN0aGVhZCBuYXYudG9wLWJhciB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5oZWFkZXIjbWFzdGhlYWQgbmF2LnRvcC1iYXIgLnRvcC1iYXItdG9wIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgd2lkdGg6IDEwMCU7XG59XG5oZWFkZXIjbWFzdGhlYWQgbmF2LnRvcC1iYXIgLnRvcC1iYXItdG9wIC50b3AtYmFyLXRpdGxlIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuaGVhZGVyI21hc3RoZWFkIG5hdi50b3AtYmFyIC50b3AtYmFyLXNvY2lhbCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbn1cbmhlYWRlciNtYXN0aGVhZCBuYXYudG9wLWJhciAudG9wLWJhci1zb2NpYWwgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW46IDA7XG59XG5oZWFkZXIjbWFzdGhlYWQgbmF2LnRvcC1iYXIgLnRvcC1iYXItc29jaWFsIHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgaGVpZ2h0OiAzcmVtO1xuICBsaW5lLWhlaWdodDogM3JlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHdpZHRoOiAzcmVtO1xuICB6LWluZGV4OiA5OTtcbn1cbmhlYWRlciNtYXN0aGVhZCBuYXYudG9wLWJhciAudG9wLWJhci1zb2NpYWwgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkuaW5saW5lLXNvY2lhbC1zZWFyY2gtd3JhcHBlciB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBtYXJnaW46IDAgMS44NzVyZW0gMCAwLjYyNXJlbTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjRlbSkge1xuICBoZWFkZXIjbWFzdGhlYWQgbmF2LnRvcC1iYXIgLnRvcC1iYXItc29jaWFsIHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIGxpLmlubGluZS1zb2NpYWwtc2VhcmNoLXdyYXBwZXIge1xuICAgIG1hcmdpbjogMCAwLjYyNXJlbSAwIDA7XG4gIH1cbn1cbmhlYWRlciNtYXN0aGVhZCBuYXYudG9wLWJhciAudG9wLWJhci1zb2NpYWwgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkuaW5saW5lLXNvY2lhbC1zZWFyY2gtd3JhcHBlciBidXR0b24uc2VhcmNoLXRvZ2dsZSB7XG4gIGNvbG9yOiAjMDAxNzE3O1xuICBoZWlnaHQ6IDNyZW07XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB3aWR0aDogM3JlbTtcbn1cbmhlYWRlciNtYXN0aGVhZCBuYXYudG9wLWJhciAudG9wLWJhci1zb2NpYWwgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkuaW5saW5lLXNvY2lhbC1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm0ge1xuICByaWdodDogMDtcbiAgbWFyZ2luOiAxLjI1cmVtIDAgMCAwICFpbXBvcnRhbnQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NGVtKSB7XG4gIGhlYWRlciNtYXN0aGVhZCBuYXYudG9wLWJhciAudG9wLWJhci1zb2NpYWwgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkuaW5saW5lLXNvY2lhbC1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm0ge1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IGF1dG87XG4gIH1cbn1cbmhlYWRlciNtYXN0aGVhZCBuYXYudG9wLWJhciAudG9wLWJhci1zb2NpYWwgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkuaW5saW5lLXNvY2lhbC1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm0uc2hvdyB7XG4gIG1hcmdpbjogMC41cmVtIDAgMCAwICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0ZW0pIHtcbiAgaGVhZGVyI21hc3RoZWFkIG5hdi50b3AtYmFyIC50b3AtYmFyLXNvY2lhbCB1bC5zb2NpYWwtbWVkaWEtd3JhcHBlciBsaS5pbmxpbmUtc29jaWFsLXNlYXJjaC13cmFwcGVyIGZvcm0jc2VhcmNoZm9ybS5zaG93IHtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiBhdXRvO1xuICB9XG59XG5oZWFkZXIjbWFzdGhlYWQgbmF2LnRvcC1iYXIgLnRvcC1iYXItc29jaWFsIHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIGxpLnRlbGVwaG9uZSB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NGVtKSB7XG4gIGhlYWRlciNtYXN0aGVhZCBuYXYudG9wLWJhciAudG9wLWJhci1zb2NpYWwgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkudGVsZXBob25lIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cbmhlYWRlciNtYXN0aGVhZCBuYXYudG9wLWJhciAudG9wLWJhci1zb2NpYWwgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkudGVsZXBob25lIGEge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuaGVhZGVyI21hc3RoZWFkIG5hdi50b3AtYmFyIC50b3AtYmFyLXNvY2lhbCB1bC5zb2NpYWwtbWVkaWEtd3JhcHBlciBsaS5jdXN0b20tYnV0dG9uIHtcbiAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbn1cbmhlYWRlciNtYXN0aGVhZCBuYXYudG9wLWJhciAudG9wLWJhci1zb2NpYWwgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkuY3VzdG9tLWJ1dHRvbiBhIHtcbiAgYm9yZGVyLXJhZGl1czogMC4xODc1cmVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIHBhZGRpbmc6IDAgMC45Mzc1cmVtO1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NGVtKSB7XG4gIGhlYWRlciNtYXN0aGVhZCBuYXYudG9wLWJhciAudG9wLWJhci1zb2NpYWwgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5oZWFkZXIjbWFzdGhlYWQgbmF2LnRvcC1iYXIgLnRvcC1iYXItc29jaWFsIHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIGxpIGEge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbmhlYWRlciNtYXN0aGVhZCBuYXYudG9wLWJhciAuYWJvdmUtbWVudS1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm0sXG5oZWFkZXIjbWFzdGhlYWQgbmF2LnRvcC1iYXIgLmlubGluZS1zb2NpYWwtc2VhcmNoLXdyYXBwZXIgZm9ybSNzZWFyY2hmb3JtLFxuaGVhZGVyI21hc3RoZWFkIG5hdi50b3AtYmFyIC5tZW51LXNlYXJjaC13cmFwcGVyIGZvcm0jc2VhcmNoZm9ybSB7XG4gIGJhY2tncm91bmQ6ICNDRUQ0REEgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAyLjVyZW0gMCAwIDA7XG4gIG1heC13aWR0aDogbm9uZTtcbiAgb3BhY2l0eTogMDtcbiAgcGFkZGluZzogMC45Mzc1cmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDEwMCU7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgd2lkdGg6IDE4Ljc1cmVtO1xuICB6LWluZGV4OiAxO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NGVtKSB7XG4gIGhlYWRlciNtYXN0aGVhZCBuYXYudG9wLWJhciAuYWJvdmUtbWVudS1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm0sXG4gIGhlYWRlciNtYXN0aGVhZCBuYXYudG9wLWJhciAuaW5saW5lLXNvY2lhbC1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm0sXG4gIGhlYWRlciNtYXN0aGVhZCBuYXYudG9wLWJhciAubWVudS1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm0ge1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IGF1dG87XG4gIH1cbn1cbmhlYWRlciNtYXN0aGVhZCBuYXYudG9wLWJhciAuYWJvdmUtbWVudS1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm0uc2hvdyxcbmhlYWRlciNtYXN0aGVhZCBuYXYudG9wLWJhciAuaW5saW5lLXNvY2lhbC1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm0uc2hvdyxcbmhlYWRlciNtYXN0aGVhZCBuYXYudG9wLWJhciAubWVudS1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm0uc2hvdyB7XG4gIG1hcmdpbjogMC42MjVyZW0gMCAwIDA7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIHotaW5kZXg6IDk5O1xufVxuaGVhZGVyI21hc3RoZWFkIG5hdi50b3AtYmFyIC5hYm92ZS1tZW51LXNlYXJjaC13cmFwcGVyIGZvcm0jc2VhcmNoZm9ybSAuaW5wdXQtZ3JvdXAsXG5oZWFkZXIjbWFzdGhlYWQgbmF2LnRvcC1iYXIgLmlubGluZS1zb2NpYWwtc2VhcmNoLXdyYXBwZXIgZm9ybSNzZWFyY2hmb3JtIC5pbnB1dC1ncm91cCxcbmhlYWRlciNtYXN0aGVhZCBuYXYudG9wLWJhciAubWVudS1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm0gLmlucHV0LWdyb3VwIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgbWFyZ2luOiAwO1xufVxuaGVhZGVyI21hc3RoZWFkIG5hdi50b3AtYmFyIC5hYm92ZS1tZW51LXNlYXJjaC13cmFwcGVyIGZvcm0jc2VhcmNoZm9ybSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ1dHRvbjpiZWZvcmUsXG5oZWFkZXIjbWFzdGhlYWQgbmF2LnRvcC1iYXIgLmlubGluZS1zb2NpYWwtc2VhcmNoLXdyYXBwZXIgZm9ybSNzZWFyY2hmb3JtIC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnV0dG9uOmJlZm9yZSxcbmhlYWRlciNtYXN0aGVhZCBuYXYudG9wLWJhciAubWVudS1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm0gLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idXR0b246YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogdXJsKC4uLy4uLy4uL3NyYy9hc3NldHMvaW1hZ2VzL2JsYWNrLWFycm93LnN2Zykgbm8tcmVwZWF0IGxlZnQgY2VudGVyO1xuICBjb2xvcjogIzAwMTcxNztcbiAgY29udGVudDogXCJcIjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6IGZvbnRhd2Vzb21lO1xuICBoZWlnaHQ6IDAuNjI1cmVtO1xuICByaWdodDogMS43NXJlbTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgd2lkdGg6IDIuMzc1cmVtO1xuICB6LWluZGV4OiAxMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiByaWdodCAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IHJpZ2h0IDAuMnMgZWFzZS1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiByaWdodCAwLjJzIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uOiByaWdodCAwLjJzIGVhc2Utb3V0O1xufVxuaGVhZGVyI21hc3RoZWFkIG5hdi50b3AtYmFyIC5hYm92ZS1tZW51LXNlYXJjaC13cmFwcGVyIGZvcm0jc2VhcmNoZm9ybSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ1dHRvbjpob3ZlcjpiZWZvcmUsIGhlYWRlciNtYXN0aGVhZCBuYXYudG9wLWJhciAuYWJvdmUtbWVudS1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm0gLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idXR0b246Zm9jdXM6YmVmb3JlLFxuaGVhZGVyI21hc3RoZWFkIG5hdi50b3AtYmFyIC5pbmxpbmUtc29jaWFsLXNlYXJjaC13cmFwcGVyIGZvcm0jc2VhcmNoZm9ybSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ1dHRvbjpob3ZlcjpiZWZvcmUsXG5oZWFkZXIjbWFzdGhlYWQgbmF2LnRvcC1iYXIgLmlubGluZS1zb2NpYWwtc2VhcmNoLXdyYXBwZXIgZm9ybSNzZWFyY2hmb3JtIC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnV0dG9uOmZvY3VzOmJlZm9yZSxcbmhlYWRlciNtYXN0aGVhZCBuYXYudG9wLWJhciAubWVudS1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm0gLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idXR0b246aG92ZXI6YmVmb3JlLFxuaGVhZGVyI21hc3RoZWFkIG5hdi50b3AtYmFyIC5tZW51LXNlYXJjaC13cmFwcGVyIGZvcm0jc2VhcmNoZm9ybSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ1dHRvbjpmb2N1czpiZWZvcmUge1xuICByaWdodDogMS4xMjVyZW07XG59XG5oZWFkZXIjbWFzdGhlYWQgbmF2LnRvcC1iYXIgLmFib3ZlLW1lbnUtc2VhcmNoLXdyYXBwZXIgZm9ybSNzZWFyY2hmb3JtIGlucHV0I3MsXG5oZWFkZXIjbWFzdGhlYWQgbmF2LnRvcC1iYXIgLmlubGluZS1zb2NpYWwtc2VhcmNoLXdyYXBwZXIgZm9ybSNzZWFyY2hmb3JtIGlucHV0I3MsXG5oZWFkZXIjbWFzdGhlYWQgbmF2LnRvcC1iYXIgLm1lbnUtc2VhcmNoLXdyYXBwZXIgZm9ybSNzZWFyY2hmb3JtIGlucHV0I3Mge1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBsaW5lLWhlaWdodDogMi4xMjVyZW07XG4gIHBhZGRpbmc6IDAgMC42MjVyZW0gMCAwLjMxMjVyZW07XG59XG5oZWFkZXIjbWFzdGhlYWQgbmF2LnRvcC1iYXIgLmFib3ZlLW1lbnUtc2VhcmNoLXdyYXBwZXIgZm9ybSNzZWFyY2hmb3JtIGlucHV0I3NlYXJjaHN1Ym1pdCxcbmhlYWRlciNtYXN0aGVhZCBuYXYudG9wLWJhciAuaW5saW5lLXNvY2lhbC1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm0gaW5wdXQjc2VhcmNoc3VibWl0LFxuaGVhZGVyI21hc3RoZWFkIG5hdi50b3AtYmFyIC5tZW51LXNlYXJjaC13cmFwcGVyIGZvcm0jc2VhcmNoZm9ybSBpbnB1dCNzZWFyY2hzdWJtaXQge1xuICBiYWNrZ3JvdW5kOiAjRkZBRjI2ICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICBmb250LWZhbWlseTogXCJCYXJsb3cgU2VtaSBDb25kZW5zZWRcIiwgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZiAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBoZWlnaHQ6IDIuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMi4xMjVyZW07XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMCAwLjYyNXJlbTtcbiAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHdpZHRoOiAyLjEyNXJlbTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbn1cbmhlYWRlciNtYXN0aGVhZCBuYXYudG9wLWJhciAuYWJvdmUtbWVudS1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm0gaW5wdXQjc2VhcmNoc3VibWl0OmhvdmVyLCBoZWFkZXIjbWFzdGhlYWQgbmF2LnRvcC1iYXIgLmFib3ZlLW1lbnUtc2VhcmNoLXdyYXBwZXIgZm9ybSNzZWFyY2hmb3JtIGlucHV0I3NlYXJjaHN1Ym1pdDpmb2N1cyxcbmhlYWRlciNtYXN0aGVhZCBuYXYudG9wLWJhciAuaW5saW5lLXNvY2lhbC1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm0gaW5wdXQjc2VhcmNoc3VibWl0OmhvdmVyLFxuaGVhZGVyI21hc3RoZWFkIG5hdi50b3AtYmFyIC5pbmxpbmUtc29jaWFsLXNlYXJjaC13cmFwcGVyIGZvcm0jc2VhcmNoZm9ybSBpbnB1dCNzZWFyY2hzdWJtaXQ6Zm9jdXMsXG5oZWFkZXIjbWFzdGhlYWQgbmF2LnRvcC1iYXIgLm1lbnUtc2VhcmNoLXdyYXBwZXIgZm9ybSNzZWFyY2hmb3JtIGlucHV0I3NlYXJjaHN1Ym1pdDpob3ZlcixcbmhlYWRlciNtYXN0aGVhZCBuYXYudG9wLWJhciAubWVudS1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm0gaW5wdXQjc2VhcmNoc3VibWl0OmZvY3VzIHtcbiAgYmFja2dyb3VuZDogIzAwMDAwMDtcbn1cbmhlYWRlciNtYXN0aGVhZCBuYXYudG9wLWJhciAuYWJvdmUtbWVudS1zZWFyY2gtd3JhcHBlciB7XG4gIG1hcmdpbjogMC43NXJlbSAwIDAgMDtcbn1cbmhlYWRlciNtYXN0aGVhZCBuYXYudG9wLWJhciAuYWJvdmUtbWVudS1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm0ge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDAuMDYyNXJlbSBzb2xpZCAjMDAzYTcxO1xuICBtYXJnaW46IDA7XG4gIG9wYWNpdHk6IDE7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDA7XG4gIHRvcDogMDtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cbmhlYWRlciNtYXN0aGVhZCBuYXYudG9wLWJhciAuYWJvdmUtbWVudS1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm06YmVmb3JlIHtcbiAgcmlnaHQ6IDAuNXJlbTtcbiAgdG9wOiAwLjMxMjVyZW07XG59XG5oZWFkZXIjbWFzdGhlYWQgbmF2LnRvcC1iYXIgLmFib3ZlLW1lbnUtc2VhcmNoLXdyYXBwZXIgZm9ybSNzZWFyY2hmb3JtOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbmhlYWRlciNtYXN0aGVhZCAubG9nby13cmFwcGVyLmhpZGUtZm9yLXNtYWxsLW9ubHkgLmN1c3RvbS1sb2dvLWxpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAuNjI1cmVtIDAgMXJlbSAhaW1wb3J0YW50O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xufVxuaGVhZGVyI21hc3RoZWFkIC5sb2dvLXdyYXBwZXIuaGlkZS1mb3Itc21hbGwtb25seSAuY3VzdG9tLWxvZ28tbGluayBpbWcuY3VzdG9tLWxvZ28sIGhlYWRlciNtYXN0aGVhZCAubG9nby13cmFwcGVyLmhpZGUtZm9yLXNtYWxsLW9ubHkgLmN1c3RvbS1sb2dvLWxpbmsgc3ZnIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luOiAwO1xuICBtYXgtd2lkdGg6IDEyLjg3NXJlbTtcbiAgd2lkdGg6IDEwMCU7XG59XG5oZWFkZXIjbWFzdGhlYWQgLmFsdC1uYXYtd3JhcHBlciB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW46IDAgMCAwLjYyNXJlbSAwO1xuICB3aWR0aDogMTAwJTtcbn1cbmhlYWRlciNtYXN0aGVhZCAuYWx0LW5hdi13cmFwcGVyIC5hbHQtbmF2LW15LWNhcnQge1xuICBtYXJnaW4tbGVmdDogMC42MjVyZW07XG4gIG1hcmdpbi10b3A6IDAuNjI1cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5oZWFkZXIjbWFzdGhlYWQgLmFsdC1uYXYtd3JhcHBlciAuYWx0LW5hdi1teS1jYXJ0IGEge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiA2LjI1cmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBcIkJhcmxvdyBTZW1pIENvbmRlbnNlZFwiLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDAuOTM3NXJlbSAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogNzAwO1xuICBwYWRkaW5nOiAwLjQzNzVyZW0gMC45Mzc1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB3aWR0aDogYXV0bztcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbn1cbmhlYWRlciNtYXN0aGVhZCAuYWx0LW5hdi13cmFwcGVyIC5hbHQtbmF2LW15LWNhcnQgaSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjEyNXJlbTtcbn1cbmhlYWRlciNtYXN0aGVhZCAuYWx0LW5hdi13cmFwcGVyIC5hbHQtbmF2LW15LWNhcnQgc3Bhbi5jYXJ0LWNvbnRlbnRzIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgY29sb3I6ICMwMDNhNzE7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gIGhlaWdodDogMS4yNXJlbTtcbiAgbWFyZ2luOiAwIDAgMCAwLjMxMjVyZW07XG4gIG1pbi13aWR0aDogMS4yNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG59XG5oZWFkZXIjbWFzdGhlYWQgLmFsdC1uYXYtd3JhcHBlciAubWVudSB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5oZWFkZXIjbWFzdGhlYWQgLmFsdC1uYXYtd3JhcHBlciAubWVudSA+IGxpIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gIGJvcmRlci1sZWZ0OiAwLjA2MjVyZW0gc29saWQgI0NFRDREQTtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xufVxuaGVhZGVyI21hc3RoZWFkIC5hbHQtbmF2LXdyYXBwZXIgLm1lbnUgPiBsaTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGJvcmRlci1sZWZ0OiAwO1xufVxuaGVhZGVyI21hc3RoZWFkIC5hbHQtbmF2LXdyYXBwZXIgLm1lbnUgPiBsaSA+IGEge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBmb250LWZhbWlseTogXCJCYXJsb3cgU2VtaSBDb25kZW5zZWRcIiwgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuaGVhZGVyI21hc3RoZWFkIC5hbHQtbmF2LXdyYXBwZXIgLm1lbnUgPiBsaS5pcy1hY3RpdmUgPiBhIHtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5oZWFkZXIjbWFzdGhlYWQgLmRlc2t0b3AtbWVudSB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5oZWFkZXIjbWFzdGhlYWQgLmRlc2t0b3AtbWVudS5tZW51ID4gbGkgPiBhIHtcbiAgcGFkZGluZzogMCAxcmVtICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGxpbmUtaGVpZ2h0OiAyLjI1cmVtO1xufVxuaGVhZGVyI21hc3RoZWFkIC5kZXNrdG9wLW1lbnUubWVudSA+IGxpID4gYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDAuNXJlbTtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogd2lkdGggMC4ycyBlYXNlLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiB3aWR0aCAwLjJzIGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogd2lkdGggMC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogd2lkdGggMC4ycyBlYXNlLW91dDtcbn1cbmhlYWRlciNtYXN0aGVhZCAuZGVza3RvcC1tZW51Lm1lbnUgPiBsaSA+IGE6aG92ZXI6YmVmb3JlIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5oZWFkZXIjbWFzdGhlYWQgLmRlc2t0b3AtbWVudS5tZW51ID4gbGk6bGFzdC1vZi10eXBlIHVsLmRyb3Bkb3duIHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7XG59XG5oZWFkZXIjbWFzdGhlYWQgLm1lbnUgPiBsaSB7XG4gIGZsb2F0OiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5oZWFkZXIjbWFzdGhlYWQgLm1lbnUgPiBsaSA+IGEge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1mYW1pbHk6IFwiQmFybG93IFNlbWkgQ29uZGVuc2VkXCIsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuaGVhZGVyI21hc3RoZWFkIC5tZW51ID4gbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5oZWFkZXIjbWFzdGhlYWQgLm1lbnUgPiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gYTpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuaGVhZGVyI21hc3RoZWFkIC5tZW51ID4gbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gIGJvcmRlci1yaWdodDogMDtcbn1cbmhlYWRlciNtYXN0aGVhZCAubWVudSAuYWN0aXZlID4gYSB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuaGVhZGVyI21hc3RoZWFkIC5tZW51ID4gbGkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5oZWFkZXIjbWFzdGhlYWQgLm1lbnUgLmRyb3Bkb3duIHtcbiAgbWluLXdpZHRoOiAxNS42MjVyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIHBhZGRpbmc6IDA7XG4gIHotaW5kZXg6IC0xO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xufVxuaGVhZGVyI21hc3RoZWFkIC5tZW51IC5kcm9wZG93biBsaSBhIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBsaW5lLWhlaWdodDogMTtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHBhZGRpbmc6IDAuOTM3NXJlbSAxLjI1cmVtICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG59XG5oZWFkZXIjbWFzdGhlYWQgLm1lbnUgLmRyb3Bkb3duIGxpIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnMgZWFzZS1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnMgZWFzZS1vdXQ7XG59XG5oZWFkZXIjbWFzdGhlYWQgLm1lbnUgLmRyb3Bkb3duIGxpIGE6aG92ZXI6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xufVxuaGVhZGVyI21hc3RoZWFkIC5tZW51IC5kcm9wZG93biBsaTphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5oZWFkZXIjbWFzdGhlYWQgLm1lbnUgPiBsaS5pcy1hY3RpdmU6aG92ZXIgLmRyb3Bkb3duLFxuaGVhZGVyI21hc3RoZWFkIC5tZW51ID4gbGkuaXMtYWN0aXZlOmZvY3VzIC5kcm9wZG93bixcbmhlYWRlciNtYXN0aGVhZCAubWVudSA+IGxpOmZvY3VzLXdpdGhpbiAuZHJvcGRvd24ge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBvcGFjaXR5OiAxO1xuICBtYXJnaW4tdG9wOiAwO1xuICB6LWluZGV4OiAxO1xufVxuaGVhZGVyI21hc3RoZWFkIC5tZW51ID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgbGVmdDogMDtcbiAgdG9wOiAxMDAlO1xufVxuaGVhZGVyI21hc3RoZWFkIC5tZW51ID4gbGkub3BlbnMtbGVmdDpsYXN0LWNoaWxkID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuaGVhZGVyI21hc3RoZWFkIC5tZW51ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5oZWFkZXIjbWFzdGhlYWQgbmF2LnRvcC1iYXIuaGFzLXNlYXJjaCAuZGVza3RvcC1tZW51IHtcbiAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAudGl0bGUtYmFyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gIH1cbn1cbi8qIDNhLiBIZWFkZXIgT3B0aW9uIE9uZSBTdHlsZXMgKi9cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLW9uZSAudG9wLWJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLW9uZSAudG9wLWJhciAudG9wLWJhci1sZWZ0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTIuOTM3NXJlbTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjRlbSkge1xuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1vbmUgLnRvcC1iYXIgLnRvcC1iYXItbGVmdCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG5oZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1vbmUgLnRvcC1iYXIgLnRvcC1iYXItbGVmdCAudG9wLWJhci10aXRsZSB7XG4gIG1hcmdpbjogMDtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLW9uZSAudG9wLWJhciAudG9wLWJhci1sZWZ0IC5sb2dvLXdyYXBwZXIuaGlkZS1mb3Itc21hbGwtb25seSAuY3VzdG9tLWxvZ28tbGluayB7XG4gIHBhZGRpbmc6IDEuNXJlbSAwICFpbXBvcnRhbnQ7XG59XG5oZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1vbmUgLnRvcC1iYXIgLnRvcC1iYXItcmlnaHQge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSA0MDdweCk7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgxLjI1ZW0pIHtcbiAgaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tb25lIC50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyMDdweCk7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjguNzVlbSkge1xuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1vbmUgLnRvcC1iYXIgLnRvcC1iYXItcmlnaHQge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NGVtKSB7XG4gIGhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLW9uZSAudG9wLWJhciAudG9wLWJhci1yaWdodCB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLW9uZSAudG9wLWJhciAudG9wLWJhci1yaWdodCAuYWx0LW5hdi13cmFwcGVyIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgb3JkZXI6IDE7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0ZW0pIHtcbiAgaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tb25lIC50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IC5hbHQtbmF2LXdyYXBwZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG5oZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1vbmUgLnRvcC1iYXIgLnRvcC1iYXItcmlnaHQgLmFsdC1uYXYtd3JhcHBlciAuYWx0LW5hdi1teS1jYXJ0IHtcbiAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtO1xuICBtYXJnaW4tdG9wOiAwO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLW9uZSAudG9wLWJhciAudG9wLWJhci1yaWdodCAudG9wLWJhci1zb2NpYWwge1xuICBvcmRlcjogMztcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLW9uZSAudG9wLWJhciAudG9wLWJhci1yaWdodCAudG9wLWJhci1zb2NpYWwgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLW9uZSAudG9wLWJhciAudG9wLWJhci1yaWdodCAudG9wLWJhci1zb2NpYWwgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGk6bm90KC5jdXN0b20tYnV0dG9uKTpub3QoLmlubGluZS1zb2NpYWwtc2VhcmNoLXdyYXBwZXIpIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLW9uZSAudG9wLWJhciAudG9wLWJhci1yaWdodCAuZGVza3RvcC1tZW51IHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvcmRlcjogMjtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLW9uZSAuYWJvdmUtbWVudS1zZWFyY2gtd3JhcHBlciB7XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xufVxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tb25lIC5hYm92ZS1tZW51LXNlYXJjaC13cmFwcGVyLFxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tb25lIC5pbmxpbmUtc29jaWFsLXNlYXJjaC13cmFwcGVyIHtcbiAgaGVpZ2h0OiAyLjI1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5oZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1vbmUgLmFib3ZlLW1lbnUtc2VhcmNoLXdyYXBwZXIgZm9ybSNzZWFyY2hmb3JtLFxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tb25lIC5pbmxpbmUtc29jaWFsLXNlYXJjaC13cmFwcGVyIGZvcm0jc2VhcmNoZm9ybSB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGJvcmRlcjogMC4wNjI1cmVtIHNvbGlkICNDRUQ0REE7XG4gIGJvcmRlci1yYWRpdXM6IDAuMTg3NXJlbTtcbiAgbWFyZ2luOiAwO1xuICBtYXgtd2lkdGg6IDEyLjVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICByaWdodDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0ZW0pIHtcbiAgaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tb25lIC5hYm92ZS1tZW51LXNlYXJjaC13cmFwcGVyIGZvcm0jc2VhcmNoZm9ybSxcbiAgaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tb25lIC5pbmxpbmUtc29jaWFsLXNlYXJjaC13cmFwcGVyIGZvcm0jc2VhcmNoZm9ybSB7XG4gICAgbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDtcbiAgfVxufVxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tb25lIC5hYm92ZS1tZW51LXNlYXJjaC13cmFwcGVyIGZvcm0jc2VhcmNoZm9ybTphZnRlcixcbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLW9uZSAuaW5saW5lLXNvY2lhbC1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm06YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6IFwiXFxmMDAyXCI7XG4gIGZvbnQtZmFtaWx5OiBmb250YXdlc29tZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMzRweDtcbiAgaGVpZ2h0OiAzNHB4O1xuICBsaW5lLWhlaWdodDogMzRweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5oZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1vbmUgLmFib3ZlLW1lbnUtc2VhcmNoLXdyYXBwZXIgZm9ybSNzZWFyY2hmb3JtIGlucHV0I3NlYXJjaHN1Ym1pdCxcbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLW9uZSAuaW5saW5lLXNvY2lhbC1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm0gaW5wdXQjc2VhcmNoc3VibWl0IHtcbiAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICB3aWR0aDogMzRweDtcbiAgaGVpZ2h0OiAzNHB4O1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tb25lIC5hYm92ZS1tZW51LXNlYXJjaC13cmFwcGVyIGZvcm0jc2VhcmNoZm9ybSBpbnB1dCNzLFxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tb25lIC5pbmxpbmUtc29jaWFsLXNlYXJjaC13cmFwcGVyIGZvcm0jc2VhcmNoZm9ybSBpbnB1dCNzIHtcbiAgbWF4LXdpZHRoOiBub25lO1xuICBib3JkZXI6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIHBhZGRpbmc6IDAgMS4yNXJlbSAwIDAuNjI1cmVtICFpbXBvcnRhbnQ7XG4gIGxpbmUtaGVpZ2h0OiAzNHB4O1xuICBoZWlnaHQ6IDM0cHg7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5oZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1vbmUgLmFib3ZlLW1lbnUtc2VhcmNoLXdyYXBwZXIgZm9ybSNzZWFyY2hmb3JtIC5pbnB1dC1ncm91cCxcbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLW9uZSAuaW5saW5lLXNvY2lhbC1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm0gLmlucHV0LWdyb3VwIHtcbiAgbWFyZ2luOiAwO1xufVxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tb25lIG5hdi50b3AtYmFyIC5tZW51LXNlYXJjaC13cmFwcGVyIHtcbiAgYm90dG9tOiAwO1xuICBoZWlnaHQ6IDIuMjVyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAyLjI1cmVtO1xufVxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tb25lIG5hdi50b3AtYmFyIC5tZW51LXNlYXJjaC13cmFwcGVyIGJ1dHRvbiB7XG4gIGN1cnNvcjogcG9pbnRlciAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBoZWlnaHQ6IDIuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAyLjI1cmVtO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgd2lkdGg6IDIuMjVyZW07XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG59XG5oZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1vbmUgbmF2LnRvcC1iYXIgLm1lbnUtc2VhcmNoLXdyYXBwZXIgZm9ybSNzZWFyY2hmb3JtOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLW9uZSBuYXYudG9wLWJhciAubWVudS1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm0uc2hvdyB7XG4gIG1hcmdpbjogMDtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLW9uZSBuYXYudG9wLWJhciAuaW5saW5lLXNvY2lhbC1zZWFyY2gtd3JhcHBlciBidXR0b24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5oZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1vbmUgbmF2LnRvcC1iYXIgLmlubGluZS1zb2NpYWwtc2VhcmNoLXdyYXBwZXIgZm9ybSNzZWFyY2hmb3JtIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLW9uZSBuYXYudG9wLWJhciAuaW5saW5lLXNvY2lhbC1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm06YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0ZW0pIHtcbiAgaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tb25lIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1vbmUgLmxvZ28td3JhcHBlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIGhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLW9uZSAubG9nby13cmFwcGVyIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbiAgaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tb25lIG5hdi50b3AtYmFyIC50b3AtYmFyLXRpdGxlIGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cbiAgaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tb25lIG5hdi50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IC5hbHQtbmF2LXdyYXBwZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIGhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLW9uZSBuYXYudG9wLWJhciAudG9wLWJhci1yaWdodCAuYWx0LW5hdi13cmFwcGVyIHVsLm1lbnUge1xuICAgIG1hcmdpbjogMC42MjVyZW0gMDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1vbmUgbmF2LnRvcC1iYXIgLnRvcC1iYXItcmlnaHQgLnRvcC1iYXItc29jaWFsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1vbmUgbmF2LnRvcC1iYXIgLnRvcC1iYXItcmlnaHQgLnRvcC1iYXItc29jaWFsIHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1vbmUgbmF2LnRvcC1iYXIgLnRvcC1iYXItcmlnaHQgPiAuZHJvcGRvd24ubWVudS5kZXNrdG9wLW1lbnUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG4gIGhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLW9uZSBuYXYudG9wLWJhciAudG9wLWJhci1yaWdodCBmb3JtI3NlYXJjaGZvcm0ge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDA7XG4gIH1cbiAgaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tb25lIG5hdi50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IGZvcm0jc2VhcmNoZm9ybS5zaG93IHtcbiAgICBtYXJnaW46IDAuNXJlbSAwIDAgMDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MGVtKSB7XG4gIGhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLW9uZSB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB9XG4gIGhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLW9uZSAubG9nby13cmFwcGVyLmhpZGUtZm9yLXNtYWxsLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1vbmUgLnRvcC1iYXIge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1vbmUgLnRvcC1iYXItc29jaWFsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIGhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLW9uZSAubWVudS1zZWFyY2gtd3JhcHBlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLyogM2IuIEhlYWRlciBPcHRpb24gVHdvIFN0eWxlcyAqL1xuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tdHdvIC50b3AtYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tdHdvIC50b3AtYmFyIC50b3AtYmFyLWxlZnQge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxOC43NXJlbTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjRlbSkge1xuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi10d28gLnRvcC1iYXIgLnRvcC1iYXItbGVmdCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tdHdvIC50b3AtYmFyIC50b3AtYmFyLWxlZnQgLnRvcC1iYXItdGl0bGUge1xuICBtYXJnaW46IDA7XG59XG5oZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi10d28gLnRvcC1iYXIgLnRvcC1iYXItbGVmdCAubG9nby13cmFwcGVyLmhpZGUtZm9yLXNtYWxsLW9ubHkgLmN1c3RvbS1sb2dvLWxpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLXR3byAudG9wLWJhciAudG9wLWJhci1sZWZ0IC5sb2dvLXdyYXBwZXIuaGlkZS1mb3Itc21hbGwtb25seSAuY3VzdG9tLWxvZ28tbGluayBpbWcuY3VzdG9tLWxvZ28ge1xuICB3aWR0aDogMTguNzVyZW07XG4gIGhlaWdodDogYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG59XG5oZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi10d28gLnRvcC1iYXIgLnRvcC1iYXItcmlnaHQge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMTguNzVyZW0pO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gIHBhZGRpbmctbGVmdDogMi41cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0ZW0pIHtcbiAgaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tdHdvIC50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLXR3byAudG9wLWJhciAudG9wLWJhci1yaWdodCAuYWx0LW5hdi13cmFwcGVyIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgb3JkZXI6IDE7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0ZW0pIHtcbiAgaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tdHdvIC50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IC5hbHQtbmF2LXdyYXBwZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG5oZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi10d28gLnRvcC1iYXIgLnRvcC1iYXItcmlnaHQgLmFsdC1uYXYtd3JhcHBlciAuYWx0LW5hdi1teS1jYXJ0IHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLXR3byAudG9wLWJhciAudG9wLWJhci1yaWdodCAudG9wLWJhci1zb2NpYWwge1xuICBvcmRlcjogMjtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0ZW0pIHtcbiAgaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tdHdvIC50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IC50b3AtYmFyLXNvY2lhbCB1bC5zb2NpYWwtbWVkaWEtd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLXR3byAudG9wLWJhciAudG9wLWJhci1yaWdodCAudG9wLWJhci1zb2NpYWwgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkuaW5saW5lLXNvY2lhbC1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm06YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tdHdvIC50b3AtYmFyIC50b3AtYmFyLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5oZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi10d28gbmF2LnRvcC1iYXIuaGFzLXNlYXJjaCB1bC5kZXNrdG9wLW1lbnUge1xuICB3aWR0aDogY2FsYygxMDAlIC0gNHJlbSk7XG4gIG1hcmdpbi1yaWdodDogMy43NXJlbTtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLXR3byBuYXYudG9wLWJhciAubWVudS1zZWFyY2gtd3JhcHBlciB7XG4gIGJvdHRvbTogMDtcbiAgaGVpZ2h0OiAyLjI1cmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMi4yNXJlbTtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLXR3byBuYXYudG9wLWJhciAubWVudS1zZWFyY2gtd3JhcHBlciBidXR0b24ge1xuICBjdXJzb3I6IHBvaW50ZXIgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBoZWlnaHQ6IDIuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAyLjI1cmVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAyLjI1cmVtO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NGVtKSB7XG4gIGhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLXR3byBuYXYudG9wLWJhciAubWVudS1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm0ge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDA7XG4gIH1cbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLXR3byBuYXYudG9wLWJhciAubWVudS1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm06YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tdHdvIG5hdi50b3AtYmFyIC5tZW51LXNlYXJjaC13cmFwcGVyIGZvcm0jc2VhcmNoZm9ybS5zaG93IHtcbiAgbWFyZ2luOiAwO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NGVtKSB7XG4gIGhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLXR3byBuYXYudG9wLWJhciAubWVudS1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm0uc2hvdyB7XG4gICAgbWFyZ2luOiAwLjVyZW0gMCAwIDA7XG4gIH1cbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLXR3byBuYXYudG9wLWJhciAuYWJvdmUtbWVudS1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIGhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLXR3byB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tdHdvIC5sb2dvLXdyYXBwZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi10d28gLmxvZ28td3JhcHBlciBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG4gIGhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLXR3byAudG9wLWJhciAudG9wLWJhci10aXRsZSBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIGhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLXR3byAudG9wLWJhciAudG9wLWJhci1yaWdodCAuYWx0LW5hdi13cmFwcGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi10d28gLnRvcC1iYXIgLnRvcC1iYXItcmlnaHQgLmFsdC1uYXYtd3JhcHBlciB1bC5tZW51IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW46IDAuNjI1cmVtIDA7XG4gIH1cbiAgaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tdHdvIC50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IC50b3AtYmFyLXNvY2lhbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tdHdvIC50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IC50b3AtYmFyLXNvY2lhbCB1bC5zb2NpYWwtbWVkaWEtd3JhcHBlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tdHdvIC50b3AtYmFyIC50b3AtYmFyLXJpZ2h0ID4gLmRyb3Bkb3duLm1lbnUuZGVza3RvcC1tZW51IHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gM3JlbSk7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDBlbSkge1xuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi10d28ge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi10d28gLmxvZ28td3JhcHBlci5oaWRlLWZvci1zbWFsbC1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tdHdvIC50b3AtYmFyIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tdHdvIC50b3AtYmFyLXNvY2lhbCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi10d28gLm1lbnUtc2VhcmNoLXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi8qIDNjLiBIZWFkZXIgT3B0aW9uIFRocmVlIFN0eWxlcyAqL1xuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tdGhyZWUgLnRvcC1iYXIgLnRvcC1iYXItdG9wIC5hbHQtbmF2LXdyYXBwZXIge1xuICBvcmRlcjogMTtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLXRocmVlIC50b3AtYmFyIC50b3AtYmFyLXRvcCAuYWx0LW5hdi13cmFwcGVyIC5tZW51IHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5oZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi10aHJlZSAudG9wLWJhciAudG9wLWJhci1sZWZ0IHtcbiAgb3JkZXI6IDI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5oZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi10aHJlZSAudG9wLWJhciAudG9wLWJhci1sZWZ0IC5kZXNrdG9wLW1lbnUge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBvcmRlcjogMztcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLXRocmVlIC50b3AtYmFyIC50b3AtYmFyLWxlZnQgLnRvcC1iYXItdGl0bGUge1xuICBtYXJnaW46IDA7XG59XG5oZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi10aHJlZSAudG9wLWJhciAudG9wLWJhci1yaWdodCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBvcmRlcjogMTtcbiAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tdGhyZWUgLnRvcC1iYXIgLnRvcC1iYXItcmlnaHQgLnRvcC1iYXItc29jaWFsIHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjRlbSkge1xuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi10aHJlZSAudG9wLWJhciAudG9wLWJhci1yaWdodCAudG9wLWJhci1zb2NpYWwgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tdGhyZWUgLnRvcC1iYXIgLnRvcC1iYXItcmlnaHQgLnRvcC1iYXItc29jaWFsIHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIGxpLnRlbGVwaG9uZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLXRocmVlIG5hdi50b3AtYmFyLmhhcy1zZWFyY2ggdWwuZGVza3RvcC1tZW51IHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDRyZW0pO1xuICBtYXJnaW4tcmlnaHQ6IDMuNzVyZW07XG59XG5oZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi10aHJlZSBuYXYudG9wLWJhciAubG9nby13cmFwcGVyIC5jdXN0b20tbG9nby1saW5rIHtcbiAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLXRocmVlIG5hdi50b3AtYmFyIC5hbHQtbmF2LXdyYXBwZXIgLmFsdC1uYXYtbXktY2FydCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5oZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi10aHJlZSBuYXYudG9wLWJhciAuYWJvdmUtbWVudS1zZWFyY2gtd3JhcHBlciB7XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xufVxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tdGhyZWUgbmF2LnRvcC1iYXIgLmFib3ZlLW1lbnUtc2VhcmNoLXdyYXBwZXIgZm9ybSNzZWFyY2hmb3JtIHtcbiAgbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tdGhyZWUgbmF2LnRvcC1iYXIgLm1lbnUtc2VhcmNoLXdyYXBwZXIge1xuICBib3R0b206IDA7XG4gIGhlaWdodDogMi4yNXJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDIuMjVyZW07XG59XG5oZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi10aHJlZSBuYXYudG9wLWJhciAubWVudS1zZWFyY2gtd3JhcHBlciBidXR0b24ge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGhlaWdodDogMi4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDIuMjVyZW07XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICB3aWR0aDogMi4yNXJlbTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjRlbSkge1xuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi10aHJlZSBuYXYudG9wLWJhciAubWVudS1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm0ge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDA7XG4gIH1cbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLXRocmVlIG5hdi50b3AtYmFyIC5tZW51LXNlYXJjaC13cmFwcGVyIGZvcm0jc2VhcmNoZm9ybS5zaG93IHtcbiAgbWFyZ2luOiAwO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NGVtKSB7XG4gIGhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLXRocmVlIG5hdi50b3AtYmFyIC5tZW51LXNlYXJjaC13cmFwcGVyIGZvcm0jc2VhcmNoZm9ybS5zaG93IHtcbiAgICBtYXJnaW46IDAuNXJlbSAwIDAgMDtcbiAgfVxufVxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tdGhyZWUgbmF2LnRvcC1iYXIgLm1lbnUtc2VhcmNoLXdyYXBwZXIgZm9ybSNzZWFyY2hmb3JtOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLXRocmVlIG5hdi50b3AtYmFyIC5pbmxpbmUtc29jaWFsLXNlYXJjaC13cmFwcGVyIGJ1dHRvbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLXRocmVlIG5hdi50b3AtYmFyIC5pbmxpbmUtc29jaWFsLXNlYXJjaC13cmFwcGVyIGZvcm0jc2VhcmNoZm9ybTphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjRlbSkge1xuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi10aHJlZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tdGhyZWUgLmxvZ28td3JhcHBlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIGhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLXRocmVlIC5sb2dvLXdyYXBwZXIgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi10aHJlZSAudG9wLWJhciAudG9wLWJhci10aXRsZSBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi10aHJlZSAudG9wLWJhciAudG9wLWJhci1yaWdodCAuYWx0LW5hdi13cmFwcGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi10aHJlZSAudG9wLWJhciAudG9wLWJhci1yaWdodCAuYWx0LW5hdi13cmFwcGVyIHVsLm1lbnUge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG1hcmdpbjogMC42MjVyZW0gMDtcbiAgfVxuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi10aHJlZSAudG9wLWJhciAudG9wLWJhci1yaWdodCA+IC5kcm9wZG93bi5tZW51LmRlc2t0b3AtbWVudSB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDNyZW0pO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tdGhyZWUge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi10aHJlZSAubG9nby13cmFwcGVyLmhpZGUtZm9yLXNtYWxsLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi10aHJlZSAudG9wLWJhciB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB9XG4gIGhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLXRocmVlIC50b3AtYmFyLXNvY2lhbCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi10aHJlZSAubWVudS1zZWFyY2gtd3JhcHBlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLyogM2QuIEhlYWRlciBPcHRpb24gRm91ciBTdHlsZXMgKi9cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLWZvdXIge1xuICBwYWRkaW5nOiAwIDAgMC41cmVtIDAgIWltcG9ydGFudDtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLWZvdXIgLnRvcC1iYXIge1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG59XG5oZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1mb3VyIC50b3AtYmFyIC50b3AtYmFyLXRvcCB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6ICMwMDNhNzE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWFyZ2luOiAwIC0wLjkzNzVyZW0gMC45Mzc1cmVtO1xuICBwYWRkaW5nOiAwLjYyNXJlbSAwLjkzNzVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGNhbGMoMTAwJSArIDEuODc1cmVtKTtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLWZvdXIgLnRvcC1iYXIgLnRvcC1iYXItdG9wOmJlZm9yZSwgaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tZm91ciAudG9wLWJhciAudG9wLWJhci10b3A6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiAjMDAzYTcxO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDIwMCU7XG59XG5oZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1mb3VyIC50b3AtYmFyIC50b3AtYmFyLXRvcDphZnRlciB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAxMDAlO1xufVxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tZm91ciAudG9wLWJhciAudG9wLWJhci10b3AgLmFsdC1uYXYtd3JhcHBlciB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogNTAlO1xufVxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tZm91ciAudG9wLWJhciAudG9wLWJhci10b3AgLmFsdC1uYXYtd3JhcHBlciAubWVudSA+IGxpIHtcbiAgYm9yZGVyLWxlZnQ6IDAuMTI1cmVtIHNvbGlkICNGRkZGRkY7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xufVxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tZm91ciAudG9wLWJhciAudG9wLWJhci10b3AgLmFsdC1uYXYtd3JhcHBlciAubWVudSA+IGxpOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLWxlZnQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5oZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1mb3VyIC50b3AtYmFyIC50b3AtYmFyLXRvcCAuYWx0LW5hdi13cmFwcGVyIC5tZW51ID4gbGkgPiBhIHtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLWZvdXIgLnRvcC1iYXIgLnRvcC1iYXItdG9wIC5hbHQtbmF2LXdyYXBwZXIgLm1lbnUgPiBsaSA+IGE6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm90dG9tOiAwO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAwLjEyNXJlbTtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAwO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xufVxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tZm91ciAudG9wLWJhciAudG9wLWJhci10b3AgLmFsdC1uYXYtd3JhcHBlciAubWVudSA+IGxpID4gYTpob3ZlcjpiZWZvcmUge1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB3aWR0aDogMTAwJTtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLWZvdXIgLnRvcC1iYXIgLnRvcC1iYXItdG9wIC5hbHQtbmF2LXdyYXBwZXIgLmFsdC1uYXYtbXktY2FydCB7XG4gIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tZm91ciAudG9wLWJhciAudG9wLWJhci10b3AgLnRvcC1iYXItc29jaWFsIHtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogNTAlO1xufVxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tZm91ciAudG9wLWJhciAudG9wLWJhci10b3AgLnRvcC1iYXItc29jaWFsIHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5oZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1mb3VyIC50b3AtYmFyIC50b3AtYmFyLXRvcCAudG9wLWJhci1zb2NpYWwgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkgYSB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tZm91ciAudG9wLWJhciAudG9wLWJhci10b3AgLnRvcC1iYXItc29jaWFsIHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIGxpOm5vdCguY3VzdG9tLWJ1dHRvbik6bm90KC50ZWxlcGhvbmUpIGEsIGhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLWZvdXIgLnRvcC1iYXIgLnRvcC1iYXItdG9wIC50b3AtYmFyLXNvY2lhbCB1bC5zb2NpYWwtbWVkaWEtd3JhcHBlciBsaS5tZW51LXNlYXJjaC13cmFwcGVyIGJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGxpbmUtaGVpZ2h0OiAyLjI1cmVtO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnMgZWFzZS1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnMgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlLW91dDtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLWZvdXIgLnRvcC1iYXIgLnRvcC1iYXItdG9wIC50b3AtYmFyLXNvY2lhbCB1bC5zb2NpYWwtbWVkaWEtd3JhcHBlciBsaTpub3QoLmN1c3RvbS1idXR0b24pOm5vdCgudGVsZXBob25lKSBhOmhvdmVyLCBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1mb3VyIC50b3AtYmFyIC50b3AtYmFyLXRvcCAudG9wLWJhci1zb2NpYWwgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGk6bm90KC5jdXN0b20tYnV0dG9uKTpub3QoLnRlbGVwaG9uZSkgYTpmb2N1cywgaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tZm91ciAudG9wLWJhciAudG9wLWJhci10b3AgLnRvcC1iYXItc29jaWFsIHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIGxpLm1lbnUtc2VhcmNoLXdyYXBwZXIgYnV0dG9uOmhvdmVyLCBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1mb3VyIC50b3AtYmFyIC50b3AtYmFyLXRvcCAudG9wLWJhci1zb2NpYWwgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkubWVudS1zZWFyY2gtd3JhcHBlciBidXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBjb2xvcjogIzAwM2E3MTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjRlbSkge1xuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1mb3VyIC50b3AtYmFyIC50b3AtYmFyLXRvcCAudG9wLWJhci1zb2NpYWwgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkudGVsZXBob25lIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tZm91ciAudG9wLWJhciAudG9wLWJhci10b3AgLnRvcC1iYXItc29jaWFsIHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIGxpLmlubGluZS1zb2NpYWwtc2VhcmNoLXdyYXBwZXIgYnV0dG9uIHtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5oZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1mb3VyIC50b3AtYmFyIC50b3AtYmFyLXRvcCAudG9wLWJhci1zb2NpYWwgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkuaW5saW5lLXNvY2lhbC1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm0uc2hvdyB7XG4gIG1hcmdpbjogMC42MjVyZW0gMCAwIDAgIWltcG9ydGFudDtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLWZvdXIgLnRvcC1iYXIgLnRvcC1iYXItdG9wIC50b3AtYmFyLXNvY2lhbCB1bC5zb2NpYWwtbWVkaWEtd3JhcHBlciBsaS5jdXN0b20tYnV0dG9uIGEge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLWZvdXIgLnRvcC1iYXIgLnRvcC1iYXItdG9wIC50b3AtYmFyLXNvY2lhbCAudG9wLWJhci1teS1jYXJ0IHtcbiAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtO1xuICBtYXJnaW4tdG9wOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5oZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1mb3VyIC50b3AtYmFyIC50b3AtYmFyLXRvcCAudG9wLWJhci1zb2NpYWwgLnRvcC1iYXItbXktY2FydCBhIHtcbiAgcGFkZGluZzogMC41cmVtIDAuNjI1cmVtIDAuNDM3NXJlbTtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLWZvdXIgLnRvcC1iYXIgLnRvcC1iYXItbGVmdCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDMwMHB4O1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NGVtKSB7XG4gIGhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLWZvdXIgLnRvcC1iYXIgLnRvcC1iYXItbGVmdCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG5oZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1mb3VyIC50b3AtYmFyIC50b3AtYmFyLWxlZnQgLnRvcC1iYXItdGl0bGUge1xuICBtYXJnaW46IDA7XG59XG5oZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1mb3VyIC50b3AtYmFyIC50b3AtYmFyLWxlZnQgLmxvZ28td3JhcHBlci5oaWRlLWZvci1zbWFsbC1vbmx5IC5jdXN0b20tbG9nby1saW5rIHtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tZm91ciAudG9wLWJhciAudG9wLWJhci1yaWdodCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgcGFkZGluZy1sZWZ0OiAyLjVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDE4Ljc1cmVtKTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjRlbSkge1xuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1mb3VyIC50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tZm91ciAudG9wLWJhciAudG9wLWJhci1yaWdodCAuZGVza3RvcC1tZW51IHtcbiAgb3JkZXI6IDI7XG59XG5oZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1mb3VyIC50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IC50b3AtYmFyLXNlYXJjaCAuYWJvdmUtbWVudS1zZWFyY2gtd3JhcHBlciB7XG4gIG1hcmdpbjogMCAwIDAuMzEyNXJlbSAwO1xufVxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tZm91ciAudG9wLWJhciAudG9wLWJhci1yaWdodCAudG9wLWJhci1zZWFyY2ggLmFib3ZlLW1lbnUtc2VhcmNoLXdyYXBwZXIgZm9ybSNzZWFyY2hmb3JtOmJlZm9yZSB7XG4gIHJpZ2h0OiAwLjYyNXJlbSAhaW1wb3J0YW50O1xufVxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tZm91ciAuYWJvdmUtbWVudS1zZWFyY2gtd3JhcHBlciB7XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xufVxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tZm91ciAuYWJvdmUtbWVudS1zZWFyY2gtd3JhcHBlcixcbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLWZvdXIgLmlubGluZS1zb2NpYWwtc2VhcmNoLXdyYXBwZXIge1xuICBoZWlnaHQ6IDIuMjVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLWZvdXIgLmFib3ZlLW1lbnUtc2VhcmNoLXdyYXBwZXIgZm9ybSNzZWFyY2hmb3JtLFxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tZm91ciAuaW5saW5lLXNvY2lhbC1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm0ge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3JkZXI6IDAuMDYyNXJlbSBzb2xpZCAjQ0VENERBO1xuICBib3JkZXItcmFkaXVzOiAwLjE4NzVyZW07XG4gIG1hcmdpbjogMDtcbiAgbWF4LXdpZHRoOiAxMi41cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NGVtKSB7XG4gIGhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLWZvdXIgLmFib3ZlLW1lbnUtc2VhcmNoLXdyYXBwZXIgZm9ybSNzZWFyY2hmb3JtLFxuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1mb3VyIC5pbmxpbmUtc29jaWFsLXNlYXJjaC13cmFwcGVyIGZvcm0jc2VhcmNoZm9ybSB7XG4gICAgbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDtcbiAgfVxufVxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tZm91ciAuYWJvdmUtbWVudS1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm06YWZ0ZXIsXG5oZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1mb3VyIC5pbmxpbmUtc29jaWFsLXNlYXJjaC13cmFwcGVyIGZvcm0jc2VhcmNoZm9ybTphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogXCJcXGYwMDJcIjtcbiAgZm9udC1mYW1pbHk6IGZvbnRhd2Vzb21lICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAzNHB4O1xuICBoZWlnaHQ6IDM0cHg7XG4gIGxpbmUtaGVpZ2h0OiAzNHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLWZvdXIgLmFib3ZlLW1lbnUtc2VhcmNoLXdyYXBwZXIgZm9ybSNzZWFyY2hmb3JtIGlucHV0I3NlYXJjaHN1Ym1pdCxcbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLWZvdXIgLmlubGluZS1zb2NpYWwtc2VhcmNoLXdyYXBwZXIgZm9ybSNzZWFyY2hmb3JtIGlucHV0I3NlYXJjaHN1Ym1pdCB7XG4gIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgd2lkdGg6IDM0cHg7XG4gIGhlaWdodDogMzRweDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLWZvdXIgLmFib3ZlLW1lbnUtc2VhcmNoLXdyYXBwZXIgZm9ybSNzZWFyY2hmb3JtIGlucHV0I3MsXG5oZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1mb3VyIC5pbmxpbmUtc29jaWFsLXNlYXJjaC13cmFwcGVyIGZvcm0jc2VhcmNoZm9ybSBpbnB1dCNzIHtcbiAgbWF4LXdpZHRoOiBub25lO1xuICBib3JkZXI6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIHBhZGRpbmc6IDAgMTBweCAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogMzRweDtcbiAgaGVpZ2h0OiAzNHB4O1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tZm91ciAuYWJvdmUtbWVudS1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm0gLmlucHV0LWdyb3VwLFxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tZm91ciAuaW5saW5lLXNvY2lhbC1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm0gLmlucHV0LWdyb3VwIHtcbiAgbWFyZ2luOiAwO1xufVxuaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tZm91ciBuYXYudG9wLWJhciAubWVudS1zZWFyY2gtd3JhcHBlciB7XG4gIGJvdHRvbTogMDtcbiAgaGVpZ2h0OiAyLjI1cmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMi4yNXJlbTtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLWZvdXIgbmF2LnRvcC1iYXIgLm1lbnUtc2VhcmNoLXdyYXBwZXIgYnV0dG9uIHtcbiAgY3Vyc29yOiBwb2ludGVyICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGhlaWdodDogMi4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDIuMjVyZW07XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB3aWR0aDogMi4yNXJlbTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLWZvdXIgbmF2LnRvcC1iYXIgLm1lbnUtc2VhcmNoLXdyYXBwZXIgZm9ybSNzZWFyY2hmb3JtOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLWZvdXIgbmF2LnRvcC1iYXIgLm1lbnUtc2VhcmNoLXdyYXBwZXIgZm9ybSNzZWFyY2hmb3JtLnNob3cge1xuICBtYXJnaW46IDA7XG59XG5oZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1mb3VyIG5hdi50b3AtYmFyIC5pbmxpbmUtc29jaWFsLXNlYXJjaC13cmFwcGVyIGJ1dHRvbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLWZvdXIgbmF2LnRvcC1iYXIgLmlubGluZS1zb2NpYWwtc2VhcmNoLXdyYXBwZXIgZm9ybSNzZWFyY2hmb3JtIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbmhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLWZvdXIgbmF2LnRvcC1iYXIgLmlubGluZS1zb2NpYWwtc2VhcmNoLXdyYXBwZXIgZm9ybSNzZWFyY2hmb3JtOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NGVtKSB7XG4gIGhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLWZvdXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIGhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLWZvdXIgLmxvZ28td3JhcHBlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIGhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLWZvdXIgLmxvZ28td3JhcHBlciBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG4gIGhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLWZvdXIgbmF2LnRvcC1iYXIgLnRvcC1iYXItdGl0bGUgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1mb3VyIG5hdi50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IC5hbHQtbmF2LXdyYXBwZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIGhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLWZvdXIgbmF2LnRvcC1iYXIgLnRvcC1iYXItcmlnaHQgLmFsdC1uYXYtd3JhcHBlciB1bC5tZW51IHtcbiAgICBtYXJnaW46IDAuNjI1cmVtIDA7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbiAgaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tZm91ciBuYXYudG9wLWJhciAudG9wLWJhci1yaWdodCAudG9wLWJhci1zb2NpYWwge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIGhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLWZvdXIgbmF2LnRvcC1iYXIgLnRvcC1iYXItcmlnaHQgLnRvcC1iYXItc29jaWFsIHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1mb3VyIG5hdi50b3AtYmFyIC50b3AtYmFyLXJpZ2h0ID4gLmRyb3Bkb3duLm1lbnUuZGVza3RvcC1tZW51IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1mb3VyIG5hdi50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IGZvcm0jc2VhcmNoZm9ybSB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMDtcbiAgfVxuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1mb3VyIG5hdi50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IGZvcm0jc2VhcmNoZm9ybS5zaG93IHtcbiAgICBtYXJnaW46IDAuNXJlbSAwIDAgMDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MGVtKSB7XG4gIGhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLWZvdXIge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1mb3VyIC5sb2dvLXdyYXBwZXIuaGlkZS1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIGhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLWZvdXIgLnRvcC1iYXIge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1mb3VyIC50b3AtYmFyLXNvY2lhbCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1mb3VyIC5tZW51LXNlYXJjaC13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4vKiAzZS4gTW9iaWxlIE9mZi1DYW52YXMgTWVudSBTdHlsZXMgKi9cbi50aXRsZS1iYXItbGVmdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbi50aXRsZS1iYXItbGVmdCAudGl0bGUtYmFyLXRpdGxlIGEuY3VzdG9tLWxvZ28tbGluayB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDE1LjYyNXJlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLnRpdGxlLWJhci1sZWZ0IC50aXRsZS1iYXItdGl0bGUgYS5jdXN0b20tbG9nby1saW5rIGltZywgLnRpdGxlLWJhci1sZWZ0IC50aXRsZS1iYXItdGl0bGUgYS5jdXN0b20tbG9nby1saW5rIHN2ZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgYm9keTpub3QoLnRvcGJhcikgbmF2LnNpdGUtbmF2aWdhdGlvbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDBlbSkge1xuICBib2R5LnRvcGJhciBoZWFkZXI6bm90KC5oZWFkZXItb3B0aW9uLW9uZSkgbmF2LnNpdGUtbmF2aWdhdGlvbiAudG9wLWJhci1yaWdodCwgYm9keS50b3BiYXIgaGVhZGVyOm5vdCguaGVhZGVyLW9wdGlvbi1vbmUpIG5hdi5zaXRlLW5hdmlnYXRpb24gLnRvcC1iYXItdG9wLCBib2R5LnRvcGJhciBoZWFkZXI6bm90KC5oZWFkZXItb3B0aW9uLW9uZSkgbmF2LnNpdGUtbmF2aWdhdGlvbiAudG9wLWJhci1ib3R0b20gLm1lbnUtc2VhcmNoLXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgYm9keS50b3BiYXIgaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tdGhyZWUgbmF2LnNpdGUtbmF2aWdhdGlvbiAubWVudS1zZWFyY2gtd3JhcHBlciB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbm5hdi5vZmYtY2FudmFzIGEuY3VzdG9tLWxvZ28tbGluayB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbn1cbm5hdi5vZmYtY2FudmFzIGEuY3VzdG9tLWxvZ28tbGluayBpbWcuY3VzdG9tLWxvZ28ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwLjYyNXJlbSBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxubmF2Lm9mZi1jYW52YXMgYnV0dG9uLnN1Ym1lbnUtdG9nZ2xlIHtcbiAgYmFja2dyb3VuZDogIzkxMjcxMjtcbn1cbm5hdi5vZmYtY2FudmFzIGJ1dHRvbi5zdWJtZW51LXRvZ2dsZTphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cbm5hdi5vZmYtY2FudmFzIC5tZW51Om5vdCgubmVzdGVkKSA+IGxpID4gYSB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW0gIWltcG9ydGFudDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbWluLWhlaWdodDogMi41cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxubmF2Lm9mZi1jYW52YXMgLm1lbnUgPiBsaS5jdXJyZW50LW1lbnUtaXRlbSA+IGEsIG5hdi5vZmYtY2FudmFzIC5tZW51ID4gbGkuY3VycmVudC1tZW51LXBhcmVudCA+IGEge1xuICBiYWNrZ3JvdW5kOiAjRkZBRjI2O1xufVxubmF2Lm9mZi1jYW52YXMgLm1lbnUubmVzdGVkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5uYXYub2ZmLWNhbnZhcyAubWVudS5uZXN0ZWQgPiBsaSA+IGEge1xuICBmb250LXNpemU6IDEuMDYyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbWluLWhlaWdodDogMi41cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctYm90dG9tOiAwLjc1cmVtO1xuICBwYWRkaW5nLXRvcDogMC42ODc1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xufVxubmF2Lm9mZi1jYW52YXMgLm1lbnUubmVzdGVkID4gbGkgPiB1bCA+IGxpID4gYSB7XG4gIHBhZGRpbmctYm90dG9tOiAwLjM3NXJlbTtcbiAgcGFkZGluZy10b3A6IDAuMzc1cmVtO1xufVxubmF2Lm9mZi1jYW52YXMgLm1lbnUubmVzdGVkID4gbGkgPiB1bCA+IGxpID4gYTpiZWZvcmUge1xuICBjb250ZW50OiBcIuKXplwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMS4wNjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAwLjEyNXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbn1cbm5hdi5vZmYtY2FudmFzIC5zdWJtZW51LXRvZ2dsZSB7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBoZWlnaHQ6IDIuNTIzNzVyZW07XG59XG5uYXYub2ZmLWNhbnZhcyAuc3VibWVudS10b2dnbGU6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjRkZGRkZGO1xufVxubmF2Lm9mZi1jYW52YXMgPiB1bC5tZW51IHtcbiAgcGFkZGluZzogMDtcbn1cbm5hdi5vZmYtY2FudmFzID4gdWwubWVudSBsaS5jdXJyZW50X3BhZ2VfcGFyZW50IGEge1xuICBiYWNrZ3JvdW5kOiAjRkZBRjI2O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbm5hdi5vZmYtY2FudmFzIHVsLm1lbnUuYWx0LW1lbnUge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxubmF2Lm9mZi1jYW52YXMgPiAubWVudSA+IGxpLmlzLWFjdGl2ZSA+IGEsXG5uYXYub2ZmLWNhbnZhcyAuc3VibWVudSBsaS5pcy1hY3RpdmUgYSB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxubmF2Lm9mZi1jYW52YXMgPiAubWVudSA+IGxpLmlzLWFjdGl2ZSA+IGE6aG92ZXIsIG5hdi5vZmYtY2FudmFzID4gLm1lbnUgPiBsaS5pcy1hY3RpdmUgPiBhOmZvY3VzLFxubmF2Lm9mZi1jYW52YXMgLnN1Ym1lbnUgbGkuaXMtYWN0aXZlIGE6aG92ZXIsXG5uYXYub2ZmLWNhbnZhcyAuc3VibWVudSBsaS5pcy1hY3RpdmUgYTpmb2N1cyB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxubmF2Lm9mZi1jYW52YXMgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW46IDAuNjI1cmVtIDAgMC45Mzc1cmVtIDA7XG4gIHBhZGRpbmc6IDAgMC45Mzc1cmVtO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxubmF2Lm9mZi1jYW52YXMgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBoZWlnaHQ6IDIuNjI1cmVtO1xuICBsaW5lLWhlaWdodDogMi42MjVyZW07XG4gIHdpZHRoOiAyLjYyNXJlbTtcbn1cbm5hdi5vZmYtY2FudmFzIHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIGxpIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxubmF2Lm9mZi1jYW52YXMgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkuY3VzdG9tLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwLjkzNzVyZW0gMCAwIDA7XG59XG5uYXYub2ZmLWNhbnZhcyB1bC5zb2NpYWwtbWVkaWEtd3JhcHBlciBsaS5jdXN0b20tYnV0dG9uIGEge1xuICBib3JkZXItcmFkaXVzOiAwLjE4NzVyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LWZhbWlseTogXCJCYXJsb3cgU2VtaSBDb25kZW5zZWRcIiwgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjEyNXJlbSAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBwYWRkaW5nOiAwLjc1cmVtIDAuNjI1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xufVxubmF2Lm9mZi1jYW52YXMgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkuY3VzdG9tLWJ1dHRvbi50b3AtYmFyLW15LWNhcnQgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwLjVyZW0gMC42MjVyZW07XG59XG5uYXYub2ZmLWNhbnZhcyB1bC5zb2NpYWwtbWVkaWEtd3JhcHBlciBsaS5jdXN0b20tYnV0dG9uLnRvcC1iYXItbXktY2FydCBpIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuMTI1cmVtO1xufVxubmF2Lm9mZi1jYW52YXMgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkuY3VzdG9tLWJ1dHRvbi50b3AtYmFyLW15LWNhcnQgc3Bhbi5jYXJ0LWNvbnRlbnRzIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgY29sb3I6ICMwMDNhNzE7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gIGhlaWdodDogMS4yNXJlbTtcbiAgbWFyZ2luOiAwIDAgMCAwLjMxMjVyZW07XG4gIG1pbi13aWR0aDogMS4yNXJlbTtcbn1cbm5hdi5vZmYtY2FudmFzIHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIGxpLm1lbnUtc2VhcmNoLXdyYXBwZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxubmF2Lm9mZi1jYW52YXMgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGk6bm90KC5jdXN0b20tYnV0dG9uKSB7XG4gIG1hcmdpbjogMCAwLjMxMjVyZW07XG59XG5uYXYub2ZmLWNhbnZhcyB1bC5zb2NpYWwtbWVkaWEtd3JhcHBlciBsaTpub3QoLmN1c3RvbS1idXR0b24pIGEge1xuICBiYWNrZ3JvdW5kOiAjMDAxNzE3O1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBmb250LXNpemU6IDFyZW07XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlLW91dDtcbiAgLW1zLXRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2Utb3V0O1xufVxubmF2Lm9mZi1jYW52YXMgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGk6bm90KC5jdXN0b20tYnV0dG9uKSBhOmhvdmVyLCBuYXYub2ZmLWNhbnZhcyB1bC5zb2NpYWwtbWVkaWEtd3JhcHBlciBsaTpub3QoLmN1c3RvbS1idXR0b24pIGE6Zm9jdXMsIG5hdi5vZmYtY2FudmFzIHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIGxpOm5vdCguY3VzdG9tLWJ1dHRvbikgYTphY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjMDA2OTNCO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbm5hdi5vZmYtY2FudmFzIC5hbHQtbmF2LW15LWNhcnQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5uYXYub2ZmLWNhbnZhcyAuYWx0LW5hdi1teS1jYXJ0IGEge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiAjOTEyNzEyO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBcIkJhcmxvdyBTZW1pIENvbmRlbnNlZFwiLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDAuOTM3NXJlbSAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDJyZW0pO1xuICBtYXJnaW46IDAuOTM3NXJlbSBhdXRvIDAuOTM3NXJlbTtcbiAgcGFkZGluZzogMC40Mzc1cmVtIDAuNjI1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB3aWR0aDogMTAwJTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbn1cbm5hdi5vZmYtY2FudmFzIC5hbHQtbmF2LW15LWNhcnQgYTpob3ZlciwgbmF2Lm9mZi1jYW52YXMgLmFsdC1uYXYtbXktY2FydCBhOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogIzAwM2E3MTtcbn1cbm5hdi5vZmYtY2FudmFzIC5hbHQtbmF2LW15LWNhcnQgaSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjEyNXJlbTtcbn1cbm5hdi5vZmYtY2FudmFzIC5hbHQtbmF2LW15LWNhcnQgc3Bhbi5jYXJ0LWNvbnRlbnRzIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgY29sb3I6ICMwMDNhNzE7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gIGhlaWdodDogMS4yNXJlbTtcbiAgbWFyZ2luOiAwIDAgMCAwLjMxMjVyZW07XG4gIG1pbi13aWR0aDogMS4yNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxubmF2Lm9mZi1jYW52YXMgZm9ybSNzZWFyY2hmb3JtIHtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDJyZW0pO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xufVxubmF2Lm9mZi1jYW52YXMgZm9ybSNzZWFyY2hmb3JtOmFmdGVyIHtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGNvbnRlbnQ6IFwiXFxmMDAyXCI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAyLjYyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDIuNjI1cmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDIuNjI1cmVtO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbm5hdi5vZmYtY2FudmFzIGZvcm0jc2VhcmNoZm9ybSAuaW5wdXQtZ3JvdXAge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBtYXJnaW46IDA7XG59XG5uYXYub2ZmLWNhbnZhcyBmb3JtI3NlYXJjaGZvcm0gLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idXR0b246YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogdXJsKC4uLy4uLy4uL3NyYy9hc3NldHMvaW1hZ2VzL2JsYWNrLWFycm93LnN2Zykgbm8tcmVwZWF0IGxlZnQgY2VudGVyO1xuICBjb2xvcjogIzAwMTcxNztcbiAgY29udGVudDogXCJcIjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6IGZvbnRhd2Vzb21lO1xuICBoZWlnaHQ6IDAuNjI1cmVtO1xuICByaWdodDogMS4xMjVyZW07XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHdpZHRoOiAyLjM3NXJlbTtcbiAgei1pbmRleDogMTA7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogcmlnaHQgMC4ycyBlYXNlLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiByaWdodCAwLjJzIGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogcmlnaHQgMC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogcmlnaHQgMC4ycyBlYXNlLW91dDtcbn1cbm5hdi5vZmYtY2FudmFzIGZvcm0jc2VhcmNoZm9ybSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ1dHRvbjpob3ZlcjpiZWZvcmUsIG5hdi5vZmYtY2FudmFzIGZvcm0jc2VhcmNoZm9ybSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ1dHRvbjpmb2N1czpiZWZvcmUge1xuICByaWdodDogMC42MjVyZW07XG59XG5uYXYub2ZmLWNhbnZhcyBmb3JtI3NlYXJjaGZvcm0gaW5wdXQjcyB7XG4gIGJhY2tncm91bmQ6ICNDRUQ0REE7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgaGVpZ2h0OiAyLjYyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDIuNjI1cmVtO1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNjI1cmVtICFpbXBvcnRhbnQ7XG59XG5uYXYub2ZmLWNhbnZhcyBmb3JtI3NlYXJjaGZvcm0gaW5wdXQjc2VhcmNoc3VibWl0IHtcbiAgYmFja2dyb3VuZDogI0ZGQUYyNiAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDIuNjI1cmVtO1xuICBtYXJnaW46IDA7XG4gIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICB3aWR0aDogMi42MjVyZW07XG59XG5uYXYub2ZmLWNhbnZhcyBmb3JtI3NlYXJjaGZvcm0gaW5wdXQjc2VhcmNoc3VibWl0OmhvdmVyLCBuYXYub2ZmLWNhbnZhcyBmb3JtI3NlYXJjaGZvcm0gaW5wdXQjc2VhcmNoc3VibWl0OmZvY3VzIHtcbiAgYmFja2dyb3VuZDogIzAwMDAwMDtcbn1cblxuLyogM2YuIE1vYmlsZSBUb3AgQmFyIE1lbnUgU3R5bGVzICovXG5ib2R5LnRvcGJhciBoZWFkZXIjbWFzdGhlYWQgLnRvcC1iYXIgbmF2I21vYmlsZS1tZW51Lm1vYmlsZS1tZW51LnZlcnRpY2FsLm1lbnUge1xuICBwYWRkaW5nOiAwLjkzNzVyZW07XG4gIHdpZHRoOiAxMDAlO1xufVxuYm9keS50b3BiYXIgaGVhZGVyI21hc3RoZWFkIC50b3AtYmFyIG5hdiNtb2JpbGUtbWVudS5tb2JpbGUtbWVudS52ZXJ0aWNhbC5tZW51IC5zdWJtZW51LXRvZ2dsZSB7XG4gIGJhY2tncm91bmQ6ICM5MTI3MTI7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBoZWlnaHQ6IDIuNTIzNzVyZW07XG59XG5ib2R5LnRvcGJhciBoZWFkZXIjbWFzdGhlYWQgLnRvcC1iYXIgbmF2I21vYmlsZS1tZW51Lm1vYmlsZS1tZW51LnZlcnRpY2FsLm1lbnUgLnN1Ym1lbnUtdG9nZ2xlOmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI0ZGRkZGRjtcbn1cbmJvZHkudG9wYmFyIGhlYWRlciNtYXN0aGVhZCAudG9wLWJhciBuYXYjbW9iaWxlLW1lbnUubW9iaWxlLW1lbnUudmVydGljYWwubWVudSA+IHVsLm1lbnUge1xuICBwYWRkaW5nOiAwO1xufVxuYm9keS50b3BiYXIgaGVhZGVyI21hc3RoZWFkIC50b3AtYmFyIG5hdiNtb2JpbGUtbWVudS5tb2JpbGUtbWVudS52ZXJ0aWNhbC5tZW51IHVsLm1lbnUuYWx0LW1lbnUge1xuICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICB6LWluZGV4OiAxMCAhaW1wb3J0YW50O1xufVxuYm9keS50b3BiYXIgaGVhZGVyI21hc3RoZWFkIC50b3AtYmFyIG5hdiNtb2JpbGUtbWVudS5tb2JpbGUtbWVudS52ZXJ0aWNhbC5tZW51IHVsLm1lbnUuYWx0LW1lbnUgbGkge1xuICB3aWR0aDogMTAwJTtcbn1cbmJvZHkudG9wYmFyIGhlYWRlciNtYXN0aGVhZCAudG9wLWJhciBuYXYjbW9iaWxlLW1lbnUubW9iaWxlLW1lbnUudmVydGljYWwubWVudSAubWVudTpub3QoLm5lc3RlZCkgPiBsaSA+IGEge1xuICBmb250LXNpemU6IDEuMTI1cmVtICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHBhZGRpbmc6IDAuNjg3NXJlbSAwICFpbXBvcnRhbnQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5ib2R5LnRvcGJhciBoZWFkZXIjbWFzdGhlYWQgLnRvcC1iYXIgbmF2I21vYmlsZS1tZW51Lm1vYmlsZS1tZW51LnZlcnRpY2FsLm1lbnUgLm1lbnUubmVzdGVkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5ib2R5LnRvcGJhciBoZWFkZXIjbWFzdGhlYWQgLnRvcC1iYXIgbmF2I21vYmlsZS1tZW51Lm1vYmlsZS1tZW51LnZlcnRpY2FsLm1lbnUgLm1lbnUubmVzdGVkID4gbGkgPiBhIHtcbiAgZm9udC1zaXplOiAxcmVtICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHBhZGRpbmc6IDAuNjI1cmVtIDEuMjVyZW0gIWltcG9ydGFudDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbn1cbmJvZHkudG9wYmFyIGhlYWRlciNtYXN0aGVhZCAudG9wLWJhciBuYXYjbW9iaWxlLW1lbnUubW9iaWxlLW1lbnUudmVydGljYWwubWVudSA+IC5tZW51ID4gbGkuaXMtYWN0aXZlID4gYSxcbmJvZHkudG9wYmFyIGhlYWRlciNtYXN0aGVhZCAudG9wLWJhciBuYXYjbW9iaWxlLW1lbnUubW9iaWxlLW1lbnUudmVydGljYWwubWVudSAuc3VibWVudSBsaS5pcy1hY3RpdmUgYSB7XG4gIGNvbG9yOiAjOTEyNzEyO1xufVxuYm9keS50b3BiYXIgaGVhZGVyI21hc3RoZWFkIC50b3AtYmFyIG5hdiNtb2JpbGUtbWVudS5tb2JpbGUtbWVudS52ZXJ0aWNhbC5tZW51ID4gLm1lbnUgPiBsaS5pcy1hY3RpdmUgPiBhOmhvdmVyLCBib2R5LnRvcGJhciBoZWFkZXIjbWFzdGhlYWQgLnRvcC1iYXIgbmF2I21vYmlsZS1tZW51Lm1vYmlsZS1tZW51LnZlcnRpY2FsLm1lbnUgPiAubWVudSA+IGxpLmlzLWFjdGl2ZSA+IGE6Zm9jdXMsXG5ib2R5LnRvcGJhciBoZWFkZXIjbWFzdGhlYWQgLnRvcC1iYXIgbmF2I21vYmlsZS1tZW51Lm1vYmlsZS1tZW51LnZlcnRpY2FsLm1lbnUgLnN1Ym1lbnUgbGkuaXMtYWN0aXZlIGE6aG92ZXIsXG5ib2R5LnRvcGJhciBoZWFkZXIjbWFzdGhlYWQgLnRvcC1iYXIgbmF2I21vYmlsZS1tZW51Lm1vYmlsZS1tZW51LnZlcnRpY2FsLm1lbnUgLnN1Ym1lbnUgbGkuaXMtYWN0aXZlIGE6Zm9jdXMge1xuICBjb2xvcjogIzkxMjcxMjtcbn1cbmJvZHkudG9wYmFyIGhlYWRlciNtYXN0aGVhZCAudG9wLWJhciBuYXYjbW9iaWxlLW1lbnUubW9iaWxlLW1lbnUudmVydGljYWwubWVudSB1bC5zb2NpYWwtbWVkaWEtd3JhcHBlciB7XG4gIG1hcmdpbjogMCAwIDAuNjI1cmVtIDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgYm9keS50b3BiYXIgaGVhZGVyI21hc3RoZWFkIC50b3AtYmFyIG5hdiNtb2JpbGUtbWVudS5tb2JpbGUtbWVudS52ZXJ0aWNhbC5tZW51IHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxufVxuYm9keS50b3BiYXIgaGVhZGVyI21hc3RoZWFkIC50b3AtYmFyIG5hdiNtb2JpbGUtbWVudS5tb2JpbGUtbWVudS52ZXJ0aWNhbC5tZW51IHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIGxpIHtcbiAgYm9yZGVyOiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHdpZHRoOiAyLjI1cmVtO1xuICBoZWlnaHQ6IDIuMjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA5OTtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGZsZXgtZ3JvdzogMTtcbn1cbmJvZHkudG9wYmFyIGhlYWRlciNtYXN0aGVhZCAudG9wLWJhciBuYXYjbW9iaWxlLW1lbnUubW9iaWxlLW1lbnUudmVydGljYWwubWVudSB1bC5zb2NpYWwtbWVkaWEtd3JhcHBlciBsaSBhLCBib2R5LnRvcGJhciBoZWFkZXIjbWFzdGhlYWQgLnRvcC1iYXIgbmF2I21vYmlsZS1tZW51Lm1vYmlsZS1tZW51LnZlcnRpY2FsLm1lbnUgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkgaSB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG59XG5ib2R5LnRvcGJhciBoZWFkZXIjbWFzdGhlYWQgLnRvcC1iYXIgbmF2I21vYmlsZS1tZW51Lm1vYmlsZS1tZW51LnZlcnRpY2FsLm1lbnUgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkuaW5saW5lLXNvY2lhbC1zZWFyY2gtd3JhcHBlciB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cbmJvZHkudG9wYmFyIGhlYWRlciNtYXN0aGVhZCAudG9wLWJhciBuYXYjbW9iaWxlLW1lbnUubW9iaWxlLW1lbnUudmVydGljYWwubWVudSB1bC5zb2NpYWwtbWVkaWEtd3JhcHBlciBsaTpub3QoLmN1c3RvbS1idXR0b24pOmFmdGVyIHtcbiAgd2lkdGg6IDIuMjVyZW07XG4gIGhlaWdodDogMi4yNXJlbTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogLTE7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgdHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2Utb3V0O1xufVxuYm9keS50b3BiYXIgaGVhZGVyI21hc3RoZWFkIC50b3AtYmFyIG5hdiNtb2JpbGUtbWVudS5tb2JpbGUtbWVudS52ZXJ0aWNhbC5tZW51IHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIGxpLmlubGluZS1zb2NpYWwtc2VhcmNoLXdyYXBwZXIge1xuICB3aWR0aDogYXV0bztcbn1cbmJvZHkudG9wYmFyIGhlYWRlciNtYXN0aGVhZCAudG9wLWJhciBuYXYjbW9iaWxlLW1lbnUubW9iaWxlLW1lbnUudmVydGljYWwubWVudSB1bC5zb2NpYWwtbWVkaWEtd3JhcHBlciBsaS5tZW51LXNlYXJjaC13cmFwcGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbmJvZHkudG9wYmFyIGhlYWRlciNtYXN0aGVhZCAudG9wLWJhciBuYXYjbW9iaWxlLW1lbnUubW9iaWxlLW1lbnUudmVydGljYWwubWVudSB1bC5zb2NpYWwtbWVkaWEtd3JhcHBlciBsaS5jdXN0b20tYnV0dG9uIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5ib2R5LnRvcGJhciBoZWFkZXIjbWFzdGhlYWQgLnRvcC1iYXIgbmF2I21vYmlsZS1tZW51Lm1vYmlsZS1tZW51LnZlcnRpY2FsLm1lbnUgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkuY3VzdG9tLWJ1dHRvbiBhIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZm9udC1mYW1pbHk6IFwiQmFybG93IFNlbWkgQ29uZGVuc2VkXCIsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHBhZGRpbmc6IDAgMC42MjVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG59XG5ib2R5LnRvcGJhciBoZWFkZXIjbWFzdGhlYWQgLnRvcC1iYXIgbmF2I21vYmlsZS1tZW51Lm1vYmlsZS1tZW51LnZlcnRpY2FsLm1lbnUgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkuY3VzdG9tLWJ1dHRvbiBhOmhvdmVyLCBib2R5LnRvcGJhciBoZWFkZXIjbWFzdGhlYWQgLnRvcC1iYXIgbmF2I21vYmlsZS1tZW51Lm1vYmlsZS1tZW51LnZlcnRpY2FsLm1lbnUgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkuY3VzdG9tLWJ1dHRvbiBhOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogIzAwMDAwMCAhaW1wb3J0YW50O1xufVxuYm9keS50b3BiYXIgaGVhZGVyI21hc3RoZWFkIC50b3AtYmFyIG5hdiNtb2JpbGUtbWVudS5tb2JpbGUtbWVudS52ZXJ0aWNhbC5tZW51IHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIGxpLmN1c3RvbS1idXR0b24udG9wLWJhci1teS1jYXJ0IGksXG5ib2R5LnRvcGJhciBoZWFkZXIjbWFzdGhlYWQgLnRvcC1iYXIgbmF2I21vYmlsZS1tZW51Lm1vYmlsZS1tZW51LnZlcnRpY2FsLm1lbnUgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkuY3VzdG9tLWJ1dHRvbi5hbHQtbmF2LW15LWNhcnQgaSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjEyNXJlbTtcbn1cbmJvZHkudG9wYmFyIGhlYWRlciNtYXN0aGVhZCAudG9wLWJhciBuYXYjbW9iaWxlLW1lbnUubW9iaWxlLW1lbnUudmVydGljYWwubWVudSB1bC5zb2NpYWwtbWVkaWEtd3JhcHBlciBsaS5jdXN0b20tYnV0dG9uLnRvcC1iYXItbXktY2FydCBzcGFuLmNhcnQtY29udGVudHMsXG5ib2R5LnRvcGJhciBoZWFkZXIjbWFzdGhlYWQgLnRvcC1iYXIgbmF2I21vYmlsZS1tZW51Lm1vYmlsZS1tZW51LnZlcnRpY2FsLm1lbnUgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkuY3VzdG9tLWJ1dHRvbi5hbHQtbmF2LW15LWNhcnQgc3Bhbi5jYXJ0LWNvbnRlbnRzIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgY29sb3I6ICMwMDNhNzE7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gIGhlaWdodDogMS4yNXJlbTtcbiAgbWFyZ2luOiAwIDAgMCAwLjMxMjVyZW07XG4gIG1pbi13aWR0aDogMS4yNXJlbTtcbn1cbmJvZHkudG9wYmFyIGhlYWRlciNtYXN0aGVhZCAudG9wLWJhciBuYXYjbW9iaWxlLW1lbnUubW9iaWxlLW1lbnUudmVydGljYWwubWVudSB1bC5zb2NpYWwtbWVkaWEtd3JhcHBlciBsaSBhLCBib2R5LnRvcGJhciBoZWFkZXIjbWFzdGhlYWQgLnRvcC1iYXIgbmF2I21vYmlsZS1tZW51Lm1vYmlsZS1tZW51LnZlcnRpY2FsLm1lbnUgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkgYSBpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICB3aWR0aDogMi4yNXJlbTtcbiAgaGVpZ2h0OiAyLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMi4yNXJlbTtcbiAgcGFkZGluZzogMDtcbn1cbmJvZHkudG9wYmFyIGhlYWRlciNtYXN0aGVhZCAudG9wLWJhciBuYXYjbW9iaWxlLW1lbnUubW9iaWxlLW1lbnUudmVydGljYWwubWVudSB1bC5zb2NpYWwtbWVkaWEtd3JhcHBlciBsaSBhOmhvdmVyLCBib2R5LnRvcGJhciBoZWFkZXIjbWFzdGhlYWQgLnRvcC1iYXIgbmF2I21vYmlsZS1tZW51Lm1vYmlsZS1tZW51LnZlcnRpY2FsLm1lbnUgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkgYTpmb2N1cywgYm9keS50b3BiYXIgaGVhZGVyI21hc3RoZWFkIC50b3AtYmFyIG5hdiNtb2JpbGUtbWVudS5tb2JpbGUtbWVudS52ZXJ0aWNhbC5tZW51IHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIGxpIGEgaTpob3ZlciwgYm9keS50b3BiYXIgaGVhZGVyI21hc3RoZWFkIC50b3AtYmFyIG5hdiNtb2JpbGUtbWVudS5tb2JpbGUtbWVudS52ZXJ0aWNhbC5tZW51IHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIGxpIGEgaTpmb2N1cyB7XG4gIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbn1cbmJvZHkudG9wYmFyIGhlYWRlciNtYXN0aGVhZCAudG9wLWJhciBuYXYjbW9iaWxlLW1lbnUubW9iaWxlLW1lbnUudmVydGljYWwubWVudSB1bC5zb2NpYWwtbWVkaWEtd3JhcHBlciBsaS5jdXN0b20tYnV0dG9uIGEge1xuICBwYWRkaW5nOiAwIDAuNjI1cmVtO1xufVxuYm9keS50b3BiYXIgaGVhZGVyI21hc3RoZWFkIC50b3AtYmFyIG5hdiNtb2JpbGUtbWVudS5tb2JpbGUtbWVudS52ZXJ0aWNhbC5tZW51IC5hbHQtbmF2LW15LWNhcnQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5ib2R5LnRvcGJhciBoZWFkZXIjbWFzdGhlYWQgLnRvcC1iYXIgbmF2I21vYmlsZS1tZW51Lm1vYmlsZS1tZW51LnZlcnRpY2FsLm1lbnUgLmFsdC1uYXYtbXktY2FydCBhIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogIzkxMjcxMjtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LWZhbWlseTogXCJCYXJsb3cgU2VtaSBDb25kZW5zZWRcIiwgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW0gIWltcG9ydGFudDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDAuNDM3NXJlbSAwIDAuOTM3NXJlbTtcbiAgcGFkZGluZzogMC41cmVtIDAuNjI1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB3aWR0aDogMTAwJTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbn1cbmJvZHkudG9wYmFyIGhlYWRlciNtYXN0aGVhZCAudG9wLWJhciBuYXYjbW9iaWxlLW1lbnUubW9iaWxlLW1lbnUudmVydGljYWwubWVudSAuYWx0LW5hdi1teS1jYXJ0IGE6aG92ZXIsIGJvZHkudG9wYmFyIGhlYWRlciNtYXN0aGVhZCAudG9wLWJhciBuYXYjbW9iaWxlLW1lbnUubW9iaWxlLW1lbnUudmVydGljYWwubWVudSAuYWx0LW5hdi1teS1jYXJ0IGE6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjMDAzYTcxO1xufVxuYm9keS50b3BiYXIgaGVhZGVyI21hc3RoZWFkIC50b3AtYmFyIG5hdiNtb2JpbGUtbWVudS5tb2JpbGUtbWVudS52ZXJ0aWNhbC5tZW51IC5hbHQtbmF2LW15LWNhcnQgaSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjEyNXJlbTtcbn1cbmJvZHkudG9wYmFyIGhlYWRlciNtYXN0aGVhZCAudG9wLWJhciBuYXYjbW9iaWxlLW1lbnUubW9iaWxlLW1lbnUudmVydGljYWwubWVudSAuYWx0LW5hdi1teS1jYXJ0IHNwYW4uY2FydC1jb250ZW50cyB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGNvbG9yOiAjMDAzYTcxO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICBoZWlnaHQ6IDEuMjVyZW07XG4gIG1hcmdpbjogMCAwIDAgMC4zMTI1cmVtO1xuICBtaW4td2lkdGg6IDEuMjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbmJvZHkudG9wYmFyIGhlYWRlciNtYXN0aGVhZCAudG9wLWJhciBuYXYjbW9iaWxlLW1lbnUubW9iaWxlLW1lbnUudmVydGljYWwubWVudSBmb3JtI3NlYXJjaGZvcm0ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBib3JkZXI6IDAuMDYyNXJlbSBzb2xpZCAjQ0VENERBO1xuICBib3JkZXItcmFkaXVzOiAwLjE4NzVyZW07XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIG1hcmdpbjogMDtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjRlbSkge1xuICBib2R5LnRvcGJhciBoZWFkZXIjbWFzdGhlYWQgLnRvcC1iYXIgbmF2I21vYmlsZS1tZW51Lm1vYmlsZS1tZW51LnZlcnRpY2FsLm1lbnUgZm9ybSNzZWFyY2hmb3JtIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuYm9keS50b3BiYXIgaGVhZGVyI21hc3RoZWFkIC50b3AtYmFyIG5hdiNtb2JpbGUtbWVudS5tb2JpbGUtbWVudS52ZXJ0aWNhbC5tZW51IGZvcm0jc2VhcmNoZm9ybTphZnRlciB7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBjb250ZW50OiBcIlxcZjAwMlwiO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtZmFtaWx5OiBmb250YXdlc29tZSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDIuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMi4xMjVyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdG9wOiAwO1xuICB3aWR0aDogMi4xMjVyZW07XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuYm9keS50b3BiYXIgaGVhZGVyI21hc3RoZWFkIC50b3AtYmFyIG5hdiNtb2JpbGUtbWVudS5tb2JpbGUtbWVudS52ZXJ0aWNhbC5tZW51IGZvcm0jc2VhcmNoZm9ybSBpbnB1dCNzZWFyY2hzdWJtaXQge1xuICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogMi4xMjVyZW07XG4gIGhlaWdodDogMi4xMjVyZW07XG4gIGJhY2tncm91bmQ6ICM5MTI3MTI7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuYm9keS50b3BiYXIgaGVhZGVyI21hc3RoZWFkIC50b3AtYmFyIG5hdiNtb2JpbGUtbWVudS5tb2JpbGUtbWVudS52ZXJ0aWNhbC5tZW51IGZvcm0jc2VhcmNoZm9ybSBpbnB1dCNzZWFyY2hzdWJtaXQ6aG92ZXIsIGJvZHkudG9wYmFyIGhlYWRlciNtYXN0aGVhZCAudG9wLWJhciBuYXYjbW9iaWxlLW1lbnUubW9iaWxlLW1lbnUudmVydGljYWwubWVudSBmb3JtI3NlYXJjaGZvcm0gaW5wdXQjc2VhcmNoc3VibWl0OmZvY3VzIHtcbiAgYmFja2dyb3VuZDogIzAwMDAwMDtcbn1cbmJvZHkudG9wYmFyIGhlYWRlciNtYXN0aGVhZCAudG9wLWJhciBuYXYjbW9iaWxlLW1lbnUubW9iaWxlLW1lbnUudmVydGljYWwubWVudSBmb3JtI3NlYXJjaGZvcm0gaW5wdXQjcyB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGJvcmRlcjogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgaGVpZ2h0OiAyLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDIuMTI1cmVtO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIHBhZGRpbmc6IDAgMC42MjVyZW0gIWltcG9ydGFudDtcbn1cbmJvZHkudG9wYmFyIGhlYWRlciNtYXN0aGVhZCAudG9wLWJhciBuYXYjbW9iaWxlLW1lbnUubW9iaWxlLW1lbnUudmVydGljYWwubWVudSBmb3JtI3NlYXJjaGZvcm0gLmlucHV0LWdyb3VwIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKiAzZy4gU3RpY2t5IEhlYWRlciBTdHlsZXMgKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDAuMDYyNXJlbSkge1xuICAjbWFzdGhlYWQge1xuICAgIHdpbGwtY2hhbmdlOiBvcGFjaXR5LCB0cmFuc2Zvcm07XG4gIH1cbiAgYm9keS5zdGlja3ktcHJlcCAjbWFzdGhlYWQuc3RpY2t5LWhlYWRlciB7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gIH1cbiAgYm9keS5hZG1pbi1iYXIuc3RpY2t5LXByZXAgI21hc3RoZWFkLnN0aWNreS1oZWFkZXIge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gIH1cbiAgYm9keS5zdGlja3ktaGVhZGVyLnN0aWNreS1wcmVwICNtYXN0aGVhZC5zdGlja3ktaGVhZGVyIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRvcDogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDFzLCBvcGFjaXR5IDFzO1xuICB9XG4gIGJvZHkuYWRtaW4tYmFyLnN0aWNreS1oZWFkZXIuc3RpY2t5LXByZXAgI21hc3RoZWFkLnN0aWNreS1oZWFkZXIge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdG9wOiAycmVtO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMXMsIG9wYWNpdHkgMXM7XG4gIH1cbn1cbi8qIDNoLiBIZWFkZXIgT3ZlcnJpZGVzICovXG4udG9wLWJhciAudG9wLWJhci1zb2NpYWwgbGkuY3VzdG9tLWJ1dHRvbiBhIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZm9udC1mYW1pbHk6IFwiQmFybG93IFNlbWkgQ29uZGVuc2VkXCIsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnRvcC1iYXIgLnRvcC1iYXItc29jaWFsIGxpLmN1c3RvbS1idXR0b24udG9wLWJhci1teS1jYXJ0IGkge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIG1hcmdpbi1yaWdodDogMC4xMjVyZW07XG59XG4udG9wLWJhciAudG9wLWJhci1zb2NpYWwgbGkuY3VzdG9tLWJ1dHRvbi50b3AtYmFyLW15LWNhcnQgc3Bhbi5jYXJ0LWNvbnRlbnRzIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgY29sb3I6ICMwMDNhNzE7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gIGhlaWdodDogMS4yNXJlbTtcbiAgbWFyZ2luOiAwIDAgMCAwLjMxMjVyZW07XG4gIG1pbi13aWR0aDogMS4yNXJlbTtcbn1cbi50b3AtYmFyIHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIC5tZW51LXNlYXJjaC13cmFwcGVyIHtcbiAgYm9yZGVyLWxlZnQ6IDAgIWltcG9ydGFudDtcbn1cblxuYm9keS50b3BiYXIgLm1lbnUtaWNvbjpiZWZvcmUsXG5ib2R5Lm9mZmNhbnZhcyAubWVudS1pY29uOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMCAwLjQzNzVyZW0gMCBpbmhlcml0O1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAwLjEyNXJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xufVxuYm9keS50b3BiYXIgLm1lbnUtaWNvbjphZnRlcixcbmJvZHkub2ZmY2FudmFzIC5tZW51LWljb246YWZ0ZXIge1xuICBib3gtc2hhZG93OiAwIDAuODc1cmVtIDAgaW5oZXJpdDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbn1cbmJvZHkudG9wYmFyIC5tZW51LWljb24uYWN0aXZlOmJlZm9yZSxcbmJvZHkub2ZmY2FudmFzIC5tZW51LWljb24uYWN0aXZlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgbGVmdDogMC4zNzVyZW07XG4gIHRvcDogMDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xufVxuYm9keS50b3BiYXIgLm1lbnUtaWNvbi5hY3RpdmU6YWZ0ZXIsIGJvZHkudG9wYmFyIC5tZW51LWljb24uYWN0aXZlOmhvdmVyOmFmdGVyLFxuYm9keS5vZmZjYW52YXMgLm1lbnUtaWNvbi5hY3RpdmU6YWZ0ZXIsXG5ib2R5Lm9mZmNhbnZhcyAubWVudS1pY29uLmFjdGl2ZTpob3ZlcjphZnRlciB7XG4gIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMCAwLjg3NXJlbSAwIGluaGVyaXQgIWltcG9ydGFudDtcbiAgbGVmdDogLTAuNTYyNXJlbTtcbiAgdG9wOiAtMC4zMTI1cmVtO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xufVxuXG4vKioqKiA0LiBIT01FIFBBR0UgU1RZTEVTICoqKiovXG4uaG9tZS1oZXJvLXdyYXBwZXIge1xuICBwYWRkaW5nLXRvcDogMTguNzVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxOC43NXJlbTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjRlbSkge1xuICAuaG9tZS1oZXJvLXdyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiA3LjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDguMTI1cmVtO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAuaG9tZS1oZXJvLXdyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiA1cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiA1LjYyNXJlbTtcbiAgfVxufVxuLmhvbWUtaGVyby13cmFwcGVyIC5ob21lLWhlcm8tY2FwdGlvbiB7XG4gIG1heC13aWR0aDogNDIuMTg3NXJlbTtcbiAgd2lkdGg6IDEwMCU7XG59XG4uaG9tZS1oZXJvLXdyYXBwZXIgLmhvbWUtaGVyby1jYXB0aW9uIGgyIHtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbiAgZm9udC1mYW1pbHk6IFwiQmFybG93IFNlbWkgQ29uZGVuc2VkXCIsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogNHJlbSAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogOTAwICFpbXBvcnRhbnQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzBlbSkge1xuICAuaG9tZS1oZXJvLXdyYXBwZXIgLmhvbWUtaGVyby1jYXB0aW9uIGgyIHtcbiAgICBmb250LXNpemU6IDMuNDM3NXJlbSAhaW1wb3J0YW50O1xuICB9XG59XG4uaG9tZS1oZXJvLXdyYXBwZXIgLmhvbWUtaGVyby1jYXB0aW9uIHAge1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xuICBmb250LWZhbWlseTogXCJzb3VyY2Utc2Fucy1wcm9cIiwgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG4uaG9tZS1oZXJvLXdyYXBwZXIgLmhvbWUtaGVyby1jYXB0aW9uIC5icy1idG4ge1xuICBmb250LXNpemU6IDEuMjVyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZzogMS4yNXJlbSAzLjc1cmVtO1xufVxuXG4uaG9tZS10YWdsaW5lLXdyYXBwZXIge1xuICBwYWRkaW5nOiA2LjI1cmVtIDA7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAuaG9tZS10YWdsaW5lLXdyYXBwZXIge1xuICAgIHBhZGRpbmc6IDVyZW0gMDtcbiAgfVxufVxuLmhvbWUtdGFnbGluZS13cmFwcGVyIGgyIHtcbiAgY29sb3I6ICMwMDE3MTcgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAyLjVyZW0gIWltcG9ydGFudDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDI1cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiBpbml0aWFsO1xufVxuXG4uaG9tZS1wb3J0YWxzLXdyYXBwZXIge1xuICBtYXJnaW4tbGVmdDogLTEuMjVyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWJvdHRvbTogLTYuMjVyZW0gIWltcG9ydGFudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogY2FsYygxMDAlICsgMjBweCkgIWltcG9ydGFudDtcbiAgei1pbmRleDogOTk5O1xufVxuLmhvbWUtcG9ydGFscy13cmFwcGVyIC5ob21lLXBvcnRhbCB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGJveC1zaGFkb3c6IDAuNXJlbSAwLjVyZW0gMXJlbSByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgd2lkdGg6IGNhbGMoMzMuMzMzMyUgLSAxLjI1cmVtKTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTYuMjVlbSkge1xuICAuaG9tZS1wb3J0YWxzLXdyYXBwZXIgLmhvbWUtcG9ydGFsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTtcbiAgfVxuICAuaG9tZS1wb3J0YWxzLXdyYXBwZXIgLmhvbWUtcG9ydGFsLmhvbWUtcG9ydGFsLTMge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbi5ob21lLXBvcnRhbHMtd3JhcHBlciAuaG9tZS1wb3J0YWwgLnZjX2NvbHVtbi1pbm5lciB7XG4gIHBhZGRpbmc6IDA7XG59XG4uaG9tZS1wb3J0YWxzLXdyYXBwZXIgLmhvbWUtcG9ydGFsIC53cGJfc2luZ2xlX2ltYWdlIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5ob21lLXBvcnRhbHMtd3JhcHBlciAuaG9tZS1wb3J0YWwgLndwYl9zaW5nbGVfaW1hZ2UgaW1nIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDFzIGVhc2UtaW4tb3V0O1xufVxuLmhvbWUtcG9ydGFscy13cmFwcGVyIC5ob21lLXBvcnRhbCBoMyB7XG4gIGZvbnQtc2l6ZTogMnJlbSAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG4gIHBhZGRpbmc6IDEuODc1cmVtIDIuNXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODQuMzc1ZW0pIHtcbiAgLmhvbWUtcG9ydGFscy13cmFwcGVyIC5ob21lLXBvcnRhbCBoMyB7XG4gICAgbWluLWhlaWdodDogOC41cmVtO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU2LjI1ZW0pIHtcbiAgLmhvbWUtcG9ydGFscy13cmFwcGVyIC5ob21lLXBvcnRhbCBoMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICAgIHBhZGRpbmc6IDEuMjVyZW0gMS4yNXJlbTtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLmhvbWUtcG9ydGFscy13cmFwcGVyIC5ob21lLXBvcnRhbCBoMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nOiAwLjYyNXJlbSAxLjI1cmVtO1xuICB9XG59XG4uaG9tZS1wb3J0YWxzLXdyYXBwZXIgLmhvbWUtcG9ydGFsIGEucG9ydGFsLWxlYXJuLW1vcmUge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBwYWRkaW5nOiAyLjU2MjVyZW0gMi41cmVtIDIuNXJlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1Ni4yNWVtKSB7XG4gIC5ob21lLXBvcnRhbHMtd3JhcHBlciAuaG9tZS1wb3J0YWwgYS5wb3J0YWwtbGVhcm4tbW9yZSB7XG4gICAgcGFkZGluZzogMi41cmVtIDEuMjVyZW0gMi40Mzc1cmVtO1xuICB9XG59XG4uaG9tZS1wb3J0YWxzLXdyYXBwZXIgLmhvbWUtcG9ydGFsIGEucG9ydGFsLWxlYXJuLW1vcmUgaW1nIHtcbiAgd2lkdGg6IDIuNjI1cmVtO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xufVxuLmhvbWUtcG9ydGFscy13cmFwcGVyIC5ob21lLXBvcnRhbCBhLnBvcnRhbC1sZWFybi1tb3JlIHNwYW4ucG9ydGFsLWxlYXJuLW1vcmUtaW5uZXIge1xuICBib3JkZXItYm90dG9tOiAwLjA2MjVyZW0gc29saWQgIzAwMTcxNztcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG4uaG9tZS1wb3J0YWxzLXdyYXBwZXIgLmhvbWUtcG9ydGFsIGEucG9ydGFsLWxlYXJuLW1vcmU6aG92ZXIsIC5ob21lLXBvcnRhbHMtd3JhcHBlciAuaG9tZS1wb3J0YWwgYS5wb3J0YWwtbGVhcm4tbW9yZTpmb2N1cywgLmhvbWUtcG9ydGFscy13cmFwcGVyIC5ob21lLXBvcnRhbCBhLnBvcnRhbC1sZWFybi1tb3JlOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICNGMUYzRjUgIWltcG9ydGFudDtcbn1cbi5ob21lLXBvcnRhbHMtd3JhcHBlciAuaG9tZS1wb3J0YWwgYS5wb3J0YWwtbGVhcm4tbW9yZTpob3ZlciBpbWcsIC5ob21lLXBvcnRhbHMtd3JhcHBlciAuaG9tZS1wb3J0YWwgYS5wb3J0YWwtbGVhcm4tbW9yZTpmb2N1cyBpbWcsIC5ob21lLXBvcnRhbHMtd3JhcHBlciAuaG9tZS1wb3J0YWwgYS5wb3J0YWwtbGVhcm4tbW9yZTphY3RpdmUgaW1nIHtcbiAgbWFyZ2luLXJpZ2h0OiAxLjI1cmVtO1xufVxuLmhvbWUtcG9ydGFscy13cmFwcGVyIC5ob21lLXBvcnRhbDpob3ZlciAud3BiX3NpbmdsZV9pbWFnZSBpbWcsIC5ob21lLXBvcnRhbHMtd3JhcHBlciAuaG9tZS1wb3J0YWw6Zm9jdXMgLndwYl9zaW5nbGVfaW1hZ2UgaW1nIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xufVxuXG4ubmV3cy1hbmQtZXZlbnRzLXdyYXBwZXIge1xuICBwYWRkaW5nLWJvdHRvbTogNi4yNXJlbTtcbiAgcGFkZGluZy10b3A6IDEyLjVyZW07XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAubmV3cy1hbmQtZXZlbnRzLXdyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiAxMHJlbTtcbiAgfVxufVxuLm5ld3MtYW5kLWV2ZW50cy13cmFwcGVyIC5uZXdzLWFuZC1ldmVudHMtY29sdW1uLTEge1xuICBib3JkZXItcmlnaHQ6IDAuMjVyZW0gc29saWQgIzAwMTcxNztcbn1cbi5uZXdzLWFuZC1ldmVudHMtd3JhcHBlciAubmV3cy1hbmQtZXZlbnRzLWNvbHVtbi0xIGgzIHtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTVyZW07XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAubmV3cy1hbmQtZXZlbnRzLXdyYXBwZXIgLm5ld3MtYW5kLWV2ZW50cy1jb2x1bW4tMSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDMuNzVyZW07XG4gIH1cbn1cbi5uZXdzLWFuZC1ldmVudHMtd3JhcHBlciAubmV3cy1hbmQtZXZlbnRzLWNvbHVtbi0yIHtcbiAgYm9yZGVyLWxlZnQ6IDAuMjVyZW0gc29saWQgIzAwMTcxNztcbiAgbWFyZ2luLWxlZnQ6IC0wLjI1cmVtO1xuICBwYWRkaW5nOiAwLjEyNXJlbSAxLjMxMjVyZW0gMC41cmVtIDEuNTYyNXJlbTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5uZXdzLWFuZC1ldmVudHMtd3JhcHBlciAubmV3cy1hbmQtZXZlbnRzLWNvbHVtbi0yIHtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAzLjc1cmVtO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbi5uZXdzLWFuZC1ldmVudHMtd3JhcHBlciAubmV3cy1hbmQtZXZlbnRzLWNvbHVtbi0yIC53cGJfd3JhcHBlciBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5uZXdzLWFuZC1ldmVudHMtd3JhcHBlciAubmV3cy1hbmQtZXZlbnRzLWNvbHVtbi0yIC53cGJfd3JhcHBlciBwIHN0cm9uZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LWZhbWlseTogXCJCYXJsb3cgU2VtaSBDb25kZW5zZWRcIiwgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xufVxuLm5ld3MtYW5kLWV2ZW50cy13cmFwcGVyIC5uZXdzLWFuZC1ldmVudHMtY29sdW1uLTMgLndwYl93cmFwcGVyIHAge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLm5ld3MtYW5kLWV2ZW50cy13cmFwcGVyIC5uZXdzLWFuZC1ldmVudHMtY29sdW1uLTMgLndwYl93cmFwcGVyIHAgYnIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLm5ld3MtYW5kLWV2ZW50cy13cmFwcGVyIC5uZXdzLWFuZC1ldmVudHMtY29sdW1uLTMgLndwYl93cmFwcGVyIHAgc3Ryb25nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBcIkJhcmxvdyBTZW1pIENvbmRlbnNlZFwiLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG59XG4ubmV3cy1hbmQtZXZlbnRzLXdyYXBwZXIgLm5ld3MtYW5kLWV2ZW50cy1jb2x1bW4tMyAud3BiX3dyYXBwZXIgaDMge1xuICBmb250LXNpemU6IDJyZW0gIWltcG9ydGFudDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG4gIG1heC13aWR0aDogMTAwJTtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG59XG4ubmV3cy1hbmQtZXZlbnRzLXdyYXBwZXIgLm5ld3MtYW5kLWV2ZW50cy1jb2x1bW4tMyAud3BiX3dyYXBwZXIgaDMgYSB7XG4gIGNvbG9yOiAjMDAxNzE3O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4ubmV3cy1hbmQtZXZlbnRzLXdyYXBwZXIgLm5ld3MtYW5kLWV2ZW50cy1jb2x1bW4tMyAud3BiX3dyYXBwZXIgLmV2ZW50LWV4Y2VycHQge1xuICBtYXJnaW4tdG9wOiAwLjc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAubmV3cy1hbmQtZXZlbnRzLXdyYXBwZXIgLm5ld3MtYW5kLWV2ZW50cy1jb2x1bW4tMyAud3BiX3dyYXBwZXIgLmV2ZW50LWV4Y2VycHQge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xuICB9XG59XG4ubmV3cy1hbmQtZXZlbnRzLXdyYXBwZXIgLm5ld3MtYW5kLWV2ZW50cy1jb2x1bW4tMyAud3BiX3dyYXBwZXIgLmV2ZW50LWV4Y2VycHQgcCB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG4ubmV3cy1hbmQtZXZlbnRzLXdyYXBwZXIgLm5ld3MtYW5kLWV2ZW50cy1jb2x1bW4tMyAud3BiX3dyYXBwZXIgLmV2ZW50LWV4Y2VycHQgKyBwIGEge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG59XG4ubmV3cy1hbmQtZXZlbnRzLXdyYXBwZXIgLm5ld3MtYW5kLWV2ZW50cy1jb2x1bW4tMyAud3BiX3dyYXBwZXIgLmV2ZW50LWV4Y2VycHQgKyBwIGEgaW1nIHtcbiAgbWFyZ2luLWxlZnQ6IDIuNXJlbTtcbiAgd2lkdGg6IDIuNjI1cmVtO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xufVxuLm5ld3MtYW5kLWV2ZW50cy13cmFwcGVyIC5uZXdzLWFuZC1ldmVudHMtY29sdW1uLTMgLndwYl93cmFwcGVyIC5ldmVudC1leGNlcnB0ICsgcCBhIHNwYW4uZXZlbnQtbGVhcm4tbW9yZS1pbm5lciB7XG4gIGJvcmRlci1ib3R0b206IDAuMDYyNXJlbSBzb2xpZCAjMDAxNzE3O1xuICBsaW5lLWhlaWdodDogMTtcbn1cbi5uZXdzLWFuZC1ldmVudHMtd3JhcHBlciAubmV3cy1hbmQtZXZlbnRzLWNvbHVtbi0zIC53cGJfd3JhcHBlciAuZXZlbnQtZXhjZXJwdCArIHAgYTpob3ZlciBpbWcsIC5uZXdzLWFuZC1ldmVudHMtd3JhcHBlciAubmV3cy1hbmQtZXZlbnRzLWNvbHVtbi0zIC53cGJfd3JhcHBlciAuZXZlbnQtZXhjZXJwdCArIHAgYTpmb2N1cyBpbWcge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbn1cbi5uZXdzLWFuZC1ldmVudHMtd3JhcHBlciBoMyB7XG4gIGZvbnQtc2l6ZTogNHJlbSAhaW1wb3J0YW50O1xuICBsZXR0ZXItc3BhY2luZzogMC4wMjVyZW07XG4gIG1heC13aWR0aDogMTMuNzVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAubmV3cy1hbmQtZXZlbnRzLXdyYXBwZXIgaDMge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxufVxuXG5hLm5ld3MtbGVhcm4tbW9yZSxcbmEuYmxvZy1yZWFkLW1vcmUge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBwYWRkaW5nOiAyLjVyZW0gMCAwLjYyNXJlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5hLm5ld3MtbGVhcm4tbW9yZSBpbWcsXG5hLmJsb2ctcmVhZC1tb3JlIGltZyB7XG4gIG1hcmdpbi1sZWZ0OiAyLjVyZW07XG4gIHdpZHRoOiAyLjYyNXJlbTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbn1cbmEubmV3cy1sZWFybi1tb3JlIHNwYW4uYmxvZy1yZWFkLW1vcmUtaW5uZXIsXG5hLm5ld3MtbGVhcm4tbW9yZSBzcGFuLm5ld3MtbGVhcm4tbW9yZS1pbm5lcixcbmEuYmxvZy1yZWFkLW1vcmUgc3Bhbi5ibG9nLXJlYWQtbW9yZS1pbm5lcixcbmEuYmxvZy1yZWFkLW1vcmUgc3Bhbi5uZXdzLWxlYXJuLW1vcmUtaW5uZXIge1xuICBib3JkZXItYm90dG9tOiAwLjA2MjVyZW0gc29saWQgIzAwMTcxNztcbiAgbGluZS1oZWlnaHQ6IDEgIWltcG9ydGFudDtcbn1cbmEubmV3cy1sZWFybi1tb3JlOmhvdmVyIGltZywgYS5uZXdzLWxlYXJuLW1vcmU6Zm9jdXMgaW1nLFxuYS5ibG9nLXJlYWQtbW9yZTpob3ZlciBpbWcsXG5hLmJsb2ctcmVhZC1tb3JlOmZvY3VzIGltZyB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICBhLm5ld3MtbGVhcm4tbW9yZSB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4ucm90YXRpbmd0d2VldHMge1xuICBtYXJnaW46IDYuMjVyZW0gMCA1cmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgNXJlbTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5yb3RhdGluZ3R3ZWV0cyB7XG4gICAgcGFkZGluZzogMCAzLjc1cmVtO1xuICB9XG59XG4ucm90YXRpbmd0d2VldHMgLnNsaWNrLWxpc3Qge1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LXdpZHRoOiA2NHJlbTtcbiAgd2lkdGg6IDEwMCU7XG59XG4ucm90YXRpbmd0d2VldHMgLnNsaWNrLWxpc3Q6YmVmb3JlIHtcbiAgY29sb3I6ICMwMDY5M0I7XG4gIGNvbnRlbnQ6IFwiXFxmMDk5XCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LWZhbWlseTogXCJmb250YXdlc29tZVwiICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMi44NzVyZW07XG4gIGhlaWdodDogMi41cmVtO1xuICBsaW5lLWhlaWdodDogMi41cmVtO1xuICBtYXJnaW46IDAgYXV0byAyLjVyZW07XG4gIHdpZHRoOiAyLjVyZW07XG59XG4ucm90YXRpbmd0d2VldHMgYnV0dG9uLnNsaWNrLWFycm93IHtcbiAgYm9yZGVyOiAwLjEyNXJlbSBzb2xpZCAjMDAxNzE3O1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBmb250LXNpemU6IDEuODc1cmVtICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiAxMDA7XG4gIGhlaWdodDogNHJlbTtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB3aWR0aDogNHJlbTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5yb3RhdGluZ3R3ZWV0cyBidXR0b24uc2xpY2stYXJyb3cge1xuICAgIGhlaWdodDogM3JlbTtcbiAgICB3aWR0aDogM3JlbTtcbiAgfVxufVxuLnJvdGF0aW5ndHdlZXRzIGJ1dHRvbi5zbGljay1hcnJvdy5zbGljay1uZXh0IHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7XG59XG4ucm90YXRpbmd0d2VldHMgYnV0dG9uLnNsaWNrLWFycm93IHNwYW4ge1xuICBmb250LXNpemU6IDEuODc1cmVtICFpbXBvcnRhbnQ7XG4gIGxpbmUtaGVpZ2h0OiAzLjg3NXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAwLjEyNXJlbTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5yb3RhdGluZ3R3ZWV0cyBidXR0b24uc2xpY2stYXJyb3cgc3BhbiB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbSAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAyLjg3NXJlbTtcbiAgICBsZWZ0OiAwLjA2MjVyZW07XG4gIH1cbn1cbi5yb3RhdGluZ3R3ZWV0cyBidXR0b24uc2xpY2stYXJyb3cuc2xpY2stcHJldiBzcGFuIHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDAuMTI1cmVtO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLnJvdGF0aW5ndHdlZXRzIGJ1dHRvbi5zbGljay1hcnJvdy5zbGljay1wcmV2IHNwYW4ge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDAuMDYyNXJlbTtcbiAgfVxufVxuLnJvdGF0aW5ndHdlZXRzIGJ1dHRvbi5zbGljay1hcnJvdzpob3ZlciwgLnJvdGF0aW5ndHdlZXRzIGJ1dHRvbi5zbGljay1hcnJvdzpmb2N1cywgLnJvdGF0aW5ndHdlZXRzIGJ1dHRvbi5zbGljay1hcnJvdzphY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjMDA2OTNCO1xuICBib3JkZXI6IDAuMTI1cmVtIHNvbGlkICMwMDY5M0I7XG59XG4ucm90YXRpbmd0d2VldHMgYnV0dG9uLnNsaWNrLWFycm93OmhvdmVyIHNwYW4sIC5yb3RhdGluZ3R3ZWV0cyBidXR0b24uc2xpY2stYXJyb3c6Zm9jdXMgc3BhbiwgLnJvdGF0aW5ndHdlZXRzIGJ1dHRvbi5zbGljay1hcnJvdzphY3RpdmUgc3BhbiB7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG4ucm90YXRpbmd0d2VldHMgLnJvdGF0aW5ndHdlZXQge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLnJvdGF0aW5ndHdlZXRzIC5yb3RhdGluZ3R3ZWV0IHAucnR3X21haW4ge1xuICBmb250LXNpemU6IDJyZW07XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLnJvdGF0aW5ndHdlZXRzIC5yb3RhdGluZ3R3ZWV0IHAucnR3X21haW4ge1xuICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgfVxufVxuLnJvdGF0aW5ndHdlZXRzIC5yb3RhdGluZ3R3ZWV0IHAucnR3X21haW4gYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5yb3RhdGluZ3R3ZWV0cyAucm90YXRpbmd0d2VldCBwLnJ0d19tZXRhIHtcbiAgZm9udC1mYW1pbHk6IFwic291cmNlLXNhbnMtcHJvXCIsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuLnJvdGF0aW5ndHdlZXRzIC5yb3RhdGluZ3R3ZWV0IHAucnR3X21ldGEgYSB7XG4gIGNvbG9yOiAjMDA2OTNCO1xuICBmb250LWZhbWlseTogXCJzb3VyY2Utc2Fucy1wcm9cIiwgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZiAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4uaG9tZSAubWFpbi13cmFwLmZ1bGwtd2lkdGgge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG4uaG9tZSAubWFpbi13cmFwLmZ1bGwtd2lkdGggLm1haW4tY29udGVudCB7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgLmhvbWUgLm1haW4td3JhcCAubWFpbi1jb250ZW50IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm1haW4td3JhcCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG59XG4vKioqKiA1LiBJTlRFUk5BTCBQQUdFIFNUWUxFUyAqKioqL1xuLyogNWEuIEJyZWFkY3J1bWJzIFN0eWxlcyAqL1xuLmJyZWFkY3J1bWJzLXdyYXBwZXIge1xuICBwYWRkaW5nOiAwIDAuOTM3NXJlbTtcbn1cbi5icmVhZGNydW1icy13cmFwcGVyICNicmVhZGNydW1icyB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luOiAxcmVtIDA7XG59XG4uYnJlYWRjcnVtYnMtd3JhcHBlciAjYnJlYWRjcnVtYnMgbGkge1xuICBmbG9hdDogbm9uZTtcbiAgZm9udC1mYW1pbHk6IFwiQmFybG93IFNlbWkgQ29uZGVuc2VkXCIsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG4uYnJlYWRjcnVtYnMtd3JhcHBlciAjYnJlYWRjcnVtYnMgbGk6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmJyZWFkY3J1bWJzLXdyYXBwZXIgI2JyZWFkY3J1bWJzIGxpIGEge1xuICBmb250LWZhbWlseTogXCJCYXJsb3cgU2VtaSBDb25kZW5zZWRcIiwgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZiAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuLmJyZWFkY3J1bWJzLXdyYXBwZXIgI2JyZWFkY3J1bWJzIGxpLnNlcGFyYXRvciB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbjogMCAwLjYyNXJlbTtcbn1cblxuLyogNWIuIFBhZ2UgVGl0bGUgYW5kIFRpdGxlIEJhciBTdHlsZXMgKi9cbmhlYWRlci5pbmxpbmUtcGFnZS1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuaGVhZGVyLmlubGluZS1wYWdlLWhlYWRlciBoMS5lbnRyeS10aXRsZSB7XG4gIG9yZGVyOiAyO1xufVxuaGVhZGVyLmlubGluZS1wYWdlLWhlYWRlciBoMi5wYWdlLXN1YnRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMy4xMjVyZW07XG4gIG9yZGVyOiAxO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG5oMS5lbnRyeS10aXRsZSB7XG4gIGZvbnQtc2l6ZTogNHJlbSAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgei1pbmRleDogMTA7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgaDEuZW50cnktdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMy40Mzc1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbn1cbmgxLmVudHJ5LXRpdGxlIHNwYW4udmNhcmQge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBsZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbn1cblxuLmZlYXR1cmVkLWhlcm8tdGl0bGUtYmFyIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuNjI1cmVtIDAuOTM3NXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmZlYXR1cmVkLWhlcm8tdGl0bGUtYmFyOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4zNSk7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxO1xufVxuLmZlYXR1cmVkLWhlcm8tdGl0bGUtYmFyIGgxLmVudHJ5LXRpdGxlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXNoYWRvdzogMCAwLjEyNXJlbSAwLjA2MjVyZW0gIzAwMDAwMDtcbn1cbi5mZWF0dXJlZC1oZXJvLXRpdGxlLWJhciB0aW1lLCAuZmVhdHVyZWQtaGVyby10aXRsZS1iYXIgcC5ieWxpbmUuYXV0aG9yLCAuZmVhdHVyZWQtaGVyby10aXRsZS1iYXIgcC5icy1wb3N0LWRhdGUsIC5mZWF0dXJlZC1oZXJvLXRpdGxlLWJhciBwLmJzLXBvc3QtY2F0cywgLmZlYXR1cmVkLWhlcm8tdGl0bGUtYmFyIHAuYnMtcG9zdC1jb21tZW50cywgLmZlYXR1cmVkLWhlcm8tdGl0bGUtYmFyIHAuc2VhcmNoLXF1ZXJ5LCAuZmVhdHVyZWQtaGVyby10aXRsZS1iYXIgdWwgbGksIC5mZWF0dXJlZC1oZXJvLXRpdGxlLWJhciBzcGFuIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LXNoYWRvdzogMCAwLjEyNXJlbSAwLjA2MjVyZW0gIzAwMDAwMDtcbiAgei1pbmRleDogMTA7XG59XG4uZmVhdHVyZWQtaGVyby10aXRsZS1iYXIgdWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLWxlZnQ6IC0wLjc1cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmZlYXR1cmVkLWhlcm8tdGl0bGUtYmFyIHVsIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwIDAgMCAwLjc1cmVtO1xufVxuLmZlYXR1cmVkLWhlcm8tdGl0bGUtYmFyIC5ibG9nLW1ldGEgcC5icy1wb3N0LWRhdGUge1xuICBvcmRlcjogMTtcbn1cbi5mZWF0dXJlZC1oZXJvLXRpdGxlLWJhciAuYmxvZy1tZXRhIHAuYnlsaW5lLmF1dGhvciB7XG4gIG9yZGVyOiAyO1xufVxuLmZlYXR1cmVkLWhlcm8tdGl0bGUtYmFyIC5ibG9nLW1ldGEgcC5ieWxpbmUuYXV0aG9yIGEge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuLmZlYXR1cmVkLWhlcm8tdGl0bGUtYmFyIC5ibG9nLW1ldGEgcC5icy1wb3N0LWNhdHMge1xuICBvcmRlcjogMztcbn1cbi5mZWF0dXJlZC1oZXJvLXRpdGxlLWJhciAuYmxvZy1tZXRhIHAuYnMtcG9zdC1jYXRzIGEge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuLmZlYXR1cmVkLWhlcm8tdGl0bGUtYmFyIC5ibG9nLW1ldGEgcC5icy1wb3N0LWNvbW1lbnRzIHtcbiAgb3JkZXI6IDQ7XG59XG5cbi8qIDVjLiBEZWZhdWx0IFBhZ2UgVGVtcGxhdGUgU3R5bGVzICovXG4ubWFpbi13cmFwIC5tYWluLWNvbnRlbnQgYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLm1haW4td3JhcCAubWFpbi1jb250ZW50IHtcbiAgICBvcmRlcjogMSAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSkgIWltcG9ydGFudDtcbiAgfVxufVxuXG5ib2R5Om5vdCguaG9tZSkgLm1haW4td3JhcCB7XG4gIG1hcmdpbi10b3A6IDMuNzVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8qIDVkLiBGdWxsIFdpZHRoIFBhZ2UgVGVtcGxhdGUgU3R5bGVzICovXG4ubWFpbi13cmFwLmZ1bGwtd2lkdGgge1xuICB3aWR0aDogMTAwJTtcbn1cbi5tYWluLXdyYXAuZnVsbC13aWR0aCAubWFpbi1jb250ZW50IHtcbiAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbSAhaW1wb3J0YW50O1xuICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbSAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiA1ZS4gUG9zdCBOYXZpZ2F0aW9uIEZvb3RlciBTdHlsZXMgKi9cbmZvb3Rlci5wb3J0Zm9saW8tbmF2aWdhdGlvbiBuYXYubmF2aWdhdGlvbi5wb3N0LW5hdmlnYXRpb24ge1xuICBwYWRkaW5nOiAwIDAuOTM3NXJlbTtcbn1cbmZvb3RlciBuYXYubmF2aWdhdGlvbi5wb3N0LW5hdmlnYXRpb24ge1xuICBtYXJnaW46IDJyZW0gYXV0byAwO1xuICBtYXgtd2lkdGg6IDc1cmVtO1xufVxuXG4vKiA1Zi4gTGVmdCBTaWRlYmFyIFBhZ2UgVGVtcGxhdGUgU3R5bGVzICovXG4vKiA1Zy4gU2lkZWJhciBTdHlsZXMgKi9cbmFzaWRlLnNpZGViYXIge1xuICBiYWNrZ3JvdW5kOiAjRjFGM0Y1O1xuICBwYWRkaW5nOiAxLjU2MjVyZW07XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICBhc2lkZS5zaWRlYmFyIHtcbiAgICBvcmRlcjogMiAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSkgIWltcG9ydGFudDtcbiAgfVxufVxuYXNpZGUuc2lkZWJhci5wb3J0Zm9saW8tc2lkZWJhciB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5hc2lkZS5zaWRlYmFyLnBvcnRmb2xpby1zaWRlYmFyIGltZy53cC1wb3N0LWltYWdlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbmFzaWRlLnNpZGViYXIgLndpZGdldCB7XG4gIG1hcmdpbi1ib3R0b206IDEuODc1cmVtO1xufVxuYXNpZGUuc2lkZWJhciAud2lkZ2V0Omxhc3Qtb2YtdHlwZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5hc2lkZS5zaWRlYmFyIC53aWRnZXQgaDYge1xuICBib3JkZXItYm90dG9tOiAwLjEyNXJlbSBzb2xpZCAjMDAzYTcxO1xuICBmb250LXNpemU6IDEuMTI1cmVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC42MjVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5hc2lkZS5zaWRlYmFyIC53aWRnZXQgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG59XG5hc2lkZS5zaWRlYmFyIC53aWRnZXQgdWwgPiBsaSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5hc2lkZS5zaWRlYmFyIC53aWRnZXQgdWwgPiBsaSA+IGEge1xuICBjb2xvcjogIzAwNjkzQjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDEuMTI1cmVtICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5hc2lkZS5zaWRlYmFyIC53aWRnZXQgdWwgPiBsaTpsYXN0LWNoaWxkID4gYSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5hc2lkZS5zaWRlYmFyIGxpLnJlY2VudGNvbW1lbnRzIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuYXNpZGUuc2lkZWJhciBsaS5yZWNlbnRjb21tZW50cyBzcGFuLmNvbW1lbnQtYXV0aG9yLWxpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxLjg7XG4gIG1hcmdpbi1yaWdodDogMC4yNXJlbTtcbn1cbmFzaWRlLnNpZGViYXIgbGkucmVjZW50Y29tbWVudHMgYSB7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xufVxuXG4vKiA1aC4gU29jaWFsIFNoYXJpbmcgU2hvcnRjb2RlIFN0eWxlcyAqL1xuLmJzLXNvY2lhbC1zaGFyZS1vdXRlciB7XG4gIG1hcmdpbjogMS44NzVyZW0gYXV0byAwO1xuICBtYXgtd2lkdGg6IDUxLjg3NXJlbTtcbiAgcGFkZGluZzogMCAwLjkzNzVyZW07XG59XG5cbi5icy1zb2NpYWwtc2hhcmUtY29udGFpbmVyIHtcbiAgbWFyZ2luOiAwIGF1dG8gMS44NzVyZW07XG4gIHdpZHRoOiBhdXRvO1xufVxuLmJzLXNvY2lhbC1zaGFyZS1jb250YWluZXIgLmJzLXNvY2lhbC1zaGFyZS1pbm5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi1sZWZ0OiAtMXJlbTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDBlbSkge1xuICAuYnMtc29jaWFsLXNoYXJlLWNvbnRhaW5lciAuYnMtc29jaWFsLXNoYXJlLWlubmVyIHtcbiAgICBtYXJnaW4tbGVmdDogLTAuMjVyZW07XG4gIH1cbn1cbi5icy1zb2NpYWwtc2hhcmUtY29udGFpbmVyIC5icy1zb2NpYWwtc2hhcmUtaW5uZXIgLnNpbmdsZS1zb2NpYWwtc2hhcmUge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IGNhbGMoMjAlIC0gMXJlbSk7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgLmJzLXNvY2lhbC1zaGFyZS1jb250YWluZXIgLmJzLXNvY2lhbC1zaGFyZS1pbm5lciAuc2luZ2xlLXNvY2lhbC1zaGFyZSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW07XG4gICAgd2lkdGg6IGNhbGMoMjAlIC0gMC4yNXJlbSk7XG4gIH1cbn1cbi5icy1zb2NpYWwtc2hhcmUtY29udGFpbmVyIC5icy1zb2NpYWwtc2hhcmUtaW5uZXIgLnNpbmdsZS1zb2NpYWwtc2hhcmUgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uYnMtc29jaWFsLXNoYXJlLWNvbnRhaW5lciAuYnMtc29jaWFsLXNoYXJlLWlubmVyIC5zaW5nbGUtc29jaWFsLXNoYXJlIGEgaSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG59XG4uYnMtc29jaWFsLXNoYXJlLWNvbnRhaW5lciAuYnMtc29jaWFsLXNoYXJlLWlubmVyIC5zaW5nbGUtc29jaWFsLXNoYXJlLnNvY2lhbC1zaGFyZS10d2l0dGVyIGEgaSB7XG4gIGNvbG9yOiAjMDBhY2VkO1xufVxuLmJzLXNvY2lhbC1zaGFyZS1jb250YWluZXIgLmJzLXNvY2lhbC1zaGFyZS1pbm5lciAuc2luZ2xlLXNvY2lhbC1zaGFyZS5zb2NpYWwtc2hhcmUtZmFjZWJvb2sgYSBpIHtcbiAgY29sb3I6ICMzYjU5OTg7XG59XG4uYnMtc29jaWFsLXNoYXJlLWNvbnRhaW5lciAuYnMtc29jaWFsLXNoYXJlLWlubmVyIC5zaW5nbGUtc29jaWFsLXNoYXJlLnNvY2lhbC1zaGFyZS1nb29nbGUgYSBpIHtcbiAgY29sb3I6ICNkZDRiMzk7XG59XG4uYnMtc29jaWFsLXNoYXJlLWNvbnRhaW5lciAuYnMtc29jaWFsLXNoYXJlLWlubmVyIC5zaW5nbGUtc29jaWFsLXNoYXJlLnNvY2lhbC1zaGFyZS1saW5rZWRpbiBhIGkge1xuICBjb2xvcjogIzAwN2JiNjtcbn1cbi5icy1zb2NpYWwtc2hhcmUtY29udGFpbmVyIC5icy1zb2NpYWwtc2hhcmUtaW5uZXIgLnNpbmdsZS1zb2NpYWwtc2hhcmUuc29jaWFsLXNoYXJlLXBpbnRlcmVzdCBhIGkge1xuICBjb2xvcjogI2NiMjAyNztcbn1cbi5icy1zb2NpYWwtc2hhcmUtY29udGFpbmVyIC5icy1zb2NpYWwtc2hhcmUtaW5uZXIgLnNpbmdsZS1zb2NpYWwtc2hhcmU6aG92ZXIgYSBpLCAuYnMtc29jaWFsLXNoYXJlLWNvbnRhaW5lciAuYnMtc29jaWFsLXNoYXJlLWlubmVyIC5zaW5nbGUtc29jaWFsLXNoYXJlOmZvY3VzIGEgaSB7XG4gIGNvbG9yOiAjMDAzYTcxICFpbXBvcnRhbnQ7XG59XG4uYnMtc29jaWFsLXNoYXJlLWNvbnRhaW5lciAuYnMtc29jaWFsLXNoYXJlLWlubmVyLnNob3ctY291bnQgLnNpbmdsZS1zb2NpYWwtc2hhcmUge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IDAuMzEyNXJlbTtcbn1cbi5icy1zb2NpYWwtc2hhcmUtY29udGFpbmVyIC5icy1zb2NpYWwtc2hhcmUtaW5uZXIuc2hvdy1jb3VudCAuc2luZ2xlLXNvY2lhbC1zaGFyZSBhIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuNXJlbSk7XG59XG4uYnMtc29jaWFsLXNoYXJlLWNvbnRhaW5lciAuYnMtc29jaWFsLXNoYXJlLWlubmVyLnNob3ctY291bnQgLnNpbmdsZS1zb2NpYWwtc2hhcmUgYSBpIHtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4uYnMtc29jaWFsLXNoYXJlLWNvbnRhaW5lciAuYnMtc29jaWFsLXNoYXJlLWlubmVyLnNob3ctY291bnQgLnNpbmdsZS1zb2NpYWwtc2hhcmUuc29jaWFsLXNoYXJlLXR3aXR0ZXIge1xuICBiYWNrZ3JvdW5kOiAjMDBhY2VkO1xufVxuLmJzLXNvY2lhbC1zaGFyZS1jb250YWluZXIgLmJzLXNvY2lhbC1zaGFyZS1pbm5lci5zaG93LWNvdW50IC5zaW5nbGUtc29jaWFsLXNoYXJlLnNvY2lhbC1zaGFyZS1mYWNlYm9vayB7XG4gIGJhY2tncm91bmQ6ICMzYjU5OTg7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLmJzLXNvY2lhbC1zaGFyZS1jb250YWluZXIgLmJzLXNvY2lhbC1zaGFyZS1pbm5lci5zaG93LWNvdW50IC5zaW5nbGUtc29jaWFsLXNoYXJlLnNvY2lhbC1zaGFyZS1nb29nbGUge1xuICBiYWNrZ3JvdW5kOiAjZGQ0YjM5O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5icy1zb2NpYWwtc2hhcmUtY29udGFpbmVyIC5icy1zb2NpYWwtc2hhcmUtaW5uZXIuc2hvdy1jb3VudCAuc2luZ2xlLXNvY2lhbC1zaGFyZS5zb2NpYWwtc2hhcmUtbGlua2VkaW4ge1xuICBiYWNrZ3JvdW5kOiAjMDA3YmI2O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5icy1zb2NpYWwtc2hhcmUtY29udGFpbmVyIC5icy1zb2NpYWwtc2hhcmUtaW5uZXIuc2hvdy1jb3VudCAuc2luZ2xlLXNvY2lhbC1zaGFyZS5zb2NpYWwtc2hhcmUtcGludGVyZXN0IHtcbiAgYmFja2dyb3VuZDogI2NiMjAyNztcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4uYnMtc29jaWFsLXNoYXJlLWNvbnRhaW5lciAuYnMtc29jaWFsLXNoYXJlLWlubmVyLnNob3ctY291bnQgLnNpbmdsZS1zb2NpYWwtc2hhcmUgc3BhbiB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjEyNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDAuMzEyNXJlbTtcbiAgcGFkZGluZzogMC4xODc1cmVtO1xuICB3aWR0aDogMS41cmVtO1xufVxuLmJzLXNvY2lhbC1zaGFyZS1jb250YWluZXIgLmJzLXNvY2lhbC1zaGFyZS1pbm5lci5zaG93LWNvdW50IC5zaW5nbGUtc29jaWFsLXNoYXJlOmhvdmVyLCAuYnMtc29jaWFsLXNoYXJlLWNvbnRhaW5lciAuYnMtc29jaWFsLXNoYXJlLWlubmVyLnNob3ctY291bnQgLnNpbmdsZS1zb2NpYWwtc2hhcmU6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjMDAzYTcxICFpbXBvcnRhbnQ7XG59XG4uYnMtc29jaWFsLXNoYXJlLWNvbnRhaW5lciAuYnMtc29jaWFsLXNoYXJlLWlubmVyLnNob3ctY291bnQgLnNpbmdsZS1zb2NpYWwtc2hhcmU6aG92ZXIgYSBpLCAuYnMtc29jaWFsLXNoYXJlLWNvbnRhaW5lciAuYnMtc29jaWFsLXNoYXJlLWlubmVyLnNob3ctY291bnQgLnNpbmdsZS1zb2NpYWwtc2hhcmU6Zm9jdXMgYSBpIHtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cblxuLyogNWkuIEdhbGxlcnkgU2hvcnRjb2RlIFN0eWxlcyAqL1xuLmdhbGxlcnkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1ib3R0b206IDEuODc1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTtcbn1cbi5nYWxsZXJ5IGZpZ3VyZS5nYWxsZXJ5LWl0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uZ2FsbGVyeSBmaWd1cmUuZ2FsbGVyeS1pdGVtIC5nYWxsZXJ5LWljb24ge1xuICB3aWR0aDogMTAwJTtcbn1cbi5nYWxsZXJ5IGZpZ3VyZS5nYWxsZXJ5LWl0ZW0gLmdhbGxlcnktaWNvbiBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxMDAlO1xufVxuLmdhbGxlcnkgZmlndXJlLmdhbGxlcnktaXRlbSAuZ2FsbGVyeS1pY29uIGEgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG59XG4uZ2FsbGVyeSBmaWd1cmUuZ2FsbGVyeS1pdGVtIGZpZ2NhcHRpb24ud3AtY2FwdGlvbi10ZXh0IHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCA1OCwgMTEzLCAwLjg1KTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNjI1cmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG59XG4uZ2FsbGVyeSBmaWd1cmUuZ2FsbGVyeS1pdGVtOmhvdmVyIC5nYWxsZXJ5LWljb24sIC5nYWxsZXJ5IGZpZ3VyZS5nYWxsZXJ5LWl0ZW06Zm9jdXMgLmdhbGxlcnktaWNvbiB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmdhbGxlcnkgZmlndXJlLmdhbGxlcnktaXRlbTpob3ZlciAuZ2FsbGVyeS1pY29uIGEgaW1nLCAuZ2FsbGVyeSBmaWd1cmUuZ2FsbGVyeS1pdGVtOmZvY3VzIC5nYWxsZXJ5LWljb24gYSBpbWcge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMSkgcm90YXRlKDNkZWcpO1xufVxuLmdhbGxlcnkgZmlndXJlLmdhbGxlcnktaXRlbTpob3ZlciBmaWdjYXB0aW9uLndwLWNhcHRpb24tdGV4dCwgLmdhbGxlcnkgZmlndXJlLmdhbGxlcnktaXRlbTpmb2N1cyBmaWdjYXB0aW9uLndwLWNhcHRpb24tdGV4dCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG59XG4uZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtNCAuZ2FsbGVyeS1pdGVtIHtcbiAgd2lkdGg6IDI1JTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy00IC5nYWxsZXJ5LWl0ZW0ge1xuICAgIHdpZHRoOiAzMy4zMzMzJTtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMGVtKSB7XG4gIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy00IC5nYWxsZXJ5LWl0ZW0ge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cbi5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy0zIC5nYWxsZXJ5LWl0ZW0ge1xuICB3aWR0aDogMzMuMzMzMyU7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDMwZW0pIHtcbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTMgLmdhbGxlcnktaXRlbSB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTIgLmdhbGxlcnktaXRlbSB7XG4gIHdpZHRoOiA1MCU7XG59XG4uZ2FsbGVyeSBmaWd1cmUuZ2FsbGVyeS1pdGVtIHtcbiAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmdhbGxlcnkgZmlndXJlLmdhbGxlcnktaXRlbSAuZ2FsbGVyeS1pY29uIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uZ2FsbGVyeSBmaWd1cmUuZ2FsbGVyeS1pdGVtIC5nYWxsZXJ5LWljb24gYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cbi5nYWxsZXJ5IGZpZ3VyZS5nYWxsZXJ5LWl0ZW0gLmdhbGxlcnktaWNvbiBhIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xufVxuLmdhbGxlcnkgZmlndXJlLmdhbGxlcnktaXRlbSBmaWdjYXB0aW9uLndwLWNhcHRpb24tdGV4dCB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgNTgsIDExMywgMC44NSk7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgcGFkZGluZzogMC4yNXJlbSAwLjYyNXJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xufVxuLmdhbGxlcnkgZmlndXJlLmdhbGxlcnktaXRlbTpob3ZlciBmaWdjYXB0aW9uLndwLWNhcHRpb24tdGV4dCwgLmdhbGxlcnkgZmlndXJlLmdhbGxlcnktaXRlbTpmb2N1cyBmaWdjYXB0aW9uLndwLWNhcHRpb24tdGV4dCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG59XG5cbi8qIDVqLiBQYWdpbmF0aW9uIFN0eWxlcyAqL1xudWwucGFnaW5hdGlvbiB7XG4gIGJvcmRlci10b3A6IDAuMTI1cmVtIHNvbGlkICMwMDNhNzE7XG4gIG1hcmdpbi10b3A6IDEuMjVyZW07XG4gIHBhZGRpbmctdG9wOiAwLjkzNzVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDUwZW0pIHtcbiAgdWwucGFnaW5hdGlvbiB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcbiAgfVxufVxudWwucGFnaW5hdGlvbiBsaSwgdWwucGFnaW5hdGlvbiBsaSBzcGFuLCB1bC5wYWdpbmF0aW9uIGxpIGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgaGVpZ2h0OiAxLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuODc1cmVtO1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEuODc1cmVtO1xufVxudWwucGFnaW5hdGlvbiBsaSBzcGFuLmN1cnJlbnQge1xuICBiYWNrZ3JvdW5kOiAjOTEyNzEyO1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxudWwucGFnaW5hdGlvbiBsaSBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0ICFpbXBvcnRhbnQ7XG59XG51bC5wYWdpbmF0aW9uIGxpIGE6aG92ZXIsIHVsLnBhZ2luYXRpb24gbGkgYTpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICMwMDNhNzE7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi8qIDVrLiBHcmF2aXR5IEZvcm0gU3R5bGVzICovXG4ubWFpbi1jb250ZW50ID4gLmVudHJ5LWNvbnRlbnQgPiAuZ2Zvcm1fd3JhcHBlciB7XG4gIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbn1cblxuLmdmb3JtX3dyYXBwZXIge1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjQxcHgpIHtcbiAgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArIDFyZW0pO1xuICB9XG59XG4uZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IGxpLmdmaWVsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4uZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IGxpLmdmaWVsZCBpbnB1dDpub3QoW3R5cGU9cmFkaW9dKTpub3QoW3R5cGU9Y2hlY2tib3hdKTpub3QoW3R5cGU9c3VibWl0XSk6bm90KFt0eXBlPWltYWdlXSk6bm90KFt0eXBlPWZpbGVdKSwgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgc2VsZWN0LCAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IGxpLmdmaWVsZCB0ZXh0YXJlYSB7XG4gIGJvcmRlcjogMC4wNjI1cmVtIHNvbGlkICM4MDgwODAgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogMC4xODc1cmVtICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIG1pbi1oZWlnaHQ6IDRyZW07XG4gIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG59XG4uZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IGxpLmdmaWVsZCAuZ2lucHV0X2NvbnRhaW5lciB7XG4gIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbn1cbi5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgbGkuZ2ZpZWxkIC5naW5wdXRfY29udGFpbmVyIGlucHV0LCAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IGxpLmdmaWVsZCAuZ2lucHV0X2NvbnRhaW5lciBzZWxlY3QsIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgbGkuZ2ZpZWxkIC5naW5wdXRfY29udGFpbmVyIHRleHRhcmVhIHtcbiAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW0gIWltcG9ydGFudDtcbn1cbi5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgbGkuZ2ZpZWxkIC5naW5wdXRfY29tcGxleCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLWxlZnQ6IC0xcmVtO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyAxcmVtKSAhaW1wb3J0YW50O1xufVxuLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4IC5naW5wdXRfZnVsbCwgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4IC5naW5wdXRfbGVmdCwgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4IC5naW5wdXRfcmlnaHQsIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgbGkuZ2ZpZWxkIC5naW5wdXRfY29tcGxleCAubmFtZV9maXJzdCwgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4IC5uYW1lX2xhc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cbi5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgbGkuZ2ZpZWxkIC5naW5wdXRfY29tcGxleCAuZ2lucHV0X2Z1bGwgaW5wdXQsIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgbGkuZ2ZpZWxkIC5naW5wdXRfY29tcGxleCAuZ2lucHV0X2Z1bGwgc2VsZWN0LCAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IGxpLmdmaWVsZCAuZ2lucHV0X2NvbXBsZXggLmdpbnB1dF9mdWxsIHRleHRhcmVhLCAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IGxpLmdmaWVsZCAuZ2lucHV0X2NvbXBsZXggLmdpbnB1dF9sZWZ0IGlucHV0LCAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IGxpLmdmaWVsZCAuZ2lucHV0X2NvbXBsZXggLmdpbnB1dF9sZWZ0IHNlbGVjdCwgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4IC5naW5wdXRfbGVmdCB0ZXh0YXJlYSwgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4IC5naW5wdXRfcmlnaHQgaW5wdXQsIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgbGkuZ2ZpZWxkIC5naW5wdXRfY29tcGxleCAuZ2lucHV0X3JpZ2h0IHNlbGVjdCwgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4IC5naW5wdXRfcmlnaHQgdGV4dGFyZWEsIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgbGkuZ2ZpZWxkIC5naW5wdXRfY29tcGxleCAubmFtZV9maXJzdCBpbnB1dCwgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4IC5uYW1lX2ZpcnN0IHNlbGVjdCwgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4IC5uYW1lX2ZpcnN0IHRleHRhcmVhLCAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IGxpLmdmaWVsZCAuZ2lucHV0X2NvbXBsZXggLm5hbWVfbGFzdCBpbnB1dCwgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4IC5uYW1lX2xhc3Qgc2VsZWN0LCAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IGxpLmdmaWVsZCAuZ2lucHV0X2NvbXBsZXggLm5hbWVfbGFzdCB0ZXh0YXJlYSB7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbn1cbi5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgbGkuZ2ZpZWxkIC5naW5wdXRfY29tcGxleCAuZ2lucHV0X2Z1bGwgaW5wdXQgKyBsYWJlbCwgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4IC5naW5wdXRfZnVsbCBzZWxlY3QgKyBsYWJlbCwgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4IC5naW5wdXRfZnVsbCB0ZXh0YXJlYSArIGxhYmVsLCAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IGxpLmdmaWVsZCAuZ2lucHV0X2NvbXBsZXggLmdpbnB1dF9sZWZ0IGlucHV0ICsgbGFiZWwsIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgbGkuZ2ZpZWxkIC5naW5wdXRfY29tcGxleCAuZ2lucHV0X2xlZnQgc2VsZWN0ICsgbGFiZWwsIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgbGkuZ2ZpZWxkIC5naW5wdXRfY29tcGxleCAuZ2lucHV0X2xlZnQgdGV4dGFyZWEgKyBsYWJlbCwgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4IC5naW5wdXRfcmlnaHQgaW5wdXQgKyBsYWJlbCwgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4IC5naW5wdXRfcmlnaHQgc2VsZWN0ICsgbGFiZWwsIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgbGkuZ2ZpZWxkIC5naW5wdXRfY29tcGxleCAuZ2lucHV0X3JpZ2h0IHRleHRhcmVhICsgbGFiZWwsIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgbGkuZ2ZpZWxkIC5naW5wdXRfY29tcGxleCAubmFtZV9maXJzdCBpbnB1dCArIGxhYmVsLCAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IGxpLmdmaWVsZCAuZ2lucHV0X2NvbXBsZXggLm5hbWVfZmlyc3Qgc2VsZWN0ICsgbGFiZWwsIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgbGkuZ2ZpZWxkIC5naW5wdXRfY29tcGxleCAubmFtZV9maXJzdCB0ZXh0YXJlYSArIGxhYmVsLCAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IGxpLmdmaWVsZCAuZ2lucHV0X2NvbXBsZXggLm5hbWVfbGFzdCBpbnB1dCArIGxhYmVsLCAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IGxpLmdmaWVsZCAuZ2lucHV0X2NvbXBsZXggLm5hbWVfbGFzdCBzZWxlY3QgKyBsYWJlbCwgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4IC5uYW1lX2xhc3QgdGV4dGFyZWEgKyBsYWJlbCB7XG4gIGNvbG9yOiAjMDAxNzE3O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIG1hcmdpbjogMCAwIDAgMC4wNjI1cmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogY2FsYygxMDAlIC0gMS4xMjVyZW0pO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xufVxuLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4IC5naW5wdXRfZnVsbC5oYXMtbGFiZWwtYmVsb3cgaW5wdXQsIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgbGkuZ2ZpZWxkIC5naW5wdXRfY29tcGxleCAuZ2lucHV0X2Z1bGwuaGFzLWxhYmVsLWJlbG93IHNlbGVjdCwgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4IC5naW5wdXRfZnVsbC5oYXMtbGFiZWwtYmVsb3cgdGV4dGFyZWEsIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgbGkuZ2ZpZWxkIC5naW5wdXRfY29tcGxleCAuZ2lucHV0X2xlZnQuaGFzLWxhYmVsLWJlbG93IGlucHV0LCAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IGxpLmdmaWVsZCAuZ2lucHV0X2NvbXBsZXggLmdpbnB1dF9sZWZ0Lmhhcy1sYWJlbC1iZWxvdyBzZWxlY3QsIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgbGkuZ2ZpZWxkIC5naW5wdXRfY29tcGxleCAuZ2lucHV0X2xlZnQuaGFzLWxhYmVsLWJlbG93IHRleHRhcmVhLCAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IGxpLmdmaWVsZCAuZ2lucHV0X2NvbXBsZXggLmdpbnB1dF9yaWdodC5oYXMtbGFiZWwtYmVsb3cgaW5wdXQsIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgbGkuZ2ZpZWxkIC5naW5wdXRfY29tcGxleCAuZ2lucHV0X3JpZ2h0Lmhhcy1sYWJlbC1iZWxvdyBzZWxlY3QsIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgbGkuZ2ZpZWxkIC5naW5wdXRfY29tcGxleCAuZ2lucHV0X3JpZ2h0Lmhhcy1sYWJlbC1iZWxvdyB0ZXh0YXJlYSwgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4IC5uYW1lX2ZpcnN0Lmhhcy1sYWJlbC1iZWxvdyBpbnB1dCwgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4IC5uYW1lX2ZpcnN0Lmhhcy1sYWJlbC1iZWxvdyBzZWxlY3QsIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgbGkuZ2ZpZWxkIC5naW5wdXRfY29tcGxleCAubmFtZV9maXJzdC5oYXMtbGFiZWwtYmVsb3cgdGV4dGFyZWEsIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgbGkuZ2ZpZWxkIC5naW5wdXRfY29tcGxleCAubmFtZV9sYXN0Lmhhcy1sYWJlbC1iZWxvdyBpbnB1dCwgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4IC5uYW1lX2xhc3QuaGFzLWxhYmVsLWJlbG93IHNlbGVjdCwgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4IC5uYW1lX2xhc3QuaGFzLWxhYmVsLWJlbG93IHRleHRhcmVhIHtcbiAgbWFyZ2luLWJvdHRvbTogMi4xODc1cmVtICFpbXBvcnRhbnQ7XG59XG4uZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IGxpLmdmaWVsZCAuZ2lucHV0X2NvbXBsZXggLmdpbnB1dF9mdWxsIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IGxpLmdmaWVsZCAuZ2lucHV0X2NvbXBsZXggLmdpbnB1dF9sZWZ0LCAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IGxpLmdmaWVsZCAuZ2lucHV0X2NvbXBsZXggLmdpbnB1dF9yaWdodCwgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4IC5uYW1lX2ZpcnN0LCAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IGxpLmdmaWVsZCAuZ2lucHV0X2NvbXBsZXggLm5hbWVfbGFzdCB7XG4gIGZsb2F0OiBub25lO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIHdpZHRoOiA1MCU7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4IC5naW5wdXRfbGVmdCwgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4IC5naW5wdXRfcmlnaHQsIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgbGkuZ2ZpZWxkIC5naW5wdXRfY29tcGxleCAubmFtZV9maXJzdCwgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4IC5uYW1lX2xhc3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4uZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IGxpLmdmaWVsZCAuZ2lucHV0X2NvbnRhaW5lcl9hZGRyZXNzX2xhYmVsIHtcbiAgYmFja2dyb3VuZDogI0YxRjNGNTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDFyZW0gMXJlbSAwIDFyZW07XG4gIHdpZHRoOiAxMDAlO1xufVxuLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXJfYWRkcmVzcyB7XG4gIGJhY2tncm91bmQ6ICNGMUYzRjU7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICBwYWRkaW5nOiAwLjI1cmVtIDFyZW0gMC4zMTI1cmVtIDA7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG59XG4uZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IGxpLmdmaWVsZCAuZ2lucHV0X2NvbXBsZXguZ2lucHV0X2NvbnRhaW5lcl9hZGRyZXNzIC5naW5wdXRfZnVsbCwgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXJfYWRkcmVzcyAuZ2lucHV0X2xlZnQsIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgbGkuZ2ZpZWxkIC5naW5wdXRfY29tcGxleC5naW5wdXRfY29udGFpbmVyX2FkZHJlc3MgLmdpbnB1dF9yaWdodCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMCAwIDAgMXJlbSAhaW1wb3J0YW50O1xufVxuLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXJfYWRkcmVzcyAuZ2lucHV0X2Z1bGwgaW5wdXQsIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgbGkuZ2ZpZWxkIC5naW5wdXRfY29tcGxleC5naW5wdXRfY29udGFpbmVyX2FkZHJlc3MgLmdpbnB1dF9mdWxsIHNlbGVjdCwgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXJfYWRkcmVzcyAuZ2lucHV0X2xlZnQgaW5wdXQsIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgbGkuZ2ZpZWxkIC5naW5wdXRfY29tcGxleC5naW5wdXRfY29udGFpbmVyX2FkZHJlc3MgLmdpbnB1dF9sZWZ0IHNlbGVjdCwgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXJfYWRkcmVzcyAuZ2lucHV0X3JpZ2h0IGlucHV0LCAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IGxpLmdmaWVsZCAuZ2lucHV0X2NvbXBsZXguZ2lucHV0X2NvbnRhaW5lcl9hZGRyZXNzIC5naW5wdXRfcmlnaHQgc2VsZWN0IHtcbiAgbWFyZ2luLWJvdHRvbTogMS41NjI1cmVtICFpbXBvcnRhbnQ7XG59XG4uZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IGxpLmdmaWVsZCAuZ2lucHV0X2NvbXBsZXguZ2lucHV0X2NvbnRhaW5lcl9hZGRyZXNzIC5naW5wdXRfZnVsbCBpbnB1dCArIGxhYmVsLCAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IGxpLmdmaWVsZCAuZ2lucHV0X2NvbXBsZXguZ2lucHV0X2NvbnRhaW5lcl9hZGRyZXNzIC5naW5wdXRfZnVsbCBzZWxlY3QgKyBsYWJlbCwgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXJfYWRkcmVzcyAuZ2lucHV0X2xlZnQgaW5wdXQgKyBsYWJlbCwgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXJfYWRkcmVzcyAuZ2lucHV0X2xlZnQgc2VsZWN0ICsgbGFiZWwsIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgbGkuZ2ZpZWxkIC5naW5wdXRfY29tcGxleC5naW5wdXRfY29udGFpbmVyX2FkZHJlc3MgLmdpbnB1dF9yaWdodCBpbnB1dCArIGxhYmVsLCAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IGxpLmdmaWVsZCAuZ2lucHV0X2NvbXBsZXguZ2lucHV0X2NvbnRhaW5lcl9hZGRyZXNzIC5naW5wdXRfcmlnaHQgc2VsZWN0ICsgbGFiZWwge1xuICB0b3A6IGNhbGMoMTAwJSAtIDAuNjI1cmVtKTtcbn1cbi5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgbGkuZ2ZpZWxkIC5naW5wdXRfY29tcGxleC5naW5wdXRfY29udGFpbmVyX2FkZHJlc3MgLmdpbnB1dF9mdWxsIHNlbGVjdCwgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQgLmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXJfYWRkcmVzcyAuZ2lucHV0X2xlZnQgc2VsZWN0LCAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IGxpLmdmaWVsZCAuZ2lucHV0X2NvbXBsZXguZ2lucHV0X2NvbnRhaW5lcl9hZGRyZXNzIC5naW5wdXRfcmlnaHQgc2VsZWN0IHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgbGkuZ2ZpZWxkIC5naW5wdXRfY29tcGxleC5naW5wdXRfY29udGFpbmVyX2FkZHJlc3MgLmdpbnB1dF9yaWdodCArIC5naW5wdXRfbGVmdCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2Zvb3RlciB7XG4gIG1hcmdpbjogMS44NzVyZW0gMCAwIDA7XG4gIHBhZGRpbmc6IDA7XG59XG4uZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9mb290ZXIgaW5wdXQuZ2Zvcm1fYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogI0ZGQUYyNjtcbiAgY29sb3I6ICMwMDE3MTcgIWltcG9ydGFudDtcbiAgZm9udC1mYW1pbHk6IFwiQmFybG93IFNlbWkgQ29uZGVuc2VkXCIsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgcGFkZGluZzogMS4zNzVyZW0gNi4yNXJlbTtcbn1cbi5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2Zvb3RlciBpbnB1dC5nZm9ybV9idXR0b246aG92ZXIsIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2Zvb3RlciBpbnB1dC5nZm9ybV9idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjMDAxNzE3O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4uZ2Zvcm1fd3JhcHBlci5nZm9ybV92YWxpZGF0aW9uX2Vycm9yIGZvcm0gLnZhbGlkYXRpb25fZXJyb3Ige1xuICBiYWNrZ3JvdW5kOiAjOTEyNzEyO1xuICBib3JkZXItY29sb3I6ICM5MTI3MTI7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBmb250LWZhbWlseTogXCJzb3VyY2Utc2Fucy1wcm9cIiwgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjM3NXJlbTtcbiAgcGFkZGluZzogMC45Mzc1cmVtO1xufVxuLmdmb3JtX3dyYXBwZXIuZ2Zvcm1fdmFsaWRhdGlvbl9lcnJvciBmb3JtIC5nZm9ybV9ib2R5IHVsLmdmb3JtX2ZpZWxkcyBsaS5nZmllbGQuZ2ZpZWxkX2Vycm9yIHtcbiAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWxlZnQ6IDAuMzEyNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMC4zMTI1cmVtO1xufVxuLmdmb3JtX3dyYXBwZXIuZ2Zvcm1fdmFsaWRhdGlvbl9lcnJvciBmb3JtIC5nZm9ybV9ib2R5IHVsLmdmb3JtX2ZpZWxkcyBsaS5nZmllbGQuZ2ZpZWxkX2Vycm9yIGxhYmVsLmdmaWVsZF9sYWJlbCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4uZ2Zvcm1fd3JhcHBlci5nZm9ybV92YWxpZGF0aW9uX2Vycm9yIGZvcm0gLmdmb3JtX2JvZHkgdWwuZ2Zvcm1fZmllbGRzIGxpLmdmaWVsZC5nZmllbGRfZXJyb3IgaW5wdXRbdHlwZT10ZXh0XSwgLmdmb3JtX3dyYXBwZXIuZ2Zvcm1fdmFsaWRhdGlvbl9lcnJvciBmb3JtIC5nZm9ybV9ib2R5IHVsLmdmb3JtX2ZpZWxkcyBsaS5nZmllbGQuZ2ZpZWxkX2Vycm9yIGlucHV0W3R5cGU9ZW1haWxdLCAuZ2Zvcm1fd3JhcHBlci5nZm9ybV92YWxpZGF0aW9uX2Vycm9yIGZvcm0gLmdmb3JtX2JvZHkgdWwuZ2Zvcm1fZmllbGRzIGxpLmdmaWVsZC5nZmllbGRfZXJyb3IgdGV4dGFyZWEge1xuICBtYXJnaW4tYm90dG9tOiAwLjM3NXJlbSAhaW1wb3J0YW50O1xufVxuLmdmb3JtX3dyYXBwZXIuZ2Zvcm1fdmFsaWRhdGlvbl9lcnJvciBmb3JtIC5nZm9ybV9ib2R5IHVsLmdmb3JtX2ZpZWxkcyBsaS5nZmllbGQuZ2ZpZWxkX2Vycm9yIC5nZmllbGRfZGVzY3JpcHRpb24udmFsaWRhdGlvbl9tZXNzYWdlIHtcbiAgY29sb3I6IHJlZDtcbiAgcGFkZGluZzogMDtcbn1cbi5nZm9ybV93cmFwcGVyLmdmb3JtX3ZhbGlkYXRpb25fZXJyb3IgZm9ybSAuZ2Zvcm1fYm9keSB1bC5nZm9ybV9maWVsZHMgbGkuZ2ZpZWxkLmdmaWVsZF9lcnJvciAuZ2lucHV0X2NvbXBsZXggLmdpbnB1dF9sZWZ0IGlucHV0ICsgbGFiZWwsIC5nZm9ybV93cmFwcGVyLmdmb3JtX3ZhbGlkYXRpb25fZXJyb3IgZm9ybSAuZ2Zvcm1fYm9keSB1bC5nZm9ybV9maWVsZHMgbGkuZ2ZpZWxkLmdmaWVsZF9lcnJvciAuZ2lucHV0X2NvbXBsZXggLmdpbnB1dF9yaWdodCBpbnB1dCArIGxhYmVsIHtcbiAgdG9wOiAxMDAlO1xufVxuLmdmb3JtX3dyYXBwZXIuZ2Zvcm1fdmFsaWRhdGlvbl9lcnJvciBmb3JtIC5nZm9ybV9ib2R5IHVsLmdmb3JtX2ZpZWxkcyBsaS5nZmllbGQuZ2ZpZWxkX2Vycm9yLmZsb2F0TGFiZWwgbGFiZWwuZ2ZpZWxkX2xhYmVsIHtcbiAgZm9udC1zaXplOiA5MCU7XG4gIGxlZnQ6IDAuNjI1cmVtO1xuICB0b3A6IDAuNjI1cmVtO1xufVxuLmdmb3JtX3dyYXBwZXIuZ2Zvcm1fdmFsaWRhdGlvbl9lcnJvciBmb3JtIC5nZm9ybV9ib2R5IHVsLmdmb3JtX2ZpZWxkcyBsaS5nZmllbGQuZ2ZpZWxkX2Vycm9yLmZsb2F0TGFiZWwgaW5wdXRbdHlwZT10ZXh0XSwgLmdmb3JtX3dyYXBwZXIuZ2Zvcm1fdmFsaWRhdGlvbl9lcnJvciBmb3JtIC5nZm9ybV9ib2R5IHVsLmdmb3JtX2ZpZWxkcyBsaS5nZmllbGQuZ2ZpZWxkX2Vycm9yLmZsb2F0TGFiZWwgaW5wdXRbdHlwZT1lbWFpbF0sIC5nZm9ybV93cmFwcGVyLmdmb3JtX3ZhbGlkYXRpb25fZXJyb3IgZm9ybSAuZ2Zvcm1fYm9keSB1bC5nZm9ybV9maWVsZHMgbGkuZ2ZpZWxkLmdmaWVsZF9lcnJvci5mbG9hdExhYmVsIHRleHRhcmVhIHtcbiAgcGFkZGluZzogMS4yNXJlbSAwLjkzNzVyZW07XG59XG5cbi8qIDVsLiBTZWFyY2ggUmVzdWx0cyBTdHlsZXMgKi9cbmJvZHkuc2VhcmNoLXJlc3VsdHMgc2VjdGlvbiNtYWluLWNvbnRhaW5lciBkaXYubWFpbi13cmFwIGFydGljbGUubWFpbi1jb250ZW50IHNlY3Rpb24uYnMtYmxvZy1sb29wIGFydGljbGUudHlwZS1wYWdlLnBhZ2UgLmVudHJ5LWNvbnRlbnQgLmJsb2ctbWV0YSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5ib2R5LnNlYXJjaC1yZXN1bHRzIHNlY3Rpb24jbWFpbi1jb250YWluZXIgZGl2Lm1haW4td3JhcCBhcnRpY2xlLm1haW4tY29udGVudCBzZWN0aW9uLmJzLWJsb2ctbG9vcCBhcnRpY2xlLnR5cGUtcGFnZS5wYWdlIC5lbnRyeS1jb250ZW50IC5icy1wb3N0LWV4Y2VycHQge1xuICBmb250LWZhbWlseTogXCJCYXJsb3cgU2VtaSBDb25kZW5zZWRcIiwgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbn1cblxuLyoqKiogNi4gQkxPRyBQQUdFIEFORCBTSU5HTEUgQkxPRyBQT1NUIFNUWUxFUyAqKioqL1xuLnNpbmdsZS1wb3N0IC5tYWluLXdyYXAsIC5ibG9nIC5tYWluLXdyYXAsIC5zZWFyY2gtcmVzdWx0cyAubWFpbi13cmFwLCAuc2luZ2xlLXNlcnZpY2UgLm1haW4td3JhcCwgLmFyY2hpdmUgLm1haW4td3JhcCwgLnRhZyAubWFpbi13cmFwLCAuc2luZ2xlLXN0YWZmIC5tYWluLXdyYXAge1xuICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG59XG4uc2luZ2xlLXBvc3QgLm1haW4td3JhcCAubWFpbi1jb250ZW50IC5icy1lbnRyeS1tZXRhLCAuYmxvZyAubWFpbi13cmFwIC5tYWluLWNvbnRlbnQgLmJzLWVudHJ5LW1ldGEsIC5zZWFyY2gtcmVzdWx0cyAubWFpbi13cmFwIC5tYWluLWNvbnRlbnQgLmJzLWVudHJ5LW1ldGEsIC5zaW5nbGUtc2VydmljZSAubWFpbi13cmFwIC5tYWluLWNvbnRlbnQgLmJzLWVudHJ5LW1ldGEsIC5hcmNoaXZlIC5tYWluLXdyYXAgLm1haW4tY29udGVudCAuYnMtZW50cnktbWV0YSwgLnRhZyAubWFpbi13cmFwIC5tYWluLWNvbnRlbnQgLmJzLWVudHJ5LW1ldGEsIC5zaW5nbGUtc3RhZmYgLm1haW4td3JhcCAubWFpbi1jb250ZW50IC5icy1lbnRyeS1tZXRhIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnNpbmdsZS1wb3N0IC5tYWluLXdyYXAgLm1haW4tY29udGVudCAuYnMtZW50cnktbWV0YSBwLCAuYmxvZyAubWFpbi13cmFwIC5tYWluLWNvbnRlbnQgLmJzLWVudHJ5LW1ldGEgcCwgLnNlYXJjaC1yZXN1bHRzIC5tYWluLXdyYXAgLm1haW4tY29udGVudCAuYnMtZW50cnktbWV0YSBwLCAuc2luZ2xlLXNlcnZpY2UgLm1haW4td3JhcCAubWFpbi1jb250ZW50IC5icy1lbnRyeS1tZXRhIHAsIC5hcmNoaXZlIC5tYWluLXdyYXAgLm1haW4tY29udGVudCAuYnMtZW50cnktbWV0YSBwLCAudGFnIC5tYWluLXdyYXAgLm1haW4tY29udGVudCAuYnMtZW50cnktbWV0YSBwLCAuc2luZ2xlLXN0YWZmIC5tYWluLXdyYXAgLm1haW4tY29udGVudCAuYnMtZW50cnktbWV0YSBwIHtcbiAgYm9yZGVyLXJpZ2h0OiAwLjEyNXJlbSBzb2xpZCAjMDAzYTcxO1xuICBtYXJnaW46IDAgMC42MjVyZW0gMCAwO1xuICBwYWRkaW5nOiAwIDAuNjI1cmVtIDAgMDtcbn1cbi5zaW5nbGUtcG9zdCAubWFpbi13cmFwIC5tYWluLWNvbnRlbnQgLmJzLWVudHJ5LW1ldGEgcDpsYXN0LW9mLXR5cGUsIC5ibG9nIC5tYWluLXdyYXAgLm1haW4tY29udGVudCAuYnMtZW50cnktbWV0YSBwOmxhc3Qtb2YtdHlwZSwgLnNlYXJjaC1yZXN1bHRzIC5tYWluLXdyYXAgLm1haW4tY29udGVudCAuYnMtZW50cnktbWV0YSBwOmxhc3Qtb2YtdHlwZSwgLnNpbmdsZS1zZXJ2aWNlIC5tYWluLXdyYXAgLm1haW4tY29udGVudCAuYnMtZW50cnktbWV0YSBwOmxhc3Qtb2YtdHlwZSwgLmFyY2hpdmUgLm1haW4td3JhcCAubWFpbi1jb250ZW50IC5icy1lbnRyeS1tZXRhIHA6bGFzdC1vZi10eXBlLCAudGFnIC5tYWluLXdyYXAgLm1haW4tY29udGVudCAuYnMtZW50cnktbWV0YSBwOmxhc3Qtb2YtdHlwZSwgLnNpbmdsZS1zdGFmZiAubWFpbi13cmFwIC5tYWluLWNvbnRlbnQgLmJzLWVudHJ5LW1ldGEgcDpsYXN0LW9mLXR5cGUge1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cbi5zaW5nbGUtcG9zdCAubWFpbi13cmFwLm5vLXNpZGViYXIsIC5ibG9nIC5tYWluLXdyYXAubm8tc2lkZWJhciwgLnNlYXJjaC1yZXN1bHRzIC5tYWluLXdyYXAubm8tc2lkZWJhciwgLnNpbmdsZS1zZXJ2aWNlIC5tYWluLXdyYXAubm8tc2lkZWJhciwgLmFyY2hpdmUgLm1haW4td3JhcC5uby1zaWRlYmFyLCAudGFnIC5tYWluLXdyYXAubm8tc2lkZWJhciwgLnNpbmdsZS1zdGFmZiAubWFpbi13cmFwLm5vLXNpZGViYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi5zaW5nbGUtcG9zdCAubWFpbi13cmFwLm5vLXNpZGViYXIgYXJ0aWNsZS5tYWluLWNvbnRlbnQsIC5ibG9nIC5tYWluLXdyYXAubm8tc2lkZWJhciBhcnRpY2xlLm1haW4tY29udGVudCwgLnNlYXJjaC1yZXN1bHRzIC5tYWluLXdyYXAubm8tc2lkZWJhciBhcnRpY2xlLm1haW4tY29udGVudCwgLnNpbmdsZS1zZXJ2aWNlIC5tYWluLXdyYXAubm8tc2lkZWJhciBhcnRpY2xlLm1haW4tY29udGVudCwgLmFyY2hpdmUgLm1haW4td3JhcC5uby1zaWRlYmFyIGFydGljbGUubWFpbi1jb250ZW50LCAudGFnIC5tYWluLXdyYXAubm8tc2lkZWJhciBhcnRpY2xlLm1haW4tY29udGVudCwgLnNpbmdsZS1zdGFmZiAubWFpbi13cmFwLm5vLXNpZGViYXIgYXJ0aWNsZS5tYWluLWNvbnRlbnQge1xuICBtYXgtd2lkdGg6IDUwcmVtO1xuICB3aWR0aDogMTAwJTtcbn1cbi5zaW5nbGUtcG9zdCAubWFpbi13cmFwLmJsb2ctc2lkZWJhci1sZWZ0LCAuc2luZ2xlLXBvc3QgLm1haW4td3JhcC5zaW5nbGUtc2lkZWJhci1sZWZ0LCAuYmxvZyAubWFpbi13cmFwLmJsb2ctc2lkZWJhci1sZWZ0LCAuYmxvZyAubWFpbi13cmFwLnNpbmdsZS1zaWRlYmFyLWxlZnQsIC5zZWFyY2gtcmVzdWx0cyAubWFpbi13cmFwLmJsb2ctc2lkZWJhci1sZWZ0LCAuc2VhcmNoLXJlc3VsdHMgLm1haW4td3JhcC5zaW5nbGUtc2lkZWJhci1sZWZ0LCAuc2luZ2xlLXNlcnZpY2UgLm1haW4td3JhcC5ibG9nLXNpZGViYXItbGVmdCwgLnNpbmdsZS1zZXJ2aWNlIC5tYWluLXdyYXAuc2luZ2xlLXNpZGViYXItbGVmdCwgLmFyY2hpdmUgLm1haW4td3JhcC5ibG9nLXNpZGViYXItbGVmdCwgLmFyY2hpdmUgLm1haW4td3JhcC5zaW5nbGUtc2lkZWJhci1sZWZ0LCAudGFnIC5tYWluLXdyYXAuYmxvZy1zaWRlYmFyLWxlZnQsIC50YWcgLm1haW4td3JhcC5zaW5nbGUtc2lkZWJhci1sZWZ0LCAuc2luZ2xlLXN0YWZmIC5tYWluLXdyYXAuYmxvZy1zaWRlYmFyLWxlZnQsIC5zaW5nbGUtc3RhZmYgLm1haW4td3JhcC5zaW5nbGUtc2lkZWJhci1sZWZ0IHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5zaW5nbGUtcG9zdCAubWFpbi13cmFwLmJsb2ctc2lkZWJhci1sZWZ0IC5tYWluLWNvbnRlbnQsIC5zaW5nbGUtcG9zdCAubWFpbi13cmFwLnNpbmdsZS1zaWRlYmFyLWxlZnQgLm1haW4tY29udGVudCwgLmJsb2cgLm1haW4td3JhcC5ibG9nLXNpZGViYXItbGVmdCAubWFpbi1jb250ZW50LCAuYmxvZyAubWFpbi13cmFwLnNpbmdsZS1zaWRlYmFyLWxlZnQgLm1haW4tY29udGVudCwgLnNlYXJjaC1yZXN1bHRzIC5tYWluLXdyYXAuYmxvZy1zaWRlYmFyLWxlZnQgLm1haW4tY29udGVudCwgLnNlYXJjaC1yZXN1bHRzIC5tYWluLXdyYXAuc2luZ2xlLXNpZGViYXItbGVmdCAubWFpbi1jb250ZW50LCAuc2luZ2xlLXNlcnZpY2UgLm1haW4td3JhcC5ibG9nLXNpZGViYXItbGVmdCAubWFpbi1jb250ZW50LCAuc2luZ2xlLXNlcnZpY2UgLm1haW4td3JhcC5zaW5nbGUtc2lkZWJhci1sZWZ0IC5tYWluLWNvbnRlbnQsIC5hcmNoaXZlIC5tYWluLXdyYXAuYmxvZy1zaWRlYmFyLWxlZnQgLm1haW4tY29udGVudCwgLmFyY2hpdmUgLm1haW4td3JhcC5zaW5nbGUtc2lkZWJhci1sZWZ0IC5tYWluLWNvbnRlbnQsIC50YWcgLm1haW4td3JhcC5ibG9nLXNpZGViYXItbGVmdCAubWFpbi1jb250ZW50LCAudGFnIC5tYWluLXdyYXAuc2luZ2xlLXNpZGViYXItbGVmdCAubWFpbi1jb250ZW50LCAuc2luZ2xlLXN0YWZmIC5tYWluLXdyYXAuYmxvZy1zaWRlYmFyLWxlZnQgLm1haW4tY29udGVudCwgLnNpbmdsZS1zdGFmZiAubWFpbi13cmFwLnNpbmdsZS1zaWRlYmFyLWxlZnQgLm1haW4tY29udGVudCB7XG4gIG9yZGVyOiAyO1xufVxuLnNpbmdsZS1wb3N0IC5tYWluLXdyYXAuYmxvZy1zaWRlYmFyLWxlZnQgYXNpZGUuc2lkZWJhciwgLnNpbmdsZS1wb3N0IC5tYWluLXdyYXAuc2luZ2xlLXNpZGViYXItbGVmdCBhc2lkZS5zaWRlYmFyLCAuYmxvZyAubWFpbi13cmFwLmJsb2ctc2lkZWJhci1sZWZ0IGFzaWRlLnNpZGViYXIsIC5ibG9nIC5tYWluLXdyYXAuc2luZ2xlLXNpZGViYXItbGVmdCBhc2lkZS5zaWRlYmFyLCAuc2VhcmNoLXJlc3VsdHMgLm1haW4td3JhcC5ibG9nLXNpZGViYXItbGVmdCBhc2lkZS5zaWRlYmFyLCAuc2VhcmNoLXJlc3VsdHMgLm1haW4td3JhcC5zaW5nbGUtc2lkZWJhci1sZWZ0IGFzaWRlLnNpZGViYXIsIC5zaW5nbGUtc2VydmljZSAubWFpbi13cmFwLmJsb2ctc2lkZWJhci1sZWZ0IGFzaWRlLnNpZGViYXIsIC5zaW5nbGUtc2VydmljZSAubWFpbi13cmFwLnNpbmdsZS1zaWRlYmFyLWxlZnQgYXNpZGUuc2lkZWJhciwgLmFyY2hpdmUgLm1haW4td3JhcC5ibG9nLXNpZGViYXItbGVmdCBhc2lkZS5zaWRlYmFyLCAuYXJjaGl2ZSAubWFpbi13cmFwLnNpbmdsZS1zaWRlYmFyLWxlZnQgYXNpZGUuc2lkZWJhciwgLnRhZyAubWFpbi13cmFwLmJsb2ctc2lkZWJhci1sZWZ0IGFzaWRlLnNpZGViYXIsIC50YWcgLm1haW4td3JhcC5zaW5nbGUtc2lkZWJhci1sZWZ0IGFzaWRlLnNpZGViYXIsIC5zaW5nbGUtc3RhZmYgLm1haW4td3JhcC5ibG9nLXNpZGViYXItbGVmdCBhc2lkZS5zaWRlYmFyLCAuc2luZ2xlLXN0YWZmIC5tYWluLXdyYXAuc2luZ2xlLXNpZGViYXItbGVmdCBhc2lkZS5zaWRlYmFyIHtcbiAgb3JkZXI6IDE7XG59XG4uc2luZ2xlLXBvc3QgLm1haW4td3JhcC5ibG9nLWZ1bGwtd2lkdGgubm8tc2lkZWJhciBhcnRpY2xlLm1haW4tY29udGVudCwgLnNpbmdsZS1wb3N0IC5tYWluLXdyYXAuc2luZ2xlLWZ1bGwtd2lkdGgubm8tc2lkZWJhciBhcnRpY2xlLm1haW4tY29udGVudCwgLmJsb2cgLm1haW4td3JhcC5ibG9nLWZ1bGwtd2lkdGgubm8tc2lkZWJhciBhcnRpY2xlLm1haW4tY29udGVudCwgLmJsb2cgLm1haW4td3JhcC5zaW5nbGUtZnVsbC13aWR0aC5uby1zaWRlYmFyIGFydGljbGUubWFpbi1jb250ZW50LCAuc2VhcmNoLXJlc3VsdHMgLm1haW4td3JhcC5ibG9nLWZ1bGwtd2lkdGgubm8tc2lkZWJhciBhcnRpY2xlLm1haW4tY29udGVudCwgLnNlYXJjaC1yZXN1bHRzIC5tYWluLXdyYXAuc2luZ2xlLWZ1bGwtd2lkdGgubm8tc2lkZWJhciBhcnRpY2xlLm1haW4tY29udGVudCwgLnNpbmdsZS1zZXJ2aWNlIC5tYWluLXdyYXAuYmxvZy1mdWxsLXdpZHRoLm5vLXNpZGViYXIgYXJ0aWNsZS5tYWluLWNvbnRlbnQsIC5zaW5nbGUtc2VydmljZSAubWFpbi13cmFwLnNpbmdsZS1mdWxsLXdpZHRoLm5vLXNpZGViYXIgYXJ0aWNsZS5tYWluLWNvbnRlbnQsIC5hcmNoaXZlIC5tYWluLXdyYXAuYmxvZy1mdWxsLXdpZHRoLm5vLXNpZGViYXIgYXJ0aWNsZS5tYWluLWNvbnRlbnQsIC5hcmNoaXZlIC5tYWluLXdyYXAuc2luZ2xlLWZ1bGwtd2lkdGgubm8tc2lkZWJhciBhcnRpY2xlLm1haW4tY29udGVudCwgLnRhZyAubWFpbi13cmFwLmJsb2ctZnVsbC13aWR0aC5uby1zaWRlYmFyIGFydGljbGUubWFpbi1jb250ZW50LCAudGFnIC5tYWluLXdyYXAuc2luZ2xlLWZ1bGwtd2lkdGgubm8tc2lkZWJhciBhcnRpY2xlLm1haW4tY29udGVudCwgLnNpbmdsZS1zdGFmZiAubWFpbi13cmFwLmJsb2ctZnVsbC13aWR0aC5uby1zaWRlYmFyIGFydGljbGUubWFpbi1jb250ZW50LCAuc2luZ2xlLXN0YWZmIC5tYWluLXdyYXAuc2luZ2xlLWZ1bGwtd2lkdGgubm8tc2lkZWJhciBhcnRpY2xlLm1haW4tY29udGVudCB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cbi5zaW5nbGUtcG9zdCAuYWJvdXQtdGhlLWF1dGhvci13cmFwLCAuYmxvZyAuYWJvdXQtdGhlLWF1dGhvci13cmFwLCAuc2VhcmNoLXJlc3VsdHMgLmFib3V0LXRoZS1hdXRob3Itd3JhcCwgLnNpbmdsZS1zZXJ2aWNlIC5hYm91dC10aGUtYXV0aG9yLXdyYXAsIC5hcmNoaXZlIC5hYm91dC10aGUtYXV0aG9yLXdyYXAsIC50YWcgLmFib3V0LXRoZS1hdXRob3Itd3JhcCwgLnNpbmdsZS1zdGFmZiAuYWJvdXQtdGhlLWF1dGhvci13cmFwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luOiAycmVtIDA7XG4gIHBhZGRpbmc6IDAuOTM3NXJlbTtcbn1cbi5zaW5nbGUtcG9zdCAuYWJvdXQtdGhlLWF1dGhvci13cmFwIC5hdXRob3ItaW1hZ2UsIC5ibG9nIC5hYm91dC10aGUtYXV0aG9yLXdyYXAgLmF1dGhvci1pbWFnZSwgLnNlYXJjaC1yZXN1bHRzIC5hYm91dC10aGUtYXV0aG9yLXdyYXAgLmF1dGhvci1pbWFnZSwgLnNpbmdsZS1zZXJ2aWNlIC5hYm91dC10aGUtYXV0aG9yLXdyYXAgLmF1dGhvci1pbWFnZSwgLmFyY2hpdmUgLmFib3V0LXRoZS1hdXRob3Itd3JhcCAuYXV0aG9yLWltYWdlLCAudGFnIC5hYm91dC10aGUtYXV0aG9yLXdyYXAgLmF1dGhvci1pbWFnZSwgLnNpbmdsZS1zdGFmZiAuYWJvdXQtdGhlLWF1dGhvci13cmFwIC5hdXRob3ItaW1hZ2Uge1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICBoZWlnaHQ6IDVyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiA1cmVtO1xufVxuLnNpbmdsZS1wb3N0IC5hYm91dC10aGUtYXV0aG9yLXdyYXAgLmF1dGhvci1pbWFnZSBpbWcsIC5ibG9nIC5hYm91dC10aGUtYXV0aG9yLXdyYXAgLmF1dGhvci1pbWFnZSBpbWcsIC5zZWFyY2gtcmVzdWx0cyAuYWJvdXQtdGhlLWF1dGhvci13cmFwIC5hdXRob3ItaW1hZ2UgaW1nLCAuc2luZ2xlLXNlcnZpY2UgLmFib3V0LXRoZS1hdXRob3Itd3JhcCAuYXV0aG9yLWltYWdlIGltZywgLmFyY2hpdmUgLmFib3V0LXRoZS1hdXRob3Itd3JhcCAuYXV0aG9yLWltYWdlIGltZywgLnRhZyAuYWJvdXQtdGhlLWF1dGhvci13cmFwIC5hdXRob3ItaW1hZ2UgaW1nLCAuc2luZ2xlLXN0YWZmIC5hYm91dC10aGUtYXV0aG9yLXdyYXAgLmF1dGhvci1pbWFnZSBpbWcge1xuICBoZWlnaHQ6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xufVxuLnNpbmdsZS1wb3N0IC5hYm91dC10aGUtYXV0aG9yLXdyYXAgLmF1dGhvci1kZXNjcmlwdGlvbiwgLmJsb2cgLmFib3V0LXRoZS1hdXRob3Itd3JhcCAuYXV0aG9yLWRlc2NyaXB0aW9uLCAuc2VhcmNoLXJlc3VsdHMgLmFib3V0LXRoZS1hdXRob3Itd3JhcCAuYXV0aG9yLWRlc2NyaXB0aW9uLCAuc2luZ2xlLXNlcnZpY2UgLmFib3V0LXRoZS1hdXRob3Itd3JhcCAuYXV0aG9yLWRlc2NyaXB0aW9uLCAuYXJjaGl2ZSAuYWJvdXQtdGhlLWF1dGhvci13cmFwIC5hdXRob3ItZGVzY3JpcHRpb24sIC50YWcgLmFib3V0LXRoZS1hdXRob3Itd3JhcCAuYXV0aG9yLWRlc2NyaXB0aW9uLCAuc2luZ2xlLXN0YWZmIC5hYm91dC10aGUtYXV0aG9yLXdyYXAgLmF1dGhvci1kZXNjcmlwdGlvbiB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSA1LjYyNXJlbSk7XG59XG4uc2luZ2xlLXBvc3QgLmFib3V0LXRoZS1hdXRob3Itd3JhcCAuYXV0aG9yLWRlc2NyaXB0aW9uIHA6bGFzdC1vZi10eXBlLCAuYmxvZyAuYWJvdXQtdGhlLWF1dGhvci13cmFwIC5hdXRob3ItZGVzY3JpcHRpb24gcDpsYXN0LW9mLXR5cGUsIC5zZWFyY2gtcmVzdWx0cyAuYWJvdXQtdGhlLWF1dGhvci13cmFwIC5hdXRob3ItZGVzY3JpcHRpb24gcDpsYXN0LW9mLXR5cGUsIC5zaW5nbGUtc2VydmljZSAuYWJvdXQtdGhlLWF1dGhvci13cmFwIC5hdXRob3ItZGVzY3JpcHRpb24gcDpsYXN0LW9mLXR5cGUsIC5hcmNoaXZlIC5hYm91dC10aGUtYXV0aG9yLXdyYXAgLmF1dGhvci1kZXNjcmlwdGlvbiBwOmxhc3Qtb2YtdHlwZSwgLnRhZyAuYWJvdXQtdGhlLWF1dGhvci13cmFwIC5hdXRob3ItZGVzY3JpcHRpb24gcDpsYXN0LW9mLXR5cGUsIC5zaW5nbGUtc3RhZmYgLmFib3V0LXRoZS1hdXRob3Itd3JhcCAuYXV0aG9yLWRlc2NyaXB0aW9uIHA6bGFzdC1vZi10eXBlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5zaW5nbGUtcG9zdCAuYWJvdXQtdGhlLWF1dGhvci13cmFwIC5hdXRob3ItZGVzY3JpcHRpb24gcCBzdHJvbmcsIC5ibG9nIC5hYm91dC10aGUtYXV0aG9yLXdyYXAgLmF1dGhvci1kZXNjcmlwdGlvbiBwIHN0cm9uZywgLnNlYXJjaC1yZXN1bHRzIC5hYm91dC10aGUtYXV0aG9yLXdyYXAgLmF1dGhvci1kZXNjcmlwdGlvbiBwIHN0cm9uZywgLnNpbmdsZS1zZXJ2aWNlIC5hYm91dC10aGUtYXV0aG9yLXdyYXAgLmF1dGhvci1kZXNjcmlwdGlvbiBwIHN0cm9uZywgLmFyY2hpdmUgLmFib3V0LXRoZS1hdXRob3Itd3JhcCAuYXV0aG9yLWRlc2NyaXB0aW9uIHAgc3Ryb25nLCAudGFnIC5hYm91dC10aGUtYXV0aG9yLXdyYXAgLmF1dGhvci1kZXNjcmlwdGlvbiBwIHN0cm9uZywgLnNpbmdsZS1zdGFmZiAuYWJvdXQtdGhlLWF1dGhvci13cmFwIC5hdXRob3ItZGVzY3JpcHRpb24gcCBzdHJvbmcge1xuICBmb250LXNpemU6IDExNSU7XG59XG4uc2luZ2xlLXBvc3QgLmFib3V0LXRoZS1hdXRob3Itd3JhcCAuYXV0aG9yLWRlc2NyaXB0aW9uLm5vLWF2YXRhciwgLmJsb2cgLmFib3V0LXRoZS1hdXRob3Itd3JhcCAuYXV0aG9yLWRlc2NyaXB0aW9uLm5vLWF2YXRhciwgLnNlYXJjaC1yZXN1bHRzIC5hYm91dC10aGUtYXV0aG9yLXdyYXAgLmF1dGhvci1kZXNjcmlwdGlvbi5uby1hdmF0YXIsIC5zaW5nbGUtc2VydmljZSAuYWJvdXQtdGhlLWF1dGhvci13cmFwIC5hdXRob3ItZGVzY3JpcHRpb24ubm8tYXZhdGFyLCAuYXJjaGl2ZSAuYWJvdXQtdGhlLWF1dGhvci13cmFwIC5hdXRob3ItZGVzY3JpcHRpb24ubm8tYXZhdGFyLCAudGFnIC5hYm91dC10aGUtYXV0aG9yLXdyYXAgLmF1dGhvci1kZXNjcmlwdGlvbi5uby1hdmF0YXIsIC5zaW5nbGUtc3RhZmYgLmFib3V0LXRoZS1hdXRob3Itd3JhcCAuYXV0aG9yLWRlc2NyaXB0aW9uLm5vLWF2YXRhciB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiA2YS4gQmxvZyBMb29wIFNob3J0Y29kZSBTdHlsZXMgKi9cbi5icy1ibG9nLWxvb3AgLmJzLXBvc3QtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbn1cbi5icy1ibG9nLWxvb3AgLmJzLXBvc3QtdGl0bGUgcCBzdHJvbmcge1xuICBmb250LWZhbWlseTogXCJCYXJsb3cgU2VtaSBDb25kZW5zZWRcIiwgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5icy1ibG9nLWxvb3AgLmJzLXBvc3QtdGl0bGUgaDMge1xuICBmb250LXNpemU6IDJyZW0gIWltcG9ydGFudDtcbiAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xuICBsZXR0ZXItc3BhY2luZzogMC4wMjVyZW0gIWltcG9ydGFudDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbn1cbi5icy1ibG9nLWxvb3AgLmJzLXBvc3QtdGl0bGUgaDMgYSB7XG4gIGNvbG9yOiAjMDAxNzE3O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5icy1ibG9nLWxvb3AgLmJsb2ctbWV0YSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xufVxuLmJzLWJsb2ctbG9vcCAuYmxvZy1tZXRhIHAge1xuICBtYXJnaW4tYm90dG9tOiAwLjMxMjVyZW07XG59XG4uYnMtYmxvZy1sb29wIC5ibG9nLW1ldGEgcCBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLmJzLWJsb2ctbG9vcCAuYmxvZy1tZXRhIHAgaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS41cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuMTg3NXJlbTtcbiAgbWluLWhlaWdodDogMS41cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxLjVyZW07XG59XG4uYnMtYmxvZy1sb29wIC5ibG9nLW1ldGEgcC5icy1wb3N0LWRhdGUge1xuICBvcmRlcjogMTtcbn1cbi5icy1ibG9nLWxvb3AgLmJsb2ctbWV0YSBwLmJzLXBvc3QtYnlsaW5lIHtcbiAgb3JkZXI6IDI7XG59XG4uYnMtYmxvZy1sb29wIC5ibG9nLW1ldGEgcC5icy1wb3N0LWJ5bGluZSBzcGFuLmF2YXRhciBpbWcge1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogMC4xODc1cmVtO1xuICBtaXgtYmxlbmQtbW9kZTogbXVsdGlwbHk7XG4gIHdpZHRoOiAxLjVyZW07XG59XG4uYnMtYmxvZy1sb29wIC5ibG9nLW1ldGEgcC5icy1wb3N0LWNhdHMge1xuICBvcmRlcjogMztcbn1cbi5icy1ibG9nLWxvb3AgLmJsb2ctbWV0YSBwLmJzLXBvc3QtY29tbWVudHMge1xuICBvcmRlcjogNDtcbn1cbi5icy1ibG9nLWxvb3AgLmJzLXBvc3QtZXhjZXJwdCB7XG4gIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTtcbn1cbi5icy1ibG9nLWxvb3AgLmJzLXBvc3QtZXhjZXJwdCBwIHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cbi5icy1ibG9nLWxvb3AgLmJsb2ctZm9vdGVyIGEge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDAgIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHBhZGRpbmc6IDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4uYnMtYmxvZy1sb29wIC5ibG9nLWZvb3RlciBhIHNwYW4ge1xuICBib3JkZXItYm90dG9tOiAwLjA2MjVyZW0gc29saWQgIzAwMTcxNztcbn1cbi5icy1ibG9nLWxvb3AuYnMtYmxvZy1sb29wLWxpc3QgYXJ0aWNsZS5icy1zaW5nbGUtcG9zdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLWJvdHRvbTogNXJlbTtcbn1cbi5icy1ibG9nLWxvb3AuYnMtYmxvZy1sb29wLWxpc3QgYXJ0aWNsZS5icy1zaW5nbGUtcG9zdDpsYXN0LW9mLXR5cGUge1xuICBib3JkZXItYm90dG9tOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cbi5icy1ibG9nLWxvb3AuYnMtYmxvZy1sb29wLWxpc3QgYXJ0aWNsZS5icy1zaW5nbGUtcG9zdCAuYmxvZy1mZWF0dXJlZC1pbWFnZSB7XG4gIG9yZGVyOiAyO1xuICB3aWR0aDogMTguNzVyZW07XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgLmJzLWJsb2ctbG9vcC5icy1ibG9nLWxvb3AtbGlzdCBhcnRpY2xlLmJzLXNpbmdsZS1wb3N0IC5ibG9nLWZlYXR1cmVkLWltYWdlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbiAgICBvcmRlcjogMTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuLmJzLWJsb2ctbG9vcC5icy1ibG9nLWxvb3AtbGlzdCBhcnRpY2xlLmJzLXNpbmdsZS1wb3N0IC5lbnRyeS1jb250ZW50IHtcbiAgb3JkZXI6IDE7XG4gIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxOC43NXJlbSk7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgLmJzLWJsb2ctbG9vcC5icy1ibG9nLWxvb3AtbGlzdCBhcnRpY2xlLmJzLXNpbmdsZS1wb3N0IC5lbnRyeS1jb250ZW50IHtcbiAgICBvcmRlcjogMjtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4uYnMtYmxvZy1sb29wLmJzLWJsb2ctbG9vcC1saXN0IGFydGljbGUuYnMtc2luZ2xlLXBvc3QgLmVudHJ5LWNvbnRlbnQudGh1bWJuYWlsLWhpZGRlbiB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmJzLWJsb2ctbG9vcC5icy1ibG9nLWxvb3AtbGlzdCBhcnRpY2xlLmJzLXNpbmdsZS1wb3N0IC5ibG9nLWZvb3RlciBhIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbi5icy1ibG9nLWxvb3AuYnMtYmxvZy1sb29wLWdyaWQsIC5icy1ibG9nLWxvb3AuYnMtYmxvZy1sb29wLWNhcm91c2VsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tbGVmdDogLTEuODc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMi44MTI1cmVtICFpbXBvcnRhbnQ7XG59XG4uYnMtYmxvZy1sb29wLmJzLWJsb2ctbG9vcC1ncmlkIGFydGljbGUuYnMtc2luZ2xlLXBvc3QsIC5icy1ibG9nLWxvb3AuYnMtYmxvZy1sb29wLWNhcm91c2VsIGFydGljbGUuYnMtc2luZ2xlLXBvc3Qge1xuICBtYXJnaW4tYm90dG9tOiAyLjgxMjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAxLjg3NXJlbTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuMnMgZWFzZS1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjJzIGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjJzIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuMnMgZWFzZS1vdXQ7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM3LjVlbSkge1xuICAuYnMtYmxvZy1sb29wLmJzLWJsb2ctbG9vcC1ncmlkIGFydGljbGUuYnMtc2luZ2xlLXBvc3QsIC5icy1ibG9nLWxvb3AuYnMtYmxvZy1sb29wLWNhcm91c2VsIGFydGljbGUuYnMtc2luZ2xlLXBvc3Qge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7XG4gIH1cbn1cbi5icy1ibG9nLWxvb3AuYnMtYmxvZy1sb29wLWdyaWQgYXJ0aWNsZS5icy1zaW5nbGUtcG9zdCAuYmxvZy1mZWF0dXJlZC1pbWFnZSwgLmJzLWJsb2ctbG9vcC5icy1ibG9nLWxvb3AtY2Fyb3VzZWwgYXJ0aWNsZS5icy1zaW5nbGUtcG9zdCAuYmxvZy1mZWF0dXJlZC1pbWFnZSB7XG4gIGJhY2tncm91bmQ6ICMwMDNhNzE7XG4gIGJvcmRlcjogMC4xMjVyZW0gc29saWQgIzAwM2E3MTtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbn1cbi5icy1ibG9nLWxvb3AuYnMtYmxvZy1sb29wLWdyaWQgYXJ0aWNsZS5icy1zaW5nbGUtcG9zdCAuYmxvZy1mZWF0dXJlZC1pbWFnZSBmaWd1cmUsIC5icy1ibG9nLWxvb3AuYnMtYmxvZy1sb29wLWdyaWQgYXJ0aWNsZS5icy1zaW5nbGUtcG9zdCAuYmxvZy1mZWF0dXJlZC1pbWFnZSBhLCAuYnMtYmxvZy1sb29wLmJzLWJsb2ctbG9vcC1jYXJvdXNlbCBhcnRpY2xlLmJzLXNpbmdsZS1wb3N0IC5ibG9nLWZlYXR1cmVkLWltYWdlIGZpZ3VyZSwgLmJzLWJsb2ctbG9vcC5icy1ibG9nLWxvb3AtY2Fyb3VzZWwgYXJ0aWNsZS5icy1zaW5nbGUtcG9zdCAuYmxvZy1mZWF0dXJlZC1pbWFnZSBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxMDAlO1xufVxuLmJzLWJsb2ctbG9vcC5icy1ibG9nLWxvb3AtZ3JpZCBhcnRpY2xlLmJzLXNpbmdsZS1wb3N0IC5ibG9nLWZlYXR1cmVkLWltYWdlIGZpZ3VyZSBpbWcsIC5icy1ibG9nLWxvb3AuYnMtYmxvZy1sb29wLWdyaWQgYXJ0aWNsZS5icy1zaW5nbGUtcG9zdCAuYmxvZy1mZWF0dXJlZC1pbWFnZSBhIGltZywgLmJzLWJsb2ctbG9vcC5icy1ibG9nLWxvb3AtY2Fyb3VzZWwgYXJ0aWNsZS5icy1zaW5nbGUtcG9zdCAuYmxvZy1mZWF0dXJlZC1pbWFnZSBmaWd1cmUgaW1nLCAuYnMtYmxvZy1sb29wLmJzLWJsb2ctbG9vcC1jYXJvdXNlbCBhcnRpY2xlLmJzLXNpbmdsZS1wb3N0IC5ibG9nLWZlYXR1cmVkLWltYWdlIGEgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG59XG4uYnMtYmxvZy1sb29wLmJzLWJsb2ctbG9vcC1ncmlkIGFydGljbGUuYnMtc2luZ2xlLXBvc3QgLmJsb2ctbWV0YSAuYnMtZW50cnktbWV0YSwgLmJzLWJsb2ctbG9vcC5icy1ibG9nLWxvb3AtY2Fyb3VzZWwgYXJ0aWNsZS5icy1zaW5nbGUtcG9zdCAuYmxvZy1tZXRhIC5icy1lbnRyeS1tZXRhIHtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLmJzLWJsb2ctbG9vcC5icy1ibG9nLWxvb3AtZ3JpZCBhcnRpY2xlLmJzLXNpbmdsZS1wb3N0IC5ibG9nLW1ldGEgLmJzLWVudHJ5LW1ldGEgcCwgLmJzLWJsb2ctbG9vcC5icy1ibG9nLWxvb3AtY2Fyb3VzZWwgYXJ0aWNsZS5icy1zaW5nbGUtcG9zdCAuYmxvZy1tZXRhIC5icy1lbnRyeS1tZXRhIHAge1xuICBib3JkZXI6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmJzLWJsb2ctbG9vcC5icy1ibG9nLWxvb3AtZ3JpZCBhcnRpY2xlLmJzLXNpbmdsZS1wb3N0IC5lbnRyeS1jb250ZW50LCAuYnMtYmxvZy1sb29wLmJzLWJsb2ctbG9vcC1jYXJvdXNlbCBhcnRpY2xlLmJzLXNpbmdsZS1wb3N0IC5lbnRyeS1jb250ZW50IHtcbiAgYmFja2dyb3VuZDogI2UxZTFlMTtcbiAgYm9yZGVyOiAwLjEyNXJlbSBzb2xpZCAjMDAzYTcxO1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItYm90dG9tOiAwO1xuICBwYWRkaW5nOiAwLjkzNzVyZW07XG59XG4uYnMtYmxvZy1sb29wLmJzLWJsb2ctbG9vcC1ncmlkIGFydGljbGUuYnMtc2luZ2xlLXBvc3QgLmJzLXBvc3QtZXhjZXJwdCwgLmJzLWJsb2ctbG9vcC5icy1ibG9nLWxvb3AtY2Fyb3VzZWwgYXJ0aWNsZS5icy1zaW5nbGUtcG9zdCAuYnMtcG9zdC1leGNlcnB0IHtcbiAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtO1xufVxuLmJzLWJsb2ctbG9vcC5icy1ibG9nLWxvb3AtZ3JpZCBhcnRpY2xlLmJzLXNpbmdsZS1wb3N0IC5ibG9nLWZvb3RlciwgLmJzLWJsb2ctbG9vcC5icy1ibG9nLWxvb3AtY2Fyb3VzZWwgYXJ0aWNsZS5icy1zaW5nbGUtcG9zdCAuYmxvZy1mb290ZXIge1xuICBtYXJnaW4tYm90dG9tOiAtMC45Mzc1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICB3aWR0aDogY2FsYygxMDAlICsgMS44NzVyZW0pO1xufVxuLmJzLWJsb2ctbG9vcC5icy1ibG9nLWxvb3AtZ3JpZCBhcnRpY2xlLmJzLXNpbmdsZS1wb3N0IC5ibG9nLWZvb3RlciBhLCAuYnMtYmxvZy1sb29wLmJzLWJsb2ctbG9vcC1jYXJvdXNlbCBhcnRpY2xlLmJzLXNpbmdsZS1wb3N0IC5ibG9nLWZvb3RlciBhIHtcbiAgYmFja2dyb3VuZDogIzAwM2E3MTtcbiAgY29sb3I6IHdoaXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgcGFkZGluZzogMC45Mzc1cmVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlLW91dDtcbiAgLW1zLXRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2Utb3V0O1xufVxuLmJzLWJsb2ctbG9vcC5icy1ibG9nLWxvb3AtZ3JpZCBhcnRpY2xlLmJzLXNpbmdsZS1wb3N0IC5ibG9nLWZvb3RlciBhOmhvdmVyLCAuYnMtYmxvZy1sb29wLmJzLWJsb2ctbG9vcC1ncmlkIGFydGljbGUuYnMtc2luZ2xlLXBvc3QgLmJsb2ctZm9vdGVyIGE6Zm9jdXMsIC5icy1ibG9nLWxvb3AuYnMtYmxvZy1sb29wLWNhcm91c2VsIGFydGljbGUuYnMtc2luZ2xlLXBvc3QgLmJsb2ctZm9vdGVyIGE6aG92ZXIsIC5icy1ibG9nLWxvb3AuYnMtYmxvZy1sb29wLWNhcm91c2VsIGFydGljbGUuYnMtc2luZ2xlLXBvc3QgLmJsb2ctZm9vdGVyIGE6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjOTEyNzEyO1xufVxuLmJzLWJsb2ctbG9vcC5icy1ibG9nLWxvb3AtZ3JpZCBhcnRpY2xlLmJzLXNpbmdsZS1wb3N0OmhvdmVyLCAuYnMtYmxvZy1sb29wLmJzLWJsb2ctbG9vcC1ncmlkIGFydGljbGUuYnMtc2luZ2xlLXBvc3Q6Zm9jdXMsIC5icy1ibG9nLWxvb3AuYnMtYmxvZy1sb29wLWNhcm91c2VsIGFydGljbGUuYnMtc2luZ2xlLXBvc3Q6aG92ZXIsIC5icy1ibG9nLWxvb3AuYnMtYmxvZy1sb29wLWNhcm91c2VsIGFydGljbGUuYnMtc2luZ2xlLXBvc3Q6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDEuMjVyZW0gMy43NXJlbSByZ2JhKDAsIDAsIDgwLCAwLjQ1KTtcbn1cbi5icy1ibG9nLWxvb3AuYnMtYmxvZy1sb29wLWdyaWQgYXJ0aWNsZS5icy1zaW5nbGUtcG9zdDpob3ZlciAuYmxvZy1mZWF0dXJlZC1pbWFnZSBmaWd1cmUgaW1nLCAuYnMtYmxvZy1sb29wLmJzLWJsb2ctbG9vcC1ncmlkIGFydGljbGUuYnMtc2luZ2xlLXBvc3Q6aG92ZXIgLmJsb2ctZmVhdHVyZWQtaW1hZ2UgYSBpbWcsIC5icy1ibG9nLWxvb3AuYnMtYmxvZy1sb29wLWdyaWQgYXJ0aWNsZS5icy1zaW5nbGUtcG9zdDpmb2N1cyAuYmxvZy1mZWF0dXJlZC1pbWFnZSBmaWd1cmUgaW1nLCAuYnMtYmxvZy1sb29wLmJzLWJsb2ctbG9vcC1ncmlkIGFydGljbGUuYnMtc2luZ2xlLXBvc3Q6Zm9jdXMgLmJsb2ctZmVhdHVyZWQtaW1hZ2UgYSBpbWcsIC5icy1ibG9nLWxvb3AuYnMtYmxvZy1sb29wLWNhcm91c2VsIGFydGljbGUuYnMtc2luZ2xlLXBvc3Q6aG92ZXIgLmJsb2ctZmVhdHVyZWQtaW1hZ2UgZmlndXJlIGltZywgLmJzLWJsb2ctbG9vcC5icy1ibG9nLWxvb3AtY2Fyb3VzZWwgYXJ0aWNsZS5icy1zaW5nbGUtcG9zdDpob3ZlciAuYmxvZy1mZWF0dXJlZC1pbWFnZSBhIGltZywgLmJzLWJsb2ctbG9vcC5icy1ibG9nLWxvb3AtY2Fyb3VzZWwgYXJ0aWNsZS5icy1zaW5nbGUtcG9zdDpmb2N1cyAuYmxvZy1mZWF0dXJlZC1pbWFnZSBmaWd1cmUgaW1nLCAuYnMtYmxvZy1sb29wLmJzLWJsb2ctbG9vcC1jYXJvdXNlbCBhcnRpY2xlLmJzLXNpbmdsZS1wb3N0OmZvY3VzIC5ibG9nLWZlYXR1cmVkLWltYWdlIGEgaW1nIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZSgzZGVnKTtcbn1cbi5icy1ibG9nLWxvb3AuYnMtYmxvZy1sb29wLWdyaWQuZ3JpZC0yLWNvbHMgYXJ0aWNsZS5icy1zaW5nbGUtcG9zdCwgLmJzLWJsb2ctbG9vcC5icy1ibG9nLWxvb3AtY2Fyb3VzZWwuZ3JpZC0yLWNvbHMgYXJ0aWNsZS5icy1zaW5nbGUtcG9zdCB7XG4gIHdpZHRoOiBjYWxjKDUwJSAtIDEuODc1cmVtKTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzcuNWVtKSB7XG4gIC5icy1ibG9nLWxvb3AuYnMtYmxvZy1sb29wLWdyaWQuZ3JpZC0yLWNvbHMgYXJ0aWNsZS5icy1zaW5nbGUtcG9zdCwgLmJzLWJsb2ctbG9vcC5icy1ibG9nLWxvb3AtY2Fyb3VzZWwuZ3JpZC0yLWNvbHMgYXJ0aWNsZS5icy1zaW5nbGUtcG9zdCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgfVxufVxuLmJzLWJsb2ctbG9vcC5icy1ibG9nLWxvb3AtZ3JpZC5ncmlkLTMtY29scyBhcnRpY2xlLmJzLXNpbmdsZS1wb3N0LCAuYnMtYmxvZy1sb29wLmJzLWJsb2ctbG9vcC1jYXJvdXNlbC5ncmlkLTMtY29scyBhcnRpY2xlLmJzLXNpbmdsZS1wb3N0IHtcbiAgd2lkdGg6IGNhbGMoMzMuMzMzMyUgLSAxLjg3NXJlbSk7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAuYnMtYmxvZy1sb29wLmJzLWJsb2ctbG9vcC1ncmlkLmdyaWQtMy1jb2xzIGFydGljbGUuYnMtc2luZ2xlLXBvc3QsIC5icy1ibG9nLWxvb3AuYnMtYmxvZy1sb29wLWNhcm91c2VsLmdyaWQtMy1jb2xzIGFydGljbGUuYnMtc2luZ2xlLXBvc3Qge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuODc1cmVtKTtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNy41ZW0pIHtcbiAgLmJzLWJsb2ctbG9vcC5icy1ibG9nLWxvb3AtZ3JpZC5ncmlkLTMtY29scyBhcnRpY2xlLmJzLXNpbmdsZS1wb3N0LCAuYnMtYmxvZy1sb29wLmJzLWJsb2ctbG9vcC1jYXJvdXNlbC5ncmlkLTMtY29scyBhcnRpY2xlLmJzLXNpbmdsZS1wb3N0IHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICB9XG59XG4uYnMtYmxvZy1sb29wLmJzLWJsb2ctbG9vcC1ncmlkLmdyaWQtNC1jb2xzIGFydGljbGUuYnMtc2luZ2xlLXBvc3QsIC5icy1ibG9nLWxvb3AuYnMtYmxvZy1sb29wLWNhcm91c2VsLmdyaWQtNC1jb2xzIGFydGljbGUuYnMtc2luZ2xlLXBvc3Qge1xuICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0ZW0pIHtcbiAgLmJzLWJsb2ctbG9vcC5icy1ibG9nLWxvb3AtZ3JpZC5ncmlkLTQtY29scyBhcnRpY2xlLmJzLXNpbmdsZS1wb3N0LCAuYnMtYmxvZy1sb29wLmJzLWJsb2ctbG9vcC1jYXJvdXNlbC5ncmlkLTQtY29scyBhcnRpY2xlLmJzLXNpbmdsZS1wb3N0IHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzcuNWVtKSB7XG4gIC5icy1ibG9nLWxvb3AuYnMtYmxvZy1sb29wLWdyaWQuZ3JpZC00LWNvbHMgYXJ0aWNsZS5icy1zaW5nbGUtcG9zdCwgLmJzLWJsb2ctbG9vcC5icy1ibG9nLWxvb3AtY2Fyb3VzZWwuZ3JpZC00LWNvbHMgYXJ0aWNsZS5icy1zaW5nbGUtcG9zdCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgfVxufVxuLmJzLWJsb2ctbG9vcC5icy1ibG9nLWxvb3AtZ3JpZCBuYXYuY3VzdG9tLXBhZ2luYXRpb24sIC5icy1ibG9nLWxvb3AuYnMtYmxvZy1sb29wLWNhcm91c2VsIG5hdi5jdXN0b20tcGFnaW5hdGlvbiB7XG4gIG1hcmdpbi1sZWZ0OiAxLjg3NXJlbTtcbn1cbi5icy1ibG9nLWxvb3AuYnMtYmxvZy1sb29wLWNhcm91c2VsIGFydGljbGUuYnMtc2luZ2xlLXBvc3Qge1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG59XG4uYnMtYmxvZy1sb29wLmJzLWJsb2ctbG9vcC1jYXJvdXNlbCAuc2xpY2stbGlzdCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmJzLWJsb2ctbG9vcC5icy1ibG9nLWxvb3AtY2Fyb3VzZWwgdWwuc2xpY2stZG90cyB7XG4gIG1hcmdpbi1ib3R0b206IDIuMTg3NXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDEuODc1cmVtO1xuICBtYXJnaW4tdG9wOiAtMS44NzVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgei1pbmRleDogOTk7XG59XG4uYnMtYmxvZy1sb29wLmJzLWJsb2ctbG9vcC1jYXJvdXNlbCB1bC5zbGljay1kb3RzIGxpOm9ubHktY2hpbGQge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmJzLWJsb2ctbG9vcCBuYXYuY3VzdG9tLXBhZ2luYXRpb24ge1xuICBib3JkZXItdG9wOiAwLjEyNXJlbSBzb2xpZCAjMDAzYTcxO1xuICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xuICBwYWRkaW5nLXRvcDogMC45Mzc1cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1MGVtKSB7XG4gIC5icy1ibG9nLWxvb3AgbmF2LmN1c3RvbS1wYWdpbmF0aW9uIHtcbiAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xuICB9XG59XG4uYnMtYmxvZy1sb29wIG5hdi5jdXN0b20tcGFnaW5hdGlvbiAucGFnZS1udW1iZXJzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXdlaWdodDogNzAwO1xuICBoZWlnaHQ6IDEuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS44NzVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB3aWR0aDogMS44NzVyZW07XG59XG4uYnMtYmxvZy1sb29wIG5hdi5jdXN0b20tcGFnaW5hdGlvbiBzcGFuLnBhZ2UtbnVtYmVycy5wYWdlLW51bSB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHdpZHRoOiBhdXRvO1xufVxuLmJzLWJsb2ctbG9vcCBuYXYuY3VzdG9tLXBhZ2luYXRpb24gc3Bhbi5waXBlLXNlcGFyYXRvciB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbWFyZ2luOiAwIDAuNDM3NXJlbTtcbn1cbi5icy1ibG9nLWxvb3AgbmF2LmN1c3RvbS1wYWdpbmF0aW9uIHNwYW4ucGFnZS1udW1iZXJzLmN1cnJlbnQge1xuICBiYWNrZ3JvdW5kOiAjOTEyNzEyO1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuLmJzLWJsb2ctbG9vcCBuYXYuY3VzdG9tLXBhZ2luYXRpb24gYS5wYWdlLW51bWJlcnMge1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xufVxuLmJzLWJsb2ctbG9vcCBuYXYuY3VzdG9tLXBhZ2luYXRpb24gYS5wYWdlLW51bWJlcnM6aG92ZXIsIC5icy1ibG9nLWxvb3AgbmF2LmN1c3RvbS1wYWdpbmF0aW9uIGEucGFnZS1udW1iZXJzOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogIzAwM2E3MTtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5cbi8qIDZiLiBDb21tZW50cyBTZWN0aW9uIFN0eWxlcyAqL1xuc2VjdGlvbiNjb21tZW50cyB7XG4gIGJhY2tncm91bmQ6ICNGMUYzRjU7XG4gIG1hcmdpbjogMnJlbSAwIDAgMDtcbiAgcGFkZGluZzogMC45Mzc1cmVtO1xufVxuc2VjdGlvbiNjb21tZW50cyBvbC5jb21tZW50LWxpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG59XG5zZWN0aW9uI2NvbW1lbnRzIG9sLmNvbW1lbnQtbGlzdCA+IGxpIHtcbiAgYm9yZGVyLWxlZnQ6IDAuMTI1cmVtIHNvbGlkICMwMDNhNzE7XG4gIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbn1cbnNlY3Rpb24jY29tbWVudHMgb2wuY29tbWVudC1saXN0ID4gbGk6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5zZWN0aW9uI2NvbW1lbnRzIG9sLmNvbW1lbnQtbGlzdCA+IGxpIHA6bGFzdC1vZi10eXBlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbnNlY3Rpb24jY29tbWVudHMgb2wuY29tbWVudC1saXN0IGhlYWRlci5jb21tZW50LWF1dGhvciB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBkaXNwbGF5OiBmbGV4O1xufVxuc2VjdGlvbiNjb21tZW50cyBvbC5jb21tZW50LWxpc3QgaGVhZGVyLmNvbW1lbnQtYXV0aG9yIGltZyB7XG4gIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG59XG5zZWN0aW9uI2NvbW1lbnRzIG9sLmNvbW1lbnQtbGlzdCBoZWFkZXIuY29tbWVudC1hdXRob3IgdGltZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuc2VjdGlvbiNjb21tZW50cyBvbC5jb21tZW50LWxpc3QgaGVhZGVyLmNvbW1lbnQtYXV0aG9yIGNpdGUge1xuICBjb2xvcjogIzAwMDAwMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbn1cbnNlY3Rpb24jY29tbWVudHMgb2wuY29tbWVudC1saXN0IHVsLmNoaWxkcmVuIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwLjkzNzVyZW0gMCAwIDA7XG59XG5zZWN0aW9uI2NvbW1lbnRzIG9sLmNvbW1lbnQtbGlzdCB1bC5jaGlsZHJlbiBsaSB7XG4gIGJvcmRlci1sZWZ0OiAwLjEyNXJlbSBzb2xpZCAjMDAzYTcxO1xuICBwYWRkaW5nLWJvdHRvbTogMS4yNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbn1cbnNlY3Rpb24jY29tbWVudHMgb2wuY29tbWVudC1saXN0IHVsLmNoaWxkcmVuIGxpOmxhc3QtY2hpbGQge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cbnNlY3Rpb24jY29tbWVudHMgb2wuY29tbWVudC1saXN0IHVsLmNoaWxkcmVuIGxpIHA6bGFzdC1vZi10eXBlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbnNlY3Rpb24jY29tbWVudHMgb2wuY29tbWVudC1saXN0IGEuY29tbWVudC1yZXBseS1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG5cbnNlY3Rpb24jcmVzcG9uZCB7XG4gIGJhY2tncm91bmQ6ICNGMUYzRjU7XG4gIG1hcmdpbjogMnJlbSAwIDAgMDtcbiAgcGFkZGluZzogMC45Mzc1cmVtO1xufVxuc2VjdGlvbiNyZXNwb25kIHA6bGFzdC1vZi10eXBlIHtcbiAgbWFyZ2luOiAwO1xufVxuc2VjdGlvbiNyZXNwb25kIGZvcm0jY29tbWVudGZvcm0gaW5wdXRbdHlwZT10ZXh0XSwgc2VjdGlvbiNyZXNwb25kIGZvcm0jY29tbWVudGZvcm0gdGV4dGFyZWEge1xuICBib3JkZXI6IDAuMDYyNXJlbSBzb2xpZCAjMDAzYTcxO1xuICBib3JkZXItcmFkaXVzOiAwLjE4NzVyZW07XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIG1pbi1oZWlnaHQ6IDIuODEyNXJlbTtcbn1cbnNlY3Rpb24jcmVzcG9uZCBmb3JtI2NvbW1lbnRmb3JtIGlucHV0LmJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgcGFkZGluZzogMC42MjVyZW07XG59XG5zZWN0aW9uI3Jlc3BvbmQgZm9ybSNjb21tZW50Zm9ybSBsYWJlbCB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi8qIDZjLiBBSkFYIEJsb2cgTG9vcCBTaG9ydGNvZGUgU3R5bGVzICovXG4uYnMtYWpheC1ibG9nLWxvb3AgLmJzLWFqYXgtYmxvZy1sb29wLXdyYXBwZXIge1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuLmJzLWFqYXgtYmxvZy1sb29wIC5icy1hamF4LWJsb2ctbG9vcC13cmFwcGVyIC5icy1hamF4LWJsb2ctbG9vcC1sZWZ0IHtcbiAgaGVpZ2h0OiBhdXRvO1xuICB3aWR0aDogMzMuMzMzMyU7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDUwZW0pIHtcbiAgLmJzLWFqYXgtYmxvZy1sb29wIC5icy1hamF4LWJsb2ctbG9vcC13cmFwcGVyIC5icy1hamF4LWJsb2ctbG9vcC1sZWZ0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuLmJzLWFqYXgtYmxvZy1sb29wIC5icy1hamF4LWJsb2ctbG9vcC13cmFwcGVyIC5icy1hamF4LWJsb2ctbG9vcC1sZWZ0IHVsLmJzLWFqYXgtYmxvZy1pbWFnZXMge1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBoZWlnaHQ6IGF1dG87XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTtcbn1cbi5icy1hamF4LWJsb2ctbG9vcCAuYnMtYWpheC1ibG9nLWxvb3Atd3JhcHBlciAuYnMtYWpheC1ibG9nLWxvb3AtbGVmdCB1bC5icy1hamF4LWJsb2ctaW1hZ2VzIGxpIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbn1cbi5icy1hamF4LWJsb2ctbG9vcCAuYnMtYWpheC1ibG9nLWxvb3Atd3JhcHBlciAuYnMtYWpheC1ibG9nLWxvb3AtbGVmdCB1bC5icy1hamF4LWJsb2ctaW1hZ2VzIC5zbGljay1zbGlkZSwgLmJzLWFqYXgtYmxvZy1sb29wIC5icy1hamF4LWJsb2ctbG9vcC13cmFwcGVyIC5icy1hamF4LWJsb2ctbG9vcC1sZWZ0IHVsLmJzLWFqYXgtYmxvZy1pbWFnZXMgLnNsaWNrLXRyYWNrIHtcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogaGVpZ2h0IDAuMnMgZWFzZS1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogaGVpZ2h0IDAuMnMgZWFzZS1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiBoZWlnaHQgMC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuMnMgZWFzZS1vdXQ7XG59XG4uYnMtYWpheC1ibG9nLWxvb3AgLmJzLWFqYXgtYmxvZy1sb29wLXdyYXBwZXIgLmJzLWFqYXgtYmxvZy1sb29wLWxlZnQgdWwuYnMtYWpheC1ibG9nLWltYWdlcyBidXR0b24uc2xpY2stYXJyb3cge1xuICBib3R0b206IC0xLjI1cmVtO1xuICBjdXJzb3I6IHBvaW50ZXIgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxLjI1cmVtO1xuICBsZWZ0OiAwO1xuICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogNTAlO1xufVxuLmJzLWFqYXgtYmxvZy1sb29wIC5icy1hamF4LWJsb2ctbG9vcC13cmFwcGVyIC5icy1hamF4LWJsb2ctbG9vcC1sZWZ0IHVsLmJzLWFqYXgtYmxvZy1pbWFnZXMgYnV0dG9uLnNsaWNrLW5leHQge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDtcbn1cbi5icy1hamF4LWJsb2ctbG9vcCAuYnMtYWpheC1ibG9nLWxvb3Atd3JhcHBlciAuYnMtYWpheC1ibG9nLWxvb3AtcmlnaHQge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBtYXJnaW4tbGVmdDogMS44NzVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1vdXQ7XG4gIHdpZHRoOiBjYWxjKDY2LjY2NjYlIC0gMS44NzVyZW0pO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1MGVtKSB7XG4gIC5icy1hamF4LWJsb2ctbG9vcCAuYnMtYWpheC1ibG9nLWxvb3Atd3JhcHBlciAuYnMtYWpheC1ibG9nLWxvb3AtcmlnaHQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4uYnMtYWpheC1ibG9nLWxvb3AgLmJzLWFqYXgtYmxvZy1sb29wLXdyYXBwZXIgLmJzLWFqYXgtYmxvZy1sb29wLXJpZ2h0LmxvYWRpbmcge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xufVxuLmJzLWFqYXgtYmxvZy1sb29wIC5icy1hamF4LWJsb2ctbG9vcC13cmFwcGVyIC5icy1hamF4LWJsb2ctbG9vcC1yaWdodC5sb2FkZWQge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xufVxuLmJzLWFqYXgtYmxvZy1sb29wIC5icy1hamF4LWJsb2ctbG9vcC13cmFwcGVyIC5icy1hamF4LWJsb2ctbG9vcC1yaWdodCAuYnMtYWpheC1zd2FwLWFyZWEuYWpheC1sb2FkaW5nIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5icy1hamF4LWJsb2ctbG9vcCAuYnMtYWpheC1ibG9nLWxvb3Atd3JhcHBlciAuYnMtYWpheC1ibG9nLWxvb3AtcmlnaHQgaW1nLmxvYWRpbmctYW5pbWF0aW9uIHtcbiAgbGVmdDogNTAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcbn1cbi5icy1hamF4LWJsb2ctbG9vcCAuYnMtYWpheC1ibG9nLWxvb3Atd3JhcHBlciAuYnMtYWpheC1ibG9nLWxvb3AtcmlnaHQgLmJzLXBvc3QtZmVhdHVyZWQtaW1hZ2UgaW1nIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbn1cbi5icy1hamF4LWJsb2ctbG9vcCAuYnMtYWpheC1ibG9nLWxvb3Atd3JhcHBlciAuYnMtYWpheC1ibG9nLWxvb3AtcmlnaHQgLmJzLXBvc3QtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbn1cbi5icy1hamF4LWJsb2ctbG9vcCAuYnMtYWpheC1ibG9nLWxvb3Atd3JhcHBlciAuYnMtYWpheC1ibG9nLWxvb3AtcmlnaHQgLmJzLXBvc3QtdGl0bGUgaDMgYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5icy1hamF4LWJsb2ctbG9vcCAuYnMtYWpheC1ibG9nLWxvb3Atd3JhcHBlciAuYnMtYWpheC1ibG9nLWxvb3AtcmlnaHQgLmJzLXBvc3QtbWV0YSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xufVxuLmJzLWFqYXgtYmxvZy1sb29wIC5icy1hamF4LWJsb2ctbG9vcC13cmFwcGVyIC5icy1hamF4LWJsb2ctbG9vcC1yaWdodCAuYnMtcG9zdC1tZXRhIHAge1xuICBtYXJnaW4tYm90dG9tOiAwLjMxMjVyZW07XG59XG4uYnMtYWpheC1ibG9nLWxvb3AgLmJzLWFqYXgtYmxvZy1sb29wLXdyYXBwZXIgLmJzLWFqYXgtYmxvZy1sb29wLXJpZ2h0IC5icy1wb3N0LW1ldGEgcCBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLmJzLWFqYXgtYmxvZy1sb29wIC5icy1hamF4LWJsb2ctbG9vcC13cmFwcGVyIC5icy1hamF4LWJsb2ctbG9vcC1yaWdodCAuYnMtcG9zdC1tZXRhIHAgaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS41cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuMTg3NXJlbTtcbiAgbWluLWhlaWdodDogMS41cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxLjVyZW07XG59XG4uYnMtYWpheC1ibG9nLWxvb3AgLmJzLWFqYXgtYmxvZy1sb29wLXdyYXBwZXIgLmJzLWFqYXgtYmxvZy1sb29wLXJpZ2h0IC5icy1wb3N0LW1ldGEgcC5icy1wb3N0LWRhdGUge1xuICBvcmRlcjogMTtcbn1cbi5icy1hamF4LWJsb2ctbG9vcCAuYnMtYWpheC1ibG9nLWxvb3Atd3JhcHBlciAuYnMtYWpheC1ibG9nLWxvb3AtcmlnaHQgLmJzLXBvc3QtbWV0YSBwLmJzLXBvc3QtYnlsaW5lIHtcbiAgb3JkZXI6IDI7XG59XG4uYnMtYWpheC1ibG9nLWxvb3AgLmJzLWFqYXgtYmxvZy1sb29wLXdyYXBwZXIgLmJzLWFqYXgtYmxvZy1sb29wLXJpZ2h0IC5icy1wb3N0LW1ldGEgcC5icy1wb3N0LWJ5bGluZSBzcGFuLmF2YXRhciBpbWcge1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogMC4xODc1cmVtO1xuICBtaXgtYmxlbmQtbW9kZTogbXVsdGlwbHk7XG4gIHdpZHRoOiAxLjVyZW07XG59XG4uYnMtYWpheC1ibG9nLWxvb3AgLmJzLWFqYXgtYmxvZy1sb29wLXdyYXBwZXIgLmJzLWFqYXgtYmxvZy1sb29wLXJpZ2h0IC5icy1wb3N0LW1ldGEgcC5icy1wb3N0LWNhdHMge1xuICBvcmRlcjogMztcbn1cbi5icy1hamF4LWJsb2ctbG9vcCAuYnMtYWpheC1ibG9nLWxvb3Atd3JhcHBlciAuYnMtYWpheC1ibG9nLWxvb3AtcmlnaHQgLmJzLXBvc3QtbWV0YSBwLmJzLXBvc3QtY29tbWVudHMge1xuICBvcmRlcjogNDtcbn1cbi5icy1hamF4LWJsb2ctbG9vcCAuYnMtYWpheC1ibG9nLWxvb3Atd3JhcHBlciAuYnMtYWpheC1ibG9nLWxvb3AtcmlnaHQgLmJzLXBvc3QtZm9vdGVyIGEge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLyoqKiogNy4gUE9SVEZPTElPIFNUWUxFUyAqKioqL1xuLyoqKiogOC4gU0VSVklDRVMgU1RZTEVTICoqKiovXG4vKioqKiA5LiBTVEFGRiBTVFlMRVMgKioqKi9cbi8qIFNpbmdsZSBTdGFmZiBJdGVtIFN0eWxlcyAqL1xuLnNpbmdsZS1zdGFmZiAubWFpbi1jb250ZW50IC5zdGFmZi1mZWF0dXJlZC1pbWFnZSB7XG4gIG1hcmdpbi10b3A6IDAuMzEyNXJlbTtcbiAgbWF4LXdpZHRoOiAyMC42MjVyZW07XG4gIHdpZHRoOiAxMDAlO1xufVxuLnNpbmdsZS1zdGFmZiAubWFpbi1jb250ZW50IHVsLnN0YWZmLWNhdGVnb3J5IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwIDAgMC45Mzc1cmVtIDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG4uc2luZ2xlLXN0YWZmIC5tYWluLWNvbnRlbnQgdWwuc3RhZmYtY2F0ZWdvcnkgbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW07XG59XG4uc2luZ2xlLXN0YWZmIC5tYWluLWNvbnRlbnQgdWwuc3RhZmYtY2F0ZWdvcnkgbGkuY2F0LW5hbWUge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjM3NXJlbTtcbn1cbi5zaW5nbGUtc3RhZmYgLm1haW4tY29udGVudCB1bC5zdGFmZi1jYXRlZ29yeSBsaS5jYXQtbmFtZTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiLFwiO1xufVxuLnNpbmdsZS1zdGFmZiAubWFpbi1jb250ZW50IHVsLnN0YWZmLWNhdGVnb3J5IGxpLmNhdC1uYW1lOmxhc3QtY2hpbGQ6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xufVxuXG4vKiBTdGFmZiBTaG9ydGNvZGUgU3R5bGVzICovXG4uc3RhZmZzLXdyYXBwZXIgLnN0YWZmLWZpbHRlci10b2dnbGUge1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAuc3RhZmZzLXdyYXBwZXIgLnN0YWZmLWZpbHRlci10b2dnbGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4uc3RhZmZzLXdyYXBwZXIgLnN0YWZmLWZpbHRlci10b2dnbGUgYSB7XG4gIGJhY2tncm91bmQ6ICMwMDNhNzE7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHBhZGRpbmc6IDAuNjI1cmVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uc3RhZmZzLXdyYXBwZXIgdWwjZmlsdGVycywgLnN0YWZmcy13cmFwcGVyIHVsW2lkKj1maWx0ZXJzLV0ge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMCAwIDEuMjVyZW0gLTAuOTM3NXJlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLW91dDtcbiAgLW1zLXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2Utb3V0O1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLnN0YWZmcy13cmFwcGVyIHVsI2ZpbHRlcnMsIC5zdGFmZnMtd3JhcHBlciB1bFtpZCo9ZmlsdGVycy1dIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1hcmdpbjogMCAwIDEuMjVyZW0gMDtcbiAgfVxufVxuLnN0YWZmcy13cmFwcGVyIHVsI2ZpbHRlcnMgbGksIC5zdGFmZnMtd3JhcHBlciB1bFtpZCo9ZmlsdGVycy1dIGxpIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAuc3RhZmZzLXdyYXBwZXIgdWwjZmlsdGVycyBsaSwgLnN0YWZmcy13cmFwcGVyIHVsW2lkKj1maWx0ZXJzLV0gbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDAuMTI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuLnN0YWZmcy13cmFwcGVyIHVsI2ZpbHRlcnMgbGkgYSwgLnN0YWZmcy13cmFwcGVyIHVsW2lkKj1maWx0ZXJzLV0gbGkgYSB7XG4gIGJhY2tncm91bmQ6ICMwMDNhNzE7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgcGFkZGluZzogMC4zNzVyZW0gMC45Mzc1cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5zdGFmZnMtd3JhcHBlciB1bCNmaWx0ZXJzIGxpIGEuYWN0aXZlLCAuc3RhZmZzLXdyYXBwZXIgdWwjZmlsdGVycyBsaSBhOmhvdmVyLCAuc3RhZmZzLXdyYXBwZXIgdWwjZmlsdGVycyBsaSBhOmZvY3VzLCAuc3RhZmZzLXdyYXBwZXIgdWxbaWQqPWZpbHRlcnMtXSBsaSBhLmFjdGl2ZSwgLnN0YWZmcy13cmFwcGVyIHVsW2lkKj1maWx0ZXJzLV0gbGkgYTpob3ZlciwgLnN0YWZmcy13cmFwcGVyIHVsW2lkKj1maWx0ZXJzLV0gbGkgYTpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICM5MTI3MTI7XG59XG4uc3RhZmZzLXdyYXBwZXIgLnNpbmdsZS1zdGFmZi1pdGVtIC5zdGFmZi10aHVtYm5haWwgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLnN0YWZmcy13cmFwcGVyIC5zaW5nbGUtc3RhZmYtaXRlbSAuc3RhZmYtdGh1bWJuYWlsIGEgaW1nIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbn1cbi5zdGFmZnMtd3JhcHBlciAuc2luZ2xlLXN0YWZmLWl0ZW06aG92ZXIgLnN0YWZmLXRodW1ibmFpbCBhIGltZywgLnN0YWZmcy13cmFwcGVyIC5zaW5nbGUtc3RhZmYtaXRlbTpmb2N1cyAuc3RhZmYtdGh1bWJuYWlsIGEgaW1nIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZSgzZGVnKTtcbn1cbi5zdGFmZnMtd3JhcHBlci5zdGFmZnMtZGlzcGxheS1ncmlkLmdyaWQtY29scy0xIC5zaW5nbGUtc3RhZmYtaXRlbSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnN0YWZmcy13cmFwcGVyLnN0YWZmcy1kaXNwbGF5LWdyaWQuZ3JpZC1jb2xzLTIgLnNpbmdsZS1zdGFmZi1pdGVtIHtcbiAgd2lkdGg6IDUwJTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMjVlbSkge1xuICAuc3RhZmZzLXdyYXBwZXIuc3RhZmZzLWRpc3BsYXktZ3JpZC5ncmlkLWNvbHMtMiAuc2luZ2xlLXN0YWZmLWl0ZW0ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4uc3RhZmZzLXdyYXBwZXIuc3RhZmZzLWRpc3BsYXktZ3JpZC5ncmlkLWNvbHMtMyAuc2luZ2xlLXN0YWZmLWl0ZW0ge1xuICB3aWR0aDogMzMuMzMzMyU7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAuc3RhZmZzLXdyYXBwZXIuc3RhZmZzLWRpc3BsYXktZ3JpZC5ncmlkLWNvbHMtMyAuc2luZ2xlLXN0YWZmLWl0ZW0ge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMjVlbSkge1xuICAuc3RhZmZzLXdyYXBwZXIuc3RhZmZzLWRpc3BsYXktZ3JpZC5ncmlkLWNvbHMtMyAuc2luZ2xlLXN0YWZmLWl0ZW0ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4uc3RhZmZzLXdyYXBwZXIuc3RhZmZzLWRpc3BsYXktZ3JpZC5ncmlkLWNvbHMtNCAuc2luZ2xlLXN0YWZmLWl0ZW0ge1xuICB3aWR0aDogMjUlO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLnN0YWZmcy13cmFwcGVyLnN0YWZmcy1kaXNwbGF5LWdyaWQuZ3JpZC1jb2xzLTQgLnNpbmdsZS1zdGFmZi1pdGVtIHtcbiAgICB3aWR0aDogMzMuMzMzMyU7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzcuNWVtKSB7XG4gIC5zdGFmZnMtd3JhcHBlci5zdGFmZnMtZGlzcGxheS1ncmlkLmdyaWQtY29scy00IC5zaW5nbGUtc3RhZmYtaXRlbSB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAyNWVtKSB7XG4gIC5zdGFmZnMtd3JhcHBlci5zdGFmZnMtZGlzcGxheS1ncmlkLmdyaWQtY29scy00IC5zaW5nbGUtc3RhZmYtaXRlbSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbi5zdGFmZnMtd3JhcHBlci5zdGFmZnMtZGlzcGxheS1ncmlkIC5zdGFmZnMtY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW46IDAgMCAwIC0xLjI1cmVtO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGhlaWdodCAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGhlaWdodCAwLjJzIGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogaGVpZ2h0IDAuMnMgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IGhlaWdodCAwLjJzIGVhc2Utb3V0O1xufVxuLnN0YWZmcy13cmFwcGVyLnN0YWZmcy1kaXNwbGF5LWdyaWQgLnN0YWZmcy1jb250YWluZXIgLnNpbmdsZS1zdGFmZi1pdGVtIHtcbiAgYm94LXNoYWRvdzogMC41cmVtIDAuNXJlbSAxcmVtIHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gIG1hcmdpbi1ib3R0b206IDVyZW07XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogY2FsYygzMy4zMzMzJSAtIDEuMjVyZW0pO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NGVtKSB7XG4gIC5zdGFmZnMtd3JhcHBlci5zdGFmZnMtZGlzcGxheS1ncmlkIC5zdGFmZnMtY29udGFpbmVyIC5zaW5nbGUtc3RhZmYtaXRlbSB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS4yNXJlbSk7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDBlbSkge1xuICAuc3RhZmZzLXdyYXBwZXIuc3RhZmZzLWRpc3BsYXktZ3JpZCAuc3RhZmZzLWNvbnRhaW5lciAuc2luZ2xlLXN0YWZmLWl0ZW0ge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTtcbiAgfVxufVxuLnN0YWZmcy13cmFwcGVyLnN0YWZmcy1kaXNwbGF5LWdyaWQgLnN0YWZmcy1jb250YWluZXIgLnNpbmdsZS1zdGFmZi1pdGVtIHNlY3Rpb24uc3RhZmYtcGhvdG8gaW1nLnN0YWZmLXRodW1ibmFpbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuLnN0YWZmcy13cmFwcGVyLnN0YWZmcy1kaXNwbGF5LWdyaWQgLnN0YWZmcy1jb250YWluZXIgLnNpbmdsZS1zdGFmZi1pdGVtIHNlY3Rpb24uc3RhZmYtY29udGVudCB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLnN0YWZmcy13cmFwcGVyLnN0YWZmcy1kaXNwbGF5LWdyaWQgLnN0YWZmcy1jb250YWluZXIgLnNpbmdsZS1zdGFmZi1pdGVtIHNlY3Rpb24uc3RhZmYtY29udGVudCBoMi5zdGFmZi10aXRsZSB7XG4gIGNvbG9yOiAjMDAxNzE3ICFpbXBvcnRhbnQ7XG4gIGZvbnQtZmFtaWx5OiBcIkJhcmxvdyBTZW1pIENvbmRlbnNlZFwiLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDJyZW0gIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHBhZGRpbmc6IDIuNXJlbSAyLjVyZW0gMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0ZW0pIHtcbiAgLnN0YWZmcy13cmFwcGVyLnN0YWZmcy1kaXNwbGF5LWdyaWQgLnN0YWZmcy1jb250YWluZXIgLnNpbmdsZS1zdGFmZi1pdGVtIHNlY3Rpb24uc3RhZmYtY29udGVudCBoMi5zdGFmZi10aXRsZSB7XG4gICAgcGFkZGluZzogMS4yNXJlbSAxLjI1cmVtIDA7XG4gIH1cbn1cbi5zdGFmZnMtd3JhcHBlci5zdGFmZnMtZGlzcGxheS1ncmlkIC5zdGFmZnMtY29udGFpbmVyIC5zaW5nbGUtc3RhZmYtaXRlbSBzZWN0aW9uLnN0YWZmLWNvbnRlbnQgcC5zdGFmZi1wb3NpdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uc3RhZmZzLXdyYXBwZXIuc3RhZmZzLWRpc3BsYXktZ3JpZCAuc3RhZmZzLWNvbnRhaW5lciAuc2luZ2xlLXN0YWZmLWl0ZW0gc2VjdGlvbi5zdGFmZi1jb250ZW50IHVsLnN0YWZmLWNhdGVnb3J5IHtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwIDIuNXJlbTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0ZW0pIHtcbiAgLnN0YWZmcy13cmFwcGVyLnN0YWZmcy1kaXNwbGF5LWdyaWQgLnN0YWZmcy1jb250YWluZXIgLnNpbmdsZS1zdGFmZi1pdGVtIHNlY3Rpb24uc3RhZmYtY29udGVudCB1bC5zdGFmZi1jYXRlZ29yeSB7XG4gICAgcGFkZGluZzogMCAxLjI1cmVtO1xuICB9XG59XG4uc3RhZmZzLXdyYXBwZXIuc3RhZmZzLWRpc3BsYXktZ3JpZCAuc3RhZmZzLWNvbnRhaW5lciAuc2luZ2xlLXN0YWZmLWl0ZW0gc2VjdGlvbi5zdGFmZi1jb250ZW50IHVsLnN0YWZmLWNhdGVnb3J5IGxpIHtcbiAgY29sb3I6ICMwMDE3MTcgIWltcG9ydGFudDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogXCJzb3VyY2Utc2Fucy1wcm9cIiwgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cbi5zdGFmZnMtd3JhcHBlci5zdGFmZnMtZGlzcGxheS1ncmlkIC5zdGFmZnMtY29udGFpbmVyIC5zaW5nbGUtc3RhZmYtaXRlbSBzZWN0aW9uLnN0YWZmLWNvbnRlbnQgYS5zdGFmZi1sZWFybi1tb3JlIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGxldHRlci1zcGFjaW5nOiAwLjE1cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luLXRvcDogMC42MjVyZW07XG4gIHBhZGRpbmc6IDIuNXJlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlLW91dDtcbiAgLW1zLXRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2Utb3V0O1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NGVtKSB7XG4gIC5zdGFmZnMtd3JhcHBlci5zdGFmZnMtZGlzcGxheS1ncmlkIC5zdGFmZnMtY29udGFpbmVyIC5zaW5nbGUtc3RhZmYtaXRlbSBzZWN0aW9uLnN0YWZmLWNvbnRlbnQgYS5zdGFmZi1sZWFybi1tb3JlIHtcbiAgICBwYWRkaW5nOiAxLjI1cmVtO1xuICB9XG59XG4uc3RhZmZzLXdyYXBwZXIuc3RhZmZzLWRpc3BsYXktZ3JpZCAuc3RhZmZzLWNvbnRhaW5lciAuc2luZ2xlLXN0YWZmLWl0ZW0gc2VjdGlvbi5zdGFmZi1jb250ZW50IGEuc3RhZmYtbGVhcm4tbW9yZSBzcGFuIHtcbiAgYm9yZGVyLWJvdHRvbTogMC4wNjI1cmVtIHNvbGlkICMwMDE3MTc7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuLnN0YWZmcy13cmFwcGVyLnN0YWZmcy1kaXNwbGF5LWdyaWQgLnN0YWZmcy1jb250YWluZXIgLnNpbmdsZS1zdGFmZi1pdGVtIHNlY3Rpb24uc3RhZmYtY29udGVudCBhLnN0YWZmLWxlYXJuLW1vcmUgaW1nIHtcbiAgbWFyZ2luLWxlZnQ6IDIuNXJlbTtcbiAgd2lkdGg6IDIuNjI1cmVtO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xufVxuLnN0YWZmcy13cmFwcGVyLnN0YWZmcy1kaXNwbGF5LWdyaWQgLnN0YWZmcy1jb250YWluZXIgLnNpbmdsZS1zdGFmZi1pdGVtIHNlY3Rpb24uc3RhZmYtY29udGVudCBhLnN0YWZmLWxlYXJuLW1vcmUgc3Bhbi5uZXdzLWxlYXJuLW1vcmUtaW5uZXIge1xuICBib3JkZXItYm90dG9tOiAwLjA2MjVyZW0gc29saWQgIzAwMTcxNztcbn1cbi5zdGFmZnMtd3JhcHBlci5zdGFmZnMtZGlzcGxheS1ncmlkIC5zdGFmZnMtY29udGFpbmVyIC5zaW5nbGUtc3RhZmYtaXRlbSBzZWN0aW9uLnN0YWZmLWNvbnRlbnQgYS5zdGFmZi1sZWFybi1tb3JlOmhvdmVyLCAuc3RhZmZzLXdyYXBwZXIuc3RhZmZzLWRpc3BsYXktZ3JpZCAuc3RhZmZzLWNvbnRhaW5lciAuc2luZ2xlLXN0YWZmLWl0ZW0gc2VjdGlvbi5zdGFmZi1jb250ZW50IGEuc3RhZmYtbGVhcm4tbW9yZTpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICNGMUYzRjU7XG59XG4uc3RhZmZzLXdyYXBwZXIuc3RhZmZzLWRpc3BsYXktZ3JpZCAuc3RhZmZzLWNvbnRhaW5lciAuc2luZ2xlLXN0YWZmLWl0ZW0gc2VjdGlvbi5zdGFmZi1jb250ZW50IGEuc3RhZmYtbGVhcm4tbW9yZTpob3ZlciBpbWcsIC5zdGFmZnMtd3JhcHBlci5zdGFmZnMtZGlzcGxheS1ncmlkIC5zdGFmZnMtY29udGFpbmVyIC5zaW5nbGUtc3RhZmYtaXRlbSBzZWN0aW9uLnN0YWZmLWNvbnRlbnQgYS5zdGFmZi1sZWFybi1tb3JlOmZvY3VzIGltZyB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xufVxuLnN0YWZmcy13cmFwcGVyLnN0YWZmcy1kaXNwbGF5LWdyaWQgLnN0YWZmcy1jb250YWluZXIgLnNpbmdsZS1zdGFmZi1pdGVtIHNlY3Rpb24uc3RhZmYtY29udGVudDpob3ZlciBoMi5zdGFmZi10aXRsZSwgLnN0YWZmcy13cmFwcGVyLnN0YWZmcy1kaXNwbGF5LWdyaWQgLnN0YWZmcy1jb250YWluZXIgLnNpbmdsZS1zdGFmZi1pdGVtIHNlY3Rpb24uc3RhZmYtY29udGVudDpmb2N1cyBoMi5zdGFmZi10aXRsZSB7XG4gIG9wYWNpdHk6IDE7XG59XG4uc3RhZmZzLXdyYXBwZXIuc3RhZmZzLWRpc3BsYXktZ3JpZCAuc3RhZmZzLWNvbnRhaW5lciAuc2luZ2xlLXN0YWZmLWl0ZW0gc2VjdGlvbi5zdGFmZi1jb250ZW50OmhvdmVyIHVsLnN0YWZmLWNhdGVnb3J5LCAuc3RhZmZzLXdyYXBwZXIuc3RhZmZzLWRpc3BsYXktZ3JpZCAuc3RhZmZzLWNvbnRhaW5lciAuc2luZ2xlLXN0YWZmLWl0ZW0gc2VjdGlvbi5zdGFmZi1jb250ZW50OmZvY3VzIHVsLnN0YWZmLWNhdGVnb3J5IHtcbiAgb3BhY2l0eTogMTtcbn1cbi5zdGFmZnMtd3JhcHBlci5zdGFmZnMtZGlzcGxheS1ncmlkIC5zdGFmZnMtY29udGFpbmVyIC5zaW5nbGUtc3RhZmYtaXRlbSBzZWN0aW9uLnN0YWZmLWJpbyB7XG4gIGJhY2tncm91bmQ6ICNGRkFGMjY7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgbWFyZ2luLXRvcDogMy43NXJlbTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIG9wYWNpdHk6IDA7XG4gIHBhZGRpbmc6IDIuNXJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IC0xO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLW91dDtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjRlbSkge1xuICAuc3RhZmZzLXdyYXBwZXIuc3RhZmZzLWRpc3BsYXktZ3JpZCAuc3RhZmZzLWNvbnRhaW5lciAuc2luZ2xlLXN0YWZmLWl0ZW0gc2VjdGlvbi5zdGFmZi1iaW8ge1xuICAgIHBhZGRpbmc6IDEuMjVyZW07XG4gIH1cbn1cbi5zdGFmZnMtd3JhcHBlci5zdGFmZnMtZGlzcGxheS1ncmlkIC5zdGFmZnMtY29udGFpbmVyIC5zaW5nbGUtc3RhZmYtaXRlbSBzZWN0aW9uLnN0YWZmLWJpbyBhLmNsb3NlLWJpbyB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBoZWlnaHQ6IDEuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgb3BhY2l0eTogMDtcbiAgcmlnaHQ6IDIuMTg3NXJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRvcDogMi44MTI1cmVtO1xuICB0cmFuc2l0aW9uOiBhbGwgMC43NXMgZWFzZS1vdXQgMC41cztcbiAgd2lkdGg6IDEuNXJlbTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB6LWluZGV4OiAxMDA7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0ZW0pIHtcbiAgLnN0YWZmcy13cmFwcGVyLnN0YWZmcy1kaXNwbGF5LWdyaWQgLnN0YWZmcy1jb250YWluZXIgLnNpbmdsZS1zdGFmZi1pdGVtIHNlY3Rpb24uc3RhZmYtYmlvIGEuY2xvc2UtYmlvIHtcbiAgICByaWdodDogMC45Mzc1cmVtO1xuICAgIHRvcDogMS41NjI1cmVtO1xuICB9XG59XG4uc3RhZmZzLXdyYXBwZXIuc3RhZmZzLWRpc3BsYXktZ3JpZCAuc3RhZmZzLWNvbnRhaW5lciAuc2luZ2xlLXN0YWZmLWl0ZW0gc2VjdGlvbi5zdGFmZi1iaW8gaDIge1xuICBjb2xvcjogIzAwMTcxNyAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDJyZW0gIWltcG9ydGFudDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTVyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG4gIG9wYWNpdHk6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDBweCk7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2Utb3V0O1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4uc3RhZmZzLXdyYXBwZXIuc3RhZmZzLWRpc3BsYXktZ3JpZCAuc3RhZmZzLWNvbnRhaW5lciAuc2luZ2xlLXN0YWZmLWl0ZW0gc2VjdGlvbi5zdGFmZi1iaW8gcCB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgZm9udC1mYW1pbHk6IFwic291cmNlLXNhbnMtcHJvXCIsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNTBweCk7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2Utb3V0O1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4uc3RhZmZzLXdyYXBwZXIuc3RhZmZzLWRpc3BsYXktZ3JpZCAuc3RhZmZzLWNvbnRhaW5lciAuc2luZ2xlLXN0YWZmLWl0ZW0gc2VjdGlvbi5zdGFmZi1iaW8gcDpsYXN0LW9mLXR5cGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnN0YWZmcy13cmFwcGVyLnN0YWZmcy1kaXNwbGF5LWdyaWQgLnN0YWZmcy1jb250YWluZXIgLnNpbmdsZS1zdGFmZi1pdGVtIHNlY3Rpb24uc3RhZmYtYmlvLmlzLWFjdGl2ZSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIHotaW5kZXg6IDEwO1xufVxuLnN0YWZmcy13cmFwcGVyLnN0YWZmcy1kaXNwbGF5LWdyaWQgLnN0YWZmcy1jb250YWluZXIgLnNpbmdsZS1zdGFmZi1pdGVtIHNlY3Rpb24uc3RhZmYtYmlvLmlzLWFjdGl2ZSBoMiwgLnN0YWZmcy13cmFwcGVyLnN0YWZmcy1kaXNwbGF5LWdyaWQgLnN0YWZmcy1jb250YWluZXIgLnNpbmdsZS1zdGFmZi1pdGVtIHNlY3Rpb24uc3RhZmYtYmlvLmlzLWFjdGl2ZSBwLCAuc3RhZmZzLXdyYXBwZXIuc3RhZmZzLWRpc3BsYXktZ3JpZCAuc3RhZmZzLWNvbnRhaW5lciAuc2luZ2xlLXN0YWZmLWl0ZW0gc2VjdGlvbi5zdGFmZi1iaW8uaXMtYWN0aXZlIGEuY2xvc2UtYmlvIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cbi5zdGFmZnMtd3JhcHBlci5zdGFmZnMtZGlzcGxheS1ncmlkIC5zdGFmZnMtY29udGFpbmVyIC5zaW5nbGUtc3RhZmYtaXRlbSAuc2luZ2xlLXN0YWZmLWxpbmsuc3RhZmYtaGFzLW5vLWJpbyAuc3RhZmYtY2F0ZWdvcnkge1xuICBwYWRkaW5nLWJvdHRvbTogMi41cmVtO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLnN0YWZmcy13cmFwcGVyLnN0YWZmcy1kaXNwbGF5LWdyaWQgLnN0YWZmcy1jb250YWluZXIgLnNpbmdsZS1zdGFmZi1pdGVtIC5zaW5nbGUtc3RhZmYtbGluay5zdGFmZi1oYXMtbm8tYmlvIC5zdGFmZi1jYXRlZ29yeSB7XG4gICAgcGFkZGluZy1ib3R0b206IDEuMjVyZW07XG4gIH1cbn1cbi5zdGFmZnMtd3JhcHBlci5zdGFmZnMtZGlzcGxheS1saXN0IC5zaW5nbGUtc3RhZmYtaXRlbSB7XG4gIGJvcmRlci1ib3R0b206IDAuMDYyNXJlbSBzb2xpZCAjMDAzYTcxO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1ib3R0b206IDEuNTYyNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDEuNTYyNXJlbTtcbn1cbi5zdGFmZnMtd3JhcHBlci5zdGFmZnMtZGlzcGxheS1saXN0IC5zaW5nbGUtc3RhZmYtaXRlbTpsYXN0LW9mLXR5cGUge1xuICBib3JkZXItYm90dG9tOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cbi5zdGFmZnMtd3JhcHBlci5zdGFmZnMtZGlzcGxheS1saXN0IC5zaW5nbGUtc3RhZmYtaXRlbSAuc3RhZmYtdGh1bWJuYWlsIHtcbiAgb3JkZXI6IDI7XG4gIHdpZHRoOiAxOC43NXJlbTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDBlbSkge1xuICAuc3RhZmZzLXdyYXBwZXIuc3RhZmZzLWRpc3BsYXktbGlzdCAuc2luZ2xlLXN0YWZmLWl0ZW0gLnN0YWZmLXRodW1ibmFpbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG4gICAgb3JkZXI6IDE7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbi5zdGFmZnMtd3JhcHBlci5zdGFmZnMtZGlzcGxheS1saXN0IC5zaW5nbGUtc3RhZmYtaXRlbSAuc3RhZmYtdGh1bWJuYWlsIGltZyB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnN0YWZmcy13cmFwcGVyLnN0YWZmcy1kaXNwbGF5LWxpc3QgLnNpbmdsZS1zdGFmZi1pdGVtIC5zdGFmZi1jb250ZW50IHtcbiAgb3JkZXI6IDE7XG4gIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxOC43NXJlbSk7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgLnN0YWZmcy13cmFwcGVyLnN0YWZmcy1kaXNwbGF5LWxpc3QgLnNpbmdsZS1zdGFmZi1pdGVtIC5zdGFmZi1jb250ZW50IHtcbiAgICBvcmRlcjogMjtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4uc3RhZmZzLXdyYXBwZXIuc3RhZmZzLWRpc3BsYXktbGlzdCAuc2luZ2xlLXN0YWZmLWl0ZW0gLnN0YWZmLWNvbnRlbnQgcC5zdGFmZi1tZXRhIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5zdGFmZnMtd3JhcHBlci5zdGFmZnMtZGlzcGxheS1saXN0IC5zaW5nbGUtc3RhZmYtaXRlbSAuc3RhZmYtY29udGVudCBwLnN0YWZmLW1ldGEgaSB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICB3aWR0aDogMS4yNXJlbTtcbn1cbi5zdGFmZnMtd3JhcHBlci5zdGFmZnMtZGlzcGxheS1saXN0IC5zaW5nbGUtc3RhZmYtaXRlbSAuc3RhZmYtY29udGVudCB1bC5zdGFmZi1jYXRlZ29yeSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwIDAgMC42MjVyZW0gMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG59XG4uc3RhZmZzLXdyYXBwZXIuc3RhZmZzLWRpc3BsYXktbGlzdCAuc2luZ2xlLXN0YWZmLWl0ZW0gLnN0YWZmLWNvbnRlbnQgdWwuc3RhZmYtY2F0ZWdvcnkgbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICB3aWR0aDogMS40Mzc1cmVtO1xufVxuLnN0YWZmcy13cmFwcGVyLnN0YWZmcy1kaXNwbGF5LWxpc3QgLnNpbmdsZS1zdGFmZi1pdGVtIC5zdGFmZi1jb250ZW50IHVsLnN0YWZmLWNhdGVnb3J5IGxpLmNhdC1uYW1lIHtcbiAgd2lkdGg6IGF1dG87XG59XG4uc3RhZmZzLXdyYXBwZXIuc3RhZmZzLWRpc3BsYXktbGlzdCAuc2luZ2xlLXN0YWZmLWl0ZW0gLnN0YWZmLWNvbnRlbnQgdWwuc3RhZmYtY2F0ZWdvcnkgbGkuY2F0LW5hbWU6YWZ0ZXIge1xuICBjb250ZW50OiBcIixcIjtcbn1cbi5zdGFmZnMtd3JhcHBlci5zdGFmZnMtZGlzcGxheS1saXN0IC5zaW5nbGUtc3RhZmYtaXRlbSAuc3RhZmYtY29udGVudCB1bC5zdGFmZi1jYXRlZ29yeSBsaS5jYXQtbmFtZTpsYXN0LW9mLXR5cGU6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xufVxuLnN0YWZmcy13cmFwcGVyLnN0YWZmcy1kaXNwbGF5LWxpc3QgLnNpbmdsZS1zdGFmZi1pdGVtIC5zdGFmZi1jb250ZW50IC5zdGFmZi1yZWFkLW1vcmUge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4vKioqKiAxMC4gNDA0IFBBR0UgU1RZTEVTICoqKiovXG4uZXJyb3I0MDQgLm1haW4td3JhcC5uby1zaWRlYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4uZXJyb3I0MDQgLm1haW4td3JhcC5uby1zaWRlYmFyIGFydGljbGUubWFpbi1jb250ZW50IHtcbiAgbWF4LXdpZHRoOiA1MHJlbTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qKioqIDExLiBGT09URVIgU1RZTEVTICoqKiovXG5mb290ZXIuZm9vdGVyIC53aWRnZXQge1xuICBwYWRkaW5nOiAwIDAuOTM3NXJlbTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDBlbSkge1xuICBmb290ZXIuZm9vdGVyIC53aWRnZXQge1xuICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcbiAgfVxuICBmb290ZXIuZm9vdGVyIC53aWRnZXQ6bGFzdC1vZi10eXBlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5mb290ZXIuZm9vdGVyIC53aWRnZXQgcDpsYXN0LW9mLXR5cGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuZm9vdGVyLmZvb3RlciBoNiB7XG4gIGZvbnQtc2l6ZTogMS41cmVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDAuMzEyNXJlbSAhaW1wb3J0YW50O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuZm9vdGVyLmZvb3RlciB1bC5tZW51IHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbmZvb3Rlci5mb290ZXIgdWwubWVudSBsaSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwO1xufVxuZm9vdGVyLmZvb3RlciB1bC5tZW51IGxpIGEge1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgMC4ycyBlYXNlLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBjb2xvciAwLjJzIGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogY29sb3IgMC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4ycyBlYXNlLW91dDtcbn1cbmZvb3Rlci5mb290ZXIgdWwubWVudSBsaS5pcy1hY3RpdmUgYSB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG5kaXYjYnMtc2l0ZXdpZGUtcG9wdXAgLmJzLXBvcHVwLW92ZXJsYXkge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xuICBib3R0b206IDA7XG4gIGN1cnNvcjogcG9pbnRlciAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDEwMDA7XG59XG5kaXYjYnMtc2l0ZXdpZGUtcG9wdXAgLmJzLXBvcHVwLWlubmVyIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm9yZGVyOiAwLjEyNXJlbSBzb2xpZCAjMDAzYTcxO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtaGVpZ2h0OiA4MHZoO1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgcGFkZGluZzogMS44NzVyZW07XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuICB3aWR0aDogMzcuNXJlbTtcbiAgei1pbmRleDogMTAwMTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbn1cbmRpdiNicy1zaXRld2lkZS1wb3B1cCAuYnMtcG9wdXAtaW5uZXIgaDIsIGRpdiNicy1zaXRld2lkZS1wb3B1cCAuYnMtcG9wdXAtaW5uZXIgaDMsIGRpdiNicy1zaXRld2lkZS1wb3B1cCAuYnMtcG9wdXAtaW5uZXIgaDQsIGRpdiNicy1zaXRld2lkZS1wb3B1cCAuYnMtcG9wdXAtaW5uZXIgaDUsIGRpdiNicy1zaXRld2lkZS1wb3B1cCAuYnMtcG9wdXAtaW5uZXIgaDYge1xuICBjb2xvcjogIzAwM2E3MTtcbn1cbmRpdiNicy1zaXRld2lkZS1wb3B1cCAuYnMtcG9wdXAtaW5uZXIgcCB7XG4gIGNvbG9yOiAjMDAwMDAwO1xufVxuZGl2I2JzLXNpdGV3aWRlLXBvcHVwIC5icy1wb3B1cC1jbG9zZSB7XG4gIGJhY2tncm91bmQ6ICMwMDAwMDA7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBjdXJzb3I6IHBvaW50ZXIgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiA1cmVtO1xuICBoZWlnaHQ6IDVyZW07XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDVyZW07XG4gIHotaW5kZXg6IDEwMDE7XG59XG5kaXYjYnMtc2l0ZXdpZGUtcG9wdXAgLmJzLXBvcHVwLWhpZGUtZm9yZXZlciB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5kaXYjYnMtc2l0ZXdpZGUtcG9wdXAucG9wdXAtYm90dG9tLWxlZnQgLmJzLXBvcHVwLWlubmVyLCBkaXYjYnMtc2l0ZXdpZGUtcG9wdXAucG9wdXAtYm90dG9tLXJpZ2h0IC5icy1wb3B1cC1pbm5lciwgZGl2I2JzLXNpdGV3aWRlLXBvcHVwLnBvcHVwLWJvdHRvbS1mdWxsIC5icy1wb3B1cC1pbm5lciB7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGF1dG87XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgdG9wOiBhdXRvO1xufVxuZGl2I2JzLXNpdGV3aWRlLXBvcHVwLnBvcHVwLWJvdHRvbS1yaWdodCAuYnMtcG9wdXAtaW5uZXIge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDtcbn1cbmRpdiNicy1zaXRld2lkZS1wb3B1cC5wb3B1cC1ib3R0b20tZnVsbCAuYnMtcG9wdXAtaW5uZXIge1xuICBsZWZ0OiAwO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMTAwJTtcbn1cblxuZGl2I2luc3RhZmVlZC5oYXMtYXJyb3dzIHtcbiAgcGFkZGluZzogMCAxLjg3NXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuZGl2I2luc3RhZmVlZC5oYXMtYXJyb3dzIC5zbGljay1hcnJvdyB7XG4gIGJhY2tncm91bmQ6ICMwMDNhNzE7XG4gIGJvcmRlci1yYWRpdXM6IDAuMTg3NXJlbTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgaGVpZ2h0OiAxLjVyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBjYWxjKDUwJSAtIDFyZW0pO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHdpZHRoOiAxLjVyZW07XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlLW91dDtcbiAgLW1zLXRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2Utb3V0O1xufVxuZGl2I2luc3RhZmVlZC5oYXMtYXJyb3dzIC5zbGljay1hcnJvdzpob3ZlciwgZGl2I2luc3RhZmVlZC5oYXMtYXJyb3dzIC5zbGljay1hcnJvdzpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICM5MTI3MTI7XG59XG5kaXYjaW5zdGFmZWVkLmhhcy1hcnJvd3MgLnNsaWNrLWFycm93LnNsaWNrLXByZXYge1xuICBsZWZ0OiAwO1xufVxuZGl2I2luc3RhZmVlZC5oYXMtYXJyb3dzIC5zbGljay1hcnJvdy5zbGljay1uZXh0IHtcbiAgcmlnaHQ6IDA7XG59XG5kaXYjaW5zdGFmZWVkIGEuaW5zdGFncmFtLWltYWdlIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuZGl2I2luc3RhZmVlZCBhLmluc3RhZ3JhbS1pbWFnZSBzcGFuLmlnLWNhcHRpb24ge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDU4LCAxMTMsIDAuODUpO1xuICBib3R0b206IDA7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG59XG5kaXYjaW5zdGFmZWVkIGEuaW5zdGFncmFtLWltYWdlIGltZyB7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbn1cbmRpdiNpbnN0YWZlZWQgYS5pbnN0YWdyYW0taW1hZ2U6aG92ZXIgc3Bhbi5pZy1jYXB0aW9uLCBkaXYjaW5zdGFmZWVkIGEuaW5zdGFncmFtLWltYWdlOmZvY3VzIHNwYW4uaWctY2FwdGlvbiB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbn1cbmRpdiNpbnN0YWZlZWQgYS5pbnN0YWdyYW0taW1hZ2U6aG92ZXIgaW1nLCBkaXYjaW5zdGFmZWVkIGEuaW5zdGFncmFtLWltYWdlOmZvY3VzIGltZyB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoM2RlZyk7XG59XG5kaXYjaW5zdGFmZWVkIC5zbGljay1saXN0LmRyYWdnYWJsZSB7XG4gIG1hcmdpbi1sZWZ0OiAtMS4yNXJlbTtcbn1cbmRpdiNpbnN0YWZlZWQgLnNsaWNrLWxpc3QuZHJhZ2dhYmxlIGEuaW5zdGFncmFtLWltYWdlLnNsaWNrLXNsaWRlIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG59XG5cbnVsLnNsaWNrLWRvdHMge1xuICBsaW5lLWhlaWdodDogMTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwLjkzNzVyZW0gMCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG51bC5zbGljay1kb3RzIGxpIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm9yZGVyOiAwLjEyNXJlbSBzb2xpZCAjMDAzYTcxO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAwLjg3NXJlbTtcbiAgbWFyZ2luOiAwIDAuMzEyNXJlbTtcbiAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gIHdpZHRoOiAwLjg3NXJlbTtcbn1cbnVsLnNsaWNrLWRvdHMgbGkuc2xpY2stYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogIzAwM2E3MTtcbn1cblxuLyogU2xpZGVyICovXG4uc2xpY2stc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uc2xpY2stbGlzdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cbi5zbGljay1saXN0OmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cbi5zbGljay1saXN0LmRyYWdnaW5nIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjdXJzb3I6IGhhbmQ7XG59XG5cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnNsaWNrLXRyYWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuLnNsaWNrLXRyYWNrOmJlZm9yZSwgLnNsaWNrLXRyYWNrOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogdGFibGU7XG59XG4uc2xpY2stdHJhY2s6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cbi5zbGljay1sb2FkaW5nIC5zbGljay10cmFjayB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWNrLXNsaWRlIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMXB4O1xufVxuW2Rpcj1ydGxdIC5zbGljay1zbGlkZSB7XG4gIGZsb2F0OiByaWdodDtcbn1cbi5zbGljay1zbGlkZSBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5zbGljay1zbGlkZS5zbGljay1sb2FkaW5nIGltZyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uc2xpY2stc2xpZGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnNsaWNrLXNsaWRlLmRyYWdnaW5nIGltZyB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1zbGlkZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXNsaWRlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLnNsaWNrLXZlcnRpY2FsIC5zbGljay1zbGlkZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IGF1dG87XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuaW5wdXQ6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuICBvcGFjaXR5OiAxO1xufVxuXG5ib2R5Lndvb2NvbW1lcmNlIHNwYW4ucmVxdWlyZWQsIGJvZHkud29vY29tbWVyY2UtcGFnZSBzcGFuLnJlcXVpcmVkLCBkaXYud29vY29tbWVyY2Ugc3Bhbi5yZXF1aXJlZCB7XG4gIGNvbG9yOiAjOTEyNzEyICFpbXBvcnRhbnQ7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC5zdGFyLXJhdGluZzpiZWZvcmUsIGJvZHkud29vY29tbWVyY2UtcGFnZSAuc3Rhci1yYXRpbmc6YmVmb3JlLCBkaXYud29vY29tbWVyY2UgLnN0YXItcmF0aW5nOmJlZm9yZSB7XG4gIGNvbG9yOiAjYjk5YzAwO1xufVxuYm9keS53b29jb21tZXJjZSAuc3Rhci1yYXRpbmcgc3BhbiwgYm9keS53b29jb21tZXJjZS1wYWdlIC5zdGFyLXJhdGluZyBzcGFuLCBkaXYud29vY29tbWVyY2UgLnN0YXItcmF0aW5nIHNwYW4ge1xuICBmb250LWZhbWlseTogc3RhciAhaW1wb3J0YW50O1xufVxuYm9keS53b29jb21tZXJjZSAuc3Rhci1yYXRpbmcgc3BhbjpiZWZvcmUsIGJvZHkud29vY29tbWVyY2UtcGFnZSAuc3Rhci1yYXRpbmcgc3BhbjpiZWZvcmUsIGRpdi53b29jb21tZXJjZSAuc3Rhci1yYXRpbmcgc3BhbjpiZWZvcmUge1xuICBjb2xvcjogI2I5OWMwMCAhaW1wb3J0YW50O1xufVxuYm9keS53b29jb21tZXJjZSBwLndvb2NvbW1lcmNlLXJlc3VsdC1jb3VudCwgYm9keS53b29jb21tZXJjZS1wYWdlIHAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50LCBkaXYud29vY29tbWVyY2UgcC53b29jb21tZXJjZS1yZXN1bHQtY291bnQge1xuICBmb250LXdlaWdodDogNzAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLW9yZGVyaW5nIHNlbGVjdCwgYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2Utb3JkZXJpbmcgc2VsZWN0LCBkaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1vcmRlcmluZyBzZWxlY3Qge1xuICBib3JkZXI6IDAuMDYyNXJlbSBzb2xpZCAjMDAzYTcxO1xuICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbTtcbn1cbmJvZHkud29vY29tbWVyY2UgLmJyZWFkY3J1bWJzLXdyYXBwZXIgbmF2Lndvb2NvbW1lcmNlLWJyZWFkY3J1bWIsIGJvZHkud29vY29tbWVyY2UtcGFnZSAuYnJlYWRjcnVtYnMtd3JhcHBlciBuYXYud29vY29tbWVyY2UtYnJlYWRjcnVtYiwgZGl2Lndvb2NvbW1lcmNlIC5icmVhZGNydW1icy13cmFwcGVyIG5hdi53b29jb21tZXJjZS1icmVhZGNydW1iIHtcbiAgY29sb3I6ICMzMzM7XG4gIGZvbnQtZmFtaWx5OiBcIkJhcmxvdyBTZW1pIENvbmRlbnNlZFwiLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbjogMXJlbSAwICFpbXBvcnRhbnQ7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC5icmVhZGNydW1icy13cmFwcGVyIG5hdi53b29jb21tZXJjZS1icmVhZGNydW1iIHNwYW4uc2VwYXJhdG9yLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLmJyZWFkY3J1bWJzLXdyYXBwZXIgbmF2Lndvb2NvbW1lcmNlLWJyZWFkY3J1bWIgc3Bhbi5zZXBhcmF0b3IsIGRpdi53b29jb21tZXJjZSAuYnJlYWRjcnVtYnMtd3JhcHBlciBuYXYud29vY29tbWVyY2UtYnJlYWRjcnVtYiBzcGFuLnNlcGFyYXRvciB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbjogMCAwLjYyNXJlbTtcbn1cbmJvZHkud29vY29tbWVyY2UgLmJyZWFkY3J1bWJzLXdyYXBwZXIgbmF2Lndvb2NvbW1lcmNlLWJyZWFkY3J1bWIgYSwgYm9keS53b29jb21tZXJjZS1wYWdlIC5icmVhZGNydW1icy13cmFwcGVyIG5hdi53b29jb21tZXJjZS1icmVhZGNydW1iIGEsIGRpdi53b29jb21tZXJjZSAuYnJlYWRjcnVtYnMtd3JhcHBlciBuYXYud29vY29tbWVyY2UtYnJlYWRjcnVtYiBhIHtcbiAgZm9udC1mYW1pbHk6IFwiQmFybG93IFNlbWkgQ29uZGVuc2VkXCIsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbmJvZHkud29vY29tbWVyY2UgLmJyZWFkY3J1bWJzLXdyYXBwZXIuc2hvcC1sYXlvdXQtbmFycm93LWNvbnRlbnQsIGJvZHkud29vY29tbWVyY2UtcGFnZSAuYnJlYWRjcnVtYnMtd3JhcHBlci5zaG9wLWxheW91dC1uYXJyb3ctY29udGVudCwgZGl2Lndvb2NvbW1lcmNlIC5icmVhZGNydW1icy13cmFwcGVyLnNob3AtbGF5b3V0LW5hcnJvdy1jb250ZW50IHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWF4LXdpZHRoOiA1MS44NzVyZW07XG4gIHdpZHRoOiAxMDAlO1xufVxuYm9keS53b29jb21tZXJjZSAud29vY29tbWVyY2Utc2hvcC10aXRsZSwgYm9keS53b29jb21tZXJjZS1wYWdlIC53b29jb21tZXJjZS1zaG9wLXRpdGxlLCBkaXYud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXNob3AtdGl0bGUge1xuICBwYWRkaW5nOiAxLjU2MjVyZW0gMC45Mzc1cmVtIDA7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICBib2R5Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1zaG9wLXRpdGxlLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLndvb2NvbW1lcmNlLXNob3AtdGl0bGUsIGRpdi53b29jb21tZXJjZSAud29vY29tbWVyY2Utc2hvcC10aXRsZSB7XG4gICAgcGFkZGluZzogMS41cmVtIDAuOTM3NXJlbSAxLjI1cmVtO1xuICB9XG59XG5ib2R5Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1zaG9wLXRpdGxlIGgxLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLndvb2NvbW1lcmNlLXNob3AtdGl0bGUgaDEsIGRpdi53b29jb21tZXJjZSAud29vY29tbWVyY2Utc2hvcC10aXRsZSBoMSB7XG4gIGZvbnQtc2l6ZTogMi41cmVtICFpbXBvcnRhbnQ7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1zaG9wLXRpdGxlIGgxIGksIGJvZHkud29vY29tbWVyY2UtcGFnZSAud29vY29tbWVyY2Utc2hvcC10aXRsZSBoMSBpLCBkaXYud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXNob3AtdGl0bGUgaDEgaSB7XG4gIGZvbnQtc2l6ZTogMS44NzVyZW0gIWltcG9ydGFudDtcbn1cbmJvZHkud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXNob3AtdGl0bGUuc2hvcC1sYXlvdXQtbmFycm93LWNvbnRlbnQsIGJvZHkud29vY29tbWVyY2UtcGFnZSAud29vY29tbWVyY2Utc2hvcC10aXRsZS5zaG9wLWxheW91dC1uYXJyb3ctY29udGVudCwgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1zaG9wLXRpdGxlLnNob3AtbGF5b3V0LW5hcnJvdy1jb250ZW50IHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWF4LXdpZHRoOiA1MS44NzVyZW07XG4gIHdpZHRoOiAxMDAlO1xufVxuYm9keS53b29jb21tZXJjZSAubWFpbi13cmFwLnNob3AtbGF5b3V0LXNpZGViYXItbGVmdCBhcnRpY2xlLm1haW4tY29udGVudC53b29jb21tZXJjZS1pbmRleCwgYm9keS53b29jb21tZXJjZS1wYWdlIC5tYWluLXdyYXAuc2hvcC1sYXlvdXQtc2lkZWJhci1sZWZ0IGFydGljbGUubWFpbi1jb250ZW50Lndvb2NvbW1lcmNlLWluZGV4LCBkaXYud29vY29tbWVyY2UgLm1haW4td3JhcC5zaG9wLWxheW91dC1zaWRlYmFyLWxlZnQgYXJ0aWNsZS5tYWluLWNvbnRlbnQud29vY29tbWVyY2UtaW5kZXgge1xuICBvcmRlcjogMjtcbn1cbmJvZHkud29vY29tbWVyY2UgLm1haW4td3JhcC5zaG9wLWxheW91dC1zaWRlYmFyLWxlZnQgYXNpZGUud29vY29tbWVyY2Utc2lkZWJhci5zaWRlYmFyLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLm1haW4td3JhcC5zaG9wLWxheW91dC1zaWRlYmFyLWxlZnQgYXNpZGUud29vY29tbWVyY2Utc2lkZWJhci5zaWRlYmFyLCBkaXYud29vY29tbWVyY2UgLm1haW4td3JhcC5zaG9wLWxheW91dC1zaWRlYmFyLWxlZnQgYXNpZGUud29vY29tbWVyY2Utc2lkZWJhci5zaWRlYmFyIHtcbiAgb3JkZXI6IDE7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC5tYWluLXdyYXAuc2hvcC1sYXlvdXQtc2lkZWJhci1yaWdodCBhcnRpY2xlLm1haW4tY29udGVudC53b29jb21tZXJjZS1pbmRleCwgYm9keS53b29jb21tZXJjZS1wYWdlIC5tYWluLXdyYXAuc2hvcC1sYXlvdXQtc2lkZWJhci1yaWdodCBhcnRpY2xlLm1haW4tY29udGVudC53b29jb21tZXJjZS1pbmRleCwgZGl2Lndvb2NvbW1lcmNlIC5tYWluLXdyYXAuc2hvcC1sYXlvdXQtc2lkZWJhci1yaWdodCBhcnRpY2xlLm1haW4tY29udGVudC53b29jb21tZXJjZS1pbmRleCB7XG4gIG9yZGVyOiAxO1xufVxuYm9keS53b29jb21tZXJjZSAubWFpbi13cmFwLnNob3AtbGF5b3V0LXNpZGViYXItcmlnaHQgYXNpZGUud29vY29tbWVyY2Utc2lkZWJhci5zaWRlYmFyLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLm1haW4td3JhcC5zaG9wLWxheW91dC1zaWRlYmFyLXJpZ2h0IGFzaWRlLndvb2NvbW1lcmNlLXNpZGViYXIuc2lkZWJhciwgZGl2Lndvb2NvbW1lcmNlIC5tYWluLXdyYXAuc2hvcC1sYXlvdXQtc2lkZWJhci1yaWdodCBhc2lkZS53b29jb21tZXJjZS1zaWRlYmFyLnNpZGViYXIge1xuICBvcmRlcjogMjtcbn1cbmJvZHkud29vY29tbWVyY2UgLm1haW4td3JhcC5zaG9wLWxheW91dC1mdWxsLXdpZHRoIGFydGljbGUubWFpbi1jb250ZW50Lndvb2NvbW1lcmNlLWluZGV4LCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLm1haW4td3JhcC5zaG9wLWxheW91dC1mdWxsLXdpZHRoIGFydGljbGUubWFpbi1jb250ZW50Lndvb2NvbW1lcmNlLWluZGV4LCBkaXYud29vY29tbWVyY2UgLm1haW4td3JhcC5zaG9wLWxheW91dC1mdWxsLXdpZHRoIGFydGljbGUubWFpbi1jb250ZW50Lndvb2NvbW1lcmNlLWluZGV4IHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbn1cbmJvZHkud29vY29tbWVyY2UgLm1haW4td3JhcC5zaG9wLWxheW91dC1uYXJyb3ctY29udGVudCBhcnRpY2xlLm1haW4tY29udGVudC53b29jb21tZXJjZS1pbmRleCwgYm9keS53b29jb21tZXJjZS1wYWdlIC5tYWluLXdyYXAuc2hvcC1sYXlvdXQtbmFycm93LWNvbnRlbnQgYXJ0aWNsZS5tYWluLWNvbnRlbnQud29vY29tbWVyY2UtaW5kZXgsIGRpdi53b29jb21tZXJjZSAubWFpbi13cmFwLnNob3AtbGF5b3V0LW5hcnJvdy1jb250ZW50IGFydGljbGUubWFpbi1jb250ZW50Lndvb2NvbW1lcmNlLWluZGV4IHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWF4LXdpZHRoOiA1MHJlbTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbn1cbmJvZHkud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZGV4IGgxLnBhZ2UtdGl0bGUsIGJvZHkud29vY29tbWVyY2UtcGFnZSAud29vY29tbWVyY2UtaW5kZXggaDEucGFnZS10aXRsZSwgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmRleCBoMS5wYWdlLXRpdGxlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbmJvZHkud29vY29tbWVyY2UgaDIud29vY29tbWVyY2UtcGFnZS10aXRsZSwgYm9keS53b29jb21tZXJjZS1wYWdlIGgyLndvb2NvbW1lcmNlLXBhZ2UtdGl0bGUsIGRpdi53b29jb21tZXJjZSBoMi53b29jb21tZXJjZS1wYWdlLXRpdGxlIHtcbiAgZm9udC1zaXplOiAxLjYyNXJlbSAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbmJvZHkud29vY29tbWVyY2UgaDIud29vY29tbWVyY2UtcGFnZS10aXRsZSArIHAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50LCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgaDIud29vY29tbWVyY2UtcGFnZS10aXRsZSArIHAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50LCBkaXYud29vY29tbWVyY2UgaDIud29vY29tbWVyY2UtcGFnZS10aXRsZSArIHAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50IHtcbiAgbWFyZ2luLXRvcDogLTAuNjI1cmVtO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgYm9keS53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXJpbmcsIGJvZHkud29vY29tbWVyY2UtcGFnZSAud29vY29tbWVyY2Utb3JkZXJpbmcsIGRpdi53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXJpbmcge1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1heC13aWR0aDogMTMuNzVyZW07XG4gIH1cbn1cbmJvZHkud29vY29tbWVyY2UgdWwucHJvZHVjdHMsIGJvZHkud29vY29tbWVyY2UtcGFnZSB1bC5wcm9kdWN0cywgZGl2Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuYm9keS53b29jb21tZXJjZSB1bC5wcm9kdWN0cyA+IGxpLnByb2R1Y3QsIGJvZHkud29vY29tbWVyY2UtcGFnZSB1bC5wcm9kdWN0cyA+IGxpLnByb2R1Y3QsIGRpdi53b29jb21tZXJjZSB1bC5wcm9kdWN0cyA+IGxpLnByb2R1Y3Qge1xuICBmbG9hdDogbm9uZTtcbn1cbmJvZHkud29vY29tbWVyY2UgdWwucHJvZHVjdHMgPiBsaS5wcm9kdWN0IC53b29jb21tZXJjZS1sb29wLWNhdGVnb3J5X190aXRsZSwgYm9keS53b29jb21tZXJjZS1wYWdlIHVsLnByb2R1Y3RzID4gbGkucHJvZHVjdCAud29vY29tbWVyY2UtbG9vcC1jYXRlZ29yeV9fdGl0bGUsIGRpdi53b29jb21tZXJjZSB1bC5wcm9kdWN0cyA+IGxpLnByb2R1Y3QgLndvb2NvbW1lcmNlLWxvb3AtY2F0ZWdvcnlfX3RpdGxlIHtcbiAgZm9udC1zaXplOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZzogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuYm9keS53b29jb21tZXJjZSB1bC5wcm9kdWN0cyA+IGxpLnByb2R1Y3QgPiBhIC5pbWFnZS13cmFwcGVyLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMgPiBsaS5wcm9kdWN0ID4gYSAuaW1hZ2Utd3JhcHBlciwgZGl2Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzID4gbGkucHJvZHVjdCA+IGEgLmltYWdlLXdyYXBwZXIge1xuICBib3JkZXI6IDAuMDYyNXJlbSBzb2xpZCAjMDAzYTcxO1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbmJvZHkud29vY29tbWVyY2UgdWwucHJvZHVjdHMgPiBsaS5wcm9kdWN0ID4gYSBpbWcsIGJvZHkud29vY29tbWVyY2UtcGFnZSB1bC5wcm9kdWN0cyA+IGxpLnByb2R1Y3QgPiBhIGltZywgZGl2Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzID4gbGkucHJvZHVjdCA+IGEgaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbn1cbmJvZHkud29vY29tbWVyY2UgdWwucHJvZHVjdHMgPiBsaS5wcm9kdWN0ID4gYSAud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X190aXRsZSwgYm9keS53b29jb21tZXJjZS1wYWdlIHVsLnByb2R1Y3RzID4gbGkucHJvZHVjdCA+IGEgLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGUsIGRpdi53b29jb21tZXJjZSB1bC5wcm9kdWN0cyA+IGxpLnByb2R1Y3QgPiBhIC53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlIHtcbiAgZm9udC1zaXplOiAxLjM3NXJlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwIDAgMC42MjVyZW0gMDtcbn1cbmJvZHkud29vY29tbWVyY2UgdWwucHJvZHVjdHMgPiBsaS5wcm9kdWN0ID4gYSBzcGFuLnByaWNlLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMgPiBsaS5wcm9kdWN0ID4gYSBzcGFuLnByaWNlLCBkaXYud29vY29tbWVyY2UgdWwucHJvZHVjdHMgPiBsaS5wcm9kdWN0ID4gYSBzcGFuLnByaWNlIHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbmJvZHkud29vY29tbWVyY2UgdWwucHJvZHVjdHMgPiBsaS5wcm9kdWN0ID4gYSBzcGFuLnByaWNlIHNwYW4uYW1vdW50LCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMgPiBsaS5wcm9kdWN0ID4gYSBzcGFuLnByaWNlIHNwYW4uYW1vdW50LCBkaXYud29vY29tbWVyY2UgdWwucHJvZHVjdHMgPiBsaS5wcm9kdWN0ID4gYSBzcGFuLnByaWNlIHNwYW4uYW1vdW50IHtcbiAgY29sb3I6ICMwMDNhNzEgIWltcG9ydGFudDtcbn1cbmJvZHkud29vY29tbWVyY2UgdWwucHJvZHVjdHMgPiBsaS5wcm9kdWN0OmhvdmVyID4gYSBpbWcsIGJvZHkud29vY29tbWVyY2UgdWwucHJvZHVjdHMgPiBsaS5wcm9kdWN0OmZvY3VzID4gYSBpbWcsIGJvZHkud29vY29tbWVyY2UtcGFnZSB1bC5wcm9kdWN0cyA+IGxpLnByb2R1Y3Q6aG92ZXIgPiBhIGltZywgYm9keS53b29jb21tZXJjZS1wYWdlIHVsLnByb2R1Y3RzID4gbGkucHJvZHVjdDpmb2N1cyA+IGEgaW1nLCBkaXYud29vY29tbWVyY2UgdWwucHJvZHVjdHMgPiBsaS5wcm9kdWN0OmhvdmVyID4gYSBpbWcsIGRpdi53b29jb21tZXJjZSB1bC5wcm9kdWN0cyA+IGxpLnByb2R1Y3Q6Zm9jdXMgPiBhIGltZyB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4yKSByb3RhdGUoM2RlZyk7XG59XG5ib2R5Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtMiwgYm9keS53b29jb21tZXJjZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTMsIGJvZHkud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy00LCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMuY29sdW1ucy0yLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMuY29sdW1ucy0zLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMuY29sdW1ucy00LCBkaXYud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy0yLCBkaXYud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy0zLCBkaXYud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy00IHtcbiAgbWFyZ2luLWxlZnQ6IC0xLjg3NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbmJvZHkud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy0yID4gbGkucHJvZHVjdCwgYm9keS53b29jb21tZXJjZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTMgPiBsaS5wcm9kdWN0LCBib2R5Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtNCA+IGxpLnByb2R1Y3QsIGJvZHkud29vY29tbWVyY2UtcGFnZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTIgPiBsaS5wcm9kdWN0LCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMuY29sdW1ucy0zID4gbGkucHJvZHVjdCwgYm9keS53b29jb21tZXJjZS1wYWdlIHVsLnByb2R1Y3RzLmNvbHVtbnMtNCA+IGxpLnByb2R1Y3QsIGRpdi53b29jb21tZXJjZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTIgPiBsaS5wcm9kdWN0LCBkaXYud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy0zID4gbGkucHJvZHVjdCwgZGl2Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtNCA+IGxpLnByb2R1Y3Qge1xuICBtYXJnaW46IDAgMCAyLjgxMjVyZW0gMDtcbiAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTtcbiAgd2lkdGg6IDMzLjMzMzMlO1xufVxuYm9keS53b29jb21tZXJjZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTIgPiBsaS5wcm9kdWN0Lmxhc3QsIGJvZHkud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy0zID4gbGkucHJvZHVjdC5sYXN0LCBib2R5Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtNCA+IGxpLnByb2R1Y3QubGFzdCwgYm9keS53b29jb21tZXJjZS1wYWdlIHVsLnByb2R1Y3RzLmNvbHVtbnMtMiA+IGxpLnByb2R1Y3QubGFzdCwgYm9keS53b29jb21tZXJjZS1wYWdlIHVsLnByb2R1Y3RzLmNvbHVtbnMtMyA+IGxpLnByb2R1Y3QubGFzdCwgYm9keS53b29jb21tZXJjZS1wYWdlIHVsLnByb2R1Y3RzLmNvbHVtbnMtNCA+IGxpLnByb2R1Y3QubGFzdCwgZGl2Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtMiA+IGxpLnByb2R1Y3QubGFzdCwgZGl2Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtMyA+IGxpLnByb2R1Y3QubGFzdCwgZGl2Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtNCA+IGxpLnByb2R1Y3QubGFzdCB7XG4gIG1hcmdpbjogMCAwIDIuODEyNXJlbSAwO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgYm9keS53b29jb21tZXJjZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTIgPiBsaS5wcm9kdWN0LCBib2R5Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtMyA+IGxpLnByb2R1Y3QsIGJvZHkud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy00ID4gbGkucHJvZHVjdCwgYm9keS53b29jb21tZXJjZS1wYWdlIHVsLnByb2R1Y3RzLmNvbHVtbnMtMiA+IGxpLnByb2R1Y3QsIGJvZHkud29vY29tbWVyY2UtcGFnZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTMgPiBsaS5wcm9kdWN0LCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMuY29sdW1ucy00ID4gbGkucHJvZHVjdCwgZGl2Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtMiA+IGxpLnByb2R1Y3QsIGRpdi53b29jb21tZXJjZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTMgPiBsaS5wcm9kdWN0LCBkaXYud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy00ID4gbGkucHJvZHVjdCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNy41ZW0pIHtcbiAgYm9keS53b29jb21tZXJjZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTIgPiBsaS5wcm9kdWN0LCBib2R5Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtMyA+IGxpLnByb2R1Y3QsIGJvZHkud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy00ID4gbGkucHJvZHVjdCwgYm9keS53b29jb21tZXJjZS1wYWdlIHVsLnByb2R1Y3RzLmNvbHVtbnMtMiA+IGxpLnByb2R1Y3QsIGJvZHkud29vY29tbWVyY2UtcGFnZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTMgPiBsaS5wcm9kdWN0LCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMuY29sdW1ucy00ID4gbGkucHJvZHVjdCwgZGl2Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtMiA+IGxpLnByb2R1Y3QsIGRpdi53b29jb21tZXJjZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTMgPiBsaS5wcm9kdWN0LCBkaXYud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy00ID4gbGkucHJvZHVjdCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgYm9keS53b29jb21tZXJjZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTIgPiBsaS5wcm9kdWN0Lmxhc3QsIGJvZHkud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy0zID4gbGkucHJvZHVjdC5sYXN0LCBib2R5Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtNCA+IGxpLnByb2R1Y3QubGFzdCwgYm9keS53b29jb21tZXJjZS1wYWdlIHVsLnByb2R1Y3RzLmNvbHVtbnMtMiA+IGxpLnByb2R1Y3QubGFzdCwgYm9keS53b29jb21tZXJjZS1wYWdlIHVsLnByb2R1Y3RzLmNvbHVtbnMtMyA+IGxpLnByb2R1Y3QubGFzdCwgYm9keS53b29jb21tZXJjZS1wYWdlIHVsLnByb2R1Y3RzLmNvbHVtbnMtNCA+IGxpLnByb2R1Y3QubGFzdCwgZGl2Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtMiA+IGxpLnByb2R1Y3QubGFzdCwgZGl2Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtMyA+IGxpLnByb2R1Y3QubGFzdCwgZGl2Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtNCA+IGxpLnByb2R1Y3QubGFzdCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIGJvZHkud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy0yID4gbGkucHJvZHVjdC5sYXN0ICsgbGkucHJvZHVjdC5maXJzdCwgYm9keS53b29jb21tZXJjZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTMgPiBsaS5wcm9kdWN0Lmxhc3QgKyBsaS5wcm9kdWN0LmZpcnN0LCBib2R5Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtNCA+IGxpLnByb2R1Y3QubGFzdCArIGxpLnByb2R1Y3QuZmlyc3QsIGJvZHkud29vY29tbWVyY2UtcGFnZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTIgPiBsaS5wcm9kdWN0Lmxhc3QgKyBsaS5wcm9kdWN0LmZpcnN0LCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMuY29sdW1ucy0zID4gbGkucHJvZHVjdC5sYXN0ICsgbGkucHJvZHVjdC5maXJzdCwgYm9keS53b29jb21tZXJjZS1wYWdlIHVsLnByb2R1Y3RzLmNvbHVtbnMtNCA+IGxpLnByb2R1Y3QubGFzdCArIGxpLnByb2R1Y3QuZmlyc3QsIGRpdi53b29jb21tZXJjZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTIgPiBsaS5wcm9kdWN0Lmxhc3QgKyBsaS5wcm9kdWN0LmZpcnN0LCBkaXYud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy0zID4gbGkucHJvZHVjdC5sYXN0ICsgbGkucHJvZHVjdC5maXJzdCwgZGl2Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtNCA+IGxpLnByb2R1Y3QubGFzdCArIGxpLnByb2R1Y3QuZmlyc3Qge1xuICAgIG1hcmdpbjogMi44MTI1cmVtIDAgIWltcG9ydGFudDtcbiAgfVxufVxuYm9keS53b29jb21tZXJjZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTIgPiBsaS5wcm9kdWN0IC5pbWFnZS13cmFwcGVyLCBib2R5Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtMyA+IGxpLnByb2R1Y3QgLmltYWdlLXdyYXBwZXIsIGJvZHkud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy00ID4gbGkucHJvZHVjdCAuaW1hZ2Utd3JhcHBlciwgYm9keS53b29jb21tZXJjZS1wYWdlIHVsLnByb2R1Y3RzLmNvbHVtbnMtMiA+IGxpLnByb2R1Y3QgLmltYWdlLXdyYXBwZXIsIGJvZHkud29vY29tbWVyY2UtcGFnZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTMgPiBsaS5wcm9kdWN0IC5pbWFnZS13cmFwcGVyLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMuY29sdW1ucy00ID4gbGkucHJvZHVjdCAuaW1hZ2Utd3JhcHBlciwgZGl2Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtMiA+IGxpLnByb2R1Y3QgLmltYWdlLXdyYXBwZXIsIGRpdi53b29jb21tZXJjZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTMgPiBsaS5wcm9kdWN0IC5pbWFnZS13cmFwcGVyLCBkaXYud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy00ID4gbGkucHJvZHVjdCAuaW1hZ2Utd3JhcHBlciB7XG4gIGJvcmRlcjogMDtcbn1cbmJvZHkud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy0yID4gbGkucHJvZHVjdCBhLndvb2NvbW1lcmNlLUxvb3BQcm9kdWN0LWxpbmssIGJvZHkud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy0zID4gbGkucHJvZHVjdCBhLndvb2NvbW1lcmNlLUxvb3BQcm9kdWN0LWxpbmssIGJvZHkud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy00ID4gbGkucHJvZHVjdCBhLndvb2NvbW1lcmNlLUxvb3BQcm9kdWN0LWxpbmssIGJvZHkud29vY29tbWVyY2UtcGFnZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTIgPiBsaS5wcm9kdWN0IGEud29vY29tbWVyY2UtTG9vcFByb2R1Y3QtbGluaywgYm9keS53b29jb21tZXJjZS1wYWdlIHVsLnByb2R1Y3RzLmNvbHVtbnMtMyA+IGxpLnByb2R1Y3QgYS53b29jb21tZXJjZS1Mb29wUHJvZHVjdC1saW5rLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMuY29sdW1ucy00ID4gbGkucHJvZHVjdCBhLndvb2NvbW1lcmNlLUxvb3BQcm9kdWN0LWxpbmssIGRpdi53b29jb21tZXJjZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTIgPiBsaS5wcm9kdWN0IGEud29vY29tbWVyY2UtTG9vcFByb2R1Y3QtbGluaywgZGl2Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtMyA+IGxpLnByb2R1Y3QgYS53b29jb21tZXJjZS1Mb29wUHJvZHVjdC1saW5rLCBkaXYud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy00ID4gbGkucHJvZHVjdCBhLndvb2NvbW1lcmNlLUxvb3BQcm9kdWN0LWxpbmsge1xuICBiYWNrZ3JvdW5kOiAjRjFGM0Y1O1xuICBib3JkZXI6IDAuMTI1cmVtIHNvbGlkICM5MTI3MTI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwIDAgMC45Mzc1cmVtIDA7XG59XG5ib2R5Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtMiA+IGxpLnByb2R1Y3QgaDIud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X190aXRsZSwgYm9keS53b29jb21tZXJjZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTMgPiBsaS5wcm9kdWN0IGgyLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGUsIGJvZHkud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy00ID4gbGkucHJvZHVjdCBoMi53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMuY29sdW1ucy0yID4gbGkucHJvZHVjdCBoMi53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMuY29sdW1ucy0zID4gbGkucHJvZHVjdCBoMi53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMuY29sdW1ucy00ID4gbGkucHJvZHVjdCBoMi53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlLCBkaXYud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy0yID4gbGkucHJvZHVjdCBoMi53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlLCBkaXYud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy0zID4gbGkucHJvZHVjdCBoMi53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlLCBkaXYud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy00ID4gbGkucHJvZHVjdCBoMi53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlIHtcbiAgcGFkZGluZzogMCAwLjkzNzVyZW0gMC42MjVyZW07XG59XG5ib2R5Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtMiA+IGxpLnByb2R1Y3Qgc3Bhbi5wcmljZSwgYm9keS53b29jb21tZXJjZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTMgPiBsaS5wcm9kdWN0IHNwYW4ucHJpY2UsIGJvZHkud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy00ID4gbGkucHJvZHVjdCBzcGFuLnByaWNlLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMuY29sdW1ucy0yID4gbGkucHJvZHVjdCBzcGFuLnByaWNlLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMuY29sdW1ucy0zID4gbGkucHJvZHVjdCBzcGFuLnByaWNlLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMuY29sdW1ucy00ID4gbGkucHJvZHVjdCBzcGFuLnByaWNlLCBkaXYud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy0yID4gbGkucHJvZHVjdCBzcGFuLnByaWNlLCBkaXYud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy0zID4gbGkucHJvZHVjdCBzcGFuLnByaWNlLCBkaXYud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy00ID4gbGkucHJvZHVjdCBzcGFuLnByaWNlIHtcbiAgcGFkZGluZzogMCAwLjkzNzVyZW07XG59XG5ib2R5Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtMiA+IGxpLnByb2R1Y3QgZGl2LnN0YXItcmF0aW5nLCBib2R5Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtMyA+IGxpLnByb2R1Y3QgZGl2LnN0YXItcmF0aW5nLCBib2R5Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtNCA+IGxpLnByb2R1Y3QgZGl2LnN0YXItcmF0aW5nLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMuY29sdW1ucy0yID4gbGkucHJvZHVjdCBkaXYuc3Rhci1yYXRpbmcsIGJvZHkud29vY29tbWVyY2UtcGFnZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTMgPiBsaS5wcm9kdWN0IGRpdi5zdGFyLXJhdGluZywgYm9keS53b29jb21tZXJjZS1wYWdlIHVsLnByb2R1Y3RzLmNvbHVtbnMtNCA+IGxpLnByb2R1Y3QgZGl2LnN0YXItcmF0aW5nLCBkaXYud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy0yID4gbGkucHJvZHVjdCBkaXYuc3Rhci1yYXRpbmcsIGRpdi53b29jb21tZXJjZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTMgPiBsaS5wcm9kdWN0IGRpdi5zdGFyLXJhdGluZywgZGl2Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtNCA+IGxpLnByb2R1Y3QgZGl2LnN0YXItcmF0aW5nIHtcbiAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcbn1cbmJvZHkud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy0yID4gbGkucHJvZHVjdCAuYnV0dG9uLCBib2R5Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtMyA+IGxpLnByb2R1Y3QgLmJ1dHRvbiwgYm9keS53b29jb21tZXJjZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTQgPiBsaS5wcm9kdWN0IC5idXR0b24sIGJvZHkud29vY29tbWVyY2UtcGFnZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTIgPiBsaS5wcm9kdWN0IC5idXR0b24sIGJvZHkud29vY29tbWVyY2UtcGFnZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTMgPiBsaS5wcm9kdWN0IC5idXR0b24sIGJvZHkud29vY29tbWVyY2UtcGFnZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTQgPiBsaS5wcm9kdWN0IC5idXR0b24sIGRpdi53b29jb21tZXJjZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTIgPiBsaS5wcm9kdWN0IC5idXR0b24sIGRpdi53b29jb21tZXJjZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTMgPiBsaS5wcm9kdWN0IC5idXR0b24sIGRpdi53b29jb21tZXJjZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTQgPiBsaS5wcm9kdWN0IC5idXR0b24ge1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAwO1xufVxuYm9keS53b29jb21tZXJjZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTIgPiBsaS5wcm9kdWN0LCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMuY29sdW1ucy0yID4gbGkucHJvZHVjdCwgZGl2Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtMiA+IGxpLnByb2R1Y3Qge1xuICB3aWR0aDogNTAlO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNy41ZW0pIHtcbiAgYm9keS53b29jb21tZXJjZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTIgPiBsaS5wcm9kdWN0LCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMuY29sdW1ucy0yID4gbGkucHJvZHVjdCwgZGl2Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtMiA+IGxpLnByb2R1Y3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5ib2R5Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtNCA+IGxpLnByb2R1Y3QsIGJvZHkud29vY29tbWVyY2UtcGFnZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTQgPiBsaS5wcm9kdWN0LCBkaXYud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy00ID4gbGkucHJvZHVjdCB7XG4gIHdpZHRoOiAyNSU7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0ZW0pIHtcbiAgYm9keS53b29jb21tZXJjZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTQgPiBsaS5wcm9kdWN0LCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMuY29sdW1ucy00ID4gbGkucHJvZHVjdCwgZGl2Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtNCA+IGxpLnByb2R1Y3Qge1xuICAgIGNsZWFyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDMzLjMzMzMlO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICBib2R5Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtNCA+IGxpLnByb2R1Y3QsIGJvZHkud29vY29tbWVyY2UtcGFnZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTQgPiBsaS5wcm9kdWN0LCBkaXYud29vY29tbWVyY2UgdWwucHJvZHVjdHMuY29sdW1ucy00ID4gbGkucHJvZHVjdCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNy41ZW0pIHtcbiAgYm9keS53b29jb21tZXJjZSB1bC5wcm9kdWN0cy5jb2x1bW5zLTQgPiBsaS5wcm9kdWN0LCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMuY29sdW1ucy00ID4gbGkucHJvZHVjdCwgZGl2Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzLmNvbHVtbnMtNCA+IGxpLnByb2R1Y3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5ib2R5Lndvb2NvbW1lcmNlIC5wcm9kdWN0LXRvcC13cmFwcGVyLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLnByb2R1Y3QtdG9wLXdyYXBwZXIsIGRpdi53b29jb21tZXJjZSAucHJvZHVjdC10b3Atd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDhlbSkge1xuICBib2R5Lndvb2NvbW1lcmNlIC5wcm9kdWN0LXRvcC13cmFwcGVyLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLnByb2R1Y3QtdG9wLXdyYXBwZXIsIGRpdi53b29jb21tZXJjZSAucHJvZHVjdC10b3Atd3JhcHBlciB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxufVxuYm9keS53b29jb21tZXJjZSAucHJvZHVjdC10b3Atd3JhcHBlciBzcGFuLm9uc2FsZSwgYm9keS53b29jb21tZXJjZS1wYWdlIC5wcm9kdWN0LXRvcC13cmFwcGVyIHNwYW4ub25zYWxlLCBkaXYud29vY29tbWVyY2UgLnByb2R1Y3QtdG9wLXdyYXBwZXIgc3Bhbi5vbnNhbGUge1xuICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC5wcm9kdWN0LXRvcC13cmFwcGVyIGRpdi53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnksIGJvZHkud29vY29tbWVyY2UtcGFnZSAucHJvZHVjdC10b3Atd3JhcHBlciBkaXYud29vY29tbWVyY2UtcHJvZHVjdC1nYWxsZXJ5LCBkaXYud29vY29tbWVyY2UgLnByb2R1Y3QtdG9wLXdyYXBwZXIgZGl2Lndvb2NvbW1lcmNlLXByb2R1Y3QtZ2FsbGVyeSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC5wcm9kdWN0LXRvcC13cmFwcGVyIGRpdi5zdW1tYXJ5LmVudHJ5LXN1bW1hcnksIGJvZHkud29vY29tbWVyY2UtcGFnZSAucHJvZHVjdC10b3Atd3JhcHBlciBkaXYuc3VtbWFyeS5lbnRyeS1zdW1tYXJ5LCBkaXYud29vY29tbWVyY2UgLnByb2R1Y3QtdG9wLXdyYXBwZXIgZGl2LnN1bW1hcnkuZW50cnktc3VtbWFyeSB7XG4gIGZsb2F0OiBub25lO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuYm9keS53b29jb21tZXJjZSBzcGFuLm9uc2FsZSwgYm9keS53b29jb21tZXJjZS1wYWdlIHNwYW4ub25zYWxlLCBkaXYud29vY29tbWVyY2Ugc3Bhbi5vbnNhbGUge1xuICBiYWNrZ3JvdW5kOiAjMDAzYTcxO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IGF1dG87XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBtYXJnaW46IDAuNXJlbSAwLjA2MjVyZW0gMCAwICFpbXBvcnRhbnQ7XG4gIG1pbi1oZWlnaHQ6IDA7XG4gIG1pbi13aWR0aDogMDtcbiAgcGFkZGluZzogMC42MjVyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgd2lkdGg6IGF1dG87XG59XG5ib2R5Lndvb2NvbW1lcmNlIHNwYW4ub25zYWxlOmJlZm9yZSwgYm9keS53b29jb21tZXJjZSBzcGFuLm9uc2FsZTphZnRlciwgYm9keS53b29jb21tZXJjZS1wYWdlIHNwYW4ub25zYWxlOmJlZm9yZSwgYm9keS53b29jb21tZXJjZS1wYWdlIHNwYW4ub25zYWxlOmFmdGVyLCBkaXYud29vY29tbWVyY2Ugc3Bhbi5vbnNhbGU6YmVmb3JlLCBkaXYud29vY29tbWVyY2Ugc3Bhbi5vbnNhbGU6YWZ0ZXIge1xuICBib3JkZXI6IDEuMDYyNXJlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgY29udGVudDogXCJcIjtcbiAgaGVpZ2h0OiAwLjA2MjVyZW07XG4gIGxlZnQ6IC0xLjA2MjVyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDAuMDYyNXJlbTtcbn1cbmJvZHkud29vY29tbWVyY2Ugc3Bhbi5vbnNhbGU6YmVmb3JlLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2Ugc3Bhbi5vbnNhbGU6YmVmb3JlLCBkaXYud29vY29tbWVyY2Ugc3Bhbi5vbnNhbGU6YmVmb3JlIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzAwM2E3MTtcbiAgdG9wOiAwO1xufVxuYm9keS53b29jb21tZXJjZSBzcGFuLm9uc2FsZTphZnRlciwgYm9keS53b29jb21tZXJjZS1wYWdlIHNwYW4ub25zYWxlOmFmdGVyLCBkaXYud29vY29tbWVyY2Ugc3Bhbi5vbnNhbGU6YWZ0ZXIge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjMDAzYTcxO1xuICBib3R0b206IDA7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC5wcm9kdWN0LnNhbGUgc3Bhbi5vbnNhbGUsIGJvZHkud29vY29tbWVyY2UtcGFnZSAucHJvZHVjdC5zYWxlIHNwYW4ub25zYWxlLCBkaXYud29vY29tbWVyY2UgLnByb2R1Y3Quc2FsZSBzcGFuLm9uc2FsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGxlZnQ6IDEuODc1cmVtO1xuICBwYWRkaW5nOiAwLjYyNXJlbTtcbiAgcmlnaHQ6IGF1dG87XG4gIHRvcDogMDtcbn1cbmJvZHkud29vY29tbWVyY2UgLnByb2R1Y3Quc2FsZSBzcGFuLm9uc2FsZTpiZWZvcmUsIGJvZHkud29vY29tbWVyY2UgLnByb2R1Y3Quc2FsZSBzcGFuLm9uc2FsZTphZnRlciwgYm9keS53b29jb21tZXJjZS1wYWdlIC5wcm9kdWN0LnNhbGUgc3Bhbi5vbnNhbGU6YmVmb3JlLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLnByb2R1Y3Quc2FsZSBzcGFuLm9uc2FsZTphZnRlciwgZGl2Lndvb2NvbW1lcmNlIC5wcm9kdWN0LnNhbGUgc3Bhbi5vbnNhbGU6YmVmb3JlLCBkaXYud29vY29tbWVyY2UgLnByb2R1Y3Quc2FsZSBzcGFuLm9uc2FsZTphZnRlciB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAtMS4wNjI1cmVtO1xufVxuYm9keS53b29jb21tZXJjZSAubWFpbi13cmFwIC5idXR0b24sIGJvZHkud29vY29tbWVyY2UgLm1haW4td3JhcCAuYnV0dG9uLndjLWJhY2t3YXJkLCBib2R5Lndvb2NvbW1lcmNlIC5idXR0b24sIGJvZHkud29vY29tbWVyY2UgLmJ1dHRvbi53Yy1iYWNrd2FyZCwgYm9keS53b29jb21tZXJjZSAuY29tbWVudC1mb3JtIHAuZm9ybS1zdWJtaXQgaW5wdXQsIGJvZHkud29vY29tbWVyY2UtcGFnZSAubWFpbi13cmFwIC5idXR0b24sIGJvZHkud29vY29tbWVyY2UtcGFnZSAubWFpbi13cmFwIC5idXR0b24ud2MtYmFja3dhcmQsIGJvZHkud29vY29tbWVyY2UtcGFnZSAuYnV0dG9uLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLmJ1dHRvbi53Yy1iYWNrd2FyZCwgYm9keS53b29jb21tZXJjZS1wYWdlIC5jb21tZW50LWZvcm0gcC5mb3JtLXN1Ym1pdCBpbnB1dCwgZGl2Lndvb2NvbW1lcmNlIC5tYWluLXdyYXAgLmJ1dHRvbiwgZGl2Lndvb2NvbW1lcmNlIC5tYWluLXdyYXAgLmJ1dHRvbi53Yy1iYWNrd2FyZCwgZGl2Lndvb2NvbW1lcmNlIC5idXR0b24sIGRpdi53b29jb21tZXJjZSAuYnV0dG9uLndjLWJhY2t3YXJkLCBkaXYud29vY29tbWVyY2UgLmNvbW1lbnQtZm9ybSBwLmZvcm0tc3VibWl0IGlucHV0IHtcbiAgYmFja2dyb3VuZDogIzkxMjcxMiAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiA2LjI1cmVtICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG4gIGZvbnQtZmFtaWx5OiBcIkJhcmxvdyBTZW1pIENvbmRlbnNlZFwiLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgcGFkZGluZzogMC45Mzc1cmVtIDEuMjVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xufVxuYm9keS53b29jb21tZXJjZSAubWFpbi13cmFwIC5idXR0b246aG92ZXIsIGJvZHkud29vY29tbWVyY2UgLm1haW4td3JhcCAuYnV0dG9uOmZvY3VzLCBib2R5Lndvb2NvbW1lcmNlIC5tYWluLXdyYXAgLmJ1dHRvbi53Yy1iYWNrd2FyZDpob3ZlciwgYm9keS53b29jb21tZXJjZSAubWFpbi13cmFwIC5idXR0b24ud2MtYmFja3dhcmQ6Zm9jdXMsIGJvZHkud29vY29tbWVyY2UgLmJ1dHRvbjpob3ZlciwgYm9keS53b29jb21tZXJjZSAuYnV0dG9uOmZvY3VzLCBib2R5Lndvb2NvbW1lcmNlIC5idXR0b24ud2MtYmFja3dhcmQ6aG92ZXIsIGJvZHkud29vY29tbWVyY2UgLmJ1dHRvbi53Yy1iYWNrd2FyZDpmb2N1cywgYm9keS53b29jb21tZXJjZSAuY29tbWVudC1mb3JtIHAuZm9ybS1zdWJtaXQgaW5wdXQ6aG92ZXIsIGJvZHkud29vY29tbWVyY2UgLmNvbW1lbnQtZm9ybSBwLmZvcm0tc3VibWl0IGlucHV0OmZvY3VzLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLm1haW4td3JhcCAuYnV0dG9uOmhvdmVyLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLm1haW4td3JhcCAuYnV0dG9uOmZvY3VzLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLm1haW4td3JhcCAuYnV0dG9uLndjLWJhY2t3YXJkOmhvdmVyLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLm1haW4td3JhcCAuYnV0dG9uLndjLWJhY2t3YXJkOmZvY3VzLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLmJ1dHRvbjpob3ZlciwgYm9keS53b29jb21tZXJjZS1wYWdlIC5idXR0b246Zm9jdXMsIGJvZHkud29vY29tbWVyY2UtcGFnZSAuYnV0dG9uLndjLWJhY2t3YXJkOmhvdmVyLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLmJ1dHRvbi53Yy1iYWNrd2FyZDpmb2N1cywgYm9keS53b29jb21tZXJjZS1wYWdlIC5jb21tZW50LWZvcm0gcC5mb3JtLXN1Ym1pdCBpbnB1dDpob3ZlciwgYm9keS53b29jb21tZXJjZS1wYWdlIC5jb21tZW50LWZvcm0gcC5mb3JtLXN1Ym1pdCBpbnB1dDpmb2N1cywgZGl2Lndvb2NvbW1lcmNlIC5tYWluLXdyYXAgLmJ1dHRvbjpob3ZlciwgZGl2Lndvb2NvbW1lcmNlIC5tYWluLXdyYXAgLmJ1dHRvbjpmb2N1cywgZGl2Lndvb2NvbW1lcmNlIC5tYWluLXdyYXAgLmJ1dHRvbi53Yy1iYWNrd2FyZDpob3ZlciwgZGl2Lndvb2NvbW1lcmNlIC5tYWluLXdyYXAgLmJ1dHRvbi53Yy1iYWNrd2FyZDpmb2N1cywgZGl2Lndvb2NvbW1lcmNlIC5idXR0b246aG92ZXIsIGRpdi53b29jb21tZXJjZSAuYnV0dG9uOmZvY3VzLCBkaXYud29vY29tbWVyY2UgLmJ1dHRvbi53Yy1iYWNrd2FyZDpob3ZlciwgZGl2Lndvb2NvbW1lcmNlIC5idXR0b24ud2MtYmFja3dhcmQ6Zm9jdXMsIGRpdi53b29jb21tZXJjZSAuY29tbWVudC1mb3JtIHAuZm9ybS1zdWJtaXQgaW5wdXQ6aG92ZXIsIGRpdi53b29jb21tZXJjZSAuY29tbWVudC1mb3JtIHAuZm9ybS1zdWJtaXQgaW5wdXQ6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjMDAwMDAwICFpbXBvcnRhbnQ7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC5hZGRfdG9fY2FydF9idXR0b24uYWpheF9hZGRfdG9fY2FydCxcbmJvZHkud29vY29tbWVyY2UgLmJ1dHRvbi5wcm9kdWN0X3R5cGVfdmFyaWFibGUsIGJvZHkud29vY29tbWVyY2UtcGFnZSAuYWRkX3RvX2NhcnRfYnV0dG9uLmFqYXhfYWRkX3RvX2NhcnQsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLmJ1dHRvbi5wcm9kdWN0X3R5cGVfdmFyaWFibGUsIGRpdi53b29jb21tZXJjZSAuYWRkX3RvX2NhcnRfYnV0dG9uLmFqYXhfYWRkX3RvX2NhcnQsXG5kaXYud29vY29tbWVyY2UgLmJ1dHRvbi5wcm9kdWN0X3R5cGVfdmFyaWFibGUge1xuICBwYWRkaW5nOiAwLjkzNzVyZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC5hZGRfdG9fY2FydF9idXR0b24uYWpheF9hZGRfdG9fY2FydDphZnRlcixcbmJvZHkud29vY29tbWVyY2UgLmJ1dHRvbi5wcm9kdWN0X3R5cGVfdmFyaWFibGU6YWZ0ZXIsIGJvZHkud29vY29tbWVyY2UtcGFnZSAuYWRkX3RvX2NhcnRfYnV0dG9uLmFqYXhfYWRkX3RvX2NhcnQ6YWZ0ZXIsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLmJ1dHRvbi5wcm9kdWN0X3R5cGVfdmFyaWFibGU6YWZ0ZXIsIGRpdi53b29jb21tZXJjZSAuYWRkX3RvX2NhcnRfYnV0dG9uLmFqYXhfYWRkX3RvX2NhcnQ6YWZ0ZXIsXG5kaXYud29vY29tbWVyY2UgLmJ1dHRvbi5wcm9kdWN0X3R5cGVfdmFyaWFibGU6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiAjMDA2OTNCO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBib3R0b206IDAuMTI1cmVtO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgbGluZS1oZWlnaHQ6IDIuMTg3NXJlbTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwLjMxMjVyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDAuMTI1cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDIuNjI1cmVtO1xufVxuYm9keS53b29jb21tZXJjZSAuYWRkX3RvX2NhcnRfYnV0dG9uLmFqYXhfYWRkX3RvX2NhcnQuYWRkZWQ6YWZ0ZXIsXG5ib2R5Lndvb2NvbW1lcmNlIC5idXR0b24ucHJvZHVjdF90eXBlX3ZhcmlhYmxlLmFkZGVkOmFmdGVyLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLmFkZF90b19jYXJ0X2J1dHRvbi5hamF4X2FkZF90b19jYXJ0LmFkZGVkOmFmdGVyLFxuYm9keS53b29jb21tZXJjZS1wYWdlIC5idXR0b24ucHJvZHVjdF90eXBlX3ZhcmlhYmxlLmFkZGVkOmFmdGVyLCBkaXYud29vY29tbWVyY2UgLmFkZF90b19jYXJ0X2J1dHRvbi5hamF4X2FkZF90b19jYXJ0LmFkZGVkOmFmdGVyLFxuZGl2Lndvb2NvbW1lcmNlIC5idXR0b24ucHJvZHVjdF90eXBlX3ZhcmlhYmxlLmFkZGVkOmFmdGVyIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbmJvZHkud29vY29tbWVyY2UgLmFkZF90b19jYXJ0X2J1dHRvbi5hamF4X2FkZF90b19jYXJ0ICsgYS5hZGRlZF90b19jYXJ0LFxuYm9keS53b29jb21tZXJjZSAuYnV0dG9uLnByb2R1Y3RfdHlwZV92YXJpYWJsZSArIGEuYWRkZWRfdG9fY2FydCwgYm9keS53b29jb21tZXJjZS1wYWdlIC5hZGRfdG9fY2FydF9idXR0b24uYWpheF9hZGRfdG9fY2FydCArIGEuYWRkZWRfdG9fY2FydCxcbmJvZHkud29vY29tbWVyY2UtcGFnZSAuYnV0dG9uLnByb2R1Y3RfdHlwZV92YXJpYWJsZSArIGEuYWRkZWRfdG9fY2FydCwgZGl2Lndvb2NvbW1lcmNlIC5hZGRfdG9fY2FydF9idXR0b24uYWpheF9hZGRfdG9fY2FydCArIGEuYWRkZWRfdG9fY2FydCxcbmRpdi53b29jb21tZXJjZSAuYnV0dG9uLnByb2R1Y3RfdHlwZV92YXJpYWJsZSArIGEuYWRkZWRfdG9fY2FydCB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHBhZGRpbmc6IDA7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICBib2R5Lndvb2NvbW1lcmNlIC5tYWluLXdyYXAsIGJvZHkud29vY29tbWVyY2UtcGFnZSAubWFpbi13cmFwLCBkaXYud29vY29tbWVyY2UgLm1haW4td3JhcCB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICBib2R5Lndvb2NvbW1lcmNlIC5tYWluLXdyYXAgLm1haW4tY29udGVudCwgYm9keS53b29jb21tZXJjZS1wYWdlIC5tYWluLXdyYXAgLm1haW4tY29udGVudCwgZGl2Lndvb2NvbW1lcmNlIC5tYWluLXdyYXAgLm1haW4tY29udGVudCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKSAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5LjQzNzVlbSkge1xuICBib2R5Lndvb2NvbW1lcmNlIC5tYWluLXdyYXAgLndvb2NvbW1lcmNlLWluZGV4LCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLm1haW4td3JhcCAud29vY29tbWVyY2UtaW5kZXgsIGRpdi53b29jb21tZXJjZSAubWFpbi13cmFwIC53b29jb21tZXJjZS1pbmRleCB7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAxNi4yNXJlbSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIGJvZHkud29vY29tbWVyY2UgLm1haW4td3JhcCAud29vY29tbWVyY2UtaW5kZXgsIGJvZHkud29vY29tbWVyY2UtcGFnZSAubWFpbi13cmFwIC53b29jb21tZXJjZS1pbmRleCwgZGl2Lndvb2NvbW1lcmNlIC5tYWluLXdyYXAgLndvb2NvbW1lcmNlLWluZGV4IHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgb3JkZXI6IDEgIWltcG9ydGFudDtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pICFpbXBvcnRhbnQ7XG4gIH1cbn1cbmJvZHkud29vY29tbWVyY2UgLm1haW4td3JhcCAud29vY29tbWVyY2UtaW5kZXggLnJlbGF0ZWQucHJvZHVjdHMgaDMsIGJvZHkud29vY29tbWVyY2UtcGFnZSAubWFpbi13cmFwIC53b29jb21tZXJjZS1pbmRleCAucmVsYXRlZC5wcm9kdWN0cyBoMywgZGl2Lndvb2NvbW1lcmNlIC5tYWluLXdyYXAgLndvb2NvbW1lcmNlLWluZGV4IC5yZWxhdGVkLnByb2R1Y3RzIGgzIHtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbn1cbmJvZHkud29vY29tbWVyY2UgLm1haW4td3JhcCAud29vY29tbWVyY2UtaW5kZXggLnJlbGF0ZWQucHJvZHVjdHMgdWwucHJvZHVjdHMgbGksIGJvZHkud29vY29tbWVyY2UtcGFnZSAubWFpbi13cmFwIC53b29jb21tZXJjZS1pbmRleCAucmVsYXRlZC5wcm9kdWN0cyB1bC5wcm9kdWN0cyBsaSwgZGl2Lndvb2NvbW1lcmNlIC5tYWluLXdyYXAgLndvb2NvbW1lcmNlLWluZGV4IC5yZWxhdGVkLnByb2R1Y3RzIHVsLnByb2R1Y3RzIGxpIHtcbiAgd2lkdGg6IDMzLjMzMyU7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC5tYWluLXdyYXAgLndvb2NvbW1lcmNlLWluZGV4IC5yZWxhdGVkLnByb2R1Y3RzIHVsLnByb2R1Y3RzIGxpIGgyLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGUsIGJvZHkud29vY29tbWVyY2UtcGFnZSAubWFpbi13cmFwIC53b29jb21tZXJjZS1pbmRleCAucmVsYXRlZC5wcm9kdWN0cyB1bC5wcm9kdWN0cyBsaSBoMi53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlLCBkaXYud29vY29tbWVyY2UgLm1haW4td3JhcCAud29vY29tbWVyY2UtaW5kZXggLnJlbGF0ZWQucHJvZHVjdHMgdWwucHJvZHVjdHMgbGkgaDIud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X190aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS4zNzVyZW0gIWltcG9ydGFudDtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDBlbSkge1xuICBib2R5Lndvb2NvbW1lcmNlIC5tYWluLXdyYXAgLndvb2NvbW1lcmNlLWluZGV4IC5yZWxhdGVkLnByb2R1Y3RzIHVsLnByb2R1Y3RzIGxpLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLm1haW4td3JhcCAud29vY29tbWVyY2UtaW5kZXggLnJlbGF0ZWQucHJvZHVjdHMgdWwucHJvZHVjdHMgbGksIGRpdi53b29jb21tZXJjZSAubWFpbi13cmFwIC53b29jb21tZXJjZS1pbmRleCAucmVsYXRlZC5wcm9kdWN0cyB1bC5wcm9kdWN0cyBsaSB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAyNWVtKSB7XG4gIGJvZHkud29vY29tbWVyY2UgLm1haW4td3JhcCAud29vY29tbWVyY2UtaW5kZXggLnJlbGF0ZWQucHJvZHVjdHMgdWwucHJvZHVjdHMgbGksIGJvZHkud29vY29tbWVyY2UtcGFnZSAubWFpbi13cmFwIC53b29jb21tZXJjZS1pbmRleCAucmVsYXRlZC5wcm9kdWN0cyB1bC5wcm9kdWN0cyBsaSwgZGl2Lndvb2NvbW1lcmNlIC5tYWluLXdyYXAgLndvb2NvbW1lcmNlLWluZGV4IC5yZWxhdGVkLnByb2R1Y3RzIHVsLnByb2R1Y3RzIGxpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuYm9keS53b29jb21tZXJjZSAubWFpbi13cmFwIC53b29jb21tZXJjZS1pbmRleCAucmVsYXRlZC5wcm9kdWN0cyB1bC5wcm9kdWN0cyBsaS5zYWxlIHNwYW4ub25zYWxlLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLm1haW4td3JhcCAud29vY29tbWVyY2UtaW5kZXggLnJlbGF0ZWQucHJvZHVjdHMgdWwucHJvZHVjdHMgbGkuc2FsZSBzcGFuLm9uc2FsZSwgZGl2Lndvb2NvbW1lcmNlIC5tYWluLXdyYXAgLndvb2NvbW1lcmNlLWluZGV4IC5yZWxhdGVkLnByb2R1Y3RzIHVsLnByb2R1Y3RzIGxpLnNhbGUgc3Bhbi5vbnNhbGUge1xuICBsZWZ0OiAxLjg3NXJlbTtcbn1cbmJvZHkud29vY29tbWVyY2UgLm1haW4td3JhcCBhc2lkZS5zaWRlYmFyLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLm1haW4td3JhcCBhc2lkZS5zaWRlYmFyLCBkaXYud29vY29tbWVyY2UgLm1haW4td3JhcCBhc2lkZS5zaWRlYmFyIHtcbiAgYmFja2dyb3VuZDogI0YxRjNGNTtcbiAgcGFkZGluZzogMS41NjI1cmVtO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1OS40Mzc1ZW0pIHtcbiAgYm9keS53b29jb21tZXJjZSAubWFpbi13cmFwIGFzaWRlLnNpZGViYXIsIGJvZHkud29vY29tbWVyY2UtcGFnZSAubWFpbi13cmFwIGFzaWRlLnNpZGViYXIsIGRpdi53b29jb21tZXJjZSAubWFpbi13cmFwIGFzaWRlLnNpZGViYXIge1xuICAgIHdpZHRoOiAxMi41cmVtICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIGJvZHkud29vY29tbWVyY2UgLm1haW4td3JhcCBhc2lkZS5zaWRlYmFyLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLm1haW4td3JhcCBhc2lkZS5zaWRlYmFyLCBkaXYud29vY29tbWVyY2UgLm1haW4td3JhcCBhc2lkZS5zaWRlYmFyIHtcbiAgICBvcmRlcjogMiAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSkgIWltcG9ydGFudDtcbiAgfVxufVxuYm9keS53b29jb21tZXJjZSAubWFpbi13cmFwIGFzaWRlLnNpZGViYXIgLndpZGdldF9wcm9kdWN0X2NhdGVnb3JpZXMgaDYsIGJvZHkud29vY29tbWVyY2UtcGFnZSAubWFpbi13cmFwIGFzaWRlLnNpZGViYXIgLndpZGdldF9wcm9kdWN0X2NhdGVnb3JpZXMgaDYsIGRpdi53b29jb21tZXJjZSAubWFpbi13cmFwIGFzaWRlLnNpZGViYXIgLndpZGdldF9wcm9kdWN0X2NhdGVnb3JpZXMgaDYge1xuICBib3JkZXItYm90dG9tOiAwLjEyNXJlbSBzb2xpZCAjMDAzYTcxO1xuICBmb250LXNpemU6IDEuMTI1cmVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC42MjVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC5tYWluLXdyYXAgYXNpZGUuc2lkZWJhciAud2lkZ2V0X3Byb2R1Y3RfY2F0ZWdvcmllcyBoNjpiZWZvcmUsIGJvZHkud29vY29tbWVyY2UtcGFnZSAubWFpbi13cmFwIGFzaWRlLnNpZGViYXIgLndpZGdldF9wcm9kdWN0X2NhdGVnb3JpZXMgaDY6YmVmb3JlLCBkaXYud29vY29tbWVyY2UgLm1haW4td3JhcCBhc2lkZS5zaWRlYmFyIC53aWRnZXRfcHJvZHVjdF9jYXRlZ29yaWVzIGg2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDdhXCI7XG4gIGZvbnQtZmFtaWx5OiBmb250YXdlc29tZTtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuMzEyNXJlbTtcbn1cbmJvZHkud29vY29tbWVyY2UgLm1haW4td3JhcCBhc2lkZS5zaWRlYmFyIC53aWRnZXRfcHJvZHVjdF9jYXRlZ29yaWVzIHVsLnByb2R1Y3QtY2F0ZWdvcmllcywgYm9keS53b29jb21tZXJjZS1wYWdlIC5tYWluLXdyYXAgYXNpZGUuc2lkZWJhciAud2lkZ2V0X3Byb2R1Y3RfY2F0ZWdvcmllcyB1bC5wcm9kdWN0LWNhdGVnb3JpZXMsIGRpdi53b29jb21tZXJjZSAubWFpbi13cmFwIGFzaWRlLnNpZGViYXIgLndpZGdldF9wcm9kdWN0X2NhdGVnb3JpZXMgdWwucHJvZHVjdC1jYXRlZ29yaWVzIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xufVxuYm9keS53b29jb21tZXJjZSAubWFpbi13cmFwIGFzaWRlLnNpZGViYXIgLndpZGdldF9wcm9kdWN0X2NhdGVnb3JpZXMgdWwucHJvZHVjdC1jYXRlZ29yaWVzID4gbGkuY2F0LWl0ZW0sIGJvZHkud29vY29tbWVyY2UtcGFnZSAubWFpbi13cmFwIGFzaWRlLnNpZGViYXIgLndpZGdldF9wcm9kdWN0X2NhdGVnb3JpZXMgdWwucHJvZHVjdC1jYXRlZ29yaWVzID4gbGkuY2F0LWl0ZW0sIGRpdi53b29jb21tZXJjZSAubWFpbi13cmFwIGFzaWRlLnNpZGViYXIgLndpZGdldF9wcm9kdWN0X2NhdGVnb3JpZXMgdWwucHJvZHVjdC1jYXRlZ29yaWVzID4gbGkuY2F0LWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC5tYWluLXdyYXAgYXNpZGUuc2lkZWJhciAud2lkZ2V0X3Byb2R1Y3RfY2F0ZWdvcmllcyB1bC5wcm9kdWN0LWNhdGVnb3JpZXMgPiBsaS5jYXQtaXRlbSA+IGEsIGJvZHkud29vY29tbWVyY2UtcGFnZSAubWFpbi13cmFwIGFzaWRlLnNpZGViYXIgLndpZGdldF9wcm9kdWN0X2NhdGVnb3JpZXMgdWwucHJvZHVjdC1jYXRlZ29yaWVzID4gbGkuY2F0LWl0ZW0gPiBhLCBkaXYud29vY29tbWVyY2UgLm1haW4td3JhcCBhc2lkZS5zaWRlYmFyIC53aWRnZXRfcHJvZHVjdF9jYXRlZ29yaWVzIHVsLnByb2R1Y3QtY2F0ZWdvcmllcyA+IGxpLmNhdC1pdGVtID4gYSB7XG4gIGNvbG9yOiAjMDAzYTcxO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW0gIWltcG9ydGFudDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC5tYWluLXdyYXAgYXNpZGUuc2lkZWJhciAud2lkZ2V0X3Byb2R1Y3RfY2F0ZWdvcmllcyB1bC5wcm9kdWN0LWNhdGVnb3JpZXMgPiBsaS5jYXQtaXRlbSBpLmNsb3NlLWNhdC1saXN0LCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLm1haW4td3JhcCBhc2lkZS5zaWRlYmFyIC53aWRnZXRfcHJvZHVjdF9jYXRlZ29yaWVzIHVsLnByb2R1Y3QtY2F0ZWdvcmllcyA+IGxpLmNhdC1pdGVtIGkuY2xvc2UtY2F0LWxpc3QsIGRpdi53b29jb21tZXJjZSAubWFpbi13cmFwIGFzaWRlLnNpZGViYXIgLndpZGdldF9wcm9kdWN0X2NhdGVnb3JpZXMgdWwucHJvZHVjdC1jYXRlZ29yaWVzID4gbGkuY2F0LWl0ZW0gaS5jbG9zZS1jYXQtbGlzdCB7XG4gIGNvbG9yOiAjOTEyNzEyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMC4zMTI1cmVtO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xufVxuYm9keS53b29jb21tZXJjZSAubWFpbi13cmFwIGFzaWRlLnNpZGViYXIgLndpZGdldF9wcm9kdWN0X2NhdGVnb3JpZXMgdWwucHJvZHVjdC1jYXRlZ29yaWVzID4gbGkuY2F0LWl0ZW0gPiBpLnRvZ2dsZS1jYXQtbGlzdCwgYm9keS53b29jb21tZXJjZS1wYWdlIC5tYWluLXdyYXAgYXNpZGUuc2lkZWJhciAud2lkZ2V0X3Byb2R1Y3RfY2F0ZWdvcmllcyB1bC5wcm9kdWN0LWNhdGVnb3JpZXMgPiBsaS5jYXQtaXRlbSA+IGkudG9nZ2xlLWNhdC1saXN0LCBkaXYud29vY29tbWVyY2UgLm1haW4td3JhcCBhc2lkZS5zaWRlYmFyIC53aWRnZXRfcHJvZHVjdF9jYXRlZ29yaWVzIHVsLnByb2R1Y3QtY2F0ZWdvcmllcyA+IGxpLmNhdC1pdGVtID4gaS50b2dnbGUtY2F0LWxpc3Qge1xuICBjb2xvcjogIzkxMjcxMiAhaW1wb3J0YW50O1xuICBjdXJzb3I6IHBvaW50ZXIgIWltcG9ydGFudDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMC4yNXJlbTtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgd2lkdGg6IDEuMjVyZW07XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC5tYWluLXdyYXAgYXNpZGUuc2lkZWJhciAud2lkZ2V0X3Byb2R1Y3RfY2F0ZWdvcmllcyB1bC5wcm9kdWN0LWNhdGVnb3JpZXMgPiBsaS5jYXQtaXRlbSA+IGkudG9nZ2xlLWNhdC1saXN0LmFuaW1hdGUtY2hldnJvbiwgYm9keS53b29jb21tZXJjZS1wYWdlIC5tYWluLXdyYXAgYXNpZGUuc2lkZWJhciAud2lkZ2V0X3Byb2R1Y3RfY2F0ZWdvcmllcyB1bC5wcm9kdWN0LWNhdGVnb3JpZXMgPiBsaS5jYXQtaXRlbSA+IGkudG9nZ2xlLWNhdC1saXN0LmFuaW1hdGUtY2hldnJvbiwgZGl2Lndvb2NvbW1lcmNlIC5tYWluLXdyYXAgYXNpZGUuc2lkZWJhciAud2lkZ2V0X3Byb2R1Y3RfY2F0ZWdvcmllcyB1bC5wcm9kdWN0LWNhdGVnb3JpZXMgPiBsaS5jYXQtaXRlbSA+IGkudG9nZ2xlLWNhdC1saXN0LmFuaW1hdGUtY2hldnJvbiB7XG4gIGxlZnQ6IC0wLjMxMjVyZW07XG4gIHRvcDogMC41NjI1cmVtO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC5tYWluLXdyYXAgYXNpZGUuc2lkZWJhciAud2lkZ2V0X3Byb2R1Y3RfY2F0ZWdvcmllcyB1bC5wcm9kdWN0LWNhdGVnb3JpZXMgPiBsaS5jYXQtaXRlbSA+IGkudG9nZ2xlLWNhdC1saXN0LmFuaW1hdGUtY2hldnJvbiB+IGkuY2xvc2UtY2F0LWxpc3QsIGJvZHkud29vY29tbWVyY2UtcGFnZSAubWFpbi13cmFwIGFzaWRlLnNpZGViYXIgLndpZGdldF9wcm9kdWN0X2NhdGVnb3JpZXMgdWwucHJvZHVjdC1jYXRlZ29yaWVzID4gbGkuY2F0LWl0ZW0gPiBpLnRvZ2dsZS1jYXQtbGlzdC5hbmltYXRlLWNoZXZyb24gfiBpLmNsb3NlLWNhdC1saXN0LCBkaXYud29vY29tbWVyY2UgLm1haW4td3JhcCBhc2lkZS5zaWRlYmFyIC53aWRnZXRfcHJvZHVjdF9jYXRlZ29yaWVzIHVsLnByb2R1Y3QtY2F0ZWdvcmllcyA+IGxpLmNhdC1pdGVtID4gaS50b2dnbGUtY2F0LWxpc3QuYW5pbWF0ZS1jaGV2cm9uIH4gaS5jbG9zZS1jYXQtbGlzdCB7XG4gIG9wYWNpdHk6IDE7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC5tYWluLXdyYXAgYXNpZGUuc2lkZWJhciAud2lkZ2V0X3Byb2R1Y3RfY2F0ZWdvcmllcyB1bC5wcm9kdWN0LWNhdGVnb3JpZXMgdWwuY2hpbGRyZW4sIGJvZHkud29vY29tbWVyY2UtcGFnZSAubWFpbi13cmFwIGFzaWRlLnNpZGViYXIgLndpZGdldF9wcm9kdWN0X2NhdGVnb3JpZXMgdWwucHJvZHVjdC1jYXRlZ29yaWVzIHVsLmNoaWxkcmVuLCBkaXYud29vY29tbWVyY2UgLm1haW4td3JhcCBhc2lkZS5zaWRlYmFyIC53aWRnZXRfcHJvZHVjdF9jYXRlZ29yaWVzIHVsLnByb2R1Y3QtY2F0ZWdvcmllcyB1bC5jaGlsZHJlbiB7XG4gIGJvcmRlci10b3A6IDAuMDYyNXJlbSBzb2xpZCAjRkZGRkZGO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAxLjA2MjVyZW07XG4gIG9wYWNpdHk6IDA7XG4gIHBhZGRpbmctdG9wOiAwLjYyNXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAtMTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLW91dDtcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLW91dDtcbn1cbmJvZHkud29vY29tbWVyY2UgLm1haW4td3JhcCBhc2lkZS5zaWRlYmFyIC53aWRnZXRfcHJvZHVjdF9jYXRlZ29yaWVzIHVsLnByb2R1Y3QtY2F0ZWdvcmllcyB1bC5jaGlsZHJlbi5zaG93LWNhdHMsIGJvZHkud29vY29tbWVyY2UtcGFnZSAubWFpbi13cmFwIGFzaWRlLnNpZGViYXIgLndpZGdldF9wcm9kdWN0X2NhdGVnb3JpZXMgdWwucHJvZHVjdC1jYXRlZ29yaWVzIHVsLmNoaWxkcmVuLnNob3ctY2F0cywgZGl2Lndvb2NvbW1lcmNlIC5tYWluLXdyYXAgYXNpZGUuc2lkZWJhciAud2lkZ2V0X3Byb2R1Y3RfY2F0ZWdvcmllcyB1bC5wcm9kdWN0LWNhdGVnb3JpZXMgdWwuY2hpbGRyZW4uc2hvdy1jYXRzIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBvcGFjaXR5OiAxO1xuICB6LWluZGV4OiAxMDtcbn1cbmJvZHkud29vY29tbWVyY2UgLm1haW4td3JhcCBhc2lkZS5zaWRlYmFyIC53aWRnZXRfcHJvZHVjdF9jYXRlZ29yaWVzIHVsLnByb2R1Y3QtY2F0ZWdvcmllcyB1bC5jaGlsZHJlbiBsaSwgYm9keS53b29jb21tZXJjZS1wYWdlIC5tYWluLXdyYXAgYXNpZGUuc2lkZWJhciAud2lkZ2V0X3Byb2R1Y3RfY2F0ZWdvcmllcyB1bC5wcm9kdWN0LWNhdGVnb3JpZXMgdWwuY2hpbGRyZW4gbGksIGRpdi53b29jb21tZXJjZSAubWFpbi13cmFwIGFzaWRlLnNpZGViYXIgLndpZGdldF9wcm9kdWN0X2NhdGVnb3JpZXMgdWwucHJvZHVjdC1jYXRlZ29yaWVzIHVsLmNoaWxkcmVuIGxpIHtcbiAgYm9yZGVyLWJvdHRvbTogMC4wNjI1cmVtIHNvbGlkICNGRkZGRkY7XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC42MjVyZW07XG59XG5ib2R5Lndvb2NvbW1lcmNlIC5tYWluLXdyYXAgYXNpZGUuc2lkZWJhciAud2lkZ2V0X3Byb2R1Y3RfY2F0ZWdvcmllcyB1bC5wcm9kdWN0LWNhdGVnb3JpZXMgdWwuY2hpbGRyZW4gbGkgYSwgYm9keS53b29jb21tZXJjZS1wYWdlIC5tYWluLXdyYXAgYXNpZGUuc2lkZWJhciAud2lkZ2V0X3Byb2R1Y3RfY2F0ZWdvcmllcyB1bC5wcm9kdWN0LWNhdGVnb3JpZXMgdWwuY2hpbGRyZW4gbGkgYSwgZGl2Lndvb2NvbW1lcmNlIC5tYWluLXdyYXAgYXNpZGUuc2lkZWJhciAud2lkZ2V0X3Byb2R1Y3RfY2F0ZWdvcmllcyB1bC5wcm9kdWN0LWNhdGVnb3JpZXMgdWwuY2hpbGRyZW4gbGkgYSB7XG4gIGNvbG9yOiAjNUI1QjVCO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgcGFkZGluZzogMCAwLjMxMjVyZW0gIWltcG9ydGFudDtcbn1cbmJvZHkud29vY29tbWVyY2UgLm1haW4td3JhcCBhc2lkZS5zaWRlYmFyIC53aWRnZXRfcHJvZHVjdF9jYXRlZ29yaWVzIHVsLnByb2R1Y3QtY2F0ZWdvcmllcyB1bC5jaGlsZHJlbiBsaS5jdXJyZW50LWNhdCA+IGEsIGJvZHkud29vY29tbWVyY2UtcGFnZSAubWFpbi13cmFwIGFzaWRlLnNpZGViYXIgLndpZGdldF9wcm9kdWN0X2NhdGVnb3JpZXMgdWwucHJvZHVjdC1jYXRlZ29yaWVzIHVsLmNoaWxkcmVuIGxpLmN1cnJlbnQtY2F0ID4gYSwgZGl2Lndvb2NvbW1lcmNlIC5tYWluLXdyYXAgYXNpZGUuc2lkZWJhciAud2lkZ2V0X3Byb2R1Y3RfY2F0ZWdvcmllcyB1bC5wcm9kdWN0LWNhdGVnb3JpZXMgdWwuY2hpbGRyZW4gbGkuY3VycmVudC1jYXQgPiBhIHtcbiAgY29sb3I6ICMwMDAwMDA7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS10YWJzLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLndvb2NvbW1lcmNlLXRhYnMsIGRpdi53b29jb21tZXJjZSAud29vY29tbWVyY2UtdGFicyB7XG4gIG1hcmdpbi10b3A6IDMuNzVyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWJvdHRvbTogMy43NXJlbSAhaW1wb3J0YW50O1xufVxuYm9keS53b29jb21tZXJjZSAud29vY29tbWVyY2UtdGFicyB1bC50YWJzLndjLXRhYnMsIGJvZHkud29vY29tbWVyY2UtcGFnZSAud29vY29tbWVyY2UtdGFicyB1bC50YWJzLndjLXRhYnMsIGRpdi53b29jb21tZXJjZSAud29vY29tbWVyY2UtdGFicyB1bC50YWJzLndjLXRhYnMge1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cbmJvZHkud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicy53Yy10YWJzOmJlZm9yZSwgYm9keS53b29jb21tZXJjZS1wYWdlIC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMud2MtdGFiczpiZWZvcmUsIGRpdi53b29jb21tZXJjZSAud29vY29tbWVyY2UtdGFicyB1bC50YWJzLndjLXRhYnM6YmVmb3JlIHtcbiAgYm9yZGVyLWJvdHRvbTogMC4wNjI1cmVtIHNvbGlkICMwMDNhNzE7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMud2MtdGFicyBsaSwgYm9keS53b29jb21tZXJjZS1wYWdlIC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMud2MtdGFicyBsaSwgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMud2MtdGFicyBsaSB7XG4gIGJhY2tncm91bmQ6ICMwMDNhNzE7XG4gIGJvcmRlcjogMC4wNjI1cmVtIHNvbGlkICMwMDNhNzE7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAgMC42MjVyZW07XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlLW91dDtcbiAgLW1zLXRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2Utb3V0O1xufVxuYm9keS53b29jb21tZXJjZSAud29vY29tbWVyY2UtdGFicyB1bC50YWJzLndjLXRhYnMgbGk6YmVmb3JlLCBib2R5Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMud2MtdGFicyBsaTphZnRlciwgYm9keS53b29jb21tZXJjZS1wYWdlIC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMud2MtdGFicyBsaTpiZWZvcmUsIGJvZHkud29vY29tbWVyY2UtcGFnZSAud29vY29tbWVyY2UtdGFicyB1bC50YWJzLndjLXRhYnMgbGk6YWZ0ZXIsIGRpdi53b29jb21tZXJjZSAud29vY29tbWVyY2UtdGFicyB1bC50YWJzLndjLXRhYnMgbGk6YmVmb3JlLCBkaXYud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicy53Yy10YWJzIGxpOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbmJvZHkud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicy53Yy10YWJzIGxpIGEsIGJvZHkud29vY29tbWVyY2UtcGFnZSAud29vY29tbWVyY2UtdGFicyB1bC50YWJzLndjLXRhYnMgbGkgYSwgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMud2MtdGFicyBsaSBhIHtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cbmJvZHkud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicy53Yy10YWJzIGxpOmhvdmVyLCBib2R5Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMud2MtdGFicyBsaTpmb2N1cywgYm9keS53b29jb21tZXJjZS1wYWdlIC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMud2MtdGFicyBsaTpob3ZlciwgYm9keS53b29jb21tZXJjZS1wYWdlIC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMud2MtdGFicyBsaTpmb2N1cywgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMud2MtdGFicyBsaTpob3ZlciwgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMud2MtdGFicyBsaTpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICM5MTI3MTI7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMud2MtdGFicyBsaTpob3ZlciBhLCBib2R5Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMud2MtdGFicyBsaTpmb2N1cyBhLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicy53Yy10YWJzIGxpOmhvdmVyIGEsIGJvZHkud29vY29tbWVyY2UtcGFnZSAud29vY29tbWVyY2UtdGFicyB1bC50YWJzLndjLXRhYnMgbGk6Zm9jdXMgYSwgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMud2MtdGFicyBsaTpob3ZlciBhLCBkaXYud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicy53Yy10YWJzIGxpOmZvY3VzIGEge1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbmJvZHkud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicy53Yy10YWJzIGxpLmFjdGl2ZSwgYm9keS53b29jb21tZXJjZSAud29vY29tbWVyY2UtdGFicyB1bC50YWJzLndjLXRhYnMgbGkuYWN0aXZlOmhvdmVyLCBib2R5Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMud2MtdGFicyBsaS5hY3RpdmU6Zm9jdXMsIGJvZHkud29vY29tbWVyY2UtcGFnZSAud29vY29tbWVyY2UtdGFicyB1bC50YWJzLndjLXRhYnMgbGkuYWN0aXZlLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicy53Yy10YWJzIGxpLmFjdGl2ZTpob3ZlciwgYm9keS53b29jb21tZXJjZS1wYWdlIC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMud2MtdGFicyBsaS5hY3RpdmU6Zm9jdXMsIGRpdi53b29jb21tZXJjZSAud29vY29tbWVyY2UtdGFicyB1bC50YWJzLndjLXRhYnMgbGkuYWN0aXZlLCBkaXYud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicy53Yy10YWJzIGxpLmFjdGl2ZTpob3ZlciwgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMud2MtdGFicyBsaS5hY3RpdmU6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjRjFGM0Y1O1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjRjFGM0Y1ICFpbXBvcnRhbnQ7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMud2MtdGFicyBsaS5hY3RpdmUgYSwgYm9keS53b29jb21tZXJjZSAud29vY29tbWVyY2UtdGFicyB1bC50YWJzLndjLXRhYnMgbGkuYWN0aXZlOmhvdmVyIGEsIGJvZHkud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicy53Yy10YWJzIGxpLmFjdGl2ZTpmb2N1cyBhLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicy53Yy10YWJzIGxpLmFjdGl2ZSBhLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicy53Yy10YWJzIGxpLmFjdGl2ZTpob3ZlciBhLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicy53Yy10YWJzIGxpLmFjdGl2ZTpmb2N1cyBhLCBkaXYud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicy53Yy10YWJzIGxpLmFjdGl2ZSBhLCBkaXYud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicy53Yy10YWJzIGxpLmFjdGl2ZTpob3ZlciBhLCBkaXYud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicy53Yy10YWJzIGxpLmFjdGl2ZTpmb2N1cyBhIHtcbiAgY29sb3I6ICMzMzMgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDBlbSkge1xuICBib2R5Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMud2MtdGFicyBsaSwgYm9keS53b29jb21tZXJjZS1wYWdlIC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMud2MtdGFicyBsaSwgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMud2MtdGFicyBsaSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMC4wNjI1cmVtIHNvbGlkICNGMUYzRjU7XG4gICAgYm94LXNoYWRvdzogMCAtMC4xMjVyZW0gMC40Mzc1cmVtICMwMDFlNjE7XG4gICAgcGFkZGluZzogMCAwLjYyNXJlbTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IHBhZGRpbmcgMC4ycyBlYXNlLW91dDtcbiAgICAtbW96LXRyYW5zaXRpb246IHBhZGRpbmcgMC4ycyBlYXNlLW91dDtcbiAgICAtbXMtdHJhbnNpdGlvbjogcGFkZGluZyAwLjJzIGVhc2Utb3V0O1xuICAgIHRyYW5zaXRpb246IHBhZGRpbmcgMC4ycyBlYXNlLW91dDtcbiAgfVxuICBib2R5Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMud2MtdGFicyBsaS5hY3RpdmUsIGJvZHkud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicy53Yy10YWJzIGxpLmFjdGl2ZTpob3ZlciwgYm9keS53b29jb21tZXJjZSAud29vY29tbWVyY2UtdGFicyB1bC50YWJzLndjLXRhYnMgbGkuYWN0aXZlOmZvY3VzLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicy53Yy10YWJzIGxpLmFjdGl2ZSwgYm9keS53b29jb21tZXJjZS1wYWdlIC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMud2MtdGFicyBsaS5hY3RpdmU6aG92ZXIsIGJvZHkud29vY29tbWVyY2UtcGFnZSAud29vY29tbWVyY2UtdGFicyB1bC50YWJzLndjLXRhYnMgbGkuYWN0aXZlOmZvY3VzLCBkaXYud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicy53Yy10YWJzIGxpLmFjdGl2ZSwgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMud2MtdGFicyBsaS5hY3RpdmU6aG92ZXIsIGRpdi53b29jb21tZXJjZSAud29vY29tbWVyY2UtdGFicyB1bC50YWJzLndjLXRhYnMgbGkuYWN0aXZlOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kOiAjOTEyNzEyO1xuICAgIHBhZGRpbmc6IDAuMzEyNXJlbSAwLjYyNXJlbTtcbiAgfVxuICBib2R5Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMud2MtdGFicyBsaS5hY3RpdmUgYSwgYm9keS53b29jb21tZXJjZSAud29vY29tbWVyY2UtdGFicyB1bC50YWJzLndjLXRhYnMgbGkuYWN0aXZlOmhvdmVyIGEsIGJvZHkud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicy53Yy10YWJzIGxpLmFjdGl2ZTpmb2N1cyBhLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicy53Yy10YWJzIGxpLmFjdGl2ZSBhLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicy53Yy10YWJzIGxpLmFjdGl2ZTpob3ZlciBhLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicy53Yy10YWJzIGxpLmFjdGl2ZTpmb2N1cyBhLCBkaXYud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicy53Yy10YWJzIGxpLmFjdGl2ZSBhLCBkaXYud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicy53Yy10YWJzIGxpLmFjdGl2ZTpob3ZlciBhLCBkaXYud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicy53Yy10YWJzIGxpLmFjdGl2ZTpmb2N1cyBhIHtcbiAgICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xuICB9XG59XG5ib2R5Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS10YWJzIC53b29jb21tZXJjZS1UYWJzLXBhbmVsLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLndvb2NvbW1lcmNlLXRhYnMgLndvb2NvbW1lcmNlLVRhYnMtcGFuZWwsIGRpdi53b29jb21tZXJjZSAud29vY29tbWVyY2UtdGFicyAud29vY29tbWVyY2UtVGFicy1wYW5lbCB7XG4gIGJhY2tncm91bmQ6ICNGMUYzRjU7XG4gIGJvcmRlcjogMC4wNjI1cmVtIHNvbGlkICMwMDNhNzE7XG4gIGJvcmRlci10b3A6IDA7XG4gIHBhZGRpbmc6IDAuOTM3NXJlbSAhaW1wb3J0YW50O1xufVxuYm9keS53b29jb21tZXJjZSAud29vY29tbWVyY2UtdGFicyAud29vY29tbWVyY2UtVGFicy1wYW5lbCBwOmxhc3Qtb2YtdHlwZSwgYm9keS53b29jb21tZXJjZS1wYWdlIC53b29jb21tZXJjZS10YWJzIC53b29jb21tZXJjZS1UYWJzLXBhbmVsIHA6bGFzdC1vZi10eXBlLCBkaXYud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXRhYnMgLndvb2NvbW1lcmNlLVRhYnMtcGFuZWwgcDpsYXN0LW9mLXR5cGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuYm9keS53b29jb21tZXJjZSAud29vY29tbWVyY2UtdGFicyAud29vY29tbWVyY2UtVGFicy1wYW5lbCB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMsIGJvZHkud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXRhYnMgLndvb2NvbW1lcmNlLVRhYnMtcGFuZWwgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRib2R5LCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLndvb2NvbW1lcmNlLXRhYnMgLndvb2NvbW1lcmNlLVRhYnMtcGFuZWwgdGFibGUuc2hvcF9hdHRyaWJ1dGVzLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLndvb2NvbW1lcmNlLXRhYnMgLndvb2NvbW1lcmNlLVRhYnMtcGFuZWwgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRib2R5LCBkaXYud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXRhYnMgLndvb2NvbW1lcmNlLVRhYnMtcGFuZWwgdGFibGUuc2hvcF9hdHRyaWJ1dGVzLCBkaXYud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXRhYnMgLndvb2NvbW1lcmNlLVRhYnMtcGFuZWwgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRib2R5IHtcbiAgYm9yZGVyOiAwLjA2MjVyZW0gc29saWQgI0YxRjNGNSAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuYm9keS53b29jb21tZXJjZSAud29vY29tbWVyY2UtdGFicyAud29vY29tbWVyY2UtVGFicy1wYW5lbCBoMi53b29jb21tZXJjZS1SZXZpZXdzLXRpdGxlLCBib2R5Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS10YWJzIC53b29jb21tZXJjZS1UYWJzLXBhbmVsIGgyLndvb2NvbW1lcmNlLVJldmlld3MtdGl0bGUgc3BhbiwgYm9keS53b29jb21tZXJjZS1wYWdlIC53b29jb21tZXJjZS10YWJzIC53b29jb21tZXJjZS1UYWJzLXBhbmVsIGgyLndvb2NvbW1lcmNlLVJldmlld3MtdGl0bGUsIGJvZHkud29vY29tbWVyY2UtcGFnZSAud29vY29tbWVyY2UtdGFicyAud29vY29tbWVyY2UtVGFicy1wYW5lbCBoMi53b29jb21tZXJjZS1SZXZpZXdzLXRpdGxlIHNwYW4sIGRpdi53b29jb21tZXJjZSAud29vY29tbWVyY2UtdGFicyAud29vY29tbWVyY2UtVGFicy1wYW5lbCBoMi53b29jb21tZXJjZS1SZXZpZXdzLXRpdGxlLCBkaXYud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXRhYnMgLndvb2NvbW1lcmNlLVRhYnMtcGFuZWwgaDIud29vY29tbWVyY2UtUmV2aWV3cy10aXRsZSBzcGFuIHtcbiAgZm9udC1zaXplOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtO1xufVxuYm9keS53b29jb21tZXJjZSAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkuY29tbWVudCAuY29tbWVudF9jb250YWluZXIgaW1nLmF2YXRhciwgYm9keS53b29jb21tZXJjZS1wYWdlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaS5jb21tZW50IC5jb21tZW50X2NvbnRhaW5lciBpbWcuYXZhdGFyLCBkaXYud29vY29tbWVyY2UgI3Jldmlld3MgI2NvbW1lbnRzIG9sLmNvbW1lbnRsaXN0IGxpLmNvbW1lbnQgLmNvbW1lbnRfY29udGFpbmVyIGltZy5hdmF0YXIge1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cbmJvZHkud29vY29tbWVyY2UgI3Jldmlld3MgI2NvbW1lbnRzIG9sLmNvbW1lbnRsaXN0IGxpLmNvbW1lbnQgLmNvbW1lbnRfY29udGFpbmVyIC5jb21tZW50LXRleHQsIGJvZHkud29vY29tbWVyY2UtcGFnZSAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkuY29tbWVudCAuY29tbWVudF9jb250YWluZXIgLmNvbW1lbnQtdGV4dCwgZGl2Lndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaS5jb21tZW50IC5jb21tZW50X2NvbnRhaW5lciAuY29tbWVudC10ZXh0IHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgbWFyZ2luOiAwIDAgMCAyLjVyZW07XG59XG5ib2R5Lndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaS5jb21tZW50IC5jb21tZW50X2NvbnRhaW5lciAuY29tbWVudC10ZXh0IC5zdGFyLXJhdGluZywgYm9keS53b29jb21tZXJjZS1wYWdlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaS5jb21tZW50IC5jb21tZW50X2NvbnRhaW5lciAuY29tbWVudC10ZXh0IC5zdGFyLXJhdGluZywgZGl2Lndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaS5jb21tZW50IC5jb21tZW50X2NvbnRhaW5lciAuY29tbWVudC10ZXh0IC5zdGFyLXJhdGluZyB7XG4gIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTtcbn1cbmJvZHkud29vY29tbWVyY2UgI3Jldmlld3MgI2NvbW1lbnRzIG9sLmNvbW1lbnRsaXN0IGxpLmNvbW1lbnQgLmNvbW1lbnRfY29udGFpbmVyIC5jb21tZW50LXRleHQgcC5tZXRhLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgI3Jldmlld3MgI2NvbW1lbnRzIG9sLmNvbW1lbnRsaXN0IGxpLmNvbW1lbnQgLmNvbW1lbnRfY29udGFpbmVyIC5jb21tZW50LXRleHQgcC5tZXRhLCBkaXYud29vY29tbWVyY2UgI3Jldmlld3MgI2NvbW1lbnRzIG9sLmNvbW1lbnRsaXN0IGxpLmNvbW1lbnQgLmNvbW1lbnRfY29udGFpbmVyIC5jb21tZW50LXRleHQgcC5tZXRhIHtcbiAgY29sb3I6ICMwMDAwMDA7XG59XG5ib2R5Lndvb2NvbW1lcmNlICNyZXZpZXdzICNyZXZpZXdfZm9ybV93cmFwcGVyICNyZXBseS10aXRsZSwgYm9keS53b29jb21tZXJjZS1wYWdlICNyZXZpZXdzICNyZXZpZXdfZm9ybV93cmFwcGVyICNyZXBseS10aXRsZSwgZGl2Lndvb2NvbW1lcmNlICNyZXZpZXdzICNyZXZpZXdfZm9ybV93cmFwcGVyICNyZXBseS10aXRsZSB7XG4gIGNvbG9yOiAjMDAzYTcxO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuYm9keS53b29jb21tZXJjZSAjcmV2aWV3cyAjcmV2aWV3X2Zvcm1fd3JhcHBlciBwLnN0YXJzLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgI3Jldmlld3MgI3Jldmlld19mb3JtX3dyYXBwZXIgcC5zdGFycywgZGl2Lndvb2NvbW1lcmNlICNyZXZpZXdzICNyZXZpZXdfZm9ybV93cmFwcGVyIHAuc3RhcnMge1xuICBjb2xvcjogI2I5OWMwMDtcbn1cbmJvZHkud29vY29tbWVyY2UgI3Jldmlld3MgI3Jldmlld19mb3JtX3dyYXBwZXIgcC5zdGFycyBhOmJlZm9yZSwgYm9keS53b29jb21tZXJjZS1wYWdlICNyZXZpZXdzICNyZXZpZXdfZm9ybV93cmFwcGVyIHAuc3RhcnMgYTpiZWZvcmUsIGRpdi53b29jb21tZXJjZSAjcmV2aWV3cyAjcmV2aWV3X2Zvcm1fd3JhcHBlciBwLnN0YXJzIGE6YmVmb3JlIHtcbiAgY29sb3I6ICNiOTljMDA7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC5wcm9kdWN0X21ldGEgc3Bhbi5za3Vfd3JhcHBlciBzdHJvbmcsIGJvZHkud29vY29tbWVyY2UtcGFnZSAucHJvZHVjdF9tZXRhIHNwYW4uc2t1X3dyYXBwZXIgc3Ryb25nLCBkaXYud29vY29tbWVyY2UgLnByb2R1Y3RfbWV0YSBzcGFuLnNrdV93cmFwcGVyIHN0cm9uZyB7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuYm9keS53b29jb21tZXJjZSAucHJvZHVjdF9tZXRhIHNwYW4ucG9zdGVkX2luIHN0cm9uZywgYm9keS53b29jb21tZXJjZS1wYWdlIC5wcm9kdWN0X21ldGEgc3Bhbi5wb3N0ZWRfaW4gc3Ryb25nLCBkaXYud29vY29tbWVyY2UgLnByb2R1Y3RfbWV0YSBzcGFuLnBvc3RlZF9pbiBzdHJvbmcge1xuICBjb2xvcjogIzAwMDAwMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICB3aWR0aDogMTAwJTtcbn1cbmJvZHkud29vY29tbWVyY2UgZm9ybS5jYXJ0LCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS5jYXJ0LCBkaXYud29vY29tbWVyY2UgZm9ybS5jYXJ0IHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuYm9keS53b29jb21tZXJjZSBmb3JtLmNhcnQgaW5wdXQsIGJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLmNhcnQgaW5wdXQsIGRpdi53b29jb21tZXJjZSBmb3JtLmNhcnQgaW5wdXQge1xuICBib3JkZXI6IDAuMDYyNXJlbSBzb2xpZCAjMDAzYTcxO1xuICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbTtcbiAgbWluLWhlaWdodDogMi43NXJlbTtcbn1cbmJvZHkud29vY29tbWVyY2UgZm9ybS5jYXJ0IGJ1dHRvbiwgYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0uY2FydCBidXR0b24sIGRpdi53b29jb21tZXJjZSBmb3JtLmNhcnQgYnV0dG9uIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtO1xufVxuYm9keS53b29jb21tZXJjZSAud29vY29tbWVyY2UtcHJvZHVjdC1nYWxsZXJ5LmltYWdlcyAuZmxleC12aWV3cG9ydCwgYm9keS53b29jb21tZXJjZS1wYWdlIC53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnkuaW1hZ2VzIC5mbGV4LXZpZXdwb3J0LCBkaXYud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXByb2R1Y3QtZ2FsbGVyeS5pbWFnZXMgLmZsZXgtdmlld3BvcnQge1xuICBib3JkZXI6IDAuMDYyNXJlbSBzb2xpZCAjQ0VENERBO1xufVxuYm9keS53b29jb21tZXJjZSAud29vY29tbWVyY2UtcHJvZHVjdC1nYWxsZXJ5LmltYWdlcyAuZmxleC12aWV3cG9ydCAud29vY29tbWVyY2UtcHJvZHVjdC1nYWxsZXJ5X19pbWFnZSwgYm9keS53b29jb21tZXJjZS1wYWdlIC53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnkuaW1hZ2VzIC5mbGV4LXZpZXdwb3J0IC53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnlfX2ltYWdlLCBkaXYud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXByb2R1Y3QtZ2FsbGVyeS5pbWFnZXMgLmZsZXgtdmlld3BvcnQgLndvb2NvbW1lcmNlLXByb2R1Y3QtZ2FsbGVyeV9faW1hZ2Uge1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcbn1cbmJvZHkud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXByb2R1Y3QtZ2FsbGVyeS5pbWFnZXMgLndvb2NvbW1lcmNlLXByb2R1Y3QtZ2FsbGVyeV9faW1hZ2UsIGJvZHkud29vY29tbWVyY2UtcGFnZSAud29vY29tbWVyY2UtcHJvZHVjdC1nYWxsZXJ5LmltYWdlcyAud29vY29tbWVyY2UtcHJvZHVjdC1nYWxsZXJ5X19pbWFnZSwgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnkuaW1hZ2VzIC53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnlfX2ltYWdlIHtcbiAgYm9yZGVyOiAwLjA2MjVyZW0gc29saWQgIzAwM2E3MTtcbiAgY3Vyc29yOiBncmFiICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnkuaW1hZ2VzIG9sLmZsZXgtY29udHJvbC1uYXYuZmxleC1jb250cm9sLXRodW1icywgYm9keS53b29jb21tZXJjZS1wYWdlIC53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnkuaW1hZ2VzIG9sLmZsZXgtY29udHJvbC1uYXYuZmxleC1jb250cm9sLXRodW1icywgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnkuaW1hZ2VzIG9sLmZsZXgtY29udHJvbC1uYXYuZmxleC1jb250cm9sLXRodW1icyB7XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07XG59XG5ib2R5Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnkuaW1hZ2VzIG9sLmZsZXgtY29udHJvbC1uYXYuZmxleC1jb250cm9sLXRodW1icyBsaSwgYm9keS53b29jb21tZXJjZS1wYWdlIC53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnkuaW1hZ2VzIG9sLmZsZXgtY29udHJvbC1uYXYuZmxleC1jb250cm9sLXRodW1icyBsaSwgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnkuaW1hZ2VzIG9sLmZsZXgtY29udHJvbC1uYXYuZmxleC1jb250cm9sLXRodW1icyBsaSB7XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG59XG5ib2R5Lndvb2NvbW1lcmNlIC5zdW1tYXJ5LmVudHJ5LXN1bW1hcnksIGJvZHkud29vY29tbWVyY2UtcGFnZSAuc3VtbWFyeS5lbnRyeS1zdW1tYXJ5LCBkaXYud29vY29tbWVyY2UgLnN1bW1hcnkuZW50cnktc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5ib2R5Lndvb2NvbW1lcmNlIC5zdW1tYXJ5LmVudHJ5LXN1bW1hcnkgaDIucHJvZHVjdF90aXRsZS5lbnRyeS10aXRsZSwgYm9keS53b29jb21tZXJjZS1wYWdlIC5zdW1tYXJ5LmVudHJ5LXN1bW1hcnkgaDIucHJvZHVjdF90aXRsZS5lbnRyeS10aXRsZSwgZGl2Lndvb2NvbW1lcmNlIC5zdW1tYXJ5LmVudHJ5LXN1bW1hcnkgaDIucHJvZHVjdF90aXRsZS5lbnRyeS10aXRsZSB7XG4gIG9yZGVyOiAxO1xuICBib3JkZXItYm90dG9tOiAwLjEyNXJlbSBzb2xpZCAjMDAzYTcxO1xuICBmb250LXNpemU6IDEuODc1cmVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC42MjVyZW07XG59XG5ib2R5Lndvb2NvbW1lcmNlIC5zdW1tYXJ5LmVudHJ5LXN1bW1hcnkgLndvb2NvbW1lcmNlLXByb2R1Y3QtZGV0YWlsc19fc2hvcnQtZGVzY3JpcHRpb24sIGJvZHkud29vY29tbWVyY2UtcGFnZSAuc3VtbWFyeS5lbnRyeS1zdW1tYXJ5IC53b29jb21tZXJjZS1wcm9kdWN0LWRldGFpbHNfX3Nob3J0LWRlc2NyaXB0aW9uLCBkaXYud29vY29tbWVyY2UgLnN1bW1hcnkuZW50cnktc3VtbWFyeSAud29vY29tbWVyY2UtcHJvZHVjdC1kZXRhaWxzX19zaG9ydC1kZXNjcmlwdGlvbiB7XG4gIG9yZGVyOiAyO1xufVxuYm9keS53b29jb21tZXJjZSAuc3VtbWFyeS5lbnRyeS1zdW1tYXJ5IHAucHJpY2UsIGJvZHkud29vY29tbWVyY2UtcGFnZSAuc3VtbWFyeS5lbnRyeS1zdW1tYXJ5IHAucHJpY2UsIGRpdi53b29jb21tZXJjZSAuc3VtbWFyeS5lbnRyeS1zdW1tYXJ5IHAucHJpY2Uge1xuICBvcmRlcjogNDtcbn1cbmJvZHkud29vY29tbWVyY2UgLnN1bW1hcnkuZW50cnktc3VtbWFyeSBwLnByaWNlIHN0cm9uZywgYm9keS53b29jb21tZXJjZS1wYWdlIC5zdW1tYXJ5LmVudHJ5LXN1bW1hcnkgcC5wcmljZSBzdHJvbmcsIGRpdi53b29jb21tZXJjZSAuc3VtbWFyeS5lbnRyeS1zdW1tYXJ5IHAucHJpY2Ugc3Ryb25nIHtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuYm9keS53b29jb21tZXJjZSAuc3VtbWFyeS5lbnRyeS1zdW1tYXJ5IGZvcm0uY2FydCwgYm9keS53b29jb21tZXJjZS1wYWdlIC5zdW1tYXJ5LmVudHJ5LXN1bW1hcnkgZm9ybS5jYXJ0LCBkaXYud29vY29tbWVyY2UgLnN1bW1hcnkuZW50cnktc3VtbWFyeSBmb3JtLmNhcnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBvcmRlcjogNTtcbn1cbmJvZHkud29vY29tbWVyY2UgLnN1bW1hcnkuZW50cnktc3VtbWFyeSBmb3JtLmNhcnQgLnF1YW50aXR5LCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLnN1bW1hcnkuZW50cnktc3VtbWFyeSBmb3JtLmNhcnQgLnF1YW50aXR5LCBkaXYud29vY29tbWVyY2UgLnN1bW1hcnkuZW50cnktc3VtbWFyeSBmb3JtLmNhcnQgLnF1YW50aXR5IHtcbiAgb3JkZXI6IDE7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC5zdW1tYXJ5LmVudHJ5LXN1bW1hcnkgZm9ybS5jYXJ0IC5xdWFudGl0eSBpbnB1dC5pbnB1dC10ZXh0LCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLnN1bW1hcnkuZW50cnktc3VtbWFyeSBmb3JtLmNhcnQgLnF1YW50aXR5IGlucHV0LmlucHV0LXRleHQsIGRpdi53b29jb21tZXJjZSAuc3VtbWFyeS5lbnRyeS1zdW1tYXJ5IGZvcm0uY2FydCAucXVhbnRpdHkgaW5wdXQuaW5wdXQtdGV4dCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC5zdW1tYXJ5LmVudHJ5LXN1bW1hcnkgZm9ybS5jYXJ0IGJ1dHRvbiwgYm9keS53b29jb21tZXJjZS1wYWdlIC5zdW1tYXJ5LmVudHJ5LXN1bW1hcnkgZm9ybS5jYXJ0IGJ1dHRvbiwgZGl2Lndvb2NvbW1lcmNlIC5zdW1tYXJ5LmVudHJ5LXN1bW1hcnkgZm9ybS5jYXJ0IGJ1dHRvbiB7XG4gIG1heC1oZWlnaHQ6IDIuNzVyZW07XG4gIG9yZGVyOiAyO1xufVxuYm9keS53b29jb21tZXJjZSAuc3VtbWFyeS5lbnRyeS1zdW1tYXJ5IC5wcm9kdWN0X21ldGEsIGJvZHkud29vY29tbWVyY2UtcGFnZSAuc3VtbWFyeS5lbnRyeS1zdW1tYXJ5IC5wcm9kdWN0X21ldGEsIGRpdi53b29jb21tZXJjZSAuc3VtbWFyeS5lbnRyeS1zdW1tYXJ5IC5wcm9kdWN0X21ldGEge1xuICBib3JkZXItYm90dG9tOiAwLjEyNXJlbSBzb2xpZCAjMDAzYTcxO1xuICBib3JkZXItdG9wOiAwLjEyNXJlbSBzb2xpZCAjMDAzYTcxO1xuICBtYXJnaW46IDAgMCAwLjkzNzVyZW07XG4gIG9yZGVyOiAzO1xuICBwYWRkaW5nOiAwLjYyNXJlbSAwIDAuNjI1cmVtO1xufVxuYm9keS53b29jb21tZXJjZSBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bC5wYWdlLW51bWJlcnMsIGJvZHkud29vY29tbWVyY2UtcGFnZSBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bC5wYWdlLW51bWJlcnMsIGRpdi53b29jb21tZXJjZSBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bC5wYWdlLW51bWJlcnMge1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcDogMC4xMjVyZW0gc29saWQgIzAwM2E3MSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwLjkzNzVyZW0gMCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xufVxuYm9keS53b29jb21tZXJjZSBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bC5wYWdlLW51bWJlcnMgbGksIGJvZHkud29vY29tbWVyY2UtcGFnZSBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bC5wYWdlLW51bWJlcnMgbGksIGRpdi53b29jb21tZXJjZSBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bC5wYWdlLW51bWJlcnMgbGkge1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogbm9uZTtcbiAgd2lkdGg6IDEuODc1cmVtO1xufVxuYm9keS53b29jb21tZXJjZSBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bC5wYWdlLW51bWJlcnMgbGkgc3Bhbi5jdXJyZW50LCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwucGFnZS1udW1iZXJzIGxpIHNwYW4uY3VycmVudCwgZGl2Lndvb2NvbW1lcmNlIG5hdi53b29jb21tZXJjZS1wYWdpbmF0aW9uIHVsLnBhZ2UtbnVtYmVycyBsaSBzcGFuLmN1cnJlbnQge1xuICBiYWNrZ3JvdW5kOiAjOTEyNzEyO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogNzAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuYm9keS53b29jb21tZXJjZSBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bC5wYWdlLW51bWJlcnMgbGkgYS5wYWdlLW51bWJlcnMsIGJvZHkud29vY29tbWVyY2UtcGFnZSBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bC5wYWdlLW51bWJlcnMgbGkgYS5wYWdlLW51bWJlcnMsIGRpdi53b29jb21tZXJjZSBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bC5wYWdlLW51bWJlcnMgbGkgYS5wYWdlLW51bWJlcnMge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBmb250LXdlaWdodDogNzAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuYm9keS53b29jb21tZXJjZSBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bC5wYWdlLW51bWJlcnMgbGkgYS5wYWdlLW51bWJlcnM6aG92ZXIsIGJvZHkud29vY29tbWVyY2UgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwucGFnZS1udW1iZXJzIGxpIGEucGFnZS1udW1iZXJzOmZvY3VzLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwucGFnZS1udW1iZXJzIGxpIGEucGFnZS1udW1iZXJzOmhvdmVyLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwucGFnZS1udW1iZXJzIGxpIGEucGFnZS1udW1iZXJzOmZvY3VzLCBkaXYud29vY29tbWVyY2UgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwucGFnZS1udW1iZXJzIGxpIGEucGFnZS1udW1iZXJzOmhvdmVyLCBkaXYud29vY29tbWVyY2UgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwucGFnZS1udW1iZXJzIGxpIGEucGFnZS1udW1iZXJzOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogIzAwM2E3MTtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cbmJvZHkud29vY29tbWVyY2UgLmlucHV0LW51bWJlci1ncm91cCwgYm9keS53b29jb21tZXJjZS1wYWdlIC5pbnB1dC1udW1iZXItZ3JvdXAsIGRpdi53b29jb21tZXJjZSAuaW5wdXQtbnVtYmVyLWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXgtd2lkdGg6IDEyLjVyZW07XG59XG5ib2R5Lndvb2NvbW1lcmNlIC5pbnB1dC1udW1iZXItZ3JvdXAgaW5wdXRbdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuYm9keS53b29jb21tZXJjZSAuaW5wdXQtbnVtYmVyLWdyb3VwIGlucHV0W3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiwgYm9keS53b29jb21tZXJjZS1wYWdlIC5pbnB1dC1udW1iZXItZ3JvdXAgaW5wdXRbdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuYm9keS53b29jb21tZXJjZS1wYWdlIC5pbnB1dC1udW1iZXItZ3JvdXAgaW5wdXRbdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLCBkaXYud29vY29tbWVyY2UgLmlucHV0LW51bWJlci1ncm91cCBpbnB1dFt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5kaXYud29vY29tbWVyY2UgLmlucHV0LW51bWJlci1ncm91cCBpbnB1dFt0eXBlPW51bWJlcl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuYm9keS53b29jb21tZXJjZSAuaW5wdXQtbnVtYmVyLWdyb3VwIGlucHV0W3R5cGU9bnVtYmVyXSwgYm9keS53b29jb21tZXJjZS1wYWdlIC5pbnB1dC1udW1iZXItZ3JvdXAgaW5wdXRbdHlwZT1udW1iZXJdLCBkaXYud29vY29tbWVyY2UgLmlucHV0LW51bWJlci1ncm91cCBpbnB1dFt0eXBlPW51bWJlcl0ge1xuICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbn1cbmJvZHkud29vY29tbWVyY2UgLmlucHV0LW51bWJlci1ncm91cCAuaW5wdXQtZ3JvdXAtYnV0dG9uLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLmlucHV0LW51bWJlci1ncm91cCAuaW5wdXQtZ3JvdXAtYnV0dG9uLCBkaXYud29vY29tbWVyY2UgLmlucHV0LW51bWJlci1ncm91cCAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgbGluZS1oZWlnaHQ6IGNhbGMoODBweCAvIDIpO1xufVxuYm9keS53b29jb21tZXJjZSAuaW5wdXQtbnVtYmVyLWdyb3VwIC5pbnB1dC1udW1iZXIsIGJvZHkud29vY29tbWVyY2UtcGFnZSAuaW5wdXQtbnVtYmVyLWdyb3VwIC5pbnB1dC1udW1iZXIsIGRpdi53b29jb21tZXJjZSAuaW5wdXQtbnVtYmVyLWdyb3VwIC5pbnB1dC1udW1iZXIge1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIG1heC13aWR0aDogMy4xMjVyZW07XG4gIG91dGxpbmU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgd2lkdGg6IDEwMCU7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC5pbnB1dC1udW1iZXItZ3JvdXAgLmlucHV0LW51bWJlcixcbmJvZHkud29vY29tbWVyY2UgLmlucHV0LW51bWJlci1ncm91cCAuaW5wdXQtbnVtYmVyLWRlY3JlbWVudCxcbmJvZHkud29vY29tbWVyY2UgLmlucHV0LW51bWJlci1ncm91cCAuaW5wdXQtbnVtYmVyLWluY3JlbWVudCwgYm9keS53b29jb21tZXJjZS1wYWdlIC5pbnB1dC1udW1iZXItZ3JvdXAgLmlucHV0LW51bWJlcixcbmJvZHkud29vY29tbWVyY2UtcGFnZSAuaW5wdXQtbnVtYmVyLWdyb3VwIC5pbnB1dC1udW1iZXItZGVjcmVtZW50LFxuYm9keS53b29jb21tZXJjZS1wYWdlIC5pbnB1dC1udW1iZXItZ3JvdXAgLmlucHV0LW51bWJlci1pbmNyZW1lbnQsIGRpdi53b29jb21tZXJjZSAuaW5wdXQtbnVtYmVyLWdyb3VwIC5pbnB1dC1udW1iZXIsXG5kaXYud29vY29tbWVyY2UgLmlucHV0LW51bWJlci1ncm91cCAuaW5wdXQtbnVtYmVyLWRlY3JlbWVudCxcbmRpdi53b29jb21tZXJjZSAuaW5wdXQtbnVtYmVyLWdyb3VwIC5pbnB1dC1udW1iZXItaW5jcmVtZW50IHtcbiAgYm9yZGVyOiAwLjA2MjVyZW0gc29saWQgIzAwM2E3MTtcbiAgaGVpZ2h0OiA0MHB4O1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbmJvZHkud29vY29tbWVyY2UgLmlucHV0LW51bWJlci1ncm91cCAuaW5wdXQtbnVtYmVyLWRlY3JlbWVudCxcbmJvZHkud29vY29tbWVyY2UgLmlucHV0LW51bWJlci1ncm91cCAuaW5wdXQtbnVtYmVyLWluY3JlbWVudCwgYm9keS53b29jb21tZXJjZS1wYWdlIC5pbnB1dC1udW1iZXItZ3JvdXAgLmlucHV0LW51bWJlci1kZWNyZW1lbnQsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLmlucHV0LW51bWJlci1ncm91cCAuaW5wdXQtbnVtYmVyLWluY3JlbWVudCwgZGl2Lndvb2NvbW1lcmNlIC5pbnB1dC1udW1iZXItZ3JvdXAgLmlucHV0LW51bWJlci1kZWNyZW1lbnQsXG5kaXYud29vY29tbWVyY2UgLmlucHV0LW51bWJlci1ncm91cCAuaW5wdXQtbnVtYmVyLWluY3JlbWVudCB7XG4gIGJhY2tncm91bmQ6ICMwMDNhNzE7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogQXJpYWwgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDIuMTg3NXJlbTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbn1cbmJvZHkud29vY29tbWVyY2UgLmlucHV0LW51bWJlci1ncm91cCAuaW5wdXQtbnVtYmVyLWRlY3JlbWVudDpob3ZlciwgYm9keS53b29jb21tZXJjZSAuaW5wdXQtbnVtYmVyLWdyb3VwIC5pbnB1dC1udW1iZXItZGVjcmVtZW50OmZvY3VzLFxuYm9keS53b29jb21tZXJjZSAuaW5wdXQtbnVtYmVyLWdyb3VwIC5pbnB1dC1udW1iZXItaW5jcmVtZW50OmhvdmVyLFxuYm9keS53b29jb21tZXJjZSAuaW5wdXQtbnVtYmVyLWdyb3VwIC5pbnB1dC1udW1iZXItaW5jcmVtZW50OmZvY3VzLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLmlucHV0LW51bWJlci1ncm91cCAuaW5wdXQtbnVtYmVyLWRlY3JlbWVudDpob3ZlciwgYm9keS53b29jb21tZXJjZS1wYWdlIC5pbnB1dC1udW1iZXItZ3JvdXAgLmlucHV0LW51bWJlci1kZWNyZW1lbnQ6Zm9jdXMsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLmlucHV0LW51bWJlci1ncm91cCAuaW5wdXQtbnVtYmVyLWluY3JlbWVudDpob3ZlcixcbmJvZHkud29vY29tbWVyY2UtcGFnZSAuaW5wdXQtbnVtYmVyLWdyb3VwIC5pbnB1dC1udW1iZXItaW5jcmVtZW50OmZvY3VzLCBkaXYud29vY29tbWVyY2UgLmlucHV0LW51bWJlci1ncm91cCAuaW5wdXQtbnVtYmVyLWRlY3JlbWVudDpob3ZlciwgZGl2Lndvb2NvbW1lcmNlIC5pbnB1dC1udW1iZXItZ3JvdXAgLmlucHV0LW51bWJlci1kZWNyZW1lbnQ6Zm9jdXMsXG5kaXYud29vY29tbWVyY2UgLmlucHV0LW51bWJlci1ncm91cCAuaW5wdXQtbnVtYmVyLWluY3JlbWVudDpob3ZlcixcbmRpdi53b29jb21tZXJjZSAuaW5wdXQtbnVtYmVyLWdyb3VwIC5pbnB1dC1udW1iZXItaW5jcmVtZW50OmZvY3VzIHtcbiAgYmFja2dyb3VuZDogIzAwMDAwMDtcbn1cbmJvZHkud29vY29tbWVyY2UgLmlucHV0LW51bWJlci1ncm91cCAuaW5wdXQtbnVtYmVyLWRlY3JlbWVudCwgYm9keS53b29jb21tZXJjZS1wYWdlIC5pbnB1dC1udW1iZXItZ3JvdXAgLmlucHV0LW51bWJlci1kZWNyZW1lbnQsIGRpdi53b29jb21tZXJjZSAuaW5wdXQtbnVtYmVyLWdyb3VwIC5pbnB1dC1udW1iZXItZGVjcmVtZW50IHtcbiAgYm9yZGVyLXJhZGl1czogMC4xODc1cmVtIDAgMCAwLjE4NzVyZW07XG59XG5ib2R5Lndvb2NvbW1lcmNlIC5pbnB1dC1udW1iZXItZ3JvdXAgLmlucHV0LW51bWJlci1pbmNyZW1lbnQsIGJvZHkud29vY29tbWVyY2UtcGFnZSAuaW5wdXQtbnVtYmVyLWdyb3VwIC5pbnB1dC1udW1iZXItaW5jcmVtZW50LCBkaXYud29vY29tbWVyY2UgLmlucHV0LW51bWJlci1ncm91cCAuaW5wdXQtbnVtYmVyLWluY3JlbWVudCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMC4xODc1cmVtIDAuMTg3NXJlbSAwO1xufVxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0YWJsZSwgYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlLCBkaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUge1xuICBib3JkZXItY29sb3I6ICMwMDNhNzEgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0YWJsZSB0aGVhZCwgYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlIHRoZWFkLCBkaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUgdGhlYWQge1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogIzAwM2E3MTtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlIHRoZWFkIHRyIHRoLnByb2R1Y3QtbmFtZSwgYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlIHRoZWFkIHRyIHRoLnByb2R1Y3QtbmFtZSwgZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlIHRoZWFkIHRyIHRoLnByb2R1Y3QtbmFtZSB7XG4gIHdpZHRoOiA1MCU7XG59XG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlIHRoZWFkIHRyIHRoLnByb2R1Y3QtcHJpY2UsXG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlIHRoZWFkIHRyIHRoLnByb2R1Y3QtcXVhbnRpdHksXG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlIHRoZWFkIHRyIHRoLnByb2R1Y3Qtc3VidG90YWwsIGJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0YWJsZSB0aGVhZCB0ciB0aC5wcm9kdWN0LXByaWNlLFxuYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlIHRoZWFkIHRyIHRoLnByb2R1Y3QtcXVhbnRpdHksXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUgdGhlYWQgdHIgdGgucHJvZHVjdC1zdWJ0b3RhbCwgZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlIHRoZWFkIHRyIHRoLnByb2R1Y3QtcHJpY2UsXG5kaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUgdGhlYWQgdHIgdGgucHJvZHVjdC1xdWFudGl0eSxcbmRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0YWJsZSB0aGVhZCB0ciB0aC5wcm9kdWN0LXN1YnRvdGFsIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0YWJsZSB0aGVhZCB0ciB0aC5wcm9kdWN0LXJlbW92ZSwgYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlIHRoZWFkIHRyIHRoLnByb2R1Y3QtcmVtb3ZlLCBkaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUgdGhlYWQgdHIgdGgucHJvZHVjdC1yZW1vdmUge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHdpZHRoOiAycmVtO1xufVxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0YWJsZSB0Ym9keSB0ciB0ZCwgYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlIHRib2R5IHRyIHRkLCBkaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUgdGJvZHkgdHIgdGQge1xuICBib3JkZXItY29sb3I6ICMwMDNhNzEgIWltcG9ydGFudDtcbn1cbmJvZHkud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUgdGJvZHkgdHIgdGQucHJvZHVjdC1uYW1lLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUgdGJvZHkgdHIgdGQucHJvZHVjdC1uYW1lLCBkaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUgdGJvZHkgdHIgdGQucHJvZHVjdC1uYW1lIHtcbiAgd2lkdGg6IDUwJTtcbn1cbmJvZHkud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUgdGJvZHkgdHIgdGQucHJvZHVjdC1uYW1lIHNwYW4ucHJvZHVjdC10aHVtYm5haWwsIGJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0YWJsZSB0Ym9keSB0ciB0ZC5wcm9kdWN0LW5hbWUgc3Bhbi5wcm9kdWN0LXRodW1ibmFpbCwgZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlIHRib2R5IHRyIHRkLnByb2R1Y3QtbmFtZSBzcGFuLnByb2R1Y3QtdGh1bWJuYWlsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IGF1dG87XG4gIHdpZHRoOiA0LjY4NzVyZW0gIWltcG9ydGFudDtcbn1cbmJvZHkud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUgdGJvZHkgdHIgdGQucHJvZHVjdC1uYW1lIHNwYW4ucHJvZHVjdC10aHVtYm5haWwgYSwgYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlIHRib2R5IHRyIHRkLnByb2R1Y3QtbmFtZSBzcGFuLnByb2R1Y3QtdGh1bWJuYWlsIGEsIGRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0YWJsZSB0Ym9keSB0ciB0ZC5wcm9kdWN0LW5hbWUgc3Bhbi5wcm9kdWN0LXRodW1ibmFpbCBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMC4zMTI1cmVtICFpbXBvcnRhbnQ7XG59XG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlIHRib2R5IHRyIHRkLnByb2R1Y3QtbmFtZSBzcGFuLnByb2R1Y3QtdGh1bWJuYWlsIGltZywgYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlIHRib2R5IHRyIHRkLnByb2R1Y3QtbmFtZSBzcGFuLnByb2R1Y3QtdGh1bWJuYWlsIGltZywgZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlIHRib2R5IHRyIHRkLnByb2R1Y3QtbmFtZSBzcGFuLnByb2R1Y3QtdGh1bWJuYWlsIGltZyB7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cbmJvZHkud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUgdGJvZHkgdHIgdGQucHJvZHVjdC1wcmljZSwgYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlIHRib2R5IHRyIHRkLnByb2R1Y3QtcHJpY2UsIGRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0YWJsZSB0Ym9keSB0ciB0ZC5wcm9kdWN0LXByaWNlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0YWJsZSB0Ym9keSB0ciB0ZC5wcm9kdWN0LXF1YW50aXR5LCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUgdGJvZHkgdHIgdGQucHJvZHVjdC1xdWFudGl0eSwgZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlIHRib2R5IHRyIHRkLnByb2R1Y3QtcXVhbnRpdHkge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlIHRib2R5IHRyIHRkLnByb2R1Y3QtcXVhbnRpdHkgLnF1YW50aXR5IC5pbnB1dC1udW1iZXItZ3JvdXAsIGJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0YWJsZSB0Ym9keSB0ciB0ZC5wcm9kdWN0LXF1YW50aXR5IC5xdWFudGl0eSAuaW5wdXQtbnVtYmVyLWdyb3VwLCBkaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUgdGJvZHkgdHIgdGQucHJvZHVjdC1xdWFudGl0eSAucXVhbnRpdHkgLmlucHV0LW51bWJlci1ncm91cCB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0YWJsZSB0Ym9keSB0ciB0ZC5wcm9kdWN0LXN1YnRvdGFsLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUgdGJvZHkgdHIgdGQucHJvZHVjdC1zdWJ0b3RhbCwgZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlIHRib2R5IHRyIHRkLnByb2R1Y3Qtc3VidG90YWwge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlIHRib2R5IHRyIHRkLnByb2R1Y3QtcmVtb3ZlLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUgdGJvZHkgdHIgdGQucHJvZHVjdC1yZW1vdmUsIGRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0YWJsZSB0Ym9keSB0ciB0ZC5wcm9kdWN0LXJlbW92ZSB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMi42MjVyZW07XG59XG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlIHRib2R5IHRyIHRkLnByb2R1Y3QtcmVtb3ZlIGEucmVtb3ZlLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUgdGJvZHkgdHIgdGQucHJvZHVjdC1yZW1vdmUgYS5yZW1vdmUsIGRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0YWJsZSB0Ym9keSB0ciB0ZC5wcm9kdWN0LXJlbW92ZSBhLnJlbW92ZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbn1cbmJvZHkud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUgdGJvZHkgdHI6bGFzdC1vZi10eXBlLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUgdGJvZHkgdHI6bGFzdC1vZi10eXBlLCBkaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUgdGJvZHkgdHI6bGFzdC1vZi10eXBlIHtcbiAgYmFja2dyb3VuZDogIzAwM2E3MTtcbn1cbmJvZHkud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUgdGJvZHkgaW5wdXQuaW5wdXQtdGV4dC5xdHkudGV4dCwgYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlIHRib2R5IGlucHV0LmlucHV0LXRleHQucXR5LnRleHQsIGRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0YWJsZSB0Ym9keSBpbnB1dC5pbnB1dC10ZXh0LnF0eS50ZXh0IHtcbiAgYm9yZGVyOiAwLjA2MjVyZW0gc29saWQgIzAwM2E3MTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbmJvZHkud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUgdGJvZHkgLnF1YW50aXR5LCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUgdGJvZHkgLnF1YW50aXR5LCBkaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUgdGJvZHkgLnF1YW50aXR5IHtcbiAgbWF4LXdpZHRoOiAxMi41cmVtO1xufVxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0YWJsZSB0Ym9keSAuY291cG9uIC5idXR0b24sIGJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0YWJsZSB0Ym9keSAuY291cG9uIC5idXR0b24sIGRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0YWJsZSB0Ym9keSAuY291cG9uIC5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMDAzYTcxICFpbXBvcnRhbnQ7XG4gIGxpbmUtaGVpZ2h0OiAyLjVyZW07XG4gIG1heC1oZWlnaHQ6IDIuNXJlbTtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDAuODc1cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjg3NXJlbTtcbn1cbmJvZHkud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUgdGJvZHkgLmNvdXBvbiAuYnV0dG9uOmhvdmVyLCBib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlIHRib2R5IC5jb3Vwb24gLmJ1dHRvbjpmb2N1cywgYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlIHRib2R5IC5jb3Vwb24gLmJ1dHRvbjpob3ZlciwgYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlIHRib2R5IC5jb3Vwb24gLmJ1dHRvbjpmb2N1cywgZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlIHRib2R5IC5jb3Vwb24gLmJ1dHRvbjpob3ZlciwgZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlIHRib2R5IC5jb3Vwb24gLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICMwMDAwMDAgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cbmJvZHkud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUgdGJvZHkgLmNvdXBvbiBpbnB1dCNjb3Vwb25fY29kZSwgYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlIHRib2R5IC5jb3Vwb24gaW5wdXQjY291cG9uX2NvZGUsIGRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0YWJsZSB0Ym9keSAuY291cG9uIGlucHV0I2NvdXBvbl9jb2RlIHtcbiAgYm9yZGVyOiAwLjA2MjVyZW0gc29saWQgIzAwM2E3MTtcbiAgYm9yZGVyLXJhZGl1czogMC4zNzVyZW07XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIG1pbi1oZWlnaHQ6IDIuNXJlbTtcbiAgbWluLXdpZHRoOiA3LjVyZW07XG59XG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlIHRib2R5IC5idXR0b25bbmFtZT11cGRhdGVfY2FydF0sIGJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0YWJsZSB0Ym9keSAuYnV0dG9uW25hbWU9dXBkYXRlX2NhcnRdLCBkaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUgdGJvZHkgLmJ1dHRvbltuYW1lPXVwZGF0ZV9jYXJ0XSB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkYgIWltcG9ydGFudDtcbiAgY29sb3I6ICMwMDNhNzEgIWltcG9ydGFudDtcbiAgbWluLWhlaWdodDogMi41cmVtO1xufVxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0YWJsZSB0Ym9keSAuYnV0dG9uW25hbWU9dXBkYXRlX2NhcnRdOmhvdmVyLCBib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlIHRib2R5IC5idXR0b25bbmFtZT11cGRhdGVfY2FydF06Zm9jdXMsIGJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0YWJsZSB0Ym9keSAuYnV0dG9uW25hbWU9dXBkYXRlX2NhcnRdOmhvdmVyLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUgdGJvZHkgLmJ1dHRvbltuYW1lPXVwZGF0ZV9jYXJ0XTpmb2N1cywgZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlIHRib2R5IC5idXR0b25bbmFtZT11cGRhdGVfY2FydF06aG92ZXIsIGRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0YWJsZSB0Ym9keSAuYnV0dG9uW25hbWU9dXBkYXRlX2NhcnRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogIzAwMDAwMCAhaW1wb3J0YW50O1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuYm9keS53b29jb21tZXJjZSAud2MtcHJvY2VlZC10by1jaGVja291dCwgYm9keS53b29jb21tZXJjZS1wYWdlIC53Yy1wcm9jZWVkLXRvLWNoZWNrb3V0LCBkaXYud29vY29tbWVyY2UgLndjLXByb2NlZWQtdG8tY2hlY2tvdXQge1xuICBwYWRkaW5nOiAwO1xufVxuYm9keS53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscywgYm9keS53b29jb21tZXJjZS1wYWdlIC5jYXJ0LWNvbGxhdGVyYWxzLCBkaXYud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWFyZ2luLWxlZnQ6IC0xLjg3NXJlbTtcbiAgd2lkdGg6IGNhbGMoMTAwJSArIDEuODc1cmVtKTtcbn1cbmJvZHkud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgZGl2LmNvdXBvbiwgYm9keS53b29jb21tZXJjZS1wYWdlIC5jYXJ0LWNvbGxhdGVyYWxzIGRpdi5jb3Vwb24sIGRpdi53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyBkaXYuY291cG9uIHtcbiAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTtcbiAgd2lkdGg6IDUwJTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTYuMjVlbSkge1xuICBib2R5Lndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIGRpdi5jb3Vwb24sIGJvZHkud29vY29tbWVyY2UtcGFnZSAuY2FydC1jb2xsYXRlcmFscyBkaXYuY291cG9uLCBkaXYud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgZGl2LmNvdXBvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5ib2R5Lndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIGRpdi5jb3Vwb24gbGFiZWwsIGJvZHkud29vY29tbWVyY2UtcGFnZSAuY2FydC1jb2xsYXRlcmFscyBkaXYuY291cG9uIGxhYmVsLCBkaXYud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgZGl2LmNvdXBvbiBsYWJlbCB7XG4gIGNvbG9yOiAjMDAzYTcxO1xuICBmb250LWZhbWlseTogXCJCYXJsb3cgU2VtaSBDb25kZW5zZWRcIiwgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbn1cbmJvZHkud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgZGl2LmNvdXBvbiBpbnB1dCwgYm9keS53b29jb21tZXJjZS1wYWdlIC5jYXJ0LWNvbGxhdGVyYWxzIGRpdi5jb3Vwb24gaW5wdXQsIGRpdi53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyBkaXYuY291cG9uIGlucHV0IHtcbiAgYm9yZGVyLWNvbG9yOiAjMDAzYTcxICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDAuMTg3NXJlbSAhaW1wb3J0YW50O1xuICBtaW4taGVpZ2h0OiAyLjgxMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xufVxuYm9keS53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyBkaXYuY291cG9uIC5idXR0b24sIGJvZHkud29vY29tbWVyY2UtcGFnZSAuY2FydC1jb2xsYXRlcmFscyBkaXYuY291cG9uIC5idXR0b24sIGRpdi53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyBkaXYuY291cG9uIC5idXR0b24ge1xuICB3aWR0aDogMTAwJTtcbn1cbmJvZHkud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgZGl2LmNhcnRfdG90YWxzLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLmNhcnQtY29sbGF0ZXJhbHMgZGl2LmNhcnRfdG90YWxzLCBkaXYud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgZGl2LmNhcnRfdG90YWxzIHtcbiAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTtcbiAgd2lkdGg6IDUwJTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTYuMjVlbSkge1xuICBib2R5Lndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIGRpdi5jYXJ0X3RvdGFscywgYm9keS53b29jb21tZXJjZS1wYWdlIC5jYXJ0LWNvbGxhdGVyYWxzIGRpdi5jYXJ0X3RvdGFscywgZGl2Lndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIGRpdi5jYXJ0X3RvdGFscyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbmJvZHkud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgZGl2LmNhcnRfdG90YWxzIGgyLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLmNhcnQtY29sbGF0ZXJhbHMgZGl2LmNhcnRfdG90YWxzIGgyLCBkaXYud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgZGl2LmNhcnRfdG90YWxzIGgyIHtcbiAgZm9udC1zaXplOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbn1cbmJvZHkud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgZGl2LmNhcnRfdG90YWxzIHRhYmxlLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLmNhcnQtY29sbGF0ZXJhbHMgZGl2LmNhcnRfdG90YWxzIHRhYmxlLCBkaXYud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgZGl2LmNhcnRfdG90YWxzIHRhYmxlIHtcbiAgYm9yZGVyLWNvbG9yOiAjMDAzYTcxO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbmJvZHkud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgZGl2LmNhcnRfdG90YWxzIHRhYmxlIHRyLm9yZGVyLXRvdGFsLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLmNhcnQtY29sbGF0ZXJhbHMgZGl2LmNhcnRfdG90YWxzIHRhYmxlIHRyLm9yZGVyLXRvdGFsLCBkaXYud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgZGl2LmNhcnRfdG90YWxzIHRhYmxlIHRyLm9yZGVyLXRvdGFsIHtcbiAgYmFja2dyb3VuZDogIzAwM2E3MTtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIGRpdi5jYXJ0X3RvdGFscyB0YWJsZSB0ci5vcmRlci10b3RhbCB0ZCBzcGFuLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLmNhcnQtY29sbGF0ZXJhbHMgZGl2LmNhcnRfdG90YWxzIHRhYmxlIHRyLm9yZGVyLXRvdGFsIHRkIHNwYW4sIGRpdi53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyBkaXYuY2FydF90b3RhbHMgdGFibGUgdHIub3JkZXItdG90YWwgdGQgc3BhbiB7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIGRpdi5jYXJ0X3RvdGFscyBidXR0b24uYnV0dG9uW25hbWU9dXBkYXRlX2NhcnRdLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLmNhcnQtY29sbGF0ZXJhbHMgZGl2LmNhcnRfdG90YWxzIGJ1dHRvbi5idXR0b25bbmFtZT11cGRhdGVfY2FydF0sIGRpdi53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyBkaXYuY2FydF90b3RhbHMgYnV0dG9uLmJ1dHRvbltuYW1lPXVwZGF0ZV9jYXJ0XSB7XG4gIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTtcbiAgd2lkdGg6IDEwMCU7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIGRpdi5jYXJ0X3RvdGFscyBidXR0b24uYnV0dG9uOmRpc2FibGVkLCBib2R5Lndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIGRpdi5jYXJ0X3RvdGFscyBidXR0b24uYnV0dG9uOmRpc2FibGVkW2Rpc2FibGVkXSwgYm9keS53b29jb21tZXJjZS1wYWdlIC5jYXJ0LWNvbGxhdGVyYWxzIGRpdi5jYXJ0X3RvdGFscyBidXR0b24uYnV0dG9uOmRpc2FibGVkLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLmNhcnQtY29sbGF0ZXJhbHMgZGl2LmNhcnRfdG90YWxzIGJ1dHRvbi5idXR0b246ZGlzYWJsZWRbZGlzYWJsZWRdLCBkaXYud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgZGl2LmNhcnRfdG90YWxzIGJ1dHRvbi5idXR0b246ZGlzYWJsZWQsIGRpdi53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyBkaXYuY2FydF90b3RhbHMgYnV0dG9uLmJ1dHRvbjpkaXNhYmxlZFtkaXNhYmxlZF0ge1xuICBwYWRkaW5nOiAwLjkzNzVyZW0gMi41cmVtICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxMDAlO1xufVxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWZvcm0tY291cG9uLFxuYm9keS53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtZm9ybS1jb3Vwb24sIGJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWZvcm0tY291cG9uLFxuYm9keS53b29jb21tZXJjZS1wYWdlIGRpdi53b29jb21tZXJjZS1mb3JtLWNvdXBvbiwgZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtZm9ybS1jb3Vwb24sXG5kaXYud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWZvcm0tY291cG9uIHtcbiAgYmFja2dyb3VuZDogI0YxRjNGNSAhaW1wb3J0YW50O1xuICBib3JkZXI6IDAuMDYyNXJlbSBzb2xpZCAjMDAzYTcxICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwIDAgMS41cmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAuOTM3NXJlbSAhaW1wb3J0YW50O1xufVxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWZvcm0tY291cG9uID4gcCxcbmJvZHkud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWZvcm0tY291cG9uID4gcCwgYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtZm9ybS1jb3Vwb24gPiBwLFxuYm9keS53b29jb21tZXJjZS1wYWdlIGRpdi53b29jb21tZXJjZS1mb3JtLWNvdXBvbiA+IHAsIGRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWZvcm0tY291cG9uID4gcCxcbmRpdi53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtZm9ybS1jb3Vwb24gPiBwIHtcbiAgY29sb3I6ICMwMDAwMDAgIWltcG9ydGFudDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbmJvZHkud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1mb3JtLWNvdXBvbiAud29vY29tbWVyY2UtZm9ybS1jb3Vwb24tdG9nZ2xlLFxuYm9keS53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtZm9ybS1jb3Vwb24gLndvb2NvbW1lcmNlLWZvcm0tY291cG9uLXRvZ2dsZSwgYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtZm9ybS1jb3Vwb24gLndvb2NvbW1lcmNlLWZvcm0tY291cG9uLXRvZ2dsZSxcbmJvZHkud29vY29tbWVyY2UtcGFnZSBkaXYud29vY29tbWVyY2UtZm9ybS1jb3Vwb24gLndvb2NvbW1lcmNlLWZvcm0tY291cG9uLXRvZ2dsZSwgZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtZm9ybS1jb3Vwb24gLndvb2NvbW1lcmNlLWZvcm0tY291cG9uLXRvZ2dsZSxcbmRpdi53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtZm9ybS1jb3Vwb24gLndvb2NvbW1lcmNlLWZvcm0tY291cG9uLXRvZ2dsZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtZm9ybS1jb3Vwb24gLmZvcm0tcm93LFxuYm9keS53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtZm9ybS1jb3Vwb24gLmZvcm0tcm93LCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1mb3JtLWNvdXBvbiAuZm9ybS1yb3csXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZGl2Lndvb2NvbW1lcmNlLWZvcm0tY291cG9uIC5mb3JtLXJvdywgZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtZm9ybS1jb3Vwb24gLmZvcm0tcm93LFxuZGl2Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1mb3JtLWNvdXBvbiAuZm9ybS1yb3cge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWZvcm0tY291cG9uIC5mb3JtLXJvdy5mb3JtLXJvdy1maXJzdCxcbmJvZHkud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWZvcm0tY291cG9uIC5mb3JtLXJvdy5mb3JtLXJvdy1maXJzdCwgYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtZm9ybS1jb3Vwb24gLmZvcm0tcm93LmZvcm0tcm93LWZpcnN0LFxuYm9keS53b29jb21tZXJjZS1wYWdlIGRpdi53b29jb21tZXJjZS1mb3JtLWNvdXBvbiAuZm9ybS1yb3cuZm9ybS1yb3ctZmlyc3QsIGRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWZvcm0tY291cG9uIC5mb3JtLXJvdy5mb3JtLXJvdy1maXJzdCxcbmRpdi53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtZm9ybS1jb3Vwb24gLmZvcm0tcm93LmZvcm0tcm93LWZpcnN0IHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDIwMHB4KSAhaW1wb3J0YW50O1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMGVtKSB7XG4gIGJvZHkud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1mb3JtLWNvdXBvbiAuZm9ybS1yb3cuZm9ybS1yb3ctZmlyc3QsXG4gIGJvZHkud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWZvcm0tY291cG9uIC5mb3JtLXJvdy5mb3JtLXJvdy1maXJzdCwgYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtZm9ybS1jb3Vwb24gLmZvcm0tcm93LmZvcm0tcm93LWZpcnN0LFxuICBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZGl2Lndvb2NvbW1lcmNlLWZvcm0tY291cG9uIC5mb3JtLXJvdy5mb3JtLXJvdy1maXJzdCwgZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtZm9ybS1jb3Vwb24gLmZvcm0tcm93LmZvcm0tcm93LWZpcnN0LFxuICBkaXYud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWZvcm0tY291cG9uIC5mb3JtLXJvdy5mb3JtLXJvdy1maXJzdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxufVxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWZvcm0tY291cG9uIC5mb3JtLXJvdy5mb3JtLXJvdy1sYXN0LFxuYm9keS53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtZm9ybS1jb3Vwb24gLmZvcm0tcm93LmZvcm0tcm93LWxhc3QsIGJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWZvcm0tY291cG9uIC5mb3JtLXJvdy5mb3JtLXJvdy1sYXN0LFxuYm9keS53b29jb21tZXJjZS1wYWdlIGRpdi53b29jb21tZXJjZS1mb3JtLWNvdXBvbiAuZm9ybS1yb3cuZm9ybS1yb3ctbGFzdCwgZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtZm9ybS1jb3Vwb24gLmZvcm0tcm93LmZvcm0tcm93LWxhc3QsXG5kaXYud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWZvcm0tY291cG9uIC5mb3JtLXJvdy5mb3JtLXJvdy1sYXN0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHdpZHRoOiAxMi41cmVtICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDMwZW0pIHtcbiAgYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWZvcm0tY291cG9uIC5mb3JtLXJvdy5mb3JtLXJvdy1sYXN0LFxuICBib2R5Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1mb3JtLWNvdXBvbiAuZm9ybS1yb3cuZm9ybS1yb3ctbGFzdCwgYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtZm9ybS1jb3Vwb24gLmZvcm0tcm93LmZvcm0tcm93LWxhc3QsXG4gIGJvZHkud29vY29tbWVyY2UtcGFnZSBkaXYud29vY29tbWVyY2UtZm9ybS1jb3Vwb24gLmZvcm0tcm93LmZvcm0tcm93LWxhc3QsIGRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWZvcm0tY291cG9uIC5mb3JtLXJvdy5mb3JtLXJvdy1sYXN0LFxuICBkaXYud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWZvcm0tY291cG9uIC5mb3JtLXJvdy5mb3JtLXJvdy1sYXN0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWZvcm0tY291cG9uIC5mb3JtLXJvdy5mb3JtLXJvdy1sYXN0IGJ1dHRvbixcbiAgYm9keS53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtZm9ybS1jb3Vwb24gLmZvcm0tcm93LmZvcm0tcm93LWxhc3QgYnV0dG9uLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1mb3JtLWNvdXBvbiAuZm9ybS1yb3cuZm9ybS1yb3ctbGFzdCBidXR0b24sXG4gIGJvZHkud29vY29tbWVyY2UtcGFnZSBkaXYud29vY29tbWVyY2UtZm9ybS1jb3Vwb24gLmZvcm0tcm93LmZvcm0tcm93LWxhc3QgYnV0dG9uLCBkaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1mb3JtLWNvdXBvbiAuZm9ybS1yb3cuZm9ybS1yb3ctbGFzdCBidXR0b24sXG4gIGRpdi53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtZm9ybS1jb3Vwb24gLmZvcm0tcm93LmZvcm0tcm93LWxhc3QgYnV0dG9uIHtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG59XG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtZm9ybS1jb3Vwb24gaW5wdXRbdHlwZT10ZXh0XSxcbmJvZHkud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWZvcm0tY291cG9uIGlucHV0W3R5cGU9dGV4dF0sIGJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWZvcm0tY291cG9uIGlucHV0W3R5cGU9dGV4dF0sXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZGl2Lndvb2NvbW1lcmNlLWZvcm0tY291cG9uIGlucHV0W3R5cGU9dGV4dF0sIGRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWZvcm0tY291cG9uIGlucHV0W3R5cGU9dGV4dF0sXG5kaXYud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWZvcm0tY291cG9uIGlucHV0W3R5cGU9dGV4dF0ge1xuICBib3JkZXItY29sb3I6ICMwMDNhNzEgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogMC4xODc1cmVtICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgbWluLWhlaWdodDogMi43NXJlbTtcbn1cbmJvZHkud29vY29tbWVyY2UgLmJpbGxpbmctc2hpcHBpbmctdGFicywgYm9keS53b29jb21tZXJjZS1wYWdlIC5iaWxsaW5nLXNoaXBwaW5nLXRhYnMsIGRpdi53b29jb21tZXJjZSAuYmlsbGluZy1zaGlwcGluZy10YWJzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMDAzYTcxO1xufVxuYm9keS53b29jb21tZXJjZSAuYmlsbGluZy1zaGlwcGluZy13cmFwcGVyLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLmJpbGxpbmctc2hpcHBpbmctd3JhcHBlciwgZGl2Lndvb2NvbW1lcmNlIC5iaWxsaW5nLXNoaXBwaW5nLXdyYXBwZXIge1xuICBib3JkZXItY29sb3I6ICMwMDNhNzE7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IDAuMnMgZWFzZS1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjJzIGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjJzIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IDAuMnMgZWFzZS1vdXQ7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC5iaWxsaW5nLXNoaXBwaW5nLXdyYXBwZXIgLnNoaXBwaW5nLWRldGFpbHMsIGJvZHkud29vY29tbWVyY2UgLmJpbGxpbmctc2hpcHBpbmctd3JhcHBlciAuYmlsbGluZy1kZXRhaWxzLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLmJpbGxpbmctc2hpcHBpbmctd3JhcHBlciAuc2hpcHBpbmctZGV0YWlscywgYm9keS53b29jb21tZXJjZS1wYWdlIC5iaWxsaW5nLXNoaXBwaW5nLXdyYXBwZXIgLmJpbGxpbmctZGV0YWlscywgZGl2Lndvb2NvbW1lcmNlIC5iaWxsaW5nLXNoaXBwaW5nLXdyYXBwZXIgLnNoaXBwaW5nLWRldGFpbHMsIGRpdi53b29jb21tZXJjZSAuYmlsbGluZy1zaGlwcGluZy13cmFwcGVyIC5iaWxsaW5nLWRldGFpbHMge1xuICBwYWRkaW5nOiAwLjkzNzVyZW07XG59XG5ib2R5Lndvb2NvbW1lcmNlIHNwYW4uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItZHJvcGRvd24sIGJvZHkud29vY29tbWVyY2UtcGFnZSBzcGFuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLWRyb3Bkb3duLCBkaXYud29vY29tbWVyY2Ugc3Bhbi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1kcm9wZG93biB7XG4gIG1hcmdpbi10b3A6IC0wLjA2MjVyZW07XG59XG5ib2R5Lndvb2NvbW1lcmNlIHNwYW4uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItZHJvcGRvd24gaW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2Ugc3Bhbi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1kcm9wZG93biBpbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQsIGRpdi53b29jb21tZXJjZSBzcGFuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLWRyb3Bkb3duIGlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCB7XG4gIGJvcmRlci1jb2xvcjogIzAwM2E3MTtcbiAgYm9yZGVyLXJhZGl1czogMC4xODc1cmVtO1xuICBib3gtc2hhZG93OiAwO1xuICBkaXNwbGF5OiBub25lO1xufVxuYm9keS53b29jb21tZXJjZS53b29jb21tZXJjZS1jaGVja291dCBmb3JtLmNoZWNrb3V0X2NvdXBvbiwgYm9keS53b29jb21tZXJjZS1wYWdlLndvb2NvbW1lcmNlLWNoZWNrb3V0IGZvcm0uY2hlY2tvdXRfY291cG9uLCBkaXYud29vY29tbWVyY2Uud29vY29tbWVyY2UtY2hlY2tvdXQgZm9ybS5jaGVja291dF9jb3Vwb24ge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuYm9keS53b29jb21tZXJjZS53b29jb21tZXJjZS1jaGVja291dCBzcGFuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLWRyb3Bkb3duLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2Uud29vY29tbWVyY2UtY2hlY2tvdXQgc3Bhbi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1kcm9wZG93biwgZGl2Lndvb2NvbW1lcmNlLndvb2NvbW1lcmNlLWNoZWNrb3V0IHNwYW4uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItZHJvcGRvd24ge1xuICBtYXJnaW4tdG9wOiAtMC44MTI1cmVtO1xufVxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0LCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCwgZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbn1cbmJvZHkud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHMgaW5wdXQuaW5wdXQtdGV4dCwgYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkcyB0ZXh0YXJlYSwgYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkcyAuc2VsZWN0Mi1zZWxlY3Rpb24sIGJvZHkud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHMgc2VsZWN0LFxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hY2NvdW50LWZpZWxkcyBpbnB1dC5pbnB1dC10ZXh0LFxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hY2NvdW50LWZpZWxkcyB0ZXh0YXJlYSxcbmJvZHkud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWNjb3VudC1maWVsZHMgLnNlbGVjdDItc2VsZWN0aW9uLFxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hY2NvdW50LWZpZWxkcyBzZWxlY3QsXG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkcyBpbnB1dC5pbnB1dC10ZXh0LFxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHMgdGV4dGFyZWEsXG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkcyAuc2VsZWN0Mi1zZWxlY3Rpb24sXG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkcyBzZWxlY3QsXG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFkZGl0aW9uYWwtZmllbGRzIGlucHV0LmlucHV0LXRleHQsXG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFkZGl0aW9uYWwtZmllbGRzIHRleHRhcmVhLFxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hZGRpdGlvbmFsLWZpZWxkcyAuc2VsZWN0Mi1zZWxlY3Rpb24sXG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFkZGl0aW9uYWwtZmllbGRzIHNlbGVjdCwgYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWJpbGxpbmctZmllbGRzIGlucHV0LmlucHV0LXRleHQsIGJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkcyB0ZXh0YXJlYSwgYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWJpbGxpbmctZmllbGRzIC5zZWxlY3QyLXNlbGVjdGlvbiwgYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWJpbGxpbmctZmllbGRzIHNlbGVjdCxcbmJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hY2NvdW50LWZpZWxkcyBpbnB1dC5pbnB1dC10ZXh0LFxuYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFjY291bnQtZmllbGRzIHRleHRhcmVhLFxuYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFjY291bnQtZmllbGRzIC5zZWxlY3QyLXNlbGVjdGlvbixcbmJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hY2NvdW50LWZpZWxkcyBzZWxlY3QsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2Utc2hpcHBpbmctZmllbGRzIGlucHV0LmlucHV0LXRleHQsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2Utc2hpcHBpbmctZmllbGRzIHRleHRhcmVhLFxuYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkcyAuc2VsZWN0Mi1zZWxlY3Rpb24sXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2Utc2hpcHBpbmctZmllbGRzIHNlbGVjdCxcbmJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hZGRpdGlvbmFsLWZpZWxkcyBpbnB1dC5pbnB1dC10ZXh0LFxuYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFkZGl0aW9uYWwtZmllbGRzIHRleHRhcmVhLFxuYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFkZGl0aW9uYWwtZmllbGRzIC5zZWxlY3QyLXNlbGVjdGlvbixcbmJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hZGRpdGlvbmFsLWZpZWxkcyBzZWxlY3QsIGRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkcyBpbnB1dC5pbnB1dC10ZXh0LCBkaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHMgdGV4dGFyZWEsIGRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkcyAuc2VsZWN0Mi1zZWxlY3Rpb24sIGRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkcyBzZWxlY3QsXG5kaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWNjb3VudC1maWVsZHMgaW5wdXQuaW5wdXQtdGV4dCxcbmRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hY2NvdW50LWZpZWxkcyB0ZXh0YXJlYSxcbmRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hY2NvdW50LWZpZWxkcyAuc2VsZWN0Mi1zZWxlY3Rpb24sXG5kaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWNjb3VudC1maWVsZHMgc2VsZWN0LFxuZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkcyBpbnB1dC5pbnB1dC10ZXh0LFxuZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkcyB0ZXh0YXJlYSxcbmRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHMgLnNlbGVjdDItc2VsZWN0aW9uLFxuZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkcyBzZWxlY3QsXG5kaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWRkaXRpb25hbC1maWVsZHMgaW5wdXQuaW5wdXQtdGV4dCxcbmRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hZGRpdGlvbmFsLWZpZWxkcyB0ZXh0YXJlYSxcbmRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hZGRpdGlvbmFsLWZpZWxkcyAuc2VsZWN0Mi1zZWxlY3Rpb24sXG5kaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWRkaXRpb25hbC1maWVsZHMgc2VsZWN0IHtcbiAgYm9yZGVyLWNvbG9yOiAjMDAzYTcxICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDAuMTg3NXJlbSAhaW1wb3J0YW50O1xuICBtaW4taGVpZ2h0OiAyLjc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbn1cbmJvZHkud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHMgbGFiZWwsXG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFjY291bnQtZmllbGRzIGxhYmVsLFxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHMgbGFiZWwsXG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFkZGl0aW9uYWwtZmllbGRzIGxhYmVsLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHMgbGFiZWwsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWNjb3VudC1maWVsZHMgbGFiZWwsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2Utc2hpcHBpbmctZmllbGRzIGxhYmVsLFxuYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFkZGl0aW9uYWwtZmllbGRzIGxhYmVsLCBkaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHMgbGFiZWwsXG5kaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWNjb3VudC1maWVsZHMgbGFiZWwsXG5kaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2Utc2hpcHBpbmctZmllbGRzIGxhYmVsLFxuZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFkZGl0aW9uYWwtZmllbGRzIGxhYmVsIHtcbiAgY29sb3I6ICMwMDE3MTc7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cbmJvZHkud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHMgLmZvcm0tcm93LFxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hY2NvdW50LWZpZWxkcyAuZm9ybS1yb3csXG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkcyAuZm9ybS1yb3csXG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFkZGl0aW9uYWwtZmllbGRzIC5mb3JtLXJvdywgYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWJpbGxpbmctZmllbGRzIC5mb3JtLXJvdyxcbmJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hY2NvdW50LWZpZWxkcyAuZm9ybS1yb3csXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2Utc2hpcHBpbmctZmllbGRzIC5mb3JtLXJvdyxcbmJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hZGRpdGlvbmFsLWZpZWxkcyAuZm9ybS1yb3csIGRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkcyAuZm9ybS1yb3csXG5kaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWNjb3VudC1maWVsZHMgLmZvcm0tcm93LFxuZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkcyAuZm9ybS1yb3csXG5kaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWRkaXRpb25hbC1maWVsZHMgLmZvcm0tcm93IHtcbiAgcGFkZGluZzogMDtcbn1cbmJvZHkud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHMgLmZvcm0tcm93LmZvcm0tcm93LWZpcnN0LCBib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWJpbGxpbmctZmllbGRzIC5mb3JtLXJvdy5mb3JtLXJvdy1sYXN0LFxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hY2NvdW50LWZpZWxkcyAuZm9ybS1yb3cuZm9ybS1yb3ctZmlyc3QsXG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFjY291bnQtZmllbGRzIC5mb3JtLXJvdy5mb3JtLXJvdy1sYXN0LFxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHMgLmZvcm0tcm93LmZvcm0tcm93LWZpcnN0LFxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHMgLmZvcm0tcm93LmZvcm0tcm93LWxhc3QsXG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFkZGl0aW9uYWwtZmllbGRzIC5mb3JtLXJvdy5mb3JtLXJvdy1maXJzdCxcbmJvZHkud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWRkaXRpb25hbC1maWVsZHMgLmZvcm0tcm93LmZvcm0tcm93LWxhc3QsIGJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkcyAuZm9ybS1yb3cuZm9ybS1yb3ctZmlyc3QsIGJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkcyAuZm9ybS1yb3cuZm9ybS1yb3ctbGFzdCxcbmJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hY2NvdW50LWZpZWxkcyAuZm9ybS1yb3cuZm9ybS1yb3ctZmlyc3QsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWNjb3VudC1maWVsZHMgLmZvcm0tcm93LmZvcm0tcm93LWxhc3QsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2Utc2hpcHBpbmctZmllbGRzIC5mb3JtLXJvdy5mb3JtLXJvdy1maXJzdCxcbmJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHMgLmZvcm0tcm93LmZvcm0tcm93LWxhc3QsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWRkaXRpb25hbC1maWVsZHMgLmZvcm0tcm93LmZvcm0tcm93LWZpcnN0LFxuYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFkZGl0aW9uYWwtZmllbGRzIC5mb3JtLXJvdy5mb3JtLXJvdy1sYXN0LCBkaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHMgLmZvcm0tcm93LmZvcm0tcm93LWZpcnN0LCBkaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHMgLmZvcm0tcm93LmZvcm0tcm93LWxhc3QsXG5kaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWNjb3VudC1maWVsZHMgLmZvcm0tcm93LmZvcm0tcm93LWZpcnN0LFxuZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFjY291bnQtZmllbGRzIC5mb3JtLXJvdy5mb3JtLXJvdy1sYXN0LFxuZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkcyAuZm9ybS1yb3cuZm9ybS1yb3ctZmlyc3QsXG5kaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2Utc2hpcHBpbmctZmllbGRzIC5mb3JtLXJvdy5mb3JtLXJvdy1sYXN0LFxuZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFkZGl0aW9uYWwtZmllbGRzIC5mb3JtLXJvdy5mb3JtLXJvdy1maXJzdCxcbmRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hZGRpdGlvbmFsLWZpZWxkcyAuZm9ybS1yb3cuZm9ybS1yb3ctbGFzdCB7XG4gIHdpZHRoOiA0OS4yNSUgIWltcG9ydGFudDtcbn1cbmJvZHkud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHMgLmZvcm0tcm93LmZvcm0tcm93LXdpZGU6bGFzdC1vZi10eXBlLCBib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWJpbGxpbmctZmllbGRzIC5mb3JtLXJvdy5ub3RlcyxcbmJvZHkud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWNjb3VudC1maWVsZHMgLmZvcm0tcm93LmZvcm0tcm93LXdpZGU6bGFzdC1vZi10eXBlLFxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hY2NvdW50LWZpZWxkcyAuZm9ybS1yb3cubm90ZXMsXG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkcyAuZm9ybS1yb3cuZm9ybS1yb3ctd2lkZTpsYXN0LW9mLXR5cGUsXG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkcyAuZm9ybS1yb3cubm90ZXMsXG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFkZGl0aW9uYWwtZmllbGRzIC5mb3JtLXJvdy5mb3JtLXJvdy13aWRlOmxhc3Qtb2YtdHlwZSxcbmJvZHkud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWRkaXRpb25hbC1maWVsZHMgLmZvcm0tcm93Lm5vdGVzLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHMgLmZvcm0tcm93LmZvcm0tcm93LXdpZGU6bGFzdC1vZi10eXBlLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHMgLmZvcm0tcm93Lm5vdGVzLFxuYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFjY291bnQtZmllbGRzIC5mb3JtLXJvdy5mb3JtLXJvdy13aWRlOmxhc3Qtb2YtdHlwZSxcbmJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hY2NvdW50LWZpZWxkcyAuZm9ybS1yb3cubm90ZXMsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2Utc2hpcHBpbmctZmllbGRzIC5mb3JtLXJvdy5mb3JtLXJvdy13aWRlOmxhc3Qtb2YtdHlwZSxcbmJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHMgLmZvcm0tcm93Lm5vdGVzLFxuYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFkZGl0aW9uYWwtZmllbGRzIC5mb3JtLXJvdy5mb3JtLXJvdy13aWRlOmxhc3Qtb2YtdHlwZSxcbmJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hZGRpdGlvbmFsLWZpZWxkcyAuZm9ybS1yb3cubm90ZXMsIGRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkcyAuZm9ybS1yb3cuZm9ybS1yb3ctd2lkZTpsYXN0LW9mLXR5cGUsIGRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkcyAuZm9ybS1yb3cubm90ZXMsXG5kaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWNjb3VudC1maWVsZHMgLmZvcm0tcm93LmZvcm0tcm93LXdpZGU6bGFzdC1vZi10eXBlLFxuZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFjY291bnQtZmllbGRzIC5mb3JtLXJvdy5ub3RlcyxcbmRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHMgLmZvcm0tcm93LmZvcm0tcm93LXdpZGU6bGFzdC1vZi10eXBlLFxuZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkcyAuZm9ybS1yb3cubm90ZXMsXG5kaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWRkaXRpb25hbC1maWVsZHMgLmZvcm0tcm93LmZvcm0tcm93LXdpZGU6bGFzdC1vZi10eXBlLFxuZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFkZGl0aW9uYWwtZmllbGRzIC5mb3JtLXJvdy5ub3RlcyB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWJpbGxpbmctZmllbGRzIC5mb3JtLXJvdy5mb3JtLXJvdy13aWRlOmxhc3Qtb2YtdHlwZSBpbnB1dCwgYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkcyAuZm9ybS1yb3cuZm9ybS1yb3ctd2lkZTpsYXN0LW9mLXR5cGUgdGV4dGFyZWEsIGJvZHkud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHMgLmZvcm0tcm93Lm5vdGVzIGlucHV0LCBib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWJpbGxpbmctZmllbGRzIC5mb3JtLXJvdy5ub3RlcyB0ZXh0YXJlYSxcbmJvZHkud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWNjb3VudC1maWVsZHMgLmZvcm0tcm93LmZvcm0tcm93LXdpZGU6bGFzdC1vZi10eXBlIGlucHV0LFxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hY2NvdW50LWZpZWxkcyAuZm9ybS1yb3cuZm9ybS1yb3ctd2lkZTpsYXN0LW9mLXR5cGUgdGV4dGFyZWEsXG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFjY291bnQtZmllbGRzIC5mb3JtLXJvdy5ub3RlcyBpbnB1dCxcbmJvZHkud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWNjb3VudC1maWVsZHMgLmZvcm0tcm93Lm5vdGVzIHRleHRhcmVhLFxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHMgLmZvcm0tcm93LmZvcm0tcm93LXdpZGU6bGFzdC1vZi10eXBlIGlucHV0LFxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHMgLmZvcm0tcm93LmZvcm0tcm93LXdpZGU6bGFzdC1vZi10eXBlIHRleHRhcmVhLFxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHMgLmZvcm0tcm93Lm5vdGVzIGlucHV0LFxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHMgLmZvcm0tcm93Lm5vdGVzIHRleHRhcmVhLFxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hZGRpdGlvbmFsLWZpZWxkcyAuZm9ybS1yb3cuZm9ybS1yb3ctd2lkZTpsYXN0LW9mLXR5cGUgaW5wdXQsXG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFkZGl0aW9uYWwtZmllbGRzIC5mb3JtLXJvdy5mb3JtLXJvdy13aWRlOmxhc3Qtb2YtdHlwZSB0ZXh0YXJlYSxcbmJvZHkud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWRkaXRpb25hbC1maWVsZHMgLmZvcm0tcm93Lm5vdGVzIGlucHV0LFxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hZGRpdGlvbmFsLWZpZWxkcyAuZm9ybS1yb3cubm90ZXMgdGV4dGFyZWEsIGJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkcyAuZm9ybS1yb3cuZm9ybS1yb3ctd2lkZTpsYXN0LW9mLXR5cGUgaW5wdXQsIGJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkcyAuZm9ybS1yb3cuZm9ybS1yb3ctd2lkZTpsYXN0LW9mLXR5cGUgdGV4dGFyZWEsIGJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkcyAuZm9ybS1yb3cubm90ZXMgaW5wdXQsIGJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkcyAuZm9ybS1yb3cubm90ZXMgdGV4dGFyZWEsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWNjb3VudC1maWVsZHMgLmZvcm0tcm93LmZvcm0tcm93LXdpZGU6bGFzdC1vZi10eXBlIGlucHV0LFxuYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFjY291bnQtZmllbGRzIC5mb3JtLXJvdy5mb3JtLXJvdy13aWRlOmxhc3Qtb2YtdHlwZSB0ZXh0YXJlYSxcbmJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hY2NvdW50LWZpZWxkcyAuZm9ybS1yb3cubm90ZXMgaW5wdXQsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWNjb3VudC1maWVsZHMgLmZvcm0tcm93Lm5vdGVzIHRleHRhcmVhLFxuYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkcyAuZm9ybS1yb3cuZm9ybS1yb3ctd2lkZTpsYXN0LW9mLXR5cGUgaW5wdXQsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2Utc2hpcHBpbmctZmllbGRzIC5mb3JtLXJvdy5mb3JtLXJvdy13aWRlOmxhc3Qtb2YtdHlwZSB0ZXh0YXJlYSxcbmJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHMgLmZvcm0tcm93Lm5vdGVzIGlucHV0LFxuYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkcyAuZm9ybS1yb3cubm90ZXMgdGV4dGFyZWEsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWRkaXRpb25hbC1maWVsZHMgLmZvcm0tcm93LmZvcm0tcm93LXdpZGU6bGFzdC1vZi10eXBlIGlucHV0LFxuYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFkZGl0aW9uYWwtZmllbGRzIC5mb3JtLXJvdy5mb3JtLXJvdy13aWRlOmxhc3Qtb2YtdHlwZSB0ZXh0YXJlYSxcbmJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hZGRpdGlvbmFsLWZpZWxkcyAuZm9ybS1yb3cubm90ZXMgaW5wdXQsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWRkaXRpb25hbC1maWVsZHMgLmZvcm0tcm93Lm5vdGVzIHRleHRhcmVhLCBkaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHMgLmZvcm0tcm93LmZvcm0tcm93LXdpZGU6bGFzdC1vZi10eXBlIGlucHV0LCBkaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHMgLmZvcm0tcm93LmZvcm0tcm93LXdpZGU6bGFzdC1vZi10eXBlIHRleHRhcmVhLCBkaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHMgLmZvcm0tcm93Lm5vdGVzIGlucHV0LCBkaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHMgLmZvcm0tcm93Lm5vdGVzIHRleHRhcmVhLFxuZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFjY291bnQtZmllbGRzIC5mb3JtLXJvdy5mb3JtLXJvdy13aWRlOmxhc3Qtb2YtdHlwZSBpbnB1dCxcbmRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hY2NvdW50LWZpZWxkcyAuZm9ybS1yb3cuZm9ybS1yb3ctd2lkZTpsYXN0LW9mLXR5cGUgdGV4dGFyZWEsXG5kaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWNjb3VudC1maWVsZHMgLmZvcm0tcm93Lm5vdGVzIGlucHV0LFxuZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFjY291bnQtZmllbGRzIC5mb3JtLXJvdy5ub3RlcyB0ZXh0YXJlYSxcbmRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHMgLmZvcm0tcm93LmZvcm0tcm93LXdpZGU6bGFzdC1vZi10eXBlIGlucHV0LFxuZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkcyAuZm9ybS1yb3cuZm9ybS1yb3ctd2lkZTpsYXN0LW9mLXR5cGUgdGV4dGFyZWEsXG5kaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2Utc2hpcHBpbmctZmllbGRzIC5mb3JtLXJvdy5ub3RlcyBpbnB1dCxcbmRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHMgLmZvcm0tcm93Lm5vdGVzIHRleHRhcmVhLFxuZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFkZGl0aW9uYWwtZmllbGRzIC5mb3JtLXJvdy5mb3JtLXJvdy13aWRlOmxhc3Qtb2YtdHlwZSBpbnB1dCxcbmRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hZGRpdGlvbmFsLWZpZWxkcyAuZm9ybS1yb3cuZm9ybS1yb3ctd2lkZTpsYXN0LW9mLXR5cGUgdGV4dGFyZWEsXG5kaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWRkaXRpb25hbC1maWVsZHMgLmZvcm0tcm93Lm5vdGVzIGlucHV0LFxuZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFkZGl0aW9uYWwtZmllbGRzIC5mb3JtLXJvdy5ub3RlcyB0ZXh0YXJlYSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWJpbGxpbmctZmllbGRzIC5zZWxlY3QyLWNvbnRhaW5lcixcbmJvZHkud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWNjb3VudC1maWVsZHMgLnNlbGVjdDItY29udGFpbmVyLFxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHMgLnNlbGVjdDItY29udGFpbmVyLFxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hZGRpdGlvbmFsLWZpZWxkcyAuc2VsZWN0Mi1jb250YWluZXIsIGJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkcyAuc2VsZWN0Mi1jb250YWluZXIsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWNjb3VudC1maWVsZHMgLnNlbGVjdDItY29udGFpbmVyLFxuYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkcyAuc2VsZWN0Mi1jb250YWluZXIsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWRkaXRpb25hbC1maWVsZHMgLnNlbGVjdDItY29udGFpbmVyLCBkaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHMgLnNlbGVjdDItY29udGFpbmVyLFxuZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFjY291bnQtZmllbGRzIC5zZWxlY3QyLWNvbnRhaW5lcixcbmRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHMgLnNlbGVjdDItY29udGFpbmVyLFxuZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFkZGl0aW9uYWwtZmllbGRzIC5zZWxlY3QyLWNvbnRhaW5lciB7XG4gIG1pbi1oZWlnaHQ6IDIuNXJlbTtcbn1cbmJvZHkud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHMgLnNlbGVjdDItc2VsZWN0aW9uIHNwYW4uc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkLFxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hY2NvdW50LWZpZWxkcyAuc2VsZWN0Mi1zZWxlY3Rpb24gc3Bhbi5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQsXG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkcyAuc2VsZWN0Mi1zZWxlY3Rpb24gc3Bhbi5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQsXG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFkZGl0aW9uYWwtZmllbGRzIC5zZWxlY3QyLXNlbGVjdGlvbiBzcGFuLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCwgYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWJpbGxpbmctZmllbGRzIC5zZWxlY3QyLXNlbGVjdGlvbiBzcGFuLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCxcbmJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hY2NvdW50LWZpZWxkcyAuc2VsZWN0Mi1zZWxlY3Rpb24gc3Bhbi5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2Utc2hpcHBpbmctZmllbGRzIC5zZWxlY3QyLXNlbGVjdGlvbiBzcGFuLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCxcbmJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hZGRpdGlvbmFsLWZpZWxkcyAuc2VsZWN0Mi1zZWxlY3Rpb24gc3Bhbi5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQsIGRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkcyAuc2VsZWN0Mi1zZWxlY3Rpb24gc3Bhbi5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQsXG5kaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWNjb3VudC1maWVsZHMgLnNlbGVjdDItc2VsZWN0aW9uIHNwYW4uc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkLFxuZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkcyAuc2VsZWN0Mi1zZWxlY3Rpb24gc3Bhbi5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQsXG5kaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWRkaXRpb25hbC1maWVsZHMgLnNlbGVjdDItc2VsZWN0aW9uIHNwYW4uc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcbiAgbGluZS1oZWlnaHQ6IDIuMzc1cmVtO1xufVxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkcyAuc2VsZWN0Mi1zZWxlY3Rpb24gc3Bhbi5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3csXG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFjY291bnQtZmllbGRzIC5zZWxlY3QyLXNlbGVjdGlvbiBzcGFuLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyxcbmJvZHkud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2Utc2hpcHBpbmctZmllbGRzIC5zZWxlY3QyLXNlbGVjdGlvbiBzcGFuLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyxcbmJvZHkud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWRkaXRpb25hbC1maWVsZHMgLnNlbGVjdDItc2VsZWN0aW9uIHNwYW4uc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93LCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHMgLnNlbGVjdDItc2VsZWN0aW9uIHNwYW4uc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93LFxuYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFjY291bnQtZmllbGRzIC5zZWxlY3QyLXNlbGVjdGlvbiBzcGFuLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyxcbmJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHMgLnNlbGVjdDItc2VsZWN0aW9uIHNwYW4uc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93LFxuYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWFkZGl0aW9uYWwtZmllbGRzIC5zZWxlY3QyLXNlbGVjdGlvbiBzcGFuLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdywgZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWJpbGxpbmctZmllbGRzIC5zZWxlY3QyLXNlbGVjdGlvbiBzcGFuLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyxcbmRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hY2NvdW50LWZpZWxkcyAuc2VsZWN0Mi1zZWxlY3Rpb24gc3Bhbi5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3csXG5kaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2Utc2hpcHBpbmctZmllbGRzIC5zZWxlY3QyLXNlbGVjdGlvbiBzcGFuLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyxcbmRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1hZGRpdGlvbmFsLWZpZWxkcyAuc2VsZWN0Mi1zZWxlY3Rpb24gc3Bhbi5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cge1xuICBtaW4taGVpZ2h0OiAyLjM3NXJlbTtcbn1cbmJvZHkud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2Utc2hpcHBpbmctZmllbGRzIGgzI3NoaXAtdG8tZGlmZmVyZW50LWFkZHJlc3MsIGJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHMgaDMjc2hpcC10by1kaWZmZXJlbnQtYWRkcmVzcywgZGl2Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkcyBoMyNzaGlwLXRvLWRpZmZlcmVudC1hZGRyZXNzIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkcyBoMyNzaGlwLXRvLWRpZmZlcmVudC1hZGRyZXNzIGxhYmVsLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2Utc2hpcHBpbmctZmllbGRzIGgzI3NoaXAtdG8tZGlmZmVyZW50LWFkZHJlc3MgbGFiZWwsIGRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHMgaDMjc2hpcC10by1kaWZmZXJlbnQtYWRkcmVzcyBsYWJlbCB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xufVxuYm9keS53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHMgaDMjc2hpcC10by1kaWZmZXJlbnQtYWRkcmVzcyBsYWJlbCBpbnB1dCwgYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkcyBoMyNzaGlwLXRvLWRpZmZlcmVudC1hZGRyZXNzIGxhYmVsIGlucHV0LCBkaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2Utc2hpcHBpbmctZmllbGRzIGgzI3NoaXAtdG8tZGlmZmVyZW50LWFkZHJlc3MgbGFiZWwgaW5wdXQge1xuICBtYXJnaW46IDAgMC4xMjVyZW0gMCAwLjYyNXJlbTtcbiAgb3JkZXI6IDI7XG59XG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkcyBoMyNzaGlwLXRvLWRpZmZlcmVudC1hZGRyZXNzIGxhYmVsIHNwYW4sIGJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHMgaDMjc2hpcC10by1kaWZmZXJlbnQtYWRkcmVzcyBsYWJlbCBzcGFuLCBkaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2Utc2hpcHBpbmctZmllbGRzIGgzI3NoaXAtdG8tZGlmZmVyZW50LWFkZHJlc3MgbGFiZWwgc3BhbiB7XG4gIGNvbG9yOiAjMDAzYTcxO1xuICBmb250LWZhbWlseTogXCJCYXJsb3cgU2VtaSBDb25kZW5zZWRcIiwgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNjI1cmVtO1xuICBvcmRlcjogMTtcbn1cbmJvZHkud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAuY29sLTEsIGJvZHkud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAuY29sLTIsIGJvZHkud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzIC5jb2wtMSwgYm9keS53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgLmNvbC0yLCBkaXYud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAuY29sLTEsIGRpdi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzIC5jb2wtMiB7XG4gIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcbn1cbmJvZHkud29vY29tbWVyY2UgcC50YWJzLXRpdGxlLmNoZWNrb3V0LWNvbnQtYnRuLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgcC50YWJzLXRpdGxlLmNoZWNrb3V0LWNvbnQtYnRuLCBkaXYud29vY29tbWVyY2UgcC50YWJzLXRpdGxlLmNoZWNrb3V0LWNvbnQtYnRuIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW46IDEuODc1cmVtIC0xcmVtIDAgMDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5ib2R5Lndvb2NvbW1lcmNlIGgzI29yZGVyX3Jldmlld19oZWFkaW5nLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgaDMjb3JkZXJfcmV2aWV3X2hlYWRpbmcsIGRpdi53b29jb21tZXJjZSBoMyNvcmRlcl9yZXZpZXdfaGVhZGluZyB7XG4gIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG59XG5ib2R5Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUsIGJvZHkud29vY29tbWVyY2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdGFibGUuc2hvcF90YWJsZSwgYm9keS53b29jb21tZXJjZS1wYWdlIHRhYmxlLnNob3BfYXR0cmlidXRlcywgZGl2Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUsIGRpdi53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMge1xuICBib3JkZXI6IDAuMDYyNXJlbSBzb2xpZCAjMDAzYTcxICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xuICBmb250LWZhbWlseTogXCJCYXJsb3cgU2VtaSBDb25kZW5zZWRcIiwgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbn1cbmJvZHkud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB0aGVhZCwgYm9keS53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGhlYWQsIGJvZHkud29vY29tbWVyY2UtcGFnZSB0YWJsZS5zaG9wX3RhYmxlIHRoZWFkLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRoZWFkLCBkaXYud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB0aGVhZCwgZGl2Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcyB0aGVhZCB7XG4gIGJhY2tncm91bmQ6ICMwMDNhNzE7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuYm9keS53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlIHRoZWFkIHRoLnByb2R1Y3QtbmFtZSwgYm9keS53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGhlYWQgdGgucHJvZHVjdC1uYW1lLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdGFibGUuc2hvcF90YWJsZSB0aGVhZCB0aC5wcm9kdWN0LW5hbWUsIGJvZHkud29vY29tbWVyY2UtcGFnZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGhlYWQgdGgucHJvZHVjdC1uYW1lLCBkaXYud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB0aGVhZCB0aC5wcm9kdWN0LW5hbWUsIGRpdi53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGhlYWQgdGgucHJvZHVjdC1uYW1lIHtcbiAgd2lkdGg6IDQwJTtcbn1cbmJvZHkud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB0aGVhZCB0aC5wcm9kdWN0LXRvdGFsLCBib2R5Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcyB0aGVhZCB0aC5wcm9kdWN0LXRvdGFsLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdGFibGUuc2hvcF90YWJsZSB0aGVhZCB0aC5wcm9kdWN0LXRvdGFsLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRoZWFkIHRoLnByb2R1Y3QtdG90YWwsIGRpdi53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlIHRoZWFkIHRoLnByb2R1Y3QtdG90YWwsIGRpdi53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGhlYWQgdGgucHJvZHVjdC10b3RhbCB7XG4gIHdpZHRoOiA2MCU7XG59XG5ib2R5Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUgdGJvZHksIGJvZHkud29vY29tbWVyY2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRib2R5LCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdGFibGUuc2hvcF90YWJsZSB0Ym9keSwgYm9keS53b29jb21tZXJjZS1wYWdlIHRhYmxlLnNob3BfYXR0cmlidXRlcyB0Ym9keSwgZGl2Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUgdGJvZHksIGRpdi53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGJvZHkge1xuICBib3JkZXI6IDAuMDYyNXJlbSBzb2xpZCAjMDAzYTcxICFpbXBvcnRhbnQ7XG59XG5ib2R5Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUgdGJvZHkgdGgsIGJvZHkud29vY29tbWVyY2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRib2R5IHRoLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdGFibGUuc2hvcF90YWJsZSB0Ym9keSB0aCwgYm9keS53b29jb21tZXJjZS1wYWdlIHRhYmxlLnNob3BfYXR0cmlidXRlcyB0Ym9keSB0aCwgZGl2Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUgdGJvZHkgdGgsIGRpdi53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGJvZHkgdGgge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbn1cbmJvZHkud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB0Ym9keSB0ZCwgYm9keS53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlIHRib2R5IHRoLCBib2R5Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcyB0Ym9keSB0ZCwgYm9keS53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGJvZHkgdGgsIGJvZHkud29vY29tbWVyY2UtcGFnZSB0YWJsZS5zaG9wX3RhYmxlIHRib2R5IHRkLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdGFibGUuc2hvcF90YWJsZSB0Ym9keSB0aCwgYm9keS53b29jb21tZXJjZS1wYWdlIHRhYmxlLnNob3BfYXR0cmlidXRlcyB0Ym9keSB0ZCwgYm9keS53b29jb21tZXJjZS1wYWdlIHRhYmxlLnNob3BfYXR0cmlidXRlcyB0Ym9keSB0aCwgZGl2Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUgdGJvZHkgdGQsIGRpdi53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlIHRib2R5IHRoLCBkaXYud29vY29tbWVyY2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRib2R5IHRkLCBkaXYud29vY29tbWVyY2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRib2R5IHRoIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzAwM2E3MSAhaW1wb3J0YW50O1xufVxuYm9keS53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlIHRib2R5IHRkLnByb2R1Y3QtbmFtZSBzcGFuLnByb2R1Y3QtdGl0bGUsIGJvZHkud29vY29tbWVyY2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRib2R5IHRkLnByb2R1Y3QtbmFtZSBzcGFuLnByb2R1Y3QtdGl0bGUsIGJvZHkud29vY29tbWVyY2UtcGFnZSB0YWJsZS5zaG9wX3RhYmxlIHRib2R5IHRkLnByb2R1Y3QtbmFtZSBzcGFuLnByb2R1Y3QtdGl0bGUsIGJvZHkud29vY29tbWVyY2UtcGFnZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGJvZHkgdGQucHJvZHVjdC1uYW1lIHNwYW4ucHJvZHVjdC10aXRsZSwgZGl2Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUgdGJvZHkgdGQucHJvZHVjdC1uYW1lIHNwYW4ucHJvZHVjdC10aXRsZSwgZGl2Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcyB0Ym9keSB0ZC5wcm9kdWN0LW5hbWUgc3Bhbi5wcm9kdWN0LXRpdGxlIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbmJvZHkud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB0Ym9keSB0ci5jYXJ0LWl0ZW0gdGQucHJvZHVjdC10b3RhbCBzcGFuLmFtb3VudCxcbmJvZHkud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB0Ym9keSB0ci5jYXJ0LWl0ZW0gdGQucHJvZHVjdC10b3RhbCBzcGFuLmFtb3VudCBzcGFuLndvb2NvbW1lcmNlLVByaWNlLWN1cnJlbmN5U3ltYm9sLCBib2R5Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcyB0Ym9keSB0ci5jYXJ0LWl0ZW0gdGQucHJvZHVjdC10b3RhbCBzcGFuLmFtb3VudCxcbmJvZHkud29vY29tbWVyY2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRib2R5IHRyLmNhcnQtaXRlbSB0ZC5wcm9kdWN0LXRvdGFsIHNwYW4uYW1vdW50IHNwYW4ud29vY29tbWVyY2UtUHJpY2UtY3VycmVuY3lTeW1ib2wsIGJvZHkud29vY29tbWVyY2UtcGFnZSB0YWJsZS5zaG9wX3RhYmxlIHRib2R5IHRyLmNhcnQtaXRlbSB0ZC5wcm9kdWN0LXRvdGFsIHNwYW4uYW1vdW50LFxuYm9keS53b29jb21tZXJjZS1wYWdlIHRhYmxlLnNob3BfdGFibGUgdGJvZHkgdHIuY2FydC1pdGVtIHRkLnByb2R1Y3QtdG90YWwgc3Bhbi5hbW91bnQgc3Bhbi53b29jb21tZXJjZS1QcmljZS1jdXJyZW5jeVN5bWJvbCwgYm9keS53b29jb21tZXJjZS1wYWdlIHRhYmxlLnNob3BfYXR0cmlidXRlcyB0Ym9keSB0ci5jYXJ0LWl0ZW0gdGQucHJvZHVjdC10b3RhbCBzcGFuLmFtb3VudCxcbmJvZHkud29vY29tbWVyY2UtcGFnZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGJvZHkgdHIuY2FydC1pdGVtIHRkLnByb2R1Y3QtdG90YWwgc3Bhbi5hbW91bnQgc3Bhbi53b29jb21tZXJjZS1QcmljZS1jdXJyZW5jeVN5bWJvbCwgZGl2Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUgdGJvZHkgdHIuY2FydC1pdGVtIHRkLnByb2R1Y3QtdG90YWwgc3Bhbi5hbW91bnQsXG5kaXYud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB0Ym9keSB0ci5jYXJ0LWl0ZW0gdGQucHJvZHVjdC10b3RhbCBzcGFuLmFtb3VudCBzcGFuLndvb2NvbW1lcmNlLVByaWNlLWN1cnJlbmN5U3ltYm9sLCBkaXYud29vY29tbWVyY2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRib2R5IHRyLmNhcnQtaXRlbSB0ZC5wcm9kdWN0LXRvdGFsIHNwYW4uYW1vdW50LFxuZGl2Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcyB0Ym9keSB0ci5jYXJ0LWl0ZW0gdGQucHJvZHVjdC10b3RhbCBzcGFuLmFtb3VudCBzcGFuLndvb2NvbW1lcmNlLVByaWNlLWN1cnJlbmN5U3ltYm9sIHtcbiAgY29sb3I6ICMwMDAwMDAgIWltcG9ydGFudDtcbn1cbmJvZHkud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB0Zm9vdCwgYm9keS53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGZvb3QsIGJvZHkud29vY29tbWVyY2UtcGFnZSB0YWJsZS5zaG9wX3RhYmxlIHRmb290LCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRmb290LCBkaXYud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB0Zm9vdCwgZGl2Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcyB0Zm9vdCB7XG4gIGJvcmRlci1jb2xvcjogIzAwM2E3MSAhaW1wb3J0YW50O1xufVxuYm9keS53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlIHRmb290IHRoLCBib2R5Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUgdGZvb3QgdGQsIGJvZHkud29vY29tbWVyY2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRmb290IHRoLCBib2R5Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcyB0Zm9vdCB0ZCwgYm9keS53b29jb21tZXJjZS1wYWdlIHRhYmxlLnNob3BfdGFibGUgdGZvb3QgdGgsIGJvZHkud29vY29tbWVyY2UtcGFnZSB0YWJsZS5zaG9wX3RhYmxlIHRmb290IHRkLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRmb290IHRoLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRmb290IHRkLCBkaXYud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB0Zm9vdCB0aCwgZGl2Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUgdGZvb3QgdGQsIGRpdi53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGZvb3QgdGgsIGRpdi53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGZvb3QgdGQge1xuICBib3JkZXItY29sb3I6ICMwMDNhNzEgIWltcG9ydGFudDtcbn1cbmJvZHkud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB0Zm9vdCB0ciB0ZCBzcGFuLmFtb3VudCxcbmJvZHkud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB0Zm9vdCB0ciB0ZCBzcGFuLmFtb3VudCBzcGFuLndvb2NvbW1lcmNlLVByaWNlLWN1cnJlbmN5U3ltYm9sLCBib2R5Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcyB0Zm9vdCB0ciB0ZCBzcGFuLmFtb3VudCxcbmJvZHkud29vY29tbWVyY2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRmb290IHRyIHRkIHNwYW4uYW1vdW50IHNwYW4ud29vY29tbWVyY2UtUHJpY2UtY3VycmVuY3lTeW1ib2wsIGJvZHkud29vY29tbWVyY2UtcGFnZSB0YWJsZS5zaG9wX3RhYmxlIHRmb290IHRyIHRkIHNwYW4uYW1vdW50LFxuYm9keS53b29jb21tZXJjZS1wYWdlIHRhYmxlLnNob3BfdGFibGUgdGZvb3QgdHIgdGQgc3Bhbi5hbW91bnQgc3Bhbi53b29jb21tZXJjZS1QcmljZS1jdXJyZW5jeVN5bWJvbCwgYm9keS53b29jb21tZXJjZS1wYWdlIHRhYmxlLnNob3BfYXR0cmlidXRlcyB0Zm9vdCB0ciB0ZCBzcGFuLmFtb3VudCxcbmJvZHkud29vY29tbWVyY2UtcGFnZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGZvb3QgdHIgdGQgc3Bhbi5hbW91bnQgc3Bhbi53b29jb21tZXJjZS1QcmljZS1jdXJyZW5jeVN5bWJvbCwgZGl2Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUgdGZvb3QgdHIgdGQgc3Bhbi5hbW91bnQsXG5kaXYud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB0Zm9vdCB0ciB0ZCBzcGFuLmFtb3VudCBzcGFuLndvb2NvbW1lcmNlLVByaWNlLWN1cnJlbmN5U3ltYm9sLCBkaXYud29vY29tbWVyY2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRmb290IHRyIHRkIHNwYW4uYW1vdW50LFxuZGl2Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcyB0Zm9vdCB0ciB0ZCBzcGFuLmFtb3VudCBzcGFuLndvb2NvbW1lcmNlLVByaWNlLWN1cnJlbmN5U3ltYm9sIHtcbiAgY29sb3I6ICMwMDAwMDAgIWltcG9ydGFudDtcbn1cbmJvZHkud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB0Zm9vdCB0ci5zaGlwcGluZyB0ZCwgYm9keS53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGZvb3QgdHIuc2hpcHBpbmcgdGQsIGJvZHkud29vY29tbWVyY2UtcGFnZSB0YWJsZS5zaG9wX3RhYmxlIHRmb290IHRyLnNoaXBwaW5nIHRkLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRmb290IHRyLnNoaXBwaW5nIHRkLCBkaXYud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB0Zm9vdCB0ci5zaGlwcGluZyB0ZCwgZGl2Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcyB0Zm9vdCB0ci5zaGlwcGluZyB0ZCB7XG4gIGNvbG9yOiAjMDAwMDAwO1xufVxuYm9keS53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlIHRmb290IHRyLnRheC10b3RhbCwgYm9keS53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGZvb3QgdHIudGF4LXRvdGFsLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdGFibGUuc2hvcF90YWJsZSB0Zm9vdCB0ci50YXgtdG90YWwsIGJvZHkud29vY29tbWVyY2UtcGFnZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGZvb3QgdHIudGF4LXRvdGFsLCBkaXYud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB0Zm9vdCB0ci50YXgtdG90YWwsIGRpdi53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGZvb3QgdHIudGF4LXRvdGFsIHtcbiAgYmFja2dyb3VuZDogIzAwM2E3MSAhaW1wb3J0YW50O1xufVxuYm9keS53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlIHRmb290IHRyLnRheC10b3RhbCB0aCwgYm9keS53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlIHRmb290IHRyLnRheC10b3RhbCB0ZCwgYm9keS53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGZvb3QgdHIudGF4LXRvdGFsIHRoLCBib2R5Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcyB0Zm9vdCB0ci50YXgtdG90YWwgdGQsIGJvZHkud29vY29tbWVyY2UtcGFnZSB0YWJsZS5zaG9wX3RhYmxlIHRmb290IHRyLnRheC10b3RhbCB0aCwgYm9keS53b29jb21tZXJjZS1wYWdlIHRhYmxlLnNob3BfdGFibGUgdGZvb3QgdHIudGF4LXRvdGFsIHRkLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRmb290IHRyLnRheC10b3RhbCB0aCwgYm9keS53b29jb21tZXJjZS1wYWdlIHRhYmxlLnNob3BfYXR0cmlidXRlcyB0Zm9vdCB0ci50YXgtdG90YWwgdGQsIGRpdi53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlIHRmb290IHRyLnRheC10b3RhbCB0aCwgZGl2Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUgdGZvb3QgdHIudGF4LXRvdGFsIHRkLCBkaXYud29vY29tbWVyY2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRmb290IHRyLnRheC10b3RhbCB0aCwgZGl2Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcyB0Zm9vdCB0ci50YXgtdG90YWwgdGQge1xuICBib3JkZXItY29sb3I6ICMwMDNhNzEgIWltcG9ydGFudDtcbn1cbmJvZHkud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB0Zm9vdCB0ci5vcmRlci10b3RhbCwgYm9keS53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGZvb3QgdHIub3JkZXItdG90YWwsIGJvZHkud29vY29tbWVyY2UtcGFnZSB0YWJsZS5zaG9wX3RhYmxlIHRmb290IHRyLm9yZGVyLXRvdGFsLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRmb290IHRyLm9yZGVyLXRvdGFsLCBkaXYud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB0Zm9vdCB0ci5vcmRlci10b3RhbCwgZGl2Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcyB0Zm9vdCB0ci5vcmRlci10b3RhbCB7XG4gIGJhY2tncm91bmQ6ICMwMDNhNzE7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuYm9keS53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlIHRmb290IHRyLm9yZGVyLXRvdGFsIHRkIHN0cm9uZyBzcGFuLmFtb3VudCxcbmJvZHkud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB0Zm9vdCB0ci5vcmRlci10b3RhbCB0ZCBzdHJvbmcgc3Bhbi5hbW91bnQgc3Bhbi53b29jb21tZXJjZS1QcmljZS1jdXJyZW5jeVN5bWJvbCwgYm9keS53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGZvb3QgdHIub3JkZXItdG90YWwgdGQgc3Ryb25nIHNwYW4uYW1vdW50LFxuYm9keS53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGZvb3QgdHIub3JkZXItdG90YWwgdGQgc3Ryb25nIHNwYW4uYW1vdW50IHNwYW4ud29vY29tbWVyY2UtUHJpY2UtY3VycmVuY3lTeW1ib2wsIGJvZHkud29vY29tbWVyY2UtcGFnZSB0YWJsZS5zaG9wX3RhYmxlIHRmb290IHRyLm9yZGVyLXRvdGFsIHRkIHN0cm9uZyBzcGFuLmFtb3VudCxcbmJvZHkud29vY29tbWVyY2UtcGFnZSB0YWJsZS5zaG9wX3RhYmxlIHRmb290IHRyLm9yZGVyLXRvdGFsIHRkIHN0cm9uZyBzcGFuLmFtb3VudCBzcGFuLndvb2NvbW1lcmNlLVByaWNlLWN1cnJlbmN5U3ltYm9sLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRmb290IHRyLm9yZGVyLXRvdGFsIHRkIHN0cm9uZyBzcGFuLmFtb3VudCxcbmJvZHkud29vY29tbWVyY2UtcGFnZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGZvb3QgdHIub3JkZXItdG90YWwgdGQgc3Ryb25nIHNwYW4uYW1vdW50IHNwYW4ud29vY29tbWVyY2UtUHJpY2UtY3VycmVuY3lTeW1ib2wsIGRpdi53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlIHRmb290IHRyLm9yZGVyLXRvdGFsIHRkIHN0cm9uZyBzcGFuLmFtb3VudCxcbmRpdi53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlIHRmb290IHRyLm9yZGVyLXRvdGFsIHRkIHN0cm9uZyBzcGFuLmFtb3VudCBzcGFuLndvb2NvbW1lcmNlLVByaWNlLWN1cnJlbmN5U3ltYm9sLCBkaXYud29vY29tbWVyY2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRmb290IHRyLm9yZGVyLXRvdGFsIHRkIHN0cm9uZyBzcGFuLmFtb3VudCxcbmRpdi53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGZvb3QgdHIub3JkZXItdG90YWwgdGQgc3Ryb25nIHNwYW4uYW1vdW50IHNwYW4ud29vY29tbWVyY2UtUHJpY2UtY3VycmVuY3lTeW1ib2wge1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuYm9keS53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlIHRmb290IHRyLm9yZGVyLXRvdGFsIHNtYWxsLmluY2x1ZGVzX3RheCBzcGFuLndvb2NvbW1lcmNlLVByaWNlLWFtb3VudCxcbmJvZHkud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB0Zm9vdCB0ci5vcmRlci10b3RhbCBzbWFsbC5pbmNsdWRlc190YXggc3Bhbi53b29jb21tZXJjZS1QcmljZS1hbW91bnQgc3Bhbi53b29jb21tZXJjZS1QcmljZS1jdXJyZW5jeVN5bWJvbCwgYm9keS53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGZvb3QgdHIub3JkZXItdG90YWwgc21hbGwuaW5jbHVkZXNfdGF4IHNwYW4ud29vY29tbWVyY2UtUHJpY2UtYW1vdW50LFxuYm9keS53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGZvb3QgdHIub3JkZXItdG90YWwgc21hbGwuaW5jbHVkZXNfdGF4IHNwYW4ud29vY29tbWVyY2UtUHJpY2UtYW1vdW50IHNwYW4ud29vY29tbWVyY2UtUHJpY2UtY3VycmVuY3lTeW1ib2wsIGJvZHkud29vY29tbWVyY2UtcGFnZSB0YWJsZS5zaG9wX3RhYmxlIHRmb290IHRyLm9yZGVyLXRvdGFsIHNtYWxsLmluY2x1ZGVzX3RheCBzcGFuLndvb2NvbW1lcmNlLVByaWNlLWFtb3VudCxcbmJvZHkud29vY29tbWVyY2UtcGFnZSB0YWJsZS5zaG9wX3RhYmxlIHRmb290IHRyLm9yZGVyLXRvdGFsIHNtYWxsLmluY2x1ZGVzX3RheCBzcGFuLndvb2NvbW1lcmNlLVByaWNlLWFtb3VudCBzcGFuLndvb2NvbW1lcmNlLVByaWNlLWN1cnJlbmN5U3ltYm9sLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRmb290IHRyLm9yZGVyLXRvdGFsIHNtYWxsLmluY2x1ZGVzX3RheCBzcGFuLndvb2NvbW1lcmNlLVByaWNlLWFtb3VudCxcbmJvZHkud29vY29tbWVyY2UtcGFnZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGZvb3QgdHIub3JkZXItdG90YWwgc21hbGwuaW5jbHVkZXNfdGF4IHNwYW4ud29vY29tbWVyY2UtUHJpY2UtYW1vdW50IHNwYW4ud29vY29tbWVyY2UtUHJpY2UtY3VycmVuY3lTeW1ib2wsIGRpdi53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlIHRmb290IHRyLm9yZGVyLXRvdGFsIHNtYWxsLmluY2x1ZGVzX3RheCBzcGFuLndvb2NvbW1lcmNlLVByaWNlLWFtb3VudCxcbmRpdi53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlIHRmb290IHRyLm9yZGVyLXRvdGFsIHNtYWxsLmluY2x1ZGVzX3RheCBzcGFuLndvb2NvbW1lcmNlLVByaWNlLWFtb3VudCBzcGFuLndvb2NvbW1lcmNlLVByaWNlLWN1cnJlbmN5U3ltYm9sLCBkaXYud29vY29tbWVyY2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRmb290IHRyLm9yZGVyLXRvdGFsIHNtYWxsLmluY2x1ZGVzX3RheCBzcGFuLndvb2NvbW1lcmNlLVByaWNlLWFtb3VudCxcbmRpdi53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGZvb3QgdHIub3JkZXItdG90YWwgc21hbGwuaW5jbHVkZXNfdGF4IHNwYW4ud29vY29tbWVyY2UtUHJpY2UtYW1vdW50IHNwYW4ud29vY29tbWVyY2UtUHJpY2UtY3VycmVuY3lTeW1ib2wge1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuYm9keS53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlIHRyIHRoLCBib2R5Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUgdHIgdGQsIGJvZHkud29vY29tbWVyY2UtcGFnZSB0YWJsZS5zaG9wX3RhYmxlIHRyIHRoLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdGFibGUuc2hvcF90YWJsZSB0ciB0ZCwgZGl2Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUgdHIgdGgsIGRpdi53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlIHRyIHRkIHtcbiAgcGFkZGluZzogMC41NjI1cmVtIDAuNzVyZW07XG59XG5ib2R5Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUgdHIuc2hpcHBpbmcgcCwgYm9keS53b29jb21tZXJjZS1wYWdlIHRhYmxlLnNob3BfdGFibGUgdHIuc2hpcHBpbmcgcCwgZGl2Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUgdHIuc2hpcHBpbmcgcCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5ib2R5Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUgdHIuc2hpcHBpbmcgYS5zaGlwcGluZy1jYWxjdWxhdG9yLWJ1dHRvbiwgYm9keS53b29jb21tZXJjZS1wYWdlIHRhYmxlLnNob3BfdGFibGUgdHIuc2hpcHBpbmcgYS5zaGlwcGluZy1jYWxjdWxhdG9yLWJ1dHRvbiwgZGl2Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUgdHIuc2hpcHBpbmcgYS5zaGlwcGluZy1jYWxjdWxhdG9yLWJ1dHRvbiB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5ib2R5Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUgdHIuc2hpcHBpbmcgLnNoaXBwaW5nLWNhbGN1bGF0b3ItZm9ybSBwLmZvcm0tcm93LCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdGFibGUuc2hvcF90YWJsZSB0ci5zaGlwcGluZyAuc2hpcHBpbmctY2FsY3VsYXRvci1mb3JtIHAuZm9ybS1yb3csIGRpdi53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlIHRyLnNoaXBwaW5nIC5zaGlwcGluZy1jYWxjdWxhdG9yLWZvcm0gcC5mb3JtLXJvdyB7XG4gIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gIHBhZGRpbmc6IDA7XG59XG5ib2R5Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUgdHIuc2hpcHBpbmcgLnNoaXBwaW5nLWNhbGN1bGF0b3ItZm9ybSBwLmZvcm0tcm93IC5zZWxlY3QyLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdGFibGUuc2hvcF90YWJsZSB0ci5zaGlwcGluZyAuc2hpcHBpbmctY2FsY3VsYXRvci1mb3JtIHAuZm9ybS1yb3cgLnNlbGVjdDIsIGRpdi53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlIHRyLnNoaXBwaW5nIC5zaGlwcGluZy1jYWxjdWxhdG9yLWZvcm0gcC5mb3JtLXJvdyAuc2VsZWN0MiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICBtaW4taGVpZ2h0OiAyLjYyNXJlbTtcbn1cbmJvZHkud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB0ci5zaGlwcGluZyAuc2hpcHBpbmctY2FsY3VsYXRvci1mb3JtIHAuZm9ybS1yb3cgLnNlbGVjdDIgLnNlbGVjdDItc2VsZWN0aW9uLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdGFibGUuc2hvcF90YWJsZSB0ci5zaGlwcGluZyAuc2hpcHBpbmctY2FsY3VsYXRvci1mb3JtIHAuZm9ybS1yb3cgLnNlbGVjdDIgLnNlbGVjdDItc2VsZWN0aW9uLCBkaXYud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB0ci5zaGlwcGluZyAuc2hpcHBpbmctY2FsY3VsYXRvci1mb3JtIHAuZm9ybS1yb3cgLnNlbGVjdDIgLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgYm9yZGVyLWNvbG9yOiAjMDAzYTcxO1xuICBtaW4taGVpZ2h0OiAyLjYyNXJlbTtcbn1cbmJvZHkud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB0ci5zaGlwcGluZyAuc2hpcHBpbmctY2FsY3VsYXRvci1mb3JtIHAuZm9ybS1yb3cgLnNlbGVjdDIgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCxcbmJvZHkud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB0ci5zaGlwcGluZyAuc2hpcHBpbmctY2FsY3VsYXRvci1mb3JtIHAuZm9ybS1yb3cgLnNlbGVjdDIgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdywgYm9keS53b29jb21tZXJjZS1wYWdlIHRhYmxlLnNob3BfdGFibGUgdHIuc2hpcHBpbmcgLnNoaXBwaW5nLWNhbGN1bGF0b3ItZm9ybSBwLmZvcm0tcm93IC5zZWxlY3QyIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdGFibGUuc2hvcF90YWJsZSB0ci5zaGlwcGluZyAuc2hpcHBpbmctY2FsY3VsYXRvci1mb3JtIHAuZm9ybS1yb3cgLnNlbGVjdDIgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdywgZGl2Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUgdHIuc2hpcHBpbmcgLnNoaXBwaW5nLWNhbGN1bGF0b3ItZm9ybSBwLmZvcm0tcm93IC5zZWxlY3QyIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQsXG5kaXYud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB0ci5zaGlwcGluZyAuc2hpcHBpbmctY2FsY3VsYXRvci1mb3JtIHAuZm9ybS1yb3cgLnNlbGVjdDIgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyB7XG4gIGxpbmUtaGVpZ2h0OiAyLjYyNXJlbTtcbiAgbWluLWhlaWdodDogMi42MjVyZW07XG59XG5ib2R5Lndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUgdHIuc2hpcHBpbmcgLnNoaXBwaW5nLWNhbGN1bGF0b3ItZm9ybSBwLmZvcm0tcm93IC5pbnB1dC10ZXh0LCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdGFibGUuc2hvcF90YWJsZSB0ci5zaGlwcGluZyAuc2hpcHBpbmctY2FsY3VsYXRvci1mb3JtIHAuZm9ybS1yb3cgLmlucHV0LXRleHQsIGRpdi53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlIHRyLnNoaXBwaW5nIC5zaGlwcGluZy1jYWxjdWxhdG9yLWZvcm0gcC5mb3JtLXJvdyAuaW5wdXQtdGV4dCB7XG4gIGJvcmRlci1jb2xvcjogIzAwM2E3MTtcbiAgYm9yZGVyLXJhZGl1czogMC4xODc1cmVtO1xuICBib3gtc2hhZG93OiAwO1xufVxuYm9keS53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlIHRyLnNoaXBwaW5nIC5zaGlwcGluZy1jYWxjdWxhdG9yLWZvcm0gYnV0dG9uLmJ1dHRvbiwgYm9keS53b29jb21tZXJjZS1wYWdlIHRhYmxlLnNob3BfdGFibGUgdHIuc2hpcHBpbmcgLnNoaXBwaW5nLWNhbGN1bGF0b3ItZm9ybSBidXR0b24uYnV0dG9uLCBkaXYud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB0ci5zaGlwcGluZyAuc2hpcHBpbmctY2FsY3VsYXRvci1mb3JtIGJ1dHRvbi5idXR0b24ge1xuICBtYXJnaW4tYm90dG9tOiAwLjMxMjVyZW07XG59XG5ib2R5Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50LCBib2R5Lndvb2NvbW1lcmNlICNwYXltZW50LCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQsIGJvZHkud29vY29tbWVyY2UtcGFnZSAjcGF5bWVudCwgZGl2Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50LCBkaXYud29vY29tbWVyY2UgI3BheW1lbnQge1xuICBiYWNrZ3JvdW5kOiAjMDAzYTcxO1xufVxuYm9keS53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMsXG5ib2R5Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzLCBib2R5Lndvb2NvbW1lcmNlICNwYXltZW50IHVsLndjX3BheW1lbnRfbWV0aG9kcyxcbmJvZHkud29vY29tbWVyY2UgI3BheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMsIGJvZHkud29vY29tbWVyY2UtcGFnZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMsIGJvZHkud29vY29tbWVyY2UtcGFnZSAjcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgI3BheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMsIGRpdi53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMsXG5kaXYud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMsIGRpdi53b29jb21tZXJjZSAjcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMsXG5kaXYud29vY29tbWVyY2UgI3BheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMge1xuICBiYWNrZ3JvdW5kOiAjMDAzYTcxO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuYm9keS53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgPiBsaSA+IGxhYmVsLFxuYm9keS53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53b29jb21tZXJjZS1QYXltZW50TWV0aG9kcyA+IGxpID4gbGFiZWwsIGJvZHkud29vY29tbWVyY2UgI3BheW1lbnQgdWwud2NfcGF5bWVudF9tZXRob2RzID4gbGkgPiBsYWJlbCxcbmJvZHkud29vY29tbWVyY2UgI3BheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMgPiBsaSA+IGxhYmVsLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgdWwud2NfcGF5bWVudF9tZXRob2RzID4gbGkgPiBsYWJlbCxcbmJvZHkud29vY29tbWVyY2UtcGFnZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53b29jb21tZXJjZS1QYXltZW50TWV0aG9kcyA+IGxpID4gbGFiZWwsIGJvZHkud29vY29tbWVyY2UtcGFnZSAjcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgPiBsaSA+IGxhYmVsLFxuYm9keS53b29jb21tZXJjZS1wYWdlICNwYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzID4gbGkgPiBsYWJlbCwgZGl2Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHVsLndjX3BheW1lbnRfbWV0aG9kcyA+IGxpID4gbGFiZWwsXG5kaXYud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMgPiBsaSA+IGxhYmVsLCBkaXYud29vY29tbWVyY2UgI3BheW1lbnQgdWwud2NfcGF5bWVudF9tZXRob2RzID4gbGkgPiBsYWJlbCxcbmRpdi53b29jb21tZXJjZSAjcGF5bWVudCB1bC53b29jb21tZXJjZS1QYXltZW50TWV0aG9kcyA+IGxpID4gbGFiZWwge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbmJvZHkud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgdWwud2NfcGF5bWVudF9tZXRob2RzIGxpLndjX3BheW1lbnRfbWV0aG9kIGxhYmVsLFxuYm9keS53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53b29jb21tZXJjZS1QYXltZW50TWV0aG9kcyBsaS53Y19wYXltZW50X21ldGhvZCBsYWJlbCwgYm9keS53b29jb21tZXJjZSAjcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkud2NfcGF5bWVudF9tZXRob2QgbGFiZWwsXG5ib2R5Lndvb2NvbW1lcmNlICNwYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLndjX3BheW1lbnRfbWV0aG9kIGxhYmVsLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgdWwud2NfcGF5bWVudF9tZXRob2RzIGxpLndjX3BheW1lbnRfbWV0aG9kIGxhYmVsLFxuYm9keS53b29jb21tZXJjZS1wYWdlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLndjX3BheW1lbnRfbWV0aG9kIGxhYmVsLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgI3BheW1lbnQgdWwud2NfcGF5bWVudF9tZXRob2RzIGxpLndjX3BheW1lbnRfbWV0aG9kIGxhYmVsLFxuYm9keS53b29jb21tZXJjZS1wYWdlICNwYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLndjX3BheW1lbnRfbWV0aG9kIGxhYmVsLCBkaXYud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgdWwud2NfcGF5bWVudF9tZXRob2RzIGxpLndjX3BheW1lbnRfbWV0aG9kIGxhYmVsLFxuZGl2Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLndjX3BheW1lbnRfbWV0aG9kIGxhYmVsLCBkaXYud29vY29tbWVyY2UgI3BheW1lbnQgdWwud2NfcGF5bWVudF9tZXRob2RzIGxpLndjX3BheW1lbnRfbWV0aG9kIGxhYmVsLFxuZGl2Lndvb2NvbW1lcmNlICNwYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLndjX3BheW1lbnRfbWV0aG9kIGxhYmVsIHtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogMTAwJTtcbn1cbmJvZHkud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgdWwud2NfcGF5bWVudF9tZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3BheXBhbCBhLmFib3V0X3BheXBhbCxcbmJvZHkud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMgbGkucGF5bWVudF9tZXRob2RfcGF5cGFsIGEuYWJvdXRfcGF5cGFsLCBib2R5Lndvb2NvbW1lcmNlICNwYXltZW50IHVsLndjX3BheW1lbnRfbWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9wYXlwYWwgYS5hYm91dF9wYXlwYWwsXG5ib2R5Lndvb2NvbW1lcmNlICNwYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3BheXBhbCBhLmFib3V0X3BheXBhbCwgYm9keS53b29jb21tZXJjZS1wYWdlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHVsLndjX3BheW1lbnRfbWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9wYXlwYWwgYS5hYm91dF9wYXlwYWwsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMgbGkucGF5bWVudF9tZXRob2RfcGF5cGFsIGEuYWJvdXRfcGF5cGFsLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgI3BheW1lbnQgdWwud2NfcGF5bWVudF9tZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3BheXBhbCBhLmFib3V0X3BheXBhbCxcbmJvZHkud29vY29tbWVyY2UtcGFnZSAjcGF5bWVudCB1bC53b29jb21tZXJjZS1QYXltZW50TWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9wYXlwYWwgYS5hYm91dF9wYXlwYWwsIGRpdi53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkucGF5bWVudF9tZXRob2RfcGF5cGFsIGEuYWJvdXRfcGF5cGFsLFxuZGl2Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3BheXBhbCBhLmFib3V0X3BheXBhbCwgZGl2Lndvb2NvbW1lcmNlICNwYXltZW50IHVsLndjX3BheW1lbnRfbWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9wYXlwYWwgYS5hYm91dF9wYXlwYWwsXG5kaXYud29vY29tbWVyY2UgI3BheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMgbGkucGF5bWVudF9tZXRob2RfcGF5cGFsIGEuYWJvdXRfcGF5cGFsIHtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTtcbn1cbmJvZHkud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgdWwud2NfcGF5bWVudF9tZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBsYWJlbCxcbmJvZHkud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGxhYmVsLCBib2R5Lndvb2NvbW1lcmNlICNwYXltZW50IHVsLndjX3BheW1lbnRfbWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgbGFiZWwsXG5ib2R5Lndvb2NvbW1lcmNlICNwYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBsYWJlbCwgYm9keS53b29jb21tZXJjZS1wYWdlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHVsLndjX3BheW1lbnRfbWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgbGFiZWwsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGxhYmVsLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgI3BheW1lbnQgdWwud2NfcGF5bWVudF9tZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBsYWJlbCxcbmJvZHkud29vY29tbWVyY2UtcGFnZSAjcGF5bWVudCB1bC53b29jb21tZXJjZS1QYXltZW50TWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgbGFiZWwsIGRpdi53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGxhYmVsLFxuZGl2Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBsYWJlbCwgZGl2Lndvb2NvbW1lcmNlICNwYXltZW50IHVsLndjX3BheW1lbnRfbWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgbGFiZWwsXG5kaXYud29vY29tbWVyY2UgI3BheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGxhYmVsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5ib2R5Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHVsLndjX3BheW1lbnRfbWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgbGFiZWwgaW1nLFxuYm9keS53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53b29jb21tZXJjZS1QYXltZW50TWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgbGFiZWwgaW1nLCBib2R5Lndvb2NvbW1lcmNlICNwYXltZW50IHVsLndjX3BheW1lbnRfbWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgbGFiZWwgaW1nLFxuYm9keS53b29jb21tZXJjZSAjcGF5bWVudCB1bC53b29jb21tZXJjZS1QYXltZW50TWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgbGFiZWwgaW1nLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgdWwud2NfcGF5bWVudF9tZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBsYWJlbCBpbWcsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGxhYmVsIGltZywgYm9keS53b29jb21tZXJjZS1wYWdlICNwYXltZW50IHVsLndjX3BheW1lbnRfbWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgbGFiZWwgaW1nLFxuYm9keS53b29jb21tZXJjZS1wYWdlICNwYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBsYWJlbCBpbWcsIGRpdi53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGxhYmVsIGltZyxcbmRpdi53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53b29jb21tZXJjZS1QYXltZW50TWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgbGFiZWwgaW1nLCBkaXYud29vY29tbWVyY2UgI3BheW1lbnQgdWwud2NfcGF5bWVudF9tZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBsYWJlbCBpbWcsXG5kaXYud29vY29tbWVyY2UgI3BheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGxhYmVsIGltZyB7XG4gIGZsb2F0OiBub25lO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNy41ZW0pIHtcbiAgYm9keS53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGxhYmVsIGltZyxcbiAgYm9keS53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53b29jb21tZXJjZS1QYXltZW50TWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgbGFiZWwgaW1nLCBib2R5Lndvb2NvbW1lcmNlICNwYXltZW50IHVsLndjX3BheW1lbnRfbWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgbGFiZWwgaW1nLFxuICBib2R5Lndvb2NvbW1lcmNlICNwYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBsYWJlbCBpbWcsIGJvZHkud29vY29tbWVyY2UtcGFnZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGxhYmVsIGltZyxcbiAgYm9keS53b29jb21tZXJjZS1wYWdlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBsYWJlbCBpbWcsIGJvZHkud29vY29tbWVyY2UtcGFnZSAjcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGxhYmVsIGltZyxcbiAgYm9keS53b29jb21tZXJjZS1wYWdlICNwYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBsYWJlbCBpbWcsIGRpdi53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGxhYmVsIGltZyxcbiAgZGl2Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBsYWJlbCBpbWcsIGRpdi53b29jb21tZXJjZSAjcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGxhYmVsIGltZyxcbiAgZGl2Lndvb2NvbW1lcmNlICNwYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBsYWJlbCBpbWcge1xuICAgIG1heC13aWR0aDogMS41NjI1cmVtO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDMwZW0pIHtcbiAgYm9keS53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGxhYmVsIGltZyxcbiAgYm9keS53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53b29jb21tZXJjZS1QYXltZW50TWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgbGFiZWwgaW1nLCBib2R5Lndvb2NvbW1lcmNlICNwYXltZW50IHVsLndjX3BheW1lbnRfbWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgbGFiZWwgaW1nLFxuICBib2R5Lndvb2NvbW1lcmNlICNwYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBsYWJlbCBpbWcsIGJvZHkud29vY29tbWVyY2UtcGFnZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGxhYmVsIGltZyxcbiAgYm9keS53b29jb21tZXJjZS1wYWdlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBsYWJlbCBpbWcsIGJvZHkud29vY29tbWVyY2UtcGFnZSAjcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGxhYmVsIGltZyxcbiAgYm9keS53b29jb21tZXJjZS1wYWdlICNwYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBsYWJlbCBpbWcsIGRpdi53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGxhYmVsIGltZyxcbiAgZGl2Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBsYWJlbCBpbWcsIGRpdi53b29jb21tZXJjZSAjcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGxhYmVsIGltZyxcbiAgZGl2Lndvb2NvbW1lcmNlICNwYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBsYWJlbCBpbWcge1xuICAgIG1heC13aWR0aDogMS4yNXJlbTtcbiAgfVxufVxuYm9keS53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUsXG5ib2R5Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBkaXYucGF5bWVudF9ib3gucGF5bWVudF9tZXRob2Rfc3RyaXBlLCBib2R5Lndvb2NvbW1lcmNlICNwYXltZW50IHVsLndjX3BheW1lbnRfbWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgZGl2LnBheW1lbnRfYm94LnBheW1lbnRfbWV0aG9kX3N0cmlwZSxcbmJvZHkud29vY29tbWVyY2UgI3BheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUsIGJvZHkud29vY29tbWVyY2UtcGFnZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUsIGJvZHkud29vY29tbWVyY2UtcGFnZSAjcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgI3BheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUsIGRpdi53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUsXG5kaXYud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUsIGRpdi53b29jb21tZXJjZSAjcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUsXG5kaXYud29vY29tbWVyY2UgI3BheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5ib2R5Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHVsLndjX3BheW1lbnRfbWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgZGl2LnBheW1lbnRfYm94LnBheW1lbnRfbWV0aG9kX3N0cmlwZTpiZWZvcmUsXG5ib2R5Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBkaXYucGF5bWVudF9ib3gucGF5bWVudF9tZXRob2Rfc3RyaXBlOmJlZm9yZSwgYm9keS53b29jb21tZXJjZSAjcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGU6YmVmb3JlLFxuYm9keS53b29jb21tZXJjZSAjcGF5bWVudCB1bC53b29jb21tZXJjZS1QYXltZW50TWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgZGl2LnBheW1lbnRfYm94LnBheW1lbnRfbWV0aG9kX3N0cmlwZTpiZWZvcmUsIGJvZHkud29vY29tbWVyY2UtcGFnZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGU6YmVmb3JlLFxuYm9keS53b29jb21tZXJjZS1wYWdlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBkaXYucGF5bWVudF9ib3gucGF5bWVudF9tZXRob2Rfc3RyaXBlOmJlZm9yZSwgYm9keS53b29jb21tZXJjZS1wYWdlICNwYXltZW50IHVsLndjX3BheW1lbnRfbWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgZGl2LnBheW1lbnRfYm94LnBheW1lbnRfbWV0aG9kX3N0cmlwZTpiZWZvcmUsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgI3BheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGU6YmVmb3JlLCBkaXYud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgdWwud2NfcGF5bWVudF9tZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBkaXYucGF5bWVudF9ib3gucGF5bWVudF9tZXRob2Rfc3RyaXBlOmJlZm9yZSxcbmRpdi53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53b29jb21tZXJjZS1QYXltZW50TWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgZGl2LnBheW1lbnRfYm94LnBheW1lbnRfbWV0aG9kX3N0cmlwZTpiZWZvcmUsIGRpdi53b29jb21tZXJjZSAjcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGU6YmVmb3JlLFxuZGl2Lndvb2NvbW1lcmNlICNwYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBkaXYucGF5bWVudF9ib3gucGF5bWVudF9tZXRob2Rfc3RyaXBlOmJlZm9yZSB7XG4gIGJvcmRlcjogMWVtIHNvbGlkICNGRkZGRkYgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBib3JkZXItbGVmdC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cbmJvZHkud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgdWwud2NfcGF5bWVudF9tZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBkaXYucGF5bWVudF9ib3gucGF5bWVudF9tZXRob2Rfc3RyaXBlIGlucHV0I3djLXN0cmlwZS1uZXctcGF5bWVudC1tZXRob2QsXG5ib2R5Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBkaXYucGF5bWVudF9ib3gucGF5bWVudF9tZXRob2Rfc3RyaXBlIGlucHV0I3djLXN0cmlwZS1uZXctcGF5bWVudC1tZXRob2QsIGJvZHkud29vY29tbWVyY2UgI3BheW1lbnQgdWwud2NfcGF5bWVudF9tZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBkaXYucGF5bWVudF9ib3gucGF5bWVudF9tZXRob2Rfc3RyaXBlIGlucHV0I3djLXN0cmlwZS1uZXctcGF5bWVudC1tZXRob2QsXG5ib2R5Lndvb2NvbW1lcmNlICNwYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBkaXYucGF5bWVudF9ib3gucGF5bWVudF9tZXRob2Rfc3RyaXBlIGlucHV0I3djLXN0cmlwZS1uZXctcGF5bWVudC1tZXRob2QsIGJvZHkud29vY29tbWVyY2UtcGFnZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUgaW5wdXQjd2Mtc3RyaXBlLW5ldy1wYXltZW50LW1ldGhvZCxcbmJvZHkud29vY29tbWVyY2UtcGFnZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53b29jb21tZXJjZS1QYXltZW50TWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgZGl2LnBheW1lbnRfYm94LnBheW1lbnRfbWV0aG9kX3N0cmlwZSBpbnB1dCN3Yy1zdHJpcGUtbmV3LXBheW1lbnQtbWV0aG9kLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgI3BheW1lbnQgdWwud2NfcGF5bWVudF9tZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBkaXYucGF5bWVudF9ib3gucGF5bWVudF9tZXRob2Rfc3RyaXBlIGlucHV0I3djLXN0cmlwZS1uZXctcGF5bWVudC1tZXRob2QsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgI3BheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUgaW5wdXQjd2Mtc3RyaXBlLW5ldy1wYXltZW50LW1ldGhvZCwgZGl2Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHVsLndjX3BheW1lbnRfbWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgZGl2LnBheW1lbnRfYm94LnBheW1lbnRfbWV0aG9kX3N0cmlwZSBpbnB1dCN3Yy1zdHJpcGUtbmV3LXBheW1lbnQtbWV0aG9kLFxuZGl2Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBkaXYucGF5bWVudF9ib3gucGF5bWVudF9tZXRob2Rfc3RyaXBlIGlucHV0I3djLXN0cmlwZS1uZXctcGF5bWVudC1tZXRob2QsIGRpdi53b29jb21tZXJjZSAjcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUgaW5wdXQjd2Mtc3RyaXBlLW5ldy1wYXltZW50LW1ldGhvZCxcbmRpdi53b29jb21tZXJjZSAjcGF5bWVudCB1bC53b29jb21tZXJjZS1QYXltZW50TWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgZGl2LnBheW1lbnRfYm94LnBheW1lbnRfbWV0aG9kX3N0cmlwZSBpbnB1dCN3Yy1zdHJpcGUtbmV3LXBheW1lbnQtbWV0aG9kIHtcbiAgbWFyZ2luOiAwIDAuMzEyNXJlbSAwIDAgIWltcG9ydGFudDtcbn1cbmJvZHkud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgdWwud2NfcGF5bWVudF9tZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBkaXYucGF5bWVudF9ib3gucGF5bWVudF9tZXRob2Rfc3RyaXBlIGZpZWxkc2V0I3djLXN0cmlwZS1jYy1mb3JtIC5mb3JtLXJvdyxcbmJvZHkud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUgZmllbGRzZXQjd2Mtc3RyaXBlLWNjLWZvcm0gLmZvcm0tcm93LCBib2R5Lndvb2NvbW1lcmNlICNwYXltZW50IHVsLndjX3BheW1lbnRfbWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgZGl2LnBheW1lbnRfYm94LnBheW1lbnRfbWV0aG9kX3N0cmlwZSBmaWVsZHNldCN3Yy1zdHJpcGUtY2MtZm9ybSAuZm9ybS1yb3csXG5ib2R5Lndvb2NvbW1lcmNlICNwYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBkaXYucGF5bWVudF9ib3gucGF5bWVudF9tZXRob2Rfc3RyaXBlIGZpZWxkc2V0I3djLXN0cmlwZS1jYy1mb3JtIC5mb3JtLXJvdywgYm9keS53b29jb21tZXJjZS1wYWdlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHVsLndjX3BheW1lbnRfbWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgZGl2LnBheW1lbnRfYm94LnBheW1lbnRfbWV0aG9kX3N0cmlwZSBmaWVsZHNldCN3Yy1zdHJpcGUtY2MtZm9ybSAuZm9ybS1yb3csXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUgZmllbGRzZXQjd2Mtc3RyaXBlLWNjLWZvcm0gLmZvcm0tcm93LCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgI3BheW1lbnQgdWwud2NfcGF5bWVudF9tZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBkaXYucGF5bWVudF9ib3gucGF5bWVudF9tZXRob2Rfc3RyaXBlIGZpZWxkc2V0I3djLXN0cmlwZS1jYy1mb3JtIC5mb3JtLXJvdyxcbmJvZHkud29vY29tbWVyY2UtcGFnZSAjcGF5bWVudCB1bC53b29jb21tZXJjZS1QYXltZW50TWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgZGl2LnBheW1lbnRfYm94LnBheW1lbnRfbWV0aG9kX3N0cmlwZSBmaWVsZHNldCN3Yy1zdHJpcGUtY2MtZm9ybSAuZm9ybS1yb3csIGRpdi53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUgZmllbGRzZXQjd2Mtc3RyaXBlLWNjLWZvcm0gLmZvcm0tcm93LFxuZGl2Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBkaXYucGF5bWVudF9ib3gucGF5bWVudF9tZXRob2Rfc3RyaXBlIGZpZWxkc2V0I3djLXN0cmlwZS1jYy1mb3JtIC5mb3JtLXJvdywgZGl2Lndvb2NvbW1lcmNlICNwYXltZW50IHVsLndjX3BheW1lbnRfbWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgZGl2LnBheW1lbnRfYm94LnBheW1lbnRfbWV0aG9kX3N0cmlwZSBmaWVsZHNldCN3Yy1zdHJpcGUtY2MtZm9ybSAuZm9ybS1yb3csXG5kaXYud29vY29tbWVyY2UgI3BheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUgZmllbGRzZXQjd2Mtc3RyaXBlLWNjLWZvcm0gLmZvcm0tcm93IHtcbiAgcGFkZGluZzogMDtcbn1cbmJvZHkud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgdWwud2NfcGF5bWVudF9tZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBkaXYucGF5bWVudF9ib3gucGF5bWVudF9tZXRob2Rfc3RyaXBlIGZpZWxkc2V0I3djLXN0cmlwZS1jYy1mb3JtIC5mb3JtLXJvdyBsYWJlbCxcbmJvZHkud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUgZmllbGRzZXQjd2Mtc3RyaXBlLWNjLWZvcm0gLmZvcm0tcm93IGxhYmVsLCBib2R5Lndvb2NvbW1lcmNlICNwYXltZW50IHVsLndjX3BheW1lbnRfbWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgZGl2LnBheW1lbnRfYm94LnBheW1lbnRfbWV0aG9kX3N0cmlwZSBmaWVsZHNldCN3Yy1zdHJpcGUtY2MtZm9ybSAuZm9ybS1yb3cgbGFiZWwsXG5ib2R5Lndvb2NvbW1lcmNlICNwYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBkaXYucGF5bWVudF9ib3gucGF5bWVudF9tZXRob2Rfc3RyaXBlIGZpZWxkc2V0I3djLXN0cmlwZS1jYy1mb3JtIC5mb3JtLXJvdyBsYWJlbCwgYm9keS53b29jb21tZXJjZS1wYWdlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHVsLndjX3BheW1lbnRfbWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgZGl2LnBheW1lbnRfYm94LnBheW1lbnRfbWV0aG9kX3N0cmlwZSBmaWVsZHNldCN3Yy1zdHJpcGUtY2MtZm9ybSAuZm9ybS1yb3cgbGFiZWwsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUgZmllbGRzZXQjd2Mtc3RyaXBlLWNjLWZvcm0gLmZvcm0tcm93IGxhYmVsLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgI3BheW1lbnQgdWwud2NfcGF5bWVudF9tZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBkaXYucGF5bWVudF9ib3gucGF5bWVudF9tZXRob2Rfc3RyaXBlIGZpZWxkc2V0I3djLXN0cmlwZS1jYy1mb3JtIC5mb3JtLXJvdyBsYWJlbCxcbmJvZHkud29vY29tbWVyY2UtcGFnZSAjcGF5bWVudCB1bC53b29jb21tZXJjZS1QYXltZW50TWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgZGl2LnBheW1lbnRfYm94LnBheW1lbnRfbWV0aG9kX3N0cmlwZSBmaWVsZHNldCN3Yy1zdHJpcGUtY2MtZm9ybSAuZm9ybS1yb3cgbGFiZWwsIGRpdi53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUgZmllbGRzZXQjd2Mtc3RyaXBlLWNjLWZvcm0gLmZvcm0tcm93IGxhYmVsLFxuZGl2Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBkaXYucGF5bWVudF9ib3gucGF5bWVudF9tZXRob2Rfc3RyaXBlIGZpZWxkc2V0I3djLXN0cmlwZS1jYy1mb3JtIC5mb3JtLXJvdyBsYWJlbCwgZGl2Lndvb2NvbW1lcmNlICNwYXltZW50IHVsLndjX3BheW1lbnRfbWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgZGl2LnBheW1lbnRfYm94LnBheW1lbnRfbWV0aG9kX3N0cmlwZSBmaWVsZHNldCN3Yy1zdHJpcGUtY2MtZm9ybSAuZm9ybS1yb3cgbGFiZWwsXG5kaXYud29vY29tbWVyY2UgI3BheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUgZmllbGRzZXQjd2Mtc3RyaXBlLWNjLWZvcm0gLmZvcm0tcm93IGxhYmVsIHtcbiAgY29sb3I6ICMwMDNhNzE7XG4gIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5ib2R5Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHVsLndjX3BheW1lbnRfbWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgZGl2LnBheW1lbnRfYm94LnBheW1lbnRfbWV0aG9kX3N0cmlwZSBmaWVsZHNldCN3Yy1zdHJpcGUtY2MtZm9ybSAuZm9ybS1yb3cgI3N0cmlwZS1jYXJkLWVsZW1lbnQsXG5ib2R5Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHVsLndjX3BheW1lbnRfbWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgZGl2LnBheW1lbnRfYm94LnBheW1lbnRfbWV0aG9kX3N0cmlwZSBmaWVsZHNldCN3Yy1zdHJpcGUtY2MtZm9ybSAuZm9ybS1yb3cgI3N0cmlwZS1leHAtZWxlbWVudCxcbmJvZHkud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgdWwud2NfcGF5bWVudF9tZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBkaXYucGF5bWVudF9ib3gucGF5bWVudF9tZXRob2Rfc3RyaXBlIGZpZWxkc2V0I3djLXN0cmlwZS1jYy1mb3JtIC5mb3JtLXJvdyAjc3RyaXBlLWN2Yy1lbGVtZW50LFxuYm9keS53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53b29jb21tZXJjZS1QYXltZW50TWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgZGl2LnBheW1lbnRfYm94LnBheW1lbnRfbWV0aG9kX3N0cmlwZSBmaWVsZHNldCN3Yy1zdHJpcGUtY2MtZm9ybSAuZm9ybS1yb3cgI3N0cmlwZS1jYXJkLWVsZW1lbnQsXG5ib2R5Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBkaXYucGF5bWVudF9ib3gucGF5bWVudF9tZXRob2Rfc3RyaXBlIGZpZWxkc2V0I3djLXN0cmlwZS1jYy1mb3JtIC5mb3JtLXJvdyAjc3RyaXBlLWV4cC1lbGVtZW50LFxuYm9keS53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53b29jb21tZXJjZS1QYXltZW50TWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgZGl2LnBheW1lbnRfYm94LnBheW1lbnRfbWV0aG9kX3N0cmlwZSBmaWVsZHNldCN3Yy1zdHJpcGUtY2MtZm9ybSAuZm9ybS1yb3cgI3N0cmlwZS1jdmMtZWxlbWVudCwgYm9keS53b29jb21tZXJjZSAjcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUgZmllbGRzZXQjd2Mtc3RyaXBlLWNjLWZvcm0gLmZvcm0tcm93ICNzdHJpcGUtY2FyZC1lbGVtZW50LFxuYm9keS53b29jb21tZXJjZSAjcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUgZmllbGRzZXQjd2Mtc3RyaXBlLWNjLWZvcm0gLmZvcm0tcm93ICNzdHJpcGUtZXhwLWVsZW1lbnQsXG5ib2R5Lndvb2NvbW1lcmNlICNwYXltZW50IHVsLndjX3BheW1lbnRfbWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgZGl2LnBheW1lbnRfYm94LnBheW1lbnRfbWV0aG9kX3N0cmlwZSBmaWVsZHNldCN3Yy1zdHJpcGUtY2MtZm9ybSAuZm9ybS1yb3cgI3N0cmlwZS1jdmMtZWxlbWVudCxcbmJvZHkud29vY29tbWVyY2UgI3BheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUgZmllbGRzZXQjd2Mtc3RyaXBlLWNjLWZvcm0gLmZvcm0tcm93ICNzdHJpcGUtY2FyZC1lbGVtZW50LFxuYm9keS53b29jb21tZXJjZSAjcGF5bWVudCB1bC53b29jb21tZXJjZS1QYXltZW50TWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgZGl2LnBheW1lbnRfYm94LnBheW1lbnRfbWV0aG9kX3N0cmlwZSBmaWVsZHNldCN3Yy1zdHJpcGUtY2MtZm9ybSAuZm9ybS1yb3cgI3N0cmlwZS1leHAtZWxlbWVudCxcbmJvZHkud29vY29tbWVyY2UgI3BheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUgZmllbGRzZXQjd2Mtc3RyaXBlLWNjLWZvcm0gLmZvcm0tcm93ICNzdHJpcGUtY3ZjLWVsZW1lbnQsIGJvZHkud29vY29tbWVyY2UtcGFnZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUgZmllbGRzZXQjd2Mtc3RyaXBlLWNjLWZvcm0gLmZvcm0tcm93ICNzdHJpcGUtY2FyZC1lbGVtZW50LFxuYm9keS53b29jb21tZXJjZS1wYWdlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHVsLndjX3BheW1lbnRfbWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgZGl2LnBheW1lbnRfYm94LnBheW1lbnRfbWV0aG9kX3N0cmlwZSBmaWVsZHNldCN3Yy1zdHJpcGUtY2MtZm9ybSAuZm9ybS1yb3cgI3N0cmlwZS1leHAtZWxlbWVudCxcbmJvZHkud29vY29tbWVyY2UtcGFnZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUgZmllbGRzZXQjd2Mtc3RyaXBlLWNjLWZvcm0gLmZvcm0tcm93ICNzdHJpcGUtY3ZjLWVsZW1lbnQsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUgZmllbGRzZXQjd2Mtc3RyaXBlLWNjLWZvcm0gLmZvcm0tcm93ICNzdHJpcGUtY2FyZC1lbGVtZW50LFxuYm9keS53b29jb21tZXJjZS1wYWdlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBkaXYucGF5bWVudF9ib3gucGF5bWVudF9tZXRob2Rfc3RyaXBlIGZpZWxkc2V0I3djLXN0cmlwZS1jYy1mb3JtIC5mb3JtLXJvdyAjc3RyaXBlLWV4cC1lbGVtZW50LFxuYm9keS53b29jb21tZXJjZS1wYWdlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBkaXYucGF5bWVudF9ib3gucGF5bWVudF9tZXRob2Rfc3RyaXBlIGZpZWxkc2V0I3djLXN0cmlwZS1jYy1mb3JtIC5mb3JtLXJvdyAjc3RyaXBlLWN2Yy1lbGVtZW50LCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgI3BheW1lbnQgdWwud2NfcGF5bWVudF9tZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBkaXYucGF5bWVudF9ib3gucGF5bWVudF9tZXRob2Rfc3RyaXBlIGZpZWxkc2V0I3djLXN0cmlwZS1jYy1mb3JtIC5mb3JtLXJvdyAjc3RyaXBlLWNhcmQtZWxlbWVudCxcbmJvZHkud29vY29tbWVyY2UtcGFnZSAjcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUgZmllbGRzZXQjd2Mtc3RyaXBlLWNjLWZvcm0gLmZvcm0tcm93ICNzdHJpcGUtZXhwLWVsZW1lbnQsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgI3BheW1lbnQgdWwud2NfcGF5bWVudF9tZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBkaXYucGF5bWVudF9ib3gucGF5bWVudF9tZXRob2Rfc3RyaXBlIGZpZWxkc2V0I3djLXN0cmlwZS1jYy1mb3JtIC5mb3JtLXJvdyAjc3RyaXBlLWN2Yy1lbGVtZW50LFxuYm9keS53b29jb21tZXJjZS1wYWdlICNwYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBkaXYucGF5bWVudF9ib3gucGF5bWVudF9tZXRob2Rfc3RyaXBlIGZpZWxkc2V0I3djLXN0cmlwZS1jYy1mb3JtIC5mb3JtLXJvdyAjc3RyaXBlLWNhcmQtZWxlbWVudCxcbmJvZHkud29vY29tbWVyY2UtcGFnZSAjcGF5bWVudCB1bC53b29jb21tZXJjZS1QYXltZW50TWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgZGl2LnBheW1lbnRfYm94LnBheW1lbnRfbWV0aG9kX3N0cmlwZSBmaWVsZHNldCN3Yy1zdHJpcGUtY2MtZm9ybSAuZm9ybS1yb3cgI3N0cmlwZS1leHAtZWxlbWVudCxcbmJvZHkud29vY29tbWVyY2UtcGFnZSAjcGF5bWVudCB1bC53b29jb21tZXJjZS1QYXltZW50TWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgZGl2LnBheW1lbnRfYm94LnBheW1lbnRfbWV0aG9kX3N0cmlwZSBmaWVsZHNldCN3Yy1zdHJpcGUtY2MtZm9ybSAuZm9ybS1yb3cgI3N0cmlwZS1jdmMtZWxlbWVudCwgZGl2Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHVsLndjX3BheW1lbnRfbWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgZGl2LnBheW1lbnRfYm94LnBheW1lbnRfbWV0aG9kX3N0cmlwZSBmaWVsZHNldCN3Yy1zdHJpcGUtY2MtZm9ybSAuZm9ybS1yb3cgI3N0cmlwZS1jYXJkLWVsZW1lbnQsXG5kaXYud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgdWwud2NfcGF5bWVudF9tZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBkaXYucGF5bWVudF9ib3gucGF5bWVudF9tZXRob2Rfc3RyaXBlIGZpZWxkc2V0I3djLXN0cmlwZS1jYy1mb3JtIC5mb3JtLXJvdyAjc3RyaXBlLWV4cC1lbGVtZW50LFxuZGl2Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHVsLndjX3BheW1lbnRfbWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgZGl2LnBheW1lbnRfYm94LnBheW1lbnRfbWV0aG9kX3N0cmlwZSBmaWVsZHNldCN3Yy1zdHJpcGUtY2MtZm9ybSAuZm9ybS1yb3cgI3N0cmlwZS1jdmMtZWxlbWVudCxcbmRpdi53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB1bC53b29jb21tZXJjZS1QYXltZW50TWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgZGl2LnBheW1lbnRfYm94LnBheW1lbnRfbWV0aG9kX3N0cmlwZSBmaWVsZHNldCN3Yy1zdHJpcGUtY2MtZm9ybSAuZm9ybS1yb3cgI3N0cmlwZS1jYXJkLWVsZW1lbnQsXG5kaXYud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUgZmllbGRzZXQjd2Mtc3RyaXBlLWNjLWZvcm0gLmZvcm0tcm93ICNzdHJpcGUtZXhwLWVsZW1lbnQsXG5kaXYud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUgZmllbGRzZXQjd2Mtc3RyaXBlLWNjLWZvcm0gLmZvcm0tcm93ICNzdHJpcGUtY3ZjLWVsZW1lbnQsIGRpdi53b29jb21tZXJjZSAjcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUgZmllbGRzZXQjd2Mtc3RyaXBlLWNjLWZvcm0gLmZvcm0tcm93ICNzdHJpcGUtY2FyZC1lbGVtZW50LFxuZGl2Lndvb2NvbW1lcmNlICNwYXltZW50IHVsLndjX3BheW1lbnRfbWV0aG9kcyBsaS5wYXltZW50X21ldGhvZF9zdHJpcGUgZGl2LnBheW1lbnRfYm94LnBheW1lbnRfbWV0aG9kX3N0cmlwZSBmaWVsZHNldCN3Yy1zdHJpcGUtY2MtZm9ybSAuZm9ybS1yb3cgI3N0cmlwZS1leHAtZWxlbWVudCxcbmRpdi53b29jb21tZXJjZSAjcGF5bWVudCB1bC53Y19wYXltZW50X21ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUgZmllbGRzZXQjd2Mtc3RyaXBlLWNjLWZvcm0gLmZvcm0tcm93ICNzdHJpcGUtY3ZjLWVsZW1lbnQsXG5kaXYud29vY29tbWVyY2UgI3BheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMgbGkucGF5bWVudF9tZXRob2Rfc3RyaXBlIGRpdi5wYXltZW50X2JveC5wYXltZW50X21ldGhvZF9zdHJpcGUgZmllbGRzZXQjd2Mtc3RyaXBlLWNjLWZvcm0gLmZvcm0tcm93ICNzdHJpcGUtY2FyZC1lbGVtZW50LFxuZGl2Lndvb2NvbW1lcmNlICNwYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBkaXYucGF5bWVudF9ib3gucGF5bWVudF9tZXRob2Rfc3RyaXBlIGZpZWxkc2V0I3djLXN0cmlwZS1jYy1mb3JtIC5mb3JtLXJvdyAjc3RyaXBlLWV4cC1lbGVtZW50LFxuZGl2Lndvb2NvbW1lcmNlICNwYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSBkaXYucGF5bWVudF9ib3gucGF5bWVudF9tZXRob2Rfc3RyaXBlIGZpZWxkc2V0I3djLXN0cmlwZS1jYy1mb3JtIC5mb3JtLXJvdyAjc3RyaXBlLWN2Yy1lbGVtZW50IHtcbiAgYm9yZGVyOiAwLjA2MjVyZW0gc29saWQgIzAwM2E3MSAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbTtcbn1cbmJvZHkud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zLXdyYXBwZXIgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgcCwgYm9keS53b29jb21tZXJjZSAjcGF5bWVudCAud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMtd3JhcHBlciAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zLXdyYXBwZXIgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgcCwgYm9keS53b29jb21tZXJjZS1wYWdlICNwYXltZW50IC53b29jb21tZXJjZS10ZXJtcy1hbmQtY29uZGl0aW9ucy13cmFwcGVyIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IHAsIGRpdi53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCAud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMtd3JhcHBlciAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwLCBkaXYud29vY29tbWVyY2UgI3BheW1lbnQgLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zLXdyYXBwZXIgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgcCB7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5ib2R5Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IC53b29jb21tZXJjZS10ZXJtcy1hbmQtY29uZGl0aW9ucy13cmFwcGVyIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IHAgYSwgYm9keS53b29jb21tZXJjZSAjcGF5bWVudCAud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMtd3JhcHBlciAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwIGEsIGJvZHkud29vY29tbWVyY2UtcGFnZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCAud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMtd3JhcHBlciAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwIGEsIGJvZHkud29vY29tbWVyY2UtcGFnZSAjcGF5bWVudCAud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMtd3JhcHBlciAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwIGEsIGRpdi53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCAud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMtd3JhcHBlciAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwIGEsIGRpdi53b29jb21tZXJjZSAjcGF5bWVudCAud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMtd3JhcHBlciAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwIGEge1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtc2hhZG93OiAwLjEyNXJlbSAwLjA2MjVyZW0gMCAjMDAzYTcxO1xuICB6LWluZGV4OiAxMDtcbn1cbmJvZHkud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zLXdyYXBwZXIgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgcCBhOmFmdGVyLCBib2R5Lndvb2NvbW1lcmNlICNwYXltZW50IC53b29jb21tZXJjZS10ZXJtcy1hbmQtY29uZGl0aW9ucy13cmFwcGVyIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IHAgYTphZnRlciwgYm9keS53b29jb21tZXJjZS1wYWdlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IC53b29jb21tZXJjZS10ZXJtcy1hbmQtY29uZGl0aW9ucy13cmFwcGVyIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IHAgYTphZnRlciwgYm9keS53b29jb21tZXJjZS1wYWdlICNwYXltZW50IC53b29jb21tZXJjZS10ZXJtcy1hbmQtY29uZGl0aW9ucy13cmFwcGVyIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IHAgYTphZnRlciwgZGl2Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IC53b29jb21tZXJjZS10ZXJtcy1hbmQtY29uZGl0aW9ucy13cmFwcGVyIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IHAgYTphZnRlciwgZGl2Lndvb2NvbW1lcmNlICNwYXltZW50IC53b29jb21tZXJjZS10ZXJtcy1hbmQtY29uZGl0aW9ucy13cmFwcGVyIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IHAgYTphZnRlciB7XG4gIGJhY2tncm91bmQ6ICMwMDNhNzE7XG4gIGJvdHRvbTogMC4xMjVyZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDAuMTI1cmVtO1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAtMTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnMgZWFzZS1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnMgZWFzZS1vdXQ7XG59XG5ib2R5Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IC53b29jb21tZXJjZS10ZXJtcy1hbmQtY29uZGl0aW9ucy13cmFwcGVyIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IHAgYTpob3ZlcjphZnRlciwgYm9keS53b29jb21tZXJjZSAjcGF5bWVudCAud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMtd3JhcHBlciAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwIGE6aG92ZXI6YWZ0ZXIsIGJvZHkud29vY29tbWVyY2UtcGFnZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCAud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMtd3JhcHBlciAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwIGE6aG92ZXI6YWZ0ZXIsIGJvZHkud29vY29tbWVyY2UtcGFnZSAjcGF5bWVudCAud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMtd3JhcHBlciAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwIGE6aG92ZXI6YWZ0ZXIsIGRpdi53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCAud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMtd3JhcHBlciAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwIGE6aG92ZXI6YWZ0ZXIsIGRpdi53b29jb21tZXJjZSAjcGF5bWVudCAud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMtd3JhcHBlciAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwIGE6aG92ZXI6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xufVxuYm9keS53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCAud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMtd3JhcHBlciAud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMsIGJvZHkud29vY29tbWVyY2UgI3BheW1lbnQgLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zLXdyYXBwZXIgLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zLXdyYXBwZXIgLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgI3BheW1lbnQgLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zLXdyYXBwZXIgLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zLCBkaXYud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zLXdyYXBwZXIgLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zLCBkaXYud29vY29tbWVyY2UgI3BheW1lbnQgLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zLXdyYXBwZXIgLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDAuMTI1cmVtO1xuICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7XG59XG5ib2R5Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IC53b29jb21tZXJjZS10ZXJtcy1hbmQtY29uZGl0aW9ucy13cmFwcGVyIHNwYW4ud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMtY2hlY2tib3gtdGV4dCwgYm9keS53b29jb21tZXJjZSAjcGF5bWVudCAud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMtd3JhcHBlciBzcGFuLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zLWNoZWNrYm94LXRleHQsIGJvZHkud29vY29tbWVyY2UtcGFnZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCAud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMtd3JhcHBlciBzcGFuLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zLWNoZWNrYm94LXRleHQsIGJvZHkud29vY29tbWVyY2UtcGFnZSAjcGF5bWVudCAud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMtd3JhcHBlciBzcGFuLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zLWNoZWNrYm94LXRleHQsIGRpdi53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCAud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMtd3JhcHBlciBzcGFuLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zLWNoZWNrYm94LXRleHQsIGRpdi53b29jb21tZXJjZSAjcGF5bWVudCAud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMtd3JhcHBlciBzcGFuLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zLWNoZWNrYm94LXRleHQge1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDFyZW0gIWltcG9ydGFudDtcbn1cbmJvZHkud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zLXdyYXBwZXIgc3Bhbi53b29jb21tZXJjZS10ZXJtcy1hbmQtY29uZGl0aW9ucy1jaGVja2JveC10ZXh0IGEsIGJvZHkud29vY29tbWVyY2UgI3BheW1lbnQgLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zLXdyYXBwZXIgc3Bhbi53b29jb21tZXJjZS10ZXJtcy1hbmQtY29uZGl0aW9ucy1jaGVja2JveC10ZXh0IGEsIGJvZHkud29vY29tbWVyY2UtcGFnZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCAud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMtd3JhcHBlciBzcGFuLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zLWNoZWNrYm94LXRleHQgYSwgYm9keS53b29jb21tZXJjZS1wYWdlICNwYXltZW50IC53b29jb21tZXJjZS10ZXJtcy1hbmQtY29uZGl0aW9ucy13cmFwcGVyIHNwYW4ud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMtY2hlY2tib3gtdGV4dCBhLCBkaXYud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zLXdyYXBwZXIgc3Bhbi53b29jb21tZXJjZS10ZXJtcy1hbmQtY29uZGl0aW9ucy1jaGVja2JveC10ZXh0IGEsIGRpdi53b29jb21tZXJjZSAjcGF5bWVudCAud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMtd3JhcHBlciBzcGFuLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zLWNoZWNrYm94LXRleHQgYSB7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1zaGFkb3c6IDAuMTI1cmVtIDAuMDYyNXJlbSAwICMwMDNhNzE7XG4gIHotaW5kZXg6IDEwO1xufVxuYm9keS53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCAud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMtd3JhcHBlciBzcGFuLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zLWNoZWNrYm94LXRleHQgYTphZnRlciwgYm9keS53b29jb21tZXJjZSAjcGF5bWVudCAud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMtd3JhcHBlciBzcGFuLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zLWNoZWNrYm94LXRleHQgYTphZnRlciwgYm9keS53b29jb21tZXJjZS1wYWdlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IC53b29jb21tZXJjZS10ZXJtcy1hbmQtY29uZGl0aW9ucy13cmFwcGVyIHNwYW4ud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMtY2hlY2tib3gtdGV4dCBhOmFmdGVyLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgI3BheW1lbnQgLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zLXdyYXBwZXIgc3Bhbi53b29jb21tZXJjZS10ZXJtcy1hbmQtY29uZGl0aW9ucy1jaGVja2JveC10ZXh0IGE6YWZ0ZXIsIGRpdi53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCAud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMtd3JhcHBlciBzcGFuLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zLWNoZWNrYm94LXRleHQgYTphZnRlciwgZGl2Lndvb2NvbW1lcmNlICNwYXltZW50IC53b29jb21tZXJjZS10ZXJtcy1hbmQtY29uZGl0aW9ucy13cmFwcGVyIHNwYW4ud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMtY2hlY2tib3gtdGV4dCBhOmFmdGVyIHtcbiAgYmFja2dyb3VuZDogIzAwM2E3MTtcbiAgYm90dG9tOiAwLjEyNXJlbTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMC4xMjVyZW07XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IC0xO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnMgZWFzZS1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnMgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlLW91dDtcbn1cbmJvZHkud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zLXdyYXBwZXIgc3Bhbi53b29jb21tZXJjZS10ZXJtcy1hbmQtY29uZGl0aW9ucy1jaGVja2JveC10ZXh0IGE6aG92ZXI6YWZ0ZXIsIGJvZHkud29vY29tbWVyY2UgI3BheW1lbnQgLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zLXdyYXBwZXIgc3Bhbi53b29jb21tZXJjZS10ZXJtcy1hbmQtY29uZGl0aW9ucy1jaGVja2JveC10ZXh0IGE6aG92ZXI6YWZ0ZXIsIGJvZHkud29vY29tbWVyY2UtcGFnZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCAud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMtd3JhcHBlciBzcGFuLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zLWNoZWNrYm94LXRleHQgYTpob3ZlcjphZnRlciwgYm9keS53b29jb21tZXJjZS1wYWdlICNwYXltZW50IC53b29jb21tZXJjZS10ZXJtcy1hbmQtY29uZGl0aW9ucy13cmFwcGVyIHNwYW4ud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMtY2hlY2tib3gtdGV4dCBhOmhvdmVyOmFmdGVyLCBkaXYud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zLXdyYXBwZXIgc3Bhbi53b29jb21tZXJjZS10ZXJtcy1hbmQtY29uZGl0aW9ucy1jaGVja2JveC10ZXh0IGE6aG92ZXI6YWZ0ZXIsIGRpdi53b29jb21tZXJjZSAjcGF5bWVudCAud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMtd3JhcHBlciBzcGFuLndvb2NvbW1lcmNlLXRlcm1zLWFuZC1jb25kaXRpb25zLWNoZWNrYm94LXRleHQgYTpob3ZlcjphZnRlciB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG59XG5ib2R5Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IC5mb3JtLXJvdy5wbGFjZS1vcmRlciwgYm9keS53b29jb21tZXJjZSAjcGF5bWVudCAuZm9ybS1yb3cucGxhY2Utb3JkZXIsIGJvZHkud29vY29tbWVyY2UtcGFnZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCAuZm9ybS1yb3cucGxhY2Utb3JkZXIsIGJvZHkud29vY29tbWVyY2UtcGFnZSAjcGF5bWVudCAuZm9ybS1yb3cucGxhY2Utb3JkZXIsIGRpdi53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCAuZm9ybS1yb3cucGxhY2Utb3JkZXIsIGRpdi53b29jb21tZXJjZSAjcGF5bWVudCAuZm9ybS1yb3cucGxhY2Utb3JkZXIge1xuICBiYWNrZ3JvdW5kOiAjMDAzYTcxO1xuICBib3JkZXItcmFkaXVzOiAwIDAgMC4zNzVyZW0gMC4zNzVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuYm9keS53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCBidXR0b24jcGxhY2Vfb3JkZXIsIGJvZHkud29vY29tbWVyY2UgI3BheW1lbnQgYnV0dG9uI3BsYWNlX29yZGVyLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgYnV0dG9uI3BsYWNlX29yZGVyLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgI3BheW1lbnQgYnV0dG9uI3BsYWNlX29yZGVyLCBkaXYud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgYnV0dG9uI3BsYWNlX29yZGVyLCBkaXYud29vY29tbWVyY2UgI3BheW1lbnQgYnV0dG9uI3BsYWNlX29yZGVyIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRiAhaW1wb3J0YW50O1xuICBjb2xvcjogIzAwM2E3MSAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07XG59XG5ib2R5Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IGJ1dHRvbiNwbGFjZV9vcmRlcjpob3ZlciwgYm9keS53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCBidXR0b24jcGxhY2Vfb3JkZXI6Zm9jdXMsIGJvZHkud29vY29tbWVyY2UgI3BheW1lbnQgYnV0dG9uI3BsYWNlX29yZGVyOmhvdmVyLCBib2R5Lndvb2NvbW1lcmNlICNwYXltZW50IGJ1dHRvbiNwbGFjZV9vcmRlcjpmb2N1cywgYm9keS53b29jb21tZXJjZS1wYWdlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IGJ1dHRvbiNwbGFjZV9vcmRlcjpob3ZlciwgYm9keS53b29jb21tZXJjZS1wYWdlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IGJ1dHRvbiNwbGFjZV9vcmRlcjpmb2N1cywgYm9keS53b29jb21tZXJjZS1wYWdlICNwYXltZW50IGJ1dHRvbiNwbGFjZV9vcmRlcjpob3ZlciwgYm9keS53b29jb21tZXJjZS1wYWdlICNwYXltZW50IGJ1dHRvbiNwbGFjZV9vcmRlcjpmb2N1cywgZGl2Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IGJ1dHRvbiNwbGFjZV9vcmRlcjpob3ZlciwgZGl2Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IGJ1dHRvbiNwbGFjZV9vcmRlcjpmb2N1cywgZGl2Lndvb2NvbW1lcmNlICNwYXltZW50IGJ1dHRvbiNwbGFjZV9vcmRlcjpob3ZlciwgZGl2Lndvb2NvbW1lcmNlICNwYXltZW50IGJ1dHRvbiNwbGFjZV9vcmRlcjpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICMwMDAwMDAgIWltcG9ydGFudDtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDhyZW0pIHtcbiAgYm9keS53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCBidXR0b24jcGxhY2Vfb3JkZXIsIGJvZHkud29vY29tbWVyY2UgI3BheW1lbnQgYnV0dG9uI3BsYWNlX29yZGVyLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgYnV0dG9uI3BsYWNlX29yZGVyLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgI3BheW1lbnQgYnV0dG9uI3BsYWNlX29yZGVyLCBkaXYud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgYnV0dG9uI3BsYWNlX29yZGVyLCBkaXYud29vY29tbWVyY2UgI3BheW1lbnQgYnV0dG9uI3BsYWNlX29yZGVyIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzcuNWVtKSB7XG4gIGJvZHkud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgYnV0dG9uI3BsYWNlX29yZGVyLCBib2R5Lndvb2NvbW1lcmNlICNwYXltZW50IGJ1dHRvbiNwbGFjZV9vcmRlciwgYm9keS53b29jb21tZXJjZS1wYWdlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IGJ1dHRvbiNwbGFjZV9vcmRlciwgYm9keS53b29jb21tZXJjZS1wYWdlICNwYXltZW50IGJ1dHRvbiNwbGFjZV9vcmRlciwgZGl2Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IGJ1dHRvbiNwbGFjZV9vcmRlciwgZGl2Lndvb2NvbW1lcmNlICNwYXltZW50IGJ1dHRvbiNwbGFjZV9vcmRlciB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbmJvZHkud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgLnJldHVybi10by1zaG9wLCBib2R5Lndvb2NvbW1lcmNlICNwYXltZW50IC5yZXR1cm4tdG8tc2hvcCwgYm9keS53b29jb21tZXJjZS1wYWdlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IC5yZXR1cm4tdG8tc2hvcCwgYm9keS53b29jb21tZXJjZS1wYWdlICNwYXltZW50IC5yZXR1cm4tdG8tc2hvcCwgZGl2Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IC5yZXR1cm4tdG8tc2hvcCwgZGl2Lndvb2NvbW1lcmNlICNwYXltZW50IC5yZXR1cm4tdG8tc2hvcCB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkYgIWltcG9ydGFudDtcbiAgY29sb3I6ICMwMDNhNzEgIWltcG9ydGFudDtcbiAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtO1xufVxuYm9keS53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCAucmV0dXJuLXRvLXNob3A6aG92ZXIsIGJvZHkud29vY29tbWVyY2UgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQgLnJldHVybi10by1zaG9wOmZvY3VzLCBib2R5Lndvb2NvbW1lcmNlICNwYXltZW50IC5yZXR1cm4tdG8tc2hvcDpob3ZlciwgYm9keS53b29jb21tZXJjZSAjcGF5bWVudCAucmV0dXJuLXRvLXNob3A6Zm9jdXMsIGJvZHkud29vY29tbWVyY2UtcGFnZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCAucmV0dXJuLXRvLXNob3A6aG92ZXIsIGJvZHkud29vY29tbWVyY2UtcGFnZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCAucmV0dXJuLXRvLXNob3A6Zm9jdXMsIGJvZHkud29vY29tbWVyY2UtcGFnZSAjcGF5bWVudCAucmV0dXJuLXRvLXNob3A6aG92ZXIsIGJvZHkud29vY29tbWVyY2UtcGFnZSAjcGF5bWVudCAucmV0dXJuLXRvLXNob3A6Zm9jdXMsIGRpdi53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCAucmV0dXJuLXRvLXNob3A6aG92ZXIsIGRpdi53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCAucmV0dXJuLXRvLXNob3A6Zm9jdXMsIGRpdi53b29jb21tZXJjZSAjcGF5bWVudCAucmV0dXJuLXRvLXNob3A6aG92ZXIsIGRpdi53b29jb21tZXJjZSAjcGF5bWVudCAucmV0dXJuLXRvLXNob3A6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjMDAwMDAwICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM3LjVlbSkge1xuICBib2R5Lndvb2NvbW1lcmNlIGRpdi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IC5yZXR1cm4tdG8tc2hvcCwgYm9keS53b29jb21tZXJjZSAjcGF5bWVudCAucmV0dXJuLXRvLXNob3AsIGJvZHkud29vY29tbWVyY2UtcGFnZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCAucmV0dXJuLXRvLXNob3AsIGJvZHkud29vY29tbWVyY2UtcGFnZSAjcGF5bWVudCAucmV0dXJuLXRvLXNob3AsIGRpdi53b29jb21tZXJjZSBkaXYud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCAucmV0dXJuLXRvLXNob3AsIGRpdi53b29jb21tZXJjZSAjcGF5bWVudCAucmV0dXJuLXRvLXNob3Age1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5ib2R5Lndvb2NvbW1lcmNlIGRpdiNwYXltZW50Lndvb2NvbW1lcmNlLVBheW1lbnQgdWwud29vY29tbWVyY2UtUGF5bWVudE1ldGhvZHMgKyBkaXYuZm9ybS1yb3csIGJvZHkud29vY29tbWVyY2UtcGFnZSBkaXYjcGF5bWVudC53b29jb21tZXJjZS1QYXltZW50IHVsLndvb2NvbW1lcmNlLVBheW1lbnRNZXRob2RzICsgZGl2LmZvcm0tcm93LCBkaXYud29vY29tbWVyY2UgZGl2I3BheW1lbnQud29vY29tbWVyY2UtUGF5bWVudCB1bC53b29jb21tZXJjZS1QYXltZW50TWV0aG9kcyArIGRpdi5mb3JtLXJvdyB7XG4gIGJhY2tncm91bmQ6ICMwMDNhNzE7XG59XG5ib2R5Lndvb2NvbW1lcmNlIGRpdiNwYXltZW50Lndvb2NvbW1lcmNlLVBheW1lbnQgLmFib3V0X3BheXBhbCwgYm9keS53b29jb21tZXJjZS1wYWdlIGRpdiNwYXltZW50Lndvb2NvbW1lcmNlLVBheW1lbnQgLmFib3V0X3BheXBhbCwgZGl2Lndvb2NvbW1lcmNlIGRpdiNwYXltZW50Lndvb2NvbW1lcmNlLVBheW1lbnQgLmFib3V0X3BheXBhbCB7XG4gIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTtcbn1cbmJvZHkud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8sIGJvZHkud29vY29tbWVyY2UtcGFnZSAud29vY29tbWVyY2UtaW5mbywgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzAwM2E3MTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBvcGFjaXR5OiAxO1xuICBwYWRkaW5nLWxlZnQ6IDIuNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMi44MTI1cmVtO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xufVxuYm9keS53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAqLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLndvb2NvbW1lcmNlLWluZm8gKiwgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvICoge1xuICBjb2xvcjogIzAwM2E3MTtcbn1cbmJvZHkud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm86YmVmb3JlLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLndvb2NvbW1lcmNlLWluZm86YmVmb3JlLCBkaXYud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm86YmVmb3JlIHtcbiAgY29sb3I6ICMwMDNhNzE7XG4gIGxlZnQ6IDAuOTM3NXJlbSAhaW1wb3J0YW50O1xufVxuYm9keS53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAuY2xlYXItbm90aWNlLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLndvb2NvbW1lcmNlLWluZm8gLmNsZWFyLW5vdGljZSwgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIC5jbGVhci1ub3RpY2Uge1xuICBjb2xvcjogcmVkO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LWZhbWlseTogZm9udGF3ZXNvbWU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDAuNjI1cmVtO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB6LWluZGV4OiA1MDtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDBlbSkge1xuICBib2R5Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLndvb2NvbW1lcmNlLWluZm8sIGRpdi53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBtYXJnaW46IDAgMCAxLjI1cmVtO1xuICAgIHBhZGRpbmc6IDAuNjI1cmVtIDIuODEyNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTtcbiAgfVxuICBib2R5Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvOmJlZm9yZSwgYm9keS53b29jb21tZXJjZS1wYWdlIC53b29jb21tZXJjZS1pbmZvOmJlZm9yZSwgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvOmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuYm9keS53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mby5oaWRlLW5vdGljZSwgYm9keS53b29jb21tZXJjZS1wYWdlIC53b29jb21tZXJjZS1pbmZvLmhpZGUtbm90aWNlLCBkaXYud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8uaGlkZS1ub3RpY2Uge1xuICBib3JkZXI6IDA7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAwO1xuICBvcGFjaXR5OiAwO1xuICBwYWRkaW5nOiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5ib2R5Lndvb2NvbW1lcmNlIGZvcm0uY2hlY2tvdXRfY291cG9uLndvb2NvbW1lcmNlLWZvcm0tY291cG9uLmhpZGUtbm90aWNlLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgZm9ybS5jaGVja291dF9jb3Vwb24ud29vY29tbWVyY2UtZm9ybS1jb3Vwb24uaGlkZS1ub3RpY2UsIGRpdi53b29jb21tZXJjZSBmb3JtLmNoZWNrb3V0X2NvdXBvbi53b29jb21tZXJjZS1mb3JtLWNvdXBvbi5oaWRlLW5vdGljZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1lcnJvciwgYm9keS53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbywgYm9keS53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSwgYm9keS53b29jb21tZXJjZS1wYWdlIC53b29jb21tZXJjZS1lcnJvciwgYm9keS53b29jb21tZXJjZS1wYWdlIC53b29jb21tZXJjZS1pbmZvLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UsIGRpdi53b29jb21tZXJjZSAud29vY29tbWVyY2UtZXJyb3IsIGRpdi53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbywgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIHtcbiAgYmFja2dyb3VuZDogI0YxRjNGNTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgcGFkZGluZzogMC45Mzc1cmVtIDAuOTM3NXJlbSAwLjkzNzVyZW0gMi44MTI1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1lcnJvciBhLmJ1dHRvbiwgYm9keS53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyBhLmJ1dHRvbiwgYm9keS53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSBhLmJ1dHRvbiwgYm9keS53b29jb21tZXJjZS1wYWdlIC53b29jb21tZXJjZS1lcnJvciBhLmJ1dHRvbiwgYm9keS53b29jb21tZXJjZS1wYWdlIC53b29jb21tZXJjZS1pbmZvIGEuYnV0dG9uLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgYS5idXR0b24sIGRpdi53b29jb21tZXJjZSAud29vY29tbWVyY2UtZXJyb3IgYS5idXR0b24sIGRpdi53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyBhLmJ1dHRvbiwgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIGEuYnV0dG9uIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtO1xufVxuYm9keS53b29jb21tZXJjZSAud29vY29tbWVyY2UtZXJyb3I6YmVmb3JlLCBib2R5Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvOmJlZm9yZSwgYm9keS53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZTpiZWZvcmUsIGJvZHkud29vY29tbWVyY2UtcGFnZSAud29vY29tbWVyY2UtZXJyb3I6YmVmb3JlLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLndvb2NvbW1lcmNlLWluZm86YmVmb3JlLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLndvb2NvbW1lcmNlLW1lc3NhZ2U6YmVmb3JlLCBkaXYud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWVycm9yOmJlZm9yZSwgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvOmJlZm9yZSwgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlOmJlZm9yZSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwIDAuNjI1cmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbn1cbmJvZHkud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UsIGJvZHkud29vY29tbWVyY2UtcGFnZSAud29vY29tbWVyY2UtbWVzc2FnZSwgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzQ0YTA0NDtcbn1cbmJvZHkud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgYSwgYm9keS53b29jb21tZXJjZS1wYWdlIC53b29jb21tZXJjZS1tZXNzYWdlIGEsIGRpdi53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSBhIHtcbiAgY29sb3I6ICMwMDY5M0I7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlOmJlZm9yZSwgYm9keS53b29jb21tZXJjZS1wYWdlIC53b29jb21tZXJjZS1tZXNzYWdlOmJlZm9yZSwgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6ICM0NGEwNDQ7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1lcnJvciwgYm9keS53b29jb21tZXJjZS1wYWdlIC53b29jb21tZXJjZS1lcnJvciwgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1lcnJvciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICM5MTI3MTI7XG59XG5ib2R5Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1lcnJvciBhLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLndvb2NvbW1lcmNlLWVycm9yIGEsIGRpdi53b29jb21tZXJjZSAud29vY29tbWVyY2UtZXJyb3IgYSB7XG4gIGNvbG9yOiAjOTEyNzEyO1xufVxuYm9keS53b29jb21tZXJjZSAud29vY29tbWVyY2UtZXJyb3I6YmVmb3JlLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLndvb2NvbW1lcmNlLWVycm9yOmJlZm9yZSwgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1lcnJvcjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjOTEyNzEyO1xufVxuYm9keS53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbywgYm9keS53b29jb21tZXJjZS1wYWdlIC53b29jb21tZXJjZS1pbmZvLCBkaXYud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8ge1xuICBib3JkZXItdG9wLWNvbG9yOiAjMWU3M2JlO1xufVxuYm9keS53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyBhLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLndvb2NvbW1lcmNlLWluZm8gYSwgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIGEge1xuICBjb2xvcjogIzFlNzNiZTtcbn1cbmJvZHkud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm86YmVmb3JlLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLndvb2NvbW1lcmNlLWluZm86YmVmb3JlLCBkaXYud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm86YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogIzFlNzNiZTtcbn1cblxuLndvb2NvbW1lcmNlLXBhZ2Uuc2luZ2xlLXByb2R1Y3QgaDIud29vY29tbWVyY2UtcGFnZS10aXRsZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ud29vY29tbWVyY2UtcGFnZS5zaW5nbGUtcHJvZHVjdCAud29vY29tbWVyY2UtcHJvZHVjdC1nYWxsZXJ5IC5nYWxsZXJ5IGZpZ3VyZS5nYWxsZXJ5LWl0ZW0gZmlnY2FwdGlvbi53cC1jYXB0aW9uLXRleHQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ud29vY29tbWVyY2UtZm9ybSBpbnB1dC5pbnB1dC10ZXh0IHtcbiAgYm9yZGVyOiAwLjA2MjVyZW0gc29saWQgIzAwM2E3MTtcbiAgYm9yZGVyLXJhZGl1czogMC4zNzVyZW07XG59XG4ud29vY29tbWVyY2UtZm9ybSBsYWJlbC53b29jb21tZXJjZS1mb3JtX19sYWJlbC53b29jb21tZXJjZS1mb3JtX19sYWJlbC1mb3ItY2hlY2tib3guaW5saW5lIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDAuNjI1cmVtO1xufVxuXG5kaXYud29vY29tbWVyY2Utb3JkZXIgcC53b29jb21tZXJjZS1ub3RpY2Uge1xuICBjb2xvcjogIzAwM2E3MSAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDEuNzVyZW0gIWltcG9ydGFudDtcbiAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogMS4yICFpbXBvcnRhbnQ7XG59XG5kaXYud29vY29tbWVyY2Utb3JkZXIgdWwud29vY29tbWVyY2Utb3JkZXItb3ZlcnZpZXcge1xuICBib3JkZXI6IDAuMDYyNXJlbSBzb2xpZCAjMDAzYTcxO1xuICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuZGl2Lndvb2NvbW1lcmNlLW9yZGVyIHVsLndvb2NvbW1lcmNlLW9yZGVyLW92ZXJ2aWV3IGxpIHtcbiAgYm9yZGVyLXJpZ2h0OiAwLjA2MjVyZW0gc29saWQgIzAwM2E3MTtcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMC45Mzc1cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAyNSU7XG59XG5kaXYud29vY29tbWVyY2Utb3JkZXIgdWwud29vY29tbWVyY2Utb3JkZXItb3ZlcnZpZXcgbGkgc3Ryb25nIHtcbiAgZm9udC1zaXplOiAxcmVtICFpbXBvcnRhbnQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjIgIWltcG9ydGFudDtcbiAgbWFyZ2luLXRvcDogMC4zMTI1cmVtO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMGVtKSB7XG4gIGRpdi53b29jb21tZXJjZS1vcmRlciB1bC53b29jb21tZXJjZS1vcmRlci1vdmVydmlldyBsaSBzdHJvbmcge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW0gIWltcG9ydGFudDtcbiAgfVxufVxuZGl2Lndvb2NvbW1lcmNlLW9yZGVyIC53b29jb21tZXJjZS1vcmRlci1kZXRhaWxzIGgyIHtcbiAgZm9udC1zaXplOiAxLjc1cmVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDAuMzEyNXJlbTtcbn1cblxuLnNlbGVjdDItZHJvcGRvd24ge1xuICBib3JkZXItY29sb3I6ICMwMDNhNzE7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkW2FyaWEtc2VsZWN0ZWRdLCAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZFtkYXRhLXNlbGVjdGVkXSB7XG4gIGJhY2tncm91bmQ6ICMwMDNhNzE7XG59XG5cbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbm9uZTtcbn1cbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB1bCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwIDAgMi41cmVtIDA7XG59XG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gdWwgbGkge1xuICB3aWR0aDogMzMuMzMzMyU7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDMwZW0pIHtcbiAgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsIGxpIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gdWwgbGkgYSB7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBiYWNrZ3JvdW5kOiAjOTEyNzEyO1xuICBib3JkZXItcmFkaXVzOiAyLjE4NzVyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LWZhbWlseTogXCJCYXJsb3cgU2VtaSBDb25kZW5zZWRcIiwgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luOiAwIGF1dG8gMC4yNXJlbTtcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAwLjI1cmVtKTtcbiAgcGFkZGluZzogMC4yNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnMgZWFzZS1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnMgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlLW91dDtcbn1cbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB1bCBsaSBhOmhvdmVyLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gdWwgbGkgYTpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICMwMDAwMDA7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDMwZW0pIHtcbiAgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsIGxpIGEge1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xuICB9XG59XG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQge1xuICBmbG9hdDogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG59XG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgZm9ybSAuZm9ybS1yb3cge1xuICBwYWRkaW5nOiAwO1xufVxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IGZvcm0gaW5wdXQuaW5wdXQtdGV4dCB7XG4gIGJvcmRlcjogMC4wNjI1cmVtIHNvbGlkICMwMDNhNzE7XG4gIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtO1xufVxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IGZvcm0gZmllbGRzZXQgbGVnZW5kIHtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMS4yNXJlbSAwIDAgMDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGVfcmVzcG9uc2l2ZSB0ci53b29jb21tZXJjZS1jYXJ0LWZvcm1fX2NhcnQtaXRlbS5jYXJ0X2l0ZW0sIC53b29jb21tZXJjZS1wYWdlIHRhYmxlLnNob3BfdGFibGVfcmVzcG9uc2l2ZSB0ci53b29jb21tZXJjZS1jYXJ0LWZvcm1fX2NhcnQtaXRlbS5jYXJ0X2l0ZW0ge1xuICAgIGJvcmRlci10b3A6IDAuMzEyNXJlbSBzb2xpZCAjMDAzYTcxO1xuICAgIHBhZGRpbmc6IDAuOTM3NXJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGVfcmVzcG9uc2l2ZSB0ci53b29jb21tZXJjZS1jYXJ0LWZvcm1fX2NhcnQtaXRlbS5jYXJ0X2l0ZW06Zmlyc3QtY2hpbGQsIC53b29jb21tZXJjZS1wYWdlIHRhYmxlLnNob3BfdGFibGVfcmVzcG9uc2l2ZSB0ci53b29jb21tZXJjZS1jYXJ0LWZvcm1fX2NhcnQtaXRlbS5jYXJ0X2l0ZW06Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbiAgLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGVfcmVzcG9uc2l2ZSB0ci53b29jb21tZXJjZS1jYXJ0LWZvcm1fX2NhcnQtaXRlbS5jYXJ0X2l0ZW06bnRoLWNoaWxkKDJuKSwgLndvb2NvbW1lcmNlLXBhZ2UgdGFibGUuc2hvcF90YWJsZV9yZXNwb25zaXZlIHRyLndvb2NvbW1lcmNlLWNhcnQtZm9ybV9fY2FydC1pdGVtLmNhcnRfaXRlbTpudGgtY2hpbGQoMm4pIHtcbiAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICB9XG4gIC53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlX3Jlc3BvbnNpdmUgdHIud29vY29tbWVyY2UtY2FydC1mb3JtX19jYXJ0LWl0ZW0uY2FydF9pdGVtOm50aC1jaGlsZCgybikgdGQsIC53b29jb21tZXJjZS1wYWdlIHRhYmxlLnNob3BfdGFibGVfcmVzcG9uc2l2ZSB0ci53b29jb21tZXJjZS1jYXJ0LWZvcm1fX2NhcnQtaXRlbS5jYXJ0X2l0ZW06bnRoLWNoaWxkKDJuKSB0ZCB7XG4gICAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgfVxuICAud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZV9yZXNwb25zaXZlIHRyLndvb2NvbW1lcmNlLWNhcnQtZm9ybV9fY2FydC1pdGVtLmNhcnRfaXRlbTpudGgtY2hpbGQoMm4pIHRkLnByb2R1Y3QtcHJpY2UsIC53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlX3Jlc3BvbnNpdmUgdHIud29vY29tbWVyY2UtY2FydC1mb3JtX19jYXJ0LWl0ZW0uY2FydF9pdGVtOm50aC1jaGlsZCgybikgdGQucHJvZHVjdC1zdWJ0b3RhbCwgLndvb2NvbW1lcmNlLXBhZ2UgdGFibGUuc2hvcF90YWJsZV9yZXNwb25zaXZlIHRyLndvb2NvbW1lcmNlLWNhcnQtZm9ybV9fY2FydC1pdGVtLmNhcnRfaXRlbTpudGgtY2hpbGQoMm4pIHRkLnByb2R1Y3QtcHJpY2UsIC53b29jb21tZXJjZS1wYWdlIHRhYmxlLnNob3BfdGFibGVfcmVzcG9uc2l2ZSB0ci53b29jb21tZXJjZS1jYXJ0LWZvcm1fX2NhcnQtaXRlbS5jYXJ0X2l0ZW06bnRoLWNoaWxkKDJuKSB0ZC5wcm9kdWN0LXN1YnRvdGFsIHtcbiAgICBiYWNrZ3JvdW5kOiAjRjFGM0Y1O1xuICB9XG4gIC53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlX3Jlc3BvbnNpdmUgdHIud29vY29tbWVyY2UtY2FydC1mb3JtX19jYXJ0LWl0ZW0uY2FydF9pdGVtIHRkLCAud29vY29tbWVyY2UtcGFnZSB0YWJsZS5zaG9wX3RhYmxlX3Jlc3BvbnNpdmUgdHIud29vY29tbWVyY2UtY2FydC1mb3JtX19jYXJ0LWl0ZW0uY2FydF9pdGVtIHRkIHtcbiAgICBib3JkZXI6IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbiAgLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGVfcmVzcG9uc2l2ZSB0ci53b29jb21tZXJjZS1jYXJ0LWZvcm1fX2NhcnQtaXRlbS5jYXJ0X2l0ZW0gdGQgLnF1YW50aXR5LCAud29vY29tbWVyY2UtcGFnZSB0YWJsZS5zaG9wX3RhYmxlX3Jlc3BvbnNpdmUgdHIud29vY29tbWVyY2UtY2FydC1mb3JtX19jYXJ0LWl0ZW0uY2FydF9pdGVtIHRkIC5xdWFudGl0eSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW46IDAgYXV0byAwLjMxMjVyZW07XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbiAgLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGVfcmVzcG9uc2l2ZSB0ci53b29jb21tZXJjZS1jYXJ0LWZvcm1fX2NhcnQtaXRlbS5jYXJ0X2l0ZW0gdGQ6YmVmb3JlLCAud29vY29tbWVyY2UtcGFnZSB0YWJsZS5zaG9wX3RhYmxlX3Jlc3BvbnNpdmUgdHIud29vY29tbWVyY2UtY2FydC1mb3JtX19jYXJ0LWl0ZW0uY2FydF9pdGVtIHRkOmJlZm9yZSB7XG4gICAgY29udGVudDogYXR0cihkYXRhLXRpdGxlKSAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZV9yZXNwb25zaXZlIHRyLndvb2NvbW1lcmNlLWNhcnQtZm9ybV9fY2FydC1pdGVtLmNhcnRfaXRlbSB0ZC5wcm9kdWN0LW5hbWUsIC53b29jb21tZXJjZS1wYWdlIHRhYmxlLnNob3BfdGFibGVfcmVzcG9uc2l2ZSB0ci53b29jb21tZXJjZS1jYXJ0LWZvcm1fX2NhcnQtaXRlbS5jYXJ0X2l0ZW0gdGQucHJvZHVjdC1uYW1lIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZV9yZXNwb25zaXZlIHRyLndvb2NvbW1lcmNlLWNhcnQtZm9ybV9fY2FydC1pdGVtLmNhcnRfaXRlbSB0ZC5wcm9kdWN0LW5hbWUgc3Bhbi5wcm9kdWN0LXRpdGxlLCAud29vY29tbWVyY2UtcGFnZSB0YWJsZS5zaG9wX3RhYmxlX3Jlc3BvbnNpdmUgdHIud29vY29tbWVyY2UtY2FydC1mb3JtX19jYXJ0LWl0ZW0uY2FydF9pdGVtIHRkLnByb2R1Y3QtbmFtZSBzcGFuLnByb2R1Y3QtdGl0bGUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICB9XG4gIC53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlX3Jlc3BvbnNpdmUgdHIud29vY29tbWVyY2UtY2FydC1mb3JtX19jYXJ0LWl0ZW0uY2FydF9pdGVtIHRkLnByb2R1Y3QtbmFtZSBzcGFuLnByb2R1Y3QtdGh1bWJuYWlsLCAud29vY29tbWVyY2UtcGFnZSB0YWJsZS5zaG9wX3RhYmxlX3Jlc3BvbnNpdmUgdHIud29vY29tbWVyY2UtY2FydC1mb3JtX19jYXJ0LWl0ZW0uY2FydF9pdGVtIHRkLnByb2R1Y3QtbmFtZSBzcGFuLnByb2R1Y3QtdGh1bWJuYWlsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbm9uZTtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlX3Jlc3BvbnNpdmUgdHIud29vY29tbWVyY2UtY2FydC1mb3JtX19jYXJ0LWl0ZW0uY2FydF9pdGVtIHRkLnByb2R1Y3QtbmFtZSBzcGFuLnByb2R1Y3QtdGh1bWJuYWlsIGEsIC53b29jb21tZXJjZS1wYWdlIHRhYmxlLnNob3BfdGFibGVfcmVzcG9uc2l2ZSB0ci53b29jb21tZXJjZS1jYXJ0LWZvcm1fX2NhcnQtaXRlbS5jYXJ0X2l0ZW0gdGQucHJvZHVjdC1uYW1lIHNwYW4ucHJvZHVjdC10aHVtYm5haWwgYSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGVfcmVzcG9uc2l2ZSB0ci53b29jb21tZXJjZS1jYXJ0LWZvcm1fX2NhcnQtaXRlbS5jYXJ0X2l0ZW0gdGQucHJvZHVjdC1uYW1lIHNwYW4ucHJvZHVjdC10aHVtYm5haWwgaW1nLCAud29vY29tbWVyY2UtcGFnZSB0YWJsZS5zaG9wX3RhYmxlX3Jlc3BvbnNpdmUgdHIud29vY29tbWVyY2UtY2FydC1mb3JtX19jYXJ0LWl0ZW0uY2FydF9pdGVtIHRkLnByb2R1Y3QtbmFtZSBzcGFuLnByb2R1Y3QtdGh1bWJuYWlsIGltZyB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTIuNXJlbTtcbiAgfVxuICAud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZV9yZXNwb25zaXZlIHRyLndvb2NvbW1lcmNlLWNhcnQtZm9ybV9fY2FydC1pdGVtLmNhcnRfaXRlbSB0ZC5wcm9kdWN0LXJlbW92ZSwgLndvb2NvbW1lcmNlLXBhZ2UgdGFibGUuc2hvcF90YWJsZV9yZXNwb25zaXZlIHRyLndvb2NvbW1lcmNlLWNhcnQtZm9ybV9fY2FydC1pdGVtLmNhcnRfaXRlbSB0ZC5wcm9kdWN0LXJlbW92ZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwLjYyNXJlbTtcbiAgICB0b3A6IDAuMzEyNXJlbTtcbiAgfVxuICAud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZV9yZXNwb25zaXZlIHRyLndvb2NvbW1lcmNlLWNhcnQtZm9ybV9fY2FydC1pdGVtLmNhcnRfaXRlbSB0ZC5wcm9kdWN0LXByaWNlLCAud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZV9yZXNwb25zaXZlIHRyLndvb2NvbW1lcmNlLWNhcnQtZm9ybV9fY2FydC1pdGVtLmNhcnRfaXRlbSB0ZC5wcm9kdWN0LXN1YnRvdGFsLCAud29vY29tbWVyY2UtcGFnZSB0YWJsZS5zaG9wX3RhYmxlX3Jlc3BvbnNpdmUgdHIud29vY29tbWVyY2UtY2FydC1mb3JtX19jYXJ0LWl0ZW0uY2FydF9pdGVtIHRkLnByb2R1Y3QtcHJpY2UsIC53b29jb21tZXJjZS1wYWdlIHRhYmxlLnNob3BfdGFibGVfcmVzcG9uc2l2ZSB0ci53b29jb21tZXJjZS1jYXJ0LWZvcm1fX2NhcnQtaXRlbS5jYXJ0X2l0ZW0gdGQucHJvZHVjdC1zdWJ0b3RhbCB7XG4gICAgYmFja2dyb3VuZDogI0YxRjNGNTtcbiAgfVxufVxuYm9keSB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG59XG5cbjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjMDAxNzE3ICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMXJlbSAhaW1wb3J0YW50O1xuICBmb250LWZhbWlseTogXCJCYXJsb3cgU2VtaSBDb25kZW5zZWRcIiwgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZiAhaW1wb3J0YW50O1xufVxuXG46Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzAwMTcxNyAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDFyZW0gIWltcG9ydGFudDtcbiAgZm9udC1mYW1pbHk6IFwiQmFybG93IFNlbWkgQ29uZGVuc2VkXCIsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcbn1cblxuOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjMDAxNzE3ICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMXJlbSAhaW1wb3J0YW50O1xuICBmb250LWZhbWlseTogXCJCYXJsb3cgU2VtaSBDb25kZW5zZWRcIiwgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZiAhaW1wb3J0YW50O1xufVxuXG46LW1vei1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjMDAxNzE3ICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMXJlbSAhaW1wb3J0YW50O1xuICBmb250LWZhbWlseTogXCJCYXJsb3cgU2VtaSBDb25kZW5zZWRcIiwgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZiAhaW1wb3J0YW50O1xufVxuXG46OnNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQ6ICMwMDY5M0I7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG46Oi1tb3otc2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogIzAwNjkzQjtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5cbi5tYWluLWNvbnRlbnQgLmVudHJ5LWNvbnRlbnQgYmxvY2txdW90ZSB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjMDA2OTNCO1xuICBib3JkZXItbGVmdC13aWR0aDogMC4yNXJlbTtcbiAgbWFyZ2luOiAycmVtIDA7XG4gIHBhZGRpbmc6IDAuNXJlbSAwLjkzNzVyZW07XG59XG4ubWFpbi1jb250ZW50IC5lbnRyeS1jb250ZW50IGJsb2NrcXVvdGUgcCB7XG4gIGZvbnQtZmFtaWx5OiBcIkJhcmxvdyBTZW1pIENvbmRlbnNlZFwiLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuODc1cmVtO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBtYXJnaW46IDA7XG59XG5cbmJvZHkucGFnZS1pZC0zMCB7XG4gIGJhY2tncm91bmQ6ICNGMUYzRjU7XG59XG5cbmJvZHk6bm90KC5ob21lKSAubWFpbi13cmFwIC5tYWluLWNvbnRlbnQge1xuICBtYXJnaW4tYm90dG9tOiA1cmVtO1xufVxuYm9keTpub3QoLmhvbWUpIC5tYWluLXdyYXAgLm1haW4tY29udGVudCAud3BiX3dyYXBwZXIgLndwYl90ZXh0X2NvbHVtbjpsYXN0LW9mLXR5cGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fYm9keSBsaS5nZmllbGQuZmxvYXRMYWJlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5nZm9ybV93cmFwcGVyIC5nZm9ybV9ib2R5IGxpLmdmaWVsZC5mbG9hdExhYmVsIGxhYmVsIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGVmdDogMS4zMTI1cmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMS4zMTI1cmVtO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xufVxuLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2JvZHkgbGkuZ2ZpZWxkLmZsb2F0TGFiZWwgbGFiZWxbZGF0YS1hdHRyPWFjdGl2ZV0ge1xuICBmb250LXNpemU6IDgwJTtcbiAgbGVmdDogMDtcbiAgdG9wOiAtMS40Mzc1cmVtO1xufVxuXG5oZWFkZXIjbWFzdGhlYWQge1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0ZW0pIHtcbiAgaGVhZGVyI21hc3RoZWFkICNoZWFkZXItaW5uZXIge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuaGVhZGVyI21hc3RoZWFkICNoZWFkZXItaW5uZXIgbmF2LnNpdGUtbmF2aWdhdGlvbi50b3AtYmFyIC5tZW51IC5kcm9wZG93biB7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xufVxuaGVhZGVyI21hc3RoZWFkICNoZWFkZXItaW5uZXIgbmF2LnNpdGUtbmF2aWdhdGlvbi50b3AtYmFyIC5tZW51IC5kcm9wZG93bi5maXJzdC1zdWIge1xuICBib3gtc2hhZG93OiAwIDAuMjVyZW0gMC41cmVtIC0wLjEyNXJlbSByZ2JhKDAsIDAsIDAsIDAuMjUpO1xufVxuaGVhZGVyI21hc3RoZWFkICNoZWFkZXItaW5uZXIgbmF2LnNpdGUtbmF2aWdhdGlvbi50b3AtYmFyIC5tZW51IC5kcm9wZG93bi5maXJzdC1zdWIgLmRyb3Bkb3duIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IGF1dG87XG59XG5oZWFkZXIjbWFzdGhlYWQgI2hlYWRlci1pbm5lciBuYXYuc2l0ZS1uYXZpZ2F0aW9uLnRvcC1iYXIgLm1lbnUgLmRyb3Bkb3duLmZpcnN0LXN1YiAuZHJvcGRvd24gbGkgYSB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5oZWFkZXIjbWFzdGhlYWQgI2hlYWRlci1pbm5lciBuYXYuc2l0ZS1uYXZpZ2F0aW9uLnRvcC1iYXIgLm1lbnUgLmRyb3Bkb3duLmZpcnN0LXN1YiAuZHJvcGRvd24gbGkgYTpiZWZvcmUge1xuICBjb250ZW50OiBcIuKXplwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMS4wNjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMC4xMjVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0ZW0pIHtcbiAgaGVhZGVyI21hc3RoZWFkICNoZWFkZXItaW5uZXIgbmF2LnNpdGUtbmF2aWdhdGlvbi50b3AtYmFyIC50b3AtYmFyLWxlZnQgLnNpdGUtZGVza3RvcC10aXRsZS50b3AtYmFyLXRpdGxlIC5sb2dvLXdyYXBwZXIuaGlkZS1mb3Itc21hbGwtb25seSBhLmN1c3RvbS1sb2dvLWxpbmsge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgaGVhZGVyI21hc3RoZWFkICNoZWFkZXItaW5uZXIgbmF2LnNpdGUtbmF2aWdhdGlvbi50b3AtYmFyIC50b3AtYmFyLWxlZnQgLnNpdGUtZGVza3RvcC10aXRsZS50b3AtYmFyLXRpdGxlIC5sb2dvLXdyYXBwZXIuaGlkZS1mb3Itc21hbGwtb25seSBhLmN1c3RvbS1sb2dvLWxpbmsgaW1nIHtcbiAgICBtYXJnaW46IDAuNjI1cmVtIGF1dG87XG4gIH1cbn1cbmhlYWRlciNtYXN0aGVhZCAjaGVhZGVyLWlubmVyIG5hdi5zaXRlLW5hdmlnYXRpb24udG9wLWJhciAudG9wLWJhci1yaWdodCB7XG4gIGhlaWdodDogNy4zNzVyZW07XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0ZW0pIHtcbiAgaGVhZGVyI21hc3RoZWFkICNoZWFkZXItaW5uZXIgbmF2LnNpdGUtbmF2aWdhdGlvbi50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxufVxuaGVhZGVyI21hc3RoZWFkICNoZWFkZXItaW5uZXIgbmF2LnNpdGUtbmF2aWdhdGlvbi50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IC50b3AtYmFyLXNvY2lhbCB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogNy4zNzVyZW07XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0ZW0pIHtcbiAgaGVhZGVyI21hc3RoZWFkICNoZWFkZXItaW5uZXIgbmF2LnNpdGUtbmF2aWdhdGlvbi50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IC50b3AtYmFyLXNvY2lhbCB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG4gICAgb3JkZXI6IDE7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cbmhlYWRlciNtYXN0aGVhZCAjaGVhZGVyLWlubmVyIG5hdi5zaXRlLW5hdmlnYXRpb24udG9wLWJhciAudG9wLWJhci1yaWdodCAudG9wLWJhci1zb2NpYWwgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuaGVhZGVyI21hc3RoZWFkICNoZWFkZXItaW5uZXIgbmF2LnNpdGUtbmF2aWdhdGlvbi50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IC50b3AtYmFyLXNvY2lhbCB1bC5zb2NpYWwtbWVkaWEtd3JhcHBlciBsaSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogNy4zNzVyZW07XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0ZW0pIHtcbiAgaGVhZGVyI21hc3RoZWFkICNoZWFkZXItaW5uZXIgbmF2LnNpdGUtbmF2aWdhdGlvbi50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IC50b3AtYmFyLXNvY2lhbCB1bC5zb2NpYWwtbWVkaWEtd3JhcHBlciBsaSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5oZWFkZXIjbWFzdGhlYWQgI2hlYWRlci1pbm5lciBuYXYuc2l0ZS1uYXZpZ2F0aW9uLnRvcC1iYXIgLnRvcC1iYXItcmlnaHQgLnRvcC1iYXItc29jaWFsIHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIGxpOm5vdCguY3VzdG9tLWJ1dHRvbik6bm90KC5pbmxpbmUtc29jaWFsLXNlYXJjaC13cmFwcGVyKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5oZWFkZXIjbWFzdGhlYWQgI2hlYWRlci1pbm5lciBuYXYuc2l0ZS1uYXZpZ2F0aW9uLnRvcC1iYXIgLnRvcC1iYXItcmlnaHQgLnRvcC1iYXItc29jaWFsIHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIGxpLmlubGluZS1zb2NpYWwtc2VhcmNoLXdyYXBwZXIgYnV0dG9uLnNlYXJjaC10b2dnbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogNy4zNzVyZW07XG59XG5oZWFkZXIjbWFzdGhlYWQgI2hlYWRlci1pbm5lciBuYXYuc2l0ZS1uYXZpZ2F0aW9uLnRvcC1iYXIgLnRvcC1iYXItcmlnaHQgLnRvcC1iYXItc29jaWFsIHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIGxpLmlubGluZS1zb2NpYWwtc2VhcmNoLXdyYXBwZXIgYnV0dG9uLnNlYXJjaC10b2dnbGU6YmVmb3JlLCBoZWFkZXIjbWFzdGhlYWQgI2hlYWRlci1pbm5lciBuYXYuc2l0ZS1uYXZpZ2F0aW9uLnRvcC1iYXIgLnRvcC1iYXItcmlnaHQgLnRvcC1iYXItc29jaWFsIHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIGxpLmlubGluZS1zb2NpYWwtc2VhcmNoLXdyYXBwZXIgYnV0dG9uLnNlYXJjaC10b2dnbGU6YWN0aXZlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6ICNGRkFGMjY7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDAuNXJlbTtcbiAgbGVmdDogMDtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgd2lkdGg6IDA7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0ZW0pIHtcbiAgaGVhZGVyI21hc3RoZWFkICNoZWFkZXItaW5uZXIgbmF2LnNpdGUtbmF2aWdhdGlvbi50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IC50b3AtYmFyLXNvY2lhbCB1bC5zb2NpYWwtbWVkaWEtd3JhcHBlciBsaS5pbmxpbmUtc29jaWFsLXNlYXJjaC13cmFwcGVyIGJ1dHRvbi5zZWFyY2gtdG9nZ2xlIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cbmhlYWRlciNtYXN0aGVhZCAjaGVhZGVyLWlubmVyIG5hdi5zaXRlLW5hdmlnYXRpb24udG9wLWJhciAudG9wLWJhci1yaWdodCAudG9wLWJhci1zb2NpYWwgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkuaW5saW5lLXNvY2lhbC1zZWFyY2gtd3JhcHBlciBidXR0b24uc2VhcmNoLXRvZ2dsZTpob3ZlcjpiZWZvcmUsIGhlYWRlciNtYXN0aGVhZCAjaGVhZGVyLWlubmVyIG5hdi5zaXRlLW5hdmlnYXRpb24udG9wLWJhciAudG9wLWJhci1yaWdodCAudG9wLWJhci1zb2NpYWwgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkuaW5saW5lLXNvY2lhbC1zZWFyY2gtd3JhcHBlciBidXR0b24uc2VhcmNoLXRvZ2dsZTpmb2N1czpiZWZvcmUsIGhlYWRlciNtYXN0aGVhZCAjaGVhZGVyLWlubmVyIG5hdi5zaXRlLW5hdmlnYXRpb24udG9wLWJhciAudG9wLWJhci1yaWdodCAudG9wLWJhci1zb2NpYWwgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkuaW5saW5lLXNvY2lhbC1zZWFyY2gtd3JhcHBlciBidXR0b24uc2VhcmNoLXRvZ2dsZS5zZWFyY2gtYWN0aXZlOmJlZm9yZSB7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NGVtKSB7XG4gIGhlYWRlciNtYXN0aGVhZCAjaGVhZGVyLWlubmVyIG5hdi5zaXRlLW5hdmlnYXRpb24udG9wLWJhciAudG9wLWJhci1yaWdodCAudG9wLWJhci1zb2NpYWwgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkuaW5saW5lLXNvY2lhbC1zZWFyY2gtd3JhcHBlciBidXR0b24uc2VhcmNoLXRvZ2dsZTpob3ZlcjpiZWZvcmUsIGhlYWRlciNtYXN0aGVhZCAjaGVhZGVyLWlubmVyIG5hdi5zaXRlLW5hdmlnYXRpb24udG9wLWJhciAudG9wLWJhci1yaWdodCAudG9wLWJhci1zb2NpYWwgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkuaW5saW5lLXNvY2lhbC1zZWFyY2gtd3JhcHBlciBidXR0b24uc2VhcmNoLXRvZ2dsZTpmb2N1czpiZWZvcmUsIGhlYWRlciNtYXN0aGVhZCAjaGVhZGVyLWlubmVyIG5hdi5zaXRlLW5hdmlnYXRpb24udG9wLWJhciAudG9wLWJhci1yaWdodCAudG9wLWJhci1zb2NpYWwgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkuaW5saW5lLXNvY2lhbC1zZWFyY2gtd3JhcHBlciBidXR0b24uc2VhcmNoLXRvZ2dsZS5zZWFyY2gtYWN0aXZlOmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NGVtKSB7XG4gIGhlYWRlciNtYXN0aGVhZCAjaGVhZGVyLWlubmVyIG5hdi5zaXRlLW5hdmlnYXRpb24udG9wLWJhciAudG9wLWJhci1yaWdodCAudG9wLWJhci1zb2NpYWwgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkuaW5saW5lLXNvY2lhbC1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm0ge1xuICAgIG1hcmdpbi10b3A6IDEuODc1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbn1cbmhlYWRlciNtYXN0aGVhZCAjaGVhZGVyLWlubmVyIG5hdi5zaXRlLW5hdmlnYXRpb24udG9wLWJhciAudG9wLWJhci1yaWdodCAudG9wLWJhci1zb2NpYWwgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkuaW5saW5lLXNvY2lhbC1zZWFyY2gtd3JhcHBlciBmb3JtI3NlYXJjaGZvcm0uc2hvdyB7XG4gIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjRlbSkge1xuICBoZWFkZXIjbWFzdGhlYWQgI2hlYWRlci1pbm5lciBuYXYuc2l0ZS1uYXZpZ2F0aW9uLnRvcC1iYXIgLnRvcC1iYXItcmlnaHQgLnRvcC1iYXItc29jaWFsIHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIGxpLmlubGluZS1zb2NpYWwtc2VhcmNoLXdyYXBwZXIgZm9ybSNzZWFyY2hmb3JtLnNob3cge1xuICAgIG1hcmdpbi10b3A6IDAuNjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbn1cbmhlYWRlciNtYXN0aGVhZCAjaGVhZGVyLWlubmVyIG5hdi5zaXRlLW5hdmlnYXRpb24udG9wLWJhciAudG9wLWJhci1yaWdodCAudG9wLWJhci1zb2NpYWwgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkuY3VzdG9tLWJ1dHRvbiBhIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTVyZW07XG4gIHBhZGRpbmc6IDAgMS4zNzVyZW07XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0ZW0pIHtcbiAgaGVhZGVyI21hc3RoZWFkICNoZWFkZXItaW5uZXIgbmF2LnNpdGUtbmF2aWdhdGlvbi50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IHVsLmRlc2t0b3AtbWVudSB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1heC13aWR0aDogNDMuNzVyZW07XG4gICAgb3JkZXI6IDI7XG4gIH1cbn1cbmhlYWRlciNtYXN0aGVhZCAjaGVhZGVyLWlubmVyIG5hdi5zaXRlLW5hdmlnYXRpb24udG9wLWJhciAudG9wLWJhci1yaWdodCB1bC5kZXNrdG9wLW1lbnUgPiBsaSA+IGEge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IDcuMzc1cmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4xNXJlbTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzVlbSkge1xuICBoZWFkZXIjbWFzdGhlYWQgI2hlYWRlci1pbm5lciBuYXYuc2l0ZS1uYXZpZ2F0aW9uLnRvcC1iYXIgLnRvcC1iYXItcmlnaHQgdWwuZGVza3RvcC1tZW51ID4gbGkgPiBhIHtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wMTVyZW07XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjRlbSkge1xuICBoZWFkZXIjbWFzdGhlYWQgI2hlYWRlci1pbm5lciBuYXYuc2l0ZS1uYXZpZ2F0aW9uLnRvcC1iYXIgLnRvcC1iYXItcmlnaHQgdWwuZGVza3RvcC1tZW51ID4gbGkgPiBhIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZzogMC4zNzVyZW0gMC45Mzc1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLyoqKiogSU5URVJOQUwgUEFHRSBTVFlMRVMgKioqKi9cbi5jb250YWN0LWluZm8td3JhcHBlciAuY29udGFjdC1pbmZvLWNvbC0yIHtcbiAgbWFyZ2luLXRvcDogLTZyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTA7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU2LjI1ZW0pIHtcbiAgLmNvbnRhY3QtaW5mby13cmFwcGVyIC5jb250YWN0LWluZm8tY29sLTIge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLmNvbnRhY3QtaW5mby1jb2x1bW5zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2OC43NWVtKSB7XG4gIC5jb250YWN0LWluZm8tY29sdW1ucyAudmNfY29sLXNtLTYge1xuICAgIG1hcmdpbi1ib3R0b206IDMuNzVyZW07XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmNvbnRhY3QtaW5mby1jb2x1bW5zIC52Y19jb2wtc20tNjpsYXN0LW9mLXR5cGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5jb250YWN0LWluZm8tY29sdW1ucyAudmNfY29sLXNtLTYge1xuICAgIG1hcmdpbi1ib3R0b206IDMuNzVyZW07XG4gICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICB9XG4gIC5jb250YWN0LWluZm8tY29sdW1ucyAudmNfY29sLXNtLTY6bGFzdC1vZi10eXBlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzcuNWVtKSB7XG4gIC5jb250YWN0LWluZm8tY29sdW1ucyAudmNfY29sLXNtLTYge1xuICAgIG1hcmdpbi1ib3R0b206IDMuNzVyZW07XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5wLmNvbnRhY3QtZWxlbWVudCB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xufVxucC5jb250YWN0LWVsZW1lbnQgc3Bhbi5jb250YWN0LWljb24ge1xuICBiYWNrZ3JvdW5kOiAjMDAxNzE3O1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgaGVpZ2h0OiAycmVtO1xuICBsaW5lLWhlaWdodDogMnJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAxLjU2MjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDJyZW07XG59XG5wLmNvbnRhY3QtZWxlbWVudCBzcGFuLmNvbnRhY3QtaWNvbi5jb250YWN0LWRhc2gge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBoZWlnaHQ6IDAuMTI1cmVtO1xufVxucC5jb250YWN0LWVsZW1lbnQgc3Bhbi5jb250YWN0LXRleHQge1xuICBmb250LXNpemU6IDFyZW07XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSA1LjU2MjVyZW0pO1xufVxucC5jb250YWN0LWVsZW1lbnQgc3Bhbi5jb250YWN0LXRleHQgc3Ryb25nIHtcbiAgZm9udC1mYW1pbHk6IFwiQmFybG93IFNlbWkgQ29uZGVuc2VkXCIsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG59XG5wLmNvbnRhY3QtZWxlbWVudCBzcGFuLmNvbnRhY3QtdGV4dCBhIHtcbiAgY29sb3I6ICMwMDE3MTc7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbnAuY29udGFjdC1lbGVtZW50IHNwYW4uY29udGFjdC10ZXh0IGE6aG92ZXIsIHAuY29udGFjdC1lbGVtZW50IHNwYW4uY29udGFjdC10ZXh0IGE6Zm9jdXMge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbnAuY29udGFjdC1lbGVtZW50IHNwYW4uY29udGFjdC10ZXh0IGFbaHJlZio9bWFpbHRvXSB7XG4gIHdoaXRlLXNwYWNlOiBwcmV3cmFwO1xufVxuXG4uY29udGFjdC1tYXAtd3JhcHBlciAud3BiX3dyYXBwZXIge1xuICBtYXgtaGVpZ2h0OiA0Ny4yNXJlbTtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuLmNvbnRhY3QtbWFwLXdyYXBwZXIgLndwYl9tYXBfd3JhcGVyIHtcbiAgZmlsdGVyOiBncmF5c2NhbGUoMTAwJSk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtZmlsdGVyOiBncmF5c2NhbGUoMTAwJSk7XG4gIC1tb3otZmlsdGVyOiBncmF5c2NhbGUoMTAwJSk7XG4gIC1tcy1maWx0ZXI6IGdyYXlzY2FsZSgxMDAlKTtcbiAgLW8tZmlsdGVyOiBncmF5c2NhbGUoMTAwJSk7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc1ZW0pIHtcbiAgLmNvbnRhY3QtbWFwLXdyYXBwZXIgLndwYl9tYXBfd3JhcGVyIHtcbiAgICBoZWlnaHQ6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDM5LjM3JTtcbiAgfVxuICAuY29udGFjdC1tYXAtd3JhcHBlciAud3BiX21hcF93cmFwZXIgaWZyYW1lIHtcbiAgICBib3R0b206IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLmNvbnRhY3QtbWFwLXdyYXBwZXIgLndwYl9tYXBfd3JhcGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNzUlO1xuICB9XG59XG4uY29udGFjdC1tYXAtd3JhcHBlciAud3BiX21hcF93cmFwZXI6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICBjb250ZW50OiBcIlwiO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5zaW5nbGUtdHJpYmVfZXZlbnRzICN0cmliZS1ldmVudHMtY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG4uc2luZ2xlLXRyaWJlX2V2ZW50cyAjdHJpYmUtZXZlbnRzLWNvbnRlbnQgLnRyaWJlLWV2ZW50cy1iYWNrIHtcbiAgbWFyZ2luLWJvdHRvbTogMi41cmVtO1xufVxuLnNpbmdsZS10cmliZV9ldmVudHMgI3RyaWJlLWV2ZW50cy1jb250ZW50IC50cmliZS1ldmVudHMtYmFjayBhIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGxldHRlci1zcGFjaW5nOiAwLjE1cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xufVxuLnNpbmdsZS10cmliZV9ldmVudHMgI3RyaWJlLWV2ZW50cy1jb250ZW50IC50cmliZS1ldmVudHMtYmFjayBhIGltZyB7XG4gIG1hcmdpbi1yaWdodDogMi41cmVtO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICB3aWR0aDogMi42MjVyZW07XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG59XG4uc2luZ2xlLXRyaWJlX2V2ZW50cyAjdHJpYmUtZXZlbnRzLWNvbnRlbnQgLnRyaWJlLWV2ZW50cy1iYWNrIGEgc3Bhbi50cmliZS1ldmVudHMtYmFjay1pbm5lciB7XG4gIGJvcmRlci1ib3R0b206IDAuMDYyNXJlbSBzb2xpZCAjMDAxNzE3O1xuICBsaW5lLWhlaWdodDogMTtcbn1cbi5zaW5nbGUtdHJpYmVfZXZlbnRzICN0cmliZS1ldmVudHMtY29udGVudCAudHJpYmUtZXZlbnRzLWJhY2sgYTpob3ZlciBpbWcsIC5zaW5nbGUtdHJpYmVfZXZlbnRzICN0cmliZS1ldmVudHMtY29udGVudCAudHJpYmUtZXZlbnRzLWJhY2sgYTpmb2N1cyBpbWcge1xuICBtYXJnaW4tcmlnaHQ6IDEuMjVyZW07XG59XG4uc2luZ2xlLXRyaWJlX2V2ZW50cyAjdHJpYmUtZXZlbnRzLWNvbnRlbnQgaDEudHJpYmUtZXZlbnRzLXNpbmdsZS1ldmVudC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogNHJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5zaW5nbGUtdHJpYmVfZXZlbnRzICN0cmliZS1ldmVudHMtY29udGVudCAudHJpYmUtZXZlbnRzLXNjaGVkdWxlIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi5zaW5nbGUtdHJpYmVfZXZlbnRzICN0cmliZS1ldmVudHMtY29udGVudCAudHJpYmUtZXZlbnRzLXNjaGVkdWxlIGgyIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5zaW5nbGUtdHJpYmVfZXZlbnRzICN0cmliZS1ldmVudHMtY29udGVudCAudHJpYmVfZXZlbnRzLnR5cGUtdHJpYmVfZXZlbnRzIC50cmliZS1ldmVudHMtY2FsLWxpbmtzIGEudHJpYmUtZXZlbnRzLWJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6ICNGRkFGMjY7XG4gIGJvcmRlci1yYWRpdXM6IDAuMTg3NXJlbTtcbiAgY29sb3I6ICMwMDE3MTc7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6IFwiQmFybG93IFNlbWkgQ29uZGVuc2VkXCIsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAyLjVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjE1cmVtO1xuICBtYXJnaW4tdG9wOiAyLjVyZW07XG4gIHBhZGRpbmc6IDAgMS4zNzVyZW07XG4gIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlLW91dDtcbiAgLW1zLXRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2Utb3V0O1xufVxuLnNpbmdsZS10cmliZV9ldmVudHMgI3RyaWJlLWV2ZW50cy1jb250ZW50IC50cmliZV9ldmVudHMudHlwZS10cmliZV9ldmVudHMgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgYS50cmliZS1ldmVudHMtYnV0dG9uOmhvdmVyLCAuc2luZ2xlLXRyaWJlX2V2ZW50cyAjdHJpYmUtZXZlbnRzLWNvbnRlbnQgLnRyaWJlX2V2ZW50cy50eXBlLXRyaWJlX2V2ZW50cyAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyBhLnRyaWJlLWV2ZW50cy1idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjMDAxNzE3O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5zaW5nbGUtdHJpYmVfZXZlbnRzICN0cmliZS1ldmVudHMtY29udGVudCAudHJpYmVfZXZlbnRzLnR5cGUtdHJpYmVfZXZlbnRzIC50cmliZS1ldmVudHMtc2luZ2xlLXNlY3Rpb24ge1xuICBiYWNrZ3JvdW5kOiAjRjFGM0Y1O1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbi10b3A6IDQuMDYyNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbn1cbi5zaW5nbGUtdHJpYmVfZXZlbnRzICN0cmliZS1ldmVudHMtY29udGVudCAudHJpYmVfZXZlbnRzLnR5cGUtdHJpYmVfZXZlbnRzIC50cmliZS1ldmVudHMtc2luZ2xlLXNlY3Rpb24gLnRyaWJlLWV2ZW50cy1tZXRhLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogMy43NXJlbTtcbn1cbi5zaW5nbGUtdHJpYmVfZXZlbnRzICN0cmliZS1ldmVudHMtY29udGVudCAudHJpYmVfZXZlbnRzLnR5cGUtdHJpYmVfZXZlbnRzIC50cmliZS1ldmVudHMtc2luZ2xlLXNlY3Rpb24gLnRyaWJlLWV2ZW50cy1tZXRhLWdyb3VwOmxhc3Qtb2YtdHlwZSB7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG59XG4uc2luZ2xlLXRyaWJlX2V2ZW50cyAjdHJpYmUtZXZlbnRzLWNvbnRlbnQgLnRyaWJlX2V2ZW50cy50eXBlLXRyaWJlX2V2ZW50cyAudHJpYmUtZXZlbnRzLXNpbmdsZS1zZWN0aW9uIC50cmliZS1ldmVudHMtbWV0YS1ncm91cCBkbCBkdCB7XG4gIGZvbnQtZmFtaWx5OiBcIkJhcmxvdyBTZW1pIENvbmRlbnNlZFwiLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4uc2luZ2xlLXRyaWJlX2V2ZW50cyAjdHJpYmUtZXZlbnRzLWNvbnRlbnQgLnRyaWJlX2V2ZW50cy50eXBlLXRyaWJlX2V2ZW50cyAudHJpYmUtZXZlbnRzLXNpbmdsZS1zZWN0aW9uIC50cmliZS1ldmVudHMtbWV0YS1ncm91cCBkbCBkZCB7XG4gIG1hcmdpbi1ib3R0b206IDEuODc1cmVtO1xufVxuLnNpbmdsZS10cmliZV9ldmVudHMgI3RyaWJlLWV2ZW50cy1jb250ZW50IC50cmliZV9ldmVudHMudHlwZS10cmliZV9ldmVudHMgLnRyaWJlLWV2ZW50cy1zaW5nbGUtc2VjdGlvbiAudHJpYmUtZXZlbnRzLW1ldGEtZ3JvdXAgZGwgZGQudHJpYmUtdmVudWUsIC5zaW5nbGUtdHJpYmVfZXZlbnRzICN0cmliZS1ldmVudHMtY29udGVudCAudHJpYmVfZXZlbnRzLnR5cGUtdHJpYmVfZXZlbnRzIC50cmliZS1ldmVudHMtc2luZ2xlLXNlY3Rpb24gLnRyaWJlLWV2ZW50cy1tZXRhLWdyb3VwIGRsIGRkOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uc2luZ2xlLnNpbmdsZS1wb3N0IGEuYWxsLXBvc3RzLWJhY2sge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbn1cbi5zaW5nbGUuc2luZ2xlLXBvc3QgYS5hbGwtcG9zdHMtYmFjayBpbWcge1xuICBtYXJnaW4tcmlnaHQ6IDIuNXJlbTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgd2lkdGg6IDIuNjI1cmVtO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xufVxuLnNpbmdsZS5zaW5nbGUtcG9zdCBhLmFsbC1wb3N0cy1iYWNrIHNwYW4uYWxsLXBvc3RzLWJhY2staW5uZXIge1xuICBib3JkZXItYm90dG9tOiAwLjA2MjVyZW0gc29saWQgIzAwMTcxNztcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG4uc2luZ2xlLnNpbmdsZS1wb3N0IGEuYWxsLXBvc3RzLWJhY2s6aG92ZXIgaW1nLCAuc2luZ2xlLnNpbmdsZS1wb3N0IGEuYWxsLXBvc3RzLWJhY2s6Zm9jdXMgaW1nIHtcbiAgbWFyZ2luLXJpZ2h0OiAxLjI1cmVtO1xufVxuLnNpbmdsZS5zaW5nbGUtcG9zdCAuYnMtZW50cnktbWV0YSB7XG4gIG1hcmdpbi10b3A6IC0xLjg3NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW0gIWltcG9ydGFudDtcbn1cbi5zaW5nbGUuc2luZ2xlLXBvc3QgLmVudHJ5LWNvbnRlbnQge1xuICBtYXJnaW4tYm90dG9tOiA1cmVtO1xufVxuXG4vKioqKiBQUkUtRk9PVEVSICYgRk9PVEVSIFNUWUxFUyAqKioqL1xuLnNwb25zb3ItbG9nby1jb250YWluZXIgLnNwb25zb3ItbG9nby13cmFwcGVyIC5zbGljay1saXN0IHtcbiAgbWFyZ2luOiAzLjc1cmVtIGF1dG8gMS4yNXJlbSAtNi4yNXJlbTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzVlbSkge1xuICAuc3BvbnNvci1sb2dvLWNvbnRhaW5lciAuc3BvbnNvci1sb2dvLXdyYXBwZXIgLnNsaWNrLWxpc3Qge1xuICAgIG1hcmdpbjogMy43NXJlbSBhdXRvIDEuMjVyZW0gLTIuNXJlbTtcbiAgfVxufVxuLnNwb25zb3ItbG9nby1jb250YWluZXIgLnNwb25zb3ItbG9nby13cmFwcGVyIC5zbGljay1saXN0IC5zbGljay1zbGlkZSB7XG4gIHBhZGRpbmctbGVmdDogNi4yNXJlbTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzVlbSkge1xuICAuc3BvbnNvci1sb2dvLWNvbnRhaW5lciAuc3BvbnNvci1sb2dvLXdyYXBwZXIgLnNsaWNrLWxpc3QgLnNsaWNrLXNsaWRlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIuNXJlbTtcbiAgfVxufVxuLnNwb25zb3ItbG9nby1jb250YWluZXIgLnNwb25zb3ItbG9nby13cmFwcGVyIC5zbGljay1saXN0IC5zaW5nbGUtc3BvbnNvci1sb2dvLWl0ZW0gLmVudHJ5LWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kOiAjRjFGM0Y1O1xufVxuLnNwb25zb3ItbG9nby1jb250YWluZXIgLnNwb25zb3ItbG9nby13cmFwcGVyIC5zbGljay1saXN0IC5zaW5nbGUtc3BvbnNvci1sb2dvLWl0ZW0gaW1nIHtcbiAgbWl4LWJsZW5kLW1vZGU6IG11bHRpcGxlO1xuICB3aWR0aDogMTAwJTtcbn1cbi5zcG9uc29yLWxvZ28tY29udGFpbmVyIC5zcG9uc29yLWxvZ28td3JhcHBlciAuc2xpY2stbGlzdCAuc2luZ2xlLXNwb25zb3ItbG9nby1pdGVtIHAuZG9ub3ItbGV2ZWwge1xuICBmb250LWZhbWlseTogXCJzb3VyY2Utc2Fucy1wcm9cIiwgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIG1hcmdpbjogMS4yNXJlbSAwIDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5zcG9uc29yLWxvZ28tY29udGFpbmVyIC5zcG9uc29yLWxvZ28td3JhcHBlciAuc2xpY2stZG90cyBsaSB7XG4gIGJvcmRlcjogMC4wNjI1cmVtIHNvbGlkICMwMDE3MTc7XG59XG4uc3BvbnNvci1sb2dvLWNvbnRhaW5lciAuc3BvbnNvci1sb2dvLXdyYXBwZXIgLnNsaWNrLWRvdHMgbGkuc2xpY2stYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogIzAwMTcxNztcbn1cblxuI2Zvb3Rlci1jb250YWluZXIgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci5ncmlkLXggc2VjdGlvbi53aWRnZXQubGFyZ2UtMyBwLCAjZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLmdyaWQteCBzZWN0aW9uLndpZGdldC5sYXJnZS0zIGxpLCAjZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLmdyaWQteCBzZWN0aW9uLndpZGdldC5sYXJnZS0zIGEsICNmb290ZXItY29udGFpbmVyIC5mb290ZXItY29udGFpbmVyIC5mb290ZXIuZ3JpZC14IHNlY3Rpb24ud2lkZ2V0LmxhcmdlLTMgc3BhbiB7XG4gIGZvbnQtZmFtaWx5OiBcInNvdXJjZS1zYW5zLXByb1wiLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xufVxuI2Zvb3Rlci1jb250YWluZXIgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci5ncmlkLXggc2VjdGlvbi53aWRnZXQubGFyZ2UtMyBoNiB7XG4gIGZvbnQtZmFtaWx5OiBcIkJhcmxvdyBTZW1pIENvbmRlbnNlZFwiLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuMjVyZW0gIWltcG9ydGFudDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTVyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW0gIWltcG9ydGFudDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICNmb290ZXItY29udGFpbmVyIC5mb290ZXItY29udGFpbmVyIC5mb290ZXIuZ3JpZC14IHNlY3Rpb24ud2lkZ2V0LmxhcmdlLTMgaDYge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG4jZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLmdyaWQteCBzZWN0aW9uLndpZGdldC5sYXJnZS0zIC5tZW51IGxpIGEge1xuICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgI2Zvb3Rlci1jb250YWluZXIgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci5ncmlkLXggc2VjdGlvbi53aWRnZXQubGFyZ2UtMyAubWVudSBsaSBhIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cbiNmb290ZXItY29udGFpbmVyIC5mb290ZXItY29udGFpbmVyIC5mb290ZXIuZ3JpZC14IHNlY3Rpb24ud2lkZ2V0LmxhcmdlLTMgLnNvY2lhbC1tZWRpYS13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLWxlZnQ6IC0wLjc1cmVtO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgI2Zvb3Rlci1jb250YWluZXIgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci5ncmlkLXggc2VjdGlvbi53aWRnZXQubGFyZ2UtMyAuc29jaWFsLW1lZGlhLXdyYXBwZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG4jZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLmdyaWQteCBzZWN0aW9uLndpZGdldC5sYXJnZS0zIC5zb2NpYWwtbWVkaWEtd3JhcHBlciBsaSB7XG4gIHBhZGRpbmctbGVmdDogMC43NXJlbTtcbn1cbiNmb290ZXItY29udGFpbmVyIC5mb290ZXItY29udGFpbmVyIC5mb290ZXIuZ3JpZC14IHNlY3Rpb24ud2lkZ2V0LmxhcmdlLTMgLnNvY2lhbC1tZWRpYS13cmFwcGVyIGxpIGEge1xuICBiYWNrZ3JvdW5kOiAjMDAxNzE3O1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBjb2xvcjogI0YxRjNGNTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDJyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDJyZW07XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlLW91dDtcbiAgLW1zLXRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2Utb3V0O1xufVxuI2Zvb3Rlci1jb250YWluZXIgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci5ncmlkLXggc2VjdGlvbi53aWRnZXQubGFyZ2UtMyAuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkgYTpob3ZlciwgI2Zvb3Rlci1jb250YWluZXIgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci5ncmlkLXggc2VjdGlvbi53aWRnZXQubGFyZ2UtMyAuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkgYTpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICMwMDY5M0I7XG59XG4jZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLmdyaWQteCBzZWN0aW9uLndpZGdldC5sYXJnZS0zIC5mb290ZXItbG9nby1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuI2Zvb3Rlci1jb250YWluZXIgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci5ncmlkLXggc2VjdGlvbi53aWRnZXQubGFyZ2UtMyAuZm9vdGVyLWxvZ28tY29udGFpbmVyIGltZyB7XG4gIG1hcmdpbi1yaWdodDogMy43NXJlbTtcbiAgbWFyZ2luLXRvcDogLTAuNjI1cmVtO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgI2Zvb3Rlci1jb250YWluZXIgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci5ncmlkLXggc2VjdGlvbi53aWRnZXQubGFyZ2UtMyAuZm9vdGVyLWxvZ28tY29udGFpbmVyIGltZyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjI1cmVtO1xuICB9XG59XG4jZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLmdyaWQteCBzZWN0aW9uLndpZGdldC5sYXJnZS0zIC5nZm9ybV93cmFwcGVyIGZvcm0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbn1cbiNmb290ZXItY29udGFpbmVyIC5mb290ZXItY29udGFpbmVyIC5mb290ZXIuZ3JpZC14IHNlY3Rpb24ud2lkZ2V0LmxhcmdlLTMgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSB7XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDJyZW0pO1xufVxuI2Zvb3Rlci1jb250YWluZXIgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci5ncmlkLXggc2VjdGlvbi53aWRnZXQubGFyZ2UtMyAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IGxpLmdmaWVsZCB7XG4gIHBhZGRpbmc6IDA7XG59XG4jZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLmdyaWQteCBzZWN0aW9uLndpZGdldC5sYXJnZS0zIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgbGkuZ2ZpZWxkIGlucHV0Om5vdChbdHlwZT1yYWRpb10pOm5vdChbdHlwZT1jaGVja2JveF0pOm5vdChbdHlwZT1zdWJtaXRdKTpub3QoW3R5cGU9aW1hZ2VdKTpub3QoW3R5cGU9ZmlsZV0pIHtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgbWF4LWhlaWdodDogMi4zNzVyZW07XG4gIG1pbi1oZWlnaHQ6IDA7XG4gIHBhZGRpbmc6IDAgMS4yNXJlbSAwIDAuOTM3NXJlbTtcbn1cbiNmb290ZXItY29udGFpbmVyIC5mb290ZXItY29udGFpbmVyIC5mb290ZXIuZ3JpZC14IHNlY3Rpb24ud2lkZ2V0LmxhcmdlLTMgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQuZmxvYXRMYWJlbCBsYWJlbCB7XG4gIGxlZnQ6IDAuOTM3NXJlbTtcbiAgdG9wOiAwLjYyNXJlbTtcbn1cbiNmb290ZXItY29udGFpbmVyIC5mb290ZXItY29udGFpbmVyIC5mb290ZXIuZ3JpZC14IHNlY3Rpb24ud2lkZ2V0LmxhcmdlLTMgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSBsaS5nZmllbGQuZmxvYXRMYWJlbCBsYWJlbFtkYXRhLWF0dHI9YWN0aXZlXSB7XG4gIGxlZnQ6IDA7XG4gIHRvcDogLTFyZW07XG59XG4jZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLmdyaWQteCBzZWN0aW9uLndpZGdldC5sYXJnZS0zIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2Zvb3RlciB7XG4gIG1hcmdpbjogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMi4zNzVyZW07XG59XG4jZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLmdyaWQteCBzZWN0aW9uLndpZGdldC5sYXJnZS0zIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2Zvb3RlciBpbnB1dC5nZm9ybV9idXR0b24ge1xuICBiYWNrZ3JvdW5kOiAjRkZBRjI2O1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMi4zNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAyLjM3NXJlbTtcbiAgcGFkZGluZzogMDtcbiAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gIHdpZHRoOiAyLjM3NXJlbTtcbn1cbiNmb290ZXItY29udGFpbmVyIC5mb290ZXItY29udGFpbmVyIC5mb290ZXIuZ3JpZC14IHNlY3Rpb24ud2lkZ2V0LmxhcmdlLTMgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fZm9vdGVyOmFmdGVyIHtcbiAgYmFja2dyb3VuZDogdXJsKC4uLy4uLy4uL3NyYy9hc3NldHMvaW1hZ2VzL2JsYWNrLWFycm93LnN2Zykgbm8tcmVwZWF0IGxlZnQgY2VudGVyO1xuICBjb2xvcjogIzAwMTcxNztcbiAgY29udGVudDogXCJcIjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6IGZvbnRhd2Vzb21lO1xuICBoZWlnaHQ6IDAuNjI1cmVtO1xuICByaWdodDogMC45Mzc1cmVtO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDAuOTA2MjVyZW07XG4gIHdpZHRoOiAyLjM3NXJlbTtcbiAgei1pbmRleDogMTA7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogcmlnaHQgMC4ycyBlYXNlLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiByaWdodCAwLjJzIGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogcmlnaHQgMC4ycyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogcmlnaHQgMC4ycyBlYXNlLW91dDtcbn1cbiNmb290ZXItY29udGFpbmVyIC5mb290ZXItY29udGFpbmVyIC5mb290ZXIuZ3JpZC14IHNlY3Rpb24ud2lkZ2V0LmxhcmdlLTMgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fZm9vdGVyOmhvdmVyOmFmdGVyLCAjZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLmdyaWQteCBzZWN0aW9uLndpZGdldC5sYXJnZS0zIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2Zvb3Rlcjpmb2N1czphZnRlciB7XG4gIHJpZ2h0OiAwLjYyNXJlbTtcbn1cbiNmb290ZXItY29udGFpbmVyIC5mb290ZXItY29udGFpbmVyIC5mb290ZXIuZ3JpZC14IHNlY3Rpb24ud2lkZ2V0LmxhcmdlLTM6Zmlyc3QtY2hpbGQge1xuICB3aWR0aDogMzYuNjUlO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NGVtKSB7XG4gICNmb290ZXItY29udGFpbmVyIC5mb290ZXItY29udGFpbmVyIC5mb290ZXIuZ3JpZC14IHNlY3Rpb24ud2lkZ2V0LmxhcmdlLTM6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDMuNzVyZW07XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICNmb290ZXItY29udGFpbmVyIC5mb290ZXItY29udGFpbmVyIC5mb290ZXIuZ3JpZC14IHNlY3Rpb24ud2lkZ2V0LmxhcmdlLTM6Zmlyc3QtY2hpbGQgaDYsICNmb290ZXItY29udGFpbmVyIC5mb290ZXItY29udGFpbmVyIC5mb290ZXIuZ3JpZC14IHNlY3Rpb24ud2lkZ2V0LmxhcmdlLTM6Zmlyc3QtY2hpbGQgcCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxufVxuI2Zvb3Rlci1jb250YWluZXIgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci5ncmlkLXggc2VjdGlvbi53aWRnZXQubGFyZ2UtMzpudGgtY2hpbGQoMikge1xuICB3aWR0aDogMTcuNTIlO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NGVtKSB7XG4gICNmb290ZXItY29udGFpbmVyIC5mb290ZXItY29udGFpbmVyIC5mb290ZXIuZ3JpZC14IHNlY3Rpb24ud2lkZ2V0LmxhcmdlLTM6bnRoLWNoaWxkKDIpIHtcbiAgICB3aWR0aDogMzMuMzMzMyU7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICNmb290ZXItY29udGFpbmVyIC5mb290ZXItY29udGFpbmVyIC5mb290ZXIuZ3JpZC14IHNlY3Rpb24ud2lkZ2V0LmxhcmdlLTM6bnRoLWNoaWxkKDIpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzLjc1cmVtO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4jZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLmdyaWQteCBzZWN0aW9uLndpZGdldC5sYXJnZS0zOm50aC1jaGlsZCgzKSB7XG4gIHdpZHRoOiAyMS43NyU7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0ZW0pIHtcbiAgI2Zvb3Rlci1jb250YWluZXIgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci5ncmlkLXggc2VjdGlvbi53aWRnZXQubGFyZ2UtMzpudGgtY2hpbGQoMykge1xuICAgIHdpZHRoOiAzMy4zMzMzJTtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgI2Zvb3Rlci1jb250YWluZXIgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci5ncmlkLXggc2VjdGlvbi53aWRnZXQubGFyZ2UtMzpudGgtY2hpbGQoMykge1xuICAgIG1hcmdpbi1ib3R0b206IDMuNzVyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4jZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLmdyaWQteCBzZWN0aW9uLndpZGdldC5sYXJnZS0zOmxhc3QtY2hpbGQge1xuICB3aWR0aDogMjQuMDYlO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NGVtKSB7XG4gICNmb290ZXItY29udGFpbmVyIC5mb290ZXItY29udGFpbmVyIC5mb290ZXIuZ3JpZC14IHNlY3Rpb24ud2lkZ2V0LmxhcmdlLTM6bGFzdC1jaGlsZCB7XG4gICAgd2lkdGg6IDMzLjMzMzMlO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAjZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLmdyaWQteCBzZWN0aW9uLndpZGdldC5sYXJnZS0zOmxhc3QtY2hpbGQge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbiNjb3B5cmlnaHQtY29udGFpbmVyIHAsICNjb3B5cmlnaHQtY29udGFpbmVyIHAgYSB7XG4gIGZvbnQtZmFtaWx5OiBcInNvdXJjZS1zYW5zLXByb1wiLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5tb2JpbGUtbWVudSxcbiAgLnNpdGUtdGl0bGUtYmFyIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDAuMDYxMjVlbSkge1xuICAuZGVza3RvcC1tZW51LFxuICBib2R5Om5vdCgudG9wYmFyKSAuc2l0ZS1uYXZpZ2F0aW9uIC50b3AtYmFyLWxlZnQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uc2l0ZS1kZXNrdG9wLXRpdGxlIGEge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLm1vYmlsZS1tZW51IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm9mZi1jYW52YXMgPiB1bC5tZW51IHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwYWRkaW5nOiAxcmVtO1xufVxuLm9mZi1jYW52YXMgPiB1bC5tZW51IGEge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG59XG4ub2ZmLWNhbnZhcyAubWVudSAuYWN0aXZlID4gYSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2M7XG59XG5cbi50aXRsZS1iYXItdGl0bGUgYSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgY29sb3I6ICNCOUI5Qjk7XG59XG5cbi5tb2JpbGUtbWVudSAubWVudSAuaXMtYWN0aXZlID4gYSxcbi5tb2JpbGUtb2ZmLWNhbnZhcy1tZW51IC5tZW51IC5pcy1hY3RpdmUgPiBhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDU0LjM4ODg4ODg4ODksIDY5LjIyMjIyMjIyMjIsIDc5LjExMTExMTExMTEpO1xufVxuXG4udG9wLWJhciAudG9wLWJhci10aXRsZSBhIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBjb2xvcjogI0I5QjlCOTtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS44O1xufVxuLnRvcC1iYXIgLm1lbnUgYSB7XG4gIGNvbG9yOiAjZTZlNmU2O1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG4udG9wLWJhciAubWVudSBhOmhvdmVyOm5vdCguYnV0dG9uKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0MjUyNUQ7XG59XG4udG9wLWJhciAubWVudSAuYWN0aXZlID4gYSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2M7XG59XG4udG9wLWJhciAubWVudSA+IGxpOm5vdCgubWVudS10ZXh0KSA+IGEge1xuICBwYWRkaW5nOiAxcmVtO1xufVxuLnRvcC1iYXIgLm1lbnUgbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM0ZTRlNGU7XG59XG4udG9wLWJhciAuZHJvcGRvd24ubWVudSAuc3VibWVudSB7XG4gIGJvcmRlcjogMDtcbn1cbi50b3AtYmFyIC5kcm9wZG93bi5tZW51IC5oYXMtc3VibWVudS5pcy1kb3duLWFycm93IGEge1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xufVxuLnRvcC1iYXIgLmRyb3Bkb3duLm1lbnUgLmhhcy1zdWJtZW51LmlzLWRvd24tYXJyb3cgPiBhOjphZnRlciB7XG4gIGJvcmRlcjogMDtcbn1cbi50b3AtYmFyIC5kcm9wZG93bi5tZW51OmZpcnN0LWNoaWxkID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MC4wNjEyNWVtKSB7XG4gIC5zaXRlLW5hdmlnYXRpb24ge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLnBvc3QtbmF2aWdhdGlvbjo6YmVmb3JlLCAucG9zdC1uYXZpZ2F0aW9uOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbiAgZmxleC1iYXNpczogMDtcbiAgb3JkZXI6IDE7XG59XG4ucG9zdC1uYXZpZ2F0aW9uOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4ubmF2LXByZXZpb3VzIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5uYXYtbmV4dCB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLm1haW4td3JhcCB7XG4gIG1heC13aWR0aDogODVyZW07XG4gIG1hcmdpbjogMCBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAubWFpbi13cmFwIHtcbiAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG4ubWFpbi13cmFwLnNpZGViYXItbGVmdCAubWFpbi1jb250ZW50IHtcbiAgb3JkZXI6IDE7XG59XG4ubWFpbi13cmFwLnNpZGViYXItbGVmdCAuc2lkZWJhciB7XG4gIG9yZGVyOiAyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAubWFpbi13cmFwLnNpZGViYXItbGVmdCAubWFpbi1jb250ZW50IHtcbiAgICBvcmRlcjogMjtcbiAgfVxuICAubWFpbi13cmFwLnNpZGViYXItbGVmdCAuc2lkZWJhciB7XG4gICAgb3JkZXI6IDE7XG4gIH1cbn1cbi5tYWluLXdyYXAuZnVsbC13aWR0aCAubWFpbi1jb250ZW50IHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7XG4gIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07XG4gIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xufVxuLm1haW4td3JhcCAubWFpbi1jb250ZW50IHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7XG4gIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07XG4gIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAubWFpbi13cmFwIC5tYWluLWNvbnRlbnQge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gIH1cbn1cbi5tYWluLXdyYXAgLnNpZGViYXIge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5tYWluLXdyYXAgLnNpZGViYXIge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gIH1cbn1cblxuZGl2LnByZS1mb290ZXItY29udGFpbmVyICsgZGl2LmZvb3Rlci1jb250YWluZXIge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuZGl2LnByZS1mb290ZXItY29udGFpbmVyIC5wcmUtZm9vdGVyIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogODVyZW07XG4gIHBhZGRpbmc6IDVyZW0gMDtcbn1cbmRpdi5wcmUtZm9vdGVyLWNvbnRhaW5lciAud2lkZ2V0IHtcbiAgcGFkZGluZzogMCAwLjkzNzVyZW07XG59XG5kaXYucHJlLWZvb3Rlci1jb250YWluZXIgLndpZGdldCA+IGg0IHtcbiAgZm9udC1zaXplOiAycmVtICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA1cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5kaXYucHJlLWZvb3Rlci1jb250YWluZXIgLndpZGdldCBwOmxhc3Qtb2YtdHlwZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmJvZHkuaG9tZSBkaXYucHJlLWZvb3Rlci1jb250YWluZXIge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4uZm9vdGVyLWNvbnRhaW5lciB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2NhY2FjYTtcbn1cblxuLmZvb3RlciB7XG4gIG1heC13aWR0aDogODVyZW07XG4gIG1hcmdpbjogMCBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBwYWRkaW5nOiA1cmVtIDAgIWltcG9ydGFudDtcbn1cbi5mb290ZXIgYXJ0aWNsZSB7XG4gIGZsZXg6IDEgMSAwO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gIG1hcmdpbjogMDtcbn1cbi5mb290ZXIgdWwge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuYm9keSN0aW55bWNlIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6IDc1cmVtO1xuICBwYWRkaW5nOiAxLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5zaXRlcy1idXR0b24ge1xuICBiYWNrZ3JvdW5kOiAjMTc3OWJhO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBib3gtc2hhZG93OiAwIC0ycHggMCByZ2JhKDAsIDAsIDAsIDAuMikgaW5zZXQ7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4uY2FyZHMtY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbn1cbi5jYXJkcy1jb250YWluZXIgLmNhcmQge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG59XG4uY2FyZHMtY29udGFpbmVyIC5jYXJkIC5jYXJkLWNvbnRlbnQge1xuICBwYWRkaW5nOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuY2FyZHMtY29udGFpbmVyIC5jYXJkIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDAuN3JlbSk7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMzVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjM1cmVtO1xuICB9XG59XG5cbi5mZWF0dXJlZC1oZXJvIHtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtaW4taGVpZ2h0OiA2LjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZmVhdHVyZWQtaGVybyB7XG4gICAgbWluLWhlaWdodDogMTIuNXJlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuZmVhdHVyZWQtaGVybyB7XG4gICAgbWluLWhlaWdodDogMjVyZW07XG4gIH1cbn1cblxuLmRvdHRlZCwgLnNlY3Rpb24tZGl2aWRlciBociB7XG4gIGJvcmRlci1zdHlsZTogZGFzaGVkO1xuICBtYXJnaW46IDJyZW0gMDtcbn1cblxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSBhOmZvY3VzLCBidXR0b246Zm9jdXMgW2RhdGEtd2hhdGlucHV0PXRvdWNoXSBhOmZvY3VzLFxuYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLmZyb250LWhlcm8gLm1hcmtldGluZyB7XG4gIG1heC13aWR0aDogNTVyZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5mcm9udC1oZXJvIC5tYXJrZXRpbmcge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgfVxufVxuLmZyb250LWhlcm8gLm1hcmtldGluZyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG59XG4uZnJvbnQtaGVybyB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9kZW1vL2hlcm8tYmctZm91bmRhdGlvbi02LXNtYWxsLnN2Z1wiKSBib3R0b20gY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b207XG4gIHBhZGRpbmc6IDQuMDYyNXJlbSAwO1xuICBtYXJnaW46IDAgMCAycmVtO1xuICBoZWlnaHQ6IGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmZyb250LWhlcm8ge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9kZW1vL2hlcm8tYmctZm91bmRhdGlvbi02LWxhcmdlLnN2Z1wiKSBib3R0b20gY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGhlaWdodDogNDIuODEyNXJlbTtcbiAgICBtYXJnaW46IDAgMCA0LjVyZW07XG4gIH1cbn1cbi5mcm9udC1oZXJvIC53YXRjaCB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogY2FsYyg1OC4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5mcm9udC1oZXJvIC53YXRjaCB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICB9XG59XG4uZnJvbnQtaGVybyAud2F0Y2ggYSB7XG4gIGNvbG9yOiAjQjRDOUQxO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIG1hcmdpbi1yaWdodDogMS4yNXJlbTtcbn1cbi5mcm9udC1oZXJvIC53YXRjaCBhOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG59XG4uZnJvbnQtaGVybyAud2F0Y2ggI3N0YXJnYXplcnMgOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDliXCI7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIGNvbG9yOiAjQjRDOUQxO1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbn1cbi5mcm9udC1oZXJvIC53YXRjaCAjdHdpdHRlciA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwOTlcIjtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgY29sb3I6ICNCNEM5RDE7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xufVxuLmZyb250LWhlcm8gLnRhZ2xpbmUge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IGNhbGMoNjYuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG4gIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07XG4gIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZnJvbnQtaGVybyAudGFnbGluZSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGNhbGMoNDEuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG4gICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLXRvcDogNnJlbTtcbiAgfVxufVxuLmZyb250LWhlcm8gaDEge1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiAyLjJyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5mcm9udC1oZXJvIGgxIHtcbiAgICBmb250LXNpemU6IDIuODc1cmVtO1xuICB9XG59XG4uZnJvbnQtaGVybyBoNCB7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXNpemU6IDEuMzEyNXJlbTtcbn1cbi5mcm9udC1oZXJvIC5kb3dubG9hZCB7XG4gIG1hcmdpbi10b3A6IDEuMjVyZW07XG59XG5cbi5pbnRybyB7XG4gIG1heC13aWR0aDogNzVyZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5pbnRybyB7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICB9XG59XG4uaW50cm8ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xufVxuLmludHJvIC5mcC1pbnRybyB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmludHJvIC5mcC1pbnRybyB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGNhbGMoODMuMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4LjMzMzMzMzMzMzMlICsgMS44NzVyZW0gLyAyKTtcbiAgfVxuICAuaW50cm8gLmZwLWludHJvIGgyIHtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgfVxuICAuaW50cm8gLmZwLWludHJvIGg0IHtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgY29sb3I6ICM3Nzc7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxufVxuXG4uc2VjdGlvbi1kaXZpZGVyIHtcbiAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLnNlY3Rpb24tZGl2aWRlciB7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICB9XG59XG4uc2VjdGlvbi1kaXZpZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbn1cbi5zZWN0aW9uLWRpdmlkZXIgaHIge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5iZW5lZml0cyB7XG4gIG1heC13aWR0aDogNzVyZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5iZW5lZml0cyB7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICB9XG59XG4uYmVuZWZpdHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uYmVuZWZpdHMgaGVhZGVyIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7XG4gIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07XG4gIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xufVxuLmJlbmVmaXRzIGhlYWRlciBoMiB7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG4uYmVuZWZpdHMgaGVhZGVyIGg0IHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgY29sb3I6ICM3Nzc7XG59XG4uYmVuZWZpdHMgLnNlbWFudGljLFxuLmJlbmVmaXRzIC5yZXNwb25zaXZlLFxuLmJlbmVmaXRzIC5jdXN0b21pemFibGUsXG4uYmVuZWZpdHMgLnByb2Zlc3Npb25hbCB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmJlbmVmaXRzIC5zZW1hbnRpYyxcbiAgLmJlbmVmaXRzIC5yZXNwb25zaXZlLFxuICAuYmVuZWZpdHMgLmN1c3RvbWl6YWJsZSxcbiAgLmJlbmVmaXRzIC5wcm9mZXNzaW9uYWwge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTtcbiAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICB9XG59XG4uYmVuZWZpdHMgLnNlbWFudGljIGltZyxcbi5iZW5lZml0cyAucmVzcG9uc2l2ZSBpbWcsXG4uYmVuZWZpdHMgLmN1c3RvbWl6YWJsZSBpbWcsXG4uYmVuZWZpdHMgLnByb2Zlc3Npb25hbCBpbWcge1xuICBwYWRkaW5nOiAxLjI1cmVtO1xuICBtYXJnaW46IDFyZW0gYXV0byAwIGF1dG87XG59XG4uYmVuZWZpdHMgLnNlbWFudGljIGgzLFxuLmJlbmVmaXRzIC5yZXNwb25zaXZlIGgzLFxuLmJlbmVmaXRzIC5jdXN0b21pemFibGUgaDMsXG4uYmVuZWZpdHMgLnByb2Zlc3Npb25hbCBoMyB7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXNpemU6IDEuNzVyZW07XG59XG4uYmVuZWZpdHMgLnNlbWFudGljIHAsXG4uYmVuZWZpdHMgLnJlc3BvbnNpdmUgcCxcbi5iZW5lZml0cyAuY3VzdG9taXphYmxlIHAsXG4uYmVuZWZpdHMgLnByb2Zlc3Npb25hbCBwIHtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG59XG4uYmVuZWZpdHMgLndoeS1mb3VuZGF0aW9uIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7XG4gIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07XG4gIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICBtYXJnaW4tdG9wOiA0cmVtO1xufVxuXG4vKiA9PT0gTUFJTiBDT05UQUlORVIgPT09ICovXG4uZGlyZWN0b3J5LWNvbnRhaW5lciB7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4uc2VhcmNoLXNlY3Rpb24sXG4ucmVzdWx0cy1zdW1tYXJ5LFxuLnRpZXItaGVhZGVyLWlubmVyLFxuLnZlbmRvci1saXN0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogODUuMzc1cmVtO1xuICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi8qID09PSBTRUFSQ0ggU0VDVElPTiA9PT0gKi9cbi5zZWFyY2gtc2VjdGlvbiB7XG4gIGJhY2tncm91bmQ6ICNmOGY5ZmE7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIHBhZGRpbmc6IDI1cHg7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuXG4uc2VhcmNoLWJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuLnNlYXJjaC1iYXIgaW5wdXQge1xuICBmbGV4OiAxO1xuICBwYWRkaW5nOiAxMnB4IDE2cHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNlMWU1ZTk7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgZm9udC1zaXplOiAxNnB4O1xufVxuXG4uc2VhcmNoLWJhciBpbnB1dDpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5zZWFyY2gtYmFyIGJ1dHRvbiB7XG4gIHBhZGRpbmc6IDAgMS4zNzVyZW07XG4gIGJhY2tncm91bmQ6ICMwZjc2NTQ7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwLjE4NzVyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG4uc2VhcmNoLWJhciBidXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiBibGFjaztcbn1cblxuLyogPT09IEZJTFRFUlMgPT09ICovXG4uZmlsdGVyLXRvZ2dsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMTVweDtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNlMWU1ZTk7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuXG4uZmlsdGVyLWJhZGdlIHtcbiAgYmFja2dyb3VuZDogIzBmNzY1NDtcbiAgY29sb3I6IHdoaXRlO1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICBwYWRkaW5nOiAycHggMTBweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7XG59XG5cbi5maWx0ZXItcGFuZWwge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAyMHB4O1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTFlNWU5O1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuXG4uZmlsdGVyLXBhbmVsLnNob3cge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmZpbHRlci1ncmlkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgyNTBweCwgMWZyKSk7XG4gIGdhcDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuLmZpbHRlci1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5maWx0ZXItZ3JvdXAgbGFiZWwge1xuICBmb250LXdlaWdodDogNjAwO1xuICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gIGNvbG9yOiAjMmMzZTUwO1xufVxuXG4uZmlsdGVyLWdyb3VwIHNlbGVjdCB7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlMWU1ZTk7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLmZpbHRlci1ncm91cCBzZWxlY3RbbXVsdGlwbGVdIHtcbiAgbWluLWhlaWdodDogMTIwcHg7XG59XG5cbi5jaGVja2JveC1maWx0ZXJzIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgyMDBweCwgMWZyKSk7XG4gIGdhcDogMTVweDtcbiAgbWFyZ2luOiAyMHB4IDA7XG59XG5cbi5jaGVja2JveC1maWx0ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDhweDtcbn1cblxuLmNoZWNrYm94LWZpbHRlciBpbnB1dFt0eXBlPWNoZWNrYm94XSB7XG4gIHdpZHRoOiAxOHB4O1xuICBoZWlnaHQ6IDE4cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgbWFyZ2luOiAwcHg7XG59XG5cbi5jaGVja2JveC1maWx0ZXIgbGFiZWwge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLmZpbHRlci1hY3Rpb25zIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgZ2FwOiAxMHB4O1xuICBwYWRkaW5nLXRvcDogMTVweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlMWU1ZTk7XG59XG5cbi5jbGVhci1idG4ge1xuICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gIGJhY2tncm91bmQ6ICNGRkFGMjY7XG4gIGNvbG9yOiAjMDAxNzE3O1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMTg3NXJlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5jbGVhci1idG46aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjRkZBRjI2O1xufVxuXG4vKiA9PT0gUkVTVUxUUyBTVU1NQVJZID09PSAqL1xuLnJlc3VsdHMtc3VtbWFyeSB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIGJhY2tncm91bmQ6ICNmOGY5ZmE7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgY29sb3I6ICM2NjY7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuLyogPT09IFRJRVIgU0VDVElPTlMgPT09ICovXG4udGllci1zZWN0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cblxuLnRpZXItaGVhZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIHBhZGRpbmc6IDE1cHggMHB4O1xufVxuLnRpZXItaGVhZGVyIC50aWVyLWhlYWRlci1pbm5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMnJlbTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi50aWVyLWhlYWRlciBoMiB7XG4gIGNvbG9yOiBibGFjayAhaW1wb3J0YW50O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogNDBweCAhaW1wb3J0YW50O1xufVxuLnRpZXItaGVhZGVyIC5kaXNjbGFpbWVyIHtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi5yZXZpZXdlZC10aWVyLXNlY3Rpb24ge1xuICBtYXJnaW4tYm90dG9tOiAwcHg7XG59XG5cbi5yZXZpZXdlZC10aWVyLXNlY3Rpb24sIC52ZXJpZmllZC10aWVyLXNlY3Rpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbn1cbi5yZXZpZXdlZC10aWVyLXNlY3Rpb24gLnZlbmRvci1jYXJkLCAudmVyaWZpZWQtdGllci1zZWN0aW9uIC52ZW5kb3ItY2FyZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNEOUUwREQ7XG59XG5cbi5mcmVlLXRpZXItd2FybmluZyB7XG4gIHBhZGRpbmc6IDE1cHggMjBweDtcbiAgYmFja2dyb3VuZDogI2ZmZjNjZDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmYzEwNztcbiAgYm9yZGVyLXJhZGl1czogOHB4IDhweCAwIDA7XG4gIGNvbG9yOiAjODU2NDA0O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbi5mcmVlLXRpZXItc2VjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigxMDksIDEzOCwgMTIxKTtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG59XG5cbi8qIENIQU5HRSAxOiAzIENPTFVNTiBHUklEIExBWU9VVCAqL1xuLnZlbmRvci1saXN0IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbn1cbi52ZW5kb3ItbGlzdC5yZXZpZXdlZC10aWVyIHtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbn1cbi52ZW5kb3ItbGlzdCB7XG4gIGdhcDogMjBweDtcbiAgcGFkZGluZzogMjBweDtcbn1cblxuLyogPT09IFZFTkRPUiBDQVJEUyA9PT0gKi9cbi52ZW5kb3ItY2FyZCB7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTFlNWU5O1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICBib3gtc2hhZG93OiAwIDJweCA1cHggcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLnZlbmRvci1jYXJkOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMCA1cHggMjBweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcbn1cblxuLyogQ0hBTkdFIDM6IEhFQURFUiBXSVRIIENPTlRBQ1QgQlVUVE9OUyBWSVNJQkxFICovXG4udmVuZG9yLWNhcmQtaGVhZGVyIHtcbiAgcGFkZGluZzogMjBweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4udmVuZG9yLWhlYWRlci10b3Age1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuXG4udmVuZG9yLWxvZ28tcGxhY2Vob2xkZXIgaW1nIHtcbiAgaGVpZ2h0OiA4MHB4O1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLnZlbmRvci1uYW1lIHtcbiAgZm9udC1zaXplOiAxLjJyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAjMmMzZTUwO1xuICBtYXJnaW4tYm90dG9tOiA4cHggIWltcG9ydGFudDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xufVxuXG4udmVuZG9yLXdlYnNpdGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xufVxuXG4uc29jaWFsLWljb25zIHtcbiAgbWFyZ2luLXRvcDogOHB4O1xufVxuLnNvY2lhbC1pY29ucyAuc29jaWFsLWljb24ge1xuICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgZm9udC1zaXplOiAyMnB4O1xuICBjb2xvcjogIzQ5NTA1NztcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4zcyBlYXNlO1xufVxuLnNvY2lhbC1pY29ucyAuc29jaWFsLWljb246aG92ZXIge1xuICBjb2xvcjogIzBmNzY1NDtcbn1cblxuLnZlbmRvci1leHBlcnRpc2Uge1xuICBjb2xvcjogIzY2NjtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbn1cblxuLnZlbmRvci10YWdzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBnYXA6IDZweDtcbiAgbWFyZ2luLXRvcDogMTVweDtcbn1cblxuLnZlbmRvci10YWcge1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICBmb250LXNpemU6IDExcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHdpZHRoOiA0NXB4O1xufVxuXG4vKiBDSEFOR0UgMzogQ09OVEFDVCBCVVRUT05TIElOIEhFQURFUiAoUklHSFQgU0lERSkgKi9cbi52ZW5kb3ItaGVhZGVyLXJpZ2h0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiA2cHg7XG4gIG1pbi13aWR0aDogMTIwcHg7XG59XG5cbi5jb250YWN0LWJ0bi1zbWFsbCB7XG4gIHBhZGRpbmc6IDZweCAxMnB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uYnRuLXByaW1hcnktc21hbGwge1xuICBiYWNrZ3JvdW5kOiAjNjY3ZWVhO1xuICBjb2xvcjogd2hpdGU7XG59XG5cbi5idG4tcHJpbWFyeS1zbWFsbDpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICM1YTY3ZDg7XG59XG5cbi5idG4tc2Vjb25kYXJ5LXNtYWxsIHtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGNvbG9yOiAjNDk1MDU3O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTFlNWU5O1xufVxuXG4uYnRuLXNlY29uZGFyeS1zbWFsbDpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNmOGY5ZmE7XG4gIGJvcmRlci1jb2xvcjogIzY2N2VlYTtcbn1cblxuLmV4cGFuZC1idG4ge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMTBweDtcbiAgYmFja2dyb3VuZDogI0ZGQUYyNjtcbiAgY29sb3I6ICMwMDE3MTc7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbWFyZ2luLXRvcDogMTBweDtcbn1cblxuLmV4cGFuZC1idG46aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2IoMjU1LCAxODQuNDAwOTIxNjU5LCA2My41KTtcbn1cblxuLyogPT09IFZFTkRPUiBERVRBSUxTID09PSAqL1xuLnZlbmRvci1kZXRhaWxzIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMjBweDtcbiAgZmxleC1ncm93OiAxO1xufVxuXG4udmVuZG9yLWRldGFpbHMuc2hvdyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uZGV0YWlsLXNlY3Rpb24ge1xuICBwYWRkaW5nOiAxMnB4O1xuICBiYWNrZ3JvdW5kOiAjZjhmOWZhO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5kZXRhaWwtc2VjdGlvbiAucmV2aWV3ZWQtaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1cHg7XG4gIHJpZ2h0OiAxMHB4O1xuICB3aWR0aDogNDBweDtcbn1cblxuLmRldGFpbC1zZWN0aW9uIGg0IHtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICBjb2xvcjogIzJjM2U1MDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG59XG5cbi5kZXRhaWwtc2VjdGlvbiBwIHtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBjb2xvcjogIzY2NjtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuXG4udmVuZG9yLWNvdW50aWVzIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiA2cHg7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG59XG4udmVuZG9yLWNvdW50aWVzIC52ZW5kb3ItY291bnR5IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTNweDtcbn1cblxuLnJldmlld2VkLXRpZXItc2VjdGlvbiAudmVuZG9yLWNvdW50aWVzIHtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbn1cblxuLnJldmlld2VkLXRpZXItc2VjdGlvbiBoMiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9pY29ucy9yZXZpZXdlZC5zdmdcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgcGFkZGluZy1sZWZ0OiA2MHB4O1xufVxuXG4vKiBDSEFOR0UgNTogUElQRSBTRVBBUkFUT1IgKi9cbi5zZXBhcmF0b3Ige1xuICBtYXJnaW46IDAgNHB4O1xuICBjb2xvcjogIzk5OTtcbn1cblxuLyogQ0hBTkdFIDI6IFZFTkRPUiBTVEFURU1FTlQgQkVMT1cgQ09OVEFDVC9MT0NBVElPTiAqL1xuLnZlbmRvci1zdGF0ZW1lbnQge1xuICBwYWRkaW5nOiAxNXB4O1xuICBiYWNrZ3JvdW5kOiAjZjhmOWZhO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgbGluZS1oZWlnaHQ6IDEuNztcbiAgY29sb3I6ICM0OTUwNTc7XG59XG5cbi52ZW5kb3Itc3RhdGVtZW50IHN0cm9uZyB7XG4gIGNvbG9yOiAjMmMzZTUwO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4vKiBDSEFOR0UgNDogVEFHUyBBVCBCT1RUT00gKi9cbi52ZW5kb3ItdGFncy1ib3R0b20ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGdhcDogNnB4O1xuICBwYWRkaW5nLXRvcDogMTVweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlMWU1ZTk7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG59XG5cbi5zcGVjaWFsdHktYmFkZ2Uge1xuICBwYWRkaW5nOiA1cHggMTBweDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICMwMDE3MTc7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5zcGVjaWFsdHktYmFkZ2UudGFnLXNtYWxsLWJ1c2luZXNzIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2ljb25zL3NtYWxsLnN2Z1wiKTtcbn1cbi5zcGVjaWFsdHktYmFkZ2UudGFnLW1pbm9yaXR5LW93bmVkIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2ljb25zL21pbm9yaXR5LnN2Z1wiKTtcbn1cbi5zcGVjaWFsdHktYmFkZ2UudGFnLWVtcGxveWVlLW93bmVkIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2ljb25zL2VtcGxveWVlLnN2Z1wiKTtcbn1cbi5zcGVjaWFsdHktYmFkZ2UudGFnLXdvbWFuLW93bmVkIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2ljb25zL3dvbWFuLnN2Z1wiKTtcbn1cbi5zcGVjaWFsdHktYmFkZ2UudGFnLXZldGVyYW4tb3duZWQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvaWNvbnMvdmV0ZXJhbi5zdmdcIik7XG59XG4uc3BlY2lhbHR5LWJhZGdlLnRhZy1taWNyby1idXNpbmVzcyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9pY29ucy9taWNyby5zdmdcIik7XG59XG5cbi8qID09PSBOTyBSRVNVTFRTID09PSAqL1xuLm5vLXJlc3VsdHMge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDYwcHggMjBweDtcbiAgYmFja2dyb3VuZDogI2Y4ZjlmYTtcbiAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgbWFyZ2luOiAyMHB4IDA7XG59XG5cbi5uby1yZXN1bHRzIGgzIHtcbiAgY29sb3I6ICM0OTUwNTc7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi8qID09PSBSRVNQT05TSVZFIERFU0lHTiA9PT0gKi9cbi8qIENIQU5HRSAxOiBSRVNQT05TSVZFIEdSSUQgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgLnZlbmRvci1saXN0IHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmRpcmVjdG9yeS1oZWFkZXIgaDEge1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgfVxuICAuc2VhcmNoLWJhciB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuICAuZmlsdGVyLWdyaWQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICB9XG4gIC52ZW5kb3ItbGlzdCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIH1cbiAgLnZlbmRvci1oZWFkZXItdG9wIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG4gIC52ZW5kb3ItaGVhZGVyLXJpZ2h0IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuZGV0YWlsLWdyaWQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICB9XG59IiwiLyoqXG4gKiBGb3VuZGF0aW9uIGZvciBTaXRlc1xuICogVmVyc2lvbiA2LjkuMFxuICogaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cblxuLy8gLS0tIERlcGVuZGVuY2llcyAtLS1cbkBpbXBvcnQgJ3ZlbmRvci9ub3JtYWxpemUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9oZWxwZXJzL21pc3NpbmctZGVwZW5kZW5jaWVzJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvaGVscGVycy90cnVlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL2NvbnRhaW4nO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcHVyZ2UnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcmVtb3ZlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3JlcGxhY2UnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvdG8tbGlzdCc7XG5cbi8vIC0tLSBTZXR0aW5ncyAtLS1cbi8vIGltcG9ydCB5b3VyIG93biBgc2V0dGluZ3NgIGhlcmUgb3Jcbi8vIGltcG9ydCBhbmQgbW9kaWZ5IHRoZSBkZWZhdWx0IHNldHRpbmdzIHRocm91Z2hcbi8vIEBpbXBvcnQgJ3NldHRpbmdzL3NldHRpbmdzJztcblxuLy8gLS0tIENvbXBvbmVudHMgLS0tXG4vLyBVdGlsaXRpZXNcbkBpbXBvcnQgJ3V0aWwvdXRpbCc7XG4vLyBHbG9iYWwgc3R5bGVzXG5AaW1wb3J0ICdnbG9iYWwnO1xuQGltcG9ydCAnZm9ybXMvZm9ybXMnO1xuQGltcG9ydCAndHlwb2dyYXBoeS90eXBvZ3JhcGh5JztcblxuLy8gR3JpZHNcbkBpbXBvcnQgJ2dyaWQvZ3JpZCc7XG5AaW1wb3J0ICd4eS1ncmlkL3h5LWdyaWQnO1xuLy8gR2VuZXJpYyBjb21wb25lbnRzXG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbi1ncm91cCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Nsb3NlLWJ1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2xhYmVsJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcHJvZ3Jlc3MtYmFyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc2xpZGVyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3dpdGNoJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFibGUnO1xuLy8gQmFzaWMgY29tcG9uZW50c1xuQGltcG9ydCAnY29tcG9uZW50cy9iYWRnZSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2JyZWFkY3J1bWJzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2FsbG91dCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NhcmQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3BhZ2luYXRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy90b29sdGlwJztcblxuLy8gQ29udGFpbmVyc1xuQGltcG9ydCAnY29tcG9uZW50cy9hY2NvcmRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYS1vYmplY3QnO1xuQGltcG9ydCAnY29tcG9uZW50cy9vcmJpdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Jlc3BvbnNpdmUtZW1iZWQnO1xuQGltcG9ydCAnY29tcG9uZW50cy90YWJzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGh1bWJuYWlsJztcbi8vIE1lbnUtYmFzZWQgY29udGFpbmVyc1xuQGltcG9ydCAnY29tcG9uZW50cy9tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVudS1pY29uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWNjb3JkaW9uLW1lbnUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcmlsbGRvd24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bi1tZW51JztcblxuLy8gTGF5b3V0IGNvbXBvbmVudHNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvb2ZmLWNhbnZhcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3JldmVhbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N0aWNreSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RpdGxlLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RvcC1iYXInO1xuXG4vLyBIZWxwZXJzXG5AaW1wb3J0ICdjb21wb25lbnRzL2Zsb2F0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZmxleCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Zpc2liaWxpdHknO1xuQGltcG9ydCAncHJvdG90eXBlL3Byb3RvdHlwZSc7XG5cblxuQG1peGluIGZvdW5kYXRpb24tZXZlcnl0aGluZyhcbiAgJGZsZXg6IHRydWUsXG4gICRwcm90b3R5cGU6IGZhbHNlLFxuICAkeHktZ3JpZDogJHh5LWdyaWRcbikge1xuICBAaWYgJGZsZXgge1xuICAgICRnbG9iYWwtZmxleGJveDogdHJ1ZSAhZ2xvYmFsO1xuICB9XG5cbiAgQGlmICR4eS1ncmlkIHtcbiAgICAkeHktZ3JpZDogdHJ1ZSAhZ2xvYmFsO1xuICB9XG5cbiAgLy8gR2xvYmFsIHN0eWxlc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZm9ybXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdHlwb2dyYXBoeTtcblxuICAvLyBHcmlkc1xuICBAaWYgbm90ICRmbGV4IHtcbiAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWdyaWQ7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpZiAkeHktZ3JpZCB7XG4gICAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLXh5LWdyaWQtY2xhc3NlcztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWdyaWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gR2VuZXJpYyBjb21wb25lbnRzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbi1ncm91cDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jbG9zZS1idXR0b247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbGFiZWw7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvZ3Jlc3MtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXNsaWRlcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zd2l0Y2g7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGFibGU7XG4gIC8vIEJhc2ljIGNvbXBvbmVudHNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1iYWRnZTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1icmVhZGNydW1icztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jYWxsb3V0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNhcmQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcGFnaW5hdGlvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10b29sdGlwO1xuXG4gIC8vIENvbnRhaW5lcnNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVkaWEtb2JqZWN0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW9yYml0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGFicztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10aHVtYm5haWw7XG4gIC8vIE1lbnUtYmFzZWQgY29udGFpbmVyc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVudS1pY29uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyaWxsZG93bi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duLW1lbnU7XG5cbiAgLy8gTGF5b3V0IGNvbXBvbmVudHNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1vZmYtY2FudmFzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXJldmVhbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zdGlja3k7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGl0bGUtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRvcC1iYXI7XG5cbiAgLy8gSGVscGVyc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsb2F0LWNsYXNzZXM7XG4gIEBpZiAkZmxleCB7IEBpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1jbGFzc2VzOyB9XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdmlzaWJpbGl0eS1jbGFzc2VzO1xuICBAaWYgJHByb3RvdHlwZSB7IEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvdG90eXBlLWNsYXNzZXM7IH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVha3BvaW50c1xuLy8vL1xuXG4vLy8gUGF0Y2ggdG8gZml4IGlzc3VlICMxMjA4MFxuJC16Zi1zaXplOiBudWxsO1xuXG4vLy8gQSBsaXN0IG9mIG5hbWVkIGJyZWFrcG9pbnRzLiBZb3UgY2FuIHVzZSB0aGVzZSB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBxdWlja2x5IGNyZWF0ZSBtZWRpYSBxdWVyaWVzLlxuLy8vIEB0eXBlIE1hcFxuJGJyZWFrcG9pbnRzOiAoXG4gIFwic21hbGxcIjogMCxcbiAgXCJtZWRpdW1cIjogNjQwcHgsXG4gIFwibGFyZ2VcIjogMTAyNHB4LFxuICBcInhsYXJnZVwiOiAxMjAwcHgsXG4gIFwieHhsYXJnZVwiOiAxNDQwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQSBsaXN0IG9mIG5hbWVkIEhpRFBJIGJyZWFrcG9pbnRzLiBZb3UgY2FuIHVzZSB0aGVzZSB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBxdWlja2x5IGNyZWF0ZSBtZWRpYSBxdWVyaWVzIGZvciByZXNvbHV0aW9ucy5cbi8vLyBWYWx1ZXMgbXVzdCByZXByZXNlbnQgdGhlIGRldmljZSBwaXhlbHMgLyB3ZWIgcGl4ZWxzIHJhdGlvbiBhbmQgYmUgdW5pdGxlc3Mgb3IgaW4gRFBQWC5cbi8vLyBAdHlwZSBNYXBcbiRicmVha3BvaW50cy1oaWRwaTogKFxuICBcImhpZHBpLTFcIjogMSxcbiAgXCJoaWRwaS0xLTVcIjogMS41LFxuICBcImhpZHBpLTJcIjogMixcbiAgXCJyZXRpbmFcIjogMixcbiAgXCJoaWRwaS0zXCI6IDNcbikgIWRlZmF1bHQ7XG5cbi8vLyBUaGUgbGFyZ2VzdCBuYW1lZCBicmVha3BvaW50IGluIHdoaWNoIHRvIGluY2x1ZGUgcHJpbnQgYXMgYSBtZWRpYSB0eXBlXG4vLy8gQHR5cGUgS2V5d29yZFxuJHByaW50LWJyZWFrcG9pbnQ6IGxhcmdlICFkZWZhdWx0O1xuXG4kLXpmLXplcm8tYnJlYWtwb2ludDogc21hbGwgIWRlZmF1bHQ7XG5cbiQtemYtYnJlYWtwb2ludHMta2V5czogbWFwLXRvLWxpc3QoJGJyZWFrcG9pbnRzLCAna2V5cycpO1xuXG5AaWYgbnRoKG1hcC12YWx1ZXMoJGJyZWFrcG9pbnRzKSwgMSkgIT0gMCB7XG4gIEBlcnJvciAnVGhlIGZpcnN0IGtleSBpbiB0aGUgJGJyZWFrcG9pbnRzIG1hcCBtdXN0IGhhdmUgYSB2YWx1ZSBvZiBcIjBcIi4nO1xufVxuQGVsc2Uge1xuICAkLXpmLXplcm8tYnJlYWtwb2ludDogbnRoKG1hcC1rZXlzKCRicmVha3BvaW50cyksIDEpO1xufVxuXG4vLy8gQWxsIG9mIHRoZSBuYW1lcyBpbiB0aGlzIGxpc3Qgd2lsbCBiZSBvdXRwdXQgYXMgY2xhc3NlcyBpbiB5b3VyIENTUywgbGlrZSBgLnNtYWxsLTEyYCwgYC5tZWRpdW0tNmAsIGFuZCBzbyBvbi4gRWFjaCB2YWx1ZSBpbiB0aGlzIGxpc3QgbXVzdCBhbHNvIGJlIGluIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXAuXG4vLy8gQHR5cGUgTGlzdFxuJGJyZWFrcG9pbnQtY2xhc3NlczogKHNtYWxsIG1lZGl1bSBsYXJnZSkgIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgYSBtZWRpYSBxdWVyeSBzdHJpbmcgbWF0Y2hpbmcgdGhlIGlucHV0IHZhbHVlLiBSZWZlciB0byB0aGUgZG9jdW1lbnRhdGlvbiBmb3IgdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHNlZSB3aGF0IHRoZSBwb3NzaWJsZSBpbnB1dHMgYXJlLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbCBbc21hbGxdIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQoJHZhbDogJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgLy8gV2ViIHN0YW5kYXJkIFBpeGVscyBwZXIgaW5jaC4gKDFkZHB4IC8gJHN0ZC13ZWItZHBpKSA9IDFkcGlcbiAgLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9jc3MtdmFsdWVzLTMvI2Fic29sdXRlLWxlbmd0aHNcbiAgJHN0ZC13ZWItZHBpOiA5NjtcblxuICAvLyBTaXplIG9yIGtleXdvcmRcbiAgJGJwOiBudGgoJHZhbCwgMSk7XG4gIC8vIFZhbHVlIG9mIHRoZSBmb2xsb3dpbmcgYnJlYWtwb2ludFxuICAkYnAtbmV4dDogbnVsbDtcbiAgLy8gVmFsdWUgZm9yIG1heC13aWR0aCBtZWRpYSBxdWVyaWVzXG4gICRicC1taW46IG51bGw7XG4gIC8vIFZhbHVlIGZvciBtaW4td2lkdGggbWVkaWEgcXVlcmllc1xuICAkYnAtbWF4OiBudWxsO1xuICAvLyBEaXJlY3Rpb24gb2YgbWVkaWEgcXVlcnkgKHVwLCBkb3duLCBvciBvbmx5KVxuICAkZGlyOiBpZihsZW5ndGgoJHZhbCkgPiAxLCBudGgoJHZhbCwgMiksIHVwKTtcbiAgLy8gSWYgbmFtZWQsIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnRcbiAgJG5hbWU6IG51bGw7XG4gIC8vIElmIHRoZSBicmVha3BvaW50IGlzIGEgSGlEUEkgYnJlYWtwb2ludFxuICAkaGlkcGk6IGZhbHNlO1xuXG4gIC8vIE9yaWVudGF0aW9uIG1lZGlhIHF1ZXJpZXMgaGF2ZSBhIHVuaXF1ZSBzeW50YXhcbiAgQGlmICRicCA9PSAnbGFuZHNjYXBlJyBvciAkYnAgPT0gJ3BvcnRyYWl0JyB7XG4gICAgQHJldHVybiAnKG9yaWVudGF0aW9uOiAjeyRicH0pJztcbiAgfVxuXG4gIC8vIElmIGEgYnJlYWtwb2ludCBuYW1lIGlzIGdpdmVuLCBnZXQgaXRzIHZhbHVlIGZyb20gdGhlICRicmVha3BvaW50cy8kYnJlYWtwb2ludHMtaGlkcGkgbWFwLlxuICBAaWYgdHlwZS1vZigkYnApID09ICdzdHJpbmcnIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkYnApIHtcbiAgICAgICRuYW1lOiAkYnA7XG4gICAgICAkYnA6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gICAgICAkYnAtbmV4dDogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICAgIH1cbiAgICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMtaGlkcGksICRicCkge1xuICAgICAgJG5hbWU6ICRicDtcbiAgICAgICRicDogbWFwLWdldCgkYnJlYWtwb2ludHMtaGlkcGksICRuYW1lKTtcbiAgICAgICRicC1uZXh0OiAtemYtbWFwLW5leHQtbnVtYmVyKCRicmVha3BvaW50cy1oaWRwaSwgJGJwKTtcbiAgICAgICRoaWRwaTogdHJ1ZTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJGJwOiAwO1xuICAgICAgQHdhcm4gJ2JyZWFrcG9pbnQoKTogXCIjeyR2YWx9XCIgaXMgbm90IGRlZmluZWQgaW4geW91ciBgJGJyZWFrcG9pbnRzYCBvciBgJGJyZWFrcG9pbnRzLWhpZHBpYCBzZXR0aW5nLic7XG4gICAgfVxuICB9XG5cbiAgQGlmIG5vdCAkbmFtZSBhbmQgJGRpciA9PSAnb25seScge1xuICAgIEB3YXJuICdicmVha3BvaW50KCk6IE9ubHkgbmFtZWQgbWVkaWEgcXVlcmllcyBjYW4gaGF2ZSBhbiBgb25seWAgcmFuZ2UuJztcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cblxuICAvLyBPbmx5ICdvbmx5JyBhbmQgJ3VwJyBoYXZlIGEgbWluIGxpbWl0LlxuICBAaWYgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAndXAnIHtcbiAgICAkYnAtbWluOiBpZigkaGlkcGksIHN0cmlwLXVuaXQoJGJwKSwgLXpmLWJwLXRvLWVtKCRicCkpO1xuICB9XG4gIC8vIE9ubHkgJ29ubHknIGFuZCAnZG93bicgaGF2ZSBhIG1heCBsaW1pdC5cbiAgQGlmICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAvLyBJZiB0aGUgYnJlYWtwb2ludCBpcyBhIHZhbHVlLCB1c2UgaXQgYXMgbWF4IGxpbWl0LlxuICAgIEBpZiBub3QgJG5hbWUge1xuICAgICAgJGJwLW1heDogaWYoJGhpZHBpLCBzdHJpcC11bml0KCRicCksIC16Zi1icC10by1lbSgkYnApKTtcbiAgICB9XG4gICAgLy8gSWYgdGhlIGJyZWFrcG9pbnQgaXMgbmFtZWQsIHRoZSBtYXggbGltaXQgaXMgdGhlIGZvbGxvd2luZyBicmVha3BvaW50IC0gMXB4LlxuICAgIEBlbHNlIGlmICRicC1uZXh0IHtcbiAgICAgIC8vIE1heCB2YWx1ZSBpcyAwLjJweCB1bmRlciB0aGUgbmV4dCBicmVha3BvaW50ICgwLjAyIC8gMTYgPSAwLjAwMTI1KS5cbiAgICAgIC8vIFVzZSBhIHByZWNpc2lvbiB1bmRlciAxcHggdG8gc3VwcG9ydCBicm93c2VyIHpvb20sIGJ1dCBub3QgdG8gbG93IHRvIGF2b2lkIHJvdW5kaW5nLlxuICAgICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzExMzEzXG4gICAgICAkYnAtbWF4OiBpZigkaGlkcGksICRicC1uZXh0IC0gZGl2aWRlKDEsICRzdGQtd2ViLWRwaSksIC16Zi1icC10by1lbSgkYnAtbmV4dCkgLSAwLjAwMTI1KTtcbiAgICB9XG4gIH1cblxuICAvLyBHZW5lcmF0ZSB0aGUgbWVkaWEgcXVlcnkgc3RyaW5nIGZyb20gbWluIGFuZCBtYXggbGltaXRzLlxuICBAaWYgJGhpZHBpIHtcbiAgICAvLyBHZW5lcmF0ZSB2YWx1ZXMgaW4gRFBJIGluc3RlYWQgb2YgRFBQWCBmb3IgYW4gSUU5LTExL09wZXJhIG1pbmkgY29tcGF0aWJpbGl0eS5cbiAgICAvLyBTZWUgaHR0cHM6Ly9jYW5pdXNlLmNvbS8jZmVhdD1jc3MtbWVkaWEtcmVzb2x1dGlvblxuICAgICRicC1taW4tZHBpOiBpZigkYnAtbWluLCAkYnAtbWluICogJHN0ZC13ZWItZHBpICogMWRwaSwgJGJwLW1pbik7XG4gICAgJGJwLW1heC1kcGk6IGlmKCRicC1tYXgsICRicC1tYXggKiAkc3RkLXdlYi1kcGkgKiAxZHBpLCAkYnAtbWF4KTtcbiAgICBAcmV0dXJuIHpmLXN0ci1qb2luKFxuICAgICAgLXpmLWJwLWpvaW4oJGJwLW1pbiwgJGJwLW1heCwgJy13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbycsICctd2Via2l0LW1heC1kZXZpY2UtcGl4ZWwtcmF0aW8nKSxcbiAgICAgIC16Zi1icC1qb2luKCRicC1taW4tZHBpLCAkYnAtbWF4LWRwaSwgJ21pbi1yZXNvbHV0aW9uJywgJ21heC1yZXNvbHV0aW9uJyksXG4gICAgICAnLCAnKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiAtemYtYnAtam9pbigkYnAtbWluLCAkYnAtbWF4KTtcbiAgfVxufVxuXG4vLy8gV3JhcHMgYSBtZWRpYSBxdWVyeSBhcm91bmQgdGhlIGNvbnRlbnQgeW91IHB1dCBpbnNpZGUgdGhlIG1peGluLiBUaGlzIG1peGluIGFjY2VwdHMgYSBudW1iZXIgb2YgdmFsdWVzOlxuLy8vICAtIElmIGEgc3RyaW5nIGlzIHBhc3NlZCwgdGhlIG1peGluIHdpbGwgbG9vayBmb3IgaXQgaW4gdGhlIGAkYnJlYWtwb2ludHNgIGFuZCBgJGJyZWFrcG9pbnRzLWhpZHBpYCBtYXBzLCBhbmQgdXNlIGEgbWVkaWEgcXVlcnkgdGhlcmUuXG4vLy8gIC0gSWYgYSBwaXhlbCB2YWx1ZSBpcyBwYXNzZWQsIGl0IHdpbGwgYmUgY29udmVydGVkIHRvIGFuIGVtIHZhbHVlIHVzaW5nIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgYXMgdGhlIGJhc2UuXG4vLy8gIC0gSWYgYSByZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdW5pdCB3aWxsIGJlIGNoYW5nZWQgdG8gZW0uXG4vLy8gIC0gSWYgYW4gZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdmFsdWUgd2lsbCBiZSB1c2VkIGFzLWlzLlxuLy8vXG4vLy8gSWYgbXVsdGlwbGUgdmFsdWVzIGFyZSBwYXNzZWQsIHRoZSBtaXhpbiB3aWxsIGdlbmVyYXRlIGEgbWVkaWEgcXVlcnkgZm9yIGVhY2ggb2YgdGhlbSBhcyBkZXNjcmliZWQgYWJvdmUuXG4vLy8gU2luY2UgdGhlIGNvbnRlbnQgaXMgZHVwbGljYXRlZCBmb3IgZWFjaCBicmVha3BvaW50LCB0aGlzIG1peGluIHNob3VsZCBvbmx5IGJlIHVzZWQgd2l0aCBwcm9wZXJ0aWVzIHRoYXRcbi8vLyBjaGFuZ2UgYWNyb3NzIGJyZWFrcG9pbnRzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbHVlcy4uLiAtIEJyZWFrcG9pbnQgbmFtZSBvciBweC9yZW0vZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbi8vL1xuLy8vIEBvdXRwdXQgSWYgdGhlIGJyZWFrcG9pbnQgaXMgXCIwcHggYW5kIGxhcmdlclwiLCBvdXRwdXRzIHRoZSBjb250ZW50IGFzLWlzLiBPdGhlcndpc2UsIG91dHB1dHMgdGhlIGNvbnRlbnQgd3JhcHBlZCBpbiBhIG1lZGlhIHF1ZXJ5LlxuQG1peGluIGJyZWFrcG9pbnQoJHZhbHVlcy4uLikge1xuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIGxlbmd0aCgkdmFsdWVzKSB7XG4gICAgJHZhbHVlOiBudGgoJHZhbHVlcywgJGkpO1xuICAgICRzdHI6IGJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgICAkYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgbnRoKCR2YWx1ZSwgMSkpO1xuICAgICRwYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgJHByaW50LWJyZWFrcG9pbnQpO1xuICAgIC8vIERpcmVjdGlvbiBvZiBtZWRpYSBxdWVyeSAodXAsIGRvd24sIG9yIG9ubHkpXG4gICAgJGRpcjogaWYobGVuZ3RoKCR2YWx1ZSkgPiAxLCBudGgoJHZhbHVlLCAyKSwgdXApO1xuXG4gICAgJG9sZC16Zi1zaXplOiBudWxsO1xuXG4gICAgLy8gTWFrZSBicmVha3BvaW50IHNpemUgYXZhaWxhYmxlIGFzIGEgdmFyaWFibGVcbiAgICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkge1xuICAgICAgJG9sZC16Zi1zaXplOiAkLXpmLXNpemU7XG4gICAgfVxuICAgICQtemYtc2l6ZTogbnRoKCR2YWx1ZSwgMSkgIWdsb2JhbDsgLy8gZ2V0IHRoZSBmaXJzdCB2YWx1ZSB0byBhY2NvdW50IGZvciBgb25seWAgYW5kIGBkb3duYCBrZXl3b3Jkc1xuXG4gICAgLy8gSWYgJHN0ciBpcyBzdGlsbCBhbiBlbXB0eSBzdHJpbmcsIG5vIG1lZGlhIHF1ZXJ5IGlzIG5lZWRlZFxuICAgIEBpZiAkc3RyID09ICcnIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgIC8vIE90aGVyd2lzZSwgd3JhcCB0aGUgY29udGVudCBpbiBhIG1lZGlhIHF1ZXJ5XG4gICAgQGVsc2Uge1xuICAgICAgLy8gRm9yIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiBvciBlcXVhbCB0byAkcHJpbnQtYnJlYWtwb2ludCwgYWRkIHByaW50IHRvIHRoZSBtZWRpYSB0eXBlc1xuICAgICAgLy8gZ2VuZXJhdGUgcHJpbnQgaWYgdGhlIGJyZWFrcG9pbnQgYWZmZWN0cyB0aGUgcHJpbnQtYnJlYWtwb2ludCAob3Igc21hbGxlcikuXG4gICAgICAvLyBUaGlzIG1lYW5zIHRoZSBjdXJyZW50IGNvbmRpdGlvbiBvbmx5IG5lZWRzIHRvIGJlIGV4dGVuZGVkIHNvICdkb3duJyBhbHdheXMgZ2VuZXJhdGVzIHByaW50LlxuICAgICAgQGlmICRicCAhPSBudWxsIGFuZCAoJGJwIDw9ICRwYnAgb3IgJGRpciA9PSBkb3duKSB7XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICQtemYtc2l6ZTogJG9sZC16Zi1zaXplICFnbG9iYWw7XG4gIH1cbn1cblxuLy8vIENvbnZlcnRzIHRoZSBicmVha3BvaW50cyBtYXAgdG8gYSBVUkwtZW5jb2RlZCBzdHJpbmcsIGxpa2UgdGhpczogYGtleTE9dmFsdWUxJmtleTI9dmFsdWUyYC4gVGhlIHZhbHVlIGlzIHRoZW4gZHJvcHBlZCBpbnRvIHRoZSBDU1MgZm9yIGEgc3BlY2lhbCBgPG1ldGE+YCB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdC4gVGhpcyBpcyBob3cgd2UgdHJhbnNmZXIgdmFsdWVzIGZyb20gU2FzcyB0byBKYXZhU2NyaXB0LCBzbyB0aGV5IGNhbiBiZSBkZWZpbmVkIGluIG9uZSBwbGFjZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIGNvbnZlcnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7U3RyaW5nfSBBIHN0cmluZyBjb250YWluaW5nIHRoZSBtYXAncyBjb250ZW50cy5cbkBmdW5jdGlvbiAtemYtYnAtc2VyaWFsaXplKCRtYXApIHtcbiAgJHN0cjogJyc7XG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICAkc3RyOiAkc3RyICsgJGtleSArICc9JyArIC16Zi1icC10by1lbSgkdmFsdWUpICsgJyYnO1xuICB9XG4gICRzdHI6IHN0ci1zbGljZSgkc3RyLCAxLCAtMik7XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gRmluZCB0aGUgbmV4dCBrZXkgaW4gYSBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byB0cmF2ZXJzZS5cbi8vLyBAcGFyYW0ge01peGVkfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBhIHN0YXJ0aW5nIHBvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge01peGVkfSBUaGUgdmFsdWUgZm9yIHRoZSBrZXkgYWZ0ZXIgYCRrZXlgLCBpZiBgJGtleWAgd2FzIGZvdW5kLiBJZiBgJGtleWAgd2FzIG5vdCBmb3VuZCwgb3IgYCRrZXlgIHdhcyB0aGUgbGFzdCB2YWx1ZSBpbiB0aGUgbWFwLCByZXR1cm5zIGBudWxsYC5cbkBmdW5jdGlvbiAtemYtbWFwLW5leHQoJG1hcCwgJGtleSkge1xuXG4gIC8vIFN0b3JlIHRoZSBrZXlzIG9mIHRoZSBtYXAgYXMgYSBsaXN0XG4gICR2YWx1ZXM6IG1hcC1rZXlzKCRtYXApO1xuXG4gICRpOiAwO1xuXG4gIC8vIElmIHRoZSBLZXkgRXhpc3RzLCBHZXQgdGhlIGluZGV4IG9mIHRoZSBrZXkgd2l0aGluIHRoZSBtYXAgYW5kIGFkZCAxIHRvIGl0IGZvciB0aGUgbmV4dCBicmVha3BvaW50IGluIHRoZSBtYXBcbiAgQGlmIChtYXAtaGFzLWtleSgkbWFwLCAka2V5KSkge1xuICAgICRpOiBpbmRleCgkdmFsdWVzLCAka2V5KSArIDE7XG4gIH1cblxuICAvLyBJZiB0aGUga2V5IGRvZXNuJ3QgZXhpc3QsIG9yIGl0J3MgdGhlIGxhc3Qga2V5IGluIHRoZSBtYXAsIHJldHVybiBudWxsXG4gIEBpZiAoJGkgPiBsZW5ndGgoJG1hcCkgb3IgJGkgPT0gMCkge1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuICAvLyBPdGhlcndpc2UsIHJldHVybiB0aGUgdmFsdWVcbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCBudGgoJHZhbHVlcywgJGkpKTtcbiAgfVxuXG59XG5cbi8vLyBGaW5kIHRoZSBuZXh0IG51bWJlciBpbiBhIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHRyYXZlcnNlLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRudW1iZXIgLSBOdW1iZXIgdG8gdXNlIGFzIGEgc3RhcnRpbmcgcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TWl4ZWR9IFRoZSBudW1iZXIgZm9sbG93aW5nIGAkbnVtYmVyYCwgaWYgYCRudW1iZXJgIHdhcyBmb3VuZC4gSWYgYCRudW1iZXJgIHdhcyBub3QgZm91bmQsIG9yIGAkbnVtYmVyYCB3YXMgdGhlIGJpZ2dlc3QgbnVtYmVyIGluIHRoZSBtYXAsIHJldHVybnMgYG51bGxgLlxuQGZ1bmN0aW9uIC16Zi1tYXAtbmV4dC1udW1iZXIoJG1hcCwgJG51bWJlcikge1xuXG4gICRuZXh0LW51bWJlcjogbnVsbDtcblxuICBAZWFjaCAkaywgJHYgaW4gJG1hcCB7XG4gICAgQGlmIHR5cGUtb2YoJHYpID09ICdudW1iZXInIGFuZCAkdiA+ICRudW1iZXIgYW5kICgkbmV4dC1udW1iZXIgPT0gbnVsbCBvciAkdiA8ICRuZXh0LW51bWJlcikge1xuICAgICAgJG5leHQtbnVtYmVyOiAkdjtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRuZXh0LW51bWJlcjtcbn1cblxuLy8vIFJldHVybiBhIGxpc3Qgb2Ygb3VyIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiAka2V5LiBVc2VmdWwgZm9yIGRlYWxpbmcgd2l0aFxuLy8vIHJlc3BvbnNpdmUgZ3V0dGVycyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGtleSAtIEtleSB0byB1c2UgYXMgbGFzdCBicmVha3BvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge0FycmF5fSBUaGUgbGlzdCBvZiBicmVha3BvaW50cyB1cCB0byBhbmQuIElmICRrZXkgaXMgYXV0bywgcmV0dXJucyBicmVha3BvaW50cyBhYm92ZSB0aGUgemVyb1xuQGZ1bmN0aW9uIC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJGtleSkge1xuICAkbGlzdDogKCk7XG4gICRmb3VuZC1rZXk6IGZhbHNlO1xuXG4gIEBlYWNoICRuYW1lIGluICQtemYtYnJlYWtwb2ludHMta2V5cyB7XG4gICAgQGlmICgkbmFtZSA9PSAka2V5KSB7XG4gICAgICAkZm91bmQta2V5OiB0cnVlO1xuICAgIH1cbiAgICBAaWYgbm90ICRmb3VuZC1rZXkge1xuICAgICAgJGxpc3Q6IGFwcGVuZCgkbGlzdCwgJG5hbWUpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRsaXN0O1xufVxuXG4vLy8gUmV0dXJuIGEgbGlzdCBvZiBvdXIgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuICRrZXkuIFVzZWZ1bCBmb3IgZGVhbGluZyB3aXRoXG4vLy8gcmVzcG9uc2l2ZSBndXR0ZXJzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCAtIGEgbmFtZWQgb3Igbm9uLW5hbWVkIGJyZWFrcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7QXJyYXl9IFRoZSBsaXN0IG9mIGJyZWFrcG9pbnRzIHVwIHRvIGFuZC4gSWYgJGtleSBpcyBhdXRvLCByZXR1cm5zIGJyZWFrcG9pbnRzIGFib3ZlIHRoZSB6ZXJvXG5AZnVuY3Rpb24gLXpmLWNsb3Nlc3QtbmFtZWQtYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAkbGFzdDogJC16Zi16ZXJvLWJyZWFrcG9pbnQ7XG4gICRmb3VuZDogZmFsc2U7XG5cbiAgJHZhbHVlOiB1bml0bGVzcy1jYWxjKCRicmVha3BvaW50LCAxcHgpO1xuICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgQGlmIHVuaXRsZXNzLWNhbGMoJHZhbCkgPiAkdmFsdWUge1xuICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJGxhc3Q6ICRrZXk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbGFzdDtcbn1cblxuLy8vIEdldCBhIHZhbHVlIGZvciBhIGJyZWFrcG9pbnQgZnJvbSBhIHJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXQgcmVnYXJkbGVzcyBvZiBgJHZhbHVlYC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGhhcyB0aGUga2V5IGAkdmFsdWVgLCB0aGUgZXhhY3QgYnJlYWtwb2ludCB2YWx1ZSBpcyByZXR1cm5lZC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGRvZXMgKm5vdCogaGF2ZSB0aGUgYnJlYWtwb2ludCwgdGhlIHZhbHVlIG1hdGNoaW5nIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGluIHRoZSBjb25maWcgbWFwIGlzIHJldHVybmVkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gUmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSB0byB1c2UuXG4vLy9cbi8vLyBAcmV0dXJuIHtNaXhlZH0gVGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZS5cbkBmdW5jdGlvbiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkdmFsdWUpIHtcbiAgLy8gSWYgdGhlIGdpdmVuIG1hcCBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0XG4gIEBpZiB0eXBlLW9mKCRtYXApID09ICdudW1iZXInIHtcbiAgICBAcmV0dXJuICRtYXA7XG4gIH1cblxuXG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGdsb2JhbGx5XG4gIEBpZiBub3QgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkdmFsdWUpIHtcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInIHtcbiAgICAgICR2YWx1ZTogLXpmLWNsb3Nlc3QtbmFtZWQtYnJlYWtwb2ludCgkdmFsdWUpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgQHJldHVybiBudWxsO1xuICAgIH1cbiAgfVxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBpbiB0aGUgbG9jYWwgY29uZmlnIG1hcFxuICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkbWFwLCAkdmFsdWUpIHtcbiAgICAvLyBJZiBpdCBkb2VzLCBqdXN0IHJldHVybiB0aGUgdmFsdWVcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJHZhbHVlKTtcbiAgfVxuICAvLyBPdGhlcndpc2UsIGZpbmQgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgYW5kIHJldHVybiB0aGF0IHZhbHVlXG4gIEBlbHNlIHtcbiAgICAkYW5jaG9yOiBudWxsO1xuICAgICRmb3VuZDogZmFsc2U7XG5cbiAgICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICAgIEBpZiBtYXAtaGFzLWtleSgkbWFwLCAka2V5KSB7XG4gICAgICAgICAgJGFuY2hvcjogJGtleTtcbiAgICAgICAgfVxuICAgICAgICBAaWYgJGtleSA9PSAkdmFsdWUge1xuICAgICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkYW5jaG9yKTtcbiAgfVxufVxuXG4vLy8gUmV0dXJuIHRoZSBiZXN0IGJyZWFrcG9pbnQgdG8gdXNlIGFjY29yZGluZyB0byB0aGUgY2FsbGluZyBjb250ZXh0LiBJdCByZXR1cm5zIGluIG9yZGVyOlxuLy8vIDEuIHRoZSBnaXZlbiBgJHZhbHVlYCBhcmd1bWVudCBpZiBpdCBpcyBub3QgbnVsbC5cbi8vLyAyLiB0aGUgZ2xvYmFsIGJyZWFrcG9pbnQgY29udGV4dCBgJC16Zi1zaXplYCBpZiBpdCBpcyBub3QgbnVsbCAobGlrZSBpZiBjYWxsZWQgaW5zaWRlIHRoZW4gYGJyZWFrcG9pbnQoKWAgbWl4aW4pXG4vLy8gMy4gdGhlIGdpdmVuIGAkZGVmYXVsdGAgYXJndW1lbnQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR2YWx1ZSBbbnVsbF0gLSBCcmVha3BvaW50IHRvIHVzZSBpbiBwcmlvcml0eSBpZiBub24tbnVsbC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkZWZhdWx0IFtudWxsXSAtIEJyZWFrcG9pbnQgdG8gdXNlIGJ5IGRlZmF1bHQgaWYgbm8gb3RoZXIgdmFsdWUgY2FuIGJlIHVzZWQuXG4vLy9cbi8vLyBAcmV0dXJuIHtLZXl3b3JkfSBUaGUgcmVzb2x2ZWQgYnJlYWtwb2ludC5cbkBmdW5jdGlvbiAtemYtY3VycmVudC1icmVha3BvaW50KCR2YWx1ZTogbnVsbCwgJGRlZmF1bHQ6IG51bGwpIHtcbiAgQGlmICgkdmFsdWUgIT0gbnVsbCkge1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG4gIEBlbHNlIGlmICh2YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIGFuZCB0eXBlLW9mKCQtemYtc2l6ZSkgIT0gJ251bWJlcicpIGFuZCAkLXpmLXNpemUgIT0gbnVsbCB7XG4gICAgQHJldHVybiAkLXpmLXNpemU7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gJGRlZmF1bHQ7XG4gIH1cbn1cblxuLy8vIFJldHVybiBtZWRpYSBxdWVyeSBzdHJpbmcgZnJvbSB0aGUgZ2l2ZW4gbWluIGFuZC9vciBtYXggbGltaXRzLlxuLy8vIElmIGEgbGltaXQgaXMgZXF1YWwgdG8gYG51bGxgIG9yIGAwYCwgaXQgaXMgaWdub3JlZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWluIFswXSAtIE1pbiBtZWRpYSBxdWVyeSBsaW1pdC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heCBbMF0gLSBNYXggbWVkaWEgcXVlcnkgbGltaXQuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtaW4tbmFtZSBbJ21pbi13aWR0aCddIC0gTmFtZSBvZiB0aGUgbWluIG1lZGlhIHF1ZXJ5IGxpbWl0LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZGVsaW1pdGVyIFsnbWF4LXdpZHRoJ10gLSBOYW1lIG9mIHRoZSBtYXggbWVkaWEgcXVlcnkgbGltaXQuXG4vLy9cbi8vLyBAcmV0dXJucyB7U3RyaW5nfSBNZWRpYSBRdWVyeSBzdHJpbmcuXG5AZnVuY3Rpb24gLXpmLWJwLWpvaW4oXG4gICRtaW46IDAsXG4gICRtYXg6IDAsXG4gICRtaW4tbmFtZTogJ21pbi13aWR0aCcsXG4gICRtYXgtbmFtZTogJ21heC13aWR0aCdcbikge1xuICBAcmV0dXJuIHpmLXN0ci1qb2luKFxuICAgIGlmKCRtaW4gYW5kICRtaW4gPiAwLCAnKCN7JG1pbi1uYW1lfTogI3skbWlufSknLCBudWxsKSxcbiAgICBpZigkbWF4IGFuZCAkbWF4ID4gMCwgJygjeyRtYXgtbmFtZX06ICN7JG1heH0pJywgbnVsbCksXG4gICAgJyBhbmQgJyk7XG59XG5cbiRzbWFsbC11cDogJyc7XG4kc21hbGwtb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHNtYWxsKSB7XG4gICRzbWFsbC11cDogc2NyZWVuO1xuICAkc21hbGwtb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoc21hbGwgb25seSl9Jyk7XG59XG5cbiRtZWRpdW0tdXA6ICcnO1xuJG1lZGl1bS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbWVkaXVtKSB7XG4gICRtZWRpdW0tdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSl9Jyk7XG4gICRtZWRpdW0tb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtIG9ubHkpfScpO1xufVxuXG4kbGFyZ2UtdXA6ICcnO1xuJGxhcmdlLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBsYXJnZSkge1xuICAkbGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlKX0nKTtcbiAgJGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlIG9ubHkpfScpO1xufVxuXG4keGxhcmdlLXVwOiAnJztcbiR4bGFyZ2Utb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHhsYXJnZSkge1xuICAkeGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2UpfScpO1xuICAkeGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSBvbmx5KX0nKTtcbn1cblxuJHh4bGFyZ2UtdXA6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4eGxhcmdlKSB7XG4gICR4eGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4eGxhcmdlKX0nKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCByZXZlYWxcbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiBhIG1vZGFsLlxuLy8vIEB0eXBlIENvbG9yXG4kcmV2ZWFsLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgd2lkdGggb2YgYSBtb2RhbCwgd2l0aCBubyBjbGFzcyBhcHBsaWVkLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC13aWR0aDogNjAwcHggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1heGltdW0gd2lkdGggb2YgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtbWF4LXdpZHRoOiAkZ2xvYmFsLXdpZHRoICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBhIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBhcm91bmQgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gei1pbmRleCBmb3IgbW9kYWxzLiBUaGUgb3ZlcmxheSB1c2VzIHRoaXMgdmFsdWUsIHdoaWxlIHRoZSBtb2RhbCBpdHNlbGYgdXNlcyB0aGlzIHZhbHVlIHBsdXMgb25lLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC16aW5kZXg6IDEwMDUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIG1vZGFsIG92ZXJsYXlzLlxuLy8vIEB0eXBlIENvbG9yXG4kcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNDUpICFkZWZhdWx0O1xuXG5cbi8vIFBsYWNlaG9sZGVyIHNlbGVjdG9yIGZvciBtZWRpdW0tYW5kLXVwIG1vZGFsc1xuLy8gUHJldmVudHMgZHVwbGljYXRlIENTUyB3aGVuIGRlZmluaW5nIG11bHRpcGxlIFJldmVhbCBzaXplc1xuLy8gVGhpcyBzaG91bGQgYmUgaW4gdGhlIHNhbWUgYnJlYWtwb2ludCB0aGVuIGBAbWl4aW4gcmV2ZWFsLW1vZGFsLXdpZHRoYFxuQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgJXJldmVhbC1jZW50ZXJlZCB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuXG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBtb2RhbCBvdmVybGF5LlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBvdmVybGF5LlxuQG1peGluIHJldmVhbC1vdmVybGF5KCRiYWNrZ3JvdW5kOiAkcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZCkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHJldmVhbC16aW5kZXg7XG5cbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cblxuLy8vIEFkZHMgYmFzZSBzdHlsZXMgZm9yIGEgbW9kYWwuXG5AbWl4aW4gcmV2ZWFsLW1vZGFsLWJhc2Uge1xuICB6LWluZGV4OiAkcmV2ZWFsLXppbmRleCArIDE7XG4gIC8vIFdvcmthcm91bmQgYW5kcm9pZCBicm93c2VyIHotaW5kZXggYnVnXG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblxuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAkcmV2ZWFsLXBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkcmV2ZWFsLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHJldmVhbC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRyZXZlYWwtYmFja2dyb3VuZDtcblxuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHJvd3MgZG9uJ3QgaGF2ZSBhIG1pbi13aWR0aCBvbiB0aGVtXG4gIC5jb2x1bW4ge1xuICAgIG1pbi13aWR0aDogMDtcbiAgfVxuXG4gIC8vIFN0cmlwIG1hcmdpbnMgZnJvbSB0aGUgbGFzdCBpdGVtIGluIHRoZSBtb2RhbFxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBBZGp1c3RzIHRoZSB3aWR0aCBvZiBhIG1vZGFsLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggLSBXaWR0aCBvZiB0aGUgbW9kYWwuIEdlbmVyYWxseSBhIHBlcmNlbnRhZ2UuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXgtd2lkdGggWyRyZXZlYWwtbWF4LXdpZHRoXSAtIE1heGltdW0gd2lkdGggb2YgdGhlIG1vZGFsLlxuQG1peGluIHJldmVhbC1tb2RhbC13aWR0aChcbiAgJHdpZHRoOiAkcmV2ZWFsLXdpZHRoLFxuICAkbWF4LXdpZHRoOiAkcmV2ZWFsLW1heC13aWR0aFxuKSB7XG4gIC8vIEV4dGVuZHMgbXVzdCBiZSBtYWRlIG91dHNpZGUgb2YgYnJlYWtwb2ludHMgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBuZXdlciBTYXNzIHZlcnNpb25zIChsaWJzYXNzIHYzLjUpXG4gIEBleHRlbmQgJXJldmVhbC1jZW50ZXJlZDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICB3aWR0aDogJHdpZHRoO1xuICAgIG1heC13aWR0aDogJG1heC13aWR0aDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGZ1bGwtc2NyZWVuIG1vZGFsLCB3aGljaCBzdHJldGNoZXMgdGhlIGZ1bGwgd2lkdGggYW5kIGhlaWdodCBvZiB0aGUgd2luZG93LlxuQG1peGluIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuIHtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuXG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1yZXZlYWwge1xuXG4gIC8vLyBEaXNhYmxlcyB0aGUgc2Nyb2xsIHdoZW4gUmV2ZWFsIGlzIHNob3duIHRvIHByZXZlbnQgdGhlIGJhY2tncm91bmQgZnJvbSBzaGlmdGluZ1xuICBodG1sLmlzLXJldmVhbC1vcGVuIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuXG4gICAgJi56Zi1oYXMtc2Nyb2xsIHtcbiAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICB9XG5cbiAgICBib2R5IHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgfVxuICB9XG5cbiAgLy8gT3ZlcmxheVxuICAucmV2ZWFsLW92ZXJsYXkge1xuICAgIEBpbmNsdWRlIHJldmVhbC1vdmVybGF5O1xuICB9XG5cbiAgLy8gTW9kYWwgY29udGFpbmVyXG4gIC5yZXZlYWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDEwMHB4O1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlO1xuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCgkcmV2ZWFsLXdpZHRoKTtcblxuICAgIC8vIFJlbW92ZSBwYWRkaW5nXG4gICAgJi5jb2xsYXBzZSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC8vIFNpemluZyBjbGFzc2VzXG4gICAgJi50aW55ICB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCgzMCUpOyB9XG4gICAgJi5zbWFsbCB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCg1MCUpOyB9XG4gICAgJi5sYXJnZSB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCg5MCUpOyB9XG5cbiAgICAvLyBGdWxsLXNjcmVlbiBtb2RlXG4gICAgJi5mdWxsIHtcbiAgICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi16ZXJvLWJyZWFrcG9pbnQgb25seSkge1xuICAgICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWZ1bGxzY3JlZW47XG4gICAgfVxuXG4gICAgJi53aXRob3V0LW92ZXJsYXkge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc2Fzcy1saW50OmRpc2FibGUgbm8tdmVuZG9yLXByZWZpeGVzXG5cbkBtaXhpbiBmb3VuZGF0aW9uLW5vcm1hbGl6ZSgpIHtcbiAgLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4wIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4gIC8vIERvY3VtZW50XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cblxuICBodG1sIHtcbiAgICBsaW5lLWhlaWdodDogMS4xNTsgLy8gMVxuICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gMlxuICB9XG5cbiAgLy8gU2VjdGlvbnNcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgYm9keSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICAvLyBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuXG4gIGgxIHtcbiAgICBmb250LXNpemU6IDJlbTtcbiAgICBtYXJnaW46IDAuNjdlbSAwO1xuICB9XG5cbiAgLy8gR3JvdXBpbmcgY29udGVudFxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gIC8vIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuXG4gIGhyIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLy8gMVxuICAgIGhlaWdodDogMDsgLy8gMVxuICAgIG92ZXJmbG93OiB2aXNpYmxlOyAvLyAyXG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgcHJlIHtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8vIDFcbiAgICBmb250LXNpemU6IDFlbTsgLy8gMlxuICB9XG5cbiAgLy8gVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG5cbiAgYSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAvLyAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICAvLyAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuXG4gIGFiYnJbdGl0bGVdIHtcbiAgICBib3JkZXItYm90dG9tOiAwOyAvLyAxXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvLyAyXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuXG4gIGIsXG4gIHN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cblxuICBjb2RlLFxuICBrYmQsXG4gIHNhbXAge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMWVtOyAvLyAyXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cblxuICBzbWFsbCB7XG4gICAgZm9udC1zaXplOiA4MCU7XG4gIH1cblxuICAvLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAgLy8gYWxsIGJyb3dzZXJzLlxuXG4gIHN1YixcbiAgc3VwIHtcbiAgICBmb250LXNpemU6IDc1JTtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB9XG5cbiAgc3ViIHtcbiAgICBib3R0b206IC0wLjI1ZW07XG4gIH1cblxuICBzdXAge1xuICAgIHRvcDogLTAuNWVtO1xuICB9XG5cbiAgLy8gRW1iZWRkZWQgY29udGVudFxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG5cbiAgaW1nIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIH1cblxuICAvLyBGb3Jtc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG5cbiAgYnV0dG9uLFxuICBpbnB1dCxcbiAgb3B0Z3JvdXAsXG4gIHNlbGVjdCxcbiAgdGV4dGFyZWEge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0OyAvLyAxXG4gICAgZm9udC1zaXplOiAxMDAlOyAvLyAxXG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDFcbiAgICBtYXJnaW46IDA7IC8vIDJcbiAgfVxuXG4gIC8vIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICAvLyAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuXG4gIGJ1dHRvbixcbiAgaW5wdXQgeyAvLyAxXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAgLy8gMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuXG4gIGJ1dHRvbixcbiAgc2VsZWN0IHsgLy8gMVxuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cblxuICBidXR0b24sXG4gIFt0eXBlPVwiYnV0dG9uXCJdLFxuICBbdHlwZT1cInJlc2V0XCJdLFxuICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuXG4gIGJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8vIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cblxuICBidXR0b246LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gICAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuXG4gIGZpZWxkc2V0IHtcbiAgICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gIC8vIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAgLy8gICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgbGVnZW5kIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG4gICAgY29sb3I6IGluaGVyaXQ7IC8vIDJcbiAgICBkaXNwbGF5OiB0YWJsZTsgLy8gMVxuICAgIG1heC13aWR0aDogMTAwJTsgLy8gMVxuICAgIHBhZGRpbmc6IDA7IC8vIDNcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvLyAxXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuXG4gIHByb2dyZXNzIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cblxuICB0ZXh0YXJlYSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAgLy8gMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuXG4gIFt0eXBlPVwiY2hlY2tib3hcIl0sXG4gIFt0eXBlPVwicmFkaW9cIl0ge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgICBwYWRkaW5nOiAwOyAvLyAyXG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG5cbiAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG5cbiAgW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyAxXG4gICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8vIDJcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cblxuICBbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgLy8gMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuXG4gIDo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAxXG4gICAgZm9udDogaW5oZXJpdDsgLy8gMlxuICB9XG5cbiAgLy8gSW50ZXJhY3RpdmVcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuXG4gIGRldGFpbHMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIHN1bW1hcnkge1xuICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgfVxuXG4gIC8vIE1pc2NcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG5cbiAgdGVtcGxhdGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC5cblxuICBbaGlkZGVuXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIERpc2FibGUgb3V0bGluZSB3aGVuIGludGVudCBpcyBjbGVhcmx5IG1vdXNlIGFuZCB0b3VjaFxuICBbZGF0YS13aGF0aW50ZW50PVwibW91c2VcIl0sXG4gIFtkYXRhLXdoYXRpbnRlbnQ9XCJ0b3VjaFwiXSxcbiAgW2RhdGEtd2hhdGlucHV0PVwibW91c2VcIl0sXG4gIFtkYXRhLXdoYXRpbnB1dD1cInRvdWNoXCJdIHtcbiAgICAqLCAqOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLy8gRGlzYWJsZSBpT1MgY2FsbG91dHMgd2hlbiBkcmFnZ2FibGUgaXMgZmFsc2VcbiAgW2RyYWdnYWJsZT1mYWxzZV0ge1xuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIHNhc3MtbGludDpkaXNhYmxlIG5vLWNvbG9yLWxpdGVyYWxzLCBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4vLy8vXG5cbkBpbXBvcnQgJ3V0aWwvdXRpbCc7XG5cbi8vLyBGb250IHNpemUgYXR0cmlidXRlIGFwcGxpZWQgdG8gYDxodG1sPmAgYW5kIGA8Ym9keT5gLiBXZSB1c2UgMTAwJSBieSBkZWZhdWx0IHNvIHRoZSB2YWx1ZSBpcyBpbmhlcml0ZWQgZnJvbSB0aGUgdXNlcidzIGJyb3dzZXIgc2V0dGluZ3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB3aWR0aCBvZiB5b3VyIHNpdGUuIFVzZWQgYnkgdGhlIGdyaWQgdG8gZGV0ZXJtaW5lIHJvdyB3aWR0aC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDEyMDApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgYWxsIHR5cGUuIGAkZ2xvYmFsLWxpbmVoZWlnaHRgIGlzIDI0cHggd2hpbGUgYCRnbG9iYWwtZm9udC1zaXplYCBpcyAxNnB4XG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWxpbmVoZWlnaHQ6IDEuNSAhZGVmYXVsdDtcblxuLy8vIENvbG9ycyB1c2VkIGZvciBidXR0b25zLCBjYWxsb3V0cywgbGlua3MsIGV0Yy4gVGhlcmUgbXVzdCBhbHdheXMgYmUgYSBjb2xvciBjYWxsZWQgYHByaW1hcnlgLlxuLy8vIEB0eXBlIE1hcFxuJGZvdW5kYXRpb24tcGFsZXR0ZTogKFxuICBcInByaW1hcnlcIjogIzE3NzliYSxcbiAgXCJzZWNvbmRhcnlcIjogIzc2NzY3NixcbiAgXCJzdWNjZXNzXCI6ICMzYWRiNzYsXG4gIFwid2FybmluZ1wiOiAjZmZhZTAwLFxuICBcImFsZXJ0XCI6ICNjYzRiMzcsXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbGlnaHQgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGxpZ2h0LWdyYXk6ICNlNmU2ZTYgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBtZWRpdW0gZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJG1lZGl1bS1ncmF5OiAjY2FjYWNhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgZGFyayBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZGFyay1ncmF5OiAjOGE4YThhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgYmxhY2sgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRibGFjazogIzBhMGEwYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIHdoaXRlIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kd2hpdGU6ICNmZWZlZmUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIENvbG9yXG4kYm9keS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIENvbG9yXG4kYm9keS1mb250LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0YWNrIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIExpc3RcbiRib2R5LWZvbnQtZmFtaWx5OiAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbi8vLyBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSBzYWZlIHBhZGRpbmcgb24gdGhlIGJvZHkgZm9yIG5vbi1yZWN0YW5ndWxhciBkZXZpY2VzIChpLmUuIHBob25lcyB3aXRoIG5vdGNoZXMpXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJvZHktc2FmZS1wYWRkaW5nOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIFNldCB0byBgdHJ1ZWAgdG8gZW5hYmxlIGFudGlhbGlhc2VkIHR5cGUsIHVzaW5nIHRoZSBgLXdlYmtpdC1mb250LXNtb290aGluZ2AgYW5kIGAtbW96LW9zeC1mb250LXNtb290aGluZ2AgQ1NTIHByb3BlcnRpZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJvZHktYW50aWFsaWFzZWQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgbWFyZ2luIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwYWRkaW5nIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgcG9zaXRpb25pbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcG9zaXRpb246IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3Igbm9ybWFsIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3IgYm9sZCB0eXBlLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIGVsZW1lbnRzIHRoYXQgaGF2ZSBhIGJvcmRlciByYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXJhZGl1czogMCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgbWVudSBzdHlsZXMuIENhbiBiZSBvdmVyd3JpdHRlbiBhdCBpbmRpdmlkdWFsIG1lbnUgY29tcG9uZW50IGxldmVsLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1tZW51LXBhZGRpbmc6IDAuN3JlbSAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBtZW51IHN0eWxlcy4gTmVzdGVkIG1hcmdpbiBmb3Igc3VibWVudS5cbiRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gU2V0cyB0aGUgdGV4dCBkaXJlY3Rpb24gb2YgdGhlIENTUy4gQ2FuIGJlIGVpdGhlciBgbHRyYCBvciBgcnRsYC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHIgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVzIGZsZXhib3ggZm9yIGNvbXBvbmVudHMgdGhhdCBzdXBwb3J0IGl0LlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRnbG9iYWwtZmxleGJveDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZWQgcmVzcG9uc2l2ZSBicmVha3BvaW50cyBmb3IgcHJvdG90eXBlcyBpZiBhcHBsaWNhYmxlXG4vLy8gQHR5cGUgQm9vbGVhblxuJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gQnV0dG9uIGN1cnNvcidzIHZhbHVlLCBgYXV0b2AgYnkgZGVmYXVsdFxuLy8vIEB0eXBlIEtleXdvcmRcbiRnbG9iYWwtYnV0dG9uLWN1cnNvcjogYXV0byAhZGVmYXVsdDtcblxuQGlmIG5vdCBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSB7XG4gIEBlcnJvciAnSW4gJGZvdW5kYXRpb24tcGFsZXR0ZSwgeW91IG11c3QgaGF2ZSBhIGNvbG9yIG5hbWVkIFwicHJpbWFyeVwiLic7XG59XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciB0ZXh0IGRpcmVjdGlvblxuJGdsb2JhbC1sZWZ0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgcmlnaHQsIGxlZnQpO1xuJGdsb2JhbC1yaWdodDogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGxlZnQsIHJpZ2h0KTtcblxuLy8gSW50ZXJuYWwgdmFyaWFibGUgdGhhdCBjb250YWlucyB0aGUgZmxleCBqdXN0aWZ5aW5nIG9wdGlvbnNcbiQtemYtZmxleC1qdXN0aWZ5OiAtemYtZmxleC1qdXN0aWZ5KCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24pO1xuXG4vLy8gR2xvYmFsIHRvbGVyYW5jZSBmb3IgY29sb3IgcGljayBjb250cmFzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2U6IDAgIWRlZmF1bHQ7XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciBjb2xvcnNcbkBpbmNsdWRlIGFkZC1mb3VuZGF0aW9uLWNvbG9ycztcblxuQG1peGluIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcyB7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbm9ybWFsaXplO1xuXG4gIC8vIFRoZXNlIHN0eWxlcyBhcmUgYXBwbGllZCB0byBhIDxtZXRhPiB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdFxuICAuZm91bmRhdGlvbi1tcSB7XG4gICAgZm9udC1mYW1pbHk6ICcjey16Zi1icC1zZXJpYWxpemUoJGJyZWFrcG9pbnRzKX0nO1xuICB9XG5cbiAgaHRtbCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gU2V0IGJveC1zaXppbmcgZ2xvYmFsbHkgdG8gaGFuZGxlIHBhZGRpbmcgYW5kIGJvcmRlciB3aWR0aHNcbiAgKixcbiAgKjo6YmVmb3JlLFxuICAqOjphZnRlciB7XG4gICAgYm94LXNpemluZzogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIERlZmF1bHQgYm9keSBzdHlsZXNcbiAgYm9keSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBAaWYgKCRib2R5LXNhZmUtcGFkZGluZykge1xuICAgICAgLy8gdXNpbmcgZW52aXJvbm1lbnQgdmFyaWFibGVzIHRvIGFjY291bnQgZm9yIG5vbi1yZWN0YW5ndWxhciBkaXNwbGF5cyBlLmcuIHBob25lcyB3aXRoIG5vdGNoZXNcbiAgICAgIHBhZGRpbmctdG9wOiBlbnYoc2FmZS1hcmVhLWluc2V0LXRvcCk7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSk7XG4gICAgICBwYWRkaW5nLWxlZnQ6IGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCk7XG4gICAgfVxuXG4gICAgYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG5cbiAgICBAaWYgKCRib2R5LWFudGlhbGlhc2VkKSB7XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gICAgfVxuICB9XG5cbiAgaW1nIHtcbiAgICAvLyBHZXQgcmlkIG9mIGdhcCB1bmRlciBpbWFnZXMgYnkgbWFraW5nIHRoZW0gZGlzcGxheTogaW5saW5lLWJsb2NrOyBieSBkZWZhdWx0XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAvLyBHcmlkIGRlZmF1bHRzIHRvIGdldCBpbWFnZXMgYW5kIGVtYmVkcyB0byB3b3JrIHByb3Blcmx5XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHRleHRhcmVhIHRha2VzIG9uIGhlaWdodCBhdXRvbWF0aWNhbGx5XG4gIHRleHRhcmVhIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogNTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gIC8vIE1ha2Ugc2VsZWN0IGVsZW1lbnRzIGFyZSAxMDAlIHdpZHRoIGJ5IGRlZmF1bHRcbiAgc2VsZWN0IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gU3R5bGVzIEdvb2dsZSBNYXBzIGFuZCBNYXBRdWVzdCBlbWJlZHMgcHJvcGVybHlcbiAgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1pZHNcbiAgLm1hcF9jYW52YXMsXG4gIC5tcWEtZGlzcGxheSB7XG4gICAgaW1nLFxuICAgIGVtYmVkLFxuICAgIG9iamVjdCB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCA8YnV0dG9uPiBzdHlsZXMgY3JlYXRlZCBieSBtb3N0IGJyb3dzZXJzXG4gIGJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY3Vyc29yOiAkZ2xvYmFsLWJ1dHRvbi1jdXJzb3I7XG4gIH1cblxuICAvLyBQcmV2ZW50IHRleHQgb3ZlcmZsb3cgb24gcHJlXG4gIHByZSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICB9XG5cbiAgLy8gTWFrZSByZXNldCBpbmhlcml0IGZvbnQtZmFtaWx5IGluc3RlYWQgb2Ygc2V0dGluZ3Mgc2Fucy1zZXJpZlxuICBidXR0b24sXG4gIGlucHV0LFxuICBvcHRncm91cCxcbiAgc2VsZWN0LFxuICB0ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBJbnRlcm5hbCBjbGFzc2VzIHRvIHNob3cvaGlkZSBlbGVtZW50cyBpbiBKYXZhU2NyaXB0XG4gIC5pcy12aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmlzLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvLyAgRm91bmRhdGlvblByZXNzIHNldHRpbmdzLlxuLy8gIEJhc2VkIG9uIEZvdW5kYXRpb24gdjYuNC4xXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vXG4vLyAgVGFibGUgb2YgQ29udGVudHM6XG4vL1xuLy8gICAxLiBHbG9iYWxcbi8vICAgMi4gQnJlYWtwb2ludHNcbi8vICAgMy4gVGhlIEdyaWRcbi8vICAgNC4gQmFzZSBUeXBvZ3JhcGh5XG4vLyAgIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xuLy8gICA2LiBBYmlkZVxuLy8gICA3LiBBY2NvcmRpb25cbi8vICAgOC4gQWNjb3JkaW9uIE1lbnVcbi8vICAgOS4gQmFkZ2Vcbi8vICAxMC4gQnJlYWRjcnVtYnNcbi8vICAxMS4gQnV0dG9uXG4vLyAgMTIuIEJ1dHRvbiBHcm91cFxuLy8gIDEzLiBDYWxsb3V0XG4vLyAgMTQuIENhcmRcbi8vICAxNS4gQ2xvc2UgQnV0dG9uXG4vLyAgMTYuIERyaWxsZG93blxuLy8gIDE3LiBEcm9wZG93blxuLy8gIDE4LiBEcm9wZG93biBNZW51XG4vLyAgMTkuIEZsZXhib3ggVXRpbGl0aWVzXG4vLyAgMjAuIEZvcm1zXG4vLyAgMjEuIExhYmVsXG4vLyAgMjIuIE1lZGlhIE9iamVjdFxuLy8gIDIzLiBNZW51XG4vLyAgMjQuIE1ldGVyXG4vLyAgMjUuIE9mZi1jYW52YXNcbi8vICAyNi4gT3JiaXRcbi8vICAyNy4gUGFnaW5hdGlvblxuLy8gIDI4LiBQcm9ncmVzcyBCYXJcbi8vICAyOS4gUHJvdG90eXBlIEFycm93XG4vLyAgMzAuIFByb3RvdHlwZSBCb3JkZXItQm94XG4vLyAgMzEuIFByb3RvdHlwZSBCb3JkZXItTm9uZVxuLy8gIDMyLiBQcm90b3R5cGUgQm9yZGVyZWRcbi8vICAzMy4gUHJvdG90eXBlIERpc3BsYXlcbi8vICAzNC4gUHJvdG90eXBlIEZvbnQtU3R5bGluZ1xuLy8gIDM1LiBQcm90b3R5cGUgTGlzdC1TdHlsZS1UeXBlXG4vLyAgMzYuIFByb3RvdHlwZSBPdmVyZmxvd1xuLy8gIDM3LiBQcm90b3R5cGUgUG9zaXRpb25cbi8vICAzOC4gUHJvdG90eXBlIFJvdW5kZWRcbi8vICAzOS4gUHJvdG90eXBlIFNlcGFyYXRvclxuLy8gIDQwLiBQcm90b3R5cGUgU2hhZG93XG4vLyAgNDEuIFByb3RvdHlwZSBTaXppbmdcbi8vICA0Mi4gUHJvdG90eXBlIFNwYWNpbmdcbi8vICA0My4gUHJvdG90eXBlIFRleHQtRGVjb3JhdGlvblxuLy8gIDQ0LiBQcm90b3R5cGUgVGV4dC1UcmFuc2Zvcm1hdGlvblxuLy8gIDQ1LiBQcm90b3R5cGUgVGV4dC1VdGlsaXRpZXNcbi8vICA0Ni4gUmVzcG9uc2l2ZSBFbWJlZFxuLy8gIDQ3LiBSZXZlYWxcbi8vICA0OC4gU2xpZGVyXG4vLyAgNDkuIFN3aXRjaFxuLy8gIDUwLiBUYWJsZVxuLy8gIDUxLiBUYWJzXG4vLyAgNTIuIFRodW1ibmFpbFxuLy8gIDUzLiBUaXRsZSBCYXJcbi8vICA1NC4gVG9vbHRpcFxuLy8gIDU1LiBUb3AgQmFyXG4vLyAgNTYuIFh5IEdyaWRcblxuQGltcG9ydCAndXRpbC91dGlsJztcbkBpbXBvcnQgJ2dsb2JhbC9jb2xvcnMnO1xuXG4vLyAxLiBHbG9iYWxcbi8vIC0tLS0tLS0tLVxuXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJTtcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDEyMDApO1xuJGdsb2JhbC1saW5laGVpZ2h0OiAxLjU7XG4kZm91bmRhdGlvbi1wYWxldHRlOiAoXG4gIHByaW1hcnk6ICMxNzc5YmEsXG4gIHNlY29uZGFyeTogIzc2NzY3NixcbiAgc3VjY2VzczogIzNhZGI3NixcbiAgd2FybmluZzogI2ZmYWUwMCxcbiAgYWxlcnQ6ICNjYzRiMzcsXG4pO1xuJGxpZ2h0LWdyYXk6ICNlNmU2ZTY7XG4kbWVkaXVtLWdyYXk6ICNjYWNhY2E7XG4kZGFyay1ncmF5OiAjOGE4YThhO1xuJGJsYWNrOiAjMGEwYTBhO1xuJHdoaXRlOiAjZmVmZWZlO1xuJGJvZHktYmFja2dyb3VuZDogJHdoaXRlO1xuJGJvZHktZm9udC1jb2xvcjogJGJsYWNrO1xuJGJvZHktZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBcIlJvYm90b1wiLCBcIk94eWdlblwiLCBcIlVidW50dVwiLCBcIkNhbnRhcmVsbFwiLCBcIkZpcmEgU2Fuc1wiLCBcIkRyb2lkIFNhbnNcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmO1xuJGJvZHktYW50aWFsaWFzZWQ6IHRydWU7XG4kZ2xvYmFsLW1hcmdpbjogMXJlbTtcbiRnbG9iYWwtcGFkZGluZzogMXJlbTtcbiRnbG9iYWwtcG9zaXRpb246IDFyZW07XG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbDtcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQ7XG4kZ2xvYmFsLXJhZGl1czogMDtcbiRnbG9iYWwtbWVudS1wYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luOiAxcmVtO1xuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogbHRyO1xuJGdsb2JhbC1mbGV4Ym94OiB0cnVlO1xuJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM6IGZhbHNlO1xuJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZTogMDtcbiRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kczogdHJ1ZTtcblxuQGluY2x1ZGUgYWRkLWZvdW5kYXRpb24tY29sb3JzO1xuXG4vLyAyLiBCcmVha3BvaW50c1xuLy8gLS0tLS0tLS0tLS0tLS1cblxuJGJyZWFrcG9pbnRzOiAoXG4gIHNtYWxsOiAwLFxuICBtZWRpdW06IDY0MXB4LFxuICBsYXJnZTogMTAyNHB4LFxuICB4bGFyZ2U6IDEyMDBweCxcbiAgeHhsYXJnZTogMTQ0MHB4LFxuKTtcbiRwcmludC1icmVha3BvaW50OiBsYXJnZTtcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UpO1xuXG4vLyAzLiBUaGUgR3JpZFxuLy8gLS0tLS0tLS0tLS1cblxuJGdyaWQtcm93LXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJGdyaWQtY29sdW1uLWNvdW50OiAxMjtcbiRncmlkLWNvbHVtbi1ndXR0ZXI6IChcbiAgc21hbGw6IDIwcHgsXG4gIG1lZGl1bTogMzBweCxcbik7XG4kZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZTogdHJ1ZTtcbiRncmlkLWNvbHVtbi1hbGlhczogJ2NvbHVtbnMnO1xuJGJsb2NrLWdyaWQtbWF4OiA4O1xuXG4vLyA0LiBCYXNlIFR5cG9ncmFwaHlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiRoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsO1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4kaGVhZGVyLWNvbG9yOiBpbmhlcml0O1xuJGhlYWRlci1saW5laGVpZ2h0OiAxLjQ7XG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiRoZWFkZXItc3R5bGVzOiAoXG4gIHNtYWxsOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAyNCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAxOSksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxOCksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAxNyksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4gIG1lZGl1bTogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogNDgpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogNDApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMzEpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMjUpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuKTtcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiRzbWFsbC1mb250LXNpemU6IDgwJTtcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5O1xuJHBhcmFncmFwaC1saW5laGVpZ2h0OiAxLjY7XG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IDFyZW07XG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4kY29kZS1jb2xvcjogJGJsYWNrO1xuJGNvZGUtZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4kY29kZS1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGNvZGUtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kY29kZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kY29kZS1wYWRkaW5nOiByZW0tY2FsYygyIDUgMSk7XG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRhbmNob3ItY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRhbmNob3ItY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmU7XG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZTtcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaHItbWFyZ2luOiByZW0tY2FsYygyMCkgYXV0bztcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW07XG4kZGVmbmxpc3QtdGVybS13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4kZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tOiAwLjNyZW07XG4kYmxvY2txdW90ZS1jb2xvcjogJGRhcmstZ3JheTtcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSk7XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5O1xuJGNpdGUtcHNldWRvLWNvbnRlbnQ6ICdcXDIwMTQgXFwwMDIwJztcbiRrZXlzdHJva2UtZm9udDogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiRrZXlzdHJva2UtY29sb3I6ICRibGFjaztcbiRrZXlzdHJva2UtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4ka2V5c3Ryb2tlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNCAwKTtcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2s7XG5cbi8vIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1O1xuJGxlYWQtbGluZWhlaWdodDogMS42O1xuJHN1YmhlYWRlci1saW5laGVpZ2h0OiAxLjQ7XG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5O1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJHN1YmhlYWRlci1tYXJnaW4tdG9wOiAwLjJyZW07XG4kc3ViaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiRzdGF0LWZvbnQtc2l6ZTogMi41cmVtO1xuXG4vLyA2LiBBYmlkZVxuLy8gLS0tLS0tLS1cblxuJGFiaWRlLWlucHV0czogdHJ1ZTtcbiRhYmlkZS1sYWJlbHM6IHRydWU7XG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpO1xuJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRpbnB1dC1lcnJvci1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiRpbnB1dC1lcnJvci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblxuLy8gNy4gQWNjb3JkaW9uXG4vLyAtLS0tLS0tLS0tLS1cblxuJGFjY29yZGlvbi1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kYWNjb3JkaW9uLXBsdXNtaW51czogdHJ1ZTtcbiRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kYWNjb3JkaW9uLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xuJGFjY29yZGlvbi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMXJlbTtcbiRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4kYWNjb3JkaW9uLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogMXJlbTtcblxuLy8gOC4gQWNjb3JkaW9uIE1lbnVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG5cbiRhY2NvcmRpb25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuJGFjY29yZGlvbm1lbnUtbmVzdGVkLW1hcmdpbjogJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW47XG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXBhZGRpbmc6ICRhY2NvcmRpb25tZW51LXBhZGRpbmc7XG4kYWNjb3JkaW9ubWVudS1hcnJvd3M6IHRydWU7XG4kYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvcjogJHdoaXRlO1xuJGFjY29yZGlvbm1lbnUtaXRlbS1iYWNrZ3JvdW5kOiBudWxsO1xuJGFjY29yZGlvbm1lbnUtYm9yZGVyOiBudWxsO1xuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtYmFja2dyb3VuZDogbnVsbDtcbiRhY2NvcmRpb24tc3VibWVudS10b2dnbGUtYm9yZGVyOiAkYWNjb3JkaW9ubWVudS1ib3JkZXI7XG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aDogNDBweDtcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWhlaWdodDogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg7XG4kYWNjb3JkaW9ubWVudS1hcnJvdy1zaXplOiA2cHg7XG5cbi8vIDkuIEJhZGdlXG4vLyAtLS0tLS0tLVxuXG4kYmFkZ2UtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kYmFkZ2UtY29sb3I6ICR3aGl0ZTtcbiRiYWRnZS1jb2xvci1hbHQ6ICRibGFjaztcbiRiYWRnZS1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xuJGJhZGdlLXBhZGRpbmc6IDAuM2VtO1xuJGJhZGdlLW1pbndpZHRoOiAyLjFlbTtcbiRiYWRnZS1mb250LXNpemU6IDAuNnJlbTtcblxuLy8gMTAuIEJyZWFkY3J1bWJzXG4vLyAtLS0tLS0tLS0tLS0tLS1cblxuJGJyZWFkY3J1bWJzLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDA7XG4kYnJlYWRjcnVtYnMtaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDExKTtcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWN1cnJlbnQ6ICRibGFjaztcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXk7XG4kYnJlYWRjcnVtYnMtaXRlbS1tYXJnaW46IDAuNzVyZW07XG4kYnJlYWRjcnVtYnMtaXRlbS11cHBlcmNhc2U6IHRydWU7XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3I6IHRydWU7XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbTogJy8nO1xuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWl0ZW0tcnRsOiAnXFxcXCc7XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItY29sb3I6ICRtZWRpdW0tZ3JheTtcblxuLy8gMTEuIEJ1dHRvblxuLy8gLS0tLS0tLS0tLVxuXG4kYnV0dG9uLWZvbnQtZmFtaWx5OiBpbmhlcml0O1xuJGJ1dHRvbi1wYWRkaW5nOiAwLjg1ZW0gMWVtO1xuJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwO1xuJGJ1dHRvbi1maWxsOiBzb2xpZDtcbiRidXR0b24tYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRidXR0b24tYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTE1JSk7XG4kYnV0dG9uLWNvbG9yOiAkd2hpdGU7XG4kYnV0dG9uLWNvbG9yLWFsdDogJGJsYWNrO1xuJGJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoOiAxcHg7XG4kYnV0dG9uLXNpemVzOiAoXG4gIHRpbnk6IDAuNnJlbSxcbiAgc21hbGw6IDAuNzVyZW0sXG4gIGRlZmF1bHQ6IDAuOXJlbSxcbiAgbGFyZ2U6IDEuMjVyZW0sXG4pO1xuJGJ1dHRvbi1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xuJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkOiAwLjI1O1xuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzczogLTIwJTtcbiRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzczogLTUwJTtcbiRidXR0b24tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG5cbi8vIDEyLiBCdXR0b24gR3JvdXBcbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJGJ1dHRvbmdyb3VwLW1hcmdpbjogMXJlbTtcbiRidXR0b25ncm91cC1zcGFjaW5nOiAxcHg7XG4kYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3I6ICcuYnV0dG9uJztcbiRidXR0b25ncm91cC1leHBhbmQtbWF4OiA2O1xuJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoOiB0cnVlO1xuXG4vLyAxMy4gQ2FsbG91dFxuLy8gLS0tLS0tLS0tLS1cblxuJGNhbGxvdXQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlOiA4NSU7XG4kY2FsbG91dC1ib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRibGFjaywgMC4yNSk7XG4kY2FsbG91dC1tYXJnaW46IDAgMCAxcmVtIDA7XG4kY2FsbG91dC1wYWRkaW5nOiAxcmVtO1xuJGNhbGxvdXQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRjYWxsb3V0LWZvbnQtY29sb3ItYWx0OiAkYm9keS1iYWNrZ3JvdW5kO1xuJGNhbGxvdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRjYWxsb3V0LWxpbmstdGludDogMzAlO1xuXG4vLyAxNC4gQ2FyZFxuLy8gLS0tLS0tLS1cblxuJGNhcmQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGNhcmQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRjYXJkLWRpdmlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kY2FyZC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiRjYXJkLXNoYWRvdzogbm9uZTtcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGNhcmQtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJGNhcmQtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG5cbi8vIDE1LiBDbG9zZSBCdXR0b25cbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJGNsb3NlYnV0dG9uLXBvc2l0aW9uOiByaWdodCB0b3A7XG4kY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWw6IChcbiAgc21hbGw6IDAuNjZyZW0sXG4gIG1lZGl1bTogMXJlbSxcbik7XG4kY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsOiAoXG4gIHNtYWxsOiAwLjMzZW0sXG4gIG1lZGl1bTogMC41cmVtLFxuKTtcbiRjbG9zZWJ1dHRvbi1zaXplOiAoXG4gIHNtYWxsOiAxLjVlbSxcbiAgbWVkaXVtOiAyZW0sXG4pO1xuJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQ6IDE7XG4kY2xvc2VidXR0b24tY29sb3I6ICRkYXJrLWdyYXk7XG4kY2xvc2VidXR0b24tY29sb3ItaG92ZXI6ICRibGFjaztcblxuLy8gMTYuIERyaWxsZG93blxuLy8gLS0tLS0tLS0tLS0tLVxuXG4kZHJpbGxkb3duLXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBsaW5lYXI7XG4kZHJpbGxkb3duLWFycm93czogdHJ1ZTtcbiRkcmlsbGRvd24tcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kZHJpbGxkb3duLW5lc3RlZC1tYXJnaW46IDA7XG4kZHJpbGxkb3duLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRkcmlsbGRvd24tc3VibWVudS1wYWRkaW5nOiAkZHJpbGxkb3duLXBhZGRpbmc7XG4kZHJpbGxkb3duLXN1Ym1lbnUtYmFja2dyb3VuZDogJHdoaXRlO1xuJGRyaWxsZG93bi1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kZHJpbGxkb3duLWFycm93LXNpemU6IDZweDtcblxuLy8gMTcuIERyb3Bkb3duXG4vLyAtLS0tLS0tLS0tLS1cblxuJGRyb3Bkb3duLXBhZGRpbmc6IDFyZW07XG4kZHJvcGRvd24tYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZHJvcGRvd24tZm9udC1zaXplOiAxcmVtO1xuJGRyb3Bkb3duLXdpZHRoOiAzMDBweDtcbiRkcm9wZG93bi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGRyb3Bkb3duLXNpemVzOiAoXG4gIHRpbnk6IDEwMHB4LFxuICBzbWFsbDogMjAwcHgsXG4gIGxhcmdlOiA0MDBweCxcbik7XG5cbi8vIDE4LiBEcm9wZG93biBNZW51XG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuXG4kZHJvcGRvd25tZW51LWFycm93czogdHJ1ZTtcbiRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3I6ICRhbmNob3ItY29sb3I7XG4kZHJvcGRvd25tZW51LWFycm93LXNpemU6IDZweDtcbiRkcm9wZG93bm1lbnUtYXJyb3ctcGFkZGluZzogMS41cmVtO1xuJGRyb3Bkb3dubWVudS1taW4td2lkdGg6IDIwMHB4O1xuJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kZHJvcGRvd25tZW51LXN1Ym1lbnUtYmFja2dyb3VuZDogJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kO1xuJGRyb3Bkb3dubWVudS1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcbiRkcm9wZG93bm1lbnUtbmVzdGVkLW1hcmdpbjogMDtcbiRkcm9wZG93bm1lbnUtc3VibWVudS1wYWRkaW5nOiAkZHJvcGRvd25tZW51LXBhZGRpbmc7XG4kZHJvcGRvd25tZW51LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRkcm9wZG93bi1tZW51LWl0ZW0tY29sb3ItYWN0aXZlOiAkbGlnaHQtZ3JheTtcbiRkcm9wZG93bi1tZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGxpZ2h0ZW4oJGRhcmstbmF2LWNvbG9yLCA1JSk7XG5cbi8vIDE5LiBGbGV4Ym94IFV0aWxpdGllc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRmbGV4LXNvdXJjZS1vcmRlcmluZy1jb3VudDogNjtcbiRmbGV4Ym94LXJlc3BvbnNpdmUtYnJlYWtwb2ludHM6IHRydWU7XG5cbi8vIDIwLiBGb3Jtc1xuLy8gLS0tLS0tLS0tXG5cbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApO1xuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCk7XG4kbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMyk7XG4kZm9ybS1zcGFjaW5nOiByZW0tY2FsYygxNik7XG4kaGVscHRleHQtY29sb3I6ICRibGFjaztcbiRoZWxwdGV4dC1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiRoZWxwdGV4dC1mb250LXN0eWxlOiBpdGFsaWM7XG4kaW5wdXQtcHJlZml4LWNvbG9yOiAkYmxhY2s7XG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGlucHV0LXByZWZpeC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtcHJlZml4LXBhZGRpbmc6IDFyZW07XG4kZm9ybS1sYWJlbC1jb2xvcjogJGJsYWNrO1xuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuODtcbiRzZWxlY3QtYmFja2dyb3VuZDogJHdoaXRlO1xuJHNlbGVjdC10cmlhbmdsZS1jb2xvcjogJGRhcmstZ3JheTtcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRpbnB1dC1jb2xvcjogJGJsYWNrO1xuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRpbnB1dC1saW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0O1xuJGlucHV0LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzOiAkd2hpdGU7XG4kaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDogJGxpZ2h0LWdyYXk7XG4kaW5wdXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGlucHV0LWJvcmRlci1mb2N1czogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4kaW5wdXQtcGFkZGluZzogJGZvcm0tc3BhY2luZyAvIDI7XG4kaW5wdXQtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIDAuMSk7XG4kaW5wdXQtc2hhZG93LWZvY3VzOiAwIDAgNXB4ICRtZWRpdW0tZ3JheTtcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkO1xuJGlucHV0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZTtcbiRpbnB1dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGZvcm0tYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDIxLiBMYWJlbFxuLy8gLS0tLS0tLS0tXG5cbiRsYWJlbC1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRsYWJlbC1jb2xvcjogJHdoaXRlO1xuJGxhYmVsLWNvbG9yLWFsdDogJGJsYWNrO1xuJGxhYmVsLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kbGFiZWwtZm9udC1zaXplOiAwLjhyZW07XG4kbGFiZWwtcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW07XG4kbGFiZWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMjIuIE1lZGlhIE9iamVjdFxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDogMTAwJTtcblxuLy8gMjMuIE1lbnVcbi8vIC0tLS0tLS0tXG5cbiRtZW51LW1hcmdpbjogMDtcbiRtZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luO1xuJG1lbnUtaXRlbXMtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kbWVudS1zaW1wbGUtbWFyZ2luOiAxcmVtO1xuJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU6ICR3aGl0ZTtcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KTtcbiRtZW51LWljb24tc3BhY2luZzogMC4yNXJlbTtcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XG4kbWVudS1zdGF0ZS1iYWNrLWNvbXBhdDogdHJ1ZTtcbiRtZW51LWNlbnRlcmVkLWJhY2stY29tcGF0OiB0cnVlO1xuXG4vLyAyNC4gTWV0ZXJcbi8vIC0tLS0tLS0tLVxuXG4kbWV0ZXItaGVpZ2h0OiAxcmVtO1xuJG1ldGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kbWV0ZXItYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJG1ldGVyLWZpbGwtZ29vZDogJHN1Y2Nlc3MtY29sb3I7XG4kbWV0ZXItZmlsbC1tZWRpdW06ICR3YXJuaW5nLWNvbG9yO1xuJG1ldGVyLWZpbGwtYmFkOiAkYWxlcnQtY29sb3I7XG5cbi8vIDI1LiBPZmYtY2FudmFzXG4vLyAtLS0tLS0tLS0tLS0tLVxuXG4kb2ZmY2FudmFzLXNpemU6IDI4MHB4O1xuJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplOiAyNTBweDtcbiRvZmZjYW52YXMtYmFja2dyb3VuZDogJGRhcmstbmF2LWNvbG9yO1xuJG9mZmNhbnZhcy1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoJGJsYWNrLCAwLjcpO1xuJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZTogMjBweDtcbiRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yOiByZ2JhKCRibGFjaywgMC4yNSk7XG4kb2ZmY2FudmFzLW92ZXJsYXktemluZGV4OiAxMTtcbiRvZmZjYW52YXMtcHVzaC16aW5kZXg6IDEyO1xuJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDogMTM7XG4kb2ZmY2FudmFzLXJldmVhbC16aW5kZXg6IDEyO1xuJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aDogMC41cztcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc6IGVhc2U7XG4kb2ZmY2FudmFzLWZpeGVkLXJldmVhbDogdHJ1ZTtcbiRvZmZjYW52YXMtZXhpdC1iYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMC4yNSk7XG4kbWFpbmNvbnRlbnQtY2xhc3M6ICdvZmYtY2FudmFzLWNvbnRlbnQnO1xuXG4vLyAyNi4gT3JiaXRcbi8vIC0tLS0tLS0tLVxuXG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZC1hY3RpdmU6ICRkYXJrLWdyYXk7XG4kb3JiaXQtYnVsbGV0LWRpYW1ldGVyOiAxLjJyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbjogMC4xcmVtO1xuJG9yYml0LWJ1bGxldC1tYXJnaW4tdG9wOiAwLjhyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbi1ib3R0b206IDAuOHJlbTtcbiRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjUpO1xuJG9yYml0LWNhcHRpb24tcGFkZGluZzogMXJlbTtcbiRvcmJpdC1jb250cm9sLWJhY2tncm91bmQtaG92ZXI6IHJnYmEoJGJsYWNrLCAwLjUpO1xuJG9yYml0LWNvbnRyb2wtcGFkZGluZzogMXJlbTtcbiRvcmJpdC1jb250cm9sLXppbmRleDogMTA7XG5cbi8vIDI3LiBQYWdpbmF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLVxuXG4kcGFnaW5hdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiRwYWdpbmF0aW9uLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvcjogJGJsYWNrO1xuJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nOiByZW0tY2FsYygzIDEwKTtcbiRwYWdpbmF0aW9uLWl0ZW0tc3BhY2luZzogcmVtLWNhbGMoMSk7XG4kcGFnaW5hdGlvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheTtcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50OiAkcHJpbWFyeS1jb2xvcjtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudDogJHdoaXRlO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5O1xuJHBhZ2luYXRpb24tZWxsaXBzaXMtY29sb3I6ICRibGFjaztcbiRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtczogZmFsc2U7XG4kcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtOiBmYWxzZTtcbiRwYWdpbmF0aW9uLWFycm93czogdHJ1ZTtcblxuLy8gMjguIFByb2dyZXNzIEJhclxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAxcmVtO1xuJHByb2dyZXNzLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRwcm9ncmVzcy1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiRwcm9ncmVzcy1tZXRlci1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRwcm9ncmVzcy1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAyOS4gUHJvdG90eXBlIEFycm93XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtYXJyb3ctZGlyZWN0aW9uczogKFxuICBkb3duLFxuICB1cCxcbiAgcmlnaHQsXG4gIGxlZnRcbik7XG4kcHJvdG90eXBlLWFycm93LXNpemU6IDAuNDM3NXJlbTtcbiRwcm90b3R5cGUtYXJyb3ctY29sb3I6ICRibGFjaztcblxuLy8gMzAuIFByb3RvdHlwZSBCb3JkZXItQm94XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1ib3JkZXItYm94LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcblxuLy8gMzEuIFByb3RvdHlwZSBCb3JkZXItTm9uZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWJvcmRlci1ub25lLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcblxuLy8gMzIuIFByb3RvdHlwZSBCb3JkZXJlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWJvcmRlcmVkLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtYm9yZGVyLXdpZHRoOiByZW0tY2FsYygxKTtcbiRwcm90b3R5cGUtYm9yZGVyLXR5cGU6IHNvbGlkO1xuJHByb3RvdHlwZS1ib3JkZXItY29sb3I6ICRtZWRpdW0tZ3JheTtcblxuLy8gMzMuIFByb3RvdHlwZSBEaXNwbGF5XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1kaXNwbGF5LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtZGlzcGxheTogKFxuICBpbmxpbmUsXG4gIGlubGluZS1ibG9jayxcbiAgYmxvY2ssXG4gIHRhYmxlLFxuICB0YWJsZS1jZWxsXG4pO1xuXG4vLyAzNC4gUHJvdG90eXBlIEZvbnQtU3R5bGluZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1mb250LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtd2lkZS1sZXR0ZXItc3BhY2luZzogcmVtLWNhbGMoNCk7XG4kcHJvdG90eXBlLWZvbnQtbm9ybWFsOiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kcHJvdG90eXBlLWZvbnQtYm9sZDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblxuLy8gMzUuIFByb3RvdHlwZSBMaXN0LVN0eWxlLVR5cGVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtbGlzdC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXN0eWxlLXR5cGUtdW5vcmRlcmVkOiAoXG4gIGRpc2MsXG4gIGNpcmNsZSxcbiAgc3F1YXJlXG4pO1xuJHByb3RvdHlwZS1zdHlsZS10eXBlLW9yZGVyZWQ6IChcbiAgZGVjaW1hbCxcbiAgbG93ZXItYWxwaGEsXG4gIGxvd2VyLWxhdGluLFxuICBsb3dlci1yb21hbixcbiAgdXBwZXItYWxwaGEsXG4gIHVwcGVyLWxhdGluLFxuICB1cHBlci1yb21hblxuKTtcblxuLy8gMzYuIFByb3RvdHlwZSBPdmVyZmxvd1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLW92ZXJmbG93LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtb3ZlcmZsb3c6IChcbiAgdmlzaWJsZSxcbiAgaGlkZGVuLFxuICBzY3JvbGxcbik7XG5cbi8vIDM3LiBQcm90b3R5cGUgUG9zaXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1wb3NpdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXBvc2l0aW9uOiAoXG4gIHN0YXRpYyxcbiAgcmVsYXRpdmUsXG4gIGFic29sdXRlLFxuICBmaXhlZFxuKTtcbiRwcm90b3R5cGUtcG9zaXRpb24tei1pbmRleDogOTc1O1xuXG4vLyAzOC4gUHJvdG90eXBlIFJvdW5kZWRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXJvdW5kZWQtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1ib3JkZXItcmFkaXVzOiByZW0tY2FsYygzKTtcblxuLy8gMzkuIFByb3RvdHlwZSBTZXBhcmF0b3Jcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtc2VwYXJhdG9yLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWFsaWduOiBjZW50ZXI7XG4kcHJvdG90eXBlLXNlcGFyYXRvci1oZWlnaHQ6IHJlbS1jYWxjKDIpO1xuJHByb3RvdHlwZS1zZXBhcmF0b3Itd2lkdGg6IDNyZW07XG4kcHJvdG90eXBlLXNlcGFyYXRvci1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRwcm90b3R5cGUtc2VwYXJhdG9yLW1hcmdpbi10b3A6ICRnbG9iYWwtbWFyZ2luO1xuXG4vLyA0MC4gUHJvdG90eXBlIFNoYWRvd1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1zaGFkb3ctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1ib3gtc2hhZG93OiAwIDJweCA1cHggMCByZ2JhKDAsMCwwLC4xNiksXG4gICAgICAgICAgICAgICAgICAgICAgIDAgMnB4IDEwcHggMCByZ2JhKDAsMCwwLC4xMik7XG5cbi8vIDQxLiBQcm90b3R5cGUgU2l6aW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXNpemluZy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXNpemluZzogKFxuICB3aWR0aCxcbiAgaGVpZ2h0XG4pO1xuJHByb3RvdHlwZS1zaXplczogKFxuICAyNTogMjUlLFxuICA1MDogNTAlLFxuICA3NTogNzUlLFxuICAxMDA6IDEwMCVcbik7XG5cbi8vIDQyLiBQcm90b3R5cGUgU3BhY2luZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtc3BhY2luZy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXNwYWNlcnMtY291bnQ6IDM7XG5cbi8vIDQzLiBQcm90b3R5cGUgVGV4dC1EZWNvcmF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWRlY29yYXRpb24tYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS10ZXh0LWRlY29yYXRpb246IChcbiAgb3ZlcmxpbmUsXG4gIHVuZGVybGluZSxcbiAgbGluZS10aHJvdWdoLFxuKTtcblxuLy8gNDQuIFByb3RvdHlwZSBUZXh0LVRyYW5zZm9ybWF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS10cmFuc2Zvcm1hdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXRleHQtdHJhbnNmb3JtYXRpb246IChcbiAgbG93ZXJjYXNlLFxuICB1cHBlcmNhc2UsXG4gIGNhcGl0YWxpemVcbik7XG5cbi8vIDQ1LiBQcm90b3R5cGUgVGV4dC1VdGlsaXRpZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS11dGlsaXRpZXMtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS10ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblxuLy8gNDYuIFJlc3BvbnNpdmUgRW1iZWRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRyZXNwb25zaXZlLWVtYmVkLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE2KTtcbiRyZXNwb25zaXZlLWVtYmVkLXJhdGlvczogKFxuICBkZWZhdWx0OiA0IGJ5IDMsXG4gIHdpZGVzY3JlZW46IDE2IGJ5IDksXG4pO1xuXG4vLyA0Ny4gUmV2ZWFsXG4vLyAtLS0tLS0tLS0tXG5cbiRyZXZlYWwtYmFja2dyb3VuZDogJHdoaXRlO1xuJHJldmVhbC13aWR0aDogNjAwcHg7XG4kcmV2ZWFsLW1heC13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRyZXZlYWwtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJHJldmVhbC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kcmV2ZWFsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kcmV2ZWFsLXppbmRleDogMTAwNTtcbiRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC40NSk7XG5cbi8vIDQ4LiBTbGlkZXJcbi8vIC0tLS0tLS0tLS1cblxuJHNsaWRlci13aWR0aC12ZXJ0aWNhbDogMC41cmVtO1xuJHNsaWRlci10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiRzbGlkZXItaGVpZ2h0OiAwLjVyZW07XG4kc2xpZGVyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJHNsaWRlci1maWxsLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRzbGlkZXItaGFuZGxlLWhlaWdodDogMS40cmVtO1xuJHNsaWRlci1oYW5kbGUtd2lkdGg6IDEuNHJlbTtcbiRzbGlkZXItaGFuZGxlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHNsaWRlci1vcGFjaXR5LWRpc2FibGVkOiAwLjI1O1xuJHNsaWRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyA0OS4gU3dpdGNoXG4vLyAtLS0tLS0tLS0tXG5cbiRzd2l0Y2gtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHN3aXRjaC1iYWNrZ3JvdW5kLWFjdGl2ZTogJHByaW1hcnktY29sb3I7XG4kc3dpdGNoLWhlaWdodDogMnJlbTtcbiRzd2l0Y2gtaGVpZ2h0LXRpbnk6IDEuNXJlbTtcbiRzd2l0Y2gtaGVpZ2h0LXNtYWxsOiAxLjc1cmVtO1xuJHN3aXRjaC1oZWlnaHQtbGFyZ2U6IDIuNXJlbTtcbiRzd2l0Y2gtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRzd2l0Y2gtbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbjtcbiRzd2l0Y2gtcGFkZGxlLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRzd2l0Y2gtcGFkZGxlLW9mZnNldDogMC4yNXJlbTtcbiRzd2l0Y2gtcGFkZGxlLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1vdXQ7XG5cbi8vIDUwLiBUYWJsZVxuLy8gLS0tLS0tLS0tXG5cbiR0YWJsZS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kdGFibGUtY29sb3Itc2NhbGU6IDUlO1xuJHRhYmxlLWJvcmRlcjogMXB4IHNvbGlkIHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xuJHRhYmxlLXBhZGRpbmc6IHJlbS1jYWxjKDggMTAgMTApO1xuJHRhYmxlLWhvdmVyLXNjYWxlOiAyJTtcbiR0YWJsZS1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSArICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtaXMtc3RyaXBlZDogdHJ1ZTtcbiR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xuJHRhYmxlLXN0cmlwZTogZXZlbjtcbiR0YWJsZS1oZWFkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgLyAyKTtcbiR0YWJsZS1oZWFkLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1oZWFkLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtZm9vdC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1mb290LXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1mb290LWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtaGVhZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJHRhYmxlLWZvb3QtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRzaG93LWhlYWRlci1mb3Itc3RhY2tlZDogZmFsc2U7XG4kdGFibGUtc3RhY2stYnJlYWtwb2ludDogbWVkaXVtO1xuXG4vLyA1MS4gVGFic1xuLy8gLS0tLS0tLS1cblxuJHRhYi1tYXJnaW46IDA7XG4kdGFiLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiR0YWItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJHRhYi1iYWNrZ3JvdW5kLWFjdGl2ZTogJGxpZ2h0LWdyYXk7XG4kdGFiLWFjdGl2ZS1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kdGFiLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJHdoaXRlO1xuJHRhYi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMS41cmVtO1xuJHRhYi1leHBhbmQtbWF4OiA2O1xuJHRhYi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiR0YWItY29udGVudC1ib3JkZXI6ICRsaWdodC1ncmF5O1xuJHRhYi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJHRhYi1jb250ZW50LXBhZGRpbmc6IDFyZW07XG5cbi8vIDUyLiBUaHVtYm5haWxcbi8vIC0tLS0tLS0tLS0tLS1cblxuJHRodW1ibmFpbC1ib3JkZXI6IHNvbGlkIDRweCAkd2hpdGU7XG4kdGh1bWJuYWlsLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHRodW1ibmFpbC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKCRibGFjaywgMC4yKTtcbiR0aHVtYm5haWwtc2hhZG93LWhvdmVyOiAwIDAgNnB4IDFweCByZ2JhKCRwcmltYXJ5LWNvbG9yLCAwLjUpO1xuJHRodW1ibmFpbC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDIwMG1zIGVhc2Utb3V0O1xuJHRodW1ibmFpbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyA1My4gVGl0bGUgQmFyXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiR0aXRsZWJhci1iYWNrZ3JvdW5kOiAkZGFyay1uYXYtY29sb3I7XG4kdGl0bGViYXItY29sb3I6ICR3aGl0ZTtcbiR0aXRsZWJhci1wYWRkaW5nOiAwLjVyZW07XG4kdGl0bGViYXItdGV4dC1mb250LXdlaWdodDogYm9sZDtcbiR0aXRsZWJhci1pY29uLWNvbG9yOiAkd2hpdGU7XG4kdGl0bGViYXItaWNvbi1jb2xvci1ob3ZlcjogJG1lZGl1bS1ncmF5O1xuJHRpdGxlYmFyLWljb24tc3BhY2luZzogMC4yNXJlbTtcblxuLy8gNTQuIFRvb2x0aXBcbi8vIC0tLS0tLS0tLS0tXG5cbiRoYXMtdGlwLWN1cnNvcjogaGVscDtcbiRoYXMtdGlwLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuJGhhcy10aXAtYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAkZGFyay1ncmF5O1xuJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuJHRvb2x0aXAtY29sb3I6ICR3aGl0ZTtcbiR0b29sdGlwLXBhZGRpbmc6IDAuNzVyZW07XG4kdG9vbHRpcC1tYXgtd2lkdGg6IDEwcmVtO1xuJHRvb2x0aXAtZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplO1xuJHRvb2x0aXAtcGlwLXdpZHRoOiAwLjc1cmVtO1xuJHRvb2x0aXAtcGlwLWhlaWdodDogJHRvb2x0aXAtcGlwLXdpZHRoICogMC44NjY7XG4kdG9vbHRpcC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyA1NS4gVG9wIEJhclxuLy8gLS0tLS0tLS0tLS1cblxuJHRvcGJhci1wYWRkaW5nOiAwcmVtO1xuJHRvcGJhci1iYWNrZ3JvdW5kOiAkZGFyay1uYXYtY29sb3I7XG4kdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDogJHRvcGJhci1iYWNrZ3JvdW5kO1xuJHRvcGJhci10aXRsZS1zcGFjaW5nOiAwLjVyZW0gMXJlbSAwLjVyZW0gMDtcbiR0b3BiYXItaW5wdXQtd2lkdGg6IDIwMHB4O1xuJHRvcGJhci11bnN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bTtcblxuLy8gNTYuIFh5IEdyaWRcbi8vIC0tLS0tLS0tLS0tXG5cbiR4eS1ncmlkOiB0cnVlO1xuJGdyaWQtY29udGFpbmVyOiAkZ2xvYmFsLXdpZHRoO1xuJGdyaWQtY29sdW1uczogMTI7XG4kZ3JpZC1tYXJnaW4tZ3V0dGVyczogKFxuICBzbWFsbDogMzBweCxcbiAgbWVkaXVtOiAzMHB4XG4pO1xuJGdyaWQtcGFkZGluZy1ndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycztcbiRncmlkLWNvbnRhaW5lci1wYWRkaW5nOiAkZ3JpZC1wYWRkaW5nLWd1dHRlcnM7XG4kZ3JpZC1jb250YWluZXItbWF4OiAkZ2xvYmFsLXdpZHRoO1xuJGJsb2NrLWdyaWQtbWF4OiA4O1xuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG5AdXNlIFwic2Fzczpjb2xvclwiO1xuXG4vLyBQYXRjaCB0byBmaXggaXNzdWUgIzEyMDgwXG4kLXpmLWJwLXZhbHVlOiBudWxsO1xuXG4vLy8gQ3JlYXRlcyBhbiBpbm5lciBib3gtc2hhZG93IGZvciBvbmx5IG9uZSBzaWRlXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaWRlIC0gU2lkZSB0aGUgc2hhZG93IGlzIHN1cHBvc2VkIHRvIGFwcGVhci4gQ2FuIGJlIGB0b3BgLCBgbGVmdGAsIGByaWdodGAgb3IgYGJvdHRvbWAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIC0gV2lkdGggZm9yIHRoZSB0YXJnZXQgc2lkZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciBvZiB0aGUgc2hhZG93LlxuQG1peGluIGlubmVyLXNpZGUtc2hhZG93KFxuICAkc2lkZTogYm90dG9tLFxuICAkc2l6ZTogMjBweCxcbiAgJGNvbG9yOiByZ2JhKCRibGFjaywgMC4yNSlcbikge1xuXG4gICRoZWxwZXI6IHJvdW5kKCRzaXplICogMC42NSk7XG5cbiAgQGlmICgkc2lkZSA9PSB0b3ApIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwICRoZWxwZXIgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gbGVmdCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0ICRoZWxwZXIgMCAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSByaWdodCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0ICgtMSkqJGhlbHBlciAwICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IGJvdHRvbSkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgKC0xKSokaGVscGVyICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBDU1MgdHJpYW5nbGUsIHdoaWNoIGNhbiBiZSB1c2VkIGZvciBkcm9wZG93biBhcnJvd3MsIGRyb3Bkb3duIHBpcHMsIGFuZCBtb3JlLiBVc2UgdGhpcyBtaXhpbiBpbnNpZGUgYSBgJjo6YmVmb3JlYCBvciBgJjo6YWZ0ZXJgIHNlbGVjdG9yLCB0byBhdHRhY2ggdGhlIHRyaWFuZ2xlIHRvIGFuIGV4aXN0aW5nIGVsZW1lbnQuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRyaWFuZ2xlLXNpemUgLSBXaWR0aCBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJHRyaWFuZ2xlLWNvbG9yIC0gQ29sb3Igb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHRyaWFuZ2xlLWRpcmVjdGlvbiAtIERpcmVjdGlvbiB0aGUgdHJpYW5nbGUgcG9pbnRzLiBDYW4gYmUgYHVwYCwgYHJpZ2h0YCwgYGRvd25gLCBvciBgbGVmdGAuXG5AbWl4aW4gY3NzLXRyaWFuZ2xlKFxuICAkdHJpYW5nbGUtc2l6ZSxcbiAgJHRyaWFuZ2xlLWNvbG9yLFxuICAkdHJpYW5nbGUtZGlyZWN0aW9uXG4pIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG5cbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAkdHJpYW5nbGUtc2l6ZTtcblxuICBjb250ZW50OiAnJztcblxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gZG93bikge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHVwKSB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gcmlnaHQpIHtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGxlZnQpIHtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIG1lbnUgaWNvbiB3aXRoIGEgc2V0IHdpZHRoLCBoZWlnaHQsIG51bWJlciBvZiBiYXJzLCBhbmQgY29sb3JzLiBUaGUgbWl4aW4gdXNlcyB0aGUgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIHRoZSBiYXJzIHRvIGRldGVybWluZSBzcGFjaW5nLiA8ZGl2IGNsYXNzPVwiZG9jcy1leGFtcGxlLWJ1cmdlclwiPjwvZGl2PlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3ItaG92ZXIgWyRkYXJrLWdyYXldIC0gQ29sb3IgdG8gdXNlIHdoZW4gdGhlIGljb24gaXMgaG92ZXJlZCBvdmVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWzIwcHhdIC0gV2lkdGggb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRoZWlnaHQgWzE2cHhdIC0gSGVpZ2h0IG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2VpZ2h0IFsycHhdIC0gSGVpZ2h0IG9mIGluZGl2aWR1YWwgYmFycyBpbiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhcnMgWzNdIC0gTnVtYmVyIG9mIGJhcnMgaW4gdGhlIGljb24uXG5AbWl4aW4gaGFtYnVyZ2VyKFxuICAkY29sb3I6ICRibGFjayxcbiAgJGNvbG9yLWhvdmVyOiAkZGFyay1ncmF5LFxuICAkd2lkdGg6IDIwcHgsXG4gICRoZWlnaHQ6IDE2cHgsXG4gICR3ZWlnaHQ6IDJweCxcbiAgJGJhcnM6IDNcbikge1xuICAvLyBib3gtc2hhZG93IENTUyBvdXRwdXRcbiAgJHNoYWRvdzogKCk7XG4gICRob3Zlci1zaGFkb3c6ICgpO1xuXG4gIC8vIFNwYWNpbmcgYmV0d2VlbiBiYXJzIGlzIGNhbGN1bGF0ZWQgYmFzZWQgb24gdGhlIHRvdGFsIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiBlYWNoIGJhclxuICAkc3BhY2luZzogZGl2aWRlKCRoZWlnaHQgLSAoJHdlaWdodCAqICRiYXJzKSwgJGJhcnMgLSAxKTtcblxuICBAaWYgdW5pdCgkc3BhY2luZykgPT0gJ3B4JyB7XG4gICAgJHNwYWNpbmc6IGZsb29yKCRzcGFjaW5nKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgJHNoYWRvdzogYXBwZW5kKCRzaGFkb3csIDAgJG9mZnNldCAwICRjb2xvciwgY29tbWEpO1xuICB9XG5cbiAgLy8gSWNvbiBjb250YWluZXJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIC8vIEljb24gYmFyc1xuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkd2VpZ2h0O1xuXG4gICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG5cbiAgICBjb250ZW50OiAnJztcbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gIEBpZiAkY29sb3ItaG92ZXIge1xuICAgIC8vIEdlbmVyYXRlIENTU1xuICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAgICRob3Zlci1zaGFkb3c6IGFwcGVuZCgkaG92ZXItc2hhZG93LCAwICRvZmZzZXQgMCAkY29sb3ItaG92ZXIsIGNvbW1hKTtcbiAgICB9XG5cbiAgICAmOmhvdmVyOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaG92ZXI7XG4gICAgICBib3gtc2hhZG93OiAkaG92ZXItc2hhZG93O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBhIGRvd253YXJkLWZhY2luZyB0cmlhbmdsZSBhcyBhIGJhY2tncm91bmQgaW1hZ2UgdG8gYW4gZWxlbWVudC4gVGhlIGltYWdlIGlzIGZvcm1hdHRlZCBhcyBhbiBTVkcsIG1ha2luZyBpdCBlYXN5IHRvIGNoYW5nZSB0aGUgY29sb3IuIEJlY2F1c2UgSW50ZXJuZXQgRXhwbG9yZXIgZG9lc24ndCBzdXBwb3J0IGVuY29kZWQgU1ZHcyBhcyBiYWNrZ3JvdW5kIGltYWdlcywgYSBQTkcgZmFsbGJhY2sgaXMgYWxzbyBpbmNsdWRlZC5cbi8vLyBUaGVyZSBhcmUgdHdvIFBORyBmYWxsYmFja3M6IGEgYmxhY2sgdHJpYW5nbGUgYW5kIGEgd2hpdGUgdHJpYW5nbGUuIFRoZSBvbmUgdXNlZCBkZXBlbmRzIG9uIHRoZSBsaWdodG5lc3Mgb2YgdGhlIGlucHV0IGNvbG9yLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgdHJpYW5nbGUuXG5AbWl4aW4gYmFja2dyb3VuZC10cmlhbmdsZSgkY29sb3I6ICRibGFjaykge1xuICAkcmVkICAgOiByb3VuZChjb2xvci5jaGFubmVsKCRjb2xvciwgXCJyZWRcIiwgJHNwYWNlOiByZ2IpKTtcbiAgJGdyZWVuIDogcm91bmQoY29sb3IuY2hhbm5lbCgkY29sb3IsIFwiZ3JlZW5cIiwgJHNwYWNlOiByZ2IpKTtcbiAgJGJsdWUgIDogcm91bmQoY29sb3IuY2hhbm5lbCgkY29sb3IsIFwiYmx1ZVwiLCAkc3BhY2U6IHJnYikpO1xuICAkcmdiICAgOiAncmdiJTI4I3skcmVkfSwgI3skZ3JlZW59LCAjeyRibHVlfSUyOSc7XG5cbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2ZXJzaW9uPVwiMS4xXCIgd2lkdGg9XCIzMlwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAzMiAyNFwiPjxwb2x5Z29uIHBvaW50cz1cIjAsMCAzMiwwIDE2LDI0XCIgc3R5bGU9XCJmaWxsOiAjeyRyZ2J9XCI+PC9wb2x5Z29uPjwvc3ZnPicpO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBcXDApIHtcbiAgICBAaWYgY29sb3IuY2hhbm5lbCgkY29sb3IsIFwibGlnaHRuZXNzXCIsICRzcGFjZTogaHNsKSA8IDYwJSB7XG4gICAgICAvLyBXaGl0ZSB0cmlhbmdsZVxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUlwSlJFRlVlTnJFa2NrTmdEQU1CQmZSa0V0ME9iUkJCZHNHWFVEZ21RZks0WGhIMm04Y3pRQUF5MjdSM3RzdzRRZmUyeDh1T082b1lMYjZHbE9vcjNHRitzd1VSQU9tVUorUnd0RUpzOVd2VEdFWXhCWHFJMU1RQVpoQ2ZVUUtSekRNVmorVHdyQUlWNmp2U1VFa1lBcjFMU2tjeVRCYi9WK0tZZlg3eEFldXNxM3NMRHRHSDNrRUdBQ1BXSWZsTlpmaFJRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIEJsYWNrIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBTUJKUkVGVWVOckVsbHNPaENBTVJWc3pDOUlselU3S0NtVkhUSnNvTVdZTVV0cHl2OUJnYnVYUUI1WlNkZ0JZWVk0eWNnQml2azhLWUZzUU1mTWlUVEJQNG8zblV6Q0t6T2FiTEpiTHkyL2czMWV2R2tBZ2luUjQvWmVnS0g1cVgzYkpDc2NBM3QweDNrZ081dFFGeWhoRmY1MHhScUZMYnlNVU5KUXpneWpHUy93Z0Nwdktxa1JCcHVXckU0VjlkKzFFNGRQVVhxSWcxMDdTUU9FLzJEUlF4TXdURHlnSUluVkRFVDlUM2xDb2ovNmovVkNtR2paT2wybEtwWjhBQXdEUVA3eklpbURHRlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFwcGxpZXMgdGhlIG1pY3JvIGNsZWFyZml4IGhhY2sgcG9wdWxhcml6ZWQgYnkgTmljb2xhcyBHYWxsYWdoZXIuIEluY2x1ZGUgdGhpcyBtaXhpbiBvbiBhIGNvbnRhaW5lciBpZiBpdHMgY2hpbGRyZW4gYXJlIGFsbCBmbG9hdGVkLCB0byBnaXZlIHRoZSBjb250YWluZXIgYSBwcm9wZXIgaGVpZ2h0LlxuLy8vIFRoZSBjbGVhcmZpeCBpcyBhdWdtZW50ZWQgd2l0aCBzcGVjaWZpYyBzdHlsZXMgdG8gcHJldmVudCBib3JkZXJzIGluIGZsZXhib3ggZW52aXJvbm1lbnRzXG4vLy8gQGxpbmsgaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svIE1pY3JvIENsZWFyZml4IEhhY2tcbi8vLyBAbGluayBodHRwOi8vZGFuaXNhZGVzaWduZXIuY29tL2Jsb2cvZmxleGJveC1jbGVhci1maXgtcHNldWRvLWVsZW1lbnRzLyBGbGV4Ym94IGZpeFxuQG1peGluIGNsZWFyZml4IHtcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgb3JkZXI6IDE7XG4gICAgfVxuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbi8vLyBBZGRzIENTUyBmb3IgYSBcInF1YW50aXR5IHF1ZXJ5XCIgc2VsZWN0b3IgdGhhdCBhdXRvbWF0aWNhbGx5IHNpemVzIGVsZW1lbnRzIGJhc2VkIG9uIGhvdyBtYW55IHRoZXJlIGFyZSBpbnNpZGUgYSBjb250YWluZXIuXG4vLy8gQGxpbmsgaHR0cDovL2FsaXN0YXBhcnQuY29tL2FydGljbGUvcXVhbnRpdHktcXVlcmllcy1mb3ItY3NzIFF1YW50aXR5IFF1ZXJpZXMgZm9yIENTU1xuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXggLSBNYXhpbXVtIG51bWJlciBvZiBpdGVtcyB0byBkZXRlY3QuIFRoZSBoaWdoZXIgdGhpcyBudW1iZXIgaXMsIHRoZSBtb3JlIENTUyB0aGF0J3MgcmVxdWlyZWQgdG8gY292ZXIgZWFjaCBudW1iZXIgb2YgaXRlbXMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZWxlbSBbbGldIC0gVGFnIHRvIHVzZSBmb3Igc2libGluZyBzZWxlY3RvcnMuXG5AbWl4aW4gYXV0by13aWR0aCgkbWF4LCAkZWxlbTogbGkpIHtcbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkbWF4IHtcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCxcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCB+ICN7JGVsZW19IHtcbiAgICAgIHdpZHRoOiBwZXJjZW50YWdlKGRpdmlkZSgxLCAkaSkpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gUmVtb3ZlcyB0aGUgZm9jdXMgcmluZyBhcm91bmQgYW4gZWxlbWVudCB3aGVuIGEgbW91c2UgaW5wdXQgaXMgZGV0ZWN0ZWQuXG5AbWl4aW4gZGlzYWJsZS1tb3VzZS1vdXRsaW5lIHtcbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddICYge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuLy8vIE1ha2VzIGFuIGVsZW1lbnQgdmlzdWFsbHkgaGlkZGVuLCBidXQgc3RpbGwgYWNjZXNzaWJsZSB0byBrZXlib2FyZHMgYW5kIGFzc2lzdGl2ZSBkZXZpY2VzLlxuLy8vIEBsaW5rIGh0dHA6Ly9zbm9vay5jYS9hcmNoaXZlcy9odG1sX2FuZF9jc3MvaGlkaW5nLWNvbnRlbnQtZm9yLWFjY2Vzc2liaWxpdHkgSGlkaW5nIENvbnRlbnQgZm9yIEFjY2Vzc2liaWxpdHlcbi8vLyBAbGluayBodHRwOi8vaHVnb2dpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZW5mb3JjZSAtIElmIGB0cnVlYCwgdXNlIGAhaW1wb3J0YW50YCBvbiBhcHBsaWVkIHByb3BlcnRpZXNcbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZShcbiAgJGVuZm9yY2U6IHRydWVcbikge1xuICAkaW1wb3J0YW50OiBpZigkZW5mb3JjZSwgJyFpbXBvcnRhbnQnLCBudWxsKTtcblxuICBwb3NpdGlvbjogYWJzb2x1dGUgI3skaW1wb3J0YW50fTtcbiAgd2lkdGg6IDFweCAjeyRpbXBvcnRhbnR9O1xuICBoZWlnaHQ6IDFweCAjeyRpbXBvcnRhbnR9O1xuICBwYWRkaW5nOiAwICN7JGltcG9ydGFudH07XG4gIG92ZXJmbG93OiBoaWRkZW4gI3skaW1wb3J0YW50fTtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKSAjeyRpbXBvcnRhbnR9O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwICN7JGltcG9ydGFudH07XG4gIGJvcmRlcjogMCAjeyRpbXBvcnRhbnR9O1xufVxuXG4vLy8gUmV2ZXJzZXMgdGhlIENTUyBvdXRwdXQgY3JlYXRlZCBieSB0aGUgYGVsZW1lbnQtaW52aXNpYmxlKClgIG1peGluLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGVuZm9yY2UgLSBJZiBgdHJ1ZWAsIHVzZSBgIWltcG9ydGFudGAgb24gYXBwbGllZCBwcm9wZXJ0aWVzXG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUtb2ZmKFxuICAkZW5mb3JjZTogdHJ1ZVxuKSB7XG4gICRpbXBvcnRhbnQ6IGlmKCRlbmZvcmNlLCAnIWltcG9ydGFudCcsIG51bGwpO1xuXG4gIHBvc2l0aW9uOiBzdGF0aWMgI3skaW1wb3J0YW50fTtcbiAgd2lkdGg6IGF1dG8gI3skaW1wb3J0YW50fTtcbiAgaGVpZ2h0OiBhdXRvICN7JGltcG9ydGFudH07XG4gIG92ZXJmbG93OiB2aXNpYmxlICN7JGltcG9ydGFudH07XG4gIGNsaXA6IGF1dG8gI3skaW1wb3J0YW50fTtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbCAjeyRpbXBvcnRhbnR9O1xufVxuXG4vLy8gVmVydGljYWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiB2ZXJ0aWNhbC1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi8vLyBIb3Jpem9udGFsbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gaG9yaXpvbnRhbC1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuXG4vLy8gQWJzb2x1dGVseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBhYnNvbHV0ZS1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG4vLy8gSXRlcmF0ZXMgdGhyb3VnaCBicmVha3BvaW50cyBkZWZpbmVkIGluIGAkYnJlYWtwb2ludC1jbGFzc2VzYCBhbmQgcHJpbnRzIHRoZSBDU1MgaW5zaWRlIHRoZSBtaXhpbiBhdCBlYWNoIGJyZWFrcG9pbnQncyBtZWRpYSBxdWVyeS4gVXNlIHRoaXMgd2l0aCB0aGUgZ3JpZCwgb3IgYW55IG90aGVyIGNvbXBvbmVudCB0aGF0IGhhcyByZXNwb25zaXZlIGNsYXNzZXMuXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRzbWFsbCBbdHJ1ZV0gLSBJZiBgZmFsc2VgLCB0aGUgbWl4aW4gd2lsbCBza2lwIHRoZSBgc21hbGxgIGJyZWFrcG9pbnQuIFVzZSB0aGlzIHdpdGggY29tcG9uZW50cyB0aGF0IGRvbid0IHByZWZpeCBjbGFzc2VzIHdpdGggYHNtYWxsLWAsIG9ubHkgYG1lZGl1bS1gIGFuZCB1cC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRhdXRvLWluc2VydC1icmVha3BvaW50cyBbdHJ1ZV0gLSBJZiBgZmFsc2VgLCB0aGUgbWl4aW4gd2lsbCBpdGVyYXRlIG92ZXIgYnJlYWtwb2ludHMgd2l0aG91dCBkb2luZyB0aGUgbWVkaWEgcXVlcnkgaXRzZWxmLiBVc2VmdWwgZm9yIG1vcmUgY29tcGxleCBtZWRpYSBxdWVyeSBnZW5lcmF0aW9uIGFzIGluIHRoZSBtYXJnaW4gZ3JpZC5cbkBtaXhpbiAtemYtZWFjaC1icmVha3BvaW50KFxuICAkc21hbGw6IHRydWUsXG4gICRhdXRvLWluc2VydC1icmVha3BvaW50czogdHJ1ZVxuKSB7XG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQtaW4oYXV0bywgLXpmLWJvb2woJHNtYWxsKSwgLXpmLWJvb2woJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzKSkge1xuICAgIEBjb250ZW50XG4gIH07XG59XG5cbi8vLyBJdGVyYXRlcyB3aXRoIGBAY29udGVudGAgdGhyb3VnaCB0aGUgZ2l2ZW4gbGlzdCBvZiBicmVha3BvaW50cyBgJGJyZWFrcG9pbnRzYC5cbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfExpc3R9ICRicmVha3BvaW50cyBbYXV0b10gLSBCcmVha3BvaW50cyB0byBpdGVyYXRlcyBvbi4gSXQgY2FuIGJlIGEgYnJlYWtwb2ludCBuYW1lLCBsaXN0IG9mIGJyZWFrcG9pbnRzIG9yIGBhdXRvYCBmb3IgYWxsIGJyZWFrcG9pbnRzLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbnxOdWxsfSAkemVyby1icmVha3BvaW50IFtudWxsXSAtIFdoZXRoZXIgdGhlIHplcm8tYnJlYWtwb2ludCAob2Z0ZW4gYHNtYWxsYCkgbXVzdCBiZSBpbmNsdWRlZC4gSWYgYHRydWVgLCBpdCB3aWxsIGFsd2F5cyBiZSBhZGRlZCB0byB0aGUgbGlzdCBpZiBub3QgYWxyZWFkeSB0aGVyZS4gSWYgYGZhbHNlYCwgaXQgd2lsbCBhbHdheXMgYmUgcmVtb3ZlZC4gRG9lcyBub3RoaW5nIGJ5IGRlZmF1bHQuXG4vLy8gQHBhcmFtIHtCb29sZWFufEtleXdvcmR9ICRtZWRpYS1xdWVyaWVzIFt0cnVlXSAtIFdoZXRoZXIgbWVkaWEtcXVlcmllcyBtdXN0IGJlIGdlbmVyYXRlZC4gSWYgYGZvci1saXN0c2AsIG9ubHkgZ2VuZXJhdGUgbWVkaWEtcXVlcmllcyB3aGVuIGAkYnJlYWtwb2ludHNgIGlzIGEgbGlzdC5cbkBtaXhpbiAtemYtZWFjaC1icmVha3BvaW50LWluKFxuICAkYnJlYWtwb2ludHM6IGF1dG8sXG4gICR6ZXJvLWJyZWFrcG9pbnQ6IG51bGwsXG4gICRtZWRpYS1xdWVyaWVzOiB0cnVlXG4pIHtcbiAgJC1saXN0OiAoKTtcbiAgJC1icmVha3BvaW50cy1pcy1hLWxpc3Q6IHRydWU7XG5cbiAgLy8gUmV0cmlldmUgdGhlIGxpc3Qgb2YgYnJlYWtwb2ludChzKSB0byBpdGVyYXRlIG9uLlxuICBAaWYgJGJyZWFrcG9pbnRzID09IGF1dG8ge1xuICAgICQtbGlzdDogJGJyZWFrcG9pbnQtY2xhc3NlcztcbiAgfVxuICBAZWxzZSBpZiB0eXBlLW9mKCRicmVha3BvaW50cykgPT0gJ2xpc3QnIHtcbiAgICAkLWxpc3Q6ICRicmVha3BvaW50cztcbiAgfVxuICBAZWxzZSBpZiB0eXBlLW9mKCRicmVha3BvaW50cykgPT0gJ3N0cmluZycge1xuICAgICQtbGlzdDogKCRicmVha3BvaW50cyk7XG4gICAgJC1icmVha3BvaW50cy1pcy1hLWxpc3Q6IGZhbHNlO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAZXJyb3IgJ1dyb25nIHN5bnRheCBmb3IgXCIkYnJlYWtwb2ludHNcIiBpbiBcIi16Zi1lYWNoLWJyZWFrcG9pbnQtaW4oKVwiLiBHb3QgXCIjeyRicmVha3BvaW50c31cIiAoI3t0eXBlLW9mKCRicmVha3BvaW50cyl9KS4gRXhwZWN0ZWQgYSBicmVha3BvaW50IG5hbWUsIGEgbGlzdCBvZiBicmVha3BvaW50cyBvciBcImF1dG9cIic7XG4gIH1cblxuICAvLyBBZGQgb3IgcmVtb3ZlIHRoZSB6ZXJvIGJyZWFrcG9pbnQgYWNjb3JkaW5nIHRvIGAkemVyby1icmVha3BvaW50YFxuICBAaWYgJHplcm8tYnJlYWtwb2ludCA9PSB0cnVlIHtcbiAgICAkLWxpc3Q6IGpvaW4oKCQtemYtemVyby1icmVha3BvaW50KSwgc2wtcmVtb3ZlKCQtbGlzdCwgJC16Zi16ZXJvLWJyZWFrcG9pbnQpKTtcbiAgfVxuICBAZWxzZSBpZiAkemVyby1icmVha3BvaW50ID09IGZhbHNlIHtcbiAgICAkLWxpc3Q6IHNsLXJlbW92ZSgkLWxpc3QsICQtemYtemVyby1icmVha3BvaW50KTtcbiAgfVxuXG4gIC8vIEl0ZXJhdGUgb24gYnJlYWtwb2ludChzKVxuICBAZWFjaCAkYnAgaW4gJC1saXN0IHtcbiAgICAkb2xkLXpmLXNpemU6IG51bGw7XG4gICAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIHtcbiAgICAgICRvbGQtemYtc2l6ZTogJC16Zi1zaXplO1xuICAgIH1cbiAgICAkLXpmLXNpemU6ICRicCAhZ2xvYmFsO1xuXG4gICAgQGlmICgkbWVkaWEtcXVlcmllcyA9PSB0cnVlIG9yICgkbWVkaWEtcXVlcmllcyA9PSAnZm9yLWxpc3RzJyBhbmQgJC1icmVha3BvaW50cy1pcy1hLWxpc3QpKSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicCkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuXG4gICAgJC16Zi1zaXplOiAkb2xkLXpmLXNpemUgIWdsb2JhbDtcbiAgfVxufVxuXG4vLy8gR2VuZXJhdGUgdGhlIGBAY29udGVudGAgcGFzc2VkIHRvIHRoZSBtaXhpbiB3aXRoIGEgdmFsdWUgYCQtemYtYnAtdmFsdWVgIHJlbGF0ZWQgdG8gYSBicmVha3BvaW50LCBkZXBlbmRpbmcgb24gdGhlIGAkbmFtZWAgcGFyYW1ldGVyOlxuLy8vIC0gRm9yIGEgc2luZ2xlIHZhbHVlLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhpcyB2YWx1ZS5cbi8vLyAtIEZvciBhIGJyZWFrcG9pbnQgbmFtZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgLlxuLy8vIC0gRm9yIFwiYXV0b1wiLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZSBpbiBgJG1hcGAgYW5kIGlzIHBhc3NlZCB0byBgQGNvbnRlbnRgLCB3aGljaCBpcyBtYWRlIHJlc3BvbnNpdmUgZm9yIGVhY2ggYnJlYWtwb2ludCBvZiBgJG1hcGAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8QXJyYXl8S2V5d29yZH0gJG5hbWUgW2F1dG9dIC0gU2luZ2xlIHZhbHVlLCBicmVha3BvaW50IG5hbWUsIG9yIGxpc3Qgb2YgYnJlYWtwb2ludCBuYW1lcyB0byB1c2UuIFwiYXV0b1wiIGJ5IGRlZmF1bHQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gTWFwIG9mIGJyZWFrcG9pbnRzIGFuZCB2YWx1ZXMgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZS5cbkBtaXhpbiAtemYtYnJlYWtwb2ludC12YWx1ZShcbiAgJG5hbWU6IGF1dG8sXG4gICRtYXA6IG51bGxcbikge1xuICBAaWYgJG5hbWUgPT0gYXV0byBhbmQgdHlwZS1vZigkbWFwKSA9PSAnbWFwJyB7XG4gICAgLy8gXCJhdXRvXCJcbiAgICBAZWFjaCAkaywgJHYgaW4gJG1hcCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRrKSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCR2LCAkbWFwKSB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIGJyZWFrcG9pbnQgbmFtZVxuICAgIEBpZiB0eXBlLW9mKCRuYW1lKSA9PSAnc3RyaW5nJyB7XG4gICAgICAkYnAtdmFsdWU6IC16Zi1nZXQtYnAtdmFsKCRtYXAsICRuYW1lKTtcbiAgICAgIEBpZiAkYnAtdmFsdWUgIT0gbnVsbCB7XG4gICAgICAgICRuYW1lOiAkYnAtdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYnJlYWtwb2ludCB2YWx1ZVxuICAgICQtemYtYnAtdmFsdWU6ICRuYW1lICFnbG9iYWw7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vIE1hcmdpbiBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS1iYXNlLWdyaWQtY2xhc3NlcyB7XG5cbiAgLy8gR3JpZCBDb250YWluZXJcbiAgLmdyaWQtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcjtcblxuICAgICYuZmx1aWQge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXIoMTAwJSk7XG4gICAgfVxuXG4gICAgJi5mdWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyKDEwMCUsIDApO1xuICAgIH1cbiAgfVxuXG4gIC8vIEJhc2UgZ3JpZCBzdHlsZXNcbiAgLmdyaWQteCB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZDtcbiAgfVxuXG4gIC5jZWxsIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsKGZ1bGwsICRndXR0ZXItdHlwZTogbm9uZSk7XG5cbiAgICAmLmF1dG8ge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKGF1dG8pO1xuICAgIH1cblxuICAgICYuc2hyaW5rIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShzaHJpbmspO1xuICAgIH1cblxuICB9XG4gIC5ncmlkLXgge1xuICAgID4gLmF1dG8ge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKGF1dG8sICRndXR0ZXItdHlwZTogbm9uZSk7XG4gICAgfVxuXG4gICAgPiAuc2hyaW5rIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZShzaHJpbmssICRndXR0ZXItdHlwZTogbm9uZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gQXV0byB3aWR0aFxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgIC8vIFRoaXMgaXMgYSBiaXQgb2YgYSBoYWNrL3dvcmthcm91bmQsIHNlZSB0aGVzZSBpc3N1ZXMgJiBQUnMgZm9yIHRoZSBiYWNrc3Rvcnk6XG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9pc3N1ZXMvMTAyNDRcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vZm91bmRhdGlvbi9mb3VuZGF0aW9uLXNpdGVzL3B1bGwvMTAyMjIgYW5kXG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMTY0XG4gICAgLmdyaWQteCB7XG4gICAgICAkc3RyOiBcIj4gLiN7JC16Zi1zaXplfS1zaHJpbmssID4gLiN7JC16Zi1zaXplfS1mdWxsXCI7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAkc3RyOiAkc3RyICsgXCIsID4gLiN7JC16Zi1zaXplfS0jeyRpfVwiO1xuICAgICAgfVxuICAgICAgI3skc3RyfSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAvLyBSZXNwb25zaXZlIFwiYXV0b1wiIG1vZGlmaWVyXG4gICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgICAgIC5ncmlkLXggPiAuI3skLXpmLXNpemV9LWF1dG8ge1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsKGF1dG8sICRndXR0ZXItdHlwZTogbm9uZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJS14eS1jZWxsLWJhc2Utc2hyaW5rLWhvcml6b250YWwtI3skLXpmLXNpemV9IHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShzaHJpbmspO1xuICAgIH1cblxuICAgIC8vIFJlc3BvbnNpdmUgXCJzaHJpbmtcIiBtb2RpZmllclxuICAgIEBpZiBub3QoJC16Zi1zaXplID09ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gICAgICAuZ3JpZC14ID4gLiN7JC16Zi1zaXplfS1zaHJpbmsge1xuICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay1ob3Jpem9udGFsLSN7JC16Zi1zaXplfTtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKHNocmluaywgJGd1dHRlci10eXBlOiBub25lKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZXNwb25zaXZlIHdpZHRoIG1vZGlmaWVyc1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgICAuZ3JpZC14ID4gLiN7JC16Zi1zaXplfS0jeyRpfSB7XG4gICAgICAgIEBleHRlbmQgJS14eS1jZWxsLWJhc2Utc2hyaW5rLWhvcml6b250YWwtI3skLXpmLXNpemV9O1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoJGksICRndXR0ZXItdHlwZTogbm9uZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgd2lkdGggd2hlbiB1c2luZyBgLmdyaWQtbWFyZ2luLXhgIG5vdCBvbiBgLmdyaWQteGBcbiAgLmdyaWQtbWFyZ2luLXg6bm90KC5ncmlkLXgpID4gLmNlbGwge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG5cbiAgLy8gUmVzZXQgaGVpZ2h0IHdoZW4gdXNpbmcgYC5ncmlkLW1hcmdpbi15YCBub3Qgb24gYC5ncmlkLXlgXG4gIC5ncmlkLW1hcmdpbi15Om5vdCguZ3JpZC15KSA+IC5jZWxsIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxuQG1peGluIC14eS1icmVha3BvaW50LWNlbGwtY2xhc3NlcygkY2xhc3MtYnJlYWtwb2ludCwgJGd1dHRlci1icmVha3BvaW50LCAkdmVydGljYWwpIHtcbiAgJHByZWZpeDogaWYoJGNsYXNzLWJyZWFrcG9pbnQgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQsICcnLCAnI3skY2xhc3MtYnJlYWtwb2ludH0tJyk7XG4gID4gLiN7JHByZWZpeH1hdXRvIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoYXV0bywgJHZlcnRpY2FsOiAkdmVydGljYWwpO1xuICB9XG5cbiAgPiAuI3skcHJlZml4fXNocmluayB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKHNocmluaywgJHZlcnRpY2FsOiAkdmVydGljYWwpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgJGNsYXNzbmFtZTogaWYoJHZlcnRpY2FsLCAnLiN7JGNsYXNzLWJyZWFrcG9pbnR9LSN7JGl9JywgJy4jeyRjbGFzcy1icmVha3BvaW50fS0jeyRpfScpO1xuXG4gICAgPiAjeyRjbGFzc25hbWV9IHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZSgkaSwgJHZlcnRpY2FsOiAkdmVydGljYWwpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBNYXJnaW4gR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktbWFyZ2luLWdyaWQtY2xhc3NlcyhcbiAgJGd1dHRlci1wb3NpdGlvbjogbGVmdCByaWdodCxcbiAgJHZlcnRpY2FsOiBmYWxzZSxcbiAgJHdyYXBwaW5nLXNlbGVjdG9yOiAnLmdyaWQtbWFyZ2luLXgnXG4pe1xuICAjeyR3cmFwcGluZy1zZWxlY3Rvcn0ge1xuICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlLCAkZ3V0dGVyLXBvc2l0aW9uOiAkZ3V0dGVyLXBvc2l0aW9uKTtcblxuICAgIC8vIEJhc2UgY2VsbCBzdHlsZXNcbiAgICA+IC5jZWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwoJHZlcnRpY2FsOiAkdmVydGljYWwsICRvdXRwdXQ6IChzaXplIGd1dHRlcnMpKTtcbiAgICB9XG5cbiAgICAvLyBiYXNlIHN0eWxlcyBuZWVkIHRvIGFsbCBiZSBiZWZvcmUgdGhlIGF1dG8gYW5kIHNocmluayBzdHlsZXNcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgQGlmKHR5cGUtb2YoJGdyaWQtbWFyZ2luLWd1dHRlcnMpID09ICdtYXAnIGFuZCBtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplKSBhbmQgJC16Zi1zaXplICE9ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gICAgICAgID4gLmNlbGwge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwoJHZlcnRpY2FsOiAkdmVydGljYWwsICRvdXRwdXQ6IChzaXplIGd1dHRlcnMpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG5cbiAgICAgIC8vIFRoaXMgaXMgcHVyZWx5IGZvciByZXNwb25zaXZlIGd1dHRlcnMgLSB0aGUgbWFyZ2luIGdyaWQgaGFzIHRvIGdvIGJhY2sgYW5kIGFkanVzdCB3aWR0aHMgKG9yIGhlaWdodHMpXG4gICAgICAvLyBmb3IgYWxsIHByaW9yIGJyZWFrcG9pbnRzLlxuICAgICAgLy8gQXMgdGhlaXIgZ3V0dGVyIGlzIGRlZmluZWQgd2l0aCB0aGVpciB3aWR0aC9oZWlnaHQsIGV2ZW4gYnJlYWtwb2ludCB3aXRob3V0IGEgbmV3IG1hcmdpbiBtdXN0IGJlXG4gICAgICAvLyBnZW5lcmF0ZWQgdG8gbm90IGhhdmluZyB0aGVpciB3aWR0aC9oZWlnaHQgb3ZlcnJpZGVkIGJ5IHJlLWFkanVzdGVkIHNtYWxsZXIgYnJlYWtwb2ludHMuXG4gICAgICBAaWYodHlwZS1vZigkZ3JpZC1tYXJnaW4tZ3V0dGVycykgPT0gJ21hcCcgYW5kIG1hcC1oYXMta2V5KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkLXpmLXNpemUpKSB7XG4gICAgICAgIEBlYWNoICRicCBpbiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCQtemYtc2l6ZSkge1xuICAgICAgICAgIEBpbmNsdWRlIC14eS1icmVha3BvaW50LWNlbGwtY2xhc3NlcygkYnAsICQtemYtc2l6ZSwgJHZlcnRpY2FsKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSAteHktYnJlYWtwb2ludC1jZWxsLWNsYXNzZXMoJC16Zi1zaXplLCAkLXpmLXNpemUsICR2ZXJ0aWNhbCk7XG4gICAgfVxuICB9XG59XG5cbi8vIFBhZGRpbmcgR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktcGFkZGluZy1ncmlkLWNsYXNzZXMge1xuICAuZ3JpZC1wYWRkaW5nLXgge1xuXG4gICAgLy8gTmVnYXRpdmUgbWFyZ2luIGZvciBuZXN0ZWQgZ3JpZHNcbiAgICAuZ3JpZC1wYWRkaW5nLXgge1xuICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkbmVnYXRpdmU6IHRydWUpO1xuICAgIH1cblxuICAgIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3IgZ3JpZHMgd2l0aGluIGBncmlkLWNvbnRhaW5lci9ncmlkLWNvbnRhaW5lci5mbHVpZGBcbiAgICAvLyBUaGlzIGFsbG93cyBtYXJnaW4gYW5kIHBhZGRpbmcgZ3JpZHMgdG8gbGluZSB1cCB3aXRoIGVhY2hvdGhlclxuICAgIC5ncmlkLWNvbnRhaW5lcjpub3QoLmZ1bGwpID4gJiB7XG4gICAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRuZWdhdGl2ZTogdHJ1ZSk7XG4gICAgfVxuXG4gICAgLy8gQmFzZSBjZWxsIHN0eWxlc1xuICAgID4gLmNlbGwge1xuICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyczogJGdyaWQtcGFkZGluZy1ndXR0ZXJzLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBCbG9jayBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS1ibG9jay1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkOiB0cnVlLCAkcGFkZGluZy1ncmlkOiB0cnVlKSB7XG4gIEBpZiAkcGFkZGluZy1ncmlkIHtcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJHh5LWJsb2NrLWdyaWQtbWF4IHtcbiAgICAgICAgLiN7JC16Zi1zaXplfS11cC0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoJG46ICRpLCAkc2VsZWN0b3I6ICcuY2VsbCcsICRndXR0ZXItdHlwZTogcGFkZGluZywgJG91dHB1dDogKHNpemUpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkbWFyZ2luLWdyaWQge1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkeHktYmxvY2stZ3JpZC1tYXgge1xuICAgICAgICAvLyBUaGlzIGlzIHB1cmVseSBmb3IgcmVzcG9uc2l2ZSBndXR0ZXJzIC0gdGhlIG1hcmdpbiBncmlkIGhhcyB0byBnbyBiYWNrIGFuZCBhZGp1c3Qgd2lkdGhzIChvciBoZWlnaHRzKVxuICAgICAgICAvLyBmb3IgcHJpb3IgYnJlYWtwb2ludHMgYmFzZWQgb24gdGhlIHJlc3BvbnNpdmUgZ3V0dGVyLlxuICAgICAgICBAaWYodHlwZS1vZigkZ3JpZC1tYXJnaW4tZ3V0dGVycykgPT0gJ21hcCcgYW5kIG1hcC1oYXMta2V5KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkLXpmLXNpemUpKSB7XG4gICAgICAgICAgQGVhY2ggJGJwIGluIC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJC16Zi1zaXplKSB7XG4gICAgICAgICAgICBAaWYobWFwLWhhcy1rZXkoJGdyaWQtbWFyZ2luLWd1dHRlcnMsICRicCkpIHtcbiAgICAgICAgICAgICAgLmdyaWQtbWFyZ2luLXguI3skYnB9LXVwLSN7JGl9IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWxheW91dCgkbjogJGksICRzZWxlY3RvcjogJy5jZWxsJywgJGd1dHRlci10eXBlOiBtYXJnaW4sICRvdXRwdXQ6IChzaXplKSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJHh5LWJsb2NrLWdyaWQtbWF4IHtcbiAgICAgICAgLmdyaWQtbWFyZ2luLXguI3skLXpmLXNpemV9LXVwLSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWxheW91dCgkbjogJGksICRzZWxlY3RvcjogJy5jZWxsJywgJGd1dHRlci10eXBlOiBtYXJnaW4sICRvdXRwdXQ6IChzaXplKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQ29sbGFwc2UgY2xhc3Nlc1xuQG1peGluIHh5LWNvbGxhcHNlLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQ6IHRydWUsICRwYWRkaW5nLWdyaWQ6IHRydWUpIHtcbiAgQGVhY2ggJGJwIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpZiAkbWFyZ2luLWdyaWQge1xuICAgICAgLiN7JGJwfS1tYXJnaW4tY29sbGFwc2Uge1xuICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbGxhcHNlKCRndXR0ZXItdHlwZTogbWFyZ2luLCAkbWluLWJyZWFrcG9pbnQ6ICRicCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRwYWRkaW5nLWdyaWQge1xuICAgICAgLiN7JGJwfS1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb2xsYXBzZSgkZ3V0dGVyLXR5cGU6IHBhZGRpbmcsICRtaW4tYnJlYWtwb2ludDogJGJwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gT2Zmc2V0IGNsYXNzZXNcbkBtaXhpbiB4eS1vZmZzZXQtY2VsbC1jbGFzc2VzIHtcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgIC8vIE9mZnNldHNcbiAgICAgICRvOiAkaSAtIDE7XG5cbiAgICAgIC4jeyQtemYtc2l6ZX0tb2Zmc2V0LSN7JG99IHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1vZmZzZXQoJG8sICRndXR0ZXJzOiAkZ3JpZC1wYWRkaW5nLWd1dHRlcnMsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG4gICAgICB9XG5cbiAgICAgIC5ncmlkLW1hcmdpbi14ID4gLiN7JC16Zi1zaXplfS1vZmZzZXQtI3skb30ge1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLW9mZnNldCgkbyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFZlcnRpY2FsIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LXZlcnRpY2FsLWdyaWQtY2xhc3NlcyhcbiAgJG1hcmdpbi1ncmlkOiB0cnVlLFxuICAkcGFkZGluZy1ncmlkOiB0cnVlXG4pIHtcblxuICAvLyBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAvLyAgIEBpZiBub3QoJC16Zi1zaXplID09ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gIC8vICAgfVxuICAvLyB9XG5cbiAgLmdyaWQteSB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZCh2ZXJ0aWNhbCwgZmFsc2UpO1xuXG5cbiAgICA+IC5jZWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtcmVzZXQoKTtcbiAgICB9XG5cbiAgICA+IC5hdXRvIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZShhdXRvLCAkZ3V0dGVyLXR5cGU6IG5vbmUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgfVxuXG4gICAgPiAuc2hyaW5rIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZShzaHJpbmssICRndXR0ZXItdHlwZTogbm9uZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICB9XG5cblxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgICAvLyBUaGlzIGlzIGEgYml0IG9mIGEgaGFjay93b3JrYXJvdW5kLCBzZWUgdGhlc2UgaXNzdWVzIGFuZCBQUnMgZm9yIHRoZSBiYWNrc3Rvcnk6XG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vZm91bmRhdGlvbi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMDI0NFxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMjIyIGFuZFxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMTY0XG4gICAgICAkc3RyOiBcIj4gLiN7JC16Zi1zaXplfS1zaHJpbmssID4gLiN7JC16Zi1zaXplfS1mdWxsXCI7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAkc3RyOiAkc3RyICsgXCIsID4gLiN7JC16Zi1zaXplfS0jeyRpfVwiO1xuICAgICAgfVxuICAgICAgI3skc3RyfSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAgIC8vIFJlc3BvbnNpdmUgXCJhdXRvXCIgbW9kaWZpZXJcbiAgICAgIEBpZiBub3QoJC16Zi1zaXplID09ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gICAgICAgID4gLiN7JC16Zi1zaXplfS1hdXRvIHtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsKGF1dG8sICRndXR0ZXItdHlwZTogbm9uZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAlLXh5LWNlbGwtYmFzZS1zaHJpbmstdmVydGljYWwtI3skLXpmLXNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKHNocmluayk7XG4gICAgICB9XG5cbiAgICAgIC8vIFJlc3BvbnNpdmUgXCJzaHJpbmtcIiBtb2RpZmllclxuICAgICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgPiAuI3skLXpmLXNpemV9LXNocmluayB7XG4gICAgICAgICAgQGV4dGVuZCAlLXh5LWNlbGwtYmFzZS1zaHJpbmstdmVydGljYWwtI3skLXpmLXNpemV9O1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZShzaHJpbmssICRndXR0ZXItdHlwZTogbm9uZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBSZXNwb25zaXZlIHdpZHRoIG1vZGlmaWVyc1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgICA+IC4jeyQtemYtc2l6ZX0tI3skaX0ge1xuICAgICAgICAgIEBleHRlbmQgJS14eS1jZWxsLWJhc2Utc2hyaW5rLXZlcnRpY2FsLSN7JC16Zi1zaXplfTtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoJGksICRndXR0ZXItdHlwZTogbm9uZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuICB9XG5cbiAgQGlmICRwYWRkaW5nLWdyaWQge1xuICAgIC5ncmlkLXBhZGRpbmcteSB7XG4gICAgICAvLyBOZWdhdGl2ZSBtYXJnaW4gZm9yIG5lc3RlZCBncmlkc1xuICAgICAgLmdyaWQtcGFkZGluZy15IHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkbmVnYXRpdmU6IHRydWUsICRndXR0ZXItcG9zaXRpb246IHRvcCBib3R0b20pO1xuICAgICAgfVxuXG4gICAgICAvLyBCYXNlIGNlbGwgc3R5bGVzXG4gICAgICA+IC5jZWxsIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyczogJGdyaWQtcGFkZGluZy1ndXR0ZXJzLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcsICRndXR0ZXItcG9zaXRpb246IHRvcCBib3R0b20pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkbWFyZ2luLWdyaWQge1xuICAgIEBpbmNsdWRlIHh5LW1hcmdpbi1ncmlkLWNsYXNzZXModG9wIGJvdHRvbSwgdHJ1ZSwgJy5ncmlkLW1hcmdpbi15Jyk7XG4gIH1cblxufVxuXG5AbWl4aW4geHktZnJhbWUtZ3JpZC1jbGFzc2VzKCR2ZXJ0aWNhbC1ncmlkOiB0cnVlLCAkbWFyZ2luLWdyaWQ6IHRydWUpIHtcbiAgLy8gRnJhbWVkIGdyaWQgc3R5bGVzXG4gIC5ncmlkLWZyYW1lIHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lO1xuICB9XG5cbiAgLmNlbGwgLmdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlOyAvLyBTYW1lIGFzIGluY2x1ZGUgd2l0aCAkbmVzdGVkLCBidXQgd2l0aCBsZXNzIGNzc1xuICB9XG5cbiAgLmNlbGwtYmxvY2sge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2soKTtcbiAgfVxuXG4gIC5jZWxsLWJsb2NrLXkge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2sodHJ1ZSk7XG4gIH1cblxuXG4gIC5jZWxsLWJsb2NrLWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jay1jb250YWluZXIoKTtcbiAgfVxuXG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuXG4gICAgLiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWU7XG4gICAgfVxuXG4gICAgLmNlbGwgLiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgIHdpZHRoOiAxMDAlOyAvLyBTYW1lIGFzIGluY2x1ZGUgd2l0aCAkbmVzdGVkLCBidXQgd2l0aCBsZXNzIGNzc1xuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tY2VsbC1ibG9jayB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKCk7XG4gICAgfVxuXG4gICAgLiN7JC16Zi1zaXplfS1jZWxsLWJsb2NrLWNvbnRhaW5lciB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrLWNvbnRhaW5lcigpO1xuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tY2VsbC1ibG9jay15IHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2sodHJ1ZSk7XG4gICAgfVxuICB9XG5cbiAgQGlmICR2ZXJ0aWNhbC1ncmlkIHtcbiAgICAuZ3JpZC15IHtcbiAgICAgICYuZ3JpZC1mcmFtZSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUodHJ1ZSk7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KGZhbHNlKSB7XG4gICAgICAgICYuI3skLXpmLXNpemV9LWdyaWQtZnJhbWUge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUodHJ1ZSk7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgfVxuICAgIH1cbiAgICAuY2VsbCB7XG4gICAgICAuZ3JpZC15LmdyaWQtZnJhbWUge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7IC8vIFNhbWUgYXMgaW5jbHVkZSB3aXRoICRuZXN0ZWQsIGJ1dCB3aXRoIGxlc3MgY3NzXG4gICAgICB9XG4gICAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KGZhbHNlKSB7XG4gICAgICAgIC5ncmlkLXkuI3skLXpmLXNpemV9LWdyaWQtZnJhbWUge1xuICAgICAgICAgIGhlaWdodDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICBAaW5jbHVkZSB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKHRvcCBib3R0b20sIHRydWUsICcuZ3JpZC1tYXJnaW4teScpO1xuICAgIC5ncmlkLWZyYW1lLmdyaWQtbWFyZ2luLXkge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlLCBmYWxzZSwgJGdyaWQtbWFyZ2luLWd1dHRlcnMsICRpbmNsdWRlLWJhc2U6IGZhbHNlKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuICAgICAgLmdyaWQtbWFyZ2luLXkuI3skLXpmLXNpemV9LWdyaWQtZnJhbWUge1xuICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKHRydWUsIGZhbHNlLCAkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplLCBmYWxzZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEZpbmFsIGNsYXNzZXNcbkBtaXhpbiBmb3VuZGF0aW9uLXh5LWdyaWQtY2xhc3NlcyhcbiAgJGJhc2UtZ3JpZDogdHJ1ZSxcbiAgJG1hcmdpbi1ncmlkOiB0cnVlLFxuICAkcGFkZGluZy1ncmlkOiB0cnVlLFxuICAkYmxvY2stZ3JpZDogdHJ1ZSxcbiAgJGNvbGxhcHNlOiB0cnVlLFxuICAkb2Zmc2V0OiB0cnVlLFxuICAkdmVydGljYWwtZ3JpZDogdHJ1ZSxcbiAgJGZyYW1lLWdyaWQ6IHRydWVcbikge1xuXG4gIC8vIEJhc2UgZ3JpZCBzdHlsZXNcbiAgQGlmKCRiYXNlLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1iYXNlLWdyaWQtY2xhc3NlcygpO1xuICB9XG5cbiAgLy8gTWFyZ2luIGdyaWRcbiAgQGlmKCRtYXJnaW4tZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LW1hcmdpbi1ncmlkLWNsYXNzZXMoKTtcbiAgfVxuXG4gIC8vIFBhZGRpbmcgZ3JpZFxuICBAaWYoJHBhZGRpbmctZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LXBhZGRpbmctZ3JpZC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBCbG9jayBncmlkXG4gIEBpZigkYmxvY2stZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LWJsb2NrLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQsICRwYWRkaW5nLWdyaWQpO1xuICB9XG5cbiAgLy8gQ29sbGFwc2UgZ3V0dGVyc1xuICBAaWYoJGNvbGxhcHNlKSB7XG4gICAgQGluY2x1ZGUgeHktY29sbGFwc2UtZ3JpZC1jbGFzc2VzKCRtYXJnaW4tZ3JpZCwgJHBhZGRpbmctZ3JpZCk7XG4gIH1cblxuICAvLyBPZmZzZXQgZ3V0dGVyc1xuICBAaWYoJG9mZnNldCkge1xuICAgIEBpbmNsdWRlIHh5LW9mZnNldC1jZWxsLWNsYXNzZXMoKTtcbiAgfVxuXG4gIC8vIFZlcnRpY2FsIGdyaWRcbiAgQGlmKCR2ZXJ0aWNhbC1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktdmVydGljYWwtZ3JpZC1jbGFzc2VzKCRtYXJnaW4tZ3JpZCwgJHBhZGRpbmctZ3JpZCk7XG4gIH1cblxuICBAaWYgKCRmcmFtZS1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktZnJhbWUtZ3JpZC1jbGFzc2VzKCR2ZXJ0aWNhbC1ncmlkLCAkbWFyZ2luLWdyaWQpXG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBDcmVhdGVzIGEgbWF4IHdpZHRoIGNvbnRhaW5lciwgZGVzaWduZWQgdG8gaG91c2UgeW91ciBncmlkIGNvbnRlbnQuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIFskZ3JpZC1jb250YWluZXJdIC0gYSB3aWR0aCB0byBsaW1pdCB0aGUgY29udGFpbmVyIHRvLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcGFkZGluZyBbJGdyaWQtY29udGFpbmVyLXBhZGRpbmddIC0gcGFkZGluZ3Mgb2YgdGhlIGNvbnRhaW5lci5cbkBtaXhpbiB4eS1ncmlkLWNvbnRhaW5lcihcbiAgJHdpZHRoOiAkZ3JpZC1jb250YWluZXIsXG4gICRwYWRkaW5nOiAkZ3JpZC1jb250YWluZXItcGFkZGluZ1xuKSB7XG4gIG1heC13aWR0aDogJHdpZHRoO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuXG4gIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlcnM6ICRwYWRkaW5nLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xufVxuXG4vLy8gQ3JlYXRlcyBhIGNvbnRhaW5lciBmb3IgeW91ciBmbGV4IGNlbGxzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyZWN0aW9uIFtob3Jpem9udGFsXSAtIEVpdGhlciBob3Jpem9udGFsIG9yIHZlcnRpY2FsIGRpcmVjdGlvbiBvZiBjZWxscyB3aXRoaW4uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkd3JhcCBbdHJ1ZV0gLSBJZiB0aGUgY2VsbHMgd2l0aGluIHNob3VsZCB3cmFwIG9yIG5vdC5cbkBtaXhpbiB4eS1ncmlkKFxuICAkZGlyZWN0aW9uOiBob3Jpem9udGFsLFxuICAkd3JhcDogdHJ1ZVxuKSB7XG4gICRkaXJlY3Rpb246IGlmKCRkaXJlY3Rpb24gPT0gJ2hvcml6b250YWwnLCByb3csIGNvbHVtbik7XG4gICR3cmFwOiBpZigkd3JhcCwgd3JhcCwgbm93cmFwKTtcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6ICRkaXJlY3Rpb24gJHdyYXA7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gQ3JlYXRlIGd1dHRlcnMgZm9yIGEgY2VsbC9jb250YWluZXIuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVHlwZSBvZiBndXR0ZXIgdG8gb3V0cHV0LiBBY2NlcHRzIGVpdGhlciBtYXJnaW4gb3IgcGFkZGluZy5cbi8vLyBAcGFyYW0ge0xpc3R9ICRndXR0ZXItcG9zaXRpb24gW3JpZ2h0IGxlZnRdIC0gVGhlIHBvc2l0aW9uIHRvIGFwcGx5IGd1dHRlcnMgdG8uIEFjY2VwdHMgYHRvcGAsIGBib3R0b21gLCBgbGVmdGAsIGByaWdodGAgaW4gYW55IGNvbWJpbmF0aW9uLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJG5lZ2F0aXZlIFtmYWxzZV0gLSBXaGV0aGVyIHRvIGFwcGx5IHRoZSBndXR0ZXIgYXMgYSBuZWdhdGl2ZSB2YWx1ZS4gQ29tbW9ubHkgdXNlZCBmb3IgbmVzdGVkIGdyaWRzLlxuQG1peGluIHh5LWd1dHRlcnMoXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IHJpZ2h0IGxlZnQsXG4gICRuZWdhdGl2ZTogZmFsc2Vcbikge1xuICAkb3BlcmF0b3I6IGlmKCRuZWdhdGl2ZSwgJy0nLCAnJyk7XG5cbiAgLy8gSWYgd2UgaGF2ZSBkZWNsYXJlZCBuZWdhdGl2ZSBndXR0ZXJzLCBmb3JjZSB0eXBlIHRvIGBtYXJnaW4uXG4gICRndXR0ZXItdHlwZTogaWYoJG5lZ2F0aXZlLCAnbWFyZ2luJywgJGd1dHRlci10eXBlKTtcblxuICAvLyBPdXRwdXQgb3VyIG1hcmdpbiBndXR0ZXJzLlxuICBAaWYgKHR5cGUtb2YoJGd1dHRlcnMpID09ICdtYXAnKSB7XG4gICAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoYXV0bywgJGd1dHRlcnMpIHtcbiAgICAgICRndXR0ZXI6IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpICogMC41O1xuXG4gICAgICAvLyBMb29wIHRocm91Z2ggZWFjaCBndXR0ZXIgcG9zaXRpb25cbiAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgI3skZ3V0dGVyLXR5cGV9LSN7JHZhbHVlfTogdW5xdW90ZShcIiN7JG9wZXJhdG9yfSN7JGd1dHRlcn1cIik7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICh0eXBlLW9mKCRndXR0ZXJzKSA9PSAnbnVtYmVyJykge1xuICAgICRndXR0ZXI6IHJlbS1jYWxjKCRndXR0ZXJzKSAqIDAuNTtcblxuICAgIC8vIExvb3AgdGhyb3VnaCBlYWNoIGd1dHRlciBwb3NpdGlvblxuICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICN7JGd1dHRlci10eXBlfS0jeyR2YWx1ZX06IHVucXVvdGUoXCIjeyRvcGVyYXRvcn0jeyRndXR0ZXJ9XCIpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIFJldHVybnMgdGhlIGFwcHJvcHJpYXRlIENTUyBmbGV4IHZhbHVlIGZvciBhIGNlbGwgYmFzZS5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBBY2NlcHRzIGBmdWxsYCwgYGF1dG9gLCBgc2hyaW5rYCwgYGdyb3dgLCBvciBhbnkgb3RoZXIgdmFsdWUgcmVwcmVzZW50aW5nIGEgY2VsbCBzaXplIChpdCB3aWxsIGJlIHRyZWF0ZWQgYXMgYHNocmlua2ApLlxuLy8vXG4vLy8gQHJldHVybnMge0xpc3R9IFRoZSBjZWxsIGZsZXggcHJvcGVydHkgdmFsdWUuXG5AZnVuY3Rpb24geHktY2VsbC1iYXNlKCRzaXplOiBmdWxsKSB7XG4gIEBpZiAoJHNpemUgPT0gJ2F1dG8nKSB7XG4gICAgQHJldHVybiAxIDEgMDtcbiAgfVxuICBAZWxzZSBpZiAoJHNpemUgPT0gJ2dyb3cnKSB7XG4gICAgQHJldHVybiAxIDAgYXV0bztcbiAgfVxuICBAZWxzZSBpZiAoJHNpemUgPT0gJ3Nocmluaycgb3IgJHNpemUgPT0gJ2Z1bGwnIG9yIHpmLWlzLWZyYWN0aW9uKCRzaXplLCAkYWxsb3ctbm8tZGVub21pbmF0b3I6IHRydWUpKSB7XG4gICAgQHJldHVybiAwIDAgYXV0bztcbiAgfVxuICBAcmV0dXJuIG51bGw7XG59XG5cbi8vLyBDYWxjdWxhdGUgdGhlIHNpemUgb2YgYSBjZWxsIGd1dHRlcnMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIGBhdXRvYCwgcmV0dXJucyB0aGUgcmVzcG9uc2l2ZSBndXR0ZXJzIG1hcCBgJGd1dHRlcnNgLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfE1hcH0gVGhlIGNlbGwgZ3V0dGVyIHNpemUgb3IgdGhlIHJlc3BvbnNpdmUgZ3V0dGVycyBtYXAuXG5AZnVuY3Rpb24geHktY2VsbC1ndXR0ZXJzKFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRicmVha3BvaW50OiBudWxsXG4pIHtcbiAgLy8gRm9yIGBhdXRvYCwgcmV0dXJucyB0aGUgcmVzcG9uc2l2ZSBtYXAgYCRndXR0ZXJzYC5cbiAgQGlmICgkYnJlYWtwb2ludCA9PSAnYXV0bycpIHtcbiAgICBAcmV0dXJuICRndXR0ZXJzO1xuICB9XG5cbiAgLy8gVXNlIHRoZSBjb250ZXh0dWFsIGJyZWFrcG9pbnQgYnkgZGVmYXVsdC5cbiAgJGJyZWFrcG9pbnQ6IC16Zi1jdXJyZW50LWJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpO1xuXG4gIEBpZiAoJGJyZWFrcG9pbnQpIHtcbiAgICBAcmV0dXJuIC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICQtemYtemVyby1icmVha3BvaW50KSBvciAwO1xuICB9XG59XG5cbi8vLyBSZXR1cm5zIHRoZSBwZXJjZW50YWdlIHNpemUgb2YgYSBjZWxsLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHNpemUgWyRncmlkLWNvbHVtbnNdIC0gU2l6ZSB0byBtYWtlIHRoZSBjZWxsLiBZb3UgY2FuIHBhc3MgYSB2YWx1ZSBpbiBtdWx0aXBsZSBmb3JtYXRzLCBzdWNoIGFzIGA2YCwgYDUwJWAsIGAxIG9mIDJgIG9yIGAxLzNgLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gU2l6ZSBvZiB0aGUgY2VsbCAoaW4gcGVyY2VudCkuXG5AZnVuY3Rpb24geHktY2VsbC1zaXplKFxuICAkc2l6ZTogJGdyaWQtY29sdW1uc1xuKSB7XG4gIEByZXR1cm4gZnJhY3Rpb24tdG8tcGVyY2VudGFnZSgkc2l6ZSwgJGRlbm9taW5hdG9yOiAkZ3JpZC1jb2x1bW5zKTtcbn1cblxuLy8vIFJldHVybnMgdGhlIGFwcHJvcHJpYXRlIENTUyB2YWx1ZSBmb3IgYSBjZWxsIHNpemUuXG4vLy9cbi8vLyBHdXR0ZXJzLXJlbGF0ZWQgYXJndW1lbnRzIGFyZSByZXF1aXJlZCBmb3IgY2VsbHMgd2l0aCBtYXJnaW4gZ3V0dGVycyAoYnkgZGVmYXVsdCkgYXMgdGhlIGd1dHRlciBpcyBpbmNsdWRlZCBpbiB0aGUgd2lkdGguXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIENhbiBiZSBgZnVsbGAsIGBhdXRvYCwgYHNocmlua2Agb3IgYW55IGZyYWN0aW9uIGxpa2UgYDZgLCBgNTAlYCwgYDEgb2YgMmAgb3IgYDEvMmAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFR5cGUgb2YgZ3V0dGVyIHRvIG91dHB1dC4gQWNjZXB0cyBgbWFyZ2luYCwgYHBhZGRpbmdgIG9yIGBub25lYC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiBgYXV0b2AsIHJldHVybnMgYSBtYXAgb2Ygc2l6ZXMgYWRhcHRlZCB0byByZXNwb25zaXZlIGd1dHRlcnMuIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ8U3RyaW5nfE1hcH0gVGhlIGNlbGwgc2l6aW5nIHByb3BlcnR5IHZhbHVlLCBvciBhIHJlc3BvbnNpdmUgbWFwIG9mIHRoZW0uXG5AZnVuY3Rpb24geHktY2VsbC1zaXplLWNzcyhcbiAgJHNpemU6IGZ1bGwsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRicmVha3BvaW50OiBudWxsXG4pIHtcbiAgJG1hcmdpbi1ndXR0ZXI6IDA7XG5cbiAgQGlmICgkc2l6ZSA9PSAnYXV0bycgb3IgJHNpemUgPT0gJ3NocmluaycpIHtcbiAgICBAcmV0dXJuIGF1dG87XG4gIH1cblxuICAvLyBGb3IgY2VsbHMgd2l0aCBtYXJnaW4gZ3V0dGVycywgdGhlIGd1dHRlciBpcyBpbmNsdWRlZCBpbiB0aGUgd2lkdGguXG4gIEBpZiAoJGd1dHRlci10eXBlID09ICdtYXJnaW4nKSB7XG4gICAgJG1hcmdpbi1ndXR0ZXI6IHh5LWNlbGwtZ3V0dGVycygkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuICAgIEBpZiAoJG1hcmdpbi1ndXR0ZXIgPT0gbnVsbCkge1xuICAgICAgQGVycm9yICd4eS1jZWxsLXNpemU6IG5vIGd1dHRlcnMgd2VyZSBmb3VuZCBpbiBgJGd1dHRlcnNgIGZvciBcIiRicmVha3BvaW50OiAjeyRicmVha3BvaW50fVwiJztcbiAgICB9XG4gIH1cblxuICAvLyBDYWxjdWxhdGUgdGhlIGNlbGwgc2l6ZSAobnVtYmVyKVxuICAkc2l6ZS1yYXc6IGlmKCRzaXplID09ICdmdWxsJywgMTAwJSwgeHktY2VsbC1zaXplKCRzaXplKSk7XG5cbiAgLy8gQ2FsY3VsYXRlIHRoZSBjZWxsIENTUyBzaXplIGluY2x1ZGluZyBndXR0ZXJzIChzdHJpbmcpXG4gIC8vIElmIHRoZSBjZWxsIGhhcyByZXNwb25zaXZlIG1hcmdpbiBndXR0ZXJzLCByZXR1cm4gYSByZXNwb25zaXZlIG1hcCBvZiBzaXplcy5cbiAgQGlmIHR5cGUtb2YoJG1hcmdpbi1ndXR0ZXIpID09ICdtYXAnIHtcbiAgICAkcmVzcG9uc2l2ZS1jc3Mtc2l6ZXM6ICgpO1xuXG4gICAgQGVhY2ggJGJwLCAkbWcgaW4gJG1hcmdpbi1ndXR0ZXIge1xuICAgICAgJG1nYzogcmVtLWNhbGMoJG1nKTtcbiAgICAgIEBpZiAkbWdjID09IDAge1xuICAgICAgICAvLyBzYXNzLWxpbnQ6ZGlzYWJsZSB6ZXJvLXVuaXRcbiAgICAgICAgJG1nYzogMHJlbTtcbiAgICAgIH1cbiAgICAgICRzaXplLWNzczogaWYoJG1nID09IDAsICRzaXplLXJhdywgY2FsYygjeyRzaXplLXJhd30gLSAjeyRtZ30pKTtcbiAgICAgICRyZXNwb25zaXZlLWNzcy1zaXplczogbWFwLW1lcmdlKCRyZXNwb25zaXZlLWNzcy1zaXplcywgKCRicDogJHNpemUtY3NzKSk7XG4gICAgfVxuXG4gICAgQHJldHVybiAkcmVzcG9uc2l2ZS1jc3Mtc2l6ZXM7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCByZXR1cm4gYSBzaW5nbGUgQ1NTIHNpemUuXG4gIEBlbHNlIHtcbiAgICAvLyBNYWtlIHN1cmUgdGhhdCAwIGlzIHRyYW5zbGF0ZWQgaW4gMHJlbSBmb3IgY2FsYygpXG4gICAgJG1nYzogcmVtLWNhbGMoJG1hcmdpbi1ndXR0ZXIpO1xuICAgIEBpZiAkbWdjID09IDAge1xuICAgICAgLy8gc2Fzcy1saW50OmRpc2FibGUgemVyby11bml0XG4gICAgICAkbWdjOiAwcmVtO1xuICAgIH1cbiAgICAkY3NzLXNpemU6IGlmKCRtYXJnaW4tZ3V0dGVyID09IDAsICRzaXplLXJhdywgY2FsYygjeyRzaXplLXJhd30gLSAjeyRtZ2N9KSk7XG4gICAgQHJldHVybiAkY3NzLXNpemU7XG4gIH1cbn1cblxuLy8vIFNldHMgYmFzZSBmbGV4IHByb3BlcnRpZXMgZm9yIGNlbGxzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIEFjY2VwdHMgYGZ1bGxgLCBgYXV0b2AsIGBzaHJpbmtgLCBgZ3Jvd2AsIG9yIGFueSBvdGhlciB2YWx1ZSByZXByZXNlbnRpbmcgYSBjZWxsIHNpemUgKGl0IHdpbGwgYmUgdHJlYXRlZCBhcyBgc2hyaW5rYCkuXG5AbWl4aW4geHktY2VsbC1iYXNlKCRzaXplOiBmdWxsKSB7XG4gICRiYXNlOiB4eS1jZWxsLWJhc2UoJHNpemUpO1xuXG4gIGZsZXg6ICN7JGJhc2V9O1xuXG4gIC8vIFNldCBiYXNlIHN0eWxlcyBmb3IgXCJmdWxsXCIgb25seVxuICBAaWYoJHNpemUgPT0gJ2Z1bGwnKSB7XG4gICAgbWluLWhlaWdodDogMDtcbiAgICBtaW4td2lkdGg6IDA7XG4gIH1cbn1cblxuLy8vIFJlc2V0cyBhIGNlbGxzIHdpZHRoIChvciBoZWlnaHQgaWYgdmVydGljYWwgaXMgdHJ1ZSkgYXMgd2VsbCBhcyBzdHJpcHMgaXRzIGd1dHRlcnMuXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG5AbWl4aW4geHktY2VsbC1yZXNldCgkdmVydGljYWw6IHRydWUpIHtcbiAgJGRpcmVjdGlvbjogaWYoJHZlcnRpY2FsID09IHRydWUsIGhlaWdodCwgd2lkdGgpO1xuICAjeyRkaXJlY3Rpb259OiBhdXRvO1xuICBtYXgtI3skZGlyZWN0aW9ufTogbm9uZTtcbn1cblxuLy8vIFNldHMgc2l6aW5nIHByb3BlcnRpZXMgZm9yIGNlbGxzLlxuLy8vXG4vLy8gR3V0dGVycy1yZWxhdGVkIGFyZ3VtZW50cyBhcmUgcmVxdWlyZWQgZm9yIGNlbGxzIHdpdGggbWFyZ2luIGd1dHRlcnMgKGJ5IGRlZmF1bHQpIGFzIHRoZSBndXR0ZXIgaXMgaW5jbHVkZWQgaW4gdGhlIHdpZHRoLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBDYW4gYmUgYGZ1bGxgICgxMDAlIHdpZHRoKSwgYGF1dG9gICh1c2UgYWxsIGF2YWlsYWJsZSBzcGFjZSksIGBzaHJpbmtgICh1c2Ugb25seSB0aGUgcmVxdWlyZWQgc3BhY2UpIG9yIGFueSBmcmFjdGlvbiAoYDZgLCBgNTAlYCwgYDEgb2YgMmAgb3IgYDEvMmAuLi4pLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgYG1hcmdpbmAsIGBwYWRkaW5nYCBvciBgbm9uZWAuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgYGF1dG9gLCBnZW5lcmF0ZXMgc2l6ZXMgYWRhcHRlZCBmb3IgcmVzcG9uc2l2ZSBndXR0ZXJzLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuQG1peGluIHh5LWNlbGwtc2l6ZShcbiAgJHNpemU6IGZ1bGwsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRicmVha3BvaW50OiBudWxsLFxuICAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgJHNpemVzOiB4eS1jZWxsLXNpemUtY3NzKCRzaXplLCAkZ3V0dGVycywgJGd1dHRlci10eXBlLCAkYnJlYWtwb2ludCk7XG4gICRkaXJlY3Rpb246IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCBoZWlnaHQsIHdpZHRoKTtcblxuICBAaWYgKHR5cGUtb2YoJHNpemVzKSA9PSAnbWFwJykge1xuICAgIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKGF1dG8sICRzaXplcykge1xuICAgICAgI3skZGlyZWN0aW9ufTogJC16Zi1icC12YWx1ZTtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgICN7JGRpcmVjdGlvbn06ICRzaXplcztcbiAgfVxufVxuXG4vLy8gU2V0cyBndXR0ZXJzIHByb3BlcnRpZXMgZm9yIGNlbGxzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFR5cGUgb2YgZ3V0dGVyIHRvIG91dHB1dC4gQWNjZXB0cyBgbWFyZ2luYCwgYHBhZGRpbmdgIG9yIGBub25lYC5cbi8vLyBAcGFyYW0ge0xpc3R9ICRndXR0ZXItcG9zaXRpb24gW251bGxdIC0gVGhlIHBvc2l0aW9uIHRvIGFwcGx5IGd1dHRlcnMgdG8uIEFjY2VwdHMgYHRvcGAsIGBib3R0b21gLCBgbGVmdGAsIGByaWdodGAgaW4gYW55IGNvbWJpbmF0aW9uLiBCeSBkZWZhdWx0IGByaWdodCBsZWZ0YCBmb3IgaG9yaXpvbnRhbCBjZWxscyBhbmQgYHRvcCBib3R0b21gIGZvciB2ZXJ0aWNhbCBjZWxscy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiBgYXV0b2AsIGdlbmVyYXRlcyByZXNwb25zaXZlIGd1dHRlcnMuIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gRGlyZWN0aW9uIG9mIHRoZSBndXR0ZXJzIHRvIG91dHB1dC4gU2VlIGAkZ3V0dGVyLXBvc2l0aW9uYC5cbkBtaXhpbiB4eS1jZWxsLWd1dHRlcnMoXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IG51bGwsXG4gICRicmVha3BvaW50OiBudWxsLFxuICAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgLy8gR2V0IHRoZSBkZWZhdWx0IGd1dHRlciBwb3NpdGlvbiBhY2NvcmRpbmcgdG8gY2VsbCBkaXJlY3Rpb25cbiAgQGlmKCRndXR0ZXItcG9zaXRpb24gPT0gbnVsbCkge1xuICAgICRndXR0ZXItcG9zaXRpb246IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCB0b3AgYm90dG9tLCBsZWZ0IHJpZ2h0KTtcbiAgfVxuXG4gIC8vIEdldCB0aGUgZ3V0dGVyIHdpZHRoIGZvciB0aGlzIGJyZWFrcG9pbnRcbiAgJGd1dHRlci13aWR0aDogeHktY2VsbC1ndXR0ZXJzKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG4gIEBpZiAoJGd1dHRlci13aWR0aCA9PSBudWxsKSB7XG4gICAgQGVycm9yICd4eS1jZWxsLWd1dHRlcnM6IG5vIGd1dHRlcnMgd2VyZSBmb3VuZCBpbiBgJGd1dHRlcnNgIGZvciBcIiRicmVha3BvaW50OiAjeyRicmVha3BvaW50fVwiJztcbiAgfVxuXG4gIEBpZiAoJGd1dHRlci10eXBlIGFuZCAkZ3V0dGVyLXR5cGUgIT0gbm9uZSkge1xuICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlci13aWR0aCwgJGd1dHRlci10eXBlLCAkZ3V0dGVyLXBvc2l0aW9uKTtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGNlbGwgZm9yIHlvdXIgZ3JpZC5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQ2FuIGJlIGBmdWxsYCAoMTAwJSB3aWR0aCksIGBhdXRvYCAodXNlIGFsbCBhdmFpbGFibGUgc3BhY2UpLCBgc2hyaW5rYCAodXNlIG9ubHkgdGhlIHJlcXVpcmVkIHNwYWNlKSBvciBhbnkgZnJhY3Rpb24gKGA2YCwgYDUwJWAsIGAxIG9mIDJgIG9yIGAxLzJgLi4uKS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRndXR0ZXItb3V0cHV0IFtudWxsXSAtIFtERVBSRUNBVEVEXSBXaGV0aGVyIG9yIG5vdCB0byBvdXRwdXQgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVHlwZSBvZiBndXR0ZXIgdG8gb3V0cHV0LiBBY2NlcHRzIGBtYXJnaW5gLCBgcGFkZGluZ2Agb3IgYG5vbmVgLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbbnVsbF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uIEJ5IGRlZmF1bHQgYHJpZ2h0IGxlZnRgIGZvciBob3Jpem9udGFsIGNlbGxzIGFuZCBgdG9wIGJvdHRvbWAgZm9yIHZlcnRpY2FsIGNlbGxzLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIGBhdXRvYCwgZ2VuZXJhdGVzIHJlc3BvbnNpdmUgZ3V0dGVycy4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbi8vLyBAcGFyYW0ge0xpc3R9ICRvdXRwdXQgWyhiYXNlIHNpemUgZ3V0dGVycyldIC0gQ2VsbCBwYXJ0cyB0byBvdXRwdXQuIFlvdSB3aWxsIG5lZWQgdG8gZ2VuZXJhdGUgb3RoZXJzIHBhcnRzIG9mIHRoZSBjZWxsIHNlcGVyYXRlbHksIGl0IG1heSBub3Qgd29yayBwcm9wZXJseSBvdGhlcndpc2UuXG5AbWl4aW4geHktY2VsbChcbiAgJHNpemU6IGZ1bGwsXG4gICRndXR0ZXItb3V0cHV0OiBudWxsLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkZ3V0dGVyLXBvc2l0aW9uOiBudWxsLFxuICAkYnJlYWtwb2ludDogbnVsbCxcbiAgJHZlcnRpY2FsOiBmYWxzZSxcbiAgJG91dHB1dDogKGJhc2Ugc2l6ZSBndXR0ZXJzKVxuKSB7XG4gIC8vIERlZmF1bHQgZm9yICRndXR0ZXItb3V0cHV0XG4gIEBpZiAoJGd1dHRlci1vdXRwdXQgIT0gbnVsbCkge1xuICAgIEB3YXJuICd4eS1jZWxsOiAkZ3V0dGVyLW91dHB1dCBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQuIFNlZSBtaWdyYXRpb24gbm90ZXMgYXQgaHR0cHM6Ly9naXQuaW8vZm91bmRhdGlvbi02LTYtMCc7XG4gICAgQGlmICgkZ3V0dGVyLW91dHB1dCA9PSBmYWxzZSkge1xuICAgICAgJG91dHB1dDogc2wtcmVtb3ZlKCRvdXRwdXQsIGd1dHRlcnMpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAoaW5kZXgoJG91dHB1dCwgYmFzZSkpIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2UoJHNpemUpO1xuICB9XG4gIEBpZiAoaW5kZXgoJG91dHB1dCwgc2l6ZSkpIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoJHNpemUsICRndXR0ZXJzLCAkZ3V0dGVyLXR5cGUsICRicmVha3BvaW50LCAkdmVydGljYWwpO1xuICB9XG4gIEBpZiAoaW5kZXgoJG91dHB1dCwgZ3V0dGVycykpIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWd1dHRlcnMoJGd1dHRlcnMsICRndXR0ZXItdHlwZSwgJGd1dHRlci1wb3NpdGlvbiwgJGJyZWFrcG9pbnQsICR2ZXJ0aWNhbCk7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBzaW5nbGUgYnJlYWtwb2ludCBzaXplZCBncmlkLiBVc2VkIHRvIGdlbmVyYXRlIG91ciBncmlkIGNsYXNzZXMuXG4vLy9cbi8vLyBgeHktY2VsbC1zdGF0aWMoKWAgaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkLlxuLy8vIFVzZSBgeHktY2VsbCgpYCBpbnN0ZWFkIHdpdGggYCRvdXRwdXQ6IChzaXplIGd1dHRlcnMpYCB0byBub3QgZ2VuZXJhdGUgdGhlIGNlbGwgYmFzZS5cbi8vLyBTZWUgbWlncmF0aW9uIG5vdGVzIGF0IGh0dHBzOi8vZ2l0LmlvL2ZvdW5kYXRpb24tNi02LTBcbi8vL1xuLy8vIEBkZXByZWNhdGVkIHY2LjYuMFxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBDYW4gYmUgYGZ1bGxgICgxMDAlIHdpZHRoKSwgYGF1dG9gICh1c2UgYWxsIGF2YWlsYWJsZSBzcGFjZSksIGBzaHJpbmtgICh1c2Ugb25seSB0aGUgcmVxdWlyZWQgc3BhY2UpIG9yIGFueSBmcmFjdGlvbiAoYDZgLCBgNTAlYCwgYDEgb2YgMmAgb3IgYDEvMmAuLi4pLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGd1dHRlci1vdXRwdXQgW3RydWVdIC0gV2hldGhlciBvciBub3QgdG8gb3V0cHV0IGd1dHRlcnMuIEFsd2F5cyBgdHJ1ZWAgZm9yIG1hcmdpbiBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG5AbWl4aW4geHktY2VsbC1zdGF0aWMoXG4gICRzaXplOiBmdWxsLFxuICAkZ3V0dGVyLW91dHB1dDogdHJ1ZSxcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGJyZWFrcG9pbnQ6ICQtemYtemVyby1icmVha3BvaW50LFxuICAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgQHdhcm4gJ3h5LWNlbGwtc3RhdGljKCkgbWl4aW4gaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkLiBVc2UgXCJ4eS1jZWxsKClcIiBpbnN0ZWFkLiBTZWUgbWlncmF0aW9uIG5vdGVzIGF0IGh0dHBzOi8vZ2l0LmlvL2ZvdW5kYXRpb24tNi02LTAnO1xuXG4gICRndXR0ZXI6IC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG4gICRndXR0ZXItcG9zaXRpb246IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCB0b3AgYm90dG9tLCBsZWZ0IHJpZ2h0KTtcblxuICAkLWd1dHRlci1vdXRwdXQ6IGlmKCRndXR0ZXItdHlwZSA9PSAnbWFyZ2luJywgdHJ1ZSwgJGd1dHRlci1vdXRwdXQpO1xuICAkLWd1dHRlci1tYXJnaW46IGlmKCRndXR0ZXItdHlwZSA9PSAnbWFyZ2luJywgJGd1dHRlciwgMCk7XG5cbiAgQGluY2x1ZGUgLXh5LWNlbGwtcHJvcGVydGllcygkc2l6ZSwgJC1ndXR0ZXItbWFyZ2luLCAkdmVydGljYWwpO1xuICBAaWYgKCQtZ3V0dGVyLW91dHB1dCkge1xuICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlciwgJGd1dHRlci10eXBlLCAkZ3V0dGVyLXBvc2l0aW9uKTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIFNpemVzIGNoaWxkIGVsZW1lbnRzIHNvIHRoYXQgYCRuYCBudW1iZXIgb2YgaXRlbXMgYXBwZWFyIG9uIGVhY2ggcm93LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRuIC0gTnVtYmVyIG9mIGVsZW1lbnRzIHRvIGRpc3BsYXkgcGVyIHJvdy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFsnLmNlbGwnXSAtIFNlbGVjdG9yKHMpIHRvIHVzZSBmb3IgY2hpbGQgZWxlbWVudHMuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZ3V0dGVyLW91dHB1dCBbbnVsbF0gLSBbREVQUkVDQVRFRF0gV2hldGhlciBvciBub3QgdG8gb3V0cHV0IGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFR5cGUgb2YgZ3V0dGVyIHRvIG91dHB1dC4gQWNjZXB0cyBgbWFyZ2luYCwgYHBhZGRpbmdgIG9yIGBub25lYC5cbi8vLyBAcGFyYW0ge0xpc3R9ICRndXR0ZXItcG9zaXRpb24gW251bGxdIC0gVGhlIHBvc2l0aW9uIHRvIGFwcGx5IGd1dHRlcnMgdG8uIEFjY2VwdHMgYHRvcGAsIGBib3R0b21gLCBgbGVmdGAsIGByaWdodGAgaW4gYW55IGNvbWJpbmF0aW9uLiBCeSBkZWZhdWx0IGByaWdodCBsZWZ0YCBmb3IgaG9yaXpvbnRhbCBjZWxscyBhbmQgYHRvcCBib3R0b21gIGZvciB2ZXJ0aWNhbCBjZWxscy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIGJyZWFrcG9pbnQgdG8gdXNlIGZvciB0aGUgY2VsbCBnZW5lcmF0aW9uLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuLy8vIEBwYXJhbSB7TGlzdH0gJG91dHB1dCBbKGJhc2Ugc2l6ZSBndXR0ZXJzKV0gLSBDZWxsIHBhcnRzIHRvIG91dHB1dC4gWW91IHdpbGwgbmVlZCB0byBnZW5lcmF0ZSBvdGhlcnMgcGFydHMgb2YgdGhlIGNlbGwgc2VwZXJhdGVseSwgaXQgbWF5IG5vdCB3b3JrIGNvcnJlY3RseSBvdGhlcndpc2UuXG5AbWl4aW4geHktZ3JpZC1sYXlvdXQoXG4gICRuLFxuICAkc2VsZWN0b3I6ICcuY2VsbCcsXG4gICRndXR0ZXItb3V0cHV0OiBudWxsLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkZ3V0dGVyLXBvc2l0aW9uOiBudWxsLFxuICAkYnJlYWtwb2ludDogbnVsbCxcbiAgJHZlcnRpY2FsOiBmYWxzZSxcbiAgJG91dHB1dDogKGJhc2Ugc2l6ZSBndXR0ZXJzKVxuKSB7XG4gICRzaXplOiBwZXJjZW50YWdlKGRpdmlkZSgxLCAkbikpO1xuXG4gICYgPiAjeyRzZWxlY3Rvcn0ge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwoJHNpemUsICRndXR0ZXItb3V0cHV0LCAkZ3V0dGVycywgJGd1dHRlci10eXBlLCAkZ3V0dGVyLXBvc2l0aW9uLCAkYnJlYWtwb2ludCwgJHZlcnRpY2FsLCAkb3V0cHV0KTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIENvbGxhcHNlcyB0aGUgZ3JpZCBhIGNlbGxzIHdpdGhpbiBpdC5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWy5jZWxsXSAtIFRoZSBjaGlsZCBlbGVtZW50IHRvIHJlbW92ZSB0aGUgZ3V0dGVyIGZyb20uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUaGUgdHlwZSBvZiBndXR0ZXIgdG8gcmVtb3ZlLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbcmlnaHQgbGVmdF0gLSBUaGUgcG9zaXRpb25zIHRvIHJlbW92ZSBndXR0ZXJzIGZyb20uIEFjY2VwdHMgYHRvcGAsIGBib3R0b21gLCBgbGVmdGAsIGByaWdodGAgaW4gYW55IGNvbWJpbmF0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJG1pbi1icmVha3BvaW50IFskLXpmLXplcm8tYnJlYWtwb2ludF0gLSBNaW5pbXVtIGJyZWFrcG9pbnQgaW4gYCRicmVha3BvaW50LWNsYXNzZXNgIGZvciB3aGljaCB0byBjb2xsYXBzZSB0aGUgZ3V0dGVyLlxuQG1peGluIHh5LWdyaWQtY29sbGFwc2UoXG4gICRzZWxlY3RvcjogJy5jZWxsJyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IHJpZ2h0IGxlZnQsXG4gICRtaW4tYnJlYWtwb2ludDogJC16Zi16ZXJvLWJyZWFrcG9pbnRcbikge1xuICAvLyBGaXJzdCwgbGV0cyBuZWdhdGUgYW55IG1hcmdpbnMgb24gdGhlIHRvcCBsZXZlbFxuICBAaWYgKCRndXR0ZXItdHlwZSA9PSAnbWFyZ2luJykge1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluLWJyZWFrcG9pbnQpIHtcbiAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgbWFyZ2luLSN7JHZhbHVlfTogMDtcbiAgICAgIH1cblxuICAgICAgPiAjeyRzZWxlY3Rvcn0ge1xuICAgICAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAgICAgbWFyZ2luLSN7JHZhbHVlfTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICRleGNsdWRlZC1icHM6IC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJG1pbi1icmVha3BvaW50KTtcblxuICAgIC8vIE91dHB1dCBuZXcgd2lkdGhzIHRvIG5vdCBpbmNsdWRlIGd1dHRlcnNcbiAgICBAZWFjaCAkYnAgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaWYoc2wtY29udGFpbigkZXhjbHVkZWQtYnBzLCAkYnApKSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1pbi1icmVha3BvaW50KSB7XG4gICAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgICAgICAgID4gLiN7JGJwfS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZSgkaSwgJGd1dHRlci10eXBlOiBub25lKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicCkge1xuICAgICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgICAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgICAgICAgICA+IC4jeyRicH0tI3skaX0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoJGksICRndXR0ZXItdHlwZTogbm9uZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1pbi1icmVha3BvaW50KSB7XG4gICAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAgIG1hcmdpbi0jeyR2YWx1ZX06IDA7XG4gICAgICB9XG5cbiAgICAgID4gI3skc2VsZWN0b3J9IHtcbiAgICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICAgIHBhZGRpbmctI3skdmFsdWV9OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gUmV0dXJucyB0aGUgYXBwcm9wcmlhdGUgQ1NTIHZhbHVlIHRvIG9mZnNldCBhIGNlbGwuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkbiAtIFNpemUgdG8gb2Zmc2V0IGJ5LiBZb3UgY2FuIHBhc3MgaW4gYW55IHZhbHVlIGFjY2VwdGVkIGJ5IHRoZSBgeHktY2VsbCgpYCBtaXhpbiwgc3VjaCBhcyBgNmAsIGA1MCVgLCBvciBgMSBvZiAyYC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gTWFwIG9mIGd1dHRlcnMgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZSBmb3IgcmVzcG9uc2l2ZSBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIFRoZSB0eXBlIG9mIGd1dHRlciB0byB1c2UuIENhbiBiZSBgbWFyZ2luYCBvciBgcGFkZGluZ2Bcbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfFN0cmluZ30gVGhlIGNlbGwgb2Zmc2V0IHByb3BlcnR5IHZhbHVlLlxuQGZ1bmN0aW9uIHh5LWNlbGwtb2Zmc2V0KFxuICAkbixcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGJyZWFrcG9pbnQ6IG51bGxcbikge1xuICAkYnJlYWtwb2ludDogLXpmLWN1cnJlbnQtYnJlYWtwb2ludCgkYnJlYWtwb2ludCwgJGRlZmF1bHQ6ICQtemYtemVyby1icmVha3BvaW50KTtcbiAgJHNpemU6IHh5LWNlbGwtc2l6ZSgkbik7XG5cbiAgJG9mZnNldDogJHNpemU7XG4gIEBpZiAoJGd1dHRlci10eXBlID09ICdtYXJnaW4nKSB7XG4gICAgLy8gTWFrZSBzdXJlIHRoYXQgMCBpcyB0cmFuc2xhdGVkIGluIDByZW0gZm9yIGNhbGMoKVxuICAgICRndXR0ZXI6IHJlbS1jYWxjKHh5LWNlbGwtZ3V0dGVycygkZ3V0dGVycywgJGJyZWFrcG9pbnQpKTtcbiAgICBAaWYgJGd1dHRlciA9PSAwIHtcbiAgICAgIC8vIHNhc3MtbGludDpkaXNhYmxlIHplcm8tdW5pdFxuICAgICAgJGd1dHRlcjogMHJlbTtcbiAgICB9XG4gICAgJG9mZnNldDogaWYoJGd1dHRlciA9PSAwLCAkc2l6ZSwgY2FsYygjeyRzaXplfSArICN7JGd1dHRlcn0gLyAyKSk7XG4gIH1cbiAgQHJldHVybiAkb2Zmc2V0O1xufVxuXG4vLy8gT2Zmc2V0cyBhIGNvbHVtbiB0byB0aGUgcmlnaHQvYm90dG9tIGJ5IGAkbmAgY29sdW1ucy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gU2l6ZSB0byBvZmZzZXQgYnkuIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGB4eS1jZWxsKClgIG1peGluLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSBNYXAgb2YgZ3V0dGVycyBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIGZvciByZXNwb25zaXZlIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gVGhlIHR5cGUgb2YgZ3V0dGVyIHRvIHVzZS4gQ2FuIGJlIGBtYXJnaW5gIG9yIGBwYWRkaW5nYFxuLy8vIEBwYXJhbSB7TnVtYmVyfEFycmF5fEtleXdvcmR9ICRicmVha3BvaW50IFtudWxsXSAtIEJyZWFrcG9pbnQgdG8gdXNlIGZvciBgJGd1dHRlcnNgLiBJdCBjYW4gYmUgYSBicmVha3BvaW50IG5hbWUsIGxpc3Qgb2YgYnJlYWtwb2ludHMgb3IgYGF1dG9gIGZvciBhbGwgYnJlYWtwb2ludHMuIElmIGEgbGlzdCBpcyBnaXZlbiwgbWVkaWEtcXVlcmllcyB3aWxsIGJlIGdlbmVyYXRlZC4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gU2V0cyB0aGUgZGlyZWN0aW9uIG9mIHRoZSBvZmZzZXQuIElmIHNldCB0byB0cnVlIHdpbGwgYXBwbHkgbWFyZ2luLXRvcCBpbnN0ZWFkLlxuQG1peGluIHh5LWNlbGwtb2Zmc2V0KFxuICAkbixcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICAkYnJlYWtwb2ludDogLXpmLWN1cnJlbnQtYnJlYWtwb2ludCgkYnJlYWtwb2ludCwgJGRlZmF1bHQ6ICQtemYtemVyby1icmVha3BvaW50KTtcbiAgJGRpcmVjdGlvbjogaWYoJHZlcnRpY2FsLCAndG9wJywgJGdsb2JhbC1sZWZ0KTtcblxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50LWluKCRicmVha3BvaW50LCAkbWVkaWEtcXVlcmllczogJ2Zvci1saXN0cycpIHtcbiAgICAkb2Zmc2V0OiB4eS1jZWxsLW9mZnNldCgkbiwgJGd1dHRlcnMsICRndXR0ZXItdHlwZSk7XG4gICAgbWFyZ2luLSN7JGRpcmVjdGlvbn06ICN7JG9mZnNldH07XG4gIH1cbn1cbiIsIi8vIHNhc3MtbGludDpkaXNhYmxlIG5vLXZlbmRvci1wcmVmaXhlc1xuXG4vLy8gTW9kaWZpZXMgYSBncmlkIHRvIGdpdmUgaXQgXCJmcmFtZVwiIGJlaGF2aW9yIChubyBvdmVyZmxvdywgbm8gd3JhcCwgc3RyZXRjaCBiZWhhdmlvcilcbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBJcyBncmlkIHZlcnRpY2FsIG9yIGhvcml6b250YWwuIFNob3VsZCBtYXRjaCBncmlkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJG5lc3RlZCBbZmFsc2VdIC0gSXMgZ3JpZCBuZXN0ZWQgb3Igbm90LiBJZiBuZXN0ZWQgaXMgdHJ1ZSB0aGlzIHNldHMgdGhlIGZyYW1lIHRvIDEwMCUgaGVpZ2h0LCBvdGhlcndpc2Ugd2lsbCBiZSAxMDB2aC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFtudWxsXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRpbmNsdWRlLWJhc2UgW3RydWVdIC0gSW5jbHVkZSB0aGUgYmFzZSBzdHlsZXMgdGhhdCBkb24ndCB2YXJ5IHBlciBicmVha3BvaW50LlxuQG1peGluIHh5LWdyaWQtZnJhbWUoXG4gICR2ZXJ0aWNhbDogZmFsc2UsXG4gICRuZXN0ZWQ6IGZhbHNlLFxuICAkZ3V0dGVyczogbnVsbCxcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICRpbmNsdWRlLWJhc2U6IHRydWVcbikge1xuXG4gIEBpZiAkaW5jbHVkZS1iYXNlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgfVxuXG4gIEBpZiAkYnJlYWtwb2ludCA9PSBudWxsIGFuZCB0eXBlLW9mKCRndXR0ZXJzKSA9PSAnbWFwJyB7XG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUoJHZlcnRpY2FsLCAkbmVzdGVkLCAkZ3V0dGVycywgJC16Zi1zaXplLCBmYWxzZSk7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAvLyBHZXQgb3VyIGd1dHRlcnMgaWYgYXBwbGljYWJsZVxuICAgICRndXR0ZXI6IC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG5cbiAgICAvLyBJZiB3ZSBoYXZlIGEgZ3V0dGVyLCBhZGQgaXQgdG8gdGhlIHdpZHRoL2hlaWdodFxuICAgIEBpZiAkZ3V0dGVyIHtcbiAgICAgIEBpZiAkdmVydGljYWwgPT0gdHJ1ZSB7XG4gICAgICAgICR1bml0OiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZoKTtcbiAgICAgICAgJGd1dHRlcjogcmVtLWNhbGMoJGd1dHRlcik7XG4gICAgICAgIC8vIE1ha2Ugc3VyZSB0aGF0IDAgaXMgdHJhbnNsYXRlZCBpbiAwcmVtIGZvciBjYWxjKClcbiAgICAgICAgQGlmICRndXR0ZXIgPT0gMCB7XG4gICAgICAgICAgLy8gc2Fzcy1saW50OmRpc2FibGUgemVyby11bml0XG4gICAgICAgICAgJGd1dHRlcjogMHJlbTtcbiAgICAgICAgfVxuICAgICAgICBoZWlnaHQ6IGNhbGMoI3skdW5pdH0gKyAjeyRndXR0ZXJ9KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkdW5pdDogaWYoJG5lc3RlZCA9PSB0cnVlLCAxMDAlLCAxMDB2dyk7XG4gICAgICAgICRndXR0ZXI6IHJlbS1jYWxjKCRndXR0ZXIpO1xuICAgICAgICAvLyBNYWtlIHN1cmUgdGhhdCAwIGlzIHRyYW5zbGF0ZWQgaW4gMHJlbSBmb3IgY2FsYygpXG4gICAgICAgIEBpZiAkZ3V0dGVyID09IDAge1xuICAgICAgICAgIC8vIHNhc3MtbGludDpkaXNhYmxlIHplcm8tdW5pdFxuICAgICAgICAgICRndXR0ZXI6IDByZW07XG4gICAgICAgIH1cbiAgICAgICAgd2lkdGg6IGNhbGMoI3skdW5pdH0gKyAjeyRndXR0ZXJ9KTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGlmICR2ZXJ0aWNhbCA9PSB0cnVlIHtcbiAgICAgICAgaGVpZ2h0OiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZoKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICB3aWR0aDogaWYoJG5lc3RlZCA9PSB0cnVlLCAxMDAlLCAxMDB2dyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBNb2RpZmllcyBhIGNlbGwgdG8gZ2l2ZSBpdCBcImJsb2NrXCIgYmVoYXZpb3IgKG92ZXJmbG93IGF1dG8sIGluZXJ0aWFsIHNjcm9sbGluZylcbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBJcyBncmlkIHZlcnRpY2FsIG9yIGhvcml6b250YWwuIFNob3VsZCBtYXRjaCBncmlkLlxuQG1peGluIHh5LWNlbGwtYmxvY2soXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICAkcHJvcGVydHk6IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCAnb3ZlcmZsb3cteScsICdvdmVyZmxvdy14Jyk7XG5cbiAgQGlmICR2ZXJ0aWNhbCA9PSB0cnVlIHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgfSBAZWxzZSB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xufVxuXG4vLy8gQ29udGFpbmVyIGZvciBpbnNpZGUgYSBncmlkIGZyYW1lIGNvbnRhaW5pbmcgbXVsdGlwbGUgYmxvY2tzLiBUeXBpY2FsbHkgdXNlZFxuLy8vIGFzIGEgbW9kaWZpZXIgZm9yIGEgYC5jZWxsYCB0byBhbGxvdyB0aGUgY2VsbCB0byBwYXNzIGFsb25nIGZsZXggc2l6aW5nXG4vLy8gY29uc3RyYWludHMgLyBmcm9tIHBhcmVudHMgdG8gY2hpbGRyZW4uXG5AbWl4aW4geHktY2VsbC1ibG9jay1jb250YWluZXIoKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG5cbiAgPiAuZ3JpZC14IHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeS1iYXNlXG4vLy8vXG5cbi8vIEJhc2UgVHlwb2dyYXBoeVxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbi8vIFRoZXNlIGFyZSBzdHlsZXMgYXBwbGllZCB0byBiYXNpYyBIVE1MIHRhZ3MsIGluY2x1ZGluZzpcbi8vICAgLSBQYXJhZ3JhcGhzIDxwPlxuLy8gICAtIEJvbGQvaXRhbGljcyA8Yj4gPHN0cm9uZz4gPGk+IDxlbT5cbi8vICAgLSBTbWFsbCB0ZXh0IDxzbWFsbD5cbi8vICAgLSBIZWFkaW5ncyA8aDE+LTxoNj5cbi8vICAgLSBBbmNob3JzIDxhPlxuLy8gICAtIERpdmlkZXJzIDxocj5cbi8vICAgLSBMaXN0cyA8dWw+IDxvbD4gPGRsPlxuLy8gICAtIEJsb2NrcXVvdGVzIDxibG9ja3F1b3RlPlxuLy8gICAtIENvZGUgYmxvY2tzIDxjb2RlPlxuLy8gICAtIEFiYnJldmlhdGlvbnMgPGFiYnI+XG4vLyAgIC0gQ2l0YXRpb25zIDxjaXRlPlxuLy8gICAtIEtleXN0cm9rZXMgPGtiZD5cblxuLy8vIEZvbnQgZmFtaWx5IGZvciBoZWFkZXIgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGhlYWRlci1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdHlsZSAoZS5nLiBpdGFsaWNpemVkKSBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0YWNrIHVzZWQgZm9yIGVsZW1lbnRzIHRoYXQgdXNlIG1vbm9zcGFjZWQgdHlwZSwgc3VjaCBhcyBjb2RlIHNhbXBsZXNcbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcywgJ0xpYmVyYXRpb24gTW9ubycsIENvdXJpZXIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItY29sb3I6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJGhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIFN0eWxlcyBmb3IgaGVhZGluZ3MgYXQgdmFyaW91cyBzY3JlZW4gc2l6ZXMuIEVhY2gga2V5IGlzIGEgYnJlYWtwb2ludCwgYW5kIGVhY2ggdmFsdWUgaXMgYSBtYXAgb2YgaGVhZGluZyBzdHlsZXMuXG4vLy8gQHR5cGUgTWFwXG4kaGVhZGVyLXN0eWxlczogKFxuICBzbWFsbDogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogMjQpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMTkpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMTgpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMTcpLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuICBtZWRpdW06IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDQ4KSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDQwKSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDMxKSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDI1KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgKSxcbikgIWRlZmF1bHQ7XG5cbi8vICRoZWFkZXItc3R5bGVzIG1hcCBpcyBidWlsdCBmcm9tICRoZWFkZXItc2l6ZXMgaW4gb3JkZXIgdG8gZW5zdXJlIGRvd253YXJkIGNvbXBhdGliaWxpdHlcbi8vIHdoZW4gJGhlYWRlci1zaXplcyBpcyBkZXByZWNpYXRlZCwgJGhlYWRlci1zdHlsZXMgbmVlZHMgdG8gZ2V0ICFkZWZhdWx0IHZhbHVlcyBsaWtlIHNldHRpbmdzLnNjc3NcbkBmdW5jdGlvbiBidWlsZC1mcm9tLWhlYWRlci1zaXplcygkaGVhZGVyLXNpemVzKSB7XG4gIEB3YXJuICdOb3RlLCB0aGF0ICRoZWFkZXItc2l6ZXMgaGFzIGJlZW4gcmVwbGFjZWQgd2l0aCAkaGVhZGVyLXN0eWxlcy4gJGhlYWRlci1zaXplcyBzdGlsbCB3b3JrcywgYnV0IGl0IGlzIGdvaW5nIHRvIGJlIGRlcHJlY2lhdGVkLic7XG4gICRoZWFkZXItc3R5bGVzOiAoKTtcbiAgQGVhY2ggJHNpemUsICRoZWFkZXJzIGluICRoZWFkZXItc2l6ZXMge1xuICAgICRoZWFkZXItbWFwOiAoKTtcbiAgICBAZWFjaCAkaGVhZGVyLCAkZm9udC1zaXplIGluICRoZWFkZXJzIHtcbiAgICAgICRoZWFkZXItbWFwOiBtYXAtbWVyZ2UoJGhlYWRlci1tYXAsICgkaGVhZGVyOiAoJ2ZvbnQtc2l6ZSc6ICRmb250LXNpemUpKSk7XG4gICAgfVxuICAgICRoZWFkZXItc3R5bGVzOiBtYXAtbWVyZ2UoJGhlYWRlci1zdHlsZXMsICgkc2l6ZTogJGhlYWRlci1tYXApKTtcbiAgfVxuICBAcmV0dXJuICRoZWFkZXItc3R5bGVzO1xufVxuXG4vLyBJZiBpdCBleGlzdHMgJGhlYWRlcnMtc2l6ZXMgaXMgdXNlZCB0byBidWlsZCAkaGVhZGVyLXN0eWxlcy4gU2VlIHRoZSBkb2N1bWVudGF0aW9uLlxuQGlmIHZhcmlhYmxlLWV4aXN0cyhoZWFkZXItc2l6ZXMpIHtcbiAgJGhlYWRlci1zdHlsZXM6IGJ1aWxkLWZyb20taGVhZGVyLXNpemVzKCRoZWFkZXItc2l6ZXMpO1xufVxuXG4vLy8gVGV4dCByZW5kZXJpbmcgbWV0aG9kIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgYDxzbWFsbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJHNtYWxsLWZvbnQtc2l6ZTogODAlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgYDxzbWFsbD5gIGVsZW1lbnRzIHdoZW4gcGxhY2VkIGluc2lkZSBoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIHRleHQgaW5zaWRlIGA8cD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhcmFncmFwaC1saW5laGVpZ2h0OiAxLjYgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IHJlbmRlcmluZyBtZXRob2QgZm9yIHBhcmFncmFwaCB0ZXh0LlxuLy8vIEB0eXBlIFN0cmluZ1xuJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5ICFkZWZhdWx0O1xuXG4vLy8gVXNlIHRoZSBgLmNvZGUtaW5saW5lYCBjb21wb25lbnQgYXMgZGVmYXVsdCBmb3IgYDxjb2RlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGVuYWJsZS1jb2RlLWlubGluZTogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZWNvcmF0aW9uIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGRlY29yYXRpb24gZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI6IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIHdpZHRoIG9mIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTGlzdFxuJGhyLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG8gIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbGluZWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tICFkZWZhdWx0O1xuXG4vLy8gQnVsbGV0IHR5cGUgdG8gdXNlIGZvciB1bm9yZGVyZWQgbGlzdHMgKGUuZy4sIGBzcXVhcmVgLCBgY2lyY2xlYCwgYGRpc2NgKS5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2MgIWRlZmF1bHQ7XG5cbi8vLyBQb3NpdGlvbmluZyBmb3IgYnVsbGV0cyBvbiB1bm9yZGVyZWQgbGlzdCBpdGVtcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlICFkZWZhdWx0O1xuXG4vLy8gTGVmdCAob3IgcmlnaHQpIG1hcmdpbiBmb3IgbGlzdHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGEgbGlzdCBpbnNpZGUgYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgYDxkbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgYDxkdD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIGA8ZHQ+YCBhbmQgYDxkZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogMC4zcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBhIGA8YmxvY2txdW90ZT5gIGVsZW1lbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoOSAyMCAwIDE5KSAhZGVmYXVsdDtcblxuLy8vIFNpZGUgYm9yZGVyIGZvciBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBVc2UgdGhlIGAuY2l0ZS1ibG9ja2AgY29tcG9uZW50IGFzIGRlZmF1bHQgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRlbmFibGUtY2l0ZS1ibG9jazogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRrZXlzdHJva2UtZm9udDogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3IgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRrZXlzdHJva2UtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRrZXlzdHJva2UtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRrZXlzdHJva2UtcGFkZGluZzogcmVtLWNhbGMoMiA0IDApICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4ka2V5c3Ryb2tlLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gYm9yZGVyIHN0eWxlIGZvciBgPGFiYnI+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kYWJici11bmRlcmxpbmU6IDFweCBkb3R0ZWQgJGJsYWNrICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi10eXBvZ3JhcGh5LWJhc2Uge1xuICAvLyBUeXBvZ3JhcGh5IHJlc2V0c1xuICBkaXYsXG4gIGRsLFxuICBkdCxcbiAgZGQsXG4gIHVsLFxuICBvbCxcbiAgbGksXG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSxcbiAgaDYsXG4gIHByZSxcbiAgZm9ybSxcbiAgcCxcbiAgYmxvY2txdW90ZSxcbiAgdGgsXG4gIHRkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8vIFBhcmFncmFwaHNcbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuXG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4gICAgdGV4dC1yZW5kZXJpbmc6ICRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc7XG4gIH1cblxuICAvLyBFbXBoYXNpemVkIHRleHRcbiAgZW0sXG4gIGkge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFN0cm9uZyB0ZXh0XG4gIHN0cm9uZyxcbiAgYiB7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBTbWFsbCB0ZXh0XG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBIZWFkaW5nc1xuICBoMSwgLmgxLFxuICBoMiwgLmgyLFxuICBoMywgLmgzLFxuICBoNCwgLmg0LFxuICBoNSwgLmg1LFxuICBoNiwgLmg2IHtcbiAgICBmb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcbiAgICBmb250LXN0eWxlOiAkaGVhZGVyLWZvbnQtc3R5bGU7XG4gICAgZm9udC13ZWlnaHQ6ICRoZWFkZXItZm9udC13ZWlnaHQ7XG4gICAgY29sb3I6ICRoZWFkZXItY29sb3I7XG4gICAgdGV4dC1yZW5kZXJpbmc6ICRoZWFkZXItdGV4dC1yZW5kZXJpbmc7XG5cbiAgICBzbWFsbCB7XG4gICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgIGNvbG9yOiAkaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gSGVhZGluZyBzdHlsZXNcbiAgQGVhY2ggJHNpemUsICRoZWFkZXJzIGluICRoZWFkZXItc3R5bGVzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICBAZWFjaCAkaGVhZGVyLCAkaGVhZGVyLWRlZnMgaW4gJGhlYWRlcnMge1xuICAgICAgICAkZm9udC1zaXplLXRlbXA6IDFyZW07XG4gICAgICAgICN7JGhlYWRlcn0sIC4jeyRoZWFkZXJ9IHtcblxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGZvbnQtc2l6ZSkge1xuICAgICAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgZm9udC1zaXplKSk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgZnMpIHtcbiAgICAgICAgICAgICRmb250LXNpemUtdGVtcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGZzKSk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBsaW5lLWhlaWdodCkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGxpbmUtaGVpZ2h0KSwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbGgpIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBsaCksICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYygkaGVhZGVyLWxpbmVoZWlnaHQsICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWFyZ2luLXRvcCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1hcmdpbi10b3ApKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbXQpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtdCkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWFyZ2luLWJvdHRvbSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1hcmdpbi1ib3R0b20pKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWIpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYikpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoJGhlYWRlci1tYXJnaW4tYm90dG9tKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBMaW5rc1xuICBhIHtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICBjb2xvcjogJGFuY2hvci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uO1xuXG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yLWhvdmVyO1xuICAgICAgQGlmICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyICE9ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhvcml6b250YWwgcnVsZVxuICBociB7XG4gICAgY2xlYXI6IGJvdGg7XG5cbiAgICBtYXgtd2lkdGg6ICRoci13aWR0aDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbWFyZ2luOiAkaHItbWFyZ2luO1xuXG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogJGhyLWJvcmRlcjtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgfVxuXG4gIC8vIExpc3RzXG4gIHVsLFxuICBvbCxcbiAgZGwge1xuICAgIG1hcmdpbi1ib3R0b206ICRsaXN0LW1hcmdpbi1ib3R0b207XG4gICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogJGxpc3Qtc3R5bGUtcG9zaXRpb247XG4gICAgbGluZS1oZWlnaHQ6ICRsaXN0LWxpbmVoZWlnaHQ7XG4gIH1cblxuICAvLyBMaXN0IGl0ZW1zXG4gIGxpIHtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBVbm9yZGVyZWQgbGlzdHNcbiAgdWwge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LXNpZGUtbWFyZ2luO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogJGxpc3Qtc3R5bGUtdHlwZTtcbiAgfVxuXG4gIC8vIE9yZGVyZWQgbGlzdHNcbiAgb2wge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LXNpZGUtbWFyZ2luO1xuICB9XG5cbiAgLy8gTmVzdGVkIHVub3JkZXJlZC9vcmRlcmVkIGxpc3RzXG4gIHVsLCBvbCB7XG4gICAgJiAmIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gRGVmaW5pdGlvbiBsaXN0c1xuICBkbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGRlZm5saXN0LW1hcmdpbi1ib3R0b207XG5cbiAgICBkdCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tO1xuICAgICAgZm9udC13ZWlnaHQ6ICRkZWZubGlzdC10ZXJtLXdlaWdodDtcbiAgICB9XG4gIH1cblxuICAvLyBCbG9ja3F1b3Rlc1xuICBibG9ja3F1b3RlIHtcbiAgICBtYXJnaW46IDAgMCAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG4gICAgcGFkZGluZzogJGJsb2NrcXVvdGUtcGFkZGluZztcbiAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAkYmxvY2txdW90ZS1ib3JkZXI7XG5cbiAgICAmLCBwIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4gICAgICBjb2xvcjogJGJsb2NrcXVvdGUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gSW5saW5lIENpdGF0aW9uc1xuICBAaWYgKCRlbmFibGUtY2l0ZS1ibG9jayA9PSB0cnVlKSB7XG4gICAgY2l0ZSB7XG4gICAgICAvLyBFeHRlbmRpbmcgYSBjbGFzcyBpcyBub3QgcmVjb21tZW5kZWQuXG4gICAgICAvLyBUT0RPOiBCcmVhayB0aGUgdHlwb2dyYXBoeS1iYXNlL3R5cG9ncmFwaHktaGVscGVycyBzZXBhcmF0aW9uXG4gICAgICBAZXh0ZW5kICVjaXRlLWJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFiYnJldmlhdGlvbnNcbiAgYWJiciwgYWJiclt0aXRsZV0ge1xuICAgIGJvcmRlci1ib3R0b206ICRhYmJyLXVuZGVybGluZTtcbiAgICBjdXJzb3I6IGhlbHA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLy8gRmlndXJlc1xuICBmaWd1cmUge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8vIENvZGVcbiAgQGlmICgkZW5hYmxlLWNvZGUtaW5saW5lID09IHRydWUpIHtcbiAgICBjb2RlIHtcbiAgICAgIEBleHRlbmQgJWNvZGUtaW5saW5lO1xuICAgIH1cbiAgfVxuXG4gIC8vIEtleXN0cm9rZXNcbiAga2JkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogJGtleXN0cm9rZS1wYWRkaW5nO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGtleXN0cm9rZS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRrZXlzdHJva2UtZm9udDtcbiAgICBjb2xvcjogJGtleXN0cm9rZS1jb2xvcjtcblxuICAgIEBpZiBoYXMtdmFsdWUoJGtleXN0cm9rZS1yYWRpdXMpIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRrZXlzdHJva2UtcmFkaXVzO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AdXNlIFwic2Fzczpjb2xvclwiO1xuQGltcG9ydCAnbWF0aCc7XG5cbiRjb250cmFzdC13YXJuaW5nczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFBhdGNoIHRvIGZpeCBpc3N1ZSAjMTIwODBcbiRwcmltYXJ5LWNvbG9yOiBudWxsICFkZWZhdWx0O1xuJHNlY29uZGFyeS1jb2xvcjogbnVsbCAhZGVmYXVsdDtcbiR3YXJuaW5nLWNvbG9yOiBudWxsICFkZWZhdWx0O1xuJGFsZXJ0LWNvbG9yOiBudWxsICFkZWZhdWx0O1xuJHN1Y2Nlc3MtY29sb3I6IG51bGwgIWRlZmF1bHQ7XG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBDaGVja3MgdGhlIGx1bWluYW5jZSBvZiBgJGNvbG9yYC5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIHRvIGNoZWNrIHRoZSBsdW1pbmFuY2Ugb2YuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgbHVtaW5hbmNlIG9mIGAkY29sb3JgLlxuQGZ1bmN0aW9uIGNvbG9yLWx1bWluYW5jZSgkY29sb3IpIHtcbiAgLy8gQWRhcHRlZCBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vTGVhVmVyb3UvY29udHJhc3QtcmF0aW8vYmxvYi9naC1wYWdlcy9jb2xvci5qc1xuICAvLyBGb3JtdWxhOiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA4L1JFQy1XQ0FHMjAtMjAwODEyMTEvI3JlbGF0aXZlbHVtaW5hbmNlZGVmXG4gICRyZWQgICA6IHJvdW5kKGNvbG9yLmNoYW5uZWwoJGNvbG9yLCBcInJlZFwiLCAkc3BhY2U6IHJnYikpO1xuICAkZ3JlZW4gOiByb3VuZChjb2xvci5jaGFubmVsKCRjb2xvciwgXCJncmVlblwiLCAkc3BhY2U6IHJnYikpO1xuICAkYmx1ZSAgOiByb3VuZChjb2xvci5jaGFubmVsKCRjb2xvciwgXCJibHVlXCIsICRzcGFjZTogcmdiKSk7XG5cbiAgJHJnYmE6ICRyZWQsICRncmVlbiwgJGJsdWU7XG4gICRyZ2JhMjogKCk7XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAzIHtcbiAgICAkcmdiOiBudGgoJHJnYmEsICRpKTtcbiAgICAkcmdiOiBkaXZpZGUoJHJnYiwgMjU1KTtcblxuICAgICRyZ2I6IGlmKCRyZ2IgPCAwLjAzOTI4LCBkaXZpZGUoJHJnYiwgMTIuOTIpLCBwb3coZGl2aWRlKCRyZ2IgKyAwLjA1NSwgMS4wNTUpLCAyLjQpKTtcblxuICAgICRyZ2JhMjogYXBwZW5kKCRyZ2JhMiwgJHJnYik7XG4gIH1cblxuICBAcmV0dXJuIDAuMjEyNiAqIG50aCgkcmdiYTIsIDEpICsgMC43MTUyICogbnRoKCRyZ2JhMiwgMikgKyAwLjA3MjIgKiBudGgoJHJnYmEyLCAzKTtcbn1cblxuLy8vIENoZWNrcyB0aGUgY29udHJhc3QgcmF0aW8gb2YgdHdvIGNvbG9ycy5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvcjEgLSBGaXJzdCBjb2xvciB0byBjb21wYXJlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvcjIgLSBTZWNvbmQgY29sb3IgdG8gY29tcGFyZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBjb250cmFzdCByYXRpbyBvZiB0aGUgY29tcGFyZWQgY29sb3JzLlxuQGZ1bmN0aW9uIGNvbG9yLWNvbnRyYXN0KCRjb2xvcjEsICRjb2xvcjIpIHtcbiAgLy8gQWRhcHRlZCBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vTGVhVmVyb3UvY29udHJhc3QtcmF0aW8vYmxvYi9naC1wYWdlcy9jb2xvci5qc1xuICAvLyBGb3JtdWxhOiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA4L1JFQy1XQ0FHMjAtMjAwODEyMTEvI2NvbnRyYXN0LXJhdGlvZGVmXG4gICRsdW1pbmFuY2UxOiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yMSkgKyAwLjA1O1xuICAkbHVtaW5hbmNlMjogY29sb3ItbHVtaW5hbmNlKCRjb2xvcjIpICsgMC4wNTtcbiAgJHJhdGlvOiBkaXZpZGUoJGx1bWluYW5jZTEsICRsdW1pbmFuY2UyKTtcblxuICBAaWYgJGx1bWluYW5jZTIgPiAkbHVtaW5hbmNlMSB7XG4gICAgJHJhdGlvOiBkaXZpZGUoMSwgJHJhdGlvKTtcbiAgfVxuXG4gICRyYXRpbzogcm91bmQoJHJhdGlvICogMTApICogMC4xO1xuXG4gIEByZXR1cm4gJHJhdGlvO1xufVxuXG4vLy8gQ2hlY2tzIHRoZSBsdW1pbmFuY2Ugb2YgYCRiYXNlYCwgYW5kIHJldHVybnMgdGhlIGNvbG9yIGZyb20gYCRjb2xvcnNgIChsaXN0IG9mIGNvbG9ycykgdGhhdCBoYXMgdGhlIG1vc3QgY29udHJhc3QuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFzZSAtIENvbG9yIHRvIGNoZWNrIGx1bWluYW5jZS5cbi8vLyBAcGFyYW0ge0xpc3R9ICRjb2xvcnMgWygkd2hpdGUsICRibGFjayldIC0gQ29sb3JzIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0b2xlcmFuY2UgWyRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2VdIC0gQ29udHJhc3QgdG9sZXJhbmNlLlxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSB0aGUgY29sb3IgZnJvbSBgJGNvbG9yc2AgKGxpc3Qgb2YgY29sb3JzKSB0aGF0IGhhcyB0aGUgbW9zdCBjb250cmFzdC5cbkBmdW5jdGlvbiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYXNlLCAkY29sb3JzOiAoJHdoaXRlLCAkYmxhY2spLCAkdG9sZXJhbmNlOiAkZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlKSB7XG4gICRjb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAxKSk7XG4gICRiZXN0OiBudGgoJGNvbG9ycywgMSk7XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCBsZW5ndGgoJGNvbG9ycykge1xuICAgICRjdXJyZW50LWNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsICRpKSk7XG4gICAgQGlmICgkY3VycmVudC1jb250cmFzdCAtICRjb250cmFzdCA+ICR0b2xlcmFuY2UpIHtcbiAgICAgICRjb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAkaSkpO1xuICAgICAgJGJlc3Q6IG50aCgkY29sb3JzLCAkaSk7XG4gICAgfVxuICB9XG5cbiAgQGlmICgkY29udHJhc3Qtd2FybmluZ3MgYW5kICRjb250cmFzdCA8IDMpIHtcbiAgICBAd2FybiAnQ29udHJhc3QgcmF0aW8gb2YgI3skYmVzdH0gb24gI3skYmFzZX0gaXMgcHJldHR5IGJhZCwganVzdCAjeyRjb250cmFzdH0nO1xuICB9XG5cbiAgQHJldHVybiAkYmVzdDtcbn1cblxuLy8vIFNjYWxlcyBhIGNvbG9yIHRvIGJlIGRhcmtlciBpZiBpdCdzIGxpZ2h0LCBvciBsaWdodGVyIGlmIGl0J3MgZGFyay4gVXNlIHRoaXMgZnVuY3Rpb24gdG8gdGludCBhIGNvbG9yIGFwcHJvcHJpYXRlIHRvIGl0cyBsaWdodG5lc3MuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciB0byBzY2FsZS5cbi8vLyBAcGFyYW0ge1BlcmNlbnRhZ2V9ICRzY2FsZSBbNSVdIC0gQW1vdW50IHRvIHNjYWxlIHVwIG9yIGRvd24uXG4vLy8gQHBhcmFtIHtQZXJjZW50YWdlfSAkdGhyZXNob2xkIFs0MCVdIC0gVGhyZXNob2xkIG9mIGxpZ2h0bmVzcyB0byBjaGVjayBhZ2FpbnN0LlxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSBBIHNjYWxlZCBjb2xvci5cbkBmdW5jdGlvbiBzbWFydC1zY2FsZSgkY29sb3IsICRzY2FsZTogNSUsICR0aHJlc2hvbGQ6IDQwJSkge1xuICBAaWYgY29sb3IuY2hhbm5lbCgkY29sb3IsIFwibGlnaHRuZXNzXCIsICRzcGFjZTogaHNsKSA+ICR0aHJlc2hvbGQge1xuICAgICRzY2FsZTogLSRzY2FsZTtcbiAgfVxuICBAcmV0dXJuIHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJHNjYWxlKTtcbn1cblxuLy8vIEdldCBjb2xvciBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuLy8vXG4vLy8gQHBhcmFtIHtrZXl9IGNvbG9yIGtleSBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSBjb2xvciBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuQGZ1bmN0aW9uIGdldC1jb2xvcigka2V5KSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCAka2V5KSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsICRrZXkpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAZXJyb3IgJ2dpdmVuICRrZXkgaXMgbm90IGF2YWlsYWJsZSBpbiAkZm91bmRhdGlvbi1wYWxldHRlJztcbiAgfVxufVxuXG4vLy8gVHJhbnNmZXJzIHRoZSBjb2xvcnMgaW4gdGhlIGAkZm91bmRhdGlvbi1wYWxldHRlYCBtYXAgaW50byB2YXJpYWJsZXMsIHN1Y2ggYXMgYCRwcmltYXJ5LWNvbG9yYCBhbmQgYCRzZWNvbmRhcnktY29sb3JgLiBDYWxsIHRoaXMgbWl4aW4gYmVsb3cgdGhlIEdsb2JhbCBzZWN0aW9uIG9mIHlvdXIgc2V0dGluZ3MgZmlsZSB0byBwcm9wZXJseSBtaWdyYXRlIHlvdXIgY29kZWJhc2UuXG5AbWl4aW4gYWRkLWZvdW5kYXRpb24tY29sb3JzKCkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICAgICRwcmltYXJ5LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRwcmltYXJ5LWNvbG9yOiAjMTc3OWJhICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSkge1xuICAgICRzZWNvbmRhcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkc2Vjb25kYXJ5LWNvbG9yOiAjNzY3Njc2ICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHN1Y2Nlc3MpIHtcbiAgICAkc3VjY2Vzcy1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzdWNjZXNzKSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkc3VjY2Vzcy1jb2xvcjogIzNhZGI3NiAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCB3YXJuaW5nKSB7XG4gICAgJHdhcm5pbmctY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgd2FybmluZykgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJHdhcm5pbmctY29sb3I6ICNmZmFlMDAgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpIHtcbiAgICAkYWxlcnQtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRhbGVydC1jb2xvcjogI2NjNGIzNyAhZ2xvYmFsO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeS1oZWxwZXJzXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgbGVhZCBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxlYWQtZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZSAqIDEuMjUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBsZWFkIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGVhZC1saW5laGVpZ2h0OiAxLjYgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzdWJoZWFkZXItY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0b3AgbWFyZ2luIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1tYXJnaW4tdG9wOiAwLjJyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBzdGF0aXN0aWMgbnVtYmVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdGF0LWZvbnQtc2l6ZTogMi41cmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBmb3IgYC5jaXRlLWJsb2NrYCBjb21wb25lbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIGZvciBgLmNpdGUtYmxvY2tgIGNvbXBvbmVudC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjaXRlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpICFkZWZhdWx0O1xuXG4vLy8gUHNldWRvIGNvbnRlbnQgZm9yIGAuY2l0ZS1ibG9ja2AgY29tcG9uZW50LlxuLy8vIEB0eXBlIFN0cmluZ1xuJGNpdGUtcHNldWRvLWNvbnRlbnQ6ICdcXDIwMTQgXFwwMDIwJyAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgYC5jb2RlLWlubGluZWAgYW5kIGAuY29kZS1ibG9ja2AgY29tcG9uZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNvZGUtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIGAuY29kZS1pbmxpbmVgIGFuZCBgLmNvZGUtYmxvY2tgIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGNvZGUtZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiB0ZXh0IGluIGAuY29kZS1pbmxpbmVgIGFuZCBgLmNvZGUtYmxvY2tgIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kY29kZS1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBgLmNvZGUtaW5saW5lYCBhbmQgYC5jb2RlLWJsb2NrYCBjb21wb25lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY29kZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgYC5jb2RlLWlubGluZWAgYW5kIGAuY29kZS1ibG9ja2AgY29tcG9uZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kY29kZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGFyb3VuZCB0ZXh0IG9mIHRoZSBgLmNvZGUtaW5saW5lYCBjb21wb25lbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMiA1IDEpICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBhcm91bmQgdGV4dCBvZiB0aGUgYC5jb2RlLWJsb2NrYCBjb21wb25lbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGNvZGUtYmxvY2stcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIE1hcmdpbiB1bmRlciB0aGUgYC5jb2RlLWJsb2NrYCBjb21wb25lbnQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY29kZS1ibG9jay1tYXJnaW4tYm90dG9tOiAxLjVyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBjaXRlLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAkY2l0ZS1jb2xvcjtcbiAgZm9udC1zaXplOiAkY2l0ZS1mb250LXNpemU7XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRjaXRlLXBzZXVkby1jb250ZW50O1xuICB9XG59XG5cbi8vLyBBZGQgYmFzaWMgc3R5bGVzIGZvciBhIGNvZGUgaGVscGVyLlxuLy8vIFNlZSBgY29kZS1pbmxpbmVgIGFuZCBgY29kZS1ibG9ja2AgbWl4aW5zLlxuQG1peGluIGNvZGUtc3R5bGUge1xuICBib3JkZXI6ICRjb2RlLWJvcmRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvZGUtYmFja2dyb3VuZDtcblxuICBmb250LWZhbWlseTogJGNvZGUtZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkY29kZS1mb250LXdlaWdodDtcbiAgY29sb3I6ICRjb2RlLWNvbG9yO1xufVxuXG4vLy8gTWFrZSBjb2RlIGhlbHBlciBmcm9tIHRoZSBgY29kZS1zdHlsZWAgbWl4aW4gaW5saW5lLlxuLy8vIFVzZWQgdG8gZ2VuZXJhdGUgYC5jb2RlLWlubGluZWBcbkBtaXhpbiBjb2RlLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cbiAgcGFkZGluZzogJGNvZGUtcGFkZGluZztcbn1cblxuLy8vIE1ha2UgY29kZSBoZWxwZXIgZnJvbSB0aGUgYGNvZGUtc3R5bGVgIG1peGluIGEgYmxvY2suXG4vLy8gVXNlZCB0byBnZW5lcmF0ZSBgLmNvZGUtYmxvY2tgXG5AbWl4aW4gY29kZS1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogYXV0bztcbiAgd2hpdGUtc3BhY2U6IHByZTtcblxuICBwYWRkaW5nOiAkY29kZS1ibG9jay1wYWRkaW5nO1xuICBtYXJnaW4tYm90dG9tOiAkY29kZS1ibG9jay1tYXJnaW4tYm90dG9tO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10eXBvZ3JhcGh5LWhlbHBlcnMge1xuICAvLyBVc2UgdG8gY3JlYXRlIGEgc3ViaGVhZGluZyB1bmRlciBhIG1haW4gaGVhZGVyXG4gIC8vIE1ha2Ugc3VyZSB5b3UgcGFpciB0aGUgdHdvIGVsZW1lbnRzIGluIGEgPGhlYWRlcj4gZWxlbWVudCwgbGlrZSB0aGlzOlxuICAvLyA8aGVhZGVyPlxuICAvLyAgIDxoMT5IZWFkaW5nPC9oMT5cbiAgLy8gICA8aDI+U3ViaGVhZGluZzwvaDI+XG4gIC8vIDwvaGVhZGVyPlxuICAuc3ViaGVhZGVyIHtcbiAgICBtYXJnaW4tdG9wOiAkc3ViaGVhZGVyLW1hcmdpbi10b3A7XG4gICAgbWFyZ2luLWJvdHRvbTogJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tO1xuXG4gICAgZm9udC13ZWlnaHQ6ICRzdWJoZWFkZXItZm9udC13ZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRzdWJoZWFkZXItbGluZWhlaWdodDtcbiAgICBjb2xvcjogJHN1YmhlYWRlci1jb2xvcjtcbiAgfVxuXG4gIC8vIFVzZSB0byBzdHlsZSBhbiBpbnRyb2R1Y3RvcnkgbGVhZCwgZGVjaywgYmx1cmIsIGV0Yy5cbiAgLmxlYWQge1xuICAgIGZvbnQtc2l6ZTogJGxlYWQtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGVhZC1saW5laGVpZ2h0O1xuICB9XG5cbiAgLy8gVXNlIHRvIHN0eWxlIGEgbGFyZ2UgbnVtYmVyIHRvIGRpc3BsYXkgYSBzdGF0aXN0aWNcbiAgLnN0YXQge1xuICAgIGZvbnQtc2l6ZTogJHN0YXQtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgcCArICYge1xuICAgICAgbWFyZ2luLXRvcDogLTFyZW07XG4gICAgfVxuICB9XG5cbiAgdWwsIG9sIHtcbiAgICAvLyBVc2UgdG8gcmVtb3ZlIG51bWJlcnMgZnJvbSBvcmRlcmVkIGxpc3QgJiBidWxsZXRzIGZyb20gdW5vcmRlcmVkIGxpc3RcbiAgICAmLm5vLWJ1bGxldCB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAlY2l0ZS1ibG9jayB7XG4gICAgQGluY2x1ZGUgY2l0ZS1ibG9jaztcbiAgfVxuXG4gIC5jaXRlLWJsb2NrIHtcbiAgICBAZXh0ZW5kICVjaXRlLWJsb2NrO1xuICB9XG5cbiAgJWNvZGUtaW5saW5lIHtcbiAgICBAaW5jbHVkZSBjb2RlLXN0eWxlO1xuICAgIEBpbmNsdWRlIGNvZGUtaW5saW5lO1xuICB9XG5cbiAgLmNvZGUtaW5saW5lIHtcbiAgICBAZXh0ZW5kICVjb2RlLWlubGluZTtcbiAgfVxuXG4gIC5jb2RlLWJsb2NrIHtcbiAgICBAaW5jbHVkZSBjb2RlLXN0eWxlO1xuICAgIEBpbmNsdWRlIGNvZGUtYmxvY2s7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQG1peGluIGZvdW5kYXRpb24tdGV4dC1hbGlnbm1lbnQge1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICBAZWFjaCAkYWxpZ24gaW4gKGxlZnQsIHJpZ2h0LCBjZW50ZXIsIGp1c3RpZnkpIHtcbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAuI3skc2l6ZX0tdGV4dC0jeyRhbGlnbn0ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogJGFsaWduO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgLnRleHQtI3skYWxpZ259IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICRhbGlnbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIElmIGB0cnVlYCwgYWxsIGVsZW1lbnRzIHdpbGwgaGF2ZSB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcyB3aGVuIHByaW50ZWQsIHRvIHNhdmUgb24gaW5rLlxuLy8vIEB0eXBlIEJvb2xlYW5cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4kcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGRpc3BsYXlzIG5leHQgdG8gYWxsIGxpbmtzIHRoZWlyIFwiaHJlZlwiIHdoZW4gcHJpbnRlZC5cbi8vLyBAdHlwZSBCb29sZWFuXG4vLy8gQGdyb3VwIGdsb2JhbFxuJHByaW50LWhyZWZzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZS1hbGxcblxuQG1peGluIGZvdW5kYXRpb24tcHJpbnQtc3R5bGVzIHtcbiAgLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICAqIHtcbiAgICAgIC8vIEVuc3VyZSBhIFwiYmxhY2stb24td2hpdGVcIiBwcmludCBieSByZW1vdmluZyBiYWNrZ3JvdW5kcyxcbiAgICAgIC8vIHVzaW5nIGJsYWNrIHRleHQgZXZlcnl3aGVyZSBhbmQgZm9yY2luZyB0aGUgYnJvd3NlciB0byBlY29ub21pemUgaW5rLlxuICAgICAgQGlmICRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kcyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyOiBoNWJwLmNvbS9zXG4gICAgICAgIHByaW50LWNvbG9yLWFkanVzdDogZWNvbm9teTtcbiAgICAgIH1cbiAgICAgIC8vIE90aGVyd2lzZSwgcHJldmVudCBhbnkgZWNvbm9teSBieSB0aGUgYnJvd3Nlci5cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgcHJpbnQtY29sb3ItYWRqdXN0OiBleGFjdDtcbiAgICAgIH1cblxuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gICAgLmhpZGUtZm9yLXByaW50IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiAgICB0YWJsZS5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgICB0aGVhZC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgdGJvZHkuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxuICAgIHRyLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgICB0ZC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICAgIHRoLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG5cbiAgICAvLyBEaXNwbGF5IHRoZSBVUkwgb2YgYSBsaW5rIGFmdGVyIHRoZSB0ZXh0XG4gICAgYSxcbiAgICBhOnZpc2l0ZWQgeyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTt9XG4gICAgQGlmICRwcmludC1ocmVmcyB7XG4gICAgICBhW2hyZWZdOmFmdGVyIHsgY29udGVudDogJyAoJyBhdHRyKGhyZWYpICcpJzsgfVxuICAgIH1cblxuICAgIC8vIERvbid0IGRpc3BsYXkgdGhlIFVSTCBmb3IgaW1hZ2VzIG9yIEphdmFTY3JpcHQvaW50ZXJuYWwgbGlua3NcbiAgICAuaXIgYTphZnRlcixcbiAgICBhW2hyZWZePSdqYXZhc2NyaXB0OiddOmFmdGVyLFxuICAgIGFbaHJlZl49JyMnXTphZnRlciB7IGNvbnRlbnQ6ICcnOyB9XG5cbiAgICAvLyBEaXNwbGF5IHdoYXQgYW4gYWJicmV2aWF0aW9uIHN0YW5kcyBmb3IgYWZ0ZXIgdGhlIHRleHRcbiAgICBhYmJyW3RpdGxlXTphZnRlciB7IGNvbnRlbnQ6ICcgKCcgYXR0cih0aXRsZSkgJyknOyB9XG5cbiAgICAvLyBQcmV2ZW50IHBhZ2UgYnJlYWtzIGluIHRoZSBtaWRkbGUgb2YgYSBibG9ja3F1b3RlIG9yIHByZWZvcm1hdHRlZCB0ZXh0IGJsb2NrXG4gICAgcHJlLFxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGRhcmstZ3JheTtcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvLyBoNWJwLmNvbS90XG4gICAgdGhlYWQgeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7IH1cblxuICAgIHRyLFxuICAgIGltZyB7IHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuXG4gICAgaW1nIHsgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cblxuICAgIEBwYWdlIHsgbWFyZ2luOiAwLjVjbTsgfVxuXG4gICAgcCxcbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBvcnBoYW5zOiAzO1xuICAgICAgd2lkb3dzOiAzO1xuICAgIH1cblxuICAgIC8vIEF2b2lkIHBhZ2UgYnJlYWtzIGFmdGVyIGEgaGVhZGluZ1xuICAgIGgyLFxuICAgIGgzIHsgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7IH1cblxuICAgIC8vIEhlbHBlciB0byByZS1hbGxvdyBwYWdlIGJyZWFrcyBpbiB0aGUgbWlkZGxlIG9mIGNlcnRhaW4gZWxlbWVudHMgKGUuZy4gcHJlLCBibG9ja3F1b3RlLCB0cilcbiAgICAucHJpbnQtYnJlYWstaW5zaWRlIHtcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdXRvO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJ1dHRvblxuLy8vL1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGJ1dHRvbiBlbGVtZW50cy5cbi8vLyBAdHlwZSBGb250XG4kYnV0dG9uLWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgZm9yIGJ1dHRvbiBlbGVtZW50cy5cbi8vLyBJZ25vcmVkIGlmIG51bGwgKGRlZmF1bHQpXG4vLy8gQHR5cGUgRm9udC1XZWlnaHRcbiRidXR0b24tZm9udC13ZWlnaHQ6IG51bGwgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tcGFkZGluZzogMC44NWVtIDFlbSAhZGVmYXVsdDtcblxuLy8vIE1hcmdpbiBhcm91bmQgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZpbGwgZm9yIGJ1dHRvbnMuIENhbiBlaXRoZXIgYmUgYHNvbGlkYCBvciBgaG9sbG93YC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kYnV0dG9uLWZpbGw6IHNvbGlkICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIENvbG9yXG4kYnV0dG9uLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvbiBob3ZlciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBDb2xvclxuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpICFkZWZhdWx0O1xuXG4vLy8gRm9udCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBBbHRlcm5hdGl2ZSBmb250IGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tY29sb3ItYWx0OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBidXR0b25zLCBkZWZhdWx0ZWQgdG8gZ2xvYmFsLXJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBmb3IgYnV0dG9ucywgdHJhbnNwYXJlbnQgYnkgZGVmYXVsdFxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgd2lkdGggZm9yIGhvbGxvdyBvdXRsaW5lIGJ1dHRvbnNcbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24taG9sbG93LWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXNpemVzOiAoXG4gIHRpbnk6IDAuNnJlbSxcbiAgc21hbGw6IDAuNzVyZW0sXG4gIGRlZmF1bHQ6IDAuOXJlbSxcbiAgbGFyZ2U6IDEuMjVyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JpbmcgY2xhc3Nlcy4gQSBtYXAgb2YgY2xhc3NlcyB0byBvdXRwdXQgaW4geW91ciBDU1MsIGxpa2UgYC5zZWNvbmRhcnlgLCBgLnN1Y2Nlc3NgLCBhbmQgc28gb24uXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBvcGFjaXR5IGZvciBhIGRpc2FibGVkIGJ1dHRvbi5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGxpZ2h0bmVzcyBvbiBob3ZlciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6IC0yMCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBsaWdodG5lc3Mgb24gaG92ZXIgZm9yIGhvbGxvdyBidXR0b25zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlICFkZWZhdWx0O1xuXG4vLyBJbnRlcm5hbDogZmxpcCBmcm9tIG1hcmdpbi1yaWdodCB0byBtYXJnaW4tbGVmdCBmb3IgZGVmYXVsdHNcbkBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdydGwnIHtcbiAgJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbn1cblxuLy8vIHRyYW5zaXRpb25zIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cbi8vLyBBZGRpdGlvbmFsIHJlc3BvbnNpdmUgY2xhc3NlcyBmb3IgLmV4cGFuZGVkXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJ1dHRvbi1yZXNwb25zaXZlLWV4cGFuZGVkOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gVE9ETzogRG9jdW1lbnQgYnV0dG9uLWJhc2UoKSBtaXhpblxuQG1peGluIGJ1dHRvbi1iYXNlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46ICRidXR0b24tbWFyZ2luO1xuICBib3JkZXI6ICRidXR0b24tYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgdHJhbnNpdGlvbjogJGJ1dHRvbi10cmFuc2l0aW9uO1xuICBmb250LWZhbWlseTogJGJ1dHRvbi1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiBtYXAtZ2V0KCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpO1xuICBmb250LXdlaWdodDogJGJ1dHRvbi1mb250LXdlaWdodDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgQGlmICh0eXBlLW9mKCRidXR0b24tcGFkZGluZykgPT0gJ21hcCcpIHtcbiAgICBAZWFjaCAkc2l6ZSwgJHBhZGRpbmcgaW4gJGJ1dHRvbi1wYWRkaW5nIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBwYWRkaW5nOiAkYnV0dG9uLXBhZGRpbmc7XG4gIH1cblxuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG59XG5cbi8vLyBFeHBhbmRzIGEgYnV0dG9uIHRvIG1ha2UgaXQgZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRleHBhbmQgW3RydWVdIC0gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgdGhlIGV4cGFuZCBiZWhhdmlvci4gU2V0IHRvIGBmYWxzZWAgdG8gcmV2ZXJzZSB0aGlzIGJlaGF2aW9yLlxuQG1peGluIGJ1dHRvbi1leHBhbmQoJGV4cGFuZDogdHJ1ZSkge1xuICBAaWYgJGV4cGFuZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgYmFzZSBzdHlsZXMgb2YgYSBob2xsb3cgb3IgY2xlYXIgYnV0dG9uIGZpbGxpbmcgYWNjb3JkaW5nIHRvIGAkZmlsbGAuXG4vLy8gU2VlIG1peGluIGBidXR0b24tZmlsbC1zdHlsZWAgZm9yIHRoZSBmaWxsaW5nIHN0eWxlcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRmaWxsIFskYnV0dG9uLWZpbGxdIC0gVHlwZSBvZiBmaWxsaW5nIGJldHdlZW4gYGhvbGxvd2AgYW5kIGBjbGVhcmAuIGBzb2xpZGAgaGFzIG5vIGVmZmVjdHMuXG5AbWl4aW4gYnV0dG9uLWZpbGwoXG4gICRmaWxsOiAkYnV0dG9uLWZpbGxcbikge1xuICBAaWYgJGZpbGwgPT0gaG9sbG93IHtcbiAgICBAaW5jbHVkZSBidXR0b24taG9sbG93O1xuICB9XG4gIEBlbHNlIGlmICRmaWxsID09IGNsZWFyIHtcbiAgICBAaW5jbHVkZSBidXR0b24tY2xlYXI7XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIHZpc3VhbCBzdHlsZXMgb2YgYSBzb2xpZC9ob2xsb3cvY2xlYXIgYnV0dG9uIGZpbGxpbmcgYWNjb3JkaW5nIHRvIGAkZmlsbGAuXG4vLy8gU2VlIG1peGlucyBgYnV0dG9uLXN0eWxlYCwgYGJ1dHRvbi1ob2xsb3ctc3R5bGVgIGFuZCBgYnV0dG9uLWNsZWFyLXN0eWxlYCBmb3IgZWZmZWN0cyBvZiB2aXN1YWwgc3R5bGluZyBwYXJhbWV0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGZpbGwgWyRidXR0b24tZmlsbF0gLSBUeXBlIG9mIGZpbGxpbmcgYmV0d2VlbiBgaG9sbG93YCBhbmQgYGNsZWFyYC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIC1cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIC1cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gLVxuQG1peGluIGJ1dHRvbi1maWxsLXN0eWxlKFxuICAkZmlsbDogJGJ1dHRvbi1maWxsLFxuICAkYmFja2dyb3VuZDogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLFxuICAkY29sb3I6ICRidXR0b24tY29sb3Jcbikge1xuICBAaWYgJGZpbGwgPT0gc29saWQge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmFja2dyb3VuZCwgJGJhY2tncm91bmQtaG92ZXIsICRjb2xvcik7XG4gIH1cbiAgQGVsc2UgaWYgJGZpbGwgPT0gaG9sbG93IHtcbiAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRiYWNrZ3JvdW5kKTtcbiAgfVxuICBAZWxzZSBpZiAkZmlsbCA9PSBjbGVhciB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWNsZWFyLXN0eWxlKCRiYWNrZ3JvdW5kKTtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlIG9mIGEgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uIG9uIGhvdmVyLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBob3ZlciBjb2xvci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBidXR0b24tc3R5bGUoXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzXG4pIHtcbiAgQGlmICRjb2xvciA9PSBhdXRvIHtcbiAgICAkY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkYnV0dG9uLWNvbG9yLCAkYnV0dG9uLWNvbG9yLWFsdCkpO1xuICB9XG5cbiAgQGlmICRiYWNrZ3JvdW5kLWhvdmVyID09IGF1dG8ge1xuICAgICRiYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzKTtcbiAgfVxuXG4gIC8vIERlZmF1bHQgYW5kIGRpc2FibGVkIHN0YXRlc1xuICAmLFxuICAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSxcbiAgJi5kaXNhYmxlZDpob3ZlciwgJltkaXNhYmxlZF06aG92ZXIsXG4gICYuZGlzYWJsZWQ6Zm9jdXMsICZbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgYmFzZSBzdHlsZXMgb2YgYSBob2xsb3cgYnV0dG9uLlxuLy8vIFNlZSBtaXhpbiBgYnV0dG9uLWhvbGxvdy1zdHlsZWAgZm9yIHRoZSBmaWxsaW5nIHN0eWxlcy5cbkBtaXhpbiBidXR0b24taG9sbG93IHtcbiAgJiwgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0ge1xuICAgICYsICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBTZXRzIHRoZSB2aXN1YWwgc3R5bGUgb2YgYSBob2xsb3cgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIFRleHQgYW5kIGJvcmRlciBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRob3Zlci1saWdodG5lc3MgWyRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzc10gLSBDb2xvciBsaWdodG5lc3Mgb24gaG92ZXIuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJvcmRlci13aWR0aCBbJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoXSAtIEJvcmRlciB3aWR0aCBvZiB0aGUgYnV0dG9uLlxuQG1peGluIGJ1dHRvbi1ob2xsb3ctc3R5bGUoXG4gICRjb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3MsXG4gICRib3JkZXItd2lkdGg6ICRidXR0b24taG9sbG93LWJvcmRlci13aWR0aFxuKSB7XG4gICRjb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkaG92ZXItbGlnaHRuZXNzKTtcblxuICAvLyBEZWZhdWx0IGFuZCBkaXNhYmxlZCBzdGF0ZXNcbiAgJixcbiAgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0sXG4gICYuZGlzYWJsZWQ6aG92ZXIsICZbZGlzYWJsZWRdOmhvdmVyLFxuICAmLmRpc2FibGVkOmZvY3VzLCAmW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRjb2xvcjtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgYmFzZSBzdHlsZXMgb2YgYSBjbGVhciBidXR0b24uXG4vLy8gU2VlIG1peGluIGBidXR0b24tY2xlYXItc3R5bGVgIGZvciB0aGUgZmlsbGluZyBzdHlsZXMuXG5AbWl4aW4gYnV0dG9uLWNsZWFyIHtcbiAgJiwgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0ge1xuICAgICYsICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlIG9mIGEgY2xlYXIgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkaG92ZXItbGlnaHRuZXNzIFskYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3NdIC0gQ29sb3IgbGlnaHRuZXNzIG9uIGhvdmVyLlxuQG1peGluIGJ1dHRvbi1jbGVhci1zdHlsZShcbiAgJGNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRob3Zlci1saWdodG5lc3M6ICRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzc1xuKSB7XG4gICRjb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkaG92ZXItbGlnaHRuZXNzKTtcblxuICAvLyBEZWZhdWx0IGFuZCBkaXNhYmxlZCBzdGF0ZXNcbiAgJixcbiAgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0sXG4gICYuZGlzYWJsZWQ6aG92ZXIsICZbZGlzYWJsZWRdOmhvdmVyLFxuICAmLmRpc2FibGVkOmZvY3VzLCAmW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gIH1cbn1cblxuLy8vIEFkZHMgZGlzYWJsZWQgc3R5bGVzIHRvIGEgYnV0dG9uIGJ5IGZhZGluZyB0aGUgZWxlbWVudCBhbmQgcmVzZXRpbmcgdGhlIGN1cnNvci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG9wYWNpdHkgWyRidXR0b24tb3BhY2l0eS1kaXNhYmxlZF0gLSBPcGFjaXR5IG9mIHRoZSBkaXNhYmxlZCBidXR0b24uXG5AbWl4aW4gYnV0dG9uLWRpc2FibGVkKFxuICAkb3BhY2l0eTogJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkXG4pIHtcbiAgb3BhY2l0eTogJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4vLy8gQWRkcyBhIGRyb3Bkb3duIGFycm93IHRvIGEgYnV0dG9uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc2l6ZSBbMC40ZW1dIC0gU2l6ZSBvZiB0aGUgYXJyb3cuIFdlIHJlY29tbWVuZCB1c2luZyBhbiBgZW1gIHZhbHVlIHNvIHRoZSB0cmlhbmdsZSBzY2FsZXMgd2hlbiB1c2VkIGluc2lkZSBkaWZmZXJlbnQgc2l6ZXMgb2YgYnV0dG9ucy5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgW3doaXRlXSAtIENvbG9yIG9mIHRoZSBhcnJvdy5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG9mZnNldCBbJGJ1dHRvbi1wYWRkaW5nXSAtIERpc3RhbmNlIGJldHdlZW4gdGhlIGFycm93IGFuZCB0aGUgdGV4dCBvZiB0aGUgYnV0dG9uLiBEZWZhdWx0cyB0byB3aGF0ZXZlciB0aGUgcmlnaHQgcGFkZGluZyBvZiBhIGJ1dHRvbiBpcy5cbkBtaXhpbiBidXR0b24tZHJvcGRvd24oXG4gICRzaXplOiAwLjRlbSxcbiAgJGNvbG9yOiAkd2hpdGUsXG4gICRvZmZzZXQ6IGdldC1zaWRlKCRidXR0b24tcGFkZGluZywgcmlnaHQpXG4pIHtcbiAgJjo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkc2l6ZSwgJGNvbG9yLCBkb3duKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwLjRlbTsgLy8gQWxpZ25zIHRoZSBhcnJvdyB3aXRoIHRoZSB0ZXh0IG9mIHRoZSBidXR0b25cblxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogI3skZ2xvYmFsLXJpZ2h0fTtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkb2Zmc2V0O1xuICB9XG59XG5cbi8vLyBBZGRzIGFsbCBzdHlsZXMgZm9yIGEgYnV0dG9uLiBGb3IgbW9yZSBncmFudWxhciBjb250cm9sIG92ZXIgc3R5bGVzLCB1c2UgdGhlIGluZGl2aWR1YWwgYnV0dG9uIG1peGlucy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRleHBhbmQgW2ZhbHNlXSAtIFNldCB0byBgdHJ1ZWAgdG8gbWFrZSB0aGUgYnV0dG9uIGZ1bGwtd2lkdGguXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRidXR0b24tYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQtaG92ZXIgWyRidXR0b24tYmFja2dyb3VuZC1ob3Zlcl0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24gb24gaG92ZXIuIFNldCB0byBgYXV0b2AgdG8gaGF2ZSB0aGUgbWl4aW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGhvdmVyIGNvbG9yLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBidXR0b24uIFNldCB0byBgYXV0b2AgdG8gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGNvbG9yIGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0eWxlIFtzb2xpZF0gLSBTZXQgdG8gYGhvbGxvd2AgdG8gY3JlYXRlIGEgaG9sbG93IGJ1dHRvbi4gVGhlIGNvbG9yIGRlZmluZWQgaW4gYCRiYWNrZ3JvdW5kYCB3aWxsIGJlIHVzZWQgYXMgdGhlIHByaW1hcnkgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbkBtaXhpbiBidXR0b24oXG4gICRleHBhbmQ6IGZhbHNlLFxuICAkYmFja2dyb3VuZDogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLFxuICAkY29sb3I6ICRidXR0b24tY29sb3IsXG4gICRzdHlsZTogJGJ1dHRvbi1maWxsXG4pIHtcbiAgQGluY2x1ZGUgYnV0dG9uLWJhc2U7XG4gIEBpbmNsdWRlIGJ1dHRvbi1maWxsKCRzdHlsZSk7XG4gIEBpbmNsdWRlIGJ1dHRvbi1maWxsLXN0eWxlKCRzdHlsZSwgJGJhY2tncm91bmQsICRiYWNrZ3JvdW5kLWhvdmVyLCAkY29sb3IpO1xuXG4gIEBpZiAkZXhwYW5kIHtcbiAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWJ1dHRvbiB7XG4gIC5idXR0b24ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbigkc3R5bGU6IG5vbmUpO1xuXG4gICAgLy8gU2l6ZXNcbiAgICBAZWFjaCAkc2l6ZSwgJHZhbHVlIGluIG1hcC1yZW1vdmUoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCkge1xuICAgICAgJi4jeyRzaXplfSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHZhbHVlO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuZXhwYW5kZWQgeyBAaW5jbHVkZSBidXR0b24tZXhwYW5kOyB9XG5cbiAgICBAaWYgJGJ1dHRvbi1yZXNwb25zaXZlLWV4cGFuZGVkIHtcbiAgICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCN7JHNpemV9IG9ubHkpIHtcbiAgICAgICAgICAmLiN7JHNpemV9LW9ubHktZXhwYW5kZWQge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCN7JHNpemV9IGRvd24pIHtcbiAgICAgICAgICAgICYuI3skc2l6ZX0tZG93bi1leHBhbmRlZCB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgjeyRzaXplfSkge1xuICAgICAgICAgICAgJi4jeyRzaXplfS1leHBhbmRlZCB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU29saWQsIGhvbGxvdyAmIGNsZWFyIHN0eWxlc1xuICAgIEBlYWNoICRmaWxsaW5nIGluIChzb2xpZCBob2xsb3cgY2xlYXIpIHtcbiAgICAgICRzZWxlY3RvcjogaWYoJGJ1dHRvbi1maWxsID09ICRmaWxsaW5nLCBudWxsLCAnLiN7JGZpbGxpbmd9Jyk7XG5cbiAgICAgICYjeyRzZWxlY3Rvcn0ge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24tZmlsbCgkZmlsbGluZyk7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1maWxsLXN0eWxlKCRmaWxsaW5nKTtcblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4je1wiXCIgKyAkbmFtZX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWZpbGwtc3R5bGUoJGZpbGxpbmcsICRjb2xvciwgYXV0bywgYXV0byk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgICAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgLy8gRHJvcGRvd24gYXJyb3dcbiAgICAmLmRyb3Bkb3duIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1kcm9wZG93bjtcblxuICAgICAgQGlmICRidXR0b24tZmlsbCA9PSBob2xsb3cge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuaG9sbG93LCAmLmNsZWFyIHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRidXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgICAmLiN7XCJcIiArICRuYW1lfSB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCdXR0b24gd2l0aCBkcm9wZG93biBhcnJvdyBvbmx5XG4gICAgJi5hcnJvdy1vbmx5OjphZnRlciB7XG4gICAgICB0b3A6IC0wLjFlbTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICB9XG4gIH1cblxuICBhLmJ1dHRvbiB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIEZvbnQgY29sb3Igb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBjb2xvciBvZiBwbGFjZWhvbGRlciB0ZXh0IHdpdGhpbiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBGb250XG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1saW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgZm9jdXNlZCBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtZm9jdXM6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgZGlzYWJsZWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBmb2N1c2VkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAxcHggc29saWQgJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wYWRkaW5nOiAkZm9ybS1zcGFjaW5nICogMC41ICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBpbnNpZGUgdGV4dCBpbnB1dHMgd2hlbiBub3QgZm9jdXNlZC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgMC4xKSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgb3V0c2lkZSB0ZXh0IGlucHV0cyB3aGVuIGZvY3VzZWQuXG4vLy8gQHR5cGUgU2hhZG93XG4kaW5wdXQtc2hhZG93LWZvY3VzOiAwIDAgNXB4ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEN1cnNvciB0byB1c2Ugd2hlbiBob3ZlcmluZyBvdmVyIGEgZGlzYWJsZWQgdGV4dCBpbnB1dC5cbi8vLyBAdHlwZSBDdXJzb3JcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuXG4vLy8gUHJvcGVydGllcyB0byB0cmFuc2l0aW9uIG9uIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiRpbnB1dC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgdGhlIHVwL2Rvd24gYnV0dG9ucyB0aGF0IENocm9tZSBhbmQgRmlyZWZveCBhZGQgdG8gYDxpbnB1dCB0eXBlPSdudW1iZXInPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFJhZGl1cyBmb3IgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGZvcm0gYnV0dG9ucywgZGVmYXVsdGVkIHRvIGdsb2JhbC1yYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1idXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tZWxlbWVudCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICogdW5pdGxlc3MtY2FsYygkaW5wdXQtbGluZS1oZWlnaHQpKSArIChnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ3RvcCcpICsgZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICdib3R0b20nKSkgLSByZW0tY2FsYygxKTtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkaW5wdXQtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdztcblxuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG5cbiAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICB9XG5cbiAgLy8gRm9jdXMgc3RhdGVcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItZm9jdXM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZm9jdXM7XG4gICAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdy1mb2N1cztcblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXRleHQge1xuICAvLyBUZXh0IGlucHV0c1xuICAje3RleHQtaW5wdXRzKCl9LFxuICB0ZXh0YXJlYSB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBAaW5jbHVkZSBmb3JtLWVsZW1lbnQ7XG4gIH1cblxuICAvLyBUZXh0IGFyZWFzXG4gIHRleHRhcmVhIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAmW3Jvd3NdIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cblxuICBpbnB1dCxcbiAgdGV4dGFyZWEge1xuICAgIC8vIERpc2FibGVkL3JlYWRvbmx5IHN0YXRlXG4gICAgJjpkaXNhYmxlZCxcbiAgICAmW3JlYWRvbmx5XSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDtcbiAgICAgIGN1cnNvcjogJGlucHV0LWN1cnNvci1kaXNhYmxlZDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCBzdHlsZXMgb24gYnV0dG9uLWxpa2UgaW5wdXRzXG4gIFt0eXBlPSdzdWJtaXQnXSxcbiAgW3R5cGU9J2J1dHRvbiddIHtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6ICRmb3JtLWJ1dHRvbi1yYWRpdXM7XG4gIH1cblxuICAvLyBSZXNldCBOb3JtYWxpemUgc2V0dGluZyBjb250ZW50LWJveCB0byBzZWFyY2ggZWxlbWVudHNcbiAgaW5wdXRbdHlwZT0nc2VhcmNoJ10geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG5cbiAgLy8gTnVtYmVyIGlucHV0IHN0eWxlc1xuICBbdHlwZT0nbnVtYmVyJ10ge1xuICAgIEBpZiBub3QgJGlucHV0LW51bWJlci1zcGlubmVycyB7XG4gICAgICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcblxuICAgICAgJjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgICAgICY6Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQbGFjZWhvbGRlciB0ZXh0XG4gIDo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWNoZWNrYm94IHtcbiAgW3R5cGU9J2ZpbGUnXSxcbiAgW3R5cGU9J2NoZWNrYm94J10sXG4gIFt0eXBlPSdyYWRpbyddIHtcbiAgICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICB9XG5cbiAgLy8gU3R5bGVzIGZvciBpbnB1dC9sYWJlbCBzaWJsaW5nc1xuICBbdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsLFxuICBbdHlwZT0ncmFkaW8nXSArIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuXG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGZvcm0tc3BhY2luZztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgJltmb3JdIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cblxuICAvLyBTdHlsZXMgZm9yIGlucHV0cyBpbnNpZGUgbGFiZWxzXG4gIGxhYmVsID4gW3R5cGU9J2NoZWNrYm94J10sXG4gIGxhYmVsID4gW3R5cGU9J3JhZGlvJ10ge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkZm9ybS1zcGFjaW5nICogMC41O1xuICB9XG5cbiAgLy8gTm9ybWFsaXplIGZpbGUgaW5wdXQgd2lkdGhcbiAgW3R5cGU9J2ZpbGUnXSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQ29sb3IgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kZm9ybS1sYWJlbC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBmb3IgZm9ybSBsYWJlbHMuIFRoZSBoaWdoZXIgdGhlIG51bWJlciwgdGhlIG1vcmUgc3BhY2UgYmV0d2VlbiB0aGUgbGFiZWwgYW5kIGl0cyBpbnB1dCBmaWVsZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0OiAxLjggIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLWxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcblxuICBmb250LXNpemU6ICRmb3JtLWxhYmVsLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvcjtcbn1cblxuQG1peGluIGZvcm0tbGFiZWwtbWlkZGxlIHtcbiAgJGlucHV0LWJvcmRlci13aWR0aDogZ2V0LWJvcmRlci12YWx1ZSgkaW5wdXQtYm9yZGVyLCB3aWR0aCk7XG5cbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodDtcbiAgcGFkZGluZzogKCRmb3JtLXNwYWNpbmcgKiAwLjUgKyByZW0tY2FsYygkaW5wdXQtYm9yZGVyLXdpZHRoKSkgMDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1sYWJlbCB7XG4gIGxhYmVsIHtcbiAgICBAaW5jbHVkZSBmb3JtLWxhYmVsO1xuXG4gICAgJi5taWRkbGUge1xuICAgICAgQGluY2x1ZGUgZm9ybS1sYWJlbC1taWRkbGU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBDb2xvclxuJGhlbHB0ZXh0LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIE51bWJlclxuJGhlbHB0ZXh0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHN0eWxlIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGhlbHB0ZXh0LWZvbnQtc3R5bGU6IGl0YWxpYyAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1oZWxwdGV4dCB7XG4gIC5oZWxwLXRleHQge1xuICAgICRtYXJnaW4tdG9wOiAoJGZvcm0tc3BhY2luZyAqIDAuNSkgKiAtMTtcblxuICAgIG1hcmdpbi10b3A6ICRtYXJnaW4tdG9wO1xuICAgIGZvbnQtc2l6ZTogJGhlbHB0ZXh0LWZvbnQtc2l6ZTtcbiAgICBmb250LXN0eWxlOiAkaGVscHRleHQtZm9udC1zdHlsZTtcbiAgICBjb2xvcjogJGhlbHB0ZXh0LWNvbG9yO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIENvbG9yIG9mIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXByZWZpeC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1wcmVmaXgtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTGVmdC9yaWdodCBwYWRkaW5nIG9mIGFuIHByZS9wb3N0Zml4ZWQgaW5wdXQgbGFiZWxcbiRpbnB1dC1wcmVmaXgtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1wcmVwb3N0Zml4IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKiAkaW5wdXQtbGluZS1oZWlnaHQpICsgKGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAndG9wJykgKyBnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ2JvdHRvbScpKSAtIHJlbS1jYWxjKDEpO1xuXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgZGlzcGxheTogaWYoJGdsb2JhbC1mbGV4Ym94LCBmbGV4LCB0YWJsZSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgfVxuXG4gICAgPiA6Zmlyc3QtY2hpbGQge1xuICAgICAgJiwgJi5pbnB1dC1ncm91cC1idXR0b24gPiAqIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIDAgJGlucHV0LXJhZGl1cyAkaW5wdXQtcmFkaXVzIDAsICRpbnB1dC1yYWRpdXMgMCAwICRpbnB1dC1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cblxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgJiwgJi5pbnB1dC1ncm91cC1idXR0b24gPiAqIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsICRpbnB1dC1yYWRpdXMgMCAwICRpbnB1dC1yYWRpdXMsIDAgJGlucHV0LXJhZGl1cyAkaW5wdXQtcmFkaXVzIDApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICVpbnB1dC1ncm91cC1jaGlsZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtbGFiZWwge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIHBhZGRpbmc6IDAgJGlucHV0LXByZWZpeC1wYWRkaW5nO1xuICAgIGJvcmRlcjogJGlucHV0LXByZWZpeC1ib3JkZXI7XG4gICAgYmFja2dyb3VuZDogJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kO1xuXG4gICAgY29sb3I6ICRpbnB1dC1wcmVmaXgtY29sb3I7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC1wcmVmaXgtYm9yZGVyKSB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgICAgbWluLXdpZHRoOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogMSU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgYSxcbiAgICBpbnB1dCxcbiAgICBidXR0b24sXG4gICAgbGFiZWwge1xuICAgICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG5cbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGhlaWdodDogJGhlaWdodDtcbiAgICAgIH1cbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gICAgfVxuICB9XG5cbiAgLy8gU3BlY2lmaWNpdHkgYnVtcCBuZWVkZWQgdG8gcHJldmVudCBvdmVycmlkZSBieSBidXR0b25zXG4gIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIERlZmF1bHQgYm9yZGVyIGFyb3VuZCBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGZpZWxkc2V0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmaWVsZHNldC1wYWRkaW5nOiByZW0tY2FsYygyMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBhcm91bmQgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmaWVsZHNldC1tYXJnaW46IHJlbS1jYWxjKDE4IDApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGJldHdlZW4gdGhlIGxlZ2VuZCB0ZXh0IGFuZCBmaWVsZHNldCBib3JkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMykgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmaWVsZHNldCB7XG4gIG1hcmdpbjogJGZpZWxkc2V0LW1hcmdpbjtcbiAgcGFkZGluZzogJGZpZWxkc2V0LXBhZGRpbmc7XG4gIGJvcmRlcjogJGZpZWxkc2V0LWJvcmRlcjtcblxuICBsZWdlbmQge1xuICAgIC8vIENvdmVycyB1cCB0aGUgZmllbGRzZXQncyBib3JkZXIgdG8gY3JlYXRlIGFydGlmaWNpYWwgcGFkZGluZ1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiByZW0tY2FsYygtMyk7XG4gICAgcGFkZGluZzogJGxlZ2VuZC1wYWRkaW5nO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tZmllbGRzZXQge1xuICBmaWVsZHNldCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgbGVnZW5kIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgfVxuXG4gIC5maWVsZHNldCB7XG4gICAgQGluY2x1ZGUgZmllbGRzZXQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3Igc2VsZWN0IG1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBkcm9wZG93biB0cmlhbmdsZSBpbnNpZGUgc2VsZWN0IG1lbnVzLiBTZXQgdG8gYHRyYW5zcGFyZW50YCB0byByZW1vdmUgaXQgZW50aXJlbHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3Igc2VsZWN0IG1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLXNlbGVjdCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICogdW5pdGxlc3MtY2FsYygkaW5wdXQtbGluZS1oZWlnaHQpKSArIChnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ3RvcCcpICsgZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICdib3R0b20nKSkgLSByZW0tY2FsYygxKTtcblxuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nO1xuXG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHNlbGVjdC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3QtYmFja2dyb3VuZDtcblxuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG5cbiAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICB9XG5cbiAgQGlmICRzZWxlY3QtdHJpYW5nbGUtY29sb3IgIT0gdHJhbnNwYXJlbnQge1xuICAgIGJhY2tncm91bmQtb3JpZ2luOiBjb250ZW50LWJveDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZ2xvYmFsLXJpZ2h0ICgtJGZvcm0tc3BhY2luZykgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuXG4gICAgcGFkZGluZy0jeyRnbG9iYWwtcmlnaHR9OiAoJGZvcm0tc3BhY2luZyAqIDEuNSk7XG5cbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLXRyaWFuZ2xlKCRzZWxlY3QtdHJpYW5nbGUtY29sb3IpO1xuICB9XG5cbiAgLy8gRm9jdXMgc3RhdGVcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItZm9jdXM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZm9jdXM7XG4gICAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdy1mb2N1cztcblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlXG4gICY6ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkO1xuICAgIGN1cnNvcjogJGlucHV0LWN1cnNvci1kaXNhYmxlZDtcbiAgfVxuXG4gIC8vIEhpZGUgdGhlIGRyb3Bkb3duIGFycm93IHNob3duIGluIG5ld2VyIElFIHZlcnNpb25zXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAmW211bHRpcGxlXSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cbiAgJjpub3QoW211bHRpcGxlXSkge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tc2VsZWN0IHtcbiAgc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXNlbGVjdDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGFiaWRlXG4vLy8vXG5cbi8vLyBTZXRzIGlmIGVycm9yIHN0eWxlcyBzaG91bGQgYmUgYWRkZWQgdG8gaW5wdXRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhYmlkZS1pbnB1dHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGlmIGVycm9yIHN0eWxlcyBzaG91bGQgYmUgYWRkZWQgdG8gbGFiZWxzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhYmlkZS1sYWJlbHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIHRvIHVzZSBmb3IgaW52YWxpZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHRvIHVzZSBmb3IgbGFiZWxzIG9mIGludmFsaWQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1lcnJvci1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaW5wdXQtZXJyb3ItZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3R5bGVzIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgb2YgYW4gaW5wdXQgZmllbGQgdG8gaGF2ZSBhbiBlcnJvciBzdGF0ZS5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYWxlcnQtY29sb3JdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgYmFja2dyb3VuZCBhbmQgYm9yZGVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFja2dyb3VuZC1saWdodGVuIFsxMCVdIC0gTGlnaHRuZXNzIGxldmVsIG9mIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGZvcm0taW5wdXQtZXJyb3IoXG4gICRiYWNrZ3JvdW5kOiAkaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkLFxuICAkYmFja2dyb3VuZC1saWdodGVuOiAxMCVcbikge1xuICAmOm5vdCg6Zm9jdXMpIHtcbiAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1peCgkYmFja2dyb3VuZCwgJHdoaXRlLCAkYmFja2dyb3VuZC1saWdodGVuKTtcblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZXJyb3Igc3R5bGVzIHRvIGEgZm9ybSBlbGVtZW50LCB1c2luZyB0aGUgdmFsdWVzIGluIHRoZSBzZXR0aW5ncyBmaWxlLlxuQG1peGluIGZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAkZm9ybS1zcGFjaW5nICogLTAuNTtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcblxuICBmb250LXNpemU6ICRpbnB1dC1lcnJvci1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZXJyb3ItY29sb3I7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tZXJyb3Ige1xuICBAaWYgJGFiaWRlLWlucHV0cyB7XG4gICAgLy8gRXJyb3IgY2xhc3MgZm9yIGludmFsaWQgaW5wdXRzXG4gICAgLmlzLWludmFsaWQtaW5wdXQge1xuICAgICAgQGluY2x1ZGUgZm9ybS1pbnB1dC1lcnJvcjtcbiAgICB9XG4gIH1cblxuICBAaWYgJGFiaWRlLWxhYmVscyB7XG4gICAgLy8gRXJyb3IgY2xhc3MgZm9yIGxhYmVscyBvZiBpbnZhbGlkIG91dHB1dHNcbiAgICAuaXMtaW52YWxpZC1sYWJlbCB7XG4gICAgICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDtcbiAgICB9XG4gIH1cblxuICAvLyBGb3JtIGVycm9yIGVsZW1lbnRcbiAgLmZvcm0tZXJyb3Ige1xuICAgIEBpbmNsdWRlIGZvcm0tZXJyb3I7XG5cbiAgICAmLmlzLXZpc2libGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYWNjb3JkaW9uXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgYW4gYWNjb3JkaW9uIGdyb3VwLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYWRkcyBwbHVzIGFuZCBtaW51cyBpY29ucyB0byB0aGUgc2lkZSBvZiBlYWNoIGFjY29yZGlvbiB0aXRsZS5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWNjb3JkaW9uLXBsdXNtaW51czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIENvbnRlbnQgZm9yIHRoZSBwbHVzIGljb24gd2hlbiBgJGFjY29yZGlvbi1wbHVzbWludXNgIGlzIGB0cnVlYFxuLy8vIEB0eXBlIFN0cmluZ1xuJGFjY29yZGlvbi1wbHVzLWNvbnRlbnQ6ICdcXDAwMkInICFkZWZhdWx0O1xuXG4vLy8gQ29udGVudCBmb3IgdGhlIG1pbnVzIGljb24gd2hlbiBgJGFjY29yZGlvbi1wbHVzbWludXNgIGlzIGB0cnVlYFxuLy8vIEB0eXBlIFN0cmluZ1xuJGFjY29yZGlvbi1taW51cy1jb250ZW50OiAnXFwyMDEzJyAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBhY2NvcmRpb24gdGl0bGVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbi10aXRsZS1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBpdGVtcyBpbiBhIE1lbnUuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBvZiBhbiBhY2NvcmRpb24gaXRlbS5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYWNjb3JkaW9uLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tY29udGVudC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBhY2NvcmRpb24gY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIHRoZSBzYW1lIGVsZW1lbnQgdGhhdCBnZXRzIGBkYXRhLWFjY29yZGlvbmAuXG5AbWl4aW4gYWNjb3JkaW9uLWNvbnRhaW5lciAoXG4gICRiYWNrZ3JvdW5kOiAkYWNjb3JkaW9uLWJhY2tncm91bmRcbikge1xuICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICZbZGlzYWJsZWRdIHtcbiAgICAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGFjY29yZGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIHRoZSBsaXN0IGl0ZW0gd2l0aGluIGFuIGFjY29yZGlvbiB1bC5cbkBtaXhpbiBhY2NvcmRpb24taXRlbSB7XG4gICY6Zmlyc3QtY2hpbGQgPiA6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzIDAgMDtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCA+IDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgJGdsb2JhbC1yYWRpdXMgJGdsb2JhbC1yYWRpdXM7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgdGl0bGUgb2YgYW4gYWNjb3JkaW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gdGhlIGxpbmsgd2l0aGluIGFuIGFjY29yZGlvbiBpdGVtLlxuQG1peGluIGFjY29yZGlvbi10aXRsZSAoXG4gICRwYWRkaW5nOiAkYWNjb3JkaW9uLWl0ZW0tcGFkZGluZyxcbiAgJGZvbnQtc2l6ZTogJGFjY29yZGlvbi10aXRsZS1mb250LXNpemUsXG4gICRjb2xvcjogJGFjY29yZGlvbi1pdGVtLWNvbG9yLFxuICAkYm9yZGVyOiAkYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXJcbikge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICBib3JkZXI6ICRib3JkZXI7XG4gIGJvcmRlci1ib3R0b206IDA7XG5cbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRjb2xvcjtcblxuICA6bGFzdC1jaGlsZDpub3QoLmlzLWFjdGl2ZSkgPiAmIHtcbiAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAkZ2xvYmFsLXJhZGl1cyAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICB9XG5cbiAgQGlmICRhY2NvcmRpb24tcGx1c21pbnVzIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICAjeyRnbG9iYWwtcmlnaHR9OiAxcmVtO1xuICAgICAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgICAgIGNvbnRlbnQ6ICRhY2NvcmRpb24tcGx1cy1jb250ZW50O1xuICAgIH1cblxuICAgIC5pcy1hY3RpdmUgPiAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJGFjY29yZGlvbi1taW51cy1jb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFjY29yZGlvbiBjb250ZW50LiBBcHBseSB0aGlzIHRvIHRoZSBjb250ZW50IHBhbmUgYmVsb3cgYW4gYWNjb3JkaW9uIGl0ZW0ncyB0aXRsZS5cbkBtaXhpbiBhY2NvcmRpb24tY29udGVudCAoXG4gICRwYWRkaW5nOiAkYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZyxcbiAgJGJvcmRlcjogJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcixcbiAgJGJhY2tncm91bmQ6ICRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kLFxuICAkY29sb3I6ICRhY2NvcmRpb24tY29udGVudC1jb2xvclxuKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gIGJvcmRlcjogJGJvcmRlcjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgY29sb3I6ICRjb2xvcjtcblxuICA6bGFzdC1jaGlsZCA+ICY6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGJvcmRlcjtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1hY2NvcmRpb24ge1xuICAuYWNjb3JkaW9uIHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24tY29udGFpbmVyO1xuICB9XG5cbiAgLmFjY29yZGlvbi1pdGVtIHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24taXRlbTtcbiAgfVxuXG4gIC5hY2NvcmRpb24tdGl0bGUge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi10aXRsZTtcbiAgfVxuXG4gIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLWNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vLy9cbi8vLyBAZ3JvdXAgYWNjb3JkaW9uLW1lbnVcbi8vLy9cblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgcGFkZGluZy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBuZXN0ZWQgbWFyZ2luXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9ubWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgc3VibWVudSBwYWRkaW5nLlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbm1lbnUtc3VibWVudS1wYWRkaW5nOiAkYWNjb3JkaW9ubWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBpZiBhY2NvcmRpb24gbWVudXMgaGF2ZSB0aGUgZGVmYXVsdCBhcnJvdyBzdHlsZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFjY29yZGlvbm1lbnUtYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBhcnJvdyBjb2xvciBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IGl0ZW0gcGFkZGluZy5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbm1lbnUtaXRlbS1iYWNrZ3JvdW5kOiBudWxsICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBpdGVtIGJvcmRlci5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbm1lbnUtYm9yZGVyOiBudWxsICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBpdGVtIHBhZGRpbmcuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWJhY2tncm91bmQ6IG51bGwgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IGl0ZW0gcGFkZGluZy5cbi8vLyBAdHlwZSBMaXN0XG4kYWNjb3JkaW9uLXN1Ym1lbnUtdG9nZ2xlLWJvcmRlcjogJGFjY29yZGlvbm1lbnUtYm9yZGVyICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBzdWJtZW51IHRvZ2dsZSBiYWNrZ3JvdW5kIHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg6IDQwcHggIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IHN1Ym1lbnUgdG9nZ2xlIGJhY2tncm91bmQgaGVpZ2h0LlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtaGVpZ2h0OiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aCAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgYXJyb3cgc2l6ZSBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIExlbmd0aFxuJGFjY29yZGlvbm1lbnUtYXJyb3ctc2l6ZTogNnB4ICFkZWZhdWx0O1xuXG5AbWl4aW4gemYtYWNjb3JkaW9uLW1lbnUtbGVmdC1yaWdodC1hcnJvd3Mge1xuICAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50Om5vdCguaGFzLXN1Ym1lbnUtdG9nZ2xlKSA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkYWNjb3JkaW9ubWVudS1hcnJvdy1zaXplLCAkYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvciwgZG93bik7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIG1hcmdpbi10b3A6IC0xICogKCRhY2NvcmRpb25tZW51LWFycm93LXNpemUgKiAwLjUpO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgICB9XG4gIH1cblxuICAmLmFsaWduLWxlZnQgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMXJlbTtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG5cbiAgJi5hbGlnbi1yaWdodCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDFyZW07XG4gIH1cbn1cbkBtaXhpbiBmb3VuZGF0aW9uLWFjY29yZGlvbi1tZW51IHtcblxuICAuYWNjb3JkaW9uLW1lbnUge1xuICAgIEBpZiAkYWNjb3JkaW9ubWVudS1ib3JkZXIge1xuICAgICAgYm9yZGVyLWJvdHRvbTogJGFjY29yZGlvbm1lbnUtYm9yZGVyO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgIEBpZiAkYWNjb3JkaW9ubWVudS1ib3JkZXIge1xuICAgICAgICBib3JkZXItdG9wOiAkYWNjb3JkaW9ubWVudS1ib3JkZXI7XG4gICAgICAgIGJvcmRlci1yaWdodDogJGFjY29yZGlvbm1lbnUtYm9yZGVyO1xuICAgICAgICBib3JkZXItbGVmdDogJGFjY29yZGlvbm1lbnUtYm9yZGVyO1xuICAgICAgfVxuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBAaWYgJGFjY29yZGlvbm1lbnUtaXRlbS1iYWNrZ3JvdW5kIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGFjY29yZGlvbm1lbnUtaXRlbS1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgICAgcGFkZGluZzogJGFjY29yZGlvbm1lbnUtcGFkZGluZztcbiAgICB9XG5cbiAgICAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUgYSB7XG4gICAgICBwYWRkaW5nOiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLm5lc3RlZC5pcy1hY2NvcmRpb24tc3VibWVudSB7XG4gICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkYWNjb3JkaW9ubWVudS1uZXN0ZWQtbWFyZ2luKTtcbiAgICB9XG5cbiAgICAmLmFsaWduLSN7JGdsb2JhbC1yaWdodH0ge1xuICAgICAgLm5lc3RlZC5pcy1hY2NvcmRpb24tc3VibWVudSB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkKCRhY2NvcmRpb25tZW51LW5lc3RlZC1tYXJnaW4sIHJpZ2h0KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGFjY29yZGlvbm1lbnUtYXJyb3dzIHtcbiAgICAgIEBpbmNsdWRlIHpmLWFjY29yZGlvbi1tZW51LWxlZnQtcmlnaHQtYXJyb3dzO1xuXG4gICAgICAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50W2FyaWEtZXhwYW5kZWQ9J3RydWUnXSA+IGE6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUgbGkge1xuICAgIEBpZiAkYWNjb3JkaW9ubWVudS1ib3JkZXIge1xuICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgfVxuICB9XG5cbiAgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLmhhcy1zdWJtZW51LXRvZ2dsZSA+IGEge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aDtcbiAgfVxuXG4gIC8vIFN1Ym1lbnUgdG9nZ2xlXG4gIC5zdWJtZW51LXRvZ2dsZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAjeyRnbG9iYWwtcmlnaHR9OiAwO1xuXG4gICAgd2lkdGg6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoO1xuICAgIGhlaWdodDogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtaGVpZ2h0O1xuXG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogJGFjY29yZGlvbi1zdWJtZW51LXRvZ2dsZS1ib3JkZXI7XG5cbiAgICBAaWYgJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtYmFja2dyb3VuZCB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1iYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgIC8vIEFkZCB0aGUgYXJyb3cgdG8gdGhlIHRvZ2dsZVxuICAgICY6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkYWNjb3JkaW9ubWVudS1hcnJvdy1zaXplLCAkYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvciwgZG93bik7XG5cbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICB9XG4gIH1cblxuICAvLyBSb3RhdGUgdGhlIGFycm93IHdoZW4gbWVudSBpcyBvcGVuXG4gIC5zdWJtZW51LXRvZ2dsZVthcmlhLWV4cGFuZGVkPSd0cnVlJ106OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgtMSk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbiAgfVxuXG4gIC5zdWJtZW51LXRvZ2dsZS10ZXh0IHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIG1lbnVcbi8vLy9cblxuLy8vIE1hcmdpbiBvZiBhIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0LWhhbmQgbWFyZ2luIG9mIGEgbmVzdGVkIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGl0ZW1zIGluIGEgcGlsbCBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaXRlbXMtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBtYXJnaW4gZm9yIGl0ZW1zIGluIGEgc2ltcGxlIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1zaW1wbGUtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBhbiBhY3RpdmUgbWVudSBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQWx0ZXJuYXRpdmUgdGV4dCBjb2xvciBvZiBhbiBhY3RpdmUgbWVudSBpdGVtLi5cbi8vLyBAdHlwZSBDb2xvclxuJG1lbnUtaXRlbS1jb2xvci1hbHQtYWN0aXZlOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KSAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBhbiBpY29uIGFuZCB0ZXh0IGluIGEgbWVudSBpdGVtLlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaWNvbi1zcGFjaW5nOiAwLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQmFja3dhcmQgY29tcGF0aWJpbGl0eSBmb3IgbWVudSBzdGF0ZS4gSWYgdHJ1ZSwgdGhpcyBkdXBsaWNhdGUgYGFjdGl2ZWAgd2l0aCBgaXMtYWN0aXZlYC5cbi8vLyBCdXQgcGxlYXNlIG5vdGUgdGhhdCBgYWN0aXZlYCB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgdmVyc2lvbnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJG1lbnUtc3RhdGUtYmFjay1jb21wYXQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrd2FyZCBjb21wYXRpYmlsaXR5IGZvciBtZW51IGNlbnRlcmVkLiBJZiB0cnVlLCB0aGlzIGR1cGxpY2F0ZSBgLm1lbnUtY2VudGVyZWQgPiAubWVudWAgd2l0aCBgLm1lbnUuYWxpZ24tY2VudGVyYC5cbi8vLyBCdXQgcGxlYXNlIG5vdGUgdGhhdCBgbWVudS1jZW50ZXJlZGAgd2lsbCBiZSByZW1vdmVkIGluIHVwY29taW5nIHZlcnNpb25zLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRtZW51LWNlbnRlcmVkLWJhY2stY29tcGF0OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQmFja3dhcmQgY29tcGF0aWJpbGl0eSBmb3IgdXNpbmcgYGljb24tKmAgY2xhc3NlcyB3aXRob3V0IGAuaWNvbnNgIGNsYXNzZXNcbi8vLyBCdXQgcGxlYXNlIG5vdGUgdGhhdCB0aGlzIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkgd2lsbCBiZSByZW1vdmVkIGluIHVwY29taW5nIHZlcnNpb25zLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRtZW51LWljb25zLWJhY2stY29tcGF0OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQ3JlYXRlcyB0aGUgYmFzZSBzdHlsZXMgZm9yIGEgTWVudS5cbkBtaXhpbiBtZW51LWJhc2Uge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuXG4gIGxpIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIH1cblxuICBhLFxuICAuYnV0dG9uIHtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogJG1lbnUtaXRlbXMtcGFkZGluZztcbiAgfVxuXG4gIC8vIFJlc2V0IHN0eWxlcyBvZiBpbm5lciBlbGVtZW50c1xuICBpbnB1dCxcbiAgc2VsZWN0LFxuICBhLFxuICBidXR0b24ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICBpbnB1dCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG5cbi8vLyBFeHBhbmRzIHRoZSBpdGVtcyBvZiBhIE1lbnUsIHNvIGVhY2ggaXRlbSBpcyB0aGUgc2FtZSB3aWR0aC5cbkBtaXhpbiBtZW51LWV4cGFuZCB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGxpIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgID4gbGkge1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBbGlnbiBtZW51IGl0ZW1zLlxuQG1peGluIG1lbnUtYWxpZ24oJGFsaWdubWVudCkge1xuICBAaWYgJGFsaWdubWVudCA9PSBsZWZ0IHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1sZWZ0O1xuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkYWxpZ25tZW50ID09IHJpZ2h0IHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblxuICAgICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYudmVydGljYWwgbGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1yaWdodDtcblxuICAgICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1yaWdodDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuXG4gICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtbGVmdDtcbiAgICAgIH1cblxuICAgICAgJi52ZXJ0aWNhbCB7XG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRhbGlnbm1lbnQgPT0gY2VudGVyIHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1sZWZ0O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgZGlyZWN0aW9uIG9mIGEgTWVudS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgW2hvcml6b250YWxdIC0gRGlyZWN0aW9uIG9mIHRoZSBNZW51LiBDYW4gYmUgYGhvcml6b250YWxgIG9yIGB2ZXJ0aWNhbGAuXG5AbWl4aW4gbWVudS1kaXJlY3Rpb24oJGRpcjogaG9yaXpvbnRhbCkge1xuICBAaWYgJGRpciA9PSBob3Jpem9udGFsIHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkZGlyID09IHZlcnRpY2FsIHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEB3YXJuICdUaGUgZGlyZWN0aW9uIHVzZWQgZm9yIG1lbnUtZGlyZWN0aW9uKCkgbXVzdCBiZSBob3Jpem9udGFsIG9yIHZlcnRpY2FsLic7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBzaW1wbGUgTWVudSwgd2hpY2ggaGFzIG5vIHBhZGRpbmcgb3IgaG92ZXIgc3RhdGUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyIFskZ2xvYmFsLWxlZnRdIC0gRGlyZWN0aW9uIG9mIHRoZSBtZW51LiBUaGlzIGVmZmVjdHMgdGhlIHNpZGUgb2YgdGhlIGA8bGk+YCB0aGF0IHJlY2VpdmVzIHRoZSBtYXJnaW4uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXJnaW4gWyRtZW51LXNpbXBsZS1tYXJnaW5dIC0gVGhlIG1hcmdpbiB0byBhcHBseSB0byBlYWNoIGA8bGk+YC5cbkBtaXhpbiBtZW51LXNpbXBsZSgkZGlyOiAkZ2xvYmFsLWxlZnQsICRtYXJnaW46ICRtZW51LXNpbXBsZS1tYXJnaW4pIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuXG4gIGxpICsgbGkge1xuICAgIG1hcmdpbi0jeyRkaXJ9OiAkbWFyZ2luO1xuICB9XG5cbiAgYSB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgbmVzdGVkIE1lbnUsIGJ5IGFkZGluZyBgbWFyZ2luLWxlZnRgIHRvIHRoZSBtZW51LlxuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRtYXJnaW4gWyRtZW51LW5lc3RlZC1tYXJnaW5dIC0gTGVuZ3RoIG9mIHRoZSBtYXJnaW4uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkbmVzdGVkLWFsaWdubWVudCBbbGVmdF0gLSBBbGlnbm1lbnQgb2YgdGhlIG5lc3RlZCBjbGFzc1xuQG1peGluIG1lbnUtbmVzdGVkKFxuICAkbWFyZ2luOiAkbWVudS1uZXN0ZWQtbWFyZ2luLFxuICAkbmVzdGVkLWFsaWdubWVudDogbGVmdFxuKSB7XG4gIEBpZiAkbmVzdGVkLWFsaWdubWVudCA9PSByaWdodCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRtYXJnaW47XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgfVxuICBAZWxzZSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJG1hcmdpbjtcbiAgfVxuXG59XG5cbi8vLyBBZGRzIGJhc2ljIHN0eWxlcyBmb3IgaWNvbnMgaW4gbWVudXMuXG5AbWl4aW4gbWVudS1pY29ucygpIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgaW1nLFxuICAgIGksXG4gICAgc3ZnIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICsgc3BhbiB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBBbGlnbiB0b3AvYm90dG9tIGljb25zIHdpdGhpbiBhIG1lbnUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkYWxpZ25tZW50IFtjZW50ZXJdIC0gQWxpZ25tZW50IG9mIHRoZSBpY29uXG5AbWl4aW4gbWVudS1pY29uLWFsaWdubWVudCgkYWxpZ25tZW50OiBjZW50ZXIpIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgJi5pY29uLXRvcCxcbiAgICAmLmljb24tYm90dG9tIHtcbiAgICAgIGxpIGEge1xuICAgICAgICBpbWcsXG4gICAgICAgIGksXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgQGlmICRhbGlnbm1lbnQgPT0gbGVmdCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBlbHNlIGlmICRhbGlnbm1lbnQgPT0gcmlnaHQge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBwb3NpdGlvbiBjbGFzc2VzIGZvciBpY29ucyB3aXRoaW4gYSBtZW51LlxuQG1peGluIG1lbnUtaWNvbi1wb3NpdGlvbigkcG9zaXRpb246IGxlZnQsICRzcGFjaW5nOiAkbWVudS1pY29uLXNwYWNpbmcpIHtcbiAgQGlmICRwb3NpdGlvbiA9PSBsZWZ0IHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmc7XG5cbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gcmlnaHQge1xuICAgIGxpIGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRzcGFjaW5nO1xuXG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHRvcCB7XG4gICAgbGkgYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG8gJHNwYWNpbmc7XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmc7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSBib3R0b20ge1xuICAgIGxpIGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogJHNwYWNpbmcgYXV0byAwO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWVudS10ZXh0IHtcbiAgcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG5cbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuQG1peGluIG1lbnUtc3RhdGUtYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZSwgKCRtZW51LWl0ZW0tY29sb3ItYWN0aXZlLCAkbWVudS1pdGVtLWNvbG9yLWFsdC1hY3RpdmUpKTtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tbWVudSB7XG4gIC5tZW51IHtcbiAgICBAaW5jbHVkZSBtZW51LWJhc2U7XG5cbiAgICAvLyBEZWZhdWx0IG9yaWVudGF0aW9uOiBob3Jpem9udGFsXG4gICAgJiwgJi5ob3Jpem9udGFsIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgIH1cblxuICAgIC8vIFZlcnRpY2FsIG9yaWVudGF0aW9uIG1vZGlmaWVyXG4gICAgJi52ZXJ0aWNhbCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tYWxpZ25tZW50KGxlZnQpO1xuICAgIH1cblxuICAgIC8vIEV2ZW4td2lkdGggbW9kaWZpZXIgZm9yIGhvcml6b250YWwgb3JpZW50YXRpb25cbiAgICAmLmV4cGFuZGVkIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZXhwYW5kO1xuICAgICAgQGluY2x1ZGUgbWVudS1pY29uLWFsaWdubWVudChsZWZ0KTtcbiAgICB9XG5cbiAgICAvLyBTaW1wbGVcbiAgICAmLnNpbXBsZSB7XG4gICAgICBAaW5jbHVkZSBtZW51LXNpbXBsZTtcbiAgICB9XG5cbiAgICAvLyBCcmVha3BvaW50IHNwZWNpZmljIHZlcnNpb25zXG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgkc21hbGw6IGZhbHNlKSB7XG4gICAgICAmLiN7JC16Zi1zaXplfS1ob3Jpem9udGFsIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG4gICAgICB9XG5cbiAgICAgICYuI3skLXpmLXNpemV9LXZlcnRpY2FsIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgICAgfVxuXG4gICAgICAmLiN7JC16Zi1zaXplfS1leHBhbmRlZCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZXhwYW5kO1xuICAgICAgfVxuXG4gICAgICAmLiN7JC16Zi1zaXplfS1zaW1wbGUge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWV4cGFuZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBOZXN0aW5nXG4gICAgJi5uZXN0ZWQge1xuICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQ7XG4gICAgfVxuXG4gICAgLy8gSWNvbiBCYXNlIFN0eWxlc1xuICAgICYuaWNvbnMge1xuICAgICAgQGluY2x1ZGUgbWVudS1pY29ucztcbiAgICB9XG5cbiAgICAvLyBCYWNrd2FyZCBDb21wYXRpYmlsaXR5IGZvciBhY3RpdmUgc3RhdGVcbiAgICBAaWYgJG1lbnUtaWNvbnMtYmFjay1jb21wYXQge1xuICAgICAgJi5pY29uLXRvcCxcbiAgICAgICYuaWNvbi1yaWdodCxcbiAgICAgICYuaWNvbi1ib3R0b20sXG4gICAgICAmLmljb24tbGVmdCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbnM7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTWVudSBpY29uIHBvc2l0aW9uXG4gICAgLy8gSW5jbHVkZXMgc3BlY2lmaWNpdHkgdG8gbmVzdGVkIGljb25zIHdpdGggYSBkaWZmZXJlbnQgcG9zaXRpb25cbiAgICAmLFxuICAgICYubmVzdGVkIHtcbiAgICAgIC8vIEljb24gTGVmdFxuICAgICAgJi5pY29uLWxlZnQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24obGVmdCk7XG4gICAgICB9XG5cbiAgICAgIC8vIEljb24gUmlnaHRcbiAgICAgICYuaWNvbi1yaWdodCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbihyaWdodCk7XG4gICAgICB9XG5cbiAgICAgIC8vIEljb24gVG9wXG4gICAgICAmLmljb24tdG9wIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1pY29uLXBvc2l0aW9uKHRvcCk7XG4gICAgICB9XG5cbiAgICAgIC8vIEljb24gQm90dG9tXG4gICAgICAmLmljb24tYm90dG9tIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1pY29uLXBvc2l0aW9uKGJvdHRvbSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWN0aXZlIHN0YXRlXG4gICAgLmlzLWFjdGl2ZSA+IGEge1xuICAgICAgQGluY2x1ZGUgbWVudS1zdGF0ZS1hY3RpdmU7XG4gICAgfVxuXG4gICAgLy8gQmFja3dhcmQgQ29tcGF0aWJpbGl0eSBmb3IgYWN0aXZlIHN0YXRlXG4gICAgQGlmICRtZW51LXN0YXRlLWJhY2stY29tcGF0IHtcbiAgICAgIC5hY3RpdmUgPiBhIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1zdGF0ZS1hY3RpdmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gbGVmdFxuICAgICYuYWxpZ24tI3skZ2xvYmFsLWxlZnR9IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24obGVmdCk7XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gcmlnaHRcbiAgICAmLmFsaWduLSN7JGdsb2JhbC1yaWdodH0ge1xuICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihyaWdodCk7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tYWxpZ25tZW50KHJpZ2h0KTtcblxuICAgICAgLm5lc3RlZCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkKCRuZXN0ZWQtYWxpZ25tZW50OiByaWdodCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gY2VudGVyXG4gICAgJi5hbGlnbi1jZW50ZXIge1xuICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihjZW50ZXIpO1xuICAgIH1cblxuICAgIC5tZW51LXRleHQge1xuICAgICAgQGluY2x1ZGUgbWVudS10ZXh0O1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkbWVudS1jZW50ZXJlZC1iYWNrLWNvbXBhdCB7XG4gICAgLm1lbnUtY2VudGVyZWQge1xuICAgICAgPiAubWVudSB7XG4gICAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihjZW50ZXIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFByZXZlbnQgRk9VQyB3aGVuIHVzaW5nIHRoZSBSZXNwb25zaXZlIE1lbnUgcGx1Z2luXG4gIC5uby1qcyBbZGF0YS1yZXNwb25zaXZlLW1lbnVdIHVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYmFkZ2Vcbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgYmFkZ2VzLlxuLy8vIEB0eXBlIENvbG9yXG4kYmFkZ2UtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3IgZm9yIGJhZGdlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJhZGdlLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBBbHRlcm5hdGUgdGV4dCBjb2xvciBmb3IgYmFkZ2VzLlxuLy8vIEB0eXBlIENvbG9yXG4kYmFkZ2UtY29sb3ItYWx0OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcmluZyBjbGFzc2VzLiBBIG1hcCBvZiBjbGFzc2VzIHRvIG91dHB1dCBpbiB5b3VyIENTUywgbGlrZSBgLnNlY29uZGFyeWAsIGAuc3VjY2Vzc2AsIGFuZCBzbyBvbi5cbi8vLyBAdHlwZSBNYXBcbiRiYWRnZS1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBiYWRnZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYmFkZ2UtcGFkZGluZzogMC4zZW0gIWRlZmF1bHQ7XG5cbi8vLyBNaW5pbXVtIHdpZHRoIG9mIGEgYmFkZ2UuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYmFkZ2UtbWlud2lkdGg6IDIuMWVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGJhZGdlcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRiYWRnZS1mb250LXNpemU6IDAuNnJlbSAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyB0aGUgYmFzZSBzdHlsZXMgZm9yIGEgYmFkZ2UuXG5AbWl4aW4gYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1pbi13aWR0aDogJGJhZGdlLW1pbndpZHRoO1xuICBwYWRkaW5nOiAkYmFkZ2UtcGFkZGluZztcblxuICBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgZm9udC1zaXplOiAkYmFkZ2UtZm9udC1zaXplO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWJhZGdlIHtcbiAgLmJhZGdlIHtcbiAgICBAaW5jbHVkZSBiYWRnZTtcblxuICAgIGJhY2tncm91bmQ6ICRiYWRnZS1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYmFkZ2UtY29sb3I7XG5cbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRiYWRnZS1wYWxldHRlIHtcbiAgICAgICYuI3tcIlwiICsgJG5hbWV9IHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgICAgICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkY29sb3IsICgkYmFkZ2UtY29sb3IsICRiYWRnZS1jb2xvci1hbHQpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVhZGNydW1ic1xuLy8vL1xuXG4vLy8gTWFyZ2luIGFyb3VuZCBhIGJyZWFkY3J1bWJzIGNvbnRhaW5lci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYnMtaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDExKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgQ29sb3JcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBhY3RpdmUgYnJlYWRjcnVtYiBsaW5rLlxuLy8vIEB0eXBlIENvbG9yXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBPcGFjaXR5IG9mIGRpc2FibGVkIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGJldHdlZW4gYnJlYWRjcnVtYiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1pdGVtLW1hcmdpbjogMC43NXJlbSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgbWFrZXMgYnJlYWRjcnVtYiBsaW5rcyB1cHBlcmNhc2UuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhZGRzIGEgc2VwZXJhdG9yIGJldHdlZW4gYnJlYWRjcnVtYiBsaW5rcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3I6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIElmIGl0IGV4aXN0cyAkYnJlYWRjcnVtYnMtaXRlbS1zbGFzaCBpcyB1c2VkIHRvIGJ1aWxkICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci4gU2VlIHRoZSBkb2N1bWVudGF0aW9uLlxuQGlmIHZhcmlhYmxlLWV4aXN0cyhicmVhZGNydW1icy1pdGVtLXNsYXNoKSB7XG4gICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvcjogJGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2g7XG59XG5cbi8vLyBVc2VkIGNoYXJhY3RlciBmb3IgdGhlIGJyZWFkY3J1bWIgc2VwYXJhdG9yLlxuLy8vIEB0eXBlIENvbnRlbnRcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtOiAnLycgIWRlZmF1bHQ7XG5cbi8vLyBVc2VkIGNoYXJhY3RlciBmb3IgdGhlIGJyZWFkY3J1bWIgc2VwYXJhdG9yIGluIHJ0bCBtb2RlLlxuLy8vIEB0eXBlIENvbnRlbnRcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtLXJ0bDogJ1xcXFwnICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgYnJlYWRjcnVtYiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8gSWYgaXQgZXhpc3RzICRicmVhZGNydW1icy1pdGVtLXNsYXNoLWNvbG9yIGlzIHVzZWQgdG8gYnVpbGQgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yLiBTZWUgdGhlIGRvY3VtZW50YXRpb24uXG5AaWYgdmFyaWFibGUtZXhpc3RzKGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2gtY29sb3IpIHtcbiAgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1zbGFzaC1jb2xvcjtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGJyZWFkY3J1bWJzIGNvbnRhaW5lciwgYWxvbmcgd2l0aCB0aGUgc3R5bGVzIGZvciB0aGUgYDxsaT5gIGFuZCBgPGE+YCBlbGVtZW50cyBpbnNpZGUgb2YgaXQuXG5AbWl4aW4gYnJlYWRjcnVtYnMtY29udGFpbmVyIHtcbiAgbWFyZ2luOiAkYnJlYWRjcnVtYnMtbWFyZ2luO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gIC8vIEl0ZW0gd3JhcHBlclxuICBsaSB7XG4gICAgZmxvYXQ6ICN7JGdsb2JhbC1sZWZ0fTtcblxuICAgIGZvbnQtc2l6ZTogJGJyZWFkY3J1bWJzLWl0ZW0tZm9udC1zaXplO1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50O1xuICAgIGN1cnNvcjogZGVmYXVsdDtcblxuICAgIEBpZiAkYnJlYWRjcnVtYnMtaXRlbS11cHBlcmNhc2Uge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG5cbiAgICBAaWYgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yIHtcbiAgICAgIC8vIE5lZWQgdG8gZXNjYXBlIHRoZSBiYWNrc2xhc2hcbiAgICAgICRzZXBhcmF0b3I6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gJ2x0cicsICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtLCAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbS1ydGwpO1xuXG4gICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIG1hcmdpbjogMCAkYnJlYWRjcnVtYnMtaXRlbS1tYXJnaW47XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICBjb250ZW50OiAkc2VwYXJhdG9yO1xuICAgICAgICAgIGNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRicmVhZGNydW1icy1pdGVtLW1hcmdpbjtcbiAgICB9XG4gIH1cblxuICAvLyBQYWdlIGxpbmtzXG4gIGEge1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1jb2xvcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWJyZWFkY3J1bWJzIHtcbiAgLmJyZWFkY3J1bWJzIHtcbiAgICBAaW5jbHVkZSBicmVhZGNydW1icy1jb250YWluZXI7XG5cbiAgICAuZGlzYWJsZWQge1xuICAgICAgY29sb3I6ICRicmVhZGNydW1icy1pdGVtLWNvbG9yLWRpc2FibGVkO1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBidXR0b24tZ3JvdXBcbi8vLy9cblxuLy8vIE1hcmdpbiBmb3IgYnV0dG9uIGdyb3Vwcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b25ncm91cC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBNYXJnaW4gYmV0d2VlbiBidXR0b25zIGluIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbmdyb3VwLXNwYWNpbmc6IDFweCAhZGVmYXVsdDtcblxuLy8vIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgYSBidXR0b24gZ3JvdXAuXG4vLy8gQHR5cGUgU3RyaW5nXG4kYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3I6ICcuYnV0dG9uJyAhZGVmYXVsdDtcblxuLy8vIE1heGltdW0gbnVtYmVyIG9mIGJ1dHRvbnMgdGhhdCBjYW4gYmUgaW4gYW4gZXZlbi13aWR0aCBidXR0b24gZ3JvdXAuIChPbmx5IG5lZWRlZCB3aGVuICRnbG9iYWwtZmxleGJveDogZmFsc2U7KVxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXg6IDYgIWRlZmF1bHQ7XG5cbi8vLyBEZXRlcm1pbmVzIGlmICRidXR0b24tcmFkaXVzIGlzIGFwcGxpZWQgdG8gZWFjaCBidXR0b24gb3IgdGhlIGJ1dHRvbiBncm91cCBhcyBhIHdob2xlLiBVc2UgJGdsb2JhbC1yYWRpdXMgaW4gX3NldHRpbmdzLnNjc3MgdG8gY2hhbmdlIHJhZGl1cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2g6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBBZGQgc3R5bGVzIGZvciBhIGJ1dHRvbiBncm91cCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRjaGlsZC1zZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgYSBidXR0b24gZ3JvdXAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzcGFjaW5nIFskYnV0dG9uZ3JvdXAtc3BhY2luZ10gLSBTcGFjaW5nIGJldHdlZW4gYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAoXG4gICRjaGlsZC1zZWxlY3RvcjogJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yLFxuICAkc3BhY2luZzogJGJ1dHRvbmdyb3VwLXNwYWNpbmdcbikge1xuICBtYXJnaW4tYm90dG9tOiAkYnV0dG9uZ3JvdXAtbWFyZ2luO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGZsZXgtZ3JvdzogMTtcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyAvLyBEaXNhYmxlIGNsZWFyZml4XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBmb250LXNpemU6IDA7XG4gIH1cblxuICBAaW5jbHVkZSBjbGVhcmZpeDtcblxuICAjeyRjaGlsZC1zZWxlY3Rvcn0ge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmc7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmc7XG4gICAgZm9udC1zaXplOiBtYXAtZ2V0KCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgfVxuXG4gICAgQGlmIG5vdCAkYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2gge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIE1ha2UgYnV0dG9ucyBib25kZWQgd2l0aG91dCBnYXAgYmV0d2VlbiB0aGVtLiBCb3JkZXJzIGJldHdlZW4gYnV0dG9ucyBhcmUgbWVyZ2VkXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgYSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwLW5vLWdhcHMoXG4gICRzZWxlY3RvcjogJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yLFxuICAkYm9yZGVyLXdpZHRoOiAkYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGhcbikge1xuICAjeyRzZWxlY3Rvcn0ge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiByZW0tY2FsYygtJGJvcmRlci13aWR0aCk7XG5cbiAgICArICN7JHNlbGVjdG9yfSB7XG4gICAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBmdWxsLXdpZHRoIGJ1dHRvbiBncm91cCwgbWFraW5nIGVhY2ggYnV0dG9uIGVxdWFsIHdpZHRoLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcl0gLSBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc3BhY2luZyBbJGJ1dHRvbmdyb3VwLXNwYWNpbmddIC0gU3BhY2luZyBiZXR3ZWVuIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwLWV4cGFuZChcbiAgJHNlbGVjdG9yOiAkYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3IsXG4gICRzcGFjaW5nOiAkYnV0dG9uZ3JvdXAtc3BhY2luZyxcbiAgJGNvdW50OiBudWxsXG4pIHtcbiAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAtJHNwYWNpbmc7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgLy8gRGlzYWJsZSBjbGVhcmZpeFxuICAgIH1cbiAgfVxuXG4gICN7JHNlbGVjdG9yfSB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAvLyBPbmUgY2hpbGRcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAjeyRzcGFjaW5nfSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gVHdvIG9yIG1vcmUgY2hpbGRyZWVuXG4gICAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRidXR0b25ncm91cC1leHBhbmQtbWF4IHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgjeyRpfSkge1xuICAgICAgICAgICYsICY6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoI3skaX0pIH4gI3skc2VsZWN0b3J9IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKCN7cGVyY2VudGFnZShkaXZpZGUoMSwgJGkpKX0gLSAjeyRzcGFjaW5nfSk7XG4gICAgICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmc7XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkc3BhY2luZyAqIC0kYnV0dG9uZ3JvdXAtZXhwYW5kLW1heDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIFN0YWNrcyB0aGUgYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFskYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3JdIC0gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSB0aGUgYnV0dG9uIGdyb3VwLlxuQG1peGluIGJ1dHRvbi1ncm91cC1zdGFjayhcbiAgJHNlbGVjdG9yOiAkYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3Jcbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cblxuICAjeyRzZWxlY3Rvcn0ge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIEBpZiBub3QgJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBVbi1zdGFja3MgdGhlIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgdGhlIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAtdW5zdGFjayhcbiAgJHNlbGVjdG9yOiAkYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3Jcbikge1xuICAjeyRzZWxlY3Rvcn0ge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgQGlmIG5vdCAkYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2gge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAwO1xuICAgICAgfVxuICAgIH1cblxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWJ1dHRvbi1ncm91cCB7XG4gIC5idXR0b24tZ3JvdXAge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cDtcblxuICAgIC8vIFNpemVzXG4gICAgQGVhY2ggJHNpemUsICR2YWx1ZSBpbiBtYXAtcmVtb3ZlKCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpIHtcbiAgICAgICYuI3skc2l6ZX0gI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICAgICAgZm9udC1zaXplOiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRXZlbi13aWR0aCBHcm91cFxuICAgICYuZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLWV4cGFuZDtcbiAgICB9XG5cbiAgICAvLyBTb2xpZCwgaG9sbG93ICYgY2xlYXIgc3R5bGVzXG4gICAgQGVhY2ggJGZpbGxpbmcgaW4gKHNvbGlkIGhvbGxvdyBjbGVhcikge1xuICAgICAgJGJhc2Utc2VsZWN0b3I6IGlmKCRidXR0b24tZmlsbCA9PSAkZmlsbGluZywgbnVsbCwgJy4jeyRmaWxsaW5nfScpO1xuXG4gICAgICAmI3skYmFzZS1zZWxlY3Rvcn0ge1xuICAgICAgICAvLyBEbyBub3QgZ2VuZXJhdGUgYnV0dG9uIGJhc2Ugc3R5bGVzIGZvciB0aGUgZGVmYXVsdCBmaWxsaW5nXG4gICAgICAgIEBpZigkYnV0dG9uLWZpbGwgIT0gJGZpbGxpbmcpIHtcbiAgICAgICAgICAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWZpbGwoJGZpbGxpbmcpO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWZpbGwtc3R5bGUoJGZpbGxpbmcpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgICBAaWYoJGJ1dHRvbi1maWxsICE9ICRmaWxsaW5nKSB7XG4gICAgICAgICAgICAkaW5kaXZpZHVhbC1zZWxlY3RvcjogJyAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0uI3tcIlwiICsgJG5hbWV9JztcbiAgICAgICAgICAgICYuI3tcIlwiICsgJG5hbWV9ICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSwgJiN7JGluZGl2aWR1YWwtc2VsZWN0b3J9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWZpbGwtc3R5bGUoJGZpbGxpbmcsICRjb2xvciwgYXV0bywgYXV0byk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgICYuI3tcIlwiICsgJG5hbWV9ICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1maWxsLXN0eWxlKCRmaWxsaW5nLCAkY29sb3IsIGF1dG8sIGF1dG8pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgJi5uby1nYXBzIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC1uby1nYXBzO1xuICAgIH1cblxuICAgICYuc3RhY2tlZCxcbiAgICAmLnN0YWNrZWQtZm9yLXNtYWxsLFxuICAgICYuc3RhY2tlZC1mb3ItbWVkaXVtIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC1zdGFjaztcblxuICAgICAgJi5leHBhbmRlZCB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC1leHBhbmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGFja2VkLWZvci1zbWFsbCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXAtdW5zdGFjaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0YWNrZWQtZm9yLW1lZGl1bSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC11bnN0YWNrO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBjYWxsb3V0XG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZmFkZSB2YWx1ZSBmb3IgY2FsbG91dCBiYWNrZ3JvdW5kcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYWxsb3V0LWJhY2tncm91bmQtZmFkZTogODUlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgc3R5bGUgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIExpc3RcbiRjYWxsb3V0LWJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGJsYWNrLCAwLjI1KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2FsbG91dC1tYXJnaW46IDAgMCAxcmVtIDAgIWRlZmF1bHQ7XG5cbi8vLyBTaXplcyBmb3IgQ2FsbG91dCBwYWRkaW5ncy5cbi8vLyBAdHlwZSBNYXBcbiRjYWxsb3V0LXNpemVzOiAoXG4gIHNtYWxsOiAwLjVyZW0sXG4gIGRlZmF1bHQ6IDFyZW0sXG4gIGxhcmdlOiAzcmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGNhbGxvdXRzLCBpZiB0aGUgY2FsbG91dCBoYXMgYSBkYXJrIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LWZvbnQtY29sb3ItYWx0OiAkYm9keS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgcmFkaXVzIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEFtb3VudCB0byB0aW50IGxpbmtzIHVzZWQgd2l0aGluIGNvbG9yZWQgcGFuZWxzLiBTZXQgdG8gYGZhbHNlYCB0byBkaXNhYmxlIHRoaXMgZmVhdHVyZS5cbi8vLyBAdHlwZSBOdW1iZXIgfCBCb29sZWFuXG4kY2FsbG91dC1saW5rLXRpbnQ6IDMwJSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBhIGNhbGxvdXQsIGluY2x1ZGluZyBwYWRkaW5nIGFuZCBtYXJnaW4uXG5AbWl4aW4gY2FsbG91dC1iYXNlKCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogJGNhbGxvdXQtbWFyZ2luO1xuICBwYWRkaW5nOiBtYXAtZ2V0KCRjYWxsb3V0LXNpemVzLCBkZWZhdWx0KTtcblxuICBib3JkZXI6ICRjYWxsb3V0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGNhbGxvdXQtcmFkaXVzO1xuXG4gIC8vIFJlc3BlY3QgdGhlIHBhZGRpbmcsIGZvb2wuXG4gID4gOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gR2VuZXJhdGUgcXVpY2sgc3R5bGVzIGZvciBhIGNhbGxvdXQgdXNpbmcgYSBzaW5nbGUgY29sb3IgYXMgYSBiYXNlbGluZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRjYWxsb3V0LWJhY2tncm91bmRdIC0gQ29sb3IgdG8gdXNlLlxuQG1peGluIGNhbGxvdXQtc3R5bGUoJGNvbG9yOiAkY2FsbG91dC1iYWNrZ3JvdW5kKSB7XG4gICRiYWNrZ3JvdW5kOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRjYWxsb3V0LWJhY2tncm91bmQtZmFkZSk7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYWNrZ3JvdW5kLCAoJGNhbGxvdXQtZm9udC1jb2xvciwgJGNhbGxvdXQtZm9udC1jb2xvci1hbHQpKTtcbn1cblxuQG1peGluIGNhbGxvdXQtc2l6ZSgkcGFkZGluZykge1xuICBwYWRkaW5nLXRvcDogJHBhZGRpbmc7XG4gIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICBwYWRkaW5nLWJvdHRvbTogJHBhZGRpbmc7XG4gIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG59XG5cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNhbGxvdXQuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskY2FsbG91dC1iYWNrZ3JvdW5kXSAtIENvbG9yIHRvIHVzZS5cbkBtaXhpbiBjYWxsb3V0KCRjb2xvcjogJGNhbGxvdXQtYmFja2dyb3VuZCkge1xuICBAaW5jbHVkZSBjYWxsb3V0LXN0eWxlKCRjb2xvcik7XG4gIEBpbmNsdWRlIGNhbGxvdXQtYmFzZTtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tY2FsbG91dCB7XG4gIC5jYWxsb3V0IHtcbiAgICBAaW5jbHVkZSBjYWxsb3V0O1xuXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkZm91bmRhdGlvbi1wYWxldHRlIHtcbiAgICAgICYuI3tcIlwiICsgJG5hbWV9IHtcbiAgICAgICAgQGluY2x1ZGUgY2FsbG91dC1zdHlsZSgkY29sb3IpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBlYWNoICRzaXplLCAkcGFkZGluZyBpbiBtYXAtcmVtb3ZlKCRjYWxsb3V0LXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgY2FsbG91dC1zaXplKCRwYWRkaW5nKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBjYXJkXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYXJkLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgY2FyZHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYXJkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYXJkLWRpdmlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBzdHlsZS5cbi8vLyBAdHlwZSBMaXN0XG4kY2FyZC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY2FyZCBzaGFkb3cuXG4vLy8gQHR5cGUgTGlzdFxuJGNhcmQtc2hhZG93OiBub25lICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgcmFkaXVzLlxuLy8vIEB0eXBlIExpc3RcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nLlxuLy8vIEB0eXBlIE51bWJlclxuJGNhcmQtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luLlxuLy8vIEB0eXBlIG51bWJlclxuJGNhcmQtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjYXJkIGNvbnRhaW5lci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGNhcmQuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gZm9udCBjb2xvciBvZiB0aGUgY2FyZC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1hcmdpbiAtIEJvdHRvbSBtYXJnaW4gb2YgdGhlIGNhcmQuXG4vLy8gQHBhcmFtIHtMaXN0fSAkYm9yZGVyIC0gQm9yZGVyIGFyb3VuZCB0aGUgY2FyZC5cbi8vLyBAcGFyYW0ge0xpc3R9ICRyYWRpdXMgLSBib3JkZXIgcmFkaXVzIG9mIHRoZSBjYXJkLlxuLy8vIEBwYXJhbSB7TGlzdH0gJHNoYWRvdyAtIGJveCBzaGFkb3cgb2YgdGhlIGNhcmQuXG5AbWl4aW4gY2FyZC1jb250YWluZXIoXG4gICRiYWNrZ3JvdW5kOiAkY2FyZC1iYWNrZ3JvdW5kLFxuICAkY29sb3I6ICRjYXJkLWZvbnQtY29sb3IsXG4gICRtYXJnaW46ICRjYXJkLW1hcmdpbi1ib3R0b20sXG4gICRib3JkZXI6ICRjYXJkLWJvcmRlcixcbiAgJHJhZGl1czogJGNhcmQtYm9yZGVyLXJhZGl1cyxcbiAgJHNoYWRvdzogJGNhcmQtc2hhZG93XG4pIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgfVxuXG4gIG1hcmdpbi1ib3R0b206ICRtYXJnaW47XG5cbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuXG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBib3gtc2hhZG93OiAkc2hhZG93O1xuXG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgJiA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjYXJkIGRpdmlkZXIuXG5AbWl4aW4gY2FyZC1kaXZpZGVyKFxuICAkYmFja2dyb3VuZDogJGNhcmQtZGl2aWRlci1iYWNrZ3JvdW5kLFxuICAkcGFkZGluZzogJGNhcmQtcGFkZGluZ1xuKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleDogMCAxIGF1dG87XG4gIH1cblxuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG5cbiAgJiA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjYXJkIHNlY3Rpb24uXG5AbWl4aW4gY2FyZC1zZWN0aW9uKFxuICAkcGFkZGluZzogJGNhcmQtcGFkZGluZ1xuKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICB9XG5cbiAgcGFkZGluZzogJHBhZGRpbmc7XG5cbiAgJiA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWNhcmQge1xuICAuY2FyZCB7XG4gICAgQGluY2x1ZGUgY2FyZC1jb250YWluZXI7XG4gIH1cblxuICAuY2FyZC1kaXZpZGVyIHtcbiAgICBAaW5jbHVkZSBjYXJkLWRpdmlkZXI7XG4gIH1cblxuICAuY2FyZC1zZWN0aW9uIHtcbiAgICBAaW5jbHVkZSBjYXJkLXNlY3Rpb247XG4gIH1cblxuICAvLyBGb3IgSUUgMTEgLSBGbGV4YnVnXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MvaXNzdWVzLzc1XG4gIC5jYXJkLWltYWdlIHtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBjbG9zZS1idXR0b25cbi8vLy9cblxuLy8vIERlZmF1bHQgcG9zaXRpb24gb2YgdGhlIGNsb3NlIGJ1dHRvbi4gVGhlIGZpcnN0IHZhbHVlIHNob3VsZCBiZSBgcmlnaHRgIG9yIGBsZWZ0YCwgYW5kIHRoZSBzZWNvbmQgdmFsdWUgc2hvdWxkIGJlIGB0b3BgIG9yIGBib3R0b21gLlxuLy8vIEB0eXBlIExpc3RcbiRjbG9zZWJ1dHRvbi1wb3NpdGlvbjogcmlnaHQgdG9wICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB6LWluZGV4IGZvciBhIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjbG9zZWJ1dHRvbi16LWluZGV4OiAxMCAhZGVmYXVsdDtcblxuLy8vIEJ1dHRvbiBzaXplIHRvIHVzZSBhcyBkZWZhdWx0XG4vLy8gQHR5cGUgU3RyaW5nXG4vLy8gQHNlZSAkY2xvc2VidXR0b24tc2l6ZVxuLy8vIEBzZWUgJGNsb3NlYnV0dG9uLW9mZnNldC1ob3Jpem9udGFsXG4vLy8gQHNlZSAkY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsXG4kY2xvc2VidXR0b24tZGVmYXVsdC1zaXplOiBtZWRpdW0gIWRlZmF1bHQ7XG5cbi8vLyBSaWdodCAob3IgbGVmdCkgb2Zmc2V0KHMpIGZvciBhIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBOdW1iZXJ8TWFwXG4kY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWw6IChcbiAgc21hbGw6IDAuNjZyZW0sXG4gIG1lZGl1bTogMXJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBUb3AgKG9yIGJvdHRvbSkgb2Zmc2V0KHMpIGZvciBhIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBOdW1iZXJ8TWFwXG4kY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsOiAoXG4gIHNtYWxsOiAwLjMzZW0sXG4gIG1lZGl1bTogMC41cmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIFNpemUocykgb2YgdGhlIGNsb3NlIGJ1dHRvbi4gVXNlZCB0byBnZW5lcmF0ZSBzaXppbmcgbW9kaWZpZXJzLlxuLy8vIEB0eXBlIE51bWJlcnxNYXBcbiRjbG9zZWJ1dHRvbi1zaXplOiAoXG4gIHNtYWxsOiAxLjVlbSxcbiAgbWVkaXVtOiAyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gVGhlIGxpbmUtaGVpZ2h0IG9mIHRoZSBjbG9zZSBidXR0b24uIEl0IGFmZmVjdHMgdGhlIHNwYWNpbmcgb2YgdGhlIGVsZW1lbnQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2xvc2VidXR0b24tbGluZWhlaWdodDogMSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBDb2xvclxuJGNsb3NlYnV0dG9uLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiB0aGUgY2xvc2UgYnV0dG9uIHdoZW4gYmVpbmcgaG92ZXJlZCBvbi5cbi8vLyBAdHlwZSBDb2xvclxuJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyOiAkYmxhY2sgIWRlZmF1bHQ7XG5cblxuLy8vIEdldCB0aGUgc2l6ZSBhbmQgcG9zaXRpb24gZm9yIGEgY2xvc2UgYnV0dG9uLiBJZiB0aGUgaW5wdXQgdmFsdWUgaXMgYSBudW1iZXIsIHRoZSBudW1iZXIgaXMgcmV0dXJuZWQuIElmIHRoZSBpbnB1dCB2YWx1ZSBpcyBhIGNvbmZpZyBtYXAgYW5kIHRoZSBtYXAgaGFzIHRoZSBrZXkgYCRzaXplYCwgdGhlIHZhbHVlIGlzIHJldHVybmVkLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkdmFsdWUgLSBBIG51bWJlciBvciBtYXAgdGhhdCByZXByZXNlbnRzIHRoZSBzaXplIG9yIHBvc2l0aW9uIHZhbHVlKHMpIG9mIHRoZSBjbG9zZSBidXR0b24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIFRoZSBzaXplIG9mIHRoZSBjbG9zZSBidXR0b24gdG8gdXNlLlxuLy8vXG4vLy8gQHJldHVybiB7TnVtYmVyfSBUaGUgZ2l2ZW4gbnVtYmVyIG9yIHRoZSB2YWx1ZSBmb3VuZCBpbiB0aGUgbWFwLlxuQGZ1bmN0aW9uIC16Zi1nZXQtc2l6ZS12YWwoJHZhbHVlLCAkc2l6ZSkge1xuICAvLyBDaGVjayBpZiB0aGUgdmFsdWUgaXMgYSBudW1iZXJcbiAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyB7XG4gICAgLy8gSWYgaXQgaXMsIGp1c3QgcmV0dXJuIHRoZSBudW1iZXJcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuXG4gIC8vIENoZWNrIGlmIHRoZSBzaXplIG5hbWUgZXhpc3RzIGluIHRoZSB2YWx1ZSBtYXBcbiAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJHZhbHVlLCAkc2l6ZSkge1xuICAgIC8vIElmIGl0IGRvZXMsIHJldHVybiB0aGUgdmFsdWVcbiAgICBAcmV0dXJuIG1hcC1nZXQoJHZhbHVlLCAkc2l6ZSk7XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIHNpemUgYW5kIHBvc2l0aW9uIG9mIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgW21lZGl1bV0gLSBUaGUgc2l6ZSB0byB1c2UuIFNldCB0byBgc21hbGxgIHRvIGNyZWF0ZSBhIHNtYWxsIGNsb3NlIGJ1dHRvbi4gVGhlICdtZWRpdW0nIHZhbHVlcyBkZWZpbmVkIGluIGAkY2xvc2VidXR0b24tKmAgdmFyaWFibGVzIHdpbGwgYmUgdXNlZCBhcyB0aGUgZGVmYXVsdCBzaXplIGFuZCBwb3NpdGlvbiBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuQG1peGluIGNsb3NlLWJ1dHRvbi1zaXplKCRzaXplKSB7XG4gICR4OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAxKTtcbiAgJHk6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDIpO1xuXG4gICN7JHh9OiAtemYtZ2V0LXNpemUtdmFsKCRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbCwgJHNpemUpO1xuICAjeyR5fTogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsLCAkc2l6ZSk7XG4gIGZvbnQtc2l6ZTogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tc2l6ZSwgJHNpemUpO1xuICBsaW5lLWhlaWdodDogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tbGluZWhlaWdodCwgJHNpemUpO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2xvc2UgYnV0dG9uLCB1c2luZyB0aGUgc3R5bGVzIGluIHRoZSBzZXR0aW5ncyB2YXJpYWJsZXMuXG5AbWl4aW4gY2xvc2UtYnV0dG9uIHtcbiAgJHg6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDEpO1xuICAkeTogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMik7XG5cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAkY2xvc2VidXR0b24tei1pbmRleDtcbiAgY29sb3I6ICRjbG9zZWJ1dHRvbi1jb2xvcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbiB7XG4gIC5jbG9zZS1idXR0b24ge1xuICAgIC8vIFVzZSBieSBkZWZhdWx0IHRoZSBwbGFjZWhvbGRlciBvZiB0aGUgZGVmYXVsdCBzaXplXG4gICAgQGV4dGVuZCAlemYtY2xvc2UtYnV0dG9uLS0jeyRjbG9zZWJ1dHRvbi1kZWZhdWx0LXNpemV9O1xuXG4gICAgQGluY2x1ZGUgY2xvc2UtYnV0dG9uO1xuXG4gICAgLy8gR2VuZXJhdGUgYSBwbGFjZWhvbGRlciBhbmQgYSBjbGFzcyBmb3IgZWFjaCBzaXplXG4gICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRjbG9zZWJ1dHRvbi1zaXplIHtcbiAgICAgIEBhdC1yb290IHtcbiAgICAgICAgJXpmLWNsb3NlLWJ1dHRvbi0tI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGNsb3NlLWJ1dHRvbi1zaXplKCRuYW1lKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgQGV4dGVuZCAlemYtY2xvc2UtYnV0dG9uLS0jeyRuYW1lfTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBtaXhpbiBmb3VuZGF0aW9uLW1lbnUtaWNvbiB7XG4gIC5tZW51LWljb24ge1xuICAgIEBpbmNsdWRlIGhhbWJ1cmdlcigkY29sb3I6ICR0aXRsZWJhci1pY29uLWNvbG9yLCAkY29sb3ItaG92ZXI6ICR0aXRsZWJhci1pY29uLWNvbG9yLWhvdmVyKTtcbiAgfVxuXG4gIC5tZW51LWljb24uZGFyayB7XG4gICAgQGluY2x1ZGUgaGFtYnVyZ2VyO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZHJpbGxkb3duXG4vLy8vXG5cbi8vLyBUcmFuc2l0aW9uIHByb3BlcnR5IHRvIHVzZSBmb3IgYW5pbWF0aW5nIG1lbnVzLlxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiRkcmlsbGRvd24tdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhciAhZGVmYXVsdDtcblxuLy8vIEFkZHMgYXJyb3dzIHRvIGRyaWxsZG93biBpdGVtcyB3aXRoIHN1Ym1lbnVzLCBhcyB3ZWxsIGFzIHRoZSBiYWNrIGJ1dHRvbi5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZHJpbGxkb3duLWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJpbGxkb3duIG1lbnUgaXRlbSBwYWRkaW5nLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyaWxsZG93bi1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJpbGxkb3duIG1lbnUgbmVzdGVkIG1hcmdpblxuLy8vIEB0eXBlIE51bWJlclxuJGRyaWxsZG93bi1uZXN0ZWQtbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgZHJpbGxkb3duIHRvcCBsZXZlbCBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyaWxsZG93bi1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyaWxsZG93biBtZW51IGl0ZW0gcGFkZGluZyBpbiB0aGUgc3VibWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcmlsbGRvd24tc3VibWVudS1wYWRkaW5nOiAkZHJpbGxkb3duLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBkcmlsbGRvd24gc3VibWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcmlsbGRvd24tc3VibWVudS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyaWxsZG93biBhcnJvdyBjb2xvciBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJpbGxkb3duLWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJpbGxkb3duIGFycm93IHNpemUgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBMZW5ndGhcbiRkcmlsbGRvd24tYXJyb3ctc2l6ZTogNnB4ICFkZWZhdWx0O1xuXG5AbWl4aW4gemYtZHJpbGxkb3duLWxlZnQtcmlnaHQtYXJyb3dzIHtcbiAgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJpbGxkb3duLWFycm93LXNpemUsICRkcmlsbGRvd24tYXJyb3ctY29sb3IsICRnbG9iYWwtcmlnaHQpO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBtYXJnaW4tdG9wOiAtMSAqICRkcmlsbGRvd24tYXJyb3ctc2l6ZTtcbiAgICAgICN7JGdsb2JhbC1yaWdodH06IDFyZW07XG4gICAgfVxuICB9XG5cbiAgJi5hbGlnbi1sZWZ0IC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgcmlnaHQpO1xuICAgIHJpZ2h0OiAxcmVtO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cblxuICAmLmFsaWduLXJpZ2h0IC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgbGVmdCk7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMXJlbTtcbiAgfVxuXG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWRyaWxsZG93bi1tZW51IHtcbiAgLy8gQXBwbGllZCB0byB0aGUgTWVudSBjb250YWluZXJcbiAgLmlzLWRyaWxsZG93biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAmLmFuaW1hdGUtaGVpZ2h0IHtcbiAgICAgIHRyYW5zaXRpb246IGhlaWdodCAwLjVzO1xuICAgIH1cbiAgfVxuXG4gIC8vIFRoZSB0b3AgbGV2ZWwgPHVsPlxuICAuZHJpbGxkb3duIHtcbiAgICBhIHtcbiAgICAgIHBhZGRpbmc6ICRkcmlsbGRvd24tcGFkZGluZztcbiAgICAgIGJhY2tncm91bmQ6ICRkcmlsbGRvd24tYmFja2dyb3VuZDtcbiAgICB9XG5cbiAgICAvLyBBcHBsaWVkIHRvIHN1Ym1lbnUgPHVsPnNcbiAgICAuaXMtZHJpbGxkb3duLXN1Ym1lbnUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgI3skZ2xvYmFsLWxlZnR9OiAxMDAlO1xuICAgICAgei1pbmRleDogLTE7XG5cbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYmFja2dyb3VuZDogJGRyaWxsZG93bi1zdWJtZW51LWJhY2tncm91bmQ7XG4gICAgICB0cmFuc2l0aW9uOiAkZHJpbGxkb3duLXRyYW5zaXRpb247XG5cbiAgICAgICYuaXMtYWN0aXZlIHtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IGx0ciwgLTEwMCUsIDEwMCUpKTtcbiAgICAgIH1cblxuICAgICAgJi5pcy1jbG9zaW5nIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gbHRyLCAxMDAlLCAtMTAwJSkpO1xuICAgICAgfVxuXG4gICAgICAvLyBTdWJtZW51IGl0ZW0gcGFkZGluZ1xuICAgICAgYSB7XG4gICAgICAgIHBhZGRpbmc6ICRkcmlsbGRvd24tc3VibWVudS1wYWRkaW5nO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5uZXN0ZWQuaXMtZHJpbGxkb3duLXN1Ym1lbnUge1xuICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQoJGRyaWxsZG93bi1uZXN0ZWQtbWFyZ2luKTtcbiAgICB9XG5cbiAgICAuZHJpbGxkb3duLXN1Ym1lbnUtY292ZXItcHJldmlvdXMge1xuICAgICAgbWluLWhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBAaWYgJGRyaWxsZG93bi1hcnJvd3Mge1xuICAgICAgQGluY2x1ZGUgemYtZHJpbGxkb3duLWxlZnQtcmlnaHQtYXJyb3dzO1xuXG4gICAgICAuanMtZHJpbGxkb3duLWJhY2sgPiBhOjpiZWZvcmUge1xuICAgICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyaWxsZG93bi1hcnJvdy1zaXplLCAkZHJpbGxkb3duLWFycm93LWNvbG9yLCAkZ2xvYmFsLWxlZnQpO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwLjc1cmVtOyAvLyBDcmVhdGVzIHNwYWNlIGJldHdlZW4gdGhlIGFycm93IGFuZCB0aGUgdGV4dFxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGRyb3Bkb3duXG4vLy8vXG5cbi8vLyBQYWRkaW5nIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBMaXN0XG4kZHJvcGRvd24tcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd24tYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3duLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3duLWZvbnQtc2l6ZTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFdpZHRoIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bi13aWR0aDogMzAwcHggIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3duLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBTaXplcyBmb3IgZHJvcGRvd24gcGFuZXMuIEVhY2ggc2l6ZSBpcyBhIENTUyBjbGFzcyB5b3UgY2FuIGFwcGx5LlxuLy8vIEB0eXBlIE1hcFxuJGRyb3Bkb3duLXNpemVzOiAoXG4gIHRpbnk6IDEwMHB4LFxuICBzbWFsbDogMjAwcHgsXG4gIGxhcmdlOiA0MDBweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBBcHBsaWVzIHN0eWxlcyBmb3IgYSBiYXNpYyBkcm9wZG93bi5cbkBtaXhpbiBkcm9wZG93bi1jb250YWluZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xuXG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgd2lkdGg6ICRkcm9wZG93bi13aWR0aDtcbiAgcGFkZGluZzogJGRyb3Bkb3duLXBhZGRpbmc7XG5cbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBib3JkZXI6ICRkcm9wZG93bi1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRkcm9wZG93bi1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1iYWNrZ3JvdW5kO1xuXG4gIGZvbnQtc2l6ZTogJGRyb3Bkb3duLWZvbnQtc2l6ZTtcblxuXG4gIC8vIEFsbG93IGFuIGludGVybWl0dGVudCBzdGF0ZSB0byBkbyBwb3NpdGlvbmluZyBiZWZvcmUgbWFraW5nIHZpc2libGUuXG4gICYuaXMtb3BlbmluZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAmLmlzLW9wZW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZHJvcGRvd24ge1xuICAuZHJvcGRvd24tcGFuZSB7XG4gICAgQGluY2x1ZGUgZHJvcGRvd24tY29udGFpbmVyO1xuICB9XG5cbiAgQGVhY2ggJG5hbWUsICRzaXplIGluICRkcm9wZG93bi1zaXplcyB7XG4gICAgLmRyb3Bkb3duLXBhbmUge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIHdpZHRoOiAkc2l6ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcm9wZG93bi1tZW51XG4vLy8vXG5cbi8vLyBFbmFibGVzIGFycm93cyBmb3IgaXRlbXMgd2l0aCBkcm9wZG93biBtZW51cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZHJvcGRvd25tZW51LWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBjb2xvciBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LWFycm93LWNvbG9yOiAkYW5jaG9yLWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IGFycm93IHNpemUgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTogNnB4ICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IGFycm93IHBhZGRpbmcgZm9yIGFsaWduaW5nIHRoZSBhcnJvdyBjb3JyZWN0bHkuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWFycm93LXBhZGRpbmc6IDEuNXJlbSAhZGVmYXVsdDtcblxuLy8vIE1pbmltdW0gd2lkdGggb2YgZHJvcGRvd24gc3ViLW1lbnVzLlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1taW4td2lkdGg6IDIwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgdG9wIGxldmVsIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LWJhY2tncm91bmQ6IG51bGwgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBkcm9wZG93bnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bm1lbnUtc3VibWVudS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciB0b3AgbGV2ZWwgaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IG5lc3RlZCBtYXJnaW5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bm1lbnUtbmVzdGVkLW1hcmdpbjogMCAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIHN1Yi1tZW51IGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3dubWVudS1zdWJtZW51LXBhZGRpbmc6ICRkcm9wZG93bm1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBmb3IgZHJvcGRvd24gc3ViLW1lbnVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bm1lbnUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLyBCb3JkZXIgd2lkdGggZm9yIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vIFVzZWQgdG8gYWRqdXN0IHRvcCBtYXJnaW4gb2YgYSBzdWItbWVudSBpZiBhIGJvcmRlciBpcyB1c2VkLlxuLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWJvcmRlci13aWR0aDogbnRoKCRkcm9wZG93bm1lbnUtYm9yZGVyLCAxKTtcblxuLy8vIFRleHQgY29sb3Igb2YgYW4gYWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbS4gRXhwbGljaXQgb3ZlcnJpZGUgZm9yIG1lbnUgZGVmYXVsdHNcbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3duLW1lbnUtaXRlbS1jb2xvci1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYW4gYWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbS4gRXhwbGljaXQgb3ZlcnJpZGUgZm9yIG1lbnUgZGVmYXVsdHNcbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3duLW1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbkBtaXhpbiB6Zi1kcm9wZG93bi1sZWZ0LXJpZ2h0LWFycm93cyB7XG4gID4gYTo6YWZ0ZXIge1xuICAgICN7JGdsb2JhbC1yaWdodH06IDE0cHg7XG4gIH1cblxuICAmLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgbGVmdCk7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogNXB4O1xuICB9XG5cbiAgJi5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCByaWdodCk7XG4gIH1cbn1cblxuQG1peGluIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKCRkaXI6IGhvcml6b250YWwpIHtcbiAgQGlmICRkaXIgPT0gaG9yaXpvbnRhbCB7XG4gICAgPiBsaS5vcGVucy1sZWZ0IHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IGxpLm9wZW5zLXJpZ2h0IHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGRyb3Bkb3dubWVudS1hcnJvd3Mge1xuICAgICAgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEgeyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06ICRkcm9wZG93bm1lbnUtYXJyb3ctcGFkZGluZztcbiAgICAgIH1cblxuICAgICAgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIGRvd24pO1xuICAgICAgICAjeyRnbG9iYWwtcmlnaHR9OiA1cHg7XG4gICAgICAgICN7JGdsb2JhbC1sZWZ0fTogYXV0bztcbiAgICAgICAgbWFyZ2luLXRvcDogLTEgKiAoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplICogMC41KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGRpciA9PSB2ZXJ0aWNhbCB7XG4gICAgPiBsaSB7XG4gICAgICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgIH1cblxuICAgICAgJi5vcGVucy1sZWZ0IHtcbiAgICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5vcGVucy1yaWdodCB7XG4gICAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgICAgQGluY2x1ZGUgemYtZHJvcGRvd24tbGVmdC1yaWdodC1hcnJvd3M7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAd2FybiAnVGhlIGRpcmVjdGlvbiB1c2VkIGZvciBkcm9wZG93bi1tZW51LWRpcmVjdGlvbigpIG11c3QgYmUgaG9yaXpvbnRhbCBvciB2ZXJ0aWNhbC4nO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWRyb3Bkb3duLW1lbnUge1xuICAuZHJvcGRvd24ubWVudSB7XG4gICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG5cbiAgICBhIHtcbiAgICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgICB9XG5cbiAgICAvLyBUb3AtbGV2ZWwgaXRlbVxuICAgID4gbGkgPiBhIHtcbiAgICAgIGJhY2tncm91bmQ6ICRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDtcbiAgICAgIHBhZGRpbmc6ICRkcm9wZG93bm1lbnUtcGFkZGluZztcbiAgICB9XG5cbiAgICAvLyBUb3AtbGV2ZWwgaXRlbSBhY3RpdmUgc3RhdGVcbiAgICA+IGxpLmlzLWFjdGl2ZSA+IGEge1xuICAgICAgYmFja2dyb3VuZDogJGRyb3Bkb3duLW1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgICAgIGNvbG9yOiAkZHJvcGRvd24tbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTtcbiAgICB9XG5cbiAgICAubm8tanMgJiB1bCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5uZXN0ZWQuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkZHJvcGRvd25tZW51LW5lc3RlZC1tYXJnaW4pO1xuICAgIH1cblxuICAgICYudmVydGljYWwge1xuICAgICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgIH1cblxuICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICAgICYuI3skc2l6ZX0taG9yaXpvbnRhbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLiN7JHNpemV9LXZlcnRpY2FsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmFsaWduLXJpZ2h0IHtcbiAgICAgIC5pcy1kcm9wZG93bi1zdWJtZW51LmZpcnN0LXN1YiB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwge1xuICAgIHdpZHRoOiAxMDBweDtcblxuICAgICYuYWxpZ24tcmlnaHQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgYTo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICAjeyRnbG9iYWwtcmlnaHR9OiA1cHg7XG4gICAgICAjeyRnbG9iYWwtbGVmdH06IGF1dG87XG4gICAgICBtYXJnaW4tdG9wOiAtMSAqICRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTtcbiAgICB9XG5cbiAgICAmLm9wZW5zLWlubmVyID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuXG4gICAgICB0b3A6IDEwMCU7XG4gICAgICBAaWYgJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSAncnRsJyB7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgICYub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG5cbiAgICAmLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgICN7JGdsb2JhbC1sZWZ0fTogMTAwJTtcbiAgICB6LWluZGV4OiAxO1xuXG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtaW4td2lkdGg6ICRkcm9wZG93bm1lbnUtbWluLXdpZHRoO1xuXG4gICAgYm9yZGVyOiAkZHJvcGRvd25tZW51LWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kOiAkZHJvcGRvd25tZW51LXN1Ym1lbnUtYmFja2dyb3VuZDtcblxuICAgIC5kcm9wZG93biAmIGEge1xuICAgICAgcGFkZGluZzogJGRyb3Bkb3dubWVudS1zdWJtZW51LXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IHtcbiAgICAgIEBpZiAkZHJvcGRvd25tZW51LWFycm93cyB7XG4gICAgICAgIEBpbmNsdWRlIHpmLWRyb3Bkb3duLWxlZnQtcmlnaHQtYXJyb3dzO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAodHlwZS1vZigkZHJvcGRvd25tZW51LWJvcmRlci13aWR0aCkgPT0gJ251bWJlcicpIHtcbiAgICAgIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgbWFyZ2luLXRvcDogKC0kZHJvcGRvd25tZW51LWJvcmRlci13aWR0aCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiBsaSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAvLyBbVE9ET10gQ3V0IGJhY2sgc3BlY2lmaWNpdHlcbiAgICAvLyY6bm90KC5qcy1kcm9wZG93bi1ub2hvdmVyKSA+IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudDpob3ZlciA+ICYsIC8vIHdoeSBpcyB0aGlzIGxpbmUgbmVlZGVkPyBPcGVuaW5nIGlzIGhhbmRsZWQgYnkgSlMgYW5kIHRoaXMgY2F1c2VzIHNvbWUgdWdseSBmbGlja2VyaW5nIHdoZW4gdGhlIHN1YiBpcyByZS1wb3NpdGlvbmVkIGF1dG9tYXRpY2FsbHkuLi5cbiAgICAmLmpzLWRyb3Bkb3duLWFjdGl2ZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCByZXNwb25zaXZlLWVtYmVkXG4vLy8vXG5cbi8vLyBNYXJnaW4gYmVsb3cgYSByZXNwb25zaXZlIGVtYmVkIGNvbnRhaW5lci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXNwb25zaXZlLWVtYmVkLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcblxuLy8vIEFzcGVjdCByYXRpb3MgdXNlZCB0byBkZXRlcm1pbmUgcGFkZGluZy1ib3R0b20gb2YgcmVzcG9uc2l2ZSBlbWJlZCBjb250YWluZXJzLlxuLy8vIEB0eXBlIE1hcFxuJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zOiAoXG4gIGRlZmF1bHQ6IDQgYnkgMyxcbiAgd2lkZXNjcmVlbjogMTYgYnkgOSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDcmVhdGVzIGEgcmVzcG9uc2l2ZSBlbWJlZCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtTdHJpbmd8TGlzdH0gJHJhdGlvIFtkZWZhdWx0XSAtIFJhdGlvIG9mIHRoZSBjb250YWluZXIuIENhbiBiZSBhIGtleSBmcm9tIHRoZSBgJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zYCBtYXAgb3IgYSBsaXN0IGZvcm1hdHRlZCBhcyBgeCBieSB5YC5cbkBtaXhpbiByZXNwb25zaXZlLWVtYmVkKCRyYXRpbzogZGVmYXVsdCkge1xuICBAaWYgdHlwZS1vZigkcmF0aW8pID09ICdzdHJpbmcnIHtcbiAgICAkcmF0aW86IG1hcC1nZXQoJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zLCAkcmF0aW8pO1xuICB9XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAkcmVzcG9uc2l2ZS1lbWJlZC1tYXJnaW4tYm90dG9tO1xuICBwYWRkaW5nLWJvdHRvbTogcmF0aW8tdG8tcGVyY2VudGFnZSgkcmF0aW8pO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIGlmcmFtZSxcbiAgb2JqZWN0LFxuICBlbWJlZCxcbiAgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkIHtcbiAgLnJlc3BvbnNpdmUtZW1iZWQsXG4gIC5mbGV4LXZpZGVvIHtcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWVtYmVkKCRyYXRpbzogZGVmYXVsdCk7XG5cbiAgICAkcmF0aW9zOiBtYXAtcmVtb3ZlKCRyZXNwb25zaXZlLWVtYmVkLXJhdGlvcywgZGVmYXVsdCk7XG5cbiAgICBAZWFjaCAkbmFtZSwgJHJhdGlvIGluICRyYXRpb3Mge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByYXRpby10by1wZXJjZW50YWdlKCRyYXRpbyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgbGFiZWxcbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kbGFiZWwtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3IgZm9yIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGxhYmVsLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBBbHRlcm5hdGUgdGV4dCBjb2xvciBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kbGFiZWwtY29sb3ItYWx0OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcmluZyBjbGFzc2VzLiBBIG1hcCBvZiBjbGFzc2VzIHRvIG91dHB1dCBpbiB5b3VyIENTUywgbGlrZSBgLnNlY29uZGFyeWAsIGAuc3VjY2Vzc2AsIGFuZCBzbyBvbi5cbi8vLyBAdHlwZSBNYXBcbiRsYWJlbC1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsYWJlbC1mb250LXNpemU6IDAuOHJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxhYmVsLXBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgb2YgbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxhYmVsLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgYmFzZSBzdHlsZXMgZm9yIGEgbGFiZWwuXG5AbWl4aW4gbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6ICRsYWJlbC1wYWRkaW5nO1xuXG4gIGJvcmRlci1yYWRpdXM6ICRsYWJlbC1yYWRpdXM7XG5cbiAgZm9udC1zaXplOiAkbGFiZWwtZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogMTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1sYWJlbCB7XG4gIC5sYWJlbCB7XG4gICAgQGluY2x1ZGUgbGFiZWw7XG5cbiAgICBiYWNrZ3JvdW5kOiAkbGFiZWwtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGxhYmVsLWNvbG9yO1xuXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkbGFiZWwtcGFsZXR0ZSB7XG4gICAgICAmLiN7XCJcIiArICRuYW1lfSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICAgICAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGNvbG9yLCAoJGxhYmVsLWNvbG9yLCAkbGFiZWwtY29sb3ItYWx0KSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgbWVkaWEtb2JqZWN0XG4vLy8vXG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIGEgbWVkaWEgb2JqZWN0LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lZGlhb2JqZWN0LW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gTGVmdCBhbmQgcmlnaHQgcGFkZGluZyBvbiBzZWN0aW9ucyB3aXRoaW4gYSBtZWRpYSBvYmplY3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBXaWR0aCBvZiBpbWFnZXMgd2l0aGluIGEgbWVkaWEgb2JqZWN0LCB3aGVuIHRoZSBvYmplY3QgaXMgc3RhY2tlZCB2ZXJ0aWNhbGx5LiBTZXQgdG8gJ2F1dG8nIHRvIHVzZSB0aGUgaW1hZ2UncyBuYXR1cmFsIHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJG1lZGlhb2JqZWN0LWltYWdlLXdpZHRoLXN0YWNrZWQ6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBtZWRpYSBvYmplY3QgY29udGFpbmVyLlxuQG1peGluIG1lZGlhLW9iamVjdC1jb250YWluZXIge1xuICBkaXNwbGF5OiBpZigkZ2xvYmFsLWZsZXhib3gsIGZsZXgsIGJsb2NrKTtcbiAgbWFyZ2luLWJvdHRvbTogJG1lZGlhb2JqZWN0LW1hcmdpbi1ib3R0b207XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cblxuICBpbWcge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICYuc3RhY2stZm9yLSN7JC16Zi16ZXJvLWJyZWFrcG9pbnR9IHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi16ZXJvLWJyZWFrcG9pbnQgb25seSkge1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3Igc2VjdGlvbnMgd2l0aGluIGEgbWVkaWEgb2JqZWN0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcGFkZGluZyBbJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZ10gLSBQYWRkaW5nIGJldHdlZW4gc2VjdGlvbnMuXG5AbWl4aW4gbWVkaWEtb2JqZWN0LXNlY3Rpb24oJHBhZGRpbmc6ICRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmcpIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgfVxuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctI3skZ2xvYmFsLXJpZ2h0fTogJHBhZGRpbmc7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQ6bm90KDpudGgtY2hpbGQoMikpIHtcbiAgICBwYWRkaW5nLSN7JGdsb2JhbC1sZWZ0fTogJHBhZGRpbmc7XG4gIH1cblxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLnN0YWNrLWZvci0jeyQtemYtemVyby1icmVha3BvaW50fSAmIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtemVyby1icmVha3BvaW50IG9ubHkpIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLW9iamVjdC1zdGFjaztcbiAgICB9XG4gIH1cblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAmLm1haW4tc2VjdGlvbiB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgJi5taWRkbGUge1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICAmLmJvdHRvbSB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgdG8gc3RhY2sgc2VjdGlvbnMgb2YgYSBtZWRpYSBvYmplY3QuIEFwcGx5IHRoaXMgdG8gdGhlIHNlY3Rpb24gZWxlbWVudHMsIG5vdCB0aGUgY29udGFpbmVyLlxuQG1peGluIG1lZGlhLW9iamVjdC1zdGFjayB7XG4gIHBhZGRpbmc6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAkbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIGltZyB7XG4gICAgd2lkdGg6ICRtZWRpYW9iamVjdC1pbWFnZS13aWR0aC1zdGFja2VkO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdCB7XG4gIC5tZWRpYS1vYmplY3Qge1xuICAgIEBpbmNsdWRlIG1lZGlhLW9iamVjdC1jb250YWluZXI7XG4gIH1cblxuICAubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgIEBpbmNsdWRlIG1lZGlhLW9iamVjdC1zZWN0aW9uO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgb2ZmLWNhbnZhc1xuLy8vL1xuXG4vLy8gV2lkdGggbWFwIG9mIGEgbGVmdC9yaWdodCBvZmYtY2FudmFzIHBhbmVsLlxuLy8vIEB0eXBlIE1hcFxuJG9mZmNhbnZhcy1zaXplczogKFxuICBzbWFsbDogMjUwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gSGVpZ2h0IG1hcCBvZiBhIHRvcC9ib3R0b20gb2ZmLWNhbnZhcyBwYW5lbC5cbi8vLyBAdHlwZSBNYXBcbiRvZmZjYW52YXMtdmVydGljYWwtc2l6ZXM6IChcbiAgc21hbGw6IDI1MHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbi8vLyBAdHlwZSBDb2xvclxuJG9mZmNhbnZhcy1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgZm9yIHRoZSBvZmYtY2FudmFzIG92ZXJsYXAgcGFuZWwuXG4vLy8gQHR5cGUgU2hhZG93XG4kb2ZmY2FudmFzLXNoYWRvdzogMCAwIDEwcHggcmdiYSgkYmxhY2ssIDAuNykgIWRlZmF1bHQ7XG5cbi8vLyBJbm5lciBib3ggc2hhZG93IHNpemUgZm9yIHRoZSBvZmYtY2FudmFzIHB1c2ggcGFuZWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplOiAyMHB4ICFkZWZhdWx0O1xuXG4vLy8gSW5uZXIgYm94IHNoYWRvdyBjb2xvciBmb3IgdGhlIG9mZi1jYW52YXMgcHVzaCBwYW5lbC5cbi8vLyBAdHlwZSBDb2xvclxuJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3I6IHJnYmEoJGJsYWNrLCAwLjI1KSAhZGVmYXVsdDtcblxuLy8vIFotaW5kZXggb2YgYW4gb2ZmLWNhbnZhcyBjb250ZW50IG92ZXJsYXkuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLW92ZXJsYXktemluZGV4OiAxMSAhZGVmYXVsdDtcblxuLy8vIFotaW5kZXggb2YgYW4gb2ZmLWNhbnZhcyBwYW5lbCB3aXRoIHRoZSBgcHVzaGAgdHJhbnNpdGlvbi5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtcHVzaC16aW5kZXg6IDEyICFkZWZhdWx0O1xuXG4vLy8gWi1pbmRleCBvZiBhbiBvZmYtY2FudmFzIHBhbmVsIHdpdGggdGhlIGBvdmVybGFwYCB0cmFuc2l0aW9uLlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDogMTMgIWRlZmF1bHQ7XG5cbi8vLyBaLWluZGV4IG9mIGFuIG9mZi1jYW52YXMgcGFuZWwgdXNpbmcgdGhlIGByZXZlYWwtZm9yLSpgIGNsYXNzZXMgb3IgbWl4aW4uXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLXJldmVhbC16aW5kZXg6IDEyICFkZWZhdWx0O1xuXG4vLy8gTGVuZ3RoIG9mIHRoZSBhbmltYXRpb24gb24gYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGg6IDAuNXMgIWRlZmF1bHQ7XG5cbi8vLyBUaW1pbmcgZnVuY3Rpb24gb2YgdGhlIGFuaW1hdGlvbiBvbiBhbiBvZmYtY2FudmFzIHBhbmVsLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc6IGVhc2UgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGEgcmV2ZWFsZWQgb2ZmLWNhbnZhcyB3aWxsIGJlIGZpeGVkLXBvc2l0aW9uLCBhbmQgc2Nyb2xsIHdpdGggdGhlIHNjcmVlbi5cbi8vLyBAdHlwZSBCb29sXG4kb2ZmY2FudmFzLWZpeGVkLXJldmVhbDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHRoZSBvdmVybGF5IHRoYXQgYXBwZWFycyB3aGVuIGFuIG9mZi1jYW52YXMgcGFuZWwgaXMgb3Blbi5cbi8vLyBAdHlwZSBDb2xvclxuJG9mZmNhbnZhcy1leGl0LWJhY2tncm91bmQ6IHJnYmEoJHdoaXRlLCAwLjI1KSAhZGVmYXVsdDtcblxuLy8vIENTUyBjbGFzcyB1c2VkIGZvciB0aGUgbWFpbiBjb250ZW50IGFyZWEuIFRoZSBvZmYtY2FudmFzIG1peGlucyB1c2UgdGhpcyB0byB0YXJnZXQgdGhlIHBhZ2UgY29udGVudC5cbiRtYWluY29udGVudC1jbGFzczogJ29mZi1jYW52YXMtY29udGVudCcgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIGJhc2VsaW5lIHN0eWxlcyBmb3Igb2ZmLWNhbnZhcy4gVGhpcyBDU1MgaXMgcmVxdWlyZWQgdG8gbWFrZSB0aGUgb3RoZXIgcGllY2VzIHdvcmsuXG5AbWl4aW4gb2ZmLWNhbnZhcy1iYXNpY3Mge1xuXG4gIC8vLyBUcmFuc2Zvcm0gZGVwcmVjYXRlZCBzaXplIHNldHRpbmdzIGludG8gbWFwICYgc2hvdyB3YXJuaW5nXG4gIEBpZiB2YXJpYWJsZS1leGlzdHMob2ZmY2FudmFzLXNpemUpIHtcbiAgICAkb2ZmY2FudmFzLXNpemVzOiAoc21hbGw6ICRvZmZjYW52YXMtc2l6ZSwgbWVkaXVtOiAkb2ZmY2FudmFzLXNpemUpICFnbG9iYWw7XG4gICAgQHdhcm4gJyRvZmZjYW52YXMtc2l6ZSBpcyBkZXByZWNhdGVkIGFuZCBub3QgdXNlZCBhbnltb3JlISBQbGVhc2UgdXBkYXRlIHlvdXIgc2V0dGluZ3MgYW5kIHVzZSB0aGUgbWFwICRvZmZjYW52YXMtc2l6ZXMgaW5zdGVhZCc7XG4gIH1cbiAgQGlmIHZhcmlhYmxlLWV4aXN0cyhvZmZjYW52YXMtdmVydGljYWwtc2l6ZSkge1xuICAgICRvZmZjYW52YXMtdmVydGljYWwtc2l6ZXM6IChzbWFsbDogJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplLCBtZWRpdW06ICRvZmZjYW52YXMtdmVydGljYWwtc2l6ZSkgIWdsb2JhbDtcbiAgICBAd2FybiAnJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplIGlzIGRlcHJlY2F0ZWQgYW5kIG5vdCB1c2VkIGFueW1vcmUhIFBsZWFzZSB1cGRhdGUgeW91ciBzZXR0aW5ncyBhbmQgdXNlIHRoZSBtYXAgJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplcyBpbnN0ZWFkJztcbiAgfVxuXG4gIC8vIENoZWNrcyB0aGUgei1pbmRleGVzIGFuZCBpbmNyZWFzZSB0aGVtIGR1ZSB0byBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eS5cbiAgLy8gVGhpcyBpcyBuZWNlc3NhcnkgYmVjYXVzZSB0aGUgb3ZlcmxheSdzIHotaW5kZXggaXMgbmV3IHNpbmNlIHY2LjQgYW5kIG1heSBiZSBpZGVudGljYWwgdG8gdGhlIHVzZXIgY3VzdG9tIHNldHRpbmdzIG9mIHRoZSBwdXNoIHotaW5kZXguXG4gIEBpZiAkb2ZmY2FudmFzLXB1c2gtemluZGV4IDw9ICRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXggeyAkb2ZmY2FudmFzLXB1c2gtemluZGV4OiAkb2ZmY2FudmFzLW92ZXJsYXktemluZGV4ICsgMSAhZ2xvYmFsOyB9XG4gIEBpZiAkb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4IDw9ICRvZmZjYW52YXMtcHVzaC16aW5kZXggeyAkb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4OiAkb2ZmY2FudmFzLXB1c2gtemluZGV4ICsgMSAhZ2xvYmFsOyB9XG4gIEBpZiAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXggPD0gJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleCB7ICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleDogJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleCArIDEgIWdsb2JhbDsgfVxuXG4gIC8vIEhpZGVzIG92ZXJmbG93IG9uIGJvZHkgd2hlbiBhbiBvZmYtY2FudmFzIHBhbmVsIGlzIG9wZW4uXG4gIC5pcy1vZmYtY2FudmFzLW9wZW4ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAvLyBPZmYtY2FudmFzIG92ZXJsYXkgKGdlbmVyYXRlZCBieSBKYXZhU2NyaXB0KVxuICAuanMtb2ZmLWNhbnZhcy1vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleDtcblxuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aCAkb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nLCB2aXNpYmlsaXR5ICRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGggJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZztcblxuICAgIGJhY2tncm91bmQ6ICRvZmZjYW52YXMtZXhpdC1iYWNrZ3JvdW5kO1xuXG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgJi5pcy12aXNpYmxlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIH1cblxuICAgICYuaXMtY2xvc2FibGUge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgICYuaXMtb3ZlcmxheS1hYnNvbHV0ZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgfVxuXG4gICAgJi5pcy1vdmVybGF5LWZpeGVkIHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB9XG4gIH1cbn1cblxuLy8gQWRkcyBiYXNpYyBzdHlsZXMgZm9yIGFuIG9mZi1jYW52YXMgd3JhcHBlci5cbkBtaXhpbiBvZmYtY2FudmFzLXdyYXBwZXIoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBhbiBvZmYtY2FudmFzIHBhbmVsLlxuQG1peGluIG9mZi1jYW52YXMtYmFzZShcbiAgJGJhY2tncm91bmQ6ICRvZmZjYW52YXMtYmFja2dyb3VuZCxcbiAgJHRyYW5zaXRpb246ICRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGggJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZyxcbiAgJGZpeGVkOiB0cnVlXG4pIHtcbiAgLy8gU2V0IHRoZSBvZmYtY2FudmFzIHotaW5kZXguXG4gIHotaW5kZXg6ICRvZmZjYW52YXMtcHVzaC16aW5kZXg7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcblxuICBAaWYgJGZpeGVkID09IHRydWUge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgfVxuICBAZWxzZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG5cbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuXG4gIC8vIEluY3JlYXNlIENTUyBzcGVjaWZpY2l0eVxuICAmLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgei1pbmRleDogJG9mZmNhbnZhcy1wdXNoLXppbmRleDtcbiAgfVxuXG4gIC8vIEhpZGUgaW5hY3RpdmUgb2ZmLWNhbnZhcyB3aXRoaW4gdGhlIGNvbnRlbnQgdGhhdCBoYXZlIHRoZSBzYW1lIHBvc2l0aW9uXG4gICYuaXMtY2xvc2VkIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAvLyBPdmVybGFwIG9ubHkgc3R5bGVzLlxuICAmLmlzLXRyYW5zaXRpb24tb3ZlcmxhcCB7XG4gICAgei1pbmRleDogJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDtcblxuICAgICYuaXMtb3BlbiB7XG4gICAgICBib3gtc2hhZG93OiAkb2ZmY2FudmFzLXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAvLyBTZXRzIHRyYW5zZm9ybSB0byAwIHRvIHNob3cgYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbiAgJi5pcy1vcGVuIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgdG8gcG9zaXRpb24gYW4gb2ZmLWNhbnZhcyBwYW5lbCB0byB0aGUgbGVmdC9yaWdodC90b3AvYm90dG9tLlxuQG1peGluIG9mZi1jYW52YXMtcG9zaXRpb24oXG4gICRwb3NpdGlvbjogbGVmdCxcbiAgJG9yaWVudGF0aW9uOiBob3Jpem9udGFsLFxuICAkc2l6ZXM6IGlmKCRvcmllbnRhdGlvbiA9PSBob3Jpem9udGFsLCAkb2ZmY2FudmFzLXNpemVzLCAkb2ZmY2FudmFzLXZlcnRpY2FsLXNpemVzKVxuKSB7XG4gIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIHdpZHRoOiAkc2l6ZTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0kc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgcG9zaXRpb24gZm9yIG5lc3RlZCBvZmYtY2FudmFzIGVsZW1lbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9IC5vZmYtY2FudmFzLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0kc2l6ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBvcGVuIHBvc2l0aW9uIGZvciB0aGUgY29udGVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30uaXMtb3Blbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgJi5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCRzaXplKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIHdpZHRoOiAkc2l6ZTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCRzaXplKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBwb3NpdGlvbiBmb3IgbmVzdGVkIG9mZi1jYW52YXMgZWxlbWVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30gLm9mZi1jYW52YXMucG9zaXRpb24tI3skcG9zaXRpb259IHtcblxuICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJHNpemUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgb3BlbiBwb3NpdGlvbiBmb3IgdGhlIGNvbnRlbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9LmlzLW9wZW4tI3skcG9zaXRpb259IHtcbiAgICAgICYuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtJHNpemUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gdG9wIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICBoZWlnaHQ6ICRzaXplO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLSRzaXplKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBwb3NpdGlvbiBmb3IgbmVzdGVkIG9mZi1jYW52YXMgZWxlbWVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30gLm9mZi1jYW52YXMucG9zaXRpb24tI3skcG9zaXRpb259IHtcbiAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0kc2l6ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBvcGVuIHBvc2l0aW9uIGZvciB0aGUgY29udGVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30uaXMtb3Blbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgJi5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCRzaXplKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IGJvdHRvbSB7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cbiAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgaGVpZ2h0OiAkc2l6ZTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCRzaXplKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBwb3NpdGlvbiBmb3IgbmVzdGVkIG9mZi1jYW52YXMgZWxlbWVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30gLm9mZi1jYW52YXMucG9zaXRpb24tI3skcG9zaXRpb259IHtcbiAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCRzaXplKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIG9wZW4gcG9zaXRpb24gZm9yIHRoZSBjb250ZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfS5pcy1vcGVuLSN7JHBvc2l0aW9ufSB7XG4gICAgICAmLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgICAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLSRzaXplKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBJZiAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplIGlzIHNldCwgYWRkIGlubmVyIGJveC1zaGFkb3cuXG4gIC8vIFRoaXMgbWltaWNzIHRoZSBvZmYtY2FudmFzIHBhbmVsIGhhdmluZyBhIGxvd2VyIHotaW5kZXgsIHdpdGhvdXQgaGF2aW5nIHRvIGhhdmUgb25lLlxuICBAaWYgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZSB7XG4gICAgJi5pcy10cmFuc2l0aW9uLXB1c2gge1xuICAgICAgQGlmICRwb3NpdGlvbiA9PSBsZWZ0IHtcbiAgICAgICAgQGluY2x1ZGUgaW5uZXItc2lkZS1zaGFkb3cocmlnaHQsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemUsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICRwb3NpdGlvbiA9PSByaWdodCB7XG4gICAgICAgIEBpbmNsdWRlIGlubmVyLXNpZGUtc2hhZG93KGxlZnQsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemUsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICRwb3NpdGlvbiA9PSB0b3Age1xuICAgICAgICBAaW5jbHVkZSBpbm5lci1zaWRlLXNoYWRvdyhib3R0b20sICRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemUsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICRwb3NpdGlvbiA9PSBib3R0b20ge1xuICAgICAgICBAaW5jbHVkZSBpbm5lci1zaWRlLXNoYWRvdyh0b3AsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemUsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuXG4vLy8gU2V0cyB0aGUgc3R5bGVzIGZvciB0aGUgY29udGVudCBjb250YWluZXIuXG5AbWl4aW4gb2ZmLWNhbnZhcy1jb250ZW50KCkge1xuICB0cmFuc2Zvcm06IG5vbmU7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblxuICAvLyBCaW5kIHRvIGhhcy10cmFuc2l0aW9uLVggY2xhc3MgdG8gcHJldmVudCB0cmFuc2l0aW9uIGZvciB0cmFuc2Zvcm06bm9uZVxuICAmLmhhcy10cmFuc2l0aW9uLW92ZXJsYXAsXG4gICYuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGggJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZztcbiAgfVxuXG4gIC8vIFRyYW5zZm9ybSBzY29wZSB1bnRpbCB0aGUgZWxlbWVudCBpcyBjbG9zZWQgKG1ha2VzIHN1cmUgdHJhbnNpdGlvbmVuZCBnZXRzIHRyaWdnZXJlZClcbiAgJi5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgfVxuXG4gIC8vIENvbnNpZGVyIGVsZW1lbnQgJiBjb250ZW50LCBuZXN0ZWQgaW4gYW5vdGhlciBjb250ZW50XG4gIC5vZmYtY2FudmFzLmlzLW9wZW4ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyB0aGF0IHJldmVhbCBhbiBvZmYtY2FudmFzIHBhbmVsLlxuQG1peGluIG9mZi1jYW52YXMtcmV2ZWFsKFxuICAkcG9zaXRpb246IGxlZnQsXG4gICR6aW5kZXg6ICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleCxcbiAgJGNvbnRlbnQ6ICRtYWluY29udGVudC1jbGFzcyxcbiAgJGJyZWFrcG9pbnQ6IHNtYWxsXG4pIHtcbiAgdHJhbnNmb3JtOiBub25lO1xuICB6LWluZGV4OiAkemluZGV4O1xuICB0cmFuc2l0aW9uOiBub25lO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXG4gIEBpZiBub3QgJG9mZmNhbnZhcy1maXhlZC1yZXZlYWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuXG4gIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBDb25zaWRlciByZXZlYWxlZCBlbGVtZW50IGlzIG5lc3RlZCBpbiBjb250ZW50XG4gIC4jeyRtYWluY29udGVudC1jbGFzc30gJiB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgQGF0LXJvb3QgLiN7JGNvbnRlbnR9Lmhhcy1yZXZlYWwtI3skcG9zaXRpb259IHtcbiAgICBtYXJnaW4tI3skcG9zaXRpb259OiAtemYtZ2V0LWJwLXZhbCgkb2ZmY2FudmFzLXNpemVzLCAkYnJlYWtwb2ludCk7XG4gIH1cblxuICAvLyBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSAocHJpb3IgdG8gdjYuNClcbiAgJiB+IC4jeyRjb250ZW50fSB7XG4gICAgbWFyZ2luLSN7JHBvc2l0aW9ufTogLXpmLWdldC1icC12YWwoJG9mZmNhbnZhcy1zaXplcywgJGJyZWFrcG9pbnQpO1xuICB9XG59XG5cbi8vLyBPdmVycmlkZXMgdGhlIG9mZi1jYW52YXMgc3R5bGVzXG5AbWl4aW4gaW4tY2FudmFzKCkge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBoZWlnaHQ6IGF1dG87XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHdpZHRoOiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgdHJhbnNpdGlvbjogbm9uZTtcblxuICAvLyBJbmNyZWFzZSBDU1Mgc3BlY2lmaWNpdHlcbiAgJi5wb3NpdGlvbi1sZWZ0LFxuICAmLnBvc2l0aW9uLXJpZ2h0LFxuICAmLnBvc2l0aW9uLXRvcCxcbiAgJi5wb3NpdGlvbi1ib3R0b20ge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1vZmYtY2FudmFzIHtcbiAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1iYXNpY3M7XG5cbiAgLy8gT2ZmLWNhbnZhcyB3cmFwcGVyXG4gIC5vZmYtY2FudmFzLXdyYXBwZXIge1xuICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtd3JhcHBlcjtcbiAgfVxuXG4gIC8vIE9mZi1jYW52YXMgY29udGFpbmVyXG4gIC5vZmYtY2FudmFzIHtcbiAgICBAaW5jbHVkZSBvZmYtY2FudmFzLWJhc2U7XG5cbiAgICAvLyBGb3JjZSBwb3NpdGlvbiBhYnNvbHV0ZSBmb3IgbmVzdGVkIG9mZi1jYW52YXMgYmVjYXVzZSBmaXhlZCBkb2Vzbid0IHdvcmsgZm9yIHB1c2ggdHJhbnNpdGlvbiB3aXRoaW4gdGhlIHRyYW5zZm9ybSBzY29wZS5cbiAgICAvLyBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9ICYge1xuICAgIC8vICAgLy8gTk9URTogc2luY2Ugb3ZlcmxhcCB0cmFuc2l0aW9uIGlzIGN1cnJlbnRseSBmb3JjZWQgaWYgbmVzdGVkLCB0aGVyZSdzIG5vIG5lZWQgdG8gZm9yY2UgcG9zaXRpb24gYWJzb2x1dGUgdW50aWwgbmVzdGVkIHB1c2ggdHJhbnNpdGlvbiBpcyBzdXBwb3J0ZWQuXG4gICAgLy8gICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgLy8gfVxuICB9XG5cbiAgLy8gT2ZmLWNhbnZhcyBjb250YWluZXIgd2l0aCBhYnNvbHV0ZSBwb3NpdGlvblxuICAub2ZmLWNhbnZhcy1hYnNvbHV0ZSB7XG4gICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1iYXNlKCRmaXhlZDogZmFsc2UpO1xuICB9XG5cbiAgLy8gT2ZmLWNhbnZhcyBwb3NpdGlvbiBjbGFzc2VzXG4gIC5wb3NpdGlvbi1sZWZ0ICAgIHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1wb3NpdGlvbihsZWZ0LCAgIGhvcml6b250YWwpOyB9XG4gIC5wb3NpdGlvbi1yaWdodCAgIHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1wb3NpdGlvbihyaWdodCwgIGhvcml6b250YWwpOyB9XG4gIC5wb3NpdGlvbi10b3AgICAgIHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1wb3NpdGlvbih0b3AsICAgIHZlcnRpY2FsKTsgfVxuICAucG9zaXRpb24tYm90dG9tICB7IEBpbmNsdWRlIG9mZi1jYW52YXMtcG9zaXRpb24oYm90dG9tLCB2ZXJ0aWNhbCk7IH1cblxuICAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBvZmYtY2FudmFzLWNvbnRlbnQ7XG4gIH1cblxuICAvLyBSZXZlYWwgb2ZmLWNhbnZhcyBwYW5lbCBvbiBsYXJnZXIgc2NyZWVuc1xuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpZiAkbmFtZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtcmV2ZWFsKGxlZnQsICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleCwgJG1haW5jb250ZW50LWNsYXNzLCAkbmFtZSk7XG4gICAgICAgIH1cblxuICAgICAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1yZXZlYWwocmlnaHQsICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleCwgJG1haW5jb250ZW50LWNsYXNzLCAkbmFtZSk7XG4gICAgICAgIH1cblxuICAgICAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtcmV2ZWFsKHRvcCwgJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4LCAkbWFpbmNvbnRlbnQtY2xhc3MsICRuYW1lKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1yZXZlYWwoYm90dG9tLCAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXgsICRtYWluY29udGVudC1jbGFzcywgJG5hbWUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gTW92ZSBpbi1jYW52YXMgZm9yIGxhcmdlciBzY3JlZW5zXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGlmICRuYW1lICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgaW4tY2FudmFzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiIsIiRkYXJrLW5hdi1jb2xvcjogIzJDMzg0MDtcbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBvcmJpdFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYWN0aXZlIGNvbG9yIGZvciBPcmJpdCdzIGJ1bGxldHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZC1hY3RpdmU6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGRpYW1ldGVyIGZvciBPcmJpdCdzIGJ1bGxldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtYnVsbGV0LWRpYW1ldGVyOiAxLjJyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBiZXR3ZWVuIE9yYml0J3MgYnVsbGV0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1idWxsZXQtbWFyZ2luOiAwLjFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGRpc3RhbmNlIGZyb20gc2xpZGUgcmVnaW9uIGZvciBPcmJpdCdzIGJ1bGxldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtYnVsbGV0LW1hcmdpbi10b3A6IDAuOHJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmcm9tIE9yYml0J3MgYnVsbGV0cyB0byB3aGF0ZXZlciBjb250ZW50IG1heSBsdXJrIGJlbG93IGl0LlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWJ1bGxldC1tYXJnaW4tYm90dG9tOiAwLjhyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIE9yYml0J3MgY2FwdGlvbi5cbi8vLyBAdHlwZSBDb2xvclxuJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIE9yYml0J3MgY2FwdGlvbi5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1jYXB0aW9uLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIE9yYml0J3MgY29udHJvbHMgd2hlbiBob3ZlcmVkLlxuLy8vIEB0eXBlIENvbG9yXG4kb3JiaXQtY29udHJvbC1iYWNrZ3JvdW5kLWhvdmVyOiByZ2JhKCRibGFjaywgMC41KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgT3JiaXQncyBjb250cm9scy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1jb250cm9sLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHotaW5kZXggZm9yIE9yYml0J3MgY29udHJvbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtY29udHJvbC16aW5kZXg6IDEwICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBvdXRlciBPcmJpdCB3cmFwcGVyLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXRgIGNsYXNzLlxuQG1peGluIG9yYml0LXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGlubmVyIE9yYml0IHNsaWRlIGNvbnRhaW5lci4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LWNvbnRhaW5lcmAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7IC8vIFByZXZlbnQgRk9VQyBieSBub3Qgc2hvd2luZyB1bnRpbCBKUyBzZXRzIGhlaWdodFxuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGluZGl2aWR1YWwgc2xpZGVzIG9mIGFuIE9yYml0IHNsaWRlci4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LXNsaWRlYCBjbGFzcy5cbkBtaXhpbiBvcmJpdC1zbGlkZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgJi5uby1tb3Rpb251aSB7XG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG9yYml0LWZpZ3VyZSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHNsaWRlIGNvbnRhaW5pbmcgYW4gaW1hZ2UuIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1pbWFnZWAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtaW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gb3JiaXQgc2xpZGUgY2FwdGlvbi4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LWNhcHRpb25gIGNsYXNzLlxuQG1peGluIG9yYml0LWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6ICRvcmJpdC1jYXB0aW9uLXBhZGRpbmc7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZDtcbiAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZCk7XG59XG5cbi8vLyBBZGRzIGJhc2Ugc3R5bGVzIGZvciB0aGUgbmV4dC9wcmV2aW91cyBidXR0b25zIGluIGFuIE9yYml0IHNsaWRlci4gVGhlc2Ugc3R5bGVzIGFyZSBzaGFyZWQgYmV0d2VlbiB0aGUgYC5vcmJpdC1uZXh0YCBhbmQgYC5vcmJpdC1wcmV2aW91c2AgY2xhc3NlcyBpbiB0aGUgZGVmYXVsdCBDU1MuXG5AbWl4aW4gb3JiaXQtY29udHJvbCB7XG4gIHotaW5kZXg6ICRvcmJpdC1jb250cm9sLXppbmRleDtcbiAgcGFkZGluZzogJG9yYml0LWNvbnRyb2wtcGFkZGluZztcbiAgY29sb3I6ICR3aGl0ZTtcbiAgQGluY2x1ZGUgdmVydGljYWwtY2VudGVyO1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmJpdC1jb250cm9sLWJhY2tncm91bmQtaG92ZXI7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgT3JiaXQgcHJldmlvdXMgYnV0dG9uLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtcHJldmlvdXNgIGNsYXNzLlxuQG1peGluIG9yYml0LXByZXZpb3VzIHtcbiAgI3skZ2xvYmFsLWxlZnR9OiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBPcmJpdCBuZXh0IGJ1dHRvbi4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LW5leHRgIGNsYXNzLlxuQG1peGluIG9yYml0LW5leHQge1xuICAjeyRnbG9iYWwtbGVmdH06IGF1dG87XG4gICN7JGdsb2JhbC1yaWdodH06IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjb250YWluZXIgb2YgT3JiaXQgYnVsbGV0cy4gLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgT3JiaXQgcHJldmlvdXMgYnV0dG9uLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtYnVsbGV0c2AgY2xhc3MuXG5AbWl4aW4gb3JiaXQtYnVsbGV0cyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogJG9yYml0LWJ1bGxldC1tYXJnaW4tdG9wO1xuICBtYXJnaW4tYm90dG9tOiAkb3JiaXQtYnVsbGV0LW1hcmdpbi1ib3R0b207XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuXG4gIGJ1dHRvbiB7XG4gICAgd2lkdGg6ICRvcmJpdC1idWxsZXQtZGlhbWV0ZXI7XG4gICAgaGVpZ2h0OiAkb3JiaXQtYnVsbGV0LWRpYW1ldGVyO1xuICAgIG1hcmdpbjogJG9yYml0LWJ1bGxldC1tYXJnaW47XG5cbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlO1xuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmJpdC1idWxsZXQtYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW9yYml0IHtcbiAgLm9yYml0IHtcbiAgICBAaW5jbHVkZSBvcmJpdC13cmFwcGVyO1xuICB9XG5cbiAgLm9yYml0LWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgb3JiaXQtY29udGFpbmVyO1xuICB9XG5cbiAgLm9yYml0LXNsaWRlIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1zbGlkZTtcbiAgfVxuXG4gIC5vcmJpdC1maWd1cmUge1xuICAgIEBpbmNsdWRlIG9yYml0LWZpZ3VyZTtcbiAgfVxuXG4gIC5vcmJpdC1pbWFnZSB7XG4gICAgQGluY2x1ZGUgb3JiaXQtaW1hZ2U7XG4gIH1cblxuICAub3JiaXQtY2FwdGlvbiB7XG4gICAgQGluY2x1ZGUgb3JiaXQtY2FwdGlvbjtcbiAgfVxuXG4gICVvcmJpdC1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1jb250cm9sO1xuICB9XG5cbiAgLm9yYml0LXByZXZpb3VzIHtcbiAgICBAZXh0ZW5kICVvcmJpdC1jb250cm9sO1xuICAgIEBpbmNsdWRlIG9yYml0LXByZXZpb3VzO1xuICB9XG5cbiAgLm9yYml0LW5leHQge1xuICAgIEBleHRlbmQgJW9yYml0LWNvbnRyb2w7XG4gICAgQGluY2x1ZGUgb3JiaXQtbmV4dDtcbiAgfVxuXG4gIC5vcmJpdC1idWxsZXRzIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1idWxsZXRzO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcGFnaW5hdGlvblxuLy8vL1xuXG4vLy8gRm9udCBzaXplIG9mIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBvZiB0aGUgcGFnaW5hdGlvbiBvYmplY3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgb2YgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZzogcmVtLWNhbGMoMyAxMCkgIWRlZmF1bHQ7XG5cbi8vLyBSaWdodCBtYXJnaW4gdG8gc2VwYXJhdGUgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLWl0ZW0tc3BhY2luZzogcmVtLWNhbGMoMSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3IgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHBhZ2luYXRpb24gaXRlbXMgb24gaG92ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHBhZ2luYXRpb24gaXRlbSBmb3IgdGhlIGN1cnJlbnQgcGFnZS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiB0aGUgcGFnaW5hdGlvbiBpdGVtIGZvciB0aGUgY3VycmVudCBwYWdlLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWN1cnJlbnQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgYSBkaXNhYmxlZCBwYWdpbmF0aW9uIGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBlbGxpcHNpcyBpbiBhIHBhZ2luYXRpb24gbWVudS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24tZWxsaXBzaXMtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIElmIGBmYWxzZWAsIGRvbid0IGRpc3BsYXkgcGFnZSBudW1iZXIgbGlua3Mgb24gbW9iaWxlLCBvbmx5IG5leHQvcHJldmlvdXMgbGlua3Ncbi8vLyBhbmQgb3B0aW9uYWxseSBjdXJyZW50IHBhZ2UgbnVtYmVyLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGRpc3BsYXkgdGhlIGN1cnJlbnQgcGFnZSBudW1iZXIgb24gbW9iaWxlIGV2ZW4gaWYgYCRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtc2AgaXMgc2V0IHRvIGBmYWxzZWAuXG4vLy8gVGhpcyBwYXJhbWV0ZXIgd2lsbCBvbmx5IG92ZXJyaWRlIHRoZSB2aXNpYmlsaXR5IHNldHRpbmcgb2YgdGhlIGN1cnJlbnQgaXRlbSBmb3IgYCRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtczogZmFsc2U7YCxcbi8vLyBpdCB3aWxsIG5vdCBhZmZlY3QgdGhlIGN1cnJlbnQgcGFnZSBudW1iZXIgdmlzaWJpbGl0eSB3aGVuIGAkcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXNgIGlzIHNldCB0byBgdHJ1ZWAuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHBhZ2luYXRpb24tbW9iaWxlLWN1cnJlbnQtaXRlbTogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGFycm93cyBhcmUgYWRkZWQgdG8gdGhlIG5leHQgYW5kIHByZXZpb3VzIGxpbmtzIG9mIHBhZ2luYXRpb24uXG4vLy8gQHR5cGUgQm9vbGVhblxuJHBhZ2luYXRpb24tYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQ29udGVudCBmb3IgdGhlIHByZXZpb3VzIGFycm93IHdoZW4gYCRwYWdpbmF0aW9uLWFycm93c2AgaXMgYHRydWVgXG4vLy8gQHR5cGUgU3RyaW5nXG4kcGFnaW5hdGlvbi1hcnJvdy1wcmV2aW91czogJ1xcMDBBQicgIWRlZmF1bHQ7XG5cbi8vLyBDb250ZW50IGZvciB0aGUgbmV4dCBhcnJvdyB3aGVuIGAkcGFnaW5hdGlvbi1hcnJvd3NgIGlzIGB0cnVlYFxuLy8vIEB0eXBlIFN0cmluZ1xuJHBhZ2luYXRpb24tYXJyb3ctbmV4dDogJ1xcMDBCQicgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBwYWdpbmF0aW9uIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byBhIGA8dWw+YC5cbkBtaXhpbiBwYWdpbmF0aW9uLWNvbnRhaW5lciAoXG4gICRtYXJnaW4tYm90dG9tOiAkcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tLFxuICAkZm9udC1zaXplOiAkcGFnaW5hdGlvbi1mb250LXNpemUsXG4gICRzcGFjaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmcsXG4gICRyYWRpdXM6ICRwYWdpbmF0aW9uLXJhZGl1cyxcbiAgJGNvbG9yOiAkcGFnaW5hdGlvbi1pdGVtLWNvbG9yLFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyXG4pIHtcbiAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbi1ib3R0b207XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gIC8vIExpc3QgaXRlbVxuICBsaSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuXG4gICAgQGlmICRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtcyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICY6bGFzdC1jaGlsZCxcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtIHtcbiAgICAgICAgJi5jdXJyZW50IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFBhZ2UgbGlua3NcbiAgYSxcbiAgYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBjdXJyZW50IHBhZ2luYXRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byBhbiBgPGE+YC5cbkBtaXhpbiBwYWdpbmF0aW9uLWl0ZW0tY3VycmVudCAoXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRiYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50LFxuICAkY29sb3ItY3VycmVudDogJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50XG4pIHtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWN1cnJlbnQ7XG4gIGNvbG9yOiAkY29sb3ItY3VycmVudDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgZGlzYWJsZWQgcGFnaW5hdGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIGFuIGA8YT5gLlxuQG1peGluIHBhZ2luYXRpb24taXRlbS1kaXNhYmxlZCAoXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRjb2xvcjogJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZFxuKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBjb2xvcjogJGNvbG9yO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gZWxsaXBzaXMgZm9yIHVzZSBpbiBhIHBhZ2luYXRpb24gbGlzdC5cbkBtaXhpbiBwYWdpbmF0aW9uLWVsbGlwc2lzIChcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGNvbG9yOiAkcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvclxuKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBjb250ZW50OiAnXFwyMDI2JztcbiAgY29sb3I6ICRjb2xvcjtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tcGFnaW5hdGlvbiB7XG4gIC5wYWdpbmF0aW9uIHtcbiAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWNvbnRhaW5lcjtcblxuICAgIC5jdXJyZW50IHtcbiAgICAgIEBpbmNsdWRlIHBhZ2luYXRpb24taXRlbS1jdXJyZW50O1xuICAgIH1cblxuICAgIC5kaXNhYmxlZCB7XG4gICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWl0ZW0tZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgLmVsbGlwc2lzOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWVsbGlwc2lzO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkcGFnaW5hdGlvbi1hcnJvd3Mge1xuICAgIC5wYWdpbmF0aW9uLXByZXZpb3VzIGE6OmJlZm9yZSxcbiAgICAucGFnaW5hdGlvbi1wcmV2aW91cy5kaXNhYmxlZDo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwLjVyZW07XG4gICAgICBjb250ZW50OiAkcGFnaW5hdGlvbi1hcnJvdy1wcmV2aW91cztcbiAgICB9XG5cbiAgICAucGFnaW5hdGlvbi1uZXh0IGE6OmFmdGVyLFxuICAgIC5wYWdpbmF0aW9uLW5leHQuZGlzYWJsZWQ6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDAuNXJlbTtcbiAgICAgIGNvbnRlbnQ6ICRwYWdpbmF0aW9uLWFycm93LW5leHQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBwcm9ncmVzcyBiYXIgY29udGFpbmVyLlxuQG1peGluIHByb2dyZXNzLWNvbnRhaW5lciB7XG4gIGhlaWdodDogJHByb2dyZXNzLWhlaWdodDtcbiAgbWFyZ2luLWJvdHRvbTogJHByb2dyZXNzLW1hcmdpbi1ib3R0b207XG4gIGJvcmRlci1yYWRpdXM6ICRwcm9ncmVzcy1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iYWNrZ3JvdW5kO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBpbm5lciBtZXRlciBvZiBhIHByb2dyZXNzIGJhci5cbkBtaXhpbiBwcm9ncmVzcy1tZXRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtbWV0ZXItYmFja2dyb3VuZDtcblxuICBAaWYgaGFzLXZhbHVlKCRwcm9ncmVzcy1yYWRpdXMpIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRleHQgaW4gdGhlIHByb2dyZXNzIG1ldGVyLlxuQG1peGluIHByb2dyZXNzLW1ldGVyLXRleHQge1xuICBAaW5jbHVkZSBhYnNvbHV0ZS1jZW50ZXI7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICBAaWYgaGFzLXZhbHVlKCRwcm9ncmVzcy1yYWRpdXMpIHtcbiAgICBib3JkZXItcmFkaXVzOiAkcHJvZ3Jlc3MtcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXByb2dyZXNzLWJhciB7XG4gIC8vIFByb2dyZXNzIGJhclxuICAucHJvZ3Jlc3Mge1xuICAgIEBpbmNsdWRlIHByb2dyZXNzLWNvbnRhaW5lcjtcblxuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSB7XG4gICAgICAmLiN7XCJcIiArICRuYW1lfSB7XG4gICAgICAgIC5wcm9ncmVzcy1tZXRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gSW5uZXIgbWV0ZXJcbiAgLnByb2dyZXNzLW1ldGVyIHtcbiAgICBAaW5jbHVkZSBwcm9ncmVzcy1tZXRlcjtcbiAgfVxuXG4gIC8vIElubmVyIG1ldGVyIHRleHRcbiAgLnByb2dyZXNzLW1ldGVyLXRleHQge1xuICAgIEBpbmNsdWRlIHByb2dyZXNzLW1ldGVyLXRleHQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gW1RPRE9dIENoZWNrIGhvdyBwbHVnaW4gY29uZmlybXMgZGlzYWJsZWQgb3IgdmVydGljYWwgc3RhdHVzXG4vLyBbVE9ET10gQ2hlY2sgaWYgdHJhbnNpdGlvbjogYWxsOyBpcyBuZWNlc3NhcnlcblxuLy8vL1xuLy8vIEBncm91cCBzbGlkZXJcbi8vLy9cblxuLy8vIERlZmF1bHQgc2xpZGVyIHdpZHRoIG9mIGEgdmVydGljYWwgc2xpZGVyLiAoRG9lc24ndCBhcHBseSB0byB0aGUgbmF0aXZlIHNsaWRlci4pXG4vLy8gQHR5cGUgTnVtYmVyXG4kc2xpZGVyLXdpZHRoLXZlcnRpY2FsOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUcmFuc2l0aW9uIHByb3BlcnRpZXMgdG8gYXBwbHkgdG8gdGhlIHNsaWRlciBoYW5kbGUgYW5kIGZpbGwuIChEb2Vzbid0IGFwcGx5IHRvIHRoZSBuYXRpdmUgc2xpZGVyLilcbi8vLyBAdHlwZSBUcmFuc2l0aW9uXG4kc2xpZGVyLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIHNsaWRlcnMuXG5AbWl4aW4gc2xpZGVyLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAkc2xpZGVyLWhlaWdodDtcbiAgbWFyZ2luLXRvcDogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMi4yNXJlbTtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWJhY2tncm91bmQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHRvdWNoLWFjdGlvbjogbm9uZTtcbn1cblxuLy8vIEFkZHMgdGhlIGdlbmVyYWwgc3R5bGVzIGZvciBhY3RpdmUgZmlsbCBmb3Igc2xpZGVycy5cbkBtaXhpbiBzbGlkZXItZmlsbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRzbGlkZXItaGVpZ2h0O1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRzbGlkZXItZmlsbC1iYWNrZ3JvdW5kO1xuICB0cmFuc2l0aW9uOiAkc2xpZGVyLXRyYW5zaXRpb247XG5cbiAgJi5pcy1kcmFnZ2luZyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDBzIGxpbmVhcjtcbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIHRoZSBzbGlkZXIgaGFuZGxlcy5cbkBtaXhpbiBzbGlkZXItaGFuZGxlIHtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTtcbiAgY3Vyc29yOiBncmFiO1xuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRzbGlkZXItaGFuZGxlLXdpZHRoO1xuICBoZWlnaHQ6ICRzbGlkZXItaGFuZGxlLWhlaWdodDtcblxuICBib3JkZXItcmFkaXVzOiAkc2xpZGVyLXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNsaWRlci1oYW5kbGUtYmFja2dyb3VuZDtcbiAgdHJhbnNpdGlvbjogJHNsaWRlci10cmFuc2l0aW9uO1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcblxuICBAaW5jbHVkZSB2ZXJ0aWNhbC1jZW50ZXI7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBzY2FsZS1jb2xvcigkc2xpZGVyLWhhbmRsZS1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMTUlKTtcbiAgfVxuXG4gICYuaXMtZHJhZ2dpbmcge1xuICAgIHRyYW5zaXRpb246IGFsbCAwcyBsaW5lYXI7XG4gICAgY3Vyc29yOiBncmFiYmluZztcbiAgfVxufVxuXG5AbWl4aW4gc2xpZGVyLWRpc2FibGVkIHtcbiAgb3BhY2l0eTogJHNsaWRlci1vcGFjaXR5LWRpc2FibGVkO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG5AbWl4aW4gc2xpZGVyLXZlcnRpY2FsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNsaWRlci13aWR0aC12ZXJ0aWNhbDtcbiAgaGVpZ2h0OiAxMi41cmVtO1xuICBtYXJnaW46IDAgMS4yNXJlbTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLCAtMSk7XG5cbiAgLnNsaWRlci1maWxsIHtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6ICRzbGlkZXItd2lkdGgtdmVydGljYWw7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgfVxuXG4gIC5zbGlkZXItaGFuZGxlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB3aWR0aDogJHNsaWRlci1oYW5kbGUtaGVpZ2h0O1xuICAgIGhlaWdodDogJHNsaWRlci1oYW5kbGUtd2lkdGg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXNsaWRlciB7XG4gIC8vIENvbnRhaW5lclxuICAuc2xpZGVyIHtcbiAgICBAaW5jbHVkZSBzbGlkZXItY29udGFpbmVyO1xuICB9XG5cbiAgLy8gRmlsbCBhcmVhXG4gIC5zbGlkZXItZmlsbCB7XG4gICAgQGluY2x1ZGUgc2xpZGVyLWZpbGw7XG4gIH1cblxuICAvLyBEcmFnZ2FibGUgaGFuZGxlXG4gIC5zbGlkZXItaGFuZGxlIHtcbiAgICBAaW5jbHVkZSBzbGlkZXItaGFuZGxlO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgLnNsaWRlci5kaXNhYmxlZCxcbiAgLnNsaWRlcltkaXNhYmxlZF0ge1xuICAgIEBpbmNsdWRlIHNsaWRlci1kaXNhYmxlZDtcbiAgfVxuXG4gIC8vIFZlcnRpY2FsIHNsaWRlclxuICAuc2xpZGVyLnZlcnRpY2FsIHtcbiAgICBAaW5jbHVkZSBzbGlkZXItdmVydGljYWw7XG4gIH1cblxuICAvLyBSVEwgc3VwcG9ydFxuICBAaWYgJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwge1xuICAgIC5zbGlkZXI6bm90KC52ZXJ0aWNhbCkge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgtMSwgMSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXN0aWNreSB7XG4gIC5zdGlja3ktY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAuc3RpY2t5IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG5cbiAgLnN0aWNreS5pcy1zdHVjayB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHotaW5kZXg6IDU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAmLmlzLWF0LXRvcCB7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuXG4gICAgJi5pcy1hdC1ib3R0b20ge1xuICAgICAgYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5zdGlja3kuaXMtYW5jaG9yZWQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuXG4gICAgJi5pcy1hdC1ib3R0b20ge1xuICAgICAgYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHN3aXRjaFxuLy8vL1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhIHN3aXRjaC5cbi8vLyBAdHlwZSBDb2xvclxuJHN3aXRjaC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGEgc3dpdGNoIG9uIGZvY3VzLlxuLy8vIEB0eXBlIENvbG9yXG4kc3dpdGNoLWJhY2tncm91bmQtZm9jdXM6IHNjYWxlLWNvbG9yKCRzd2l0Y2gtYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTEwJSkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGFjdGl2ZSBjb2xvciBvZiBhIHN3aXRjaC5cbi8vLyBAdHlwZSBDb2xvclxuJHN3aXRjaC1iYWNrZ3JvdW5kLWFjdGl2ZTogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGFjdGl2ZSBjb2xvciBvZiBhIHN3aXRjaCBvbiBmb2N1cy5cbi8vLyBAdHlwZSBDb2xvclxuJHN3aXRjaC1iYWNrZ3JvdW5kLWFjdGl2ZS1mb2N1czogc2NhbGUtY29sb3IoJHN3aXRjaC1iYWNrZ3JvdW5kLWFjdGl2ZSwgJGxpZ2h0bmVzczogLTE1JSkgIWRlZmF1bHQ7XG5cbi8vLyBIZWlnaHQgb2YgYSBzd2l0Y2gsIHdpdGggbm8gY2xhc3MgYXBwbGllZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtaGVpZ2h0OiAycmVtICFkZWZhdWx0O1xuXG4vLy8gSGVpZ2h0IG9mIGEgc3dpdGNoIHdpdGggLnRpbnkgY2xhc3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLWhlaWdodC10aW55OiAxLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBIZWlnaHQgb2YgYSBzd2l0Y2ggd2l0aCAuc21hbGwgY2xhc3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLWhlaWdodC1zbWFsbDogMS43NXJlbSAhZGVmYXVsdDtcblxuLy8vIEhlaWdodCBvZiBhIHN3aXRjaCB3aXRoIC5sYXJnZSBjbGFzcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtaGVpZ2h0LWxhcmdlOiAyLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIG9mIHRoZSBzd2l0Y2hcbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIGJvcmRlciBhcm91bmQgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHRoZSBzd2l0Y2ggY29udGFpbmVyIGFuZCBwYWRkbGUuXG4vLy8gQHR5cGUgQ29sb3JcbiRzd2l0Y2gtcGFkZGxlLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBhIHN3aXRjaCBwYWRkbGUgYW5kIHRoZSBlZGdlIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1wYWRkbGUtb2Zmc2V0OiAwLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gYm9yZGVyIHJhZGl1cyBvZiB0aGUgc3dpdGNoIHBhZGRsZVxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1wYWRkbGUtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIHN3aXRjaCB0cmFuc2l0aW9uLlxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2Utb3V0ICFkZWZhdWx0O1xuXG4vLy8gT3BhY2l0eSBvZiBhIGRpc2FibGVkIHN3aXRjaC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtb3BhY2l0eS1kaXNhYmxlZDogMC41ICFkZWZhdWx0O1xuXG4vLy8gQ3Vyc29yIGZvciBhIGRpc2FibGVkIHN3aXRjaC5cbi8vLyBAdHlwZSBDdXJzb3JcbiRzd2l0Y2gtY3Vyc29yLWRpc2FibGVkOiBub3QtYWxsb3dlZCAhZGVmYXVsdDtcblxuLy8gbWFrZSB0aGVtIHZhcmlhYmxlc1xuLy8gYXNrIGFib3V0IGFjY2Vzc2liaWxpdHkgb24gbGFiZWxcbi8vIGNoYW5nZSBjbGFzcyBuYW1lIGZvciB0ZXh0XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBzd2l0Y2ggY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIGEgY29udGFpbmVyIGNsYXNzLlxuQG1peGluIHN3aXRjaC1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206ICRzd2l0Y2gtbWFyZ2luO1xuICBvdXRsaW5lOiAwO1xuXG4gIC8vIFRoZXNlIHByb3BlcnRpZXMgY2FzY2FkZSBkb3duIHRvIHRoZSBzd2l0Y2ggdGV4dFxuICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAkd2hpdGU7XG5cbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBzd2l0Y2ggaW5wdXQuIEFwcGx5IHRoaXMgdG8gYW4gYDxpbnB1dD5gIHdpdGhpbiBhIHN3aXRjaC5cbkBtaXhpbiBzd2l0Y2gtaW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGJhY2tncm91bmQgYW5kIHBhZGRsZSBvZiBhIHN3aXRjaC4gQXBwbHkgdGhpcyB0byBhIGA8bGFiZWw+YCB3aXRoaW4gYSBzd2l0Y2guXG5AbWl4aW4gc3dpdGNoLXBhZGRsZSB7XG4gICRzd2l0Y2gtd2lkdGg6ICRzd2l0Y2gtaGVpZ2h0ICogMjtcbiAgJHBhZGRsZS1oZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0IC0gKCRzd2l0Y2gtcGFkZGxlLW9mZnNldCAqIDIpO1xuICAkcGFkZGxlLXdpZHRoOiAkc3dpdGNoLWhlaWdodCAtICgkc3dpdGNoLXBhZGRsZS1vZmZzZXQgKiAyKTtcbiAgJHBhZGRsZS1hY3RpdmUtb2ZmZXN0OiAkc3dpdGNoLXdpZHRoIC0gJHBhZGRsZS13aWR0aCAtICRzd2l0Y2gtcGFkZGxlLW9mZnNldDtcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogJHN3aXRjaC13aWR0aDtcbiAgaGVpZ2h0OiAkc3dpdGNoLWhlaWdodDtcblxuICBib3JkZXItcmFkaXVzOiAkc3dpdGNoLXJhZGl1cztcbiAgYmFja2dyb3VuZDogJHN3aXRjaC1iYWNrZ3JvdW5kO1xuICB0cmFuc2l0aW9uOiAkc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uO1xuXG4gIC8vIFJlc2V0dGluZyB0aGVzZSA8bGFiZWw+IHByZXNldHMgc28gdHlwZSBzdHlsZXMgY2FzY2FkZSBkb3duXG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcblxuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgLy8gTmVlZGVkIHRvIG92ZXJyaWRlIHNwZWNpZmljaXR5XG4gIGlucHV0ICsgJiB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLy8gVGhlIHBhZGRsZSBpdHNlbGZcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICRzd2l0Y2gtcGFkZGxlLW9mZnNldDtcbiAgICAjeyRnbG9iYWwtbGVmdH06ICRzd2l0Y2gtcGFkZGxlLW9mZnNldDtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkcGFkZGxlLXdpZHRoO1xuICAgIGhlaWdodDogJHBhZGRsZS1oZWlnaHQ7XG5cbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIGJvcmRlci1yYWRpdXM6ICRzd2l0Y2gtcGFkZGxlLXJhZGl1cztcbiAgICBiYWNrZ3JvdW5kOiAkc3dpdGNoLXBhZGRsZS1iYWNrZ3JvdW5kO1xuICAgIHRyYW5zaXRpb246ICRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb247XG4gICAgY29udGVudDogJyc7XG4gIH1cblxuICAvLyBDaGFuZ2UgdGhlIHZpc3VhbCBzdHlsZSB3aGVuIHRoZSBzd2l0Y2ggaXMgYWN0aXZlXG4gIGlucHV0OmNoZWNrZWQgfiAmIHtcbiAgICBiYWNrZ3JvdW5kOiAkc3dpdGNoLWJhY2tncm91bmQtYWN0aXZlO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgI3skZ2xvYmFsLWxlZnR9OiAkcGFkZGxlLWFjdGl2ZS1vZmZlc3Q7XG4gICAgfVxuICB9XG5cblxuICAvLyBDaGFuZ2UgdGhlIHZpc3VhbCBzdHlsZSB3aGVuIHRoZSBzd2l0Y2ggaXMgZm9jdXNlZFxuICBpbnB1dDpmb2N1cy12aXNpYmxlIH4gJiB7XG4gICAgYmFja2dyb3VuZDogJHN3aXRjaC1iYWNrZ3JvdW5kLWZvY3VzO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogJHN3aXRjaC1wYWRkbGUtYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cblxuICBpbnB1dDpjaGVja2VkOmZvY3VzLXZpc2libGUgfiAmIHtcbiAgICBiYWNrZ3JvdW5kOiAkc3dpdGNoLWJhY2tncm91bmQtYWN0aXZlLWZvY3VzO1xuICB9XG5cblxuICAvLyBpbmRpY2F0ZSBhIGRpc2FibGVkIHN3aXRjaFxuICBpbnB1dDpkaXNhYmxlZCB+ICYge1xuICAgIGN1cnNvcjogJHN3aXRjaC1jdXJzb3ItZGlzYWJsZWQ7XG4gICAgb3BhY2l0eTogJHN3aXRjaC1vcGFjaXR5LWRpc2FibGVkO1xuICB9XG5cbiAgaW5wdXQ6Zm9jdXMgfiAmIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIH1cbn1cblxuLy8vIEFkZHMgYmFzZSBzdHlsZXMgZm9yIGFjdGl2ZS9pbmFjdGl2ZSB0ZXh0IGluc2lkZSBhIHN3aXRjaC4gQXBwbHkgdGhpcyB0byB0ZXh0IGVsZW1lbnRzIGluc2lkZSB0aGUgc3dpdGNoIGA8bGFiZWw+YC5cbkBtaXhpbiBzd2l0Y2gtdGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgYWN0aXZlIHN0YXRlIHRleHQgd2l0aGluIGEgc3dpdGNoLlxuQG1peGluIHN3aXRjaC10ZXh0LWFjdGl2ZSB7XG4gICN7JGdsb2JhbC1sZWZ0fTogOCU7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgaW5wdXQ6Y2hlY2tlZCArIGxhYmVsID4gJiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgaW5hY3RpdmUgc3RhdGUgdGV4dCB3aXRoaW4gYSBzd2l0Y2guXG5AbWl4aW4gc3dpdGNoLXRleHQtaW5hY3RpdmUge1xuICAjeyRnbG9iYWwtcmlnaHR9OiAxNSU7XG5cbiAgaW5wdXQ6Y2hlY2tlZCArIGxhYmVsID4gJiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vLy8gQ2hhbmdlcyB0aGUgc2l6ZSBvZiBhIHN3aXRjaCBieSBtb2RpZnlpbmcgdGhlIHNpemUgb2YgdGhlIGJvZHkgYW5kIHBhZGRsZS4gQXBwbHkgdGhpcyB0byBhIHN3aXRjaCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRmb250LXNpemUgWzFyZW1dIC0gRm9udCBzaXplIG9mIGxhYmVsIHRleHQgd2l0aGluIHRoZSBzd2l0Y2guXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzd2l0Y2gtaGVpZ2h0IFsycmVtXSAtIEhlaWdodCBvZiB0aGUgc3dpdGNoIGJvZHkuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwYWRkbGUtb2Zmc2V0IFswLjI1cmVtXSAtIFNwYWNpbmcgYmV0d2VlbiB0aGUgc3dpdGNoIHBhZGRsZSBhbmQgdGhlIGVkZ2Ugb2YgdGhlIHN3aXRjaCBib2R5LlxuQG1peGluIHN3aXRjaC1zaXplKFxuICAkZm9udC1zaXplOiAxcmVtLFxuICAkc3dpdGNoLWhlaWdodDogMnJlbSxcbiAgJHBhZGRsZS1vZmZzZXQ6IDAuMjVyZW1cbikge1xuXG4gICRzd2l0Y2gtd2lkdGg6ICRzd2l0Y2gtaGVpZ2h0ICogMjtcbiAgJHBhZGRsZS13aWR0aDogJHN3aXRjaC1oZWlnaHQgLSAoJHBhZGRsZS1vZmZzZXQgKiAyKTtcbiAgJHBhZGRsZS1oZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0IC0gKCRwYWRkbGUtb2Zmc2V0ICogMik7XG4gICRwYWRkbGUtYWN0aXZlLW9mZmVzdDogJHN3aXRjaC13aWR0aCAtICRwYWRkbGUtd2lkdGggLSAkcGFkZGxlLW9mZnNldDtcblxuICBoZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0O1xuXG4gIC5zd2l0Y2gtcGFkZGxlIHtcbiAgICB3aWR0aDogJHN3aXRjaC13aWR0aDtcbiAgICBoZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0O1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgfVxuXG4gIC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gICAgdG9wOiAkcGFkZGxlLW9mZnNldDtcbiAgICAjeyRnbG9iYWwtbGVmdH06ICRwYWRkbGUtb2Zmc2V0O1xuICAgIHdpZHRoOiAkcGFkZGxlLXdpZHRoO1xuICAgIGhlaWdodDogJHBhZGRsZS1oZWlnaHQ7XG4gIH1cblxuICBpbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICAjeyRnbG9iYWwtbGVmdH06ICRwYWRkbGUtYWN0aXZlLW9mZmVzdDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1zd2l0Y2gge1xuICAvLyBDb250YWluZXIgY2xhc3NcbiAgLnN3aXRjaCB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLWNvbnRhaW5lcjtcbiAgICBoZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0O1xuICB9XG5cbiAgLy8gPGlucHV0PiBlbGVtZW50XG4gIC5zd2l0Y2gtaW5wdXQge1xuICAgIEBpbmNsdWRlIHN3aXRjaC1pbnB1dDtcbiAgfVxuXG4gIC8vIDxsYWJlbD4gZWxlbWVudFxuICAuc3dpdGNoLXBhZGRsZSB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXBhZGRsZTtcbiAgfVxuXG4gIC8vIEJhc2UgbGFiZWwgdGV4dCBzdHlsZXNcbiAgJXN3aXRjaC10ZXh0IHtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtdGV4dDtcbiAgfVxuXG4gIC8vIEFjdGl2ZSBsYWJlbCB0ZXh0IHN0eWxlc1xuICAuc3dpdGNoLWFjdGl2ZSB7XG4gICAgQGV4dGVuZCAlc3dpdGNoLXRleHQ7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXRleHQtYWN0aXZlO1xuICB9XG5cbiAgLy8gSW5hY3RpdmUgbGFiZWwgdGV4dCBzdHlsZXNcbiAgLnN3aXRjaC1pbmFjdGl2ZSB7XG4gICAgQGV4dGVuZCAlc3dpdGNoLXRleHQ7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXRleHQtaW5hY3RpdmU7XG4gIH1cblxuICAvLyBTd2l0Y2ggc2l6ZXNcbiAgLnN3aXRjaC50aW55IHtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtc2l6ZShyZW0tY2FsYygxMCksICRzd2l0Y2gtaGVpZ2h0LXRpbnksICRzd2l0Y2gtcGFkZGxlLW9mZnNldCk7XG4gIH1cblxuICAuc3dpdGNoLnNtYWxsIHtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtc2l6ZShyZW0tY2FsYygxMiksICRzd2l0Y2gtaGVpZ2h0LXNtYWxsLCAkc3dpdGNoLXBhZGRsZS1vZmZzZXQpO1xuICB9XG5cbiAgLnN3aXRjaC5sYXJnZSB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXNpemUocmVtLWNhbGMoMTYpLCAkc3dpdGNoLWhlaWdodC1sYXJnZSwgJHN3aXRjaC1wYWRkbGUtb2Zmc2V0KTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGFibGVcbi8vLy9cblxuQHVzZSBcInNhc3M6Y29sb3JcIjtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIHRhYmxlIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1iYWNrZ3JvdW5kOiAkd2hpdGUgICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzY2FsZSBmb3IgZGFya2VuaW5nIHRoZSBzdHJpcGVkIHRhYmxlIHJvd3MgYW5kIHRoZSB0YWJsZSBib3JkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtY29sb3Itc2NhbGU6IDUlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzdHlsZSBmb3IgdGFibGUgYm9yZGVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1ib3JkZXI6IDFweCBzb2xpZCBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgdGFibGUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtcGFkZGluZzogcmVtLWNhbGMoOCAxMCAxMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHNjYWxlIGZvciBkYXJrZW5pbmcgdGhlIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtaG92ZXItc2NhbGU6IDIlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBzdGFuZGFyZCByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1yb3ctaG92ZXI6IGNvbG9yLmFkanVzdCgkdGFibGUtYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLSR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHN0cmlwZWQgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtcm93LXN0cmlwZS1ob3ZlcjogY29sb3IuYWRqdXN0KCR0YWJsZS1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtKCR0YWJsZS1jb2xvci1zY2FsZSArICR0YWJsZS1ob3Zlci1zY2FsZSkpICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCB0YWJsZXMgYXJlIHN0cmlwZWQgYnkgZGVmYXVsdCBhbmQgYW4gLnVuc3RyaXBlZCBjbGFzcyBpcyBjcmVhdGVkLiBJZiBgZmFsc2VgLCBhIC5zdHJpcGVkIGNsYXNzIGlzIGNyZWF0ZWQuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHRhYmxlLWlzLXN0cmlwZWQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIHN0cmlwZWQgcm93cy5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciBzaG93aW5nIHRoZSBzdHJpcGUgb24gcm93cyBvZiB0aGUgdGFibGVzLCBleGNsdWRpbmcgdGhlIGhlYWRlciBhbmQgZm9vdGVyLiBJZiBldmVuLCB0aGUgZXZlbiByb3dzIHdpbGwgaGF2ZSBhIGJhY2tncm91bmQgY29sb3IuIElmIG9kZCwgdGhlIG9kZCByb3dzIHdpbGwgaGF2ZSBhIGJhY2tncm91bmQgY29sb3IuIElmIGVtcHR5LCBvciBhbnkgb3RoZXIgdmFsdWUsIHRoZSB0YWJsZSByb3dzIHdpbGwgaGF2ZSBubyBzdHJpcGluZy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kdGFibGUtc3RyaXBlOiBldmVuICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgaGVhZGVyIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1oZWFkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgKiAwLjUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBoZWFkZXIgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtaGVhZC1yb3ctaG92ZXI6IGNvbG9yLmFkanVzdCgkdGFibGUtaGVhZC1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGZvb3RlciBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtZm9vdC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgZm9vdGVyIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLWZvb3Qtcm93LWhvdmVyOiBjb2xvci5hZGp1c3QoJHRhYmxlLWZvb3QtYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLSR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGhlYWRlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWhlYWQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgZm9vdGVyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtZm9vdC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3Igc2hvd2luZyB0aGUgaGVhZGVyIHdoZW4gdXNpbmcgc3RhY2tlZCB0YWJsZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHNob3ctaGVhZGVyLWZvci1zdGFja2VkOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIEJyZWFrcG9pbnQgYXQgd2hpY2ggc3RhY2tlZCB0YWJsZSBzd2l0Y2hlcyBmcm9tIG1vYmlsZSB0byBkZXNrdG9wIHZpZXcuXG4vLy8gQHR5cGUgQnJlYWtwb2ludFxuJHRhYmxlLXN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bSAhZGVmYXVsdDtcblxuQG1peGluIC16Zi10YWJsZS1zdHJpcGUoJHN0cmlwZTogJHRhYmxlLXN0cmlwZSkge1xuICB0ciB7XG4gICAgLy8gSWYgc3RyaXBlIGlzIHNldCB0byBldmVuLCBkYXJrZW4gdGhlIGV2ZW4gcm93cy5cbiAgICBAaWYgJHN0cmlwZSA9PSBldmVuIHtcbiAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJZiBzdHJpcGUgaXMgc2V0IHRvIG9kZCwgZGFya2VuIHRoZSBvZGQgcm93cy5cbiAgICBAZWxzZSBpZiAkc3RyaXBlID09IG9kZCB7XG4gICAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIC16Zi10YWJsZS11bnN0cmlwZSgpIHtcbiAgdHIge1xuICAgIGJvcmRlci1ib3R0b206ICR0YWJsZS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gIH1cbn1cblxuQG1peGluIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZTogJHRhYmxlLXN0cmlwZSwgJGlzLXN0cmlwZWQ6ICR0YWJsZS1pcy1zdHJpcGVkKSB7XG4gIHRoZWFkLFxuICB0Ym9keSxcbiAgdGZvb3Qge1xuICAgIGJvcmRlcjogJHRhYmxlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgfVxuXG4gIC8vIENhcHRpb25cbiAgY2FwdGlvbiB7XG4gICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gIH1cblxuICAvLyBUYWJsZSBoZWFkXG4gIHRoZWFkIHtcbiAgICBiYWNrZ3JvdW5kOiAkdGFibGUtaGVhZC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkdGFibGUtaGVhZC1mb250LWNvbG9yO1xuICB9XG5cbiAgLy8gVGFibGUgZm9vdFxuICB0Zm9vdCB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWZvb3QtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRhYmxlLWZvb3QtZm9udC1jb2xvcjtcbiAgfVxuXG4gIC8vIFRhYmxlIGhlYWQgYW5kIGZvb3RcbiAgdGhlYWQsXG4gIHRmb290IHtcbiAgICAvLyBSb3dzIHdpdGhpbiBoZWFkIGFuZCBmb290XG4gICAgdHIge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgLy8gQ2VsbHMgd2l0aGluIGhlYWQgYW5kIGZvb3RcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgdGV4dC1hbGlnbjogI3skZ2xvYmFsLWxlZnR9O1xuICAgIH1cbiAgfVxuXG4gIC8vIFRhYmxlIHJvd3NcbiAgdGJvZHkge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgIH1cbiAgfVxuXG4gIC8vIElmIHRhYmxlcyBhcmUgc3RyaXBlZFxuICBAaWYgJGlzLXN0cmlwZWQgPT0gdHJ1ZSB7XG4gICAgdGJvZHkge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlKTtcbiAgICB9XG5cbiAgICAmLnVuc3RyaXBlZCB7XG4gICAgICB0Ym9keSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuICAgICAgICBAaW5jbHVkZSAtemYtdGFibGUtdW5zdHJpcGUoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBJZiB0YWJsZXMgYXJlIG5vdCBzdHJpcGVkXG4gIEBlbHNlIGlmICRpcy1zdHJpcGVkID09IGZhbHNlIHtcbiAgICB0Ym9keSB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtdW5zdHJpcGUoKTtcbiAgICB9XG5cbiAgICAmLnN0cmlwZWQge1xuICAgICAgdGJvZHkge1xuICAgICAgICBAaW5jbHVkZSAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIHRhYmxlcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdHJpcGUgWyR0YWJsZS1zdHJpcGVdIC0gVXNlcyBrZXl3b3JkcyBldmVuLCBvZGQsIG9yIG5vbmUgdG8gZGFya2VuIHJvd3Mgb2YgdGhlIHRhYmxlLiBUaGUgZGVmYXVsdCB2YWx1ZSBpcyBldmVuLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJG5lc3QgW2ZhbHNlXSAtIE5lZWRlZCBpZiB5b3Ugb25seSB3YW50IHRvIGFwcGx5IHRoaXMgdG8gYSBzcGVjaWZpYyB0YWJsZS5cbkBtaXhpbiB0YWJsZShcbiAgJHN0cmlwZTogJHRhYmxlLXN0cmlwZSxcbiAgJG5lc3Q6IGZhbHNlXG4pIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuICBAaWYgJG5lc3Qge1xuICAgIEBpbmNsdWRlIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZSk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBhdC1yb290IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZSk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHRoZSBhYmlsaXR5IHRvIGhvcml6b250YWxseSBzY3JvbGwgdGhlIHRhYmxlIHdoZW4gdGhlIGNvbnRlbnQgb3ZlcmZsb3dzIGhvcml6b250YWxseS5cbkBtaXhpbiB0YWJsZS1zY3JvbGwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG5cbi8vLyBTbGlnaHRseSBkYXJrZW5zIHRoZSB0YWJsZSByb3dzIG9uIGhvdmVyLlxuQG1peGluIHRhYmxlLWhvdmVyIHtcbiAgdGhlYWQgdHIge1xuICAgIC8vRGFya2VucyB0aGUgdGFibGUgaGVhZGVyIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaGVhZC1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgdGZvb3QgdHIge1xuICAgIC8vRGFya2VucyB0aGUgdGFibGUgZm9vdGVyIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZm9vdC1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgdGJvZHkgdHIge1xuICAgIC8vRGFya2VucyB0aGUgbm9uLXN0cmlwZWQgdGFibGUgcm93cyBvbiBob3Zlci5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgQGlmICR0YWJsZS1pcy1zdHJpcGVkID09IHRydWUge1xuICAgIC8vIERhcmtlbnMgdGhlIGV2ZW4gc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBpZigkdGFibGUtc3RyaXBlID09IGV2ZW4pIHtcbiAgICAgICY6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGFya2VucyB0aGUgb2RkIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAZWxzZSBpZigkdGFibGUtc3RyaXBlID09IG9kZCkge1xuICAgICAgJjpub3QoLnVuc3RyaXBlZCkgdHI6bnRoLW9mLXR5cGUob2RkKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBlbHNlIGlmICR0YWJsZS1pcy1zdHJpcGVkID09IGZhbHNlIHtcbiAgICAvLyBEYXJrZW5zIHRoZSBldmVuIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAaWYoJHRhYmxlLXN0cmlwZSA9PSBldmVuKSB7XG4gICAgICAmLnN0cmlwZWQgdHI6bnRoLW9mLXR5cGUoZXZlbik6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEYXJrZW5zIHRoZSBvZGQgc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBlbHNlIGlmKCR0YWJsZS1zdHJpcGUgPT0gb2RkKSB7XG4gICAgICAmLnN0cmlwZWQgdHI6bnRoLW9mLXR5cGUob2RkKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3RhY2tlZCB0YWJsZS4gVXNlZnVsIGZvciBzbWFsbC1zY3JlZW4gbGF5b3V0cy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRoZWFkZXIgWyRzaG93LWhlYWRlci1mb3Itc3RhY2tlZF0gLSBTaG93IHRoZSBmaXJzdCB0aCBvZiBoZWFkZXIgd2hlbiBzdGFja2VkLlxuQG1peGluIHRhYmxlLXN0YWNrKCRoZWFkZXI6ICRzaG93LWhlYWRlci1mb3Itc3RhY2tlZCkge1xuICBAaWYgJGhlYWRlciB7XG4gICAgdGhlYWQge1xuICAgICAgdGgge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHRoZWFkIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgdGZvb3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICB0cixcbiAgdGgsXG4gIHRkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIHRkIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRhYmxlKCRuZXN0OiBmYWxzZSkge1xuICB0YWJsZSB7XG4gICAgQGluY2x1ZGUgdGFibGUoJG5lc3Q6ICRuZXN0KTtcbiAgfVxuXG4gIHRhYmxlLnN0YWNrIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZS1zdGFjay1icmVha3BvaW50IGRvd24pIHtcbiAgICAgIEBpbmNsdWRlIHRhYmxlLXN0YWNrO1xuICAgIH1cbiAgfVxuXG4gIHRhYmxlLnNjcm9sbCB7XG4gICAgQGluY2x1ZGUgdGFibGUtc2Nyb2xsO1xuICB9XG5cbiAgdGFibGUuaG92ZXIge1xuICAgIEBpbmNsdWRlIHRhYmxlLWhvdmVyO1xuICB9XG5cbiAgLnRhYmxlLXNjcm9sbCB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcblxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGFic1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gb2YgdGhlIHRhYiBiYXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFiLW1hcmdpbjogMCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiBhIHRhYiBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRm9udCBjb2xvciBvZiB0YWIgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBBY3RpdmUgYmFja2dyb3VuZCBjb2xvciBvZiBhIHRhYiBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItYmFja2dyb3VuZC1hY3RpdmU6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQWN0aXZlIGZvbnQgY29sb3Igb2YgdGFiIGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItYWN0aXZlLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiB0YWIgaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFiLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb24gaG92ZXIgZm9yIGl0ZW1zIGluIGEgTWVudS5cbiR0YWItaXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgb2YgYSB0YWIgaXRlbS5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItaXRlbS1wYWRkaW5nOiAxLjI1cmVtIDEuNXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbnRlbnQtYm9yZGVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kdGFiLWNvbnRlbnQtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHRhYiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gYSBgPHVsPmAuXG5AbWl4aW4gdGFicy1jb250YWluZXIgKFxuICAkbWFyZ2luOiAkdGFiLW1hcmdpbixcbiAgJGJhY2tncm91bmQ6ICR0YWItYmFja2dyb3VuZCxcbiAgJGJvcmRlci1jb2xvcjogJHRhYi1jb250ZW50LWJvcmRlclxuKSB7XG4gIG1hcmdpbjogJG1hcmdpbjtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG59XG5cbi8vLyBBdWdtZW50cyBhIHRhYiBjb250YWluZXIgdG8gaGF2ZSB2ZXJ0aWNhbCB0YWJzLiBVc2UgdGhpcyBpbiBjb25qdW5jdGlvbiB3aXRoIGB0YWJzLWNvbnRhaW5lcigpYC5cbkBtaXhpbiB0YWJzLWNvbnRhaW5lci12ZXJ0aWNhbCB7XG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGxpbmtzIHdpdGhpbiBhIHRhYiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gdGhlIGA8bGk+YCBlbGVtZW50cyBpbnNpZGUgYSB0YWIgY29udGFpbmVyLlxuQG1peGluIHRhYnMtdGl0bGUgKFxuICAkcGFkZGluZzogJHRhYi1pdGVtLXBhZGRpbmcsXG4gICRmb250LXNpemU6ICR0YWItaXRlbS1mb250LXNpemUsXG4gICRjb2xvcjogJHRhYi1jb2xvcixcbiAgJGNvbG9yLWFjdGl2ZTogJHRhYi1hY3RpdmUtY29sb3IsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGJhY2tncm91bmQtYWN0aXZlOiAkdGFiLWJhY2tncm91bmQtYWN0aXZlXG4pIHtcbiAgZmxvYXQ6ICN7JGdsb2JhbC1sZWZ0fTtcblxuICA+IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgICBjb2xvcjogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKTtcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICZbYXJpYS1zZWxlY3RlZD0ndHJ1ZSddIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgICAgIGNvbG9yOiAkY29sb3ItYWN0aXZlO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSB3cmFwcGVyIHRoYXQgc3Vycm91bmRzIGEgdGFiIGdyb3VwJ3MgY29udGVudCBwYW5lcy5cbkBtaXhpbiB0YWJzLWNvbnRlbnQgKFxuICAkYmFja2dyb3VuZDogJHRhYi1jb250ZW50LWJhY2tncm91bmQsXG4gICRjb2xvcjogJHRhYi1jb250ZW50LWNvbG9yLFxuICAkYm9yZGVyLWNvbG9yOiAkdGFiLWNvbnRlbnQtYm9yZGVyXG4pIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gIGNvbG9yOiAkY29sb3I7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG59XG5cbi8vLyBBdWdtZW50cyBhIHRhYiBjb250ZW50IGNvbnRhaW5lciB0byBoYXZlIGEgdmVydGljYWwgc3R5bGUsIGJ5IHNoaWZ0aW5nIHRoZSBib3JkZXIgYXJvdW5kLiBVc2UgdGhpcyBpbiBjb25qdW5jdGlvbiB3aXRoIGB0YWJzLWNvbnRlbnQoKWAuXG5AbWl4aW4gdGFicy1jb250ZW50LXZlcnRpY2FsIChcbiAgJGJvcmRlci1jb2xvcjogJHRhYi1jb250ZW50LWJvcmRlclxuKSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gaW5kaXZpZHVhbCB0YWIgY29udGVudCBwYW5lbCB3aXRoaW4gdGhlIHRhYiBjb250ZW50IGNvbnRhaW5lci5cbkBtaXhpbiB0YWJzLXBhbmVsIChcbiAgJHBhZGRpbmc6ICR0YWItY29udGVudC1wYWRkaW5nXG4pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG5cbiAgJi5pcy1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRhYnMge1xuICAudGFicyB7XG4gICAgQGluY2x1ZGUgdGFicy1jb250YWluZXI7XG4gIH1cblxuICAvLyBWZXJ0aWNhbFxuICAudGFicy52ZXJ0aWNhbCB7XG4gICAgQGluY2x1ZGUgdGFicy1jb250YWluZXItdmVydGljYWw7XG4gIH1cblxuICAvLyBTaW1wbGVcbiAgLnRhYnMuc2ltcGxlIHtcbiAgICA+IGxpID4gYSB7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUHJpbWFyeSBjb2xvclxuICAudGFicy5wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcblxuICAgID4gbGkgPiBhIHtcbiAgICAgIGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRwcmltYXJ5LWNvbG9yKTtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkcHJpbWFyeS1jb2xvcik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnRhYnMtdGl0bGUge1xuICAgIEBpbmNsdWRlIHRhYnMtdGl0bGU7XG4gIH1cblxuICAudGFicy1jb250ZW50IHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRlbnQ7XG4gIH1cblxuICAudGFicy1jb250ZW50LnZlcnRpY2FsIHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRlbnQtdmVydGljYWw7XG4gIH1cblxuICAudGFicy1wYW5lbCB7XG4gICAgQGluY2x1ZGUgdGFicy1wYW5lbDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRodW1ibmFpbFxuLy8vL1xuXG4vLy8gQm9yZGVyIGFyb3VuZCB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIEJvcmRlclxuJHRodW1ibmFpbC1ib3JkZXI6IDRweCBzb2xpZCAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIGZvciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIExlbmd0aFxuJHRodW1ibmFpbC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgdW5kZXIgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBTaGFkb3dcbiR0aHVtYm5haWwtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgkYmxhY2ssIDAuMikgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IHVuZGVyIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgU2hhZG93XG4kdGh1bWJuYWlsLXNoYWRvdy1ob3ZlcjogMCAwIDZweCAxcHggcmdiYSgkcHJpbWFyeS1jb2xvciwgMC41KSAhZGVmYXVsdDtcblxuLy8vIFRyYW5zaXRpb24gcHJvcHJ0aWVzIGZvciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiR0aHVtYm5haWwtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIE51bWJlclxuJHRodW1ibmFpbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQWRkcyB0aHVtYm5haWwgc3R5bGVzIHRvIGFuIGVsZW1lbnQuXG5AbWl4aW4gdGh1bWJuYWlsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICR0aHVtYm5haWwtbWFyZ2luLWJvdHRvbTtcblxuICBib3JkZXI6ICR0aHVtYm5haWwtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkdGh1bWJuYWlsLXJhZGl1cztcbiAgYm94LXNoYWRvdzogJHRodW1ibmFpbC1zaGFkb3c7XG5cbiAgbGluZS1oZWlnaHQ6IDA7XG59XG5cbkBtaXhpbiB0aHVtYm5haWwtbGluayB7XG4gIHRyYW5zaXRpb246ICR0aHVtYm5haWwtdHJhbnNpdGlvbjtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAkdGh1bWJuYWlsLXNoYWRvdy1ob3ZlcjtcbiAgfVxuXG4gIGltYWdlIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRodW1ibmFpbCB7XG4gIC50aHVtYm5haWwge1xuICAgIEBpbmNsdWRlIHRodW1ibmFpbDtcbiAgfVxuXG4gIGEudGh1bWJuYWlsIHtcbiAgICBAaW5jbHVkZSB0aHVtYm5haWwtbGluaztcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRpdGxlLWJhclxuLy8vL1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRpdGxlYmFyLWJhY2tncm91bmQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRleHQgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGl0bGViYXItY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIExlbmd0aFxuJHRpdGxlYmFyLXBhZGRpbmc6IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIFdlaWdodFxuJHRpdGxlYmFyLXRleHQtZm9udC13ZWlnaHQ6IGJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBtZW51IGljb25zIGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRpdGxlYmFyLWljb24tY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIG1lbnUgaWNvbnMgaW5zaWRlIGEgdGl0bGUgYmFyIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGl0bGViYXItaWNvbi1jb2xvci1ob3ZlcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIHRoZSBtZW51IGljb24gYW5kIHRleHQgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIExlbmd0aFxuJHRpdGxlYmFyLWljb24tc3BhY2luZzogMC4yNXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tdGl0bGUtYmFyIHtcbiAgLnRpdGxlLWJhciB7XG4gICAgcGFkZGluZzogJHRpdGxlYmFyLXBhZGRpbmc7XG4gICAgYmFja2dyb3VuZDogJHRpdGxlYmFyLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICR0aXRsZWJhci1jb2xvcjtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIH1cblxuICAgIC5tZW51LWljb24ge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJHRpdGxlYmFyLWljb24tc3BhY2luZztcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkdGl0bGViYXItaWNvbi1zcGFjaW5nO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIC50aXRsZS1iYXItbGVmdCxcbiAgICAudGl0bGUtYmFyLXJpZ2h0IHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgfVxuXG4gICAgLnRpdGxlLWJhci1yaWdodCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC50aXRsZS1iYXItbGVmdCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG5cbiAgICAudGl0bGUtYmFyLXJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC50aXRsZS1iYXItdGl0bGUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGZvbnQtd2VpZ2h0OiAkdGl0bGViYXItdGV4dC1mb250LXdlaWdodDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRvb2x0aXBcbi8vLy9cblxuLy8vIERlZmF1bHQgY3Vyc29yIG9mIHRoZSBkZWZpbmVkIHRlcm0uXG4vLy8gQHR5cGUgS2V5d29yZFxuJGhhcy10aXAtY3Vyc29yOiBoZWxwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBvZiB0aGUgZGVmaW5lZCB0ZXJtLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRoYXMtdGlwLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYm90dG9tIG9mIHRoZSBkZWZpbmVkIHRlcm0uXG4vLy8gQHR5cGUgTGlzdFxuJGhhcy10aXAtYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiB0aGUgdG9vbHRpcCBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHRoZSB0b29sdGlwIGZvbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0b29sdGlwLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgb2YgdGhlIHRvb2x0aXAgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLXBhZGRpbmc6IDAuNzVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1heCB3aWR0aCBmb3IgdG9vbHRpcHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1tYXgtd2lkdGg6IDEwcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgb2YgdGhlIHRvb2x0aXAgdGV4dC4gQnkgZGVmYXVsdCwgd2UgcmVjb21tZW5kIGEgc21hbGxlciBmb250IHNpemUgdGhhbiB0aGUgYm9keSBjb3B5LlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwaXAgd2lkdGggZm9yIHRvb2x0aXBzLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtcGlwLXdpZHRoOiAwLjc1cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwaXAgaGVpZ2h0IGZvciB0b29sdGlwcy4gVGhpcyBpcyBoZWxwZnVsIGZvciBjYWxjdWxhdGluZyB0aGUgZGlzdGFuY2Ugb2YgdGhlIHRvb2x0aXAgZnJvbSB0aGUgdG9vbHRpcCB3b3JkLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtcGlwLWhlaWdodDogJHRvb2x0aXAtcGlwLXdpZHRoICogMC44NjYgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3IgdG9vbHRpcHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG5AbWl4aW4gaGFzLXRpcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gIGJvcmRlci1ib3R0b206ICRoYXMtdGlwLWJvcmRlci1ib3R0b207XG4gIGZvbnQtd2VpZ2h0OiAkaGFzLXRpcC1mb250LXdlaWdodDtcbiAgY3Vyc29yOiAkaGFzLXRpcC1jdXJzb3I7XG59XG5cbkBtaXhpbiB0b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoMTAwJSArICN7JHRvb2x0aXAtcGlwLWhlaWdodH0pO1xuICB6LWluZGV4OiAxMjAwO1xuXG4gIG1heC13aWR0aDogJHRvb2x0aXAtbWF4LXdpZHRoO1xuICBwYWRkaW5nOiAkdG9vbHRpcC1wYWRkaW5nO1xuXG4gIGJvcmRlci1yYWRpdXM6ICR0b29sdGlwLXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvcjtcbiAgZm9udC1zaXplOiAkdG9vbHRpcC1mb250LXNpemU7XG4gIGNvbG9yOiAkdG9vbHRpcC1jb2xvcjtcblxuICAmOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuXG4gICYuYm90dG9tIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b29sdGlwLXBpcC13aWR0aCwgJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvciwgdXApO1xuICAgICAgYm90dG9tOiAxMDAlO1xuICAgIH1cblxuICAgICYuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIH1cbiAgfVxuXG4gICYudG9wIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b29sdGlwLXBpcC13aWR0aCwgJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvciwgZG93bik7XG4gICAgICB0b3A6IDEwMCU7XG4gICAgICBib3R0b206IGF1dG87XG4gICAgfVxuXG4gICAgJi5hbGlnbi1jZW50ZXI6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgfVxuICB9XG5cbiAgJi5sZWZ0IHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b29sdGlwLXBpcC13aWR0aCwgJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvciwgcmlnaHQpO1xuICAgICAgbGVmdDogMTAwJTtcbiAgICB9XG5cbiAgICAmLmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIH1cbiAgfVxuXG4gICYucmlnaHQge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHRvb2x0aXAtcGlwLXdpZHRoLCAkdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yLCBsZWZ0KTtcbiAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG5cbiAgICAmLmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIH1cbiAgfVxuXG4gICYuYWxpZ24tdG9wOjpiZWZvcmUge1xuICAgIGJvdHRvbTogYXV0bztcbiAgICB0b3A6IDEwJTtcbiAgfVxuXG4gICYuYWxpZ24tYm90dG9tOjpiZWZvcmUge1xuICAgIGJvdHRvbTogMTAlO1xuICAgIHRvcDogYXV0bztcbiAgfVxuXG4gICYuYWxpZ24tbGVmdDo6YmVmb3JlIHtcbiAgICBsZWZ0OiAxMCU7XG4gICAgcmlnaHQ6IGF1dG87XG4gIH1cblxuICAmLmFsaWduLXJpZ2h0OjpiZWZvcmUge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDEwJTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10b29sdGlwIHtcbiAgLmhhcy10aXAge1xuICAgIEBpbmNsdWRlIGhhcy10aXA7XG4gIH1cblxuICAudG9vbHRpcCB7XG4gICAgQGluY2x1ZGUgdG9vbHRpcDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRvcC1iYXJcbi8vLy9cblxuLy8vIFBhZGRpbmcgZm9yIHRoZSB0b3AgYmFyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvcGJhci1wYWRkaW5nOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgdG9wIGJhci4gVGhpcyBjb2xvciBhbHNvIGNhc2NhZGVzIHRvIG1lbnVzIHdpdGhpbiB0aGUgdG9wIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRvcGJhci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igc3VibWVudXMgd2l0aGluIHRoZSB0b3AgYmFyLiBVc2VmdWxsIGlmICR0b3BiYXItYmFja2dyb3VuZCBpcyB0cmFuc3BhcmVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRvcGJhci1zdWJtZW51LWJhY2tncm91bmQ6ICR0b3BiYXItYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgZm9yIHRoZSB0b3AgYmFyIHRpdGxlLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvcGJhci10aXRsZS1zcGFjaW5nOiAwLjVyZW0gMXJlbSAwLjVyZW0gMCAhZGVmYXVsdDtcblxuLy8vIE1heGltdW0gd2lkdGggb2YgYDxpbnB1dD5gIGVsZW1lbnRzIGluc2lkZSB0aGUgdG9wIGJhci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b3BiYXItaW5wdXQtd2lkdGg6IDIwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQnJlYWtwb2ludCBhdCB3aGljaCB0b3AgYmFyIHN3aXRjaGVzIGZyb20gbW9iaWxlIHRvIGRlc2t0b3Agdmlldy5cbi8vLyBAdHlwZSBCcmVha3BvaW50XG4kdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludDogbWVkaXVtICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgdG9wIGJhciBjb250YWluZXIuXG5AbWl4aW4gdG9wLWJhci1jb250YWluZXIge1xuICBwYWRkaW5nOiAkdG9wYmFyLXBhZGRpbmc7XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIH1cblxuICAmLFxuICB1bCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRvcGJhci1iYWNrZ3JvdW5kO1xuICB9XG5cbiAgLy8gQ2hlY2sgaWYgJHRvcGJhci1iYWNrZ3JvdW5kIGlzIGRpZmZlcm50IGZyb20gJHRvcGJhci1iYWNrZ3JvdW5kLXN1Ym1lbnVcbiAgQGlmICgkdG9wYmFyLWJhY2tncm91bmQgIT0gJHRvcGJhci1zdWJtZW51LWJhY2tncm91bmQpIHtcbiAgICB1bCB1bCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXN0cmFpbiB3aWR0aCBvZiBpbnB1dHMgYnkgZGVmYXVsdCB0byBtYWtlIHRoZW0gZWFzaWVyIHRvIGFycmFuZ2VcbiAgaW5wdXQge1xuICAgIG1heC13aWR0aDogJHRvcGJhci1pbnB1dC13aWR0aDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgfVxuXG4gIC8vIFRoZSBhYm92ZSBzdHlsZXMgc2hvdWxkbid0IGFwcGx5IHRvIGlucHV0IGdyb3VwIGZpZWxkc1xuICAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICB9XG5cbiAgaW5wdXQuYnV0dG9uIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLy8vIE1ha2VzIHNlY3Rpb25zIG9mIGEgdG9wIGJhciBzdGFjayBvbiB0b3Agb2YgZWFjaCBvdGhlci5cbkBtaXhpbiB0b3AtYmFyLXN0YWNrZWQge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAvLyBTdWItc2VjdGlvbnNcbiAgICAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gU3ViLXNlY3Rpb25zXG4gICAgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFVuZG9lcyB0aGUgQ1NTIGFwcGxpZWQgYnkgdGhlIGB0b3AtYmFyLXN0YWNrZWQoKWAgbWl4aW4uXG5AbWl4aW4gdG9wLWJhci11bnN0YWNrIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG5cbiAgICAudG9wLWJhci1sZWZ0IHtcbiAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10b3AtYmFyIHtcbiAgLnRvcC1iYXIge1xuICAgIEBpbmNsdWRlIHRvcC1iYXItY29udGFpbmVyO1xuICB9XG4gIC50b3AtYmFyIHtcbiAgICAvLyBTdGFjayBvbiBzbWFsbCBzY3JlZW5zIGJ5IGRlZmF1bHRcbiAgICBAaW5jbHVkZSB0b3AtYmFyLXN0YWNrZWQ7XG4gIH1cbiAgLy8gVG9wIGJhciBjb250YWluZXJcbiAgLnRvcC1iYXIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRvcGJhci11bnN0YWNrLWJyZWFrcG9pbnQpIHtcbiAgICAgIEBpbmNsdWRlIHRvcC1iYXItdW5zdGFjaztcbiAgICB9XG5cbiAgICAvLyBHZW5lcmF0ZSBjbGFzc2VzIGZvciBzdGFja2luZyBvbiBlYWNoIHNjcmVlbiBzaXplIChkZWZpbmVkIGluICRicmVha3BvaW50LWNsYXNzZXMpXG4gICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAmLnN0YWNrZWQtZm9yLSN7JHNpemV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIGRvd24pIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRvcC1iYXItc3RhY2tlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBTdWItc2VjdGlvbnNcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgLnRvcC1iYXItdGl0bGUge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBtYXJnaW46ICR0b3BiYXItdGl0bGUtc3BhY2luZztcbiAgICB9XG5cbiAgICAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLnRvcC1iYXItdGl0bGUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nOiAkdG9wYmFyLXRpdGxlLXNwYWNpbmc7XG5cbiAgICAgIC5tZW51LWljb24ge1xuICAgICAgICBib3R0b206IDJweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudG9wLWJhci1sZWZ0IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cblxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3IoJHNpemUpIHtcbiAgJHNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG4gIC8vIE1heCB2YWx1ZSBpcyAwLjJweCB1bmRlciB0aGUgbmV4dCBicmVha3BvaW50ICgwLjAyIC8gMTYgPSAwLjAwMTI1KS5cbiAgLy8gVXNlIGEgcHJlY2lzaW9uIHVuZGVyIDFweCB0byBzdXBwb3J0IGJyb3dzZXIgem9vbSwgYnV0IG5vdCB0byBsb3cgdG8gYXZvaWQgcm91bmRpbmcuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vZm91bmRhdGlvbi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMTMxM1xuICAkc2l6ZTogLXpmLWJwLXRvLWVtKCRzaXplKSAtIDAuMDAxMjU7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBkb3duKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBIaWRlIGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgb25seSBkaXNwbGF5aW5nIGl0IHdpdGhpbiBhIGNlcnRhaW4gYnJlYWtwb2ludC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIHNob3ctZm9yLW9ubHkoJHNpemUpIHtcbiAgJGxvd2VyLWJvdW5kLXNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG4gICR1cHBlci1ib3VuZC1zaXplOiAtemYtbWFwLW5leHQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG5cbiAgLy8gbW9yZSBvZnRlbiB0aGFuIG5vdCB0aGlzIHdpbGwgYmUgY29ycmVjdCwganVzdCBvbmUgdGltZSByb3VuZCB0aGUgbG9vcCBpdCB3b24ndCBzbyBzZXQgaW4gc2NvcGUgaGVyZVxuICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSkgLSAwLjAwMTI1O1xuICAvLyB0ZXN0IGFjdHVhbCBsb3dlci1ib3VuZC1zaXplLCBpZiAwIHNldCBpdCB0byAwZW1cbiAgQGlmIHN0cmlwLXVuaXQoJGxvd2VyLWJvdW5kLXNpemUpID09IDAge1xuICAgICRsb3dlci1ib3VuZDogLXpmLWJwLXRvLWVtKCRsb3dlci1ib3VuZC1zaXplKTtcbiAgfVxuXG4gIEBpZiAkdXBwZXItYm91bmQtc2l6ZSA9PSBudWxsIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgICR1cHBlci1ib3VuZDogLXpmLWJwLXRvLWVtKCR1cHBlci1ib3VuZC1zaXplKTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsb3dlci1ib3VuZCksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHVwcGVyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cblxuLy8vIFNob3cgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBhbmQgaGlkZSBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBoaWRlLWZvcigkc2l6ZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3Itb25seSgkc2l6ZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIG9ubHkpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdmlzaWJpbGl0eS1jbGFzc2VzIHtcbiAgLy8gQmFzaWMgaGlkaW5nIGNsYXNzZXNcbiAgLmhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5pbnZpc2libGUge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICAudmlzaWJsZSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIC8vIFJlc3BvbnNpdmUgdmlzaWJpbGl0eSBjbGFzc2VzXG4gIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAuaGlkZS1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBoaWRlLWZvcigkc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIC5zaG93LWZvci0jeyRzaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIHNob3ctZm9yKCRzaXplKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaGlkZS1mb3ItI3skc2l6ZX0tb25seSB7XG4gICAgICBAaW5jbHVkZSBoaWRlLWZvci1vbmx5KCRzaXplKTtcbiAgICB9XG5cbiAgICAuc2hvdy1mb3ItI3skc2l6ZX0tb25seSB7XG4gICAgICBAaW5jbHVkZSBzaG93LWZvci1vbmx5KCRzaXplKTtcbiAgICB9XG4gIH1cblxuICAvLyBTY3JlZW4gcmVhZGVyIHZpc2liaWxpdHkgY2xhc3Nlc1xuICAvLyBOZWVkIGEgXCJoaWRlLWZvci1zclwiIGNsYXNzPyBBZGQgYXJpYS1oaWRkZW49J3RydWUnIHRvIHRoZSBlbGVtZW50XG4gIC5zaG93LWZvci1zcixcbiAgLnNob3ctb24tZm9jdXMge1xuICAgIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlO1xuICB9XG5cbiAgLy8gT25seSBkaXNwbGF5IHRoZSBlbGVtZW50IHdoZW4gaXQncyBmb2N1c2VkXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlLW9mZjtcbiAgICB9XG4gIH1cblxuICAvLyBMYW5kc2NhcGUgYW5kIHBvcnRyYWl0IHZpc2liaWxpdHlcbiAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYW5kc2NhcGUpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYW5kc2NhcGUpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIERhcmsgTW9kZSBWaXNpYmlsaXR5XG4gIC5zaG93LWZvci1kYXJrLW1vZGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmhpZGUtZm9yLWRhcmstbW9kZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gICAgLnNob3ctZm9yLWRhcmstbW9kZSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuaGlkZS1mb3ItZGFyay1tb2RlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBJRTEwKyBWaXNpYmlsaXR5XG4gIC5zaG93LWZvci1pZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICBAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAgIC5zaG93LWZvci1pZSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuaGlkZS1mb3ItaWUge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIFN0aWNreSBWaXNpYmlsaXR5XG4gIC5zaG93LWZvci1zdGlja3kge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmlzLXN0dWNrIC5zaG93LWZvci1zdGlja3kge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5pcy1zdHVjayAuaGlkZS1mb3Itc3RpY2t5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgRmxleGJveCBVdGlsaXRpZXNcbi8vLy9cbi8vXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3IgdGhlIGNvdW50IG9mIHNvdXJjZSBvcmRlcmluZ2Bcbi8vLyBAdHlwZSBOdW1iZXJcbiRmbGV4LXNvdXJjZS1vcmRlcmluZy1jb3VudDogNiAhZGVmYXVsdDtcblxuLy8vIFF1aWNrbHkgZGlzYWJsZS9lbmFibGUgUmVzcG9uc2l2ZSBicmVha3BvaW50cyBmb3IgVmFuaWxsYSBGbGV4IEhlbHBlcnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50czogdHJ1ZSAhZGVmYXVsdDtcblxuQG1peGluIGZsZXgtaGVscGVycyB7XG4gIC5mbGV4LWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgZmxleDtcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgZmxleDogMSAwIGF1dG87XG4gIH1cblxuICAuZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG5cbiAgQGVhY2ggJGRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWRpcmVjdGlvbiB7XG4gICAgLmZsZXgtZGlyLSN7JGRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oJHByb3ApO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAoJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50cykge1xuICAgIC8vIExvb3AgdGhyb3VnaCBSZXNwb25zaXZlIEJyZWFrcG9pbnRzXG4gICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY29udGFpbmVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY2hpbGQtYXV0byB7XG4gICAgICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jaGlsZC1ncm93IHtcbiAgICAgICAgICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNoaWxkLXNocmluayB7XG4gICAgICAgICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAZWFjaCAkZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtZGlyZWN0aW9uIHtcbiAgICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWRpci0jeyRkaXJ9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oJHByb3ApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mbGV4LWNsYXNzZXMge1xuICAvLyBIb3Jpem9udGFsIGFsaWdubWVudCB1c2luZyBqdXN0aWZ5LWNvbnRlbnRcbiAgQGVhY2ggJGhkaXIsICRwcm9wIGluICQtemYtZmxleC1qdXN0aWZ5IHtcbiAgICAuYWxpZ24tI3skaGRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogJGhkaXIpO1xuICAgIH1cbiAgfVxuICBcbiAgLy8gSG9yaXpvbnRhbCBhbGlnbm1lbnQgU3BlY2lmaWNhbGx5IGZvciBWZXJ0aWNhbCBNZW51XG4gIEBlYWNoICRoZGlyLCAkcHJvcCBpbiBtYXAtcmVtb3ZlKCQtemYtZmxleC1qdXN0aWZ5LCAnanVzdGlmeScsICdzcGFjZWQnKSB7XG4gICAgLmFsaWduLSN7JGhkaXJ9IHtcbiAgICAgICYudmVydGljYWwge1xuICAgICAgICAmLm1lbnUgPiBsaSA+IGEge1xuICAgICAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHg6ICRoZGlyKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFZlcnRpY2FsIGFsaWdubWVudCB1c2luZyBhbGlnbi1pdGVtcyBhbmQgYWxpZ24tc2VsZlxuICBAZWFjaCAkdmRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWFsaWduIHtcbiAgICAuYWxpZ24tI3skdmRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeTogJHZkaXIpO1xuICAgIH1cblxuICAgIC5hbGlnbi1zZWxmLSN7JHZkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24tc2VsZigkeTogJHZkaXIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIENlbnRyYWwgYWxpZ25tZW50IG9mIGNvbnRlbnRcbiAgLmFsaWduLWNlbnRlci1taWRkbGUge1xuICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHg6IGNlbnRlciwgJHk6IG1pZGRsZSk7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICB9XG5cbiAgLy8gU291cmNlIG9yZGVyaW5nXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGZsZXgtc291cmNlLW9yZGVyaW5nLWNvdW50IHtcbiAgICAgIC4jeyQtemYtc2l6ZX0tb3JkZXItI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSBmbGV4LW9yZGVyKCRpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBWYW5pbGxhIEZsZXhib3ggSGVscGVyc1xuICBAaW5jbHVkZSBmbGV4LWhlbHBlcnM7XG59XG4iLCJAZnVuY3Rpb24gLXpmLWZsZXgtanVzdGlmeSgkdGV4dC1kaXJlY3Rpb24pIHtcbiAgJC16Zi1mbGV4LWp1c3RpZnk6IChcbiAgICAnbGVmdCc6IGlmKCR0ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGZsZXgtZW5kLCBmbGV4LXN0YXJ0KSxcbiAgICAncmlnaHQnOiBpZigkdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBmbGV4LXN0YXJ0LCBmbGV4LWVuZCksXG4gICAgJ2NlbnRlcic6IGNlbnRlcixcbiAgICAnanVzdGlmeSc6IHNwYWNlLWJldHdlZW4sXG4gICAgJ3NwYWNlZCc6IHNwYWNlLWFyb3VuZCxcbiAgKTtcblxuICBAcmV0dXJuICQtemYtZmxleC1qdXN0aWZ5O1xufVxuXG5cbiQtemYtZmxleC1hbGlnbjogKFxuICAndG9wJzogZmxleC1zdGFydCxcbiAgJ2JvdHRvbSc6IGZsZXgtZW5kLFxuICAnbWlkZGxlJzogY2VudGVyLFxuICAnc3RyZXRjaCc6IHN0cmV0Y2gsXG4pO1xuXG4kLXpmLWZsZXgtZGlyZWN0aW9uOiAoXG4gICdyb3cnOiByb3csXG4gICdyb3ctcmV2ZXJzZSc6IHJvdy1yZXZlcnNlLFxuICAnY29sdW1uJzogY29sdW1uLFxuICAnY29sdW1uLXJldmVyc2UnOiBjb2x1bW4tcmV2ZXJzZSxcbik7XG5cbi8vLyBFbmFibGVzIGZsZXhib3ggYnkgYWRkaW5nIGBkaXNwbGF5OiBmbGV4YCB0byB0aGUgZWxlbWVudC5cbkBtaXhpbiBmbGV4IHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLy8vIEhvcml6b250YWxseSBvciB2ZXJ0aWNhbGx5IGFsaWducyB0aGUgaXRlbXMgd2l0aGluIGEgZmxleCBjb250YWluZXIuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR4IFtudWxsXSAtIEhvcml6b250YWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGBsZWZ0YCwgYHJpZ2h0YCwgYGNlbnRlcmAsIGBqdXN0aWZ5YCwgb3IgYHNwYWNlZGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCBob3Jpem9udGFsIGFsaWdubWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR5IFtudWxsXSAtIFZlcnRpY2FsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgdG9wYCwgYGJvdHRvbWAsIGBtaWRkbGVgLCBvciBgc3RyZXRjaGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCB2ZXJ0aWNhbCBhbGlnbm1lbnQuXG5AbWl4aW4gZmxleC1hbGlnbigkeDogbnVsbCwgJHk6IG51bGwpIHtcbiAgQGlmICR4IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWp1c3RpZnksICR4KSB7XG4gICAgICAkeDogbWFwLWdldCgkLXpmLWZsZXgtanVzdGlmeSwgJHgpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLXJvdy1hbGlnbigpOiAjeyR4fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgaG9yaXpvbnRhbCBhbGlnbm1lbnQuIFVzZSBsZWZ0LCByaWdodCwgY2VudGVyLCBqdXN0aWZ5LCBvciBzcGFjZWQuJztcbiAgICB9XG4gIH1cblxuICBAaWYgJHkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtYWxpZ24sICR5KSB7XG4gICAgICAkeTogbWFwLWdldCgkLXpmLWZsZXgtYWxpZ24sICR5KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1yb3ctYWxpZ24oKTogI3skeX0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIHZlcnRpY2FsIGFsaWdubWVudC4gVXNlIHRvcCwgYm90dG9tLCBtaWRkbGUsIG9yIHN0cmV0Y2guJztcbiAgICB9XG4gIH1cblxuICBqdXN0aWZ5LWNvbnRlbnQ6ICR4O1xuICBhbGlnbi1pdGVtczogJHk7XG59XG5cbi8vLyBWZXJ0aWNhbGx5IGFsaWduIGEgc2luZ2xlIGNvbHVtbiB3aXRoaW4gYSBmbGV4IHJvdy4gQXBwbHkgdGhpcyBtaXhpbiB0byBhIGZsZXggY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeSBbbnVsbF0gLSBWZXJ0aWNhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYHRvcGAsIGBib3R0b21gLCBgbWlkZGxlYCwgb3IgYHN0cmV0Y2hgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgdmVydGljYWwgYWxpZ25tZW50LlxuQG1peGluIGZsZXgtYWxpZ24tc2VsZigkeTogbnVsbCkge1xuICBAaWYgJHkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtYWxpZ24sICR5KSB7XG4gICAgICAkeTogbWFwLWdldCgkLXpmLWZsZXgtYWxpZ24sICR5KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1jb2x1bW4tYWxpZ24oKTogI3skeX0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIGFsaWdubWVudC4gVXNlIHRvcCwgYm90dG9tLCBtaWRkbGUsIG9yIHN0cmV0Y2guJztcbiAgICB9XG4gIH1cblxuICBhbGlnbi1zZWxmOiAkeTtcbn1cblxuLy8vIENoYW5nZXMgdGhlIHNvdXJjZSBvcmRlciBvZiBhIGZsZXggY2hpbGQuIENoaWxkcmVuIHdpdGggbG93ZXIgbnVtYmVycyBhcHBlYXIgZmlyc3QgaW4gdGhlIGxheW91dC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG9yZGVyIFswXSAtIE9yZGVyIG51bWJlciB0byBhcHBseS5cbkBtaXhpbiBmbGV4LW9yZGVyKCRvcmRlcjogMCkge1xuICBvcmRlcjogJG9yZGVyO1xufVxuXG4vLy8gQ2hhbmdlIGZsZXgtZGlyZWN0aW9uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyZWN0aW9uIFtyb3ddIC0gRmxleCBkaXJlY3Rpb24gdG8gdXNlLiBDYW4gYmVcbi8vLyAgIC0gcm93IChkZWZhdWx0KTogc2FtZSBhcyB0ZXh0IGRpcmVjdGlvblxuLy8vICAgLSByb3ctcmV2ZXJzZTogb3Bwb3NpdGUgdG8gdGV4dCBkaXJlY3Rpb25cbi8vLyAgIC0gY29sdW1uOiBzYW1lIGFzIHJvdyBidXQgdG9wIHRvIGJvdHRvbVxuLy8vICAgLSBjb2x1bW4tcmV2ZXJzZTogc2FtZSBhcyByb3ctcmV2ZXJzZSB0b3AgdG8gYm90dG9tXG5AbWl4aW4gZmxleC1kaXJlY3Rpb24oJGRpcmVjdGlvbjogcm93KSB7XG4gIGZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xufVxuIiwiLy8vIEFwcGxpZXMgYmFzaWMgdHJhbnNpdGlvbiBzZXR0aW5ncyB0byBhbiBlbGVtZW50LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIHRyYW5zaXRpb24tYmFzaWNzKFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gIEBpbmNsdWRlIC1tb3Rpb24tdWktZGVmYXVsdHM7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmc7XG4gIHRyYW5zaXRpb24tZGVsYXk6ICRkZWxheTtcbn1cblxuLy8vIFdyYXBzIHRoZSBjb250ZW50IGluIHRoZSBzZXR1cCBjbGFzcyBmb3IgYSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciAtIFN0YXRlIHRvIHNldHVwIGZvciB0cmFuc2l0aW9uLlxuQG1peGluIHRyYW5zaXRpb24tc3RhcnQoJGRpcikge1xuICAkc2VsZWN0b3I6IC1tdWktYnVpbGQtc2VsZWN0b3IobWFwLWdldCgkbW90aW9uLXVpLXN0YXRlcywgJGRpcikpO1xuXG4gIEBhdC1yb290IHtcbiAgICAjeyRzZWxlY3Rvcn0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBXcmFwcyB0aGUgY29udGVudCBpbiB0aGUgYWN0aXZlIGNsYXNzIGZvciBhIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyIC0gU3RhdGUgdG8gYWN0aXZhdGUgYSB0cmFuc2l0aW9uIG9uLlxuQG1peGluIHRyYW5zaXRpb24tZW5kKCRkaXIpIHtcbiAgJHNlbGVjdG9yOiAtbXVpLWJ1aWxkLXNlbGVjdG9yKG1hcC1nZXQoJG1vdGlvbi11aS1zdGF0ZXMsICRkaXIpLCB0cnVlKTtcblxuICBAYXQtcm9vdCB7XG4gICAgI3skc2VsZWN0b3J9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3RhZ2dlciBhbmltYXRpb24sIHdoaWNoIGNhbiBiZSB1c2VkIHdpdGggQW5ndWxhcidzIGBuZy1yZXBlYXRgLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheS1hbW91bnQgLSBBbW91bnQgb2YgdGltZSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyB0byBhZGQgYmV0d2VlbiBlYWNoIGl0ZW0ncyBhbmltYXRpb24uXG5AbWl4aW4gc3RhZ2dlcigkZGVsYXktYW1vdW50KSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6ICRkZWxheS1hbW91bnQ7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDA7IC8vIFByZXZlbnQgYWNjaWRlbnRhbCBDU1MgaW5oZXJpdGFuY2Vcbn1cbiIsIi8vIHNjc3MtbGludDpkaXNhYmxlIEltcG9ydGFudFJ1bGUsIFNwYWNlQWZ0ZXJDb21tYSwgU2luZ2xlTGluZVBlclByb3BlcnR5XG5cbkBtaXhpbiAtbW90aW9uLXVpLWRlZmF1bHRzIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogbWFwLWdldCgkbW90aW9uLXVpLXNwZWVkcywgZGVmYXVsdCk7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBtYXAtZ2V0KCRtb3Rpb24tdWktZWFzaW5ncywgZGVmYXVsdCk7XG59XG5cbi8vIFRyYW5zaXRpb25zXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuQG1peGluIG1vdGlvbi11aS10cmFuc2l0aW9ucyB7XG4gIC8vIFNsaWRlXG4gIC5zbGlkZS1pbi1kb3duICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgZG93bik7IH1cbiAgLnNsaWRlLWluLWxlZnQgICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICByaWdodCk7IH1cbiAgLnNsaWRlLWluLXVwICAgICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICB1cCk7IH1cbiAgLnNsaWRlLWluLXJpZ2h0ICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICBsZWZ0KTsgfVxuICAuc2xpZGUtb3V0LWRvd24gICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIGRvd24pOyB9XG4gIC5zbGlkZS1vdXQtcmlnaHQgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgcmlnaHQpOyB9XG4gIC5zbGlkZS1vdXQtdXAgICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgdXApOyB9XG4gIC5zbGlkZS1vdXQtbGVmdCAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgbGVmdCk7IH1cblxuICAvLyBGYWRlXG4gIC5mYWRlLWluICB7IEBpbmNsdWRlIG11aS1mYWRlKGluLCAgMCwgMSk7IH1cbiAgLmZhZGUtb3V0IHsgQGluY2x1ZGUgbXVpLWZhZGUob3V0LCAxLCAwKTsgfVxuXG4gIC8vIEhpbmdlXG4gIC5oaW5nZS1pbi1mcm9tLXRvcCAgICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgdG9wKTsgfVxuICAuaGluZ2UtaW4tZnJvbS1yaWdodCAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIHJpZ2h0KTsgfVxuICAuaGluZ2UtaW4tZnJvbS1ib3R0b20gICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIGJvdHRvbSk7IH1cbiAgLmhpbmdlLWluLWZyb20tbGVmdCAgICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICBsZWZ0KTsgfVxuICAuaGluZ2UtaW4tZnJvbS1taWRkbGUteCAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICB0b3AsICAgY2VudGVyKTsgfVxuICAuaGluZ2UtaW4tZnJvbS1taWRkbGUteSAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICByaWdodCwgY2VudGVyKTsgfVxuICAuaGluZ2Utb3V0LWZyb20tdG9wICAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHRvcCk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLXJpZ2h0ICAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCByaWdodCk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLWJvdHRvbSAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCBib3R0b20pOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1sZWZ0ICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgbGVmdCk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLW1pZGRsZS14IHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgdG9wLCAgIGNlbnRlcik7IH1cbiAgLmhpbmdlLW91dC1mcm9tLW1pZGRsZS15IHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgcmlnaHQsIGNlbnRlcik7IH1cblxuICAvLyBTY2FsZVxuICAuc2NhbGUtaW4tdXAgICAgeyBAaW5jbHVkZSBtdWktem9vbShpbiwgIDAuNSwgMSk7IH1cbiAgLnNjYWxlLWluLWRvd24gIHsgQGluY2x1ZGUgbXVpLXpvb20oaW4sICAxLjUsIDEpOyB9XG4gIC5zY2FsZS1vdXQtdXAgICB7IEBpbmNsdWRlIG11aS16b29tKG91dCwgMSwgMS41KTsgfVxuICAuc2NhbGUtb3V0LWRvd24geyBAaW5jbHVkZSBtdWktem9vbShvdXQsIDEsIDAuNSk7IH1cblxuICAvLyBTcGluXG4gIC5zcGluLWluICAgICB7IEBpbmNsdWRlIG11aS1zcGluKGluLCAgY3cpOyB9XG4gIC5zcGluLW91dCAgICB7IEBpbmNsdWRlIG11aS1zcGluKG91dCwgY3cpOyB9XG4gIC5zcGluLWluLWNjdyAgeyBAaW5jbHVkZSBtdWktc3BpbihpbiwgIGNjdyk7IH1cbiAgLnNwaW4tb3V0LWNjdyB7IEBpbmNsdWRlIG11aS1zcGluKG91dCwgY2N3KTsgfVxuXG4gIC8vIFRyYW5zaXRpb24gTW9kaWZpZXJzXG4gIC8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLXNwZWVkcyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtb3Rpb24tdWktZWFzaW5ncyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWRlbGF5cyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9LWRlbGF5IHsgdHJhbnNpdGlvbi1kZWxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQW5pbWF0aW9uc1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbkBtaXhpbiBtb3Rpb24tdWktYW5pbWF0aW9ucyB7XG4gIC5zaGFrZSAgICB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24oc2hha2UpOyB9XG4gIC5zcGluLWN3ICB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24oc3Bpbik7IH1cbiAgLnNwaW4tY2N3IHsgQGluY2x1ZGUgbXVpLWFuaW1hdGlvbihzcGluKGNjdykpOyB9XG4gIC53aWdnbGUgICB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24od2lnZ2xlKTsgfVxuXG4gIC5zaGFrZSxcbiAgLnNwaW4tY3csXG4gIC5zcGluLWNjdyxcbiAgLndpZ2dsZSB7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiBtYXAtZ2V0KCRtb3Rpb24tdWktc3BlZWRzLCBkZWZhdWx0KTtcbiAgfVxuXG4gIC8vIEFuaW1hdGlvbiBNb2RpZmllcnNcbiAgLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbiAgLmluZmluaXRlIHsgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7IH1cblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtb3Rpb24tdWktc3BlZWRzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0geyBhbmltYXRpb24tZHVyYXRpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWVhc2luZ3Mge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWRlbGF5cyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9LWRlbGF5IHsgYW5pbWF0aW9uLWRlbGF5OiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gSW50ZXJuYWwgY291bnRlciBmb3IgY3JlYXRpbmcgdW5pcXVlIGtleWZyYW1lIG5hbWVzXG4kLW11aS1jdXN0b206IDA7XG5cbi8vLyBDcmVhdGVzIGEga2V5ZnJhbWUgZnJvbSBvbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zLiBVc2UgdGhpcyBmdW5jdGlvbiBpbnN0ZWFkIG9mIGBtdWktYW5pbWF0aW9uYCBpZiB5b3Ugd2FudCB0byBjcmVhdGUgYSBrZXlmcmFtZSBhbmltYXRpb24gKndpdGhvdXQqIGF1dG9tYXRpY2FsbHkgYXNzaWduaW5nIGl0IHRvIHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbmFtZSAtIE5hbWUgb2YgdGhlIGtleWZyYW1lLlxuLy8vIEBwYXJhbSB7RnVuY3Rpb259ICRlZmZlY3RzLi4uIC0gT25lIG9yIG1vcmUgZWZmZWN0IGZ1bmN0aW9ucyB0byBidWlsZCB0aGUga2V5ZnJhbWUgd2l0aC5cbkBtaXhpbiBtdWkta2V5ZnJhbWVzKCRuYW1lLCAkZWZmZWN0cy4uLikge1xuICAkb2JqOiAtbXVpLXByb2Nlc3MtYXJncygkZWZmZWN0cy4uLik7XG4gICRvYmo6IG1hcC1yZW1vdmUoJG9iaiwgbmFtZSk7XG5cbiAgQGtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgLy8gTm93IGl0ZXJhdGUgdGhyb3VnaCBlYWNoIGtleWZyYW1lIHBlcmNlbnRhZ2VcbiAgICBAZWFjaCAkcGN0LCAkcHJvcHMgaW4gJG9iaiB7XG4gICAgICAjey1tdWkta2V5ZnJhbWUtcGN0KCRwY3QpfSB7XG4gICAgICAgIC8vIExhc3RseSwgaXRlcmF0ZSB0aHJvdWdoIGVhY2ggQ1NTIHByb3BlcnR5IHdpdGhpbiBhIHBlcmNlbnRhZ2UgYW5kIHByaW50IGl0IG91dFxuICAgICAgICBAZWFjaCAkcHJvcCwgJHZhbHVlIGluICRwcm9wcyB7XG4gICAgICAgICAgI3skcHJvcH06ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHN0cmluZyBmb3IgYSBDU1Mga2V5ZnJhbWUsIGJ5IGNvbnZlcnRpbmcgYSBsaXN0IG9mIG51bWJlcnMgdG8gYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCBvZiBwZXJjZW50YWdlIHZhbHVlcy5cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkaW5wdXQgLSBMaXN0IG9mIG51bWJlcnMgdG8gdXNlLlxuLy8vIEByZXR1cm4ge1N0cmluZ30gQSBzZXQgb2YgY29tbWEtc2VwYXJhdGVkIHBlcmNlbnRhZ2UgdmFsdWVzLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWkta2V5ZnJhbWUtcGN0KCRpbnB1dCkge1xuICAkb3V0cHV0OiAoKTtcblxuICBAaWYgdHlwZS1vZigkaW5wdXQpID09ICdudW1iZXInIHtcbiAgICAkb3V0cHV0OiAoJGlucHV0ICogMSUpO1xuICB9IEBlbHNlIGlmIHR5cGUtb2YoJGlucHV0KSA9PSAnbGlzdCcge1xuICAgIEBlYWNoICRpIGluICRpbnB1dCB7XG4gICAgICAkb3V0cHV0OiBhcHBlbmQoJG91dHB1dCwgKCRpICogMSUpLCBjb21tYSk7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkb3V0cHV0O1xufVxuXG4vLy8gUHJpbnRzIHRoZSBDU1MgcHJvcGVydGllcyBmcm9tIGEgc3BlY2lmaWMga2V5IGluIGEga2V5ZnJhbWVzIG1hcC4gVXNlZCB0byBib3Jyb3cgQ1NTIGZyb20ga2V5ZnJhbWUgZnVuY3Rpb25zIGZvciB1c2UgaW4gdHJhbnNpdGlvbnMuXG4vLy8gQHBhcmFtIHtNYXB9ICRrZiAtIEtleWZyYW1lIG1hcCB0byBleHRyYWN0IGZyb20uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRrZXkgLSBLZXkgaW4gdGhlIG1hcCB0byBwcmludCB0aGUgQ1NTIG9mLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIC1tdWkta2V5ZnJhbWUtZ2V0KCRrZiwgJGtleSkge1xuICAkbWFwOiBtYXAtZ2V0KCRrZiwgJGtleSk7XG5cbiAgQGVhY2ggJHByb3AsICR2YWx1ZSBpbiAkbWFwIG9yICgpIHtcbiAgICAvLyBTb21lIGtleWZyYW1lIG1hcHMgc3RvcmUgdHJhbnNmb3JtcyBhcyBxdW90ZWQgc3RyaW5nc1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ3N0cmluZycge1xuICAgICAgJHZhbHVlOiB1bnF1b3RlKCR2YWx1ZSk7XG4gICAgfVxuICAgICN7JHByb3B9OiAkdmFsdWU7XG4gIH1cbn1cblxuLy8vIFJlZm9ybWF0cyBhIG1hcCBjb250YWluaW5nIGtleXMgd2l0aCBhIGxpc3Qgb2YgdmFsdWVzLCBzbyB0aGF0IGVhY2gga2V5IGlzIGEgc2luZ2xlIHZhbHVlLlxuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHNwbGl0IHVwLlxuLy8vIEByZXR1cm4ge01hcH0gQSByZWZvcm1hdHRlZCBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1rZXlmcmFtZS1zcGxpdCgkbWFwKSB7XG4gICRuZXctbWFwOiAoKTtcblxuICAvLyBTcGxpdCBrZXlzIHdpdGggbXVsdGlwbGUgdmFsdWVzIGludG8gaW5kaXZpZHVhbCBrZXlzXG4gIEBlYWNoICRrZXksICRpdGVtIGluICRtYXAge1xuICAgICRrZXktdHlwZTogdHlwZS1vZigka2V5KTtcblxuICAgIEBpZiAka2V5LXR5cGUgPT0gJ251bWJlcicge1xuICAgICAgJG5ldy1tYXA6IG1hcC1tZXJnZSgkbmV3LW1hcCwgKCRrZXk6ICRpdGVtKSk7XG4gICAgfSBAZWxzZSBpZiAka2V5LXR5cGUgPT0gJ2xpc3QnIHtcbiAgICAgIEBlYWNoICRrIGluICRrZXkge1xuICAgICAgICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAoJGs6ICRpdGVtKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbmV3LW1hcDtcbn1cblxuLy8vIENvbWJpbmVzIGEgc2VyaWVzIG9mIGtleWZyYW1lIG9iamVjdHMgaW50byBvbmUuXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXBzLi4uIC0gQSBzZXJpZXMgb2YgbWFwcyB0byBtZXJnZSwgYXMgaW5kaXZpZHVhbCBwYXJhbWV0ZXJzLlxuLy8vIEByZXR1cm4ge01hcH0gQSBjb21iaW5lZCBrZXlmcmFtZSBvYmplY3QuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1rZXlmcmFtZS1jb21iaW5lKCRtYXBzLi4uKSB7XG4gICRuZXctbWFwOiAoKTtcblxuICAvLyBJdGVyYXRlIHRocm91Z2ggZWFjaCBtYXAgcGFzc2VkIGluXG4gIEBlYWNoICRtYXAgaW4gJG1hcHMge1xuICAgIEBpZiB0eXBlLW9mKCRtYXApID09ICdzdHJpbmcnIHtcbiAgICAgICRtYXA6IGNhbGwoJG1hcCk7XG4gICAgfVxuXG4gICAgJG1hcDogLW11aS1rZXlmcmFtZS1zcGxpdCgkbWFwKTtcblxuICAgIC8vIEl0ZXJhdGUgdGhyb3VnaCBlYWNoIGtleWZyYW1lIGluIHRoZSBtYXBcbiAgICAvLyAka2V5IGlzIHRoZSBrZXlmcmFtZSBwZXJjZW50YWdlXG4gICAgLy8gJHZhbHVlIGlzIGEgbWFwIG9mIENTUyBwcm9wZXJ0aWVzXG4gICAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgICAgJG5ldy12YWx1ZTogKCk7XG5cbiAgICAgIEBpZiBtYXAtaGFzLWtleSgkbmV3LW1hcCwgJGtleSkge1xuICAgICAgICAvLyBJZiB0aGUgbWFwIGFscmVhZHkgaGFzIHRoZSBrZXlmcmFtZSAlLCBhcHBlbmQgdGhlIG5ldyBwcm9wZXJ0eVxuICAgICAgICAkbmV3LXZhbHVlOiAtbXVpLW1lcmdlLXByb3BlcnRpZXMobWFwLWdldCgkbmV3LW1hcCwgJGtleSksICR2YWx1ZSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gT3RoZXJ3aXNlLCBjcmVhdGUgYSBuZXcgbWFwIHdpdGggdGhlIG5ldyBwcm9wZXJ0eVxuICAgICAgICAkbmV3LXZhbHVlOiAkdmFsdWU7XG4gICAgICB9XG5cbiAgICAgIC8vIEZpbmFsbHksIG1lcmdlIHRoZSBtb2RpZmllZCBrZXlmcmFtZSB2YWx1ZSBpbnRvIHRoZSBvdXRwdXQgbWFwXG4gICAgICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAoJGtleTogJG5ldy12YWx1ZSkpO1xuICAgIH1cbiAgfVxuXG4gIC8vIE1ha2UgYSBuYW1lIGZvciB0aGUga2V5ZnJhbWVzXG4gICQtbXVpLWN1c3RvbTogJC1tdWktY3VzdG9tICsgMSAhZ2xvYmFsO1xuICAkbWFwLW5hbWU6IChuYW1lOiAnY3VzdG9tLSN7JC1tdWktY3VzdG9tfScpO1xuICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAkbWFwLW5hbWUpO1xuXG4gIEByZXR1cm4gJG5ldy1tYXA7XG59XG5cbi8vLyBDb21iaW5lcyB0d28gbWFwcyBvZiBDU1MgcHJvcGVydGllcyBpbnRvIG9uZSBtYXAuIElmIGJvdGggbWFwcyBoYXZlIGEgdHJhbnNmb3JtIHByb3BlcnR5LCB0aGUgdmFsdWVzIGZyb20gZWFjaCB3aWxsIGJlIGNvbWJpbmVkIGludG8gb25lIHByb3BlcnR5LlxuLy8vIEBwYXJhbSB7TWFwfSAkb25lIC0gRmlyc3QgbWFwIHRvIG1lcmdlLlxuLy8vIEBwYXJhbSB7TWFwfSAkdHdvIC0gU2Vjb25kIG1hcCB0byBtZXJnZS5cbi8vLyBAcmV0dXJuIHtNYXB9IEEgY29tYmluZWQgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWktbWVyZ2UtcHJvcGVydGllcygkb25lLCAkdHdvKSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkb25lLCB0cmFuc2Zvcm0pIGFuZCBtYXAtaGFzLWtleSgkdHdvLCB0cmFuc2Zvcm0pIHtcbiAgICAkdHJhbnNmb3JtOiBqb2luKG1hcC1nZXQoJG9uZSwgdHJhbnNmb3JtKSwgbWFwLWdldCgkdHdvLCB0cmFuc2Zvcm0pKTtcbiAgICAkb25lOiBtYXAtbWVyZ2UoJG9uZSwgKHRyYW5zZm9ybTogJHRyYW5zZm9ybSkpO1xuICAgICR0d286IG1hcC1yZW1vdmUoJHR3bywgdHJhbnNmb3JtKTtcbiAgfVxuXG4gIEByZXR1cm4gbWFwLW1lcmdlKCRvbmUsICR0d28pO1xufVxuIiwiLy8vIENyZWF0ZXMgYSBzbGlkaW5nIHRyYW5zaXRpb24gYnkgdHJhbnNsYXRpbmcgdGhlIGVsZW1lbnQgaG9yaXpvbnRhbGx5IG9yIHZlcnRpY2FsbHkuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyZWN0aW9uIFtsZWZ0XSAtIERpcmVjdGlvbiB0byBzbGlkZSB0by4gQ2FuIGJlIGB1cGAsIGByaWdodGAsIGBkb3duYCwgb3IgYGxlZnRgLlxuLy8vIEBwYXJhbSB7TGVuZ3RofSAkYW1vdW50IFsxMDAlXSAtIExlbmd0aCBvZiB0aGUgc2xpZGUgYXMgYSBwZXJjZW50YWdlIHZhbHVlLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGZhZGUgW2ZhbHNlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLXNsaWRlIChcbiAgJHN0YXRlOiBpbixcbiAgJGRpcmVjdGlvbjogbGVmdCxcbiAgJGFtb3VudDogMTAwJSxcbiAgJGZhZGU6IG1hcC1nZXQoJG1vdGlvbi11aS1zZXR0aW5ncywgc2xpZGUtYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRzbGlkZTogc2xpZGUoJHN0YXRlLCAkZGlyZWN0aW9uLCAkYW1vdW50KTtcblxuICAvLyBDU1MgT3V0cHV0XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzbGlkZSwgMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAwLCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB9XG5cbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2xpZGUsIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgZmFkZSB0cmFuc2l0aW9uIGJ5IGFkanVzdGluZyB0aGUgb3BhY2l0eSBvZiB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGZyb20gWzBdIC0gT3BhY2l0eSB0byBzdGFydCBhdC4gTXVzdCBiZSBhIG51bWJlciBiZXR3ZWVuIDAgYW5kIDEuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0byBbMV0gLSBPcGFjaXR5IHRvIGVuZCBvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1mYWRlKFxuICAkc3RhdGU6IGluLFxuICAkZnJvbTogMCxcbiAgJHRvOiAxLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRmYWRlOiBmYWRlKCRmcm9tLCAkdG8pO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRmYWRlLCAwKTtcblxuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkZmFkZSwgMTAwKTtcbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBoaW5nZSB0cmFuc2l0aW9uIGJ5IHJvdGF0aW5nIHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGZyb20gW2xlZnRdIC0gRWRnZSBvZiB0aGUgZWxlbWVudCB0byByb3RhdGUgZnJvbS4gQ2FuIGJlIGB0b3BgLCBgcmlnaHRgLCBgYm90dG9tYCwgb3IgYGxlZnRgLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGF4aXMgW2VkZ2VdIC0gQXhpcyBvZiB0aGUgZWxlbWVudCB0byByb3RhdGUgb24uIENhbiBiZSBgZWRnZWAgb3IgYGNlbnRlcmAuXG4vLy8gQHBhcmFtIHtMZW5ndGh9ICRwZXJzcGVjdGl2ZSBbMjAwMHB4XSAtIFBlcmNlaXZlZCBkaXN0YW5jZSBiZXR3ZWVuIHRoZSB2aWV3ZXIgYW5kIHRoZSBlbGVtZW50LiBBIGhpZ2hlciBudW1iZXIgd2lsbCBtYWtlIHRoZSByb3RhdGlvbiBlZmZlY3QgbW9yZSBwcm9ub3VuY2VkLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHR1cm4tb3JpZ2luIFtmcm9tLWJhY2tdIC0gU2lkZSBvZiB0aGUgZWxlbWVudCB0byBzdGFydCB0aGUgcm90YXRpb24gZnJvbS4gQ2FuIGJlIGBmcm9tLWJhY2tgIG9yIGBmcm9tLWZyb250YC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFt0cnVlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLWhpbmdlIChcbiAgJHN0YXRlOiBpbixcbiAgJGZyb206IGxlZnQsXG4gICRheGlzOiBlZGdlLFxuICAkcGVyc3BlY3RpdmU6IDIwMDBweCxcbiAgJHR1cm4tb3JpZ2luOiBmcm9tLWJhY2ssXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIGhpbmdlLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkaGluZ2U6IGhpbmdlKCRzdGF0ZSwgJGZyb20sICRheGlzLCAkcGVyc3BlY3RpdmUsICR0dXJuLW9yaWdpbik7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJGhpbmdlLCAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDAsIDEpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRoaW5nZSwgMTAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDEsIDApO1xuICAgIH1cbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBzY2FsaW5nIHRyYW5zaXRpb24uIEEgc2NhbGUgb2YgYDFgIG1lYW5zIHRoZSBlbGVtZW50IGlzIHRoZSBzYW1lIHNpemUuIExhcmdlciBudW1iZXJzIG1ha2UgdGhlIGVsZW1lbnQgYmlnZ2VyLCB3aGlsZSBudW1iZXJzIGxlc3MgdGhhbiAxIG1ha2UgdGhlIGVsZW1lbnQgc21hbGxlci5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGZyb20gWzEuNV0gLSBTaXplIHRvIHN0YXJ0IGF0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZnJvbSBbMV0gLSBTaXplIHRvIGVuZCBhdC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFt0cnVlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLXpvb20oXG4gICRzdGF0ZTogaW4sXG4gICRmcm9tOiAxLjUsXG4gICR0bzogMSxcbiAgJGZhZGU6IG1hcC1nZXQoJG1vdGlvbi11aS1zZXR0aW5ncywgc2NhbGUtYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRzY2FsZTogem9vbSgkZnJvbSwgJHRvKTtcblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2NhbGUsIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNjYWxlLCAxMDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIHNwaW5uaW5nIHRyYW5zaXRpb24gYnkgcm90YXRpbmcgdGhlIGVsZW1lbnQuIFRoZSBgdHVybmAgdW5pdCBpcyB1c2VkIHRvIHNwZWNpZnkgaG93IGZhciB0byByb3RhdGUuIGAxdHVybmAgaXMgZXF1YWwgdG8gYSAzNjAtZGVncmVlIHNwaW4uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZGlyZWN0aW9uIFtjd10gLSBEaXJlY3Rpb24gdG8gc3Bpbi4gU2hvdWxkIGJlIGBjd2AgKGNsb2Nrd2lzZSkgb3IgYGNjd2AgKGNvdW50ZXJjbG9ja3dpc2UpLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYW1vdW50IFswLjc1dHVybl0gLSBBbW91bnQgdG8gZWxlbWVudCB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFtmYWxzZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1zcGluKFxuICAkc3RhdGU6IGluLFxuICAkZGlyZWN0aW9uOiBjdyxcbiAgJGFtb3VudDogMC43NXR1cm4sXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIHNwaW4tYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRzcGluOiBzcGluKCRzdGF0ZSwgJGRpcmVjdGlvbiwgJGFtb3VudCk7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNwaW4sIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNwaW4sIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEga2V5ZnJhbWUgZnJvbSBvbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zIGFuZCBhc3NpZ25zIGl0IHRvIHRoZSBlbGVtZW50IGJ5IGFkZGluZyB0aGUgYGFuaW1hdGlvbi1uYW1lYCBwcm9wZXJ0eS5cbi8vLyBAcGFyYW0ge0Z1bmN0aW9ufSAkZWZmZWN0cy4uLiAtIE9uZSBvciBtb3JlIGVmZmVjdCBmdW5jdGlvbnMgdG8gYnVpbGQgdGhlIGtleWZyYW1lIHdpdGguXG5AbWl4aW4gbXVpLWFuaW1hdGlvbigkYXJncy4uLikge1xuICAkbmFtZTogbWFwLWdldCgtbXVpLXByb2Nlc3MtYXJncygkYXJncy4uLiksIG5hbWUpO1xuICBAaW5jbHVkZSBtdWkta2V5ZnJhbWVzKCRuYW1lLCAkYXJncy4uLik7XG4gIGFuaW1hdGlvbi1uYW1lOiB1bnF1b3RlKCRuYW1lKTtcbn1cbiIsIkBjaGFyc2V0ICd1dGYtOCc7XG5cblxuQGltcG9ydCAnc2V0dGluZ3MnO1xuQGltcG9ydCAnZm91bmRhdGlvbic7XG5AaW1wb3J0ICdtb3Rpb24tdWknO1xuXG5AaW5jbHVkZSBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXM7XG4vL0BpbmNsdWRlIGZvdW5kYXRpb24tZ3JpZDtcbi8vQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWdyaWQ7XG5cbkBpbmNsdWRlIGZvdW5kYXRpb24teHktZ3JpZC1jbGFzc2VzO1xuQGluY2x1ZGUgZm91bmRhdGlvbi10eXBvZ3JhcGh5O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b247XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWZvcm1zO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1yYW5nZS1pbnB1dDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb24tbWVudTtcbkBpbmNsdWRlIGZvdW5kYXRpb24tYmFkZ2U7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWJyZWFkY3J1bWJzO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b24tZ3JvdXA7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWNhbGxvdXQ7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWNhcmQ7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbjtcbkBpbmNsdWRlIGZvdW5kYXRpb24tbWVudTtcbkBpbmNsdWRlIGZvdW5kYXRpb24tbWVudS1pY29uO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1kcmlsbGRvd24tbWVudTtcbkBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd247XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duLW1lbnU7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQ7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWxhYmVsO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1tZWRpYS1vYmplY3Q7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLW9mZi1jYW52YXM7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLW9yYml0O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1wYWdpbmF0aW9uO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1wcm9ncmVzcy1iYXI7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXNsaWRlcjtcbkBpbmNsdWRlIGZvdW5kYXRpb24tc3RpY2t5O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1yZXZlYWw7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXN3aXRjaDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tdGFibGU7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXRhYnM7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXRodW1ibmFpbDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tdGl0bGUtYmFyO1xuQGluY2x1ZGUgZm91bmRhdGlvbi10b29sdGlwO1xuQGluY2x1ZGUgZm91bmRhdGlvbi10b3AtYmFyO1xuQGluY2x1ZGUgZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXM7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsb2F0LWNsYXNzZXM7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtY2xhc3NlcztcblxuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1wcm90b3R5cGUtY2xhc3NlcztcblxuQGluY2x1ZGUgbW90aW9uLXVpLXRyYW5zaXRpb25zO1xuQGluY2x1ZGUgbW90aW9uLXVpLWFuaW1hdGlvbnM7XG5cbi8qXG4gIE15IGN1c3RvbSBzdHlsZXM6XG4gIEFkZCB5b3VyIHNjc3MgZmlsZXMgYmVsb3cgdG8gc3RydWN0dXJlIHlvdXIgcHJvamVjdCBzdHlsZXNcbiovXG5cbi8vIEdsb2JhbFxuQGltcG9ydCBcImdsb2JhbC9fYWNjZXNzaWJpbGl0eVwiO1xuQGltcG9ydCBcImdsb2JhbC9jb2xvcnNcIjtcbkBpbXBvcnQgXCJnbG9iYWwvd3AtYWRtaW5cIjtcbkBpbXBvcnQgXCJnbG9iYWwvd3Atb3ZlcnJpZGVzXCI7XG5AaW1wb3J0IFwiZ2xvYmFsL2FsbG9uc3ktY29yZVwiO1xuQGltcG9ydCBcImdsb2JhbC9icy1wb3B1cFwiO1xuQGltcG9ydCBcImdsb2JhbC9pbnN0YWZlZWRcIjtcbkBpbXBvcnQgXCJnbG9iYWwvc2xpY2tcIjtcbkBpbXBvcnQgXCJnbG9iYWwvd29vY29tbWVyY2VcIjtcbkBpbXBvcnQgXCJnbG9iYWwvYnMtc3R5bGVzXCI7XG5cbi8vIE1vZHVsZXNcbkBpbXBvcnQgXCJtb2R1bGVzL25hdmlnYXRpb25cIjtcbkBpbXBvcnQgXCJtb2R1bGVzL2NvbnRlbnRcIjtcbkBpbXBvcnQgXCJtb2R1bGVzL2Zvb3RlclwiO1xuQGltcG9ydCBcIm1vZHVsZXMvZWRpdG9yLXN0eWxlXCI7XG5cbi8vIENvbXBvbmVudHNcbkBpbXBvcnQgXCJjb21wb25lbnRzL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2NhcmRzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9mZWF0dXJlZC1pbWFnZVwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvZGl2aWRlcnNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2xpbmtzXCI7XG5cbi8vIFRlbXBsYXRlc1xuQGltcG9ydCBcInRlbXBsYXRlcy9mcm9udFwiO1xuQGltcG9ydCBcInRlbXBsYXRlcy9kYXRhYmFzZVwiO1xuLy8gQGltcG9ydCBcInRlbXBsYXRlcy9raXRjaGVuLXNpbmtcIjtcbiIsIi8vIFRleHQgbWVhbnQgb25seSBmb3Igc2NyZWVuIHJlYWRlcnMuIEFkZHJlc3NlcyBwYXJ0IG9mIHRoZW1lLWNoZWNrIGlzc3VlICM4NDAuXG4vLyBodHRwczovL2dpdGh1Yi5jb20vQXV0b21hdHRpYy9fcy9ibG9iL21hc3Rlci9zdHlsZS5jc3Ncbi5zY3JlZW4tcmVhZGVyLXRleHQge1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweDtcbiAgd2lkdGg6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnNjcmVlbi1yZWFkZXItdGV4dDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMWYxZjE7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYm94LXNoYWRvdzogMCAwIDJweCAycHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBjbGlwOiBhdXRvICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMjE3NTliO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBsZWZ0OiA1cHg7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIHBhZGRpbmc6IDE1cHggMjNweCAxNHB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRvcDogNXB4O1xuICB3aWR0aDogYXV0bztcbiAgei1pbmRleDogMTAwMDAwOyAvLyBBYm92ZSBXUCB0b29sYmFyLlxufVxuIiwiLy8gRml4IHRoZSBpc3N1ZSB3aGVyZSB0aGUgV1AgYWRtaW4tYmFyIG92ZXJsYXBzIHRoZSBtb2JpbGUgbWVudVxuI3dwYWRtaW5iYXIge1xuICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDtcbn1cblxuLy8gTWFrZSBzdXJlIHRoYXQgdGhlIFdQIGFkbWluLWJhciBkb2VzIG5vdCBvdmVybGFwIEZvdW5kYXRpb24gY29tcG9uZW50c1xuYm9keS5hZG1pbi1iYXIge1xuICAvLyBPZmZzZXQgc3RpY2t5IHRvcCBiYXJcbiAgJi5mLXRvcGJhci1maXhlZCB7XG4gICAgLnN0aWNreS5maXhlZCB7XG4gICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMik7XG4gICAgfVxuICB9XG4gIC8vIE9mZnNldCBtb2JpbGUgb2ZmLWNhbnZhcyBtZW51XG4gICYub2ZmY2FudmFzIHtcbiAgICAub2ZmLWNhbnZhcyB7XG4gICAgICB0b3A6IHJlbS1jYWxjKDQ2KTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzgzKSB7XG4gICAgICAgIHRvcDogcmVtLWNhbGMoMzIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLndwLWNhcHRpb24gPiBmaWdjYXB0aW9uIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgY29sb3I6ICM5OTk7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMDtcbn1cblxucC53cC1jYXB0aW9uLXRleHR7XG4gIGZvbnQtc2l6ZTo5MCU7XG4gIGNvbG9yOiAjNjY2O1xuICBwYWRkaW5nOnJlbS1jYWxjKDEwKSAwO1xufVxuXG4uYWxpZ25sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gIG1hcmdpbjogMDtcbn1cblxuLmFsaWducmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgbWFyZ2luOiAwO1xufVxuXG4uYWxpZ25jZW50ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbiIsIi8qKioqIFRBQkxFIE9GIENPTlRFTlRTICoqKipcblxuMDAuIFZBUklBQkxFU1xuMC4gQUNDRVNTSUJJTFRZIFRPT0xCQVIgU1RZTEVTXG4xLiBQUkVMT0FERVIgU1RZTEVTXG4yLiBHRU5FUkFMIFNUWUxFU1xuMy4gSEVBREVSIFNUWUxFU1xuICAzYS4gSGVhZGVyIE9wdGlvbiBPbmUgU3R5bGVzXG4gIDNiLiBIZWFkZXIgT3B0aW9uIFR3byBTdHlsZXNcbiAgM2MuIEhlYWRlciBPcHRpb24gVGhyZWUgU3R5bGVzXG4gIDNkLiBIZWFkZXIgT3B0aW9uIEZvdXIgU3R5bGVzXG4gIDNlLiBNb2JpbGUgT2ZmLUNhbnZhcyBNZW51IFN0eWxlc1xuICAzZi4gTW9iaWxlIFRvcCBCYXIgTWVudSBTdHlsZXNcbiAgM2cuIFN0aWNreSBIZWFkZXIgU3R5bGVzXG4gIDNoLiBIZWFkZXIgT3ZlcnJpZGVzXG5cbjQuIEhPTUUgUEFHRSBTVFlMRVNcblxuNS4gSU5URVJOQUwgUEFHRSBTVFlMRVNcbiAgNWEuIEJyZWFkY3J1bWJzIFN0eWxlc1xuICA1Yi4gUGFnZSBUaXRsZSBhbmQgVGl0bGUgQmFyIFN0eWxlc1xuICA1Yy4gRGVmYXVsdCBQYWdlIFRlbXBsYXRlIFN0eWxlc1xuICA1ZC4gRnVsbCBXaWR0aCBQYWdlIFRlbXBsYXRlIFN0eWxlc1xuICA1ZS4gUG9zdCBOYXZpZ2F0aW9uIEZvb3RlciBTdHlsZXNcbiAgNWYuIExlZnQgU2lkZWJhciBQYWdlIFRlbXBsYXRlIFN0eWxlc1xuICA1Zy4gU2lkZWJhciBTdHlsZXNcbiAgNWguIFNvY2lhbCBTaGFyaW5nIFNob3J0Y29kZSBTdHlsZXNcbiAgNWkuIEdhbGxlcnkgU2hvcnRjb2RlIFN0eWxlc1xuICA1ai4gUGFnaW5hdGlvbiBTdHlsZXNcbiAgNWsuIEdyYXZpdHkgRm9ybSBTdHlsZXNcbiAgNWwuIFNlYXJjaCBSZXN1bHRzIFN0eWxlc1xuXG42LiBCTE9HIFBBR0UgQU5EIFNJTkdMRSBCTE9HIFBPU1QgU1RZTEVTXG4gIDZhLiBCbG9nIExvb3AgU2hvcnRjb2RlIFN0eWxlc1xuICA2Yi4gQ29tbWVudHMgU2VjdGlvbiBTdHlsZXNcbiAgNmMuIEFKQVggQmxvZyBMb29wIFNob3J0Y29kZSBTdHlsZXNcblxuNy4gUE9SVEZPTElPIFNUWUxFU1xuXG44LiBTRVJWSUNFUyBTVFlMRVNcblxuOS4gU1RBRkYgU1RZTEVTXG5cbjEwLiA0MDQgUEFHRSBTVFlMRVNcblxuMTEuIEZPT1RFUiBTVFlMRVNcblxuKiogRU5EIFRBQkxFIE9GIENPTlRFTlRTICoqL1xuXG5cbi8qKioqIDAwLiBWQVJJQUJMRVMgKioqKi9cbkBpbXBvcnQgXCJicy12YXJpYWJsZXNcIjtcblxuLyoqKiogMC4gQUNDRVNTSUJJTFRZIFRPT0xCQVIgU1RZTEVTICoqKiovXG5AaW1wb3J0IFwiYnMtYTExeVwiO1xuXG4vKioqKiAxLiBQUkVMT0FERVIgU1RZTEVTICoqKiovXG5AaW1wb3J0IFwicHJlbG9hZGVyXCI7XG5cbi8qKioqIDIuIEdFTkVSQUwgU1RZTEVTICoqKiovXG5AaW1wb3J0IFwiZ2VuZXJhbC1zdHlsZXNcIjtcblxuLyoqKiogMy4gSEVBREVSIFNUWUxFUyAqKioqL1xuQGltcG9ydCBcImhlYWRlclwiO1xuXG4vKiAzYS4gSGVhZGVyIE9wdGlvbiBPbmUgU3R5bGVzICovXG5AaW1wb3J0IFwiaGVhZGVyLW9uZVwiO1xuXG4vKiAzYi4gSGVhZGVyIE9wdGlvbiBUd28gU3R5bGVzICovXG5AaW1wb3J0IFwiaGVhZGVyLXR3b1wiO1xuXG4vKiAzYy4gSGVhZGVyIE9wdGlvbiBUaHJlZSBTdHlsZXMgKi9cbkBpbXBvcnQgXCJoZWFkZXItdGhyZWVcIjtcblxuLyogM2QuIEhlYWRlciBPcHRpb24gRm91ciBTdHlsZXMgKi9cbkBpbXBvcnQgXCJoZWFkZXItZm91clwiO1xuXG4vKiAzZS4gTW9iaWxlIE9mZi1DYW52YXMgTWVudSBTdHlsZXMgKi9cbkBpbXBvcnQgXCJvZmYtY2FudmFzXCI7XG5cbi8qIDNmLiBNb2JpbGUgVG9wIEJhciBNZW51IFN0eWxlcyAqL1xuQGltcG9ydCBcIm1lbnUtdG9wLWJhclwiO1xuXG4vKiAzZy4gU3RpY2t5IEhlYWRlciBTdHlsZXMgKi9cbkBpbXBvcnQgXCJzdGlja3ktaGVhZGVyXCI7XG5cbi8qIDNoLiBIZWFkZXIgT3ZlcnJpZGVzICovXG5AaW1wb3J0IFwiaGVhZGVyLW92ZXJyaWRlc1wiO1xuXG5cbi8qKioqIDQuIEhPTUUgUEFHRSBTVFlMRVMgKioqKi9cbkBpbXBvcnQgXCJob21lLXBhZ2VcIjtcblxuXG4vKioqKiA1LiBJTlRFUk5BTCBQQUdFIFNUWUxFUyAqKioqL1xuLyogNWEuIEJyZWFkY3J1bWJzIFN0eWxlcyAqL1xuQGltcG9ydCBcImJzLWJyZWFkY3J1bWJzXCI7XG5cbi8qIDViLiBQYWdlIFRpdGxlIGFuZCBUaXRsZSBCYXIgU3R5bGVzICovXG5AaW1wb3J0IFwiYnMtdGl0bGUtc3R5bGVzXCI7XG5cbi8qIDVjLiBEZWZhdWx0IFBhZ2UgVGVtcGxhdGUgU3R5bGVzICovXG5AaW1wb3J0IFwiZGVmYXVsdC1wYWdlLXN0eWxlc1wiO1xuXG4vKiA1ZC4gRnVsbCBXaWR0aCBQYWdlIFRlbXBsYXRlIFN0eWxlcyAqL1xuQGltcG9ydCBcImZ1bGwtd2lkdGgtcGFnZS1zdHlsZXNcIjtcblxuLyogNWUuIFBvc3QgTmF2aWdhdGlvbiBGb290ZXIgU3R5bGVzICovXG5AaW1wb3J0IFwicG9zdC1uYXZcIjtcblxuLyogNWYuIExlZnQgU2lkZWJhciBQYWdlIFRlbXBsYXRlIFN0eWxlcyAqL1xuXG4vKiA1Zy4gU2lkZWJhciBTdHlsZXMgKi9cbkBpbXBvcnQgXCJzaWRlYmFyLXN0eWxlc1wiO1xuXG4vKiA1aC4gU29jaWFsIFNoYXJpbmcgU2hvcnRjb2RlIFN0eWxlcyAqL1xuQGltcG9ydCBcInNvY2lhbC1zaGFyZVwiO1xuXG4vKiA1aS4gR2FsbGVyeSBTaG9ydGNvZGUgU3R5bGVzICovXG5AaW1wb3J0IFwiZ2FsbGVyeS1zaG9ydGNvZGVcIjtcblxuLyogNWouIFBhZ2luYXRpb24gU3R5bGVzICovXG5AaW1wb3J0IFwiYnMtcGFnaW5hdGlvblwiO1xuXG4vKiA1ay4gR3Jhdml0eSBGb3JtIFN0eWxlcyAqL1xuQGltcG9ydCBcImJzLWdyYXZpdHktZm9ybXNcIjtcblxuLyogNWwuIFNlYXJjaCBSZXN1bHRzIFN0eWxlcyAqL1xuQGltcG9ydCBcImJzLXNlYXJjaC1yZXN1bHRzXCI7XG5cblxuLyoqKiogNi4gQkxPRyBQQUdFIEFORCBTSU5HTEUgQkxPRyBQT1NUIFNUWUxFUyAqKioqL1xuQGltcG9ydCBcImJzLWJsb2ctc3R5bGVzXCI7XG5cbi8qIDZhLiBCbG9nIExvb3AgU2hvcnRjb2RlIFN0eWxlcyAqL1xuQGltcG9ydCBcImJsb2ctbG9vcC1zaG9ydGNvZGVcIjtcblxuLyogNmIuIENvbW1lbnRzIFNlY3Rpb24gU3R5bGVzICovXG5AaW1wb3J0IFwiYnMtY29tbWVudHNcIjtcblxuLyogNmMuIEFKQVggQmxvZyBMb29wIFNob3J0Y29kZSBTdHlsZXMgKi9cbkBpbXBvcnQgXCJhamF4LWJsb2ctbG9vcC1zaG9ydGNvZGVcIjtcblxuLyoqKiogNy4gUE9SVEZPTElPIFNUWUxFUyAqKioqL1xuLy8gQGltcG9ydCBcImdsb2JhbC9icy1wb3J0Zm9saW9cIjtcblxuXG4vKioqKiA4LiBTRVJWSUNFUyBTVFlMRVMgKioqKi9cbi8vIEBpbXBvcnQgXCJnbG9iYWwvYnMtc2VydmljZXNcIjtcblxuXG4vKioqKiA5LiBTVEFGRiBTVFlMRVMgKioqKi9cbkBpbXBvcnQgXCJicy1zdGFmZlwiO1xuXG5cbi8qKioqIDEwLiA0MDQgUEFHRSBTVFlMRVMgKioqKi9cbkBpbXBvcnQgXCI0MDQtc3R5bGVzXCI7XG5cblxuLyoqKiogMTEuIEZPT1RFUiBTVFlMRVMgKioqKi9cbkBpbXBvcnQgXCJicy1mb290ZXJcIjtcbiIsIi5zY3JlZW4tcmVhZGVyLXNob3J0Y3V0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IHJlbS1jYWxjKC05OTk5KTtcblxuICAmOmZvY3VzIHtcbiAgICBsZWZ0OiA2cHg7XG4gICAgdG9wOiA3cHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHBhZGRpbmc6IDE1cHggMjNweCAxNHB4O1xuICAgIGJhY2tncm91bmQ6ICNmMWYxZjE7XG4gICAgY29sb3I6ICMwMDczYWE7XG4gICAgei1pbmRleDogMTAwMDAwO1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJveC1zaGFkb3c6IDAgMCAycHggMnB4IHJnYmEoMCwwLDAsLjYpO1xuICB9XG59XG4udG9vbHRpcCB7XG4gIGJhY2tncm91bmQ6ICRsdHllbGxvdztcbiAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoMyk7XG4gIGJvcmRlcjogcmVtLWNhbGMoMSkgc29saWQgJGJsdWU7XG4gIGNvbG9yOiAkYmxhY2s7XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXgtd2lkdGg6IHJlbS1jYWxjKDIyMCk7XG4gIHBhZGRpbmc6IHJlbS1jYWxjKDYpIHJlbS1jYWxjKDEwKTtcbiAgd2lkdGg6IGF1dG87XG5cbiAgJi5yaWdodDpiZWZvcmUge1xuICAgIGJvcmRlcjogaW5zZXQgcmVtLWNhbGMoNikgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICRsdHllbGxvdyB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIHotaW5kZXg6IDEwO1xuICB9XG4gICYucmlnaHQ6YWZ0ZXIge1xuXG4gICAgYm9yZGVyOiBpbnNldCByZW0tY2FsYyg4KSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJGJsdWUgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHdpZHRoOiAwO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbn1cbmRpdiNhMTF5LXRvb2xiYXIge1xuICBib3JkZXI6IHJlbS1jYWxjKDEpIHNvbGlkICRncmF5O1xuICBib3JkZXItcmFkaXVzOiAwIHJlbS1jYWxjKDQpIHJlbS1jYWxjKDQpIDA7XG4gIC8vIGJveC1zaGFkb3c6IHJlbS1jYWxjKDEpIHJlbS1jYWxjKDQpIHJlbS1jYWxjKDUpICRibGFjaztcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB6LWluZGV4OiAxMDAyO1xuXG4gIGRpdiNhMTF5LWZvbnRzaXplLCBkaXYjYTExeS1jb250cmFzdCB7XG5cbiAgICBidXR0b24ge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsMjU1LDI1NSwuODUpO1xuICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIyKTtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwKSByZW0tY2FsYyg2KTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwpO1xuXG4gICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgfVxuICAgICAgJi5hMTF5LWZvbnRzaXplIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMCByZW0tY2FsYyg0KSAwIDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206IHJlbS1jYWxjKDEpIHNvbGlkICRncmF5O1xuICAgICAgfVxuICAgICAgJi5hMTF5LWNvbnRyYXN0IHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIHJlbS1jYWxjKDQpIDA7XG4gICAgICB9XG4gICAgICAmLmExMXktYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGdyYXk7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgJi5hMTF5LWZvbnRzaXplIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiByZW0tY2FsYygxKSBzb2xpZCAkbHRncmF5ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHNwYW5bZGF0YS10b29sdGlwXSB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLmExMXktbGVmdCB7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgQG1lZGlhICN7JGJyZWFrNjQwfSB7XG4gICAgICBib3R0b206IHJlbS1jYWxjKDE1KTtcbiAgICAgIHRvcDogYXV0bztcbiAgICAgIHRyYW5zZm9ybTogbm9uZTtcblxuICAgICAgJi5iYWNrdG9wLWxlZnQge1xuICAgICAgICBib3R0b206IHJlbS1jYWxjKDc1KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5hMTF5LXJpZ2h0IHtcbiAgICAvLyBib3gtc2hhZG93OiByZW0tY2FsYygtMSkgcmVtLWNhbGMoNCkgcmVtLWNhbGMoNSkgJGJsYWNrO1xuICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDQpIDAgMCByZW0tY2FsYyg0KTtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgQG1lZGlhICN7JGJyZWFrNjQwfSB7XG4gICAgICBib3R0b206IHJlbS1jYWxjKDE1KTtcbiAgICAgIHRvcDogYXV0bztcbiAgICAgIHRyYW5zZm9ybTogbm9uZTtcblxuICAgICAgJi5iYWNrdG9wLXJpZ2h0IHtcbiAgICAgICAgYm90dG9tOiByZW0tY2FsYyg3NSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgZGl2I2ExMXktZm9udHNpemUsIGRpdiNhMTF5LWNvbnRyYXN0IHtcblxuICAgICAgYnV0dG9uIHtcblxuICAgICAgICAmLmExMXktZm9udHNpemUge1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDQpIDAgMCAwO1xuICAgICAgICB9XG4gICAgICAgICYuYTExeS1jb250cmFzdCB7XG4gICAgICAgICAgLy8gYm9yZGVyLXJhZGl1czogMCAwIDAgcmVtLWNhbGMoMyk7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKioqKiBUT0dHTEUgRk9OVFNJWkUgU1RZTEVTICoqKiovXG5odG1sLmExMXktZm9udHNpemUge1xuXG4gIC5icy1idG4sIC5idXR0b24sXG4gIGhlYWRlciNtYXN0aGVhZCAuYWx0LW5hdi13cmFwcGVyIC5hbHQtbmF2LW15LWNhcnQgYSxcbiAgLnRvcC1iYXItc29jaWFsIHVsIGxpLmN1c3RvbS1idXR0b24gYSxcbiAgbmF2Lm9mZi1jYW52YXMgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkuY3VzdG9tLWJ1dHRvbiBhLFxuICBuYXYub2ZmLWNhbnZhcyAuYWx0LW5hdi1teS1jYXJ0IGEge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApICFpbXBvcnRhbnQ7XG4gIH1cbiAgcCwgYSwgbGksIHNwYW4sIHRpbWUsIHN0cm9uZywgZW0sIGNvZGUge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICB9XG4gIGgyLCBoMiBzcGFuLCBoMiBhIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDM0KSAhaW1wb3J0YW50O1xuICB9XG4gIGgzLCBoMyBzcGFuLCBoMyBhLFxuICBib2R5Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzID4gbGkucHJvZHVjdCA+IGEgLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGUsIGJvZHkud29vY29tbWVyY2UtcGFnZSB1bC5wcm9kdWN0cyA+IGxpLnByb2R1Y3QgPiBhIC53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlLCBkaXYud29vY29tbWVyY2UgdWwucHJvZHVjdHMgPiBsaS5wcm9kdWN0ID4gYSAud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X190aXRsZSB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygzMCkgIWltcG9ydGFudDtcbiAgfVxuICBoNCwgaDQgc3BhbiwgaDQgYSxcbiAgaDUsIGg1IHNwYW4sIGg1IGEsXG4gIGg2LCBoNiBzcGFuLCBoNiBhIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDI2KSAhaW1wb3J0YW50O1xuICB9XG4gIG5hdi5vZmYtY2FudmFzIC5tZW51ID4gbGkgPiBhLFxuICBoZWFkZXIjbWFzdGhlYWQgLm1lbnUgPiBsaSA+IGEge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpICFpbXBvcnRhbnQ7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHJlbS1jYWxjKC0xKTtcbiAgfVxuICBoZWFkZXIjbWFzdGhlYWQgLnNpdGUtdGl0bGUtYmFyLnRpdGxlLWJhciBidXR0b24ubWVudS1pY29uIHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTApICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmJyZWFkY3J1bWJzLXdyYXBwZXIgI2JyZWFkY3J1bWJzIGxpLFxuICAuYnJlYWRjcnVtYnMtd3JhcHBlciAjYnJlYWRjcnVtYnMgbGkgYSxcbiAgYm9keS53b29jb21tZXJjZSAuYnJlYWRjcnVtYnMtd3JhcHBlciBuYXYud29vY29tbWVyY2UtYnJlYWRjcnVtYiwgYm9keS53b29jb21tZXJjZS1wYWdlIC5icmVhZGNydW1icy13cmFwcGVyIG5hdi53b29jb21tZXJjZS1icmVhZGNydW1iLFxuICBib2R5Lndvb2NvbW1lcmNlIC5icmVhZGNydW1icy13cmFwcGVyIG5hdi53b29jb21tZXJjZS1icmVhZGNydW1iIHNwYW4uc2VwYXJhdG9yLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLmJyZWFkY3J1bWJzLXdyYXBwZXIgbmF2Lndvb2NvbW1lcmNlLWJyZWFkY3J1bWIgc3Bhbi5zZXBhcmF0b3IsIGRpdi53b29jb21tZXJjZSAuYnJlYWRjcnVtYnMtd3JhcHBlciBuYXYud29vY29tbWVyY2UtYnJlYWRjcnVtYiBzcGFuLnNlcGFyYXRvcixcbiAgYm9keS53b29jb21tZXJjZSAuYnJlYWRjcnVtYnMtd3JhcHBlciBuYXYud29vY29tbWVyY2UtYnJlYWRjcnVtYiBhLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLmJyZWFkY3J1bWJzLXdyYXBwZXIgbmF2Lndvb2NvbW1lcmNlLWJyZWFkY3J1bWIgYSwgZGl2Lndvb2NvbW1lcmNlIC5icmVhZGNydW1icy13cmFwcGVyIG5hdi53b29jb21tZXJjZS1icmVhZGNydW1iIGEge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICB9XG4gIC5lbnRyeS1jb250ZW50IHtcblxuICAgIGZpZ3VyZS53cC1jYXB0aW9uIGZpZ2NhcHRpb24ud3AtY2FwdGlvbi10ZXh0IHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgIH1cbiAgfVxuICBsYWJlbCxcbiAgLmdmb3JtX3dyYXBwZXIgLnRvcF9sYWJlbCAuZ2ZpZWxkX2xhYmVsIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG4gIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgbGkuZ2ZpZWxkIC5naW5wdXRfY29tcGxleCBpbnB1dCArIGxhYmVsIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KSAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG4gIGgxLmVudHJ5LXRpdGxlIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDQwKSAhaW1wb3J0YW50O1xuICB9XG4gIGFzaWRlLnNpZGViYXIge1xuXG4gICAgLndpZGdldCB7XG5cbiAgICAgIGg2IHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCkgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIGxpLCBsaSBhIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMikgIWltcG9ydGFudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgI2Zvb3Rlci1jb250YWluZXIge1xuXG4gICAgLnByZS1mb290ZXIge1xuXG4gICAgICBoNCB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjgpICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICBwLCBhLCBsaSwgc3BhbiwgdGltZSwgc3Ryb25nLCBlbSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgICAgfVxuICAgIH1cbiAgICAuZm9vdGVyLWNvbnRhaW5lciB7XG5cbiAgICAgIGg2IHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyOCkgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIHAsIGEsIGxpLCBzcGFuLCB0aW1lLCBzdHJvbmcsIGVtIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICB9XG4gICAgfVxuICAgICNjb3B5cmlnaHQge1xuXG4gICAgICBwLCBhLCBsaSwgc3BhbiwgdGltZSwgc3Ryb25nLCBlbSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5odG1sLmExMXktY29udHJhc3Qge1xuXG4gIGEsIGFiYnIsIGFydGljbGUsIGFzaWRlLCBiYXNlZm9udCwgYmRpLCBiaWcsIGJsaW5rLCBibG9ja3F1b3RlLCBib2R5LCBidXR0b24sIGNhbnZhcywgY2FwdGlvbiwgY2VudGVyLCBjb2RlLCBjb2wsIGNvbGdyb3VwLCBjb21tYW5kLCBkZCwgZGV0YWlscywgZGlyLCBkaXYsIGRsLCBkdCwgZW1iZWQsIGZpZWxkc2V0LCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvbnQsIGZvb3RlciwgZm9ybSwgaGVhZGVyLCBoZ3JvdXAsIGh0bWwsIGlmcmFtZSwgaW1nLCBpbnB1dCwga2JkLCBsYWJlbCwgbGVnZW5kLCBsaSwgbGlzdGluZywgbWFyaywgbWFycXVlZSwgbWVudSwgbWV0ZXIsIG11bHRpY29sLCBuYXYsIG5vYnIsIG9iamVjdCwgb2wsIG9wdGlvbiwgcCwgcGxhaW50ZXh0LCBwcmUsIHByb2dyZXNzLCBxLCBzLCBzZWN0aW9uLCBzZWxlY3QsIHNtYWxsLCBzcGFuLCBzdHJpa2UsIHN1Yiwgc3VtbWFyeSwgc3VwLCB0YWJsZSwgdGQsIHRleHRhcmVhLCB0aCwgdGltZSwgdHIsIHR0LCB1bCwgdmFyLCB4bXAsIGJvZHkud29vY29tbWVyY2UgdWwucHJvZHVjdHMgPiBsaS5wcm9kdWN0ID4gYSBzcGFuLnByaWNlIHNwYW4uYW1vdW50LCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMgPiBsaS5wcm9kdWN0ID4gYSBzcGFuLnByaWNlIHNwYW4uYW1vdW50LCBkaXYud29vY29tbWVyY2UgdWwucHJvZHVjdHMgPiBsaS5wcm9kdWN0ID4gYSBzcGFuLnByaWNlIHNwYW4uYW1vdW50LCAjbWFpbi1jb250YWluZXIgaDIsICNtYWluLWNvbnRhaW5lciBoMiBzcGFuLCAjbWFpbi1jb250YWluZXIgaDMsICNtYWluLWNvbnRhaW5lciBoMyBzcGFuLCAjbWFpbi1jb250YWluZXIgaDQsICNtYWluLWNvbnRhaW5lciBoNCBzcGFuLCAjbWFpbi1jb250YWluZXIgaDUsICNtYWluLWNvbnRhaW5lciBoNSBzcGFuLCAjbWFpbi1jb250YWluZXIgaDYsICNtYWluLWNvbnRhaW5lciBoNiBzcGFuLCAucHJlLWZvb3Rlci1jb250YWluZXIgLnByZS1mb290ZXIgaDEsIC5wcmUtZm9vdGVyLWNvbnRhaW5lciAucHJlLWZvb3RlciBoMiwgLnByZS1mb290ZXItY29udGFpbmVyIC5wcmUtZm9vdGVyIGgzLCAucHJlLWZvb3Rlci1jb250YWluZXIgLnByZS1mb290ZXIgaDQsIC5wcmUtZm9vdGVyLWNvbnRhaW5lciAucHJlLWZvb3RlciBoNSwgLnByZS1mb290ZXItY29udGFpbmVyIC5wcmUtZm9vdGVyIGg2LCAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyIGgxLCAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyIGgyLCAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyIGgzLCAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyIGg0LCAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyIGg1LCAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyIGg2LCBzcGFuLnJlcXVpcmVkLCBib2R5Lndvb2NvbW1lcmNlIHNwYW4ucmVxdWlyZWQsIGJvZHkud29vY29tbWVyY2UtcGFnZSBzcGFuLnJlcXVpcmVkLCBkaXYud29vY29tbWVyY2Ugc3Bhbi5yZXF1aXJlZCB7XG4gICAgY29sb3I6ICNGM0YzRjMgIWltcG9ydGFudDtcbiAgfVxuICBhIHtcbiAgICBjb2xvcjogeWVsbG93ICFpbXBvcnRhbnQ7XG4gIH1cbiAgI21haW4tY29udGFpbmVyIGEsIC5wcmUtZm9vdGVyLWNvbnRhaW5lciBhLCAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyIGEsICNjb3B5cmlnaHQgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWltcG9ydGFudDtcbiAgfVxuICBhLCBhYmJyLCBhY3JvbnltLCBhZGRyZXNzLCBhcnRpY2xlLCBhc2lkZSwgYiwgYmFzZWZvbnQsIGJkaSwgYmlnLCBibGluaywgYmxvY2txdW90ZSwgYm9keSwgY2FudmFzLCBjYXB0aW9uLCBjZW50ZXIsIGNpdGUsIGNvZGUsIGNvbCwgY29sZ3JvdXAsIGNvbW1hbmQsIGRkLCBkZXRhaWxzLCBkZm4sIGRpciwgZGl2LCBkbCwgZHQsIGVtLCBlbWJlZCwgZmllbGRzZXQsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9udCwgZm9vdGVyLCBmb3JtLCBoMSwgaDEgYSwgaDEgYSBiLCBoMSBhYmJyLCBoMSBjZW50ZXIsIGgxIHNwYW4sIGgyLCBoMiBhLCBoMiBhIGIsIGgyIGFiYnIsIGgyIGNlbnRlciwgaDIgc3BhbiwgaDMsIGgzIGEsIGgzIGEgYiwgaDMgYWJiciwgaDMgY2VudGVyLCBoMyBzcGFuLCBoNCwgaDQgYSwgaDQgYSBiLCBoNCBhYmJyLCBoNCBjZW50ZXIsIGg0IHNwYW4sIGg1LCBoNSBhLCBoNSBhIGIsIGg1IGFiYnIsIGg1IGNlbnRlciwgaDUgc3BhbiwgaDYsIGg2IGEsIGg2IGEgYiwgaDYgYWJiciwgaDYgY2VudGVyLCBoNiBzcGFuLCBoZWFkZXIsIGhncm91cCwgaHRtbCwgaSwgaWZyYW1lLCBpbnB1dCwga2JkLCBsYWJlbCwgbGVnZW5kLCBsaSwgbGlzdGluZywgbWFyaywgbWFycXVlZSwgbWVudSwgbWV0ZXIsIG11bHRpY29sLCBuYXYsIG5vYnIsIG9iamVjdCwgb2wsIG9wdGlvbiwgcCwgcGxhaW50ZXh0LCBwcmUsIHByb2dyZXNzLCBxLCBzLCBzZWN0aW9uLCBzbWFsbCwgc3Bhbiwgc3RyaWtlLCBzdHJvbmcsIHN1Yiwgc3VtbWFyeSwgc3VwLCB0YWJsZSwgdGQsIHRleHRhcmVhLCB0aCwgdGltZSwgdHIsIHR0LCB1LCB1bCwgdmFyLCB4bXAsIC5icy1idG4sIC5idXR0b24sIGhlYWRlciNtYXN0aGVhZCAudG9wLWJhci1zb2NpYWwgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIgbGkuY3VzdG9tLWJ1dHRvbiBhIHtcbiAgICAvLyBiYWNrZ3JvdW5kOiAkYmxhY2sgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2sgIWltcG9ydGFudDtcbiAgICBjb2xvcjogI0YzRjNGMyAhaW1wb3J0YW50O1xuICB9XG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLCBpbnB1dFt0eXBlPVwiZW1haWxcIl0sIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSwgaW5wdXRbdHlwZT1cInRlbFwiXSwgdGV4dGFyZWEsIHNlbGVjdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICRibGFjayAhaW1wb3J0YW50O1xuICB9XG4gIGltZyB7XG4gICAgYmFja2dyb3VuZDogIzgwODA4MCAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM4MDgwODAgIWltcG9ydGFudDtcbiAgICBtaXgtYmxlbmQtbW9kZTogdW5zZXQgIWltcG9ydGFudDtcbiAgfVxuICBib2R5Lndvb2NvbW1lcmNlLXBhZ2UgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicy53Yy10YWJzIGxpLmFjdGl2ZSxcbiAgYm9keS53b29jb21tZXJjZS1wYWdlIC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMud2MtdGFicyBsaS5hY3RpdmUgYSB7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlICFpbXBvcnRhbnQ7XG4gIH1cbiAgYm9keS53b29jb21tZXJjZSBzcGFuLm9uc2FsZTpiZWZvcmUsIGJvZHkud29vY29tbWVyY2UtcGFnZSBzcGFuLm9uc2FsZTpiZWZvcmUsIGRpdi53b29jb21tZXJjZSBzcGFuLm9uc2FsZTpiZWZvcmUge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICRibGFjaztcbiAgfVxuICBib2R5Lndvb2NvbW1lcmNlIHNwYW4ub25zYWxlOmFmdGVyLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2Ugc3Bhbi5vbnNhbGU6YWZ0ZXIsIGRpdi53b29jb21tZXJjZSBzcGFuLm9uc2FsZTphZnRlciB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGJsYWNrO1xuICB9XG59XG4iLCIkc291cmNlc2FuczogJ3NvdXJjZS1zYW5zLXBybycsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4kYmFybG93OiAnQmFybG93IFNlbWkgQ29uZGVuc2VkJywgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiRyZWQ6ICM5MTI3MTI7XG4kb3JhbmdlOiAjYjY1YjI0O1xuJGJsdWU6ICMwMDNhNzE7XG4kYmx1ZWFscGhhOiByZ2JhKDAsNTgsMTEzLDAuODUpO1xuJGx0Ymx1ZTogIzFlNzNiZTtcbiR3aGl0ZTogI0ZGRkZGRjtcbiRibGFjazogIzAwMDAwMDtcbiRhbG1vc3RibGFjazogIzAwMTcxNztcbiRncmVlbjogIzAwNjkzQjtcbiRsdGdyZWVuOiAjNDRhMDQ0O1xuJGx0Z3JheTogI0YxRjNGNTtcbiRncmF5OiAjQ0VENERBO1xuJGRhcmtncmF5OiAjQURCNUJEO1xuJGdvbGQ6ICNiOTljMDA7XG4keWVsbG93OiAjRkZBRjI2O1xuJGx0eWVsbG93OiAjZmVmM2ExO1xuXG4kYm94c2hhZG93OiAwIHJlbS1jYWxjKDQpIHJlbS1jYWxjKDgpIHJlbS1jYWxjKC0yKSByZ2JhKDAsMCwwLC4yNSk7XG4kYm94c2hhZG93MjogcmVtLWNhbGMoOCkgcmVtLWNhbGMoOCkgcmVtLWNhbGMoMTYpIHJnYmEoMCwwLDAsLjI1KTtcbiR0ZXh0c2hhZG93OiByZW0tY2FsYygxKSByZW0tY2FsYygzKSByZW0tY2FsYyg2KSByZ2JhKDAsMCwwLC41KTtcblxuLy8gU29jaWFsIE1lZGlhIENvbG9yc1xuJGZhY2Vib29rOiAjM2I1OTk4O1xuJHR3aXR0ZXI6ICMwMGFjZWQ7XG4kZ29vZ2xlcGx1czogI2RkNGIzOTtcbiRsaW5rZWRpbjogIzAwN2JiNjtcbiRwaW50ZXJlc3Q6ICNjYjIwMjc7XG5cbi8vIEJyZWFrcG9pbnQgdmFyaWFibGVzXG4kYnJlYWsxNjAwOiBcIm9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDBlbSlcIjtcbiRicmVhazEzMDA6IFwib25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgxLjI1ZW0pXCI7XG4kYnJlYWsxMTAwOiBcIm9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2OC43NWVtKVwiO1xuJGJyZWFrMTIwMDogXCJvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzVlbSlcIjtcbiRicmVhazEwMjQ6IFwib25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0ZW0pXCI7XG4kbWluYnJlYWsxMDI1OiBcIm9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NC4wNjI1ZW0pXCI7XG4kYnJlYWs5NzI6IFwib25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYwLjc1ZW0pXCI7XG4kYnJlYWs5NTE6IFwib25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5LjQzNzVlbSlcIjtcbiRicmVhazkwMDogXCJvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTYuMjVlbSlcIjtcbiRicmVhazgwMDogXCJvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTBlbSlcIjtcbiRicmVhazc2ODogXCJvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDhlbSlcIjtcbiRicmVhazc2NzogXCJvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKVwiO1xuJGJyZWFrNjQwOiBcIm9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MGVtKVwiO1xuJGJyZWFrNjM5OiBcIm9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pXCI7XG4kYnJlYWs2MDA6IFwib25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM3LjVlbSlcIjtcbiRicmVhazQ4MDogXCJvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzBlbSlcIjtcbiRicmVhazQwMDogXCJvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMjVlbSlcIjtcbiRicmVhazM3NTogXCJvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMjMuNDM3NWVtKVwiO1xuXG4vLyBGb250IHNpemUgdmFyaWFibGVzXG4kY3RhOiAyLjVyZW0gIWltcG9ydGFudDtcbiRjdGE2Mzk6IDEuNzVyZW0gIWltcG9ydGFudDtcbiRtYWludGl0bGU6IHJlbS1jYWxjKDY0KSAhaW1wb3J0YW50O1xuJG1haW50aXRsZTYzOTogcmVtLWNhbGMoNTUpICFpbXBvcnRhbnQ7XG4kaDE6IDIuNXJlbSAhaW1wb3J0YW50O1xuJGgyOiAycmVtICFpbXBvcnRhbnQ7XG4kaDM6IDEuNXJlbSAhaW1wb3J0YW50O1xuJGg0OiAxLjI1cmVtICFpbXBvcnRhbnQ7XG4kaDU6IDEuMTI1cmVtICFpbXBvcnRhbnQ7XG4kaDY6IDEuMDYyNXJlbSAhaW1wb3J0YW50O1xuJGJvZHljb3B5OiAxcmVtICFpbXBvcnRhbnQ7XG5cbkBtaXhpbiB0cmFuc2l0aW9uKCRhdHRyKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogJGF0dHIgLjJzIGVhc2Utb3V0O1xuICAgICAtbW96LXRyYW5zaXRpb246ICRhdHRyIC4ycyBlYXNlLW91dDtcbiAgICAgIC1tcy10cmFuc2l0aW9uOiAkYXR0ciAuMnMgZWFzZS1vdXQ7XG4gICAgICAgICAgdHJhbnNpdGlvbjogJGF0dHIgLjJzIGVhc2Utb3V0O1xufVxuIiwiI3ByZWxvYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgei1pbmRleDogOTk5OTk5OTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGJhY2tncm91bmQ6ICNGRkY7XG5cbiAgLnByZWxvYWRlci1pbm5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDMwMCk7XG4gICAgcGFkZGluZzogMjVweDtcbiAgICAvLyBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgLy8gdG9wOiAzMCU7XG4gICAgLy8gbGVmdDogNTAlO1xuICAgIC8vIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQG1lZGlhICN7JGJyZWFrNjQwfSB7XG4gICAgICAvLyBtYXgtd2lkdGg6IDkwJTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDE1KSAwIDA7XG4gICAgfVxuICB9XG4gIC5sZXR0ZXItaG9sZGVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgfVxuICAubGV0dGVyIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBmb250LWZhbWlseTogJGJhcmxvdztcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDMyKTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGNvbG9yOiAkZ3JlZW47XG4gICAgbGV0dGVyLXNwYWNpbmc6IHJlbS1jYWxjKDEwKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG4gIC5hbmltYXRlLWxvYWRpbmcge1xuICAgIC8vIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAvLyBsZWZ0OiA1MCU7XG4gICAgLy8gdG9wOiA0MCU7XG4gICAgLy8gdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTUwJSk7XG4gIH1cbiAgLmFuaW1hdGUtbG9hZGluZyAubGV0dGVyIHtcbiAgICBhbmltYXRpb24tbmFtZTogbG9hZGluZ0Y7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxLjZzO1xuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICAgIGFuaW1hdGlvbi1kaXJlY3Rpb246IGxpbmVhcjtcbiAgfVxuICAubC0xIHsgYW5pbWF0aW9uLWRlbGF5OiAuNDhzOyB9XG4gIC5sLTIgeyBhbmltYXRpb24tZGVsYXk6IC42czsgfVxuICAubC0zIHsgYW5pbWF0aW9uLWRlbGF5OiAuNzJzOyB9XG4gIC5sLTQgeyBhbmltYXRpb24tZGVsYXk6IC44NHM7IH1cbiAgLmwtNSB7IGFuaW1hdGlvbi1kZWxheTogLjk2czsgfVxuICAubC02IHsgYW5pbWF0aW9uLWRlbGF5OiAxLjA4czsgfVxuICAubC03IHsgYW5pbWF0aW9uLWRlbGF5OiAxLjJzOyB9XG4gIC5sLTggeyBhbmltYXRpb24tZGVsYXk6IDEuMzJzOyB9XG4gIC5sLTkgeyBhbmltYXRpb24tZGVsYXk6IDEuNDRzOyB9XG4gIC5sLTEwIHsgYW5pbWF0aW9uLWRlbGF5OiAxLjU2czsgfVxuXG4gIEBrZXlmcmFtZXMgbG9hZGluZ0Yge1xuICAgIDAlIHtvcGFjaXR5OiAwO31cbiAgICAxMDAlIHtvcGFjaXR5OiAxO31cbiAgfVxufVxuLmFkbWluLWJhciAjcHJlbG9hZGVyIGltZyB7XG4gIG1hcmdpbi10b3A6IDE2cHg7XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3ODJweCkge1xuICAgIG1hcmdpbi10b3A6IDIzcHg7XG4gIH1cbn1cbiIsIioge1xuICAtd2Via2l0LWh5cGhlbnM6IG5vbmUgIWltcG9ydGFudDtcbiAgLW1vei1oeXBoZW5zOiBub25lICFpbXBvcnRhbnQ7XG4gIGh5cGhlbnM6IG5vbmUgIWltcG9ydGFudDtcbn1cbmlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuaW5wdXRbdHlwZT1cInRlbFwiXSxcbmlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG50ZXh0YXJlYSxcbnNlbGVjdCxcbmJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZSAhaW1wb3J0YW50O1xuICAtbW96LWFwcGVyYW5jZTogbm9uZSAhaW1wb3J0YW50O1xufVxuYVtocmVmXj10ZWxdIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmUgIWltcG9ydGFudDtcbiAgLW1vei1hcHBlcmFuY2U6IG5vbmUgIWltcG9ydGFudDtcbn1cbmEge1xuICBmb250LWZhbWlseTogJHNvdXJjZXNhbnM7XG59XG5wLCBsaSwgc3BhbiwgdGltZSwgZGwsIGR0LCBkZCB7XG4gIGZvbnQtZmFtaWx5OiAkc291cmNlc2Fucztcbn1cbi5tYWluLWNvbnRlbnQge1xuXG4gIHAsIGxpLCBzcGFuLCB0aW1lLCBkbCwgZHQsIGRkIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICB9XG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMyKTtcblxuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG4gIHVsLCBvbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzIpO1xuICB9XG59XG4ucGlwZS1zZXBhcmF0b3Ige1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTI1JTtcbiAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDI1KTtcbiAgbWFyZ2luOiAwIHJlbS1jYWxjKDYpO1xufVxuYnV0dG9uLm1lbnUtaWNvbiB7XG4gIGFsaWduLWl0ZW1zOiBzcGFjZS1iZXR3ZWVuO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjb2xvcjogJGJsdWU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZm9udC1zaXplOiByZW0tY2FsYygxMCk7XG4gIGhlaWdodDogcmVtLWNhbGMoMzQpO1xuICBsZXR0ZXItc3BhY2luZzogLS4wMXJlbTtcbiAgLy8gbGluZS1oZWlnaHQ6IDQuMjU7XG4gIC8vIG1hcmdpbi10b3A6IHJlbS1jYWxjKC0xMCk7XG4gIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xuICB3aWR0aDogcmVtLWNhbGMoMzYpO1xuXG4gICY6YmVmb3JlLCAmOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgc3Bhbi5tZW51LWljb24tYmFyIHtcbiAgICBiYWNrZ3JvdW5kOiAkZ3JlZW47XG4gICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoOCk7XG4gICAgaGVpZ2h0OiByZW0tY2FsYyg0KTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsKTtcbiAgfVxuICBzcGFuLmtlZXAtdG9nZXRoZXIge1xuICAgIGNvbG9yOiAkZ3JlZW47XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgbGluZS1oZWlnaHQ6IC41O1xuXG4gICAgaSB7XG4gICAgICAvLyBib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAkZ3JlZW47XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDExKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwLjc7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICByaWdodDogMDtcbiAgICAgIHRvcDogcmVtLWNhbGMoMSk7XG4gICAgfVxuICB9XG4gICYuYWN0aXZlIHtcblxuICAgIHNwYW4ubWVudS1pY29uLWJhciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkcmVkO1xuICAgIH1cbiAgICBzcGFuLm1lbnUtaWNvbi1iYXItMSB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgfVxuICAgIHNwYW4ubWVudS1pY29uLWJhci0yIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgIHNwYW4ubWVudS1pY29uLWJhci0zIHtcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKC0xNCk7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgIH1cbiAgICBzcGFuLmtlZXAtdG9nZXRoZXIge1xuICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoNSk7XG4gICAgfVxuICB9XG4gICY6aG92ZXIsICY6Zm9jdXMge1xuXG4gICAgc3Bhbi5tZW51LWljb24tYmFyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRyZWQ7XG4gICAgfVxuICB9XG59XG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgZm9udC1mYW1pbHk6ICRiYXJsb3c7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjE1cmVtO1xuICBsaW5lLWhlaWdodDogMS4xO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICYuYWxpZ25jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAmLmFsaWdubGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuICAmLmFsaWducmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG59XG5oMiwgaDIgc3BhbiB7XG4gIGZvbnQtc2l6ZTogJGgyO1xufVxuaDMsIGgzIHNwYW4ge1xuICBmb250LXNpemU6ICRoMztcbn1cbmg0LCBoNCBzcGFuIHtcbiAgZm9udC1zaXplOiAkaDQ7XG59XG5oNSwgaDUgc3BhbiB7XG4gIGZvbnQtc2l6ZTogJGg1O1xufVxuaDYsIGg2IHNwYW4ge1xuICBmb250LXNpemU6ICRoNjtcbn1cbi5hbGlnbnJpZ2h0LCAuYWxpZ25sZWZ0LCAuYWxpZ25jZW50ZXIsIC5hbGlnbm5vbmUge1xuICBAbWVkaWEgI3skYnJlYWs2MDB9IHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW46IDAgMCByZW0tY2FsYygyMCkgMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4uYWxpZ25sZWZ0IHtcbiAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMzIpO1xufVxuLmFsaWducmlnaHQge1xuICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDMyKTtcbn1cbmZpZ3VyZSB7XG5cbiAgJi5hbGlnbnJpZ2h0LCAmLmFsaWdubGVmdCwgJi5hbGlnbmNlbnRlciwgJi5hbGlnbm5vbmUge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTtcblxuICAgIGltZyB7XG4gICAgICBAbWVkaWEgI3skYnJlYWs2MDB9IHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5zZWN0aW9uLWhlYWRpbmcge1xuICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuXG4gIHNwYW4uc2VjdGlvbi1oZWFkaW5nLWlubmVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCkgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMTApICFpbXBvcnRhbnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmx1ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDMpO1xuICAgICAgbGVmdDogMDtcbiAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMTUwKTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuICAmLmFsaWduY2VudGVyIHtcblxuICAgIHNwYW4uc2VjdGlvbi1oZWFkaW5nLWlubmVyIHtcblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLmFsaWducmlnaHQge1xuXG4gICAgc3Bhbi5zZWN0aW9uLWhlYWRpbmctaW5uZXIge1xuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbnNwYW4uc3ViLXRpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogNjUlO1xuICBtYXJnaW46IDAuNjI1cmVtIDA7XG59XG4ucGwxNSB7XG4gIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMTUpICFpbXBvcnRhbnQ7XG59XG4ucHIxNSB7XG4gIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDE1KSAhaW1wb3J0YW50O1xufVxuLm10MTUge1xuICBtYXJnaW4tdG9wOiByZW0tY2FsYygxNSkgIWltcG9ydGFudDtcbn1cbi5tYjE1IHtcbiAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpICFpbXBvcnRhbnQ7XG59XG4udmNhcmQgYWJiciB7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgY3Vyc29yOiB0ZXh0ICFpbXBvcnRhbnQ7XG59XG4udmNhcmQgLnR5cGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLm9mZi1jYW52YXMtY29udGVudCAjbWFzdGhlYWQge1xuICBtYXJnaW46IDAgYXV0bztcbiAgLy9wYWRkaW5nOiAwIDAuOTM3NXJlbTtcbn1cbnVsLnBhZ2luYXRpb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgIHNwYW4uY3VycmVudCB7XG5cbiAgICB9XG4gICAgYSB7XG5cbiAgICB9XG4gIH1cbn1cblxuLyogRm91bmRhdGlvbiA2IFRhYnMgU3R5bGVzICovXG4udGFicyB7XG4gIGJvcmRlcjogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAudGFicy10aXRsZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyg0KTtcbiAgICBAbWVkaWEgI3skYnJlYWs3Njd9IHtcbiAgICAgIC8vYm9yZGVyLXRvcDogcmVtLWNhbGMoMSkgc29saWQgJGJsdWU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIGJhY2tncm91bmQ6ICRibHVlO1xuICAgICAgYm9yZGVyOiByZW0tY2FsYygxKSBzb2xpZCAkYmx1ZTtcbiAgICAgIGJvdHRvbTogcmVtLWNhbGMoLTEpO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEyKSByZW0tY2FsYygxNSk7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ocGFkZGluZyk7XG4gICAgICBAbWVkaWEgI3skYnJlYWs3Njd9IHtcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogcmVtLWNhbGMoMSkgc29saWQgJGx0Z3JheTtcbiAgICAgICAgYm94LXNoYWRvdzogMCByZW0tY2FsYygtMikgcmVtLWNhbGMoNykgIzAwMWU2MTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5pcy1hY3RpdmUge1xuXG4gICAgICBhIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHJlZDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogcmVtLWNhbGMoMSkgc29saWQgJGx0Z3JheTtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgLy8gcGFkZGluZzogcmVtLWNhbGMoMTcpIHJlbS1jYWxjKDE1KTtcbiAgICAgIH1cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIEBtZWRpYSAjeyRicmVhazc2N30ge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogcmVtLWNhbGMoMSkgc29saWQgJGJsdWU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOmxhc3QtY2hpbGQge1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIEBtZWRpYSAjeyRicmVhazc2N30ge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogcmVtLWNhbGMoMSkgc29saWQgJGJsdWU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4udGFicy1jb250ZW50IHtcbiAgYmFja2dyb3VuZDogJGx0Z3JheTtcbiAgYm9yZGVyLXRvcDogcmVtLWNhbGMoMSkgc29saWQgJGJsdWU7XG59XG5cbi5vZmYtY2FudmFzLWNvbnRlbnQgI2Zvb3Rlci1jb250YWluZXIge1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAwO1xufVxuLmhpZGUtZm9yLW5vdyB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgc3BlYWs6IG5vbmU7XG4gIGxlZnQ6IC05OTk5cHg7XG59XG4udGhlLXRhZ3Mge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDIuNXJlbSAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gIGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAwLjMxMjVyZW07XG4gIH1cbn1cbi5rZWVwLXRvZ2V0aGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG59XG5ib2R5Lm1vZGFsLWFjdGl2ZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5mb3JtI3NlYXJjaGZvcm0ge1xuICBib3JkZXI6IHJlbS1jYWxjKDEpIHNvbGlkICRibHVlO1xuICBib3JkZXItcmFkaXVzOiByZW0tY2FsYygzKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICY6YWZ0ZXIge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgY29udGVudDogJ1xcZjAwMic7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiLCAnZm9udGF3ZXNvbWUnO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiByZW0tY2FsYyg4KTtcbiAgICB0b3A6IHJlbS1jYWxjKDUpO1xuICB9XG4gIC5pbnB1dC1ncm91cCB7XG4gICAgLy8gYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoMyk7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMzYpO1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgcGFkZGluZzogMCByZW0tY2FsYygxMCk7XG4gICAgfVxuICB9XG4gIGlucHV0I3NlYXJjaHN1Ym1pdCB7XG4gICAgYmFja2dyb3VuZDogJGJsdWUgIWltcG9ydGFudDtcbiAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgICBtaW4td2lkdGg6IHJlbS1jYWxjKDM2KTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsKTtcblxuICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZDogJGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4uYnMtYnRuLCAuZ2Zvcm1fZm9vdGVyIGlucHV0Lmdmb3JtX2J1dHRvbiwgI3Jlc3BvbmQgLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgLy8gYm9yZGVyOiByZW0tY2FsYygyKSBzb2xpZCAkYmx1ZTtcbiAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoMyk7XG4gIGNvbG9yOiAkYWxtb3N0YmxhY2s7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6ICRiYXJsb3c7XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XG4gIGxldHRlci1zcGFjaW5nOiAwLjE1cmVtO1xuICBsaW5lLWhlaWdodDogMSAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiByZW0tY2FsYygyMCkgcmVtLWNhbGMoMzUpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwpO1xufVxuLmJzLWJ0bi5icy1idG4td2hpdGUge1xuICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gIC8vIGJvcmRlcjogcmVtLWNhbGMoMikgc29saWQgJHdoaXRlO1xufVxuLmJzLWJ0bi5icy1idG4td2hpdGU6aG92ZXIsXG4uYnMtYnRuLmJzLWJ0bi13aGl0ZTpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICRhbG1vc3RibGFjaztcbiAgLy8gYm9yZGVyOiByZW0tY2FsYygyKSBzb2xpZCAkYWxtb3N0YmxhY2s7XG4gIGNvbG9yOiAkd2hpdGU7XG59XG4uYnMtYnRuLmJzLWJ0bi1yZWQsXG4uZ2Zvcm1fZm9vdGVyIGlucHV0Lmdmb3JtX2J1dHRvbixcbiNyZXNwb25kIC5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiAkcmVkO1xuICAvLyBib3JkZXI6IHJlbS1jYWxjKDIpIHNvbGlkICRyZWQ7XG4gIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbn1cbi5icy1idG4uYnMtYnRuLXJlZDpob3Zlcixcbi5icy1idG4uYnMtYnRuLXJlZDpmb2N1cyxcbi5nZm9ybV9mb290ZXIgaW5wdXQuZ2Zvcm1fYnV0dG9uOmhvdmVyLFxuLmdmb3JtX2Zvb3RlciBpbnB1dC5nZm9ybV9idXR0b246Zm9jdXMsXG4jcmVzcG9uZCAuYnV0dG9uOmhvdmVyLFxuI3Jlc3BvbmQgLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICRibGFjaztcbiAgLy8gYm9yZGVyOiByZW0tY2FsYygyKSBzb2xpZCAkYmxhY2s7XG4gIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbn1cbi5icy1idG4uYnMtYnRuLWJsdWUge1xuICBiYWNrZ3JvdW5kOiAkYmx1ZSAhaW1wb3J0YW50O1xuICAvLyBib3JkZXI6IHJlbS1jYWxjKDIpIHNvbGlkICRibHVlICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbn1cbi5icy1idG4uYnMtYnRuLWJsdWU6aG92ZXIsXG4uYnMtYnRuLmJzLWJ0bi1ibHVlOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogJGJsYWNrICFpbXBvcnRhbnQ7XG4gIC8vIGJvcmRlcjogcmVtLWNhbGMoMikgc29saWQgJGJsYWNrICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbn1cbi5icy1idG4uYnMtYnRuLWNsZWFyIHtcbiAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAvLyBib3JkZXI6IHJlbS1jYWxjKDIpIHNvbGlkICR3aGl0ZSAhaW1wb3J0YW50O1xuICBjb2xvcjogJGJsYWNrICFpbXBvcnRhbnQ7XG59XG4uYnMtYnRuLmJzLWJ0bi1jbGVhcjpob3Zlcixcbi5icy1idG4uYnMtYnRuLWNsZWFyOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogJGJsYWNrICFpbXBvcnRhbnQ7XG4gIC8vIGJvcmRlcjogcmVtLWNhbGMoMikgc29saWQgJGJsYWNrICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbn1cbi5icy1idG4uYnMtYnRuLWJsYWNrIHtcbiAgYmFja2dyb3VuZDogJGJsYWNrO1xuICAvLyBib3JkZXI6IHJlbS1jYWxjKDIpIHNvbGlkICRibGFjaztcbiAgY29sb3I6ICR3aGl0ZTtcbn1cbi5icy1idG4uYnMtYnRuLWJsYWNrOmhvdmVyLFxuLmJzLWJ0bi5icy1idG4tYmxhY2s6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gIC8vIGJvcmRlcjogcmVtLWNhbGMoMikgc29saWQgJGJsYWNrO1xuICBjb2xvcjogJGJsYWNrO1xufVxuLmJzLWJ0bjpob3Zlcixcbi5icy1idG46Zm9jdXMsXG4uZ2Zvcm1fZm9vdGVyIGlucHV0Lmdmb3JtX2J1dHRvbjpob3Zlcixcbi5nZm9ybV9mb290ZXIgaW5wdXQuZ2Zvcm1fYnV0dG9uOmZvY3VzLFxuI3Jlc3BvbmQgLmJ1dHRvbjpob3ZlcixcbiNyZXNwb25kIC5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gIC8vIGJvcmRlcjogcmVtLWNhbGMoMikgc29saWQgJGJsYWNrO1xuICBjb2xvcjogJHdoaXRlO1xufVxuLmJzLWJ0bnMtd3JhcHBlciB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBAbWVkaWEgI3skYnJlYWs2MDB9IHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG5cbiAgLmJzLWJ0biB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMCByZW0tY2FsYygxMCkgcmVtLWNhbGMoMTApIDAgO1xuXG4gICAgQG1lZGlhICN7JGJyZWFrNjAwfSB7XG4gICAgICBtYXJnaW46IHJlbS1jYWxjKDEwKSByZW0tY2FsYyg1KSAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuICB9XG59XG5pbWcubGF6eWxvYWQge1xuICBtaW4taGVpZ2h0OiByZW0tY2FsYygyMDApO1xuICB3aWR0aDogMTAwJTtcbn1cbmltZy5sYXp5bG9hZGVkIHtcbiAgb3BhY2l0eTogMTtcbn1cbi5tYXgtd2lkdGgtc2l4dGVlbi1odW5kcmVkIHtcbiAgbWF4LXdpZHRoOiByZW0tY2FsYygxNjAwKSAhaW1wb3J0YW50O1xuICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbn1cbi5tYXgtd2lkdGgtdGhpcnRlZW4tc2l4dHlzaXgge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiByZW0tY2FsYygxMzY2KTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG4ubWF4LXdpZHRoLXR3ZWx2ZS1odW5kcmVkIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogcmVtLWNhbGMoMTIwMCk7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuLm1heC13aWR0aC1lbGV2ZW4tc2V2ZW50eSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IHJlbS1jYWxjKDExNzApO1xuICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbn1cbi5tYXgtd2lkdGgtbmluZS1zZXZlbnR5IHtcbiAgbWF4LXdpZHRoOiByZW0tY2FsYyg5NzApICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuLm1heC13aWR0aC1laWdodC10aGlydHkge1xuICBtYXgtd2lkdGg6IHJlbS1jYWxjKDgzMCkgIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG4ubWF4LXdpZHRoLWVpZ2h0LWh1bmRyZWQge1xuICBtYXgtd2lkdGg6IHJlbS1jYWxjKDgwMCkgIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG4uZW50cnktY29udGVudCB7XG4gIC8vIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDUpO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cbiAgaDIgKyBoMywgaDMgKyBoNCwgaDQgKyBoNSwgaDUgKyBoNiB7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgfVxuICBoNCwgaDUsIGg2IHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG4gIGZpZ3VyZS53cC1jYXB0aW9uLCBmaWd1cmUudmNfZmlndXJlIHtcblxuICAgIGltZyB7XG4gICAgICAvLyBib3JkZXI6IHJlbS1jYWxjKDMpIHNvbGlkICR5ZWxsb3cgIWltcG9ydGFudDtcbiAgICB9XG4gICAgZmlnY2FwdGlvbi53cC1jYXB0aW9uLXRleHQsIGZpZ2NhcHRpb24udmNfZmlndXJlLWNhcHRpb24ge1xuICAgICAgZm9udC1mYW1pbHk6ICRiYXJsb3c7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4wNXJlbTtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYyg0KTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuICB9XG4gIHVsLnJvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG4gIH1cbiAgdWwucm93IGxpLmNvbHVtbnMge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuICB1bC5yb3cgLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICB1bC5yb3cgLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgb2wucm93IC5jb2x1bW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgb2wucm93IC5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIHAgKyB1bCwgcCArIG9sIHtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygtMTUpO1xuICB9XG4gIHVsLCBvbCB7XG5cbiAgICBsaSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG5cbiAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5yZWFkYWJsZS1saW5lLWxlbmd0aCB7XG4gIG1heC13aWR0aDogcmVtLWNhbGMoODAwKTtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG4udGV4dC1hbGlnbi1jZW50ZXIsIC50ZXh0LWFsaWduLWNlbnRlciAqIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnJlYWRhYmxlLWxpbmUtbGVuZ3RoLnRleHQtYWxpZ24tY2VudGVyIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5AbWVkaWEgI3skYnJlYWs2Mzl9IHtcbiAgaHRtbCAubWFpbi13cmFwIC5tYWluLWNvbnRlbnQsXG4gIGh0bWwgLm1haW4td3JhcCAuc2lkZWJhciB7XG4gICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDE1KTtcbiAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDE1KTtcbiAgfVxufVxuI2NvcHlyaWdodCB7XG4gIHBhZGRpbmc6IHJlbS1jYWxjKDE2KSByZW0tY2FsYygxNSk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBAbWVkaWEgI3skYnJlYWsxMDI0fSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuXG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgQG1lZGlhICN7JGJyZWFrMTAyNH0ge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgbGkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDM2KTtcbiAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygzNik7XG4gICAgICB3aWR0aDogcmVtLWNhbGMoMzYpO1xuICAgIH1cbiAgfVxuICBAbWVkaWEgI3skYnJlYWsxMDI0fSB7XG4gICAgLnNtYWxsLTEyLm1lZGl1bS0xMi5sYXJnZS03IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcblxuICAgICAgcCB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiNiYWNrLXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiByZW0tY2FsYygyNSk7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiA5OTk7XG5cbiAgYSB7XG4gICAgLy8gYm9yZGVyOiByZW0tY2FsYygxKSBzb2xpZCAkd2hpdGU7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogcmVtLWNhbGMoNDApO1xuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYyg0MCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IHJlbS1jYWxjKDQ1KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCk7XG5cbiAgICBpbWcge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiByZW0tY2FsYygxNSk7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgd2lkdGg6IHJlbS1jYWxjKDM4KTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24odG9wKTtcbiAgICB9XG4gICAgJjpob3ZlciwgJjpmb2N1cyB7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIHRvcDogcmVtLWNhbGMoMTApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLmJhY2t0b3AtcmlnaHQge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDA7XG5cbiAgICBhIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDQpIDAgMCByZW0tY2FsYyg0KTtcbiAgICB9XG4gIH1cbiAgJi5iYWNrdG9wLWxlZnQge1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IGF1dG87XG5cbiAgICBhIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgcmVtLWNhbGMoNCkgcmVtLWNhbGMoNCkgMDtcbiAgICB9XG4gIH1cbiAgJi5iYWNrdG9wLWNlbnRlciB7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICByaWdodDogYXV0bztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG5cbiAgICBhIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDQpIHJlbS1jYWxjKDQpIDAgMDtcbiAgICAgIGhlaWdodDogcmVtLWNhbGMoMzApO1xuICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDMwKTtcbiAgICB9XG4gIH1cbn1cbiIsImhlYWRlciNtYXN0aGVhZCB7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBhZGRpbmc6IHJlbS1jYWxjKDEwKSAwIHJlbS1jYWxjKDgpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDk5O1xuICBAbWVkaWEgI3skYnJlYWsxMDI0fSB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMTApIDAgcmVtLWNhbGMoOCkgIWltcG9ydGFudDtcbiAgfVxuXG4gICNoZWFkZXItaW5uZXIge1xuICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMTUpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDE1KTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBAbWVkaWEgI3skYnJlYWs2NDB9IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuICB9XG4gIC5zaXRlLXRpdGxlLWJhci50aXRsZS1iYXIge1xuICAgIEBtZWRpYSAjeyRicmVhazY0MH0ge1xuICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygxNSk7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygxNSk7XG4gICAgfVxuICB9XG4gIG5hdi50b3AtYmFyIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgLnRvcC1iYXItdG9wIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE2KTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAudG9wLWJhci10aXRsZSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnRvcC1iYXItbGVmdCB7XG5cbiAgICB9XG4gICAgLnRvcC1iYXItcmlnaHQge1xuXG4gICAgfVxuICAgIC50b3AtYmFyLWJvdHRvbSB7XG5cbiAgICB9XG4gICAgLnRvcC1iYXItc29jaWFsIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBtYXJnaW46IDA7XG5cbiAgICAgIHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg0OCk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDQ4KTtcbiAgICAgICAgICAvLyBtYXJnaW4tbGVmdDogcmVtLWNhbGMoNSk7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICAgIHdpZHRoOiByZW0tY2FsYyg0OCk7XG4gICAgICAgICAgei1pbmRleDogOTk7XG5cbiAgICAgICAgICAmLmlubGluZS1zb2NpYWwtc2VhcmNoLXdyYXBwZXIge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICAgICAgICAgIG1hcmdpbjogMCByZW0tY2FsYygzMCkgMCByZW0tY2FsYygxMCk7XG4gICAgICAgICAgICBAbWVkaWEgI3skYnJlYWsxMDI0fSB7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCByZW0tY2FsYygxMCkgMCAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBidXR0b24uc2VhcmNoLXRvZ2dsZSB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkYWxtb3N0YmxhY2s7XG4gICAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoNDgpO1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICAgICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDQ4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGZvcm0jc2VhcmNoZm9ybSB7XG4gICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDIwKSAwIDAgMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgQG1lZGlhICN7JGJyZWFrMTAyNH0ge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmLnNob3cge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogcmVtLWNhbGMoOCkgMCAwIDAgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRicmVhazEwMjR9IHtcbiAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgJi50ZWxlcGhvbmUge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgQG1lZGlhICN7JGJyZWFrMTAyNH0ge1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmLmN1c3RvbS1idXR0b24ge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDMpO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDAgcmVtLWNhbGMoMTUpO1xuICAgICAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBAbWVkaWEgI3skYnJlYWsxMDI0fSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgbGkgYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmFib3ZlLW1lbnUtc2VhcmNoLXdyYXBwZXIsXG4gICAgLmlubGluZS1zb2NpYWwtc2VhcmNoLXdyYXBwZXIsXG4gICAgLm1lbnUtc2VhcmNoLXdyYXBwZXIge1xuXG4gICAgICBmb3JtI3NlYXJjaGZvcm0ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkZ3JheSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDQwKSAwIDAgMDtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxNSk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICB3aWR0aDogcmVtLWNhbGMoMzAwKTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwpO1xuXG4gICAgICAgIEBtZWRpYSAjeyRicmVhazEwMjR9IHtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgICAgICYuc2hvdyB7XG4gICAgICAgICAgbWFyZ2luOiByZW0tY2FsYygxMCkgMCAwIDA7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgIHotaW5kZXg6IDk5O1xuICAgICAgICB9XG4gICAgICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgIC5pbnB1dC1ncm91cC1idXR0b24ge1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi8uLi8uLi9zcmMvYXNzZXRzL2ltYWdlcy9ibGFjay1hcnJvdy5zdmcpIG5vLXJlcGVhdCBsZWZ0IGNlbnRlcjtcbiAgICAgICAgICAgICAgY29sb3I6ICRhbG1vc3RibGFjaztcbiAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBmb250YXdlc29tZTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygxMCk7XG4gICAgICAgICAgICAgIHJpZ2h0OiByZW0tY2FsYygyOCk7XG4gICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICAgIHdpZHRoOiByZW0tY2FsYygzOCk7XG4gICAgICAgICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKHJpZ2h0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuXG4gICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICByaWdodDogcmVtLWNhbGMoMTgpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlucHV0I3Mge1xuICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDM0KTtcbiAgICAgICAgICBwYWRkaW5nOiAwIHJlbS1jYWxjKDEwKSAwIHJlbS1jYWxjKDUpO1xuICAgICAgICB9XG4gICAgICAgIGlucHV0I3NlYXJjaHN1Ym1pdCB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJHllbGxvdyAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRiYXJsb3cgIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoMzQpO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygzNCk7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDAgcmVtLWNhbGMoMTApO1xuICAgICAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDM0KTtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCk7XG4gICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5hYm92ZS1tZW51LXNlYXJjaC13cmFwcGVyIHtcbiAgICAgIG1hcmdpbjogcmVtLWNhbGMoMTIpIDAgMCAwO1xuXG4gICAgICBmb3JtI3NlYXJjaGZvcm0ge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBib3JkZXI6IHJlbS1jYWxjKDEpIHNvbGlkICRibHVlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgcmlnaHQ6IHJlbS1jYWxjKDgpO1xuICAgICAgICAgIHRvcDogcmVtLWNhbGMoNSk7XG4gICAgICAgIH1cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAubG9nby13cmFwcGVyLmhpZGUtZm9yLXNtYWxsLW9ubHkge1xuXG4gICAgLmN1c3RvbS1sb2dvLWxpbmsge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTApIDAgcmVtLWNhbGMoMTYpICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgaW1nLmN1c3RvbS1sb2dvLCBzdmcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMjA2KTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5hbHQtbmF2LXdyYXBwZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW46IDAgMCByZW0tY2FsYygxMCkgMDtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIC5hbHQtbmF2LW15LWNhcnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDEwKTtcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDEwKTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgYSB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIC8vYmFja2dyb3VuZDogJHJlZDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoMTAwKTtcbiAgICAgICAgLy9jb2xvcjogJHdoaXRlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkYmFybG93O1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KSAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg3KSByZW0tY2FsYygxNSk7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCk7XG5cbiAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgLy9iYWNrZ3JvdW5kOiAkYmx1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMik7XG4gICAgICB9XG4gICAgICBzcGFuLmNhcnQtY29udGVudHMge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgIGNvbG9yOiAkYmx1ZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjApO1xuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMCByZW0tY2FsYyg1KTtcbiAgICAgICAgbWluLXdpZHRoOiByZW0tY2FsYygyMCk7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgICAubWVudSB7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblxuICAgICAgJiA+IGxpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDgpO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDgpO1xuICAgICAgICBib3JkZXItbGVmdDogcmVtLWNhbGMoMSkgc29saWQgJGdyYXk7XG4gICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJiA+IGEge1xuICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRiYXJsb3c7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgfVxuICAgICAgICAmLmlzLWFjdGl2ZSA+IGEge1xuICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5kZXNrdG9wLW1lbnUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG4gIC5kZXNrdG9wLW1lbnUubWVudSA+IGxpID4gYSB7XG4gICAgcGFkZGluZzogMCByZW0tY2FsYygxNikgIWltcG9ydGFudDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygzNik7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJyAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IDA7XG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDgpO1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKHdpZHRoKTtcbiAgICB9XG4gICAgJjpob3ZlcjpiZWZvcmUge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG4gIC5kZXNrdG9wLW1lbnUubWVudSA+IGxpOmxhc3Qtb2YtdHlwZSB1bC5kcm9wZG93biB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMDtcbiAgfVxuICAubWVudSA+IGxpIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbiAgLm1lbnUgPiBsaSA+IGEge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1mYW1pbHk6ICRiYXJsb3c7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuICAubWVudSA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLy8gcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgLy8gcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5tZW51ID4gbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IGE6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5tZW51ID4gbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICB9XG4gIC5tZW51IC5hY3RpdmUgPiBhIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbiAgLm1lbnUgPiBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIC5tZW51IC5kcm9wZG93biB7XG4gICAgbWluLXdpZHRoOiByZW0tY2FsYygyNTApO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBvcGFjaXR5OiAwO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgcGFkZGluZzogMDtcbiAgICB6LWluZGV4OiAtMTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsKTtcbiAgfVxuICAubWVudSAuZHJvcGRvd24gbGkgYSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMTUpIHJlbS1jYWxjKDIwKSAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsKTtcbiAgfVxuICAubWVudSAuZHJvcGRvd24gbGkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZCk7XG4gIH1cbiAgLm1lbnUgLmRyb3Bkb3duIGxpIGE6aG92ZXI6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG4gIC5tZW51IC5kcm9wZG93biBsaTphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAubWVudSA+IGxpLmlzLWFjdGl2ZTpob3ZlciAuZHJvcGRvd24sXG4gIC5tZW51ID4gbGkuaXMtYWN0aXZlOmZvY3VzIC5kcm9wZG93bixcbiAgLm1lbnUgPiBsaTpmb2N1cy13aXRoaW4gLmRyb3Bkb3duIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICB6LWluZGV4OiAxO1xuICB9XG4gIC5tZW51ID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMTAwJTtcbiAgfVxuICAubWVudSA+IGxpLm9wZW5zLWxlZnQ6bGFzdC1jaGlsZCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuICAubWVudSA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgbmF2LnRvcC1iYXIuaGFzLXNlYXJjaCB7XG5cbiAgICAuZGVza3RvcC1tZW51IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgICAgIC8vd2lkdGg6IGNhbGMoMTAwJSAtIDNyZW0pICFpbXBvcnRhbnQ7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgI3skYnJlYWs2Mzl9IHtcbiAgLnRpdGxlLWJhciB7XG4gICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygxNSk7XG4gICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMTUpO1xuICB9XG59XG4iLCJoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1vbmUge1xuXG4gIC50b3AtYmFyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAudG9wLWJhci1sZWZ0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygyMDcpO1xuICAgICAgQG1lZGlhICN7JGJyZWFrMTAyNH0ge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIC50b3AtYmFyLXRpdGxlIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgICAgLmxvZ28td3JhcHBlci5oaWRlLWZvci1zbWFsbC1vbmx5IHtcblxuICAgICAgICAuY3VzdG9tLWxvZ28tbGluayB7XG4gICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMjQpIDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gNDA3cHgpO1xuICAgICAgQG1lZGlhICN7JGJyZWFrMTMwMH0ge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIwN3B4KTtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRicmVhazExMDB9IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygxNik7XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skYnJlYWsxMDI0fSB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICAuYWx0LW5hdi13cmFwcGVyIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgIEBtZWRpYSAjeyRicmVhazEwMjR9IHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5hbHQtbmF2LW15LWNhcnQge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygxMCk7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnRvcC1iYXItc29jaWFsIHtcbiAgICAgICAgb3JkZXI6IDM7XG5cbiAgICAgICAgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIge1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgICAgICAgbGk6bm90KC5jdXN0b20tYnV0dG9uKTpub3QoLmlubGluZS1zb2NpYWwtc2VhcmNoLXdyYXBwZXIpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZGVza3RvcC1tZW51IHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvcmRlcjogMjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmFib3ZlLW1lbnUtc2VhcmNoLXdyYXBwZXIge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgfVxuICAuYWJvdmUtbWVudS1zZWFyY2gtd3JhcHBlcixcbiAgLmlubGluZS1zb2NpYWwtc2VhcmNoLXdyYXBwZXIge1xuICAgIGhlaWdodDogcmVtLWNhbGMoMzYpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIGZvcm0jc2VhcmNoZm9ybSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICBib3JkZXI6IHJlbS1jYWxjKDEpIHNvbGlkICRncmF5O1xuICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoMyk7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDIwMCk7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBAbWVkaWEgI3skYnJlYWsxMDI0fSB7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGNvbnRlbnQ6ICdcXGYwMDInO1xuICAgICAgICBmb250LWZhbWlseTogZm9udGF3ZXNvbWUgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDM0cHg7XG4gICAgICAgIGhlaWdodDogMzRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDM0cHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgfVxuICAgICAgaW5wdXQjc2VhcmNoc3VibWl0IHtcbiAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogMzRweDtcbiAgICAgICAgaGVpZ2h0OiAzNHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgfVxuICAgICAgaW5wdXQjcyB7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBwYWRkaW5nOiAwIHJlbS1jYWxjKDIwKSAwIHJlbS1jYWxjKDEwKSAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMzRweDtcbiAgICAgICAgaGVpZ2h0OiAzNHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgfVxuICAgICAgLmlucHV0LWdyb3VwIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAvLyBuYXYudG9wLWJhci5oYXMtc2VhcmNoIHtcbiAgLy9cbiAgLy8gICB1bC5kZXNrdG9wLW1lbnUge1xuICAvLyAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDNyZW0pO1xuICAvLyAgICAgbWFyZ2luLXJpZ2h0OiAzcmVtO1xuICAvLyAgIH1cbiAgLy8gfVxuICBuYXYudG9wLWJhciB7XG5cbiAgICAubWVudS1zZWFyY2gtd3JhcHBlciB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDM2KTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgd2lkdGg6IHJlbS1jYWxjKDM2KTtcblxuICAgICAgYnV0dG9uIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDM2KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDM2KTtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIHdpZHRoOiByZW0tY2FsYygzNik7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsKTtcbiAgICAgIH1cbiAgICAgIGZvcm0jc2VhcmNoZm9ybSB7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICAmLnNob3cge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuaW5saW5lLXNvY2lhbC1zZWFyY2gtd3JhcHBlciB7XG5cbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cbiAgICAgIGZvcm0jc2VhcmNoZm9ybSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgI3skYnJlYWsxMDI0fSB7XG4gIGhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLW9uZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAubG9nby13cmFwcGVyIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgLmxvZ28td3JhcHBlciBpbWcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG4gICAgbmF2LnRvcC1iYXIgLnRvcC1iYXItdGl0bGUgYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG4gICAgbmF2LnRvcC1iYXIgLnRvcC1iYXItcmlnaHQgLmFsdC1uYXYtd3JhcHBlciB7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgdWwubWVudSB7XG4gICAgICAgIG1hcmdpbjogMC42MjVyZW0gMDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICAgIG5hdi50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IC50b3AtYmFyLXNvY2lhbCB7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICB9XG4gICAgfVxuICAgIG5hdi50b3AtYmFyIC50b3AtYmFyLXJpZ2h0ID4gLmRyb3Bkb3duLm1lbnUuZGVza3RvcC1tZW51IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgLy9tYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDNyZW0pO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIC8vbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgfVxuICAgIG5hdi50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IGZvcm0jc2VhcmNoZm9ybSB7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgcmlnaHQ6IDA7XG5cbiAgICAgICYuc2hvdyB7XG5cbiAgICAgICAgbWFyZ2luOiByZW0tY2FsYyg4KSAwIDAgMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhICN7JGJyZWFrNjQwfSB7XG4gIGhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLW9uZSB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgLmxvZ28td3JhcHBlci5oaWRlLWZvci1zbWFsbC1vbmx5IHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLnRvcC1iYXIge1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAudG9wLWJhci1zb2NpYWwge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLm1lbnUtc2VhcmNoLXdyYXBwZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsImhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLXR3byB7XG5cbiAgLnRvcC1iYXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAudG9wLWJhci1sZWZ0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygzMDApO1xuICAgICAgQG1lZGlhICN7JGJyZWFrMTAyNH0ge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgLnRvcC1iYXItdGl0bGUge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgICAubG9nby13cmFwcGVyLmhpZGUtZm9yLXNtYWxsLW9ubHkge1xuXG4gICAgICAgIC5jdXN0b20tbG9nby1saW5rIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgaW1nLmN1c3RvbS1sb2dvIHtcbiAgICAgICAgICAgIHdpZHRoOiByZW0tY2FsYygzMDApO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxOC43NXJlbSk7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoNDApO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgQG1lZGlhICN7JGJyZWFrMTAyNH0ge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIC5hbHQtbmF2LXdyYXBwZXIge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgQG1lZGlhICN7JGJyZWFrMTAyNH0ge1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLmFsdC1uYXYtbXktY2FydCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnRvcC1iYXItc29jaWFsIHtcbiAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgICAgIHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIHtcbiAgICAgICAgICBAbWVkaWEgI3skYnJlYWsxMDI0fSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgfVxuICAgICAgICAgIGxpLmlubGluZS1zb2NpYWwtc2VhcmNoLXdyYXBwZXIge1xuXG4gICAgICAgICAgICBmb3JtI3NlYXJjaGZvcm0ge1xuXG4gICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnRvcC1iYXItYm90dG9tIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuICBuYXYudG9wLWJhci5oYXMtc2VhcmNoIHtcblxuICAgIHVsLmRlc2t0b3AtbWVudSB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gNHJlbSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDYwKTtcbiAgICB9XG4gIH1cbiAgbmF2LnRvcC1iYXIge1xuXG4gICAgLm1lbnUtc2VhcmNoLXdyYXBwZXIge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgaGVpZ2h0OiByZW0tY2FsYygzNik7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMDtcbiAgICAgIHdpZHRoOiByZW0tY2FsYygzNik7XG5cbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlciAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygzNik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygzNik7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDM2KTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwpO1xuICAgICAgfVxuICAgICAgZm9ybSNzZWFyY2hmb3JtIHtcblxuICAgICAgICBAbWVkaWEgI3skYnJlYWsxMDI0fSB7XG4gICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgICYuc2hvdyB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgQG1lZGlhICN7JGJyZWFrMTAyNH0ge1xuICAgICAgICAgICAgbWFyZ2luOiByZW0tY2FsYyg4KSAwIDAgMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmFib3ZlLW1lbnUtc2VhcmNoLXdyYXBwZXIge1xuXG4gICAgICBmb3JtI3NlYXJjaGZvcm0ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtZWRpYSAjeyRicmVhazc2N30ge1xuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi10d28ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgLmxvZ28td3JhcHBlciB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICAgIC5sb2dvLXdyYXBwZXIgaW1nIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuICAgIC50b3AtYmFyIC50b3AtYmFyLXRpdGxlIGEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gICAgLnRvcC1iYXIgLnRvcC1iYXItcmlnaHQgLmFsdC1uYXYtd3JhcHBlciB7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgdWwubWVudSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDEwKSAwO1xuICAgICAgfVxuICAgIH1cbiAgICAudG9wLWJhciAudG9wLWJhci1yaWdodCAudG9wLWJhci1zb2NpYWwge1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICAgIC50b3AtYmFyIC50b3AtYmFyLXJpZ2h0ID4gLmRyb3Bkb3duLm1lbnUuZGVza3RvcC1tZW51IHtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gM3JlbSk7XG4gICAgfVxuICB9XG59XG5cbkBtZWRpYSAjeyRicmVhazY0MH0ge1xuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi10d28ge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgIC5sb2dvLXdyYXBwZXIuaGlkZS1mb3Itc21hbGwtb25seSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC50b3AtYmFyIHtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLnRvcC1iYXItc29jaWFsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5tZW51LXNlYXJjaC13cmFwcGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCJoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi10aHJlZSB7XG5cbiAgLnRvcC1iYXIge1xuXG4gICAgLnRvcC1iYXItdG9wIHtcblxuICAgICAgLmFsdC1uYXYtd3JhcHBlciB7XG4gICAgICAgIG9yZGVyOiAxO1xuXG4gICAgICAgIC5tZW51IHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAudG9wLWJhci1sZWZ0IHtcbiAgICAgIG9yZGVyOiAyO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIC5kZXNrdG9wLW1lbnUge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBvcmRlcjogMztcbiAgICAgIH1cbiAgICAgIC50b3AtYmFyLXRpdGxlIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIG9yZGVyOiAxO1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIC50b3AtYmFyLXNvY2lhbCB7XG5cbiAgICAgICAgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgICAgQG1lZGlhICN7JGJyZWFrMTAyNH0ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIH1cbiAgICAgICAgICBsaSB7XG5cbiAgICAgICAgICAgICYudGVsZXBob25lIHtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBuYXYudG9wLWJhci5oYXMtc2VhcmNoIHtcblxuICAgIHVsLmRlc2t0b3AtbWVudSB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gNHJlbSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDYwKTtcbiAgICB9XG4gIH1cbiAgbmF2LnRvcC1iYXIge1xuXG4gICAgLmxvZ28td3JhcHBlciAuY3VzdG9tLWxvZ28tbGluayB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuYWx0LW5hdi13cmFwcGVyIHtcblxuICAgICAgLmFsdC1uYXYtbXktY2FydCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuICAgIC5hYm92ZS1tZW51LXNlYXJjaC13cmFwcGVyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcblxuICAgICAgZm9ybSNzZWFyY2hmb3JtIHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgfVxuICAgIH1cbiAgICAubWVudS1zZWFyY2gtd3JhcHBlciB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDM2KTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgd2lkdGg6IHJlbS1jYWxjKDM2KTtcblxuICAgICAgYnV0dG9uIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoMzYpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMzYpO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDM2KTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwpO1xuICAgICAgfVxuICAgICAgZm9ybSNzZWFyY2hmb3JtIHtcblxuICAgICAgICBAbWVkaWEgI3skYnJlYWsxMDI0fSB7XG4gICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgICAmLnNob3cge1xuICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgIEBtZWRpYSAjeyRicmVhazEwMjR9IHtcbiAgICAgICAgICAgIG1hcmdpbjogcmVtLWNhbGMoOCkgMCAwIDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmlubGluZS1zb2NpYWwtc2VhcmNoLXdyYXBwZXIge1xuXG4gICAgICBidXR0b24ge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG4gICAgICBmb3JtI3NlYXJjaGZvcm0ge1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhICN7JGJyZWFrMTAyNH0ge1xuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi10aHJlZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAubG9nby13cmFwcGVyIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgLmxvZ28td3JhcHBlciBpbWcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG4gICAgLnRvcC1iYXIgLnRvcC1iYXItdGl0bGUgYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgICAudG9wLWJhciAudG9wLWJhci1yaWdodCAuYWx0LW5hdi13cmFwcGVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICB1bC5tZW51IHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbjogMC42MjVyZW0gMDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnRvcC1iYXIgLnRvcC1iYXItcmlnaHQgPiAuZHJvcGRvd24ubWVudS5kZXNrdG9wLW1lbnUge1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzcmVtKTtcbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhICN7JGJyZWFrNjQwfSB7XG4gIGhlYWRlciNtYXN0aGVhZC5oZWFkZXItb3B0aW9uLXRocmVlIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAubG9nby13cmFwcGVyLmhpZGUtZm9yLXNtYWxsLW9ubHkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAudG9wLWJhciB7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC50b3AtYmFyLXNvY2lhbCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAubWVudS1zZWFyY2gtd3JhcHBlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tZm91ciB7XG4gIHBhZGRpbmc6IDAgMCByZW0tY2FsYyg4KSAwICFpbXBvcnRhbnQ7O1xuXG4gIC50b3AtYmFyIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG5cbiAgICAudG9wLWJhci10b3Age1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQ6ICRibHVlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIC8vZmxleC13cmFwOiB3cmFwO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgbWFyZ2luOiAwIHJlbS1jYWxjKC0xNSkgcmVtLWNhbGMoMTUpO1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTApIHJlbS1jYWxjKDE1KTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAxLjg3NXJlbSk7XG5cbiAgICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGJsdWU7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBsZWZ0OiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDIwMCU7XG4gICAgICB9XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICB9XG4gICAgICAuYWx0LW5hdi13cmFwcGVyIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIEBtZWRpYSAjeyRicmVhazc2N30ge1xuICAgICAgICAgIC8vanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgLy9tYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7XG4gICAgICAgICAgLy93aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICAubWVudSA+IGxpIHtcbiAgICAgICAgICBib3JkZXItbGVmdDogcmVtLWNhbGMoMikgc29saWQgJHdoaXRlO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYyg4KTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDgpO1xuXG4gICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubWVudSA+IGxpID4gYSB7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDIpO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmhvdmVyOmJlZm9yZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYWx0LW5hdi1teS1jYXJ0IHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMTApO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICAvL2JhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgIC8vY29sb3I6ICRyZWQ7XG5cbiAgICAgICAgICAgIHNwYW4uY2FydC1jb250ZW50cyB7XG4gICAgICAgICAgICAgIC8vYmFja2dyb3VuZDogJHJlZDtcbiAgICAgICAgICAgICAgLy9jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgICAgIC8vYmFja2dyb3VuZDogJHJlZDtcbiAgICAgICAgICAgICAgLy9jb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICAgIHNwYW4uY2FydC1jb250ZW50cyB7XG4gICAgICAgICAgICAgICAgLy9iYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgLy9jb2xvcjogJHJlZDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnRvcC1iYXItc29jaWFsIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBAbWVkaWEgI3skYnJlYWs3Njd9IHtcbiAgICAgICAgICAvL2p1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIC8vd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICB1bC5zb2NpYWwtbWVkaWEtd3JhcHBlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICBAbWVkaWEgI3skYnJlYWs3Njd9IHtcbiAgICAgICAgICAgIC8vdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGxpIGEge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgbGk6bm90KC5jdXN0b20tYnV0dG9uKTpub3QoLnRlbGVwaG9uZSkgYSwgbGkubWVudS1zZWFyY2gtd3JhcHBlciBidXR0b24ge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygzNik7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJhY2tncm91bmQpO1xuXG4gICAgICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgICBjb2xvcjogJGJsdWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIGxpLnRlbGVwaG9uZSB7XG4gICAgICAgICAgICBAbWVkaWEgI3skYnJlYWsxMDI0fSB7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBsaS5pbmxpbmUtc29jaWFsLXNlYXJjaC13cmFwcGVyIHtcblxuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGZvcm0jc2VhcmNoZm9ybSB7XG5cbiAgICAgICAgICAgICAgJi5zaG93IHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDEwKSAwIDAgMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIGxpLmN1c3RvbS1idXR0b24gYSB7XG4gICAgICAgICAgICAvL2JhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgIC8vY29sb3I6ICRyZWQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgICAgIC8vYmFja2dyb3VuZDogJHJlZCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAvL2NvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC50b3AtYmFyLW15LWNhcnQge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygxMCk7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIC8vYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgLy9jb2xvcjogJHJlZDtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDgpIHJlbS1jYWxjKDEwKSByZW0tY2FsYyg3KTtcblxuICAgICAgICAgICAgc3Bhbi5jYXJ0LWNvbnRlbnRzIHtcbiAgICAgICAgICAgICAgLy9iYWNrZ3JvdW5kOiAkcmVkO1xuICAgICAgICAgICAgICAvL2NvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgLy9iYWNrZ3JvdW5kOiAkcmVkICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIC8vY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAgICAgICBzcGFuLmNhcnQtY29udGVudHMge1xuICAgICAgICAgICAgICAgIC8vYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgICAgIC8vY29sb3I6ICRyZWQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnRvcC1iYXItbGVmdCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogMzAwcHg7XG4gICAgICBAbWVkaWEgI3skYnJlYWsxMDI0fSB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgLnRvcC1iYXItdGl0bGUge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgICAubG9nby13cmFwcGVyLmhpZGUtZm9yLXNtYWxsLW9ubHkge1xuXG4gICAgICAgIC5jdXN0b20tbG9nby1saW5rIHtcbiAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDQwKTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxOC43NXJlbSk7XG4gICAgICBAbWVkaWEgI3skYnJlYWsxMDI0fSB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgICAgLmRlc2t0b3AtbWVudSB7XG4gICAgICAgIG9yZGVyOiAyO1xuICAgICAgfVxuICAgICAgLnRvcC1iYXItc2VhcmNoIHtcblxuICAgICAgICAuYWJvdmUtbWVudS1zZWFyY2gtd3JhcHBlciB7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgcmVtLWNhbGMoNSkgMDtcblxuICAgICAgICAgIGZvcm0jc2VhcmNoZm9ybSB7XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgcmlnaHQ6IHJlbS1jYWxjKDEwKSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuYWJvdmUtbWVudS1zZWFyY2gtd3JhcHBlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuICB9XG4gIC5hYm92ZS1tZW51LXNlYXJjaC13cmFwcGVyLFxuICAuaW5saW5lLXNvY2lhbC1zZWFyY2gtd3JhcHBlciB7XG4gICAgaGVpZ2h0OiByZW0tY2FsYygzNik7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgZm9ybSNzZWFyY2hmb3JtIHtcbiAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgIGJvcmRlcjogcmVtLWNhbGMoMSkgc29saWQgJGdyYXk7XG4gICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYygzKTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMjAwKTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIEBtZWRpYSAjeyRicmVhazEwMjR9IHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgY29udGVudDogJ1xcZjAwMic7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBmb250YXdlc29tZSAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogMzRweDtcbiAgICAgICAgaGVpZ2h0OiAzNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMzRweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB9XG4gICAgICBpbnB1dCNzZWFyY2hzdWJtaXQge1xuICAgICAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAzNHB4O1xuICAgICAgICBoZWlnaHQ6IDM0cHg7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICB9XG4gICAgICBpbnB1dCNzIHtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDAgMTBweCAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMzRweDtcbiAgICAgICAgaGVpZ2h0OiAzNHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgfVxuICAgICAgLmlucHV0LWdyb3VwIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBuYXYudG9wLWJhci5oYXMtc2VhcmNoIHtcblxuICAgIHVsLmRlc2t0b3AtbWVudSB7XG4gICAgICAvL3dpZHRoOiBjYWxjKDEwMCUgLSAzcmVtKSAhaW1wb3J0YW50O1xuICAgICAgLy9tYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgbmF2LnRvcC1iYXIge1xuXG4gICAgLm1lbnUtc2VhcmNoLXdyYXBwZXIge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgaGVpZ2h0OiByZW0tY2FsYygzNik7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMDtcbiAgICAgIHdpZHRoOiByZW0tY2FsYygzNik7XG5cbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlciAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygzNik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygzNik7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICB3aWR0aDogcmVtLWNhbGMoMzYpO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCk7XG4gICAgICB9XG4gICAgICBmb3JtI3NlYXJjaGZvcm0ge1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgJi5zaG93IHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmlubGluZS1zb2NpYWwtc2VhcmNoLXdyYXBwZXIge1xuXG4gICAgICBidXR0b24ge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG4gICAgICBmb3JtI3NlYXJjaGZvcm0ge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhICN7JGJyZWFrMTAyNH0ge1xuICBoZWFkZXIjbWFzdGhlYWQuaGVhZGVyLW9wdGlvbi1mb3VyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIC5sb2dvLXdyYXBwZXIge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICAubG9nby13cmFwcGVyIGltZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cbiAgICBuYXYudG9wLWJhciAudG9wLWJhci10aXRsZSBhIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIH1cbiAgICBuYXYudG9wLWJhciAudG9wLWJhci1yaWdodCAuYWx0LW5hdi13cmFwcGVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICB1bC5tZW51IHtcbiAgICAgICAgbWFyZ2luOiAwLjYyNXJlbSAwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gICAgbmF2LnRvcC1iYXIgLnRvcC1iYXItcmlnaHQgLnRvcC1iYXItc29jaWFsIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICB1bC5zb2NpYWwtbWVkaWEtd3JhcHBlciB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgbmF2LnRvcC1iYXIgLnRvcC1iYXItcmlnaHQgPiAuZHJvcGRvd24ubWVudS5kZXNrdG9wLW1lbnUge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAvL21heC13aWR0aDogY2FsYygxMDAlIC0gM3JlbSk7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgLy9tYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB9XG4gICAgbmF2LnRvcC1iYXIgLnRvcC1iYXItcmlnaHQgZm9ybSNzZWFyY2hmb3JtIHtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgICByaWdodDogMDtcblxuICAgICAgJi5zaG93IHtcblxuICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDgpIDAgMCAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgI3skYnJlYWs2NDB9IHtcbiAgaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tZm91ciB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgLmxvZ28td3JhcHBlci5oaWRlLWZvci1zbWFsbC1vbmx5IHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLnRvcC1iYXIge1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAudG9wLWJhci1zb2NpYWwge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLm1lbnUtc2VhcmNoLXdyYXBwZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi50aXRsZS1iYXItbGVmdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAudGl0bGUtYmFyLXRpdGxlIHtcblxuICAgIGEuY3VzdG9tLWxvZ28tbGluayB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMjUwKTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgaW1nLCBzdmcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbmJvZHk6bm90KC50b3BiYXIpIG5hdi5zaXRlLW5hdmlnYXRpb24ge1xuICBAbWVkaWEgI3skYnJlYWs2NDB9IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbmJvZHkudG9wYmFyIGhlYWRlcjpub3QoLmhlYWRlci1vcHRpb24tb25lKSBuYXYuc2l0ZS1uYXZpZ2F0aW9uIHtcblxuICAudG9wLWJhci1yaWdodCwgLnRvcC1iYXItdG9wLCAudG9wLWJhci1ib3R0b20gLm1lbnUtc2VhcmNoLXdyYXBwZXIge1xuICAgIEBtZWRpYSAjeyRicmVhazY0MH0ge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuYm9keS50b3BiYXIgaGVhZGVyI21hc3RoZWFkLmhlYWRlci1vcHRpb24tdGhyZWUgbmF2LnNpdGUtbmF2aWdhdGlvbiB7XG5cbiAgLm1lbnUtc2VhcmNoLXdyYXBwZXIge1xuICAgIEBtZWRpYSAjeyRicmVhazY0MH0ge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxubmF2Lm9mZi1jYW52YXMge1xuXG4gIGEuY3VzdG9tLWxvZ28tbGluayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDAgMXJlbTtcblxuICAgIGltZy5jdXN0b20tbG9nbyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogcmVtLWNhbGMoMTApIGF1dG87XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cbiAgYnV0dG9uLnN1Ym1lbnUtdG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kOiAkcmVkO1xuXG4gICAgJjphZnRlciB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgJiAubWVudSA+IGxpIHtcblxuICB9XG4gICYgLm1lbnU6bm90KC5uZXN0ZWQpID4gbGkgPiBhIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KSAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbWluLWhlaWdodDogcmVtLWNhbGMoNDApO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cbiAgJiAubWVudSA+IGxpLmN1cnJlbnQtbWVudS1pdGVtID4gYSxcbiAgJiAubWVudSA+IGxpLmN1cnJlbnQtbWVudS1wYXJlbnQgPiBhIHtcbiAgICBiYWNrZ3JvdW5kOiAkeWVsbG93O1xuICB9XG4gIC5tZW51Lm5lc3RlZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgICAmID4gbGkgPiBhIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDQwKTtcbiAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMzApICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMTIpO1xuICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDExKTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgIH1cbiAgICAmID4gbGkgPiB1bCA+IGxpID4gYSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoNik7XG4gICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoNik7XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJ+KXpic7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygxNyk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoNCk7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiByZW0tY2FsYygyKTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnN1Ym1lbnUtdG9nZ2xlIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGhlaWdodDogcmVtLWNhbGMoNDAuMzgpO1xuICAgICY6YWZ0ZXIge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgfVxuICAmID4gdWwubWVudSB7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGxpLmN1cnJlbnRfcGFnZV9wYXJlbnQge1xuXG4gICAgICBhIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHllbGxvdztcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgfVxuICAgIH1cbiAgfVxuICB1bC5tZW51LmFsdC1tZW51IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG4gICYgPiAubWVudSA+IGxpLmlzLWFjdGl2ZSA+IGEsXG4gIC5zdWJtZW51IGxpLmlzLWFjdGl2ZSBhIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gIH1cbiAgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG1hcmdpbjogcmVtLWNhbGMoMTApIDAgcmVtLWNhbGMoMTUpIDA7XG4gICAgcGFkZGluZzogMCByZW0tY2FsYygxNSk7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgIGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgaGVpZ2h0OiByZW0tY2FsYyg0Mik7XG4gICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoNDIpO1xuICAgICAgd2lkdGg6IHJlbS1jYWxjKDQyKTtcbiAgICB9XG4gICAgbGkgYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgbGkuY3VzdG9tLWJ1dHRvbiB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IHJlbS1jYWxjKDE1KSAwIDAgMDtcblxuICAgICAgYSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDMpO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1mYW1pbHk6ICRiYXJsb3c7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiByZW0tY2FsYygyKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEyKSByZW0tY2FsYygxMCk7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsKTtcbiAgICAgIH1cbiAgICB9XG4gICAgbGkuY3VzdG9tLWJ1dHRvbi50b3AtYmFyLW15LWNhcnQge1xuXG4gICAgICBhIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDgpIHJlbS1jYWxjKDEwKTtcbiAgICAgIH1cbiAgICAgIGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDIpO1xuICAgICAgfVxuICAgICAgc3Bhbi5jYXJ0LWNvbnRlbnRzIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICBjb2xvcjogJGJsdWU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygyMCk7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgcmVtLWNhbGMoNSk7XG4gICAgICAgIG1pbi13aWR0aDogcmVtLWNhbGMoMjApO1xuICAgICAgfVxuICAgIH1cbiAgICBsaS5tZW51LXNlYXJjaC13cmFwcGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIGxpOm5vdCguY3VzdG9tLWJ1dHRvbikge1xuICAgICAgbWFyZ2luOiAwIHJlbS1jYWxjKDUpO1xuXG4gICAgICBhIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGFsbW9zdGJsYWNrO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihiYWNrZ3JvdW5kKTtcblxuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzLCAmOmFjdGl2ZSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGdyZWVuO1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmFsdC1uYXYtbXktY2FydCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgYSB7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgYmFja2dyb3VuZDogJHJlZDtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtZmFtaWx5OiAkYmFybG93O1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNSkgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDJyZW0pO1xuICAgICAgbWFyZ2luOiByZW0tY2FsYygxNSkgYXV0byByZW0tY2FsYygxNSk7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYyg3KSByZW0tY2FsYygxMCk7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCk7XG5cbiAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYmx1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMik7XG4gICAgfVxuICAgIHNwYW4uY2FydC1jb250ZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgY29sb3I6ICRibHVlO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDIwKTtcbiAgICAgIGhlaWdodDogcmVtLWNhbGMoMjApO1xuICAgICAgbWFyZ2luOiAwIDAgMCByZW0tY2FsYyg1KTtcbiAgICAgIG1pbi13aWR0aDogcmVtLWNhbGMoMjApO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgfVxuICBmb3JtI3NlYXJjaGZvcm0ge1xuICAgIC8vIGJvcmRlcjogcmVtLWNhbGMoMSkgc29saWQgJHJlZDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAycmVtKTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIGNvbnRlbnQ6ICdcXGYwMDInO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIGhlaWdodDogcmVtLWNhbGMoNDIpO1xuICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDQyKTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgdG9wOiAwO1xuICAgICAgd2lkdGg6IHJlbS1jYWxjKDQyKTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uLy4uLy4uL3NyYy9hc3NldHMvaW1hZ2VzL2JsYWNrLWFycm93LnN2Zykgbm8tcmVwZWF0IGxlZnQgY2VudGVyO1xuICAgICAgICAgIGNvbG9yOiAkYWxtb3N0YmxhY2s7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBmb250YXdlc29tZTtcbiAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgICByaWdodDogcmVtLWNhbGMoMTgpO1xuICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDM4KTtcbiAgICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKHJpZ2h0KTtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcblxuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHJpZ2h0OiByZW0tY2FsYygxMCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIGlucHV0I3Mge1xuICAgICAgYmFja2dyb3VuZDogJGdyYXk7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgaGVpZ2h0OiByZW0tY2FsYyg0Mik7XG4gICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoNDIpO1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoNCkgcmVtLWNhbGMoMTApICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIGlucHV0I3NlYXJjaHN1Ym1pdCB7XG4gICAgICBiYWNrZ3JvdW5kOiAkeWVsbG93ICFpbXBvcnRhbnQ7XG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDQyKTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgICAgd2lkdGg6IHJlbS1jYWxjKDQyKTtcblxuICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIGJvZHkudG9wYmFyIGhlYWRlciNtYXN0aGVhZCAudG9wLWJhciBuYXYjbW9iaWxlLW1lbnUgLm1lbnUgPiBsaSA+IGEge1xuLy8gICBwYWRkaW5nOiByZW0tY2FsYygxMCkgMCAhaW1wb3J0YW50O1xuLy8gfVxuYm9keS50b3BiYXIgaGVhZGVyI21hc3RoZWFkIC50b3AtYmFyIG5hdiNtb2JpbGUtbWVudS5tb2JpbGUtbWVudS52ZXJ0aWNhbC5tZW51IHtcblxuICBwYWRkaW5nOiByZW0tY2FsYygxNSk7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIC5zdWJtZW51LXRvZ2dsZSB7XG4gICAgYmFja2dyb3VuZDogJHJlZDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGhlaWdodDogcmVtLWNhbGMoNDAuMzgpO1xuICAgICY6YWZ0ZXIge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgfVxuICAmID4gdWwubWVudSB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICB1bC5tZW51LmFsdC1tZW51IHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAgIHotaW5kZXg6IDEwICFpbXBvcnRhbnQ7XG5cbiAgICBsaSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbiAgJiAubWVudTpub3QoLm5lc3RlZCkgPiBsaSA+IGEge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygxMSkgMCAhaW1wb3J0YW50O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cbiAgJiAubWVudS5uZXN0ZWQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgJiA+IGxpID4gYSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KSAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwKSByZW0tY2FsYygyMCkgIWltcG9ydGFudDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgIH1cbiAgfVxuICAmID4gLm1lbnUgPiBsaS5pcy1hY3RpdmUgPiBhLFxuICAuc3VibWVudSBsaS5pcy1hY3RpdmUgYSB7XG4gICAgY29sb3I6ICRyZWQ7XG4gICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJHJlZDtcbiAgICB9XG4gIH1cbiAgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIge1xuICAgIG1hcmdpbjogMCAwIDAuNjI1cmVtIDA7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgIEBtZWRpYSAjeyRicmVhazY0MH0ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgd2lkdGg6IDIuMjVyZW07XG4gICAgICBoZWlnaHQ6IDIuMjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDgpO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogOTk7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgIGZsZXgtZ3JvdzogMTtcblxuICAgICAgYSwgaSB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIGxpLmlubGluZS1zb2NpYWwtc2VhcmNoLXdyYXBwZXIge1xuICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIH1cbiAgICBsaTpub3QoLmN1c3RvbS1idXR0b24pOmFmdGVyIHtcbiAgICAgIHdpZHRoOiAyLjI1cmVtO1xuICAgICAgaGVpZ2h0OiAyLjI1cmVtO1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlLW91dDtcbiAgICB9XG4gICAgbGkuaW5saW5lLXNvY2lhbC1zZWFyY2gtd3JhcHBlciB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gICAgbGkubWVudS1zZWFyY2gtd3JhcHBlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICBsaS5jdXN0b20tYnV0dG9uIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICBhIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRiYXJsb3c7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIHBhZGRpbmc6IDAgcmVtLWNhbGMoMTApO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCk7XG5cbiAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgbGkuY3VzdG9tLWJ1dHRvbi50b3AtYmFyLW15LWNhcnQsXG4gICAgbGkuY3VzdG9tLWJ1dHRvbi5hbHQtbmF2LW15LWNhcnQge1xuXG4gICAgICBpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygyKTtcbiAgICAgIH1cbiAgICAgIHNwYW4uY2FydC1jb250ZW50cyB7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgY29sb3I6ICRibHVlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyMCk7XG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoMjApO1xuICAgICAgICBtYXJnaW46IDAgMCAwIHJlbS1jYWxjKDUpO1xuICAgICAgICBtaW4td2lkdGg6IHJlbS1jYWxjKDIwKTtcbiAgICAgIH1cbiAgICB9XG4gICAgbGkgYSwgbGkgYSBpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICB3aWR0aDogcmVtLWNhbGMoMzYpO1xuICAgICAgaGVpZ2h0OiByZW0tY2FsYygzNik7XG4gICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMzYpO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIGxpLmN1c3RvbS1idXR0b24gYSB7XG4gICAgICBwYWRkaW5nOiAwIHJlbS1jYWxjKDEwKTtcbiAgICB9XG4gIH1cbiAgLmFsdC1uYXYtbXktY2FydCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgYSB7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgYmFja2dyb3VuZDogJHJlZDtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtZmFtaWx5OiAkYmFybG93O1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNSkgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IHJlbS1jYWxjKDcpIDAgcmVtLWNhbGMoMTUpO1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoOCkgcmVtLWNhbGMoMTApO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwpO1xuXG4gICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGJsdWU7XG4gICAgICB9XG4gICAgfVxuICAgIGkge1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDIpO1xuICAgIH1cbiAgICBzcGFuLmNhcnQtY29udGVudHMge1xuICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgIGNvbG9yOiAkYmx1ZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyMCk7XG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDIwKTtcbiAgICAgIG1hcmdpbjogMCAwIDAgcmVtLWNhbGMoNSk7XG4gICAgICBtaW4td2lkdGg6IHJlbS1jYWxjKDIwKTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gIH1cbiAgZm9ybSNzZWFyY2hmb3JtIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBib3JkZXI6IHJlbS1jYWxjKDEpIHNvbGlkICRncmF5O1xuICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDMpO1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICBtYXJnaW46IDA7XG4gICAgQG1lZGlhICN7JGJyZWFrMTAyNH0ge1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgY29udGVudDogJ1xcZjAwMic7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBmb250LWZhbWlseTogZm9udGF3ZXNvbWUgIWltcG9ydGFudDtcbiAgICAgIGhlaWdodDogcmVtLWNhbGMoMzQpO1xuICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDM0KTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgdG9wOiAwO1xuICAgICAgd2lkdGg6IHJlbS1jYWxjKDM0KTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgICBpbnB1dCNzZWFyY2hzdWJtaXQge1xuICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICB3aWR0aDogcmVtLWNhbGMoMzQpO1xuICAgICAgaGVpZ2h0OiByZW0tY2FsYygzNCk7XG4gICAgICBiYWNrZ3JvdW5kOiAkcmVkO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgICAgIH1cbiAgICB9XG4gICAgaW5wdXQjcyB7XG4gICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgaGVpZ2h0OiByZW0tY2FsYygzNCk7XG4gICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMzQpO1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgcGFkZGluZzogMCByZW0tY2FsYygxMCkgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmlucHV0LWdyb3VwIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cbn1cbiIsIkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDAuMDYyNXJlbSkgeyAvLyBmb3Igc2NyZWVuIHNpemVzIGxhcmdlciB0aGFuIDY0MHB4IHdpZGUgb25seVxuICAjbWFzdGhlYWQge1xuICAgIHdpbGwtY2hhbmdlOiBvcGFjaXR5LCB0cmFuc2Zvcm07XG4gIH1cbiAgLy8gSGVhZGVyIE9wdGlvbiBPbmVcbiAgYm9keS5zdGlja3ktcHJlcCAjbWFzdGhlYWQuc3RpY2t5LWhlYWRlciB7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gIH1cbiAgYm9keS5hZG1pbi1iYXIuc3RpY2t5LXByZXAgI21hc3RoZWFkLnN0aWNreS1oZWFkZXIge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gIH1cbiAgYm9keS5zdGlja3ktaGVhZGVyLnN0aWNreS1wcmVwICNtYXN0aGVhZC5zdGlja3ktaGVhZGVyIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRvcDogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDFzLCBvcGFjaXR5IDFzO1xuICB9XG4gIGJvZHkuYWRtaW4tYmFyLnN0aWNreS1oZWFkZXIuc3RpY2t5LXByZXAgI21hc3RoZWFkLnN0aWNreS1oZWFkZXIge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdG9wOiByZW0tY2FsYygzMik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxcywgb3BhY2l0eSAxcztcbiAgfVxufVxuIiwiLnRvcC1iYXIge1xuXG4gIC50b3AtYmFyLXNvY2lhbCB7XG5cbiAgICBsaS5jdXN0b20tYnV0dG9uIHtcblxuICAgICAgYSB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkYmFybG93O1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KSAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgbGkuY3VzdG9tLWJ1dHRvbi50b3AtYmFyLW15LWNhcnQge1xuXG4gICAgICBpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygyKTtcbiAgICAgIH1cbiAgICAgIHNwYW4uY2FydC1jb250ZW50cyB7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgY29sb3I6ICRibHVlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyMCk7XG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoMjApO1xuICAgICAgICBtYXJnaW46IDAgMCAwIHJlbS1jYWxjKDUpO1xuICAgICAgICBtaW4td2lkdGg6IHJlbS1jYWxjKDIwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgdWwuc29jaWFsLW1lZGlhLXdyYXBwZXIge1xuXG4gICAgLm1lbnUtc2VhcmNoLXdyYXBwZXIge1xuICAgICAgYm9yZGVyLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbmJvZHkudG9wYmFyIC5tZW51LWljb24sXG5ib2R5Lm9mZmNhbnZhcyAubWVudS1pY29uIHtcblxuICAmOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IDAgcmVtLWNhbGMoNykgMCBpbmhlcml0O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiByZW0tY2FsYygyKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsKTtcbiAgfVxuICAmOmFmdGVyIHtcbiAgICBib3gtc2hhZG93OiAwIHJlbS1jYWxjKDE0KSAwIGluaGVyaXQ7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwpO1xuICB9XG4gICYuYWN0aXZlOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IHJlbS1jYWxjKDYpO1xuICAgIHRvcDogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIH1cbiAgJi5hY3RpdmU6YWZ0ZXIsXG4gICYuYWN0aXZlOmhvdmVyOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogMCByZW0tY2FsYygxNCkgMCBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogcmVtLWNhbGMoLTkpO1xuICAgIHRvcDogcmVtLWNhbGMoLTUpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIH1cbn1cbiIsIi5ob21lLWhlcm8td3JhcHBlciB7XG4gIHBhZGRpbmctdG9wOiByZW0tY2FsYygzMDApO1xuICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMzAwKTtcbiAgQG1lZGlhICN7JGJyZWFrMTAyNH0ge1xuICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygxMjApO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygxMzApO1xuICB9XG4gIEBtZWRpYSAjeyRicmVhazc2N30ge1xuICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYyg4MCk7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDkwKTtcbiAgfVxuICAvLyBAbWVkaWEgI3skYnJlYWs0ODB9IHtcbiAgLy8gICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoNTApO1xuICAvLyAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg2MCk7XG4gIC8vIH1cbiAgLmhvbWUtaGVyby1jYXB0aW9uIHtcbiAgICAvLyBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LC41KTtcbiAgICAvLyBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAvLyBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWF4LXdpZHRoOiByZW0tY2FsYyg2NzUpO1xuICAgIC8vIHBhZGRpbmc6IHJlbS1jYWxjKDMwKSByZW0tY2FsYygyMCk7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBoMiB7XG4gICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICBmb250LWZhbWlseTogJGJhcmxvdztcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNjQpICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogOTAwICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50O1xuICAgICAgQG1lZGlhICN7JGJyZWFrNDgwfSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNTUpICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIHAge1xuICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgZm9udC1mYW1pbHk6ICRzb3VyY2VzYW5zO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cbiAgICAuYnMtYnRuIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygyMCkgcmVtLWNhbGMoNjApO1xuICAgIH1cbiAgfVxufVxuLmhvbWUtdGFnbGluZS13cmFwcGVyIHtcbiAgcGFkZGluZzogcmVtLWNhbGMoMTAwKSAwO1xuXG4gIEBtZWRpYSAjeyRicmVhazc2N30ge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDgwKSAwO1xuICB9XG5cbiAgaDIge1xuICAgIGNvbG9yOiAkYWxtb3N0YmxhY2sgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDQwKSAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDI1cmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDtcbiAgfVxufVxuLmhvbWUtcG9ydGFscy13cmFwcGVyIHtcbiAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKC0yMCkgIWltcG9ydGFudDtcbiAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoLTEwMCkgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogY2FsYygxMDAlICsgMjBweCkgIWltcG9ydGFudDtcbiAgei1pbmRleDogOTk5O1xuXG4gIC5ob21lLXBvcnRhbCB7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIGJveC1zaGFkb3c6ICRib3hzaGFkb3cyO1xuICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygyMCk7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMyUgLSAxLjI1cmVtKTtcblxuICAgIEBtZWRpYSAjeyRicmVhazkwMH0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pO1xuXG4gICAgICAmLmhvbWUtcG9ydGFsLTMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC52Y19jb2x1bW4taW5uZXIge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gICAgLndwYl9zaW5nbGVfaW1hZ2Uge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgaW1nIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDFzIGVhc2UtaW4tb3V0O1xuICAgICAgfVxuICAgIH1cbiAgICBoMyB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDMyKSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNDApO1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMzApIHJlbS1jYWxjKDQwKTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODQuMzc1ZW0pIHtcbiAgICAgICAgbWluLWhlaWdodDogcmVtLWNhbGMoMTM2KTtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRicmVhazkwMH0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDIwKSByZW0tY2FsYygyMCk7XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skYnJlYWs3Njd9IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTApIHJlbS1jYWxjKDIwKTtcbiAgICAgIH1cbiAgICB9XG4gICAgYS5wb3J0YWwtbGVhcm4tbW9yZSB7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMTVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDQxKSByZW0tY2FsYyg0MCkgcmVtLWNhbGMoNDApO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsKTtcblxuICAgICAgQG1lZGlhICN7JGJyZWFrOTAwfSB7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDQwKSByZW0tY2FsYygyMCkgcmVtLWNhbGMoMzkpO1xuICAgICAgfVxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDQyKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwpO1xuICAgICAgfVxuICAgICAgc3Bhbi5wb3J0YWwtbGVhcm4tbW9yZS1pbm5lciB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IHJlbS1jYWxjKDEpIHNvbGlkICRhbG1vc3RibGFjaztcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICB9XG4gICAgICAmOmhvdmVyLCAmOmZvY3VzLCAmOmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRsdGdyYXkgIWltcG9ydGFudDtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMjApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICY6aG92ZXIsICY6Zm9jdXMge1xuXG4gICAgICAud3BiX3NpbmdsZV9pbWFnZSB7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5uZXdzLWFuZC1ldmVudHMtd3JhcHBlciB7XG4gIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygxMDApO1xuICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMjAwKTtcblxuICBAbWVkaWEgI3skYnJlYWs3Njd9IHtcbiAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMTYwKTtcbiAgfVxuXG4gIC5uZXdzLWFuZC1ldmVudHMtY29sdW1uLTEge1xuICAgIGJvcmRlci1yaWdodDogcmVtLWNhbGMoNCkgc29saWQgJGFsbW9zdGJsYWNrO1xuXG4gICAgaDMge1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMTVyZW07XG4gICAgfVxuICAgIEBtZWRpYSAjeyRicmVhazc2N30ge1xuICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNjApO1xuICAgIH1cbiAgfVxuICAubmV3cy1hbmQtZXZlbnRzLWNvbHVtbi0yIHtcbiAgICBib3JkZXItbGVmdDogcmVtLWNhbGMoNCkgc29saWQgJGFsbW9zdGJsYWNrO1xuICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygtNCk7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMikgcmVtLWNhbGMoMjEpIHJlbS1jYWxjKDgpIHJlbS1jYWxjKDI1KTtcblxuICAgIEBtZWRpYSAjeyRicmVhazc2N30ge1xuICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDYwKTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICAgIC53cGJfd3JhcHBlciB7XG5cbiAgICAgIHAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRiYXJsb3c7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLm5ld3MtYW5kLWV2ZW50cy1jb2x1bW4tMyB7XG5cbiAgICAud3BiX3dyYXBwZXIge1xuXG4gICAgICBwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICBiciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBzdHJvbmcge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkYmFybG93O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE2KSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzIpICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogJGFsbW9zdGJsYWNrO1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmV2ZW50LWV4Y2VycHQge1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygxMik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQwKTtcblxuICAgICAgICBAbWVkaWEgI3skYnJlYWs3Njd9IHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICB9XG4gICAgICAgICYgKyBwIGEge1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMTVyZW07XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgLy8gcGFkZGluZzogcmVtLWNhbGMoNDApIHJlbS1jYWxjKDQwKSByZW0tY2FsYygzOSk7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwpO1xuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYyg0MCk7XG4gICAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoNDIpO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBzcGFuLmV2ZW50LWxlYXJuLW1vcmUtaW5uZXIge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogcmVtLWNhbGMoMSkgc29saWQgJGFsbW9zdGJsYWNrO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMjApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBoMyB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYyg2NCkgIWltcG9ydGFudDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wMjVyZW07XG4gICAgbWF4LXdpZHRoOiByZW0tY2FsYygyMjApO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICBAbWVkaWEgI3skYnJlYWs3Njd9IHtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cbmEubmV3cy1sZWFybi1tb3JlLFxuYS5ibG9nLXJlYWQtbW9yZSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICBmb250LXdlaWdodDogNjAwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGxldHRlci1zcGFjaW5nOiAwLjE1cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgcGFkZGluZzogcmVtLWNhbGMoNDApIDAgcmVtLWNhbGMoMTApO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICBpbWcge1xuICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYyg0MCk7XG4gICAgd2lkdGg6IHJlbS1jYWxjKDQyKTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCk7XG4gIH1cbiAgc3Bhbi5ibG9nLXJlYWQtbW9yZS1pbm5lcixcbiAgc3Bhbi5uZXdzLWxlYXJuLW1vcmUtaW5uZXIge1xuICAgIGJvcmRlci1ib3R0b206IHJlbS1jYWxjKDEpIHNvbGlkICRhbG1vc3RibGFjaztcbiAgICBsaW5lLWhlaWdodDogMSAhaW1wb3J0YW50O1xuICB9XG4gICY6aG92ZXIsICY6Zm9jdXMge1xuXG4gICAgaW1nIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygyMCk7XG4gICAgfVxuICB9XG59XG5hLm5ld3MtbGVhcm4tbW9yZSB7XG5cbiAgQG1lZGlhICN7JGJyZWFrNzY3fSB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuLnJvdGF0aW5ndHdlZXRzIHtcbiAgbWFyZ2luOiByZW0tY2FsYygxMDApIDAgcmVtLWNhbGMoODApICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgcmVtLWNhbGMoODApO1xuXG4gIEBtZWRpYSAjeyRicmVhazc2N30ge1xuICAgIHBhZGRpbmc6IDAgcmVtLWNhbGMoNjApO1xuICB9XG5cbiAgLnNsaWNrLWxpc3Qge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG1heC13aWR0aDogcmVtLWNhbGMoMTAyNCk7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb2xvcjogJGdyZWVuO1xuICAgICAgY29udGVudDogJ1xcZjA5OSc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtZmFtaWx5OiAnZm9udGF3ZXNvbWUnICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDQ2KTtcbiAgICAgIGhlaWdodDogcmVtLWNhbGMoNDApO1xuICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDQwKTtcbiAgICAgIG1hcmdpbjogMCBhdXRvIHJlbS1jYWxjKDQwKTtcbiAgICAgIHdpZHRoOiByZW0tY2FsYyg0MCk7XG4gICAgfVxuICB9XG4gIGJ1dHRvbi5zbGljay1hcnJvdyB7XG4gICAgYm9yZGVyOiByZW0tY2FsYygyKSBzb2xpZCAkYWxtb3N0YmxhY2s7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDMwKSAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiAxMDA7XG4gICAgaGVpZ2h0OiByZW0tY2FsYyg2NCk7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHdpZHRoOiByZW0tY2FsYyg2NCk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwpO1xuXG4gICAgQG1lZGlhICN7JGJyZWFrNzY3fSB7XG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDQ4KTtcbiAgICAgIHdpZHRoOiByZW0tY2FsYyg0OCk7XG4gICAgfVxuXG4gICAgJi5zbGljay1uZXh0IHtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgICByaWdodDogMDtcbiAgICB9XG4gICAgc3BhbiB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDMwKSAhaW1wb3J0YW50O1xuICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDYyKTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGxlZnQ6IHJlbS1jYWxjKDIpO1xuXG4gICAgICBAbWVkaWEgI3skYnJlYWs3Njd9IHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCkgIWltcG9ydGFudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDQ2KTtcbiAgICAgICAgbGVmdDogcmVtLWNhbGMoMSk7XG4gICAgICB9XG4gICAgfVxuICAgICYuc2xpY2stcHJldiB7XG5cbiAgICAgIHNwYW4ge1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICByaWdodDogcmVtLWNhbGMoMik7XG5cbiAgICAgICAgQG1lZGlhICN7JGJyZWFrNzY3fSB7XG4gICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICByaWdodDogcmVtLWNhbGMoMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJjpob3ZlciwgJjpmb2N1cywgJjphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZDogJGdyZWVuO1xuICAgICAgYm9yZGVyOiByZW0tY2FsYygyKSBzb2xpZCAkZ3JlZW47XG5cbiAgICAgIHNwYW4ge1xuICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5yb3RhdGluZ3R3ZWV0IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgcCB7XG5cbiAgICAgICYucnR3X21haW4ge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDMyKTtcbiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgQG1lZGlhICN7JGJyZWFrNzY3fSB7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyOCk7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAvLyBib3JkZXItYm90dG9tOiByZW0tY2FsYygxKSBzb2xpZCAkYWxtb3N0YmxhY2s7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLnJ0d19tZXRhIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRzb3VyY2VzYW5zICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogJGdyZWVuO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkc291cmNlc2FucyAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG5cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLmhvbWUgLm1haW4td3JhcC5mdWxsLXdpZHRoIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gIC5tYWluLWNvbnRlbnQge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAjeyRicmVhazY0MH0ge1xuICAuaG9tZSAubWFpbi13cmFwIC5tYWluLWNvbnRlbnQge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAubWFpbi13cmFwIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi5icmVhZGNydW1icy13cmFwcGVyIHtcbiAgcGFkZGluZzogMCByZW0tY2FsYygxNSk7XG5cbiAgI2JyZWFkY3J1bWJzIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbjogcmVtLWNhbGMoMTYpIDA7XG5cbiAgICBsaSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGZvbnQtZmFtaWx5OiAkYmFybG93ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRiYXJsb3cgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICB9XG4gICAgfVxuICAgIGxpLnNlcGFyYXRvciB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBtYXJnaW46IDAgcmVtLWNhbGMoMTApO1xuICAgIH1cbiAgfVxufVxuIiwiaGVhZGVyLmlubGluZS1wYWdlLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgaDEuZW50cnktdGl0bGUge1xuICAgIG9yZGVyOiAyO1xuICB9XG4gIGgyLnBhZ2Utc3VidGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDUwKTtcbiAgICBvcmRlcjogMTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG59XG5oMS5lbnRyeS10aXRsZSB7XG4gIGZvbnQtc2l6ZTogJG1haW50aXRsZTtcbiAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNDApO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHotaW5kZXg6IDEwO1xuICBAbWVkaWEgI3skYnJlYWs2NDB9IHtcbiAgICBmb250LXNpemU6ICRtYWludGl0bGU2Mzk7XG4gIH1cbiAgc3Bhbi52Y2FyZCB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICB9XG59XG4uZmVhdHVyZWQtaGVyby10aXRsZS1iYXIge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogcmVtLWNhbGMoMTApIHJlbS1jYWxjKDE1KTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICY6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLC4zNSk7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAxO1xuICB9XG4gIGgxLmVudHJ5LXRpdGxlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC1zaGFkb3c6IDAgcmVtLWNhbGMoMikgcmVtLWNhbGMoMSkgJGJsYWNrO1xuICB9XG4gIHRpbWUsIHAuYnlsaW5lLmF1dGhvciwgcC5icy1wb3N0LWRhdGUsIHAuYnMtcG9zdC1jYXRzLCBwLmJzLXBvc3QtY29tbWVudHMsIHAuc2VhcmNoLXF1ZXJ5LCB1bCBsaSwgc3BhbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1zaGFkb3c6IDAgcmVtLWNhbGMoMikgcmVtLWNhbGMoMSkgJGJsYWNrO1xuICAgIHotaW5kZXg6IDEwO1xuICB9XG4gIHVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKC0xMik7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgbGkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcGFkZGluZzogMCAwIDAgcmVtLWNhbGMoMTIpO1xuICAgIH1cbiAgfVxuICAuYmxvZy1tZXRhIHtcblxuICAgIHAuYnMtcG9zdC1kYXRlIHtcbiAgICAgIG9yZGVyOiAxO1xuICAgIH1cbiAgICBwLmJ5bGluZS5hdXRob3Ige1xuICAgICAgb3JkZXI6IDI7XG5cbiAgICAgIGEge1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgfVxuICAgIH1cbiAgICBwLmJzLXBvc3QtY2F0cyB7XG4gICAgICBvcmRlcjogMztcblxuICAgICAgYSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICB9XG4gICAgfVxuICAgIHAuYnMtcG9zdC1jb21tZW50cyB7XG4gICAgICBvcmRlcjogNDtcbiAgICB9XG4gIH1cbn1cbiIsIi5tYWluLXdyYXAge1xuXG4gIC5tYWluLWNvbnRlbnQge1xuXG4gICAgYSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gICAgQG1lZGlhICN7JGJyZWFrNzY3fSB7XG4gICAgICBvcmRlcjogMSAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuYm9keTpub3QoLmhvbWUpIC5tYWluLXdyYXAge1xuICBtYXJnaW4tdG9wOiByZW0tY2FsYyg2MCk7XG4gIC8vIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQwKTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbiIsIi5tYWluLXdyYXAuZnVsbC13aWR0aCB7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIC5tYWluLWNvbnRlbnQge1xuICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygxNSkgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDE1KSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiZm9vdGVyIHtcblxuICAmLnBvcnRmb2xpby1uYXZpZ2F0aW9uIHtcblxuICAgIG5hdi5uYXZpZ2F0aW9uLnBvc3QtbmF2aWdhdGlvbiB7XG4gICAgICBwYWRkaW5nOiAwIHJlbS1jYWxjKDE1KTtcbiAgICB9XG4gIH1cbiAgbmF2Lm5hdmlnYXRpb24ucG9zdC1uYXZpZ2F0aW9uIHtcbiAgICBtYXJnaW46IHJlbS1jYWxjKDMyKSBhdXRvIDA7XG4gICAgbWF4LXdpZHRoOiByZW0tY2FsYygxMjAwKTtcbiAgfVxufVxuIiwiYXNpZGUuc2lkZWJhciB7XG4gIGJhY2tncm91bmQ6ICRsdGdyYXk7XG4gIHBhZGRpbmc6IHJlbS1jYWxjKDI1KTtcbiAgLy8gQG1lZGlhICN7JGJyZWFrOTUxfSB7XG4gIC8vICAgd2lkdGg6IDEyLjVyZW0gIWltcG9ydGFudDtcbiAgLy8gfVxuICBAbWVkaWEgI3skYnJlYWs3Njd9IHtcbiAgICBvcmRlcjogMiAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSkgIWltcG9ydGFudDtcbiAgfVxuICAmLnBvcnRmb2xpby1zaWRlYmFyIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBpbWcud3AtcG9zdC1pbWFnZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuICAud2lkZ2V0IHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XG5cbiAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgICBoNiB7XG4gICAgICAvL2Rpc3BsYXk6IG5vbmU7XG4gICAgICBib3JkZXItYm90dG9tOiByZW0tY2FsYygyKSBzb2xpZCAkYmx1ZTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG4gICAgdWwge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIG1hcmdpbjogMDtcblxuICAgICAgJiA+IGxpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB9XG4gICAgICAmID4gbGkgPiBhIHtcbiAgICAgICAgY29sb3I6ICRncmVlbjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KSAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgfVxuICAgICAgJiA+IGxpOmxhc3QtY2hpbGQgPiBhIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgbGkucmVjZW50Y29tbWVudHMge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICBzcGFuLmNvbW1lbnQtYXV0aG9yLWxpbmsge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuODtcbiAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoNCk7XG4gICAgfVxuICAgIGEge1xuICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDQpO1xuICAgIH1cbiAgfVxufVxuIiwiLmJzLXNvY2lhbC1zaGFyZS1vdXRlciB7XG4gIG1hcmdpbjogcmVtLWNhbGMoMzApIGF1dG8gMDtcbiAgbWF4LXdpZHRoOiByZW0tY2FsYyg4MzApO1xuICBwYWRkaW5nOiAwIHJlbS1jYWxjKDE1KTtcbn1cbi5icy1zb2NpYWwtc2hhcmUtY29udGFpbmVyIHtcbiAgbWFyZ2luOiAwIGF1dG8gcmVtLWNhbGMoMzApOztcbiAgd2lkdGg6IGF1dG87XG5cbiAgLmJzLXNvY2lhbC1zaGFyZS1pbm5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoLTE2KTtcbiAgICBAbWVkaWEgI3skYnJlYWs2NDB9IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygtNCk7XG4gICAgfVxuXG4gICAgLnNpbmdsZS1zb2NpYWwtc2hhcmUge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjQpO1xuICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDE2KTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHdpZHRoOiBjYWxjKDIwJSAtIDFyZW0pO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwpO1xuICAgICAgQG1lZGlhICN7JGJyZWFrNjQwfSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYyg0KTtcbiAgICAgICAgd2lkdGg6IGNhbGMoMjAlIC0gMC4yNXJlbSk7XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgICAgYSBpIHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwpO1xuICAgICAgfVxuICAgICAgJi5zb2NpYWwtc2hhcmUtdHdpdHRlciB7XG5cbiAgICAgICAgYSBpIHtcbiAgICAgICAgICBjb2xvcjogJHR3aXR0ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuc29jaWFsLXNoYXJlLWZhY2Vib29rIHtcblxuICAgICAgICBhIGkge1xuICAgICAgICAgIGNvbG9yOiAkZmFjZWJvb2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuc29jaWFsLXNoYXJlLWdvb2dsZSB7XG5cbiAgICAgICAgYSBpIHtcbiAgICAgICAgICBjb2xvcjogJGdvb2dsZXBsdXM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuc29jaWFsLXNoYXJlLWxpbmtlZGluIHtcblxuICAgICAgICBhIGkge1xuICAgICAgICAgIGNvbG9yOiAkbGlua2VkaW47XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuc29jaWFsLXNoYXJlLXBpbnRlcmVzdCB7XG5cbiAgICAgICAgYSBpIHtcbiAgICAgICAgICBjb2xvcjogJHBpbnRlcmVzdDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG5cbiAgICAgICAgYSBpIHtcbiAgICAgICAgICBjb2xvcjogJGJsdWUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmLnNob3ctY291bnQge1xuXG4gICAgICAuc2luZ2xlLXNvY2lhbC1zaGFyZSB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoNSk7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMS41cmVtKTtcbiAgICAgICAgfVxuICAgICAgICBhIGkge1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICAgICAgJi5zb2NpYWwtc2hhcmUtdHdpdHRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJHR3aXR0ZXI7XG4gICAgICAgIH1cbiAgICAgICAgJi5zb2NpYWwtc2hhcmUtZmFjZWJvb2sge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRmYWNlYm9vaztcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgICAgICYuc29jaWFsLXNoYXJlLWdvb2dsZSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGdvb2dsZXBsdXM7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgICAmLnNvY2lhbC1zaGFyZS1saW5rZWRpbiB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGxpbmtlZGluO1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICAgICAgJi5zb2NpYWwtc2hhcmUtcGludGVyZXN0IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkcGludGVyZXN0O1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgIC8vYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygxOCk7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDUpO1xuICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDMpO1xuICAgICAgICAgIHdpZHRoOiByZW0tY2FsYygyNCk7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGJsdWUgIWltcG9ydGFudDtcblxuICAgICAgICAgIGEgaSB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuZ2FsbGVyeSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoLTE1KTtcblxuICBmaWd1cmUuZ2FsbGVyeS1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDE1KTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuZ2FsbGVyeS1pY29uIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICBhIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBmaWdjYXB0aW9uLndwLWNhcHRpb24tdGV4dCB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmx1ZWFscGhhO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDQpIHJlbS1jYWxjKDEwKTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwpO1xuICAgIH1cbiAgICAmOmhvdmVyLCAmOmZvY3VzIHtcblxuICAgICAgLmdhbGxlcnktaWNvbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIGEge1xuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoM2RlZyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBmaWdjYXB0aW9uLndwLWNhcHRpb24tdGV4dCB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYuZ2FsbGVyeS1jb2x1bW5zLTQge1xuXG4gICAgLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogMjUlO1xuXG4gICAgICBAbWVkaWEgI3skYnJlYWs3Njd9IHtcbiAgICAgICAgd2lkdGg6IDMzLjMzMzMlO1xuICAgICAgfVxuICAgICAgQG1lZGlhICN7JGJyZWFrNDgwfSB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYuZ2FsbGVyeS1jb2x1bW5zLTMge1xuXG4gICAgLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogMzMuMzMzMyU7XG5cbiAgICAgIEBtZWRpYSAjeyRicmVhazQ4MH0ge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLmdhbGxlcnktY29sdW1ucy0yIHtcblxuICAgIC5nYWxsZXJ5LWl0ZW0ge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG4gIH1cbiAgZmlndXJlLmdhbGxlcnktaXRlbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygxNSk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLmdhbGxlcnktaWNvbiB7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBmaWdjYXB0aW9uLndwLWNhcHRpb24tdGV4dCB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmx1ZWFscGhhO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDQpIHJlbS1jYWxjKDEwKTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwpO1xuICAgIH1cbiAgICAmOmhvdmVyLCAmOmZvY3VzIHtcblxuICAgICAgZmlnY2FwdGlvbi53cC1jYXB0aW9uLXRleHQge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwidWwucGFnaW5hdGlvbiB7XG4gIGJvcmRlci10b3A6IHJlbS1jYWxjKDIpIHNvbGlkICRibHVlO1xuICBtYXJnaW4tdG9wOiByZW0tY2FsYygyMCk7XG4gIHBhZGRpbmctdG9wOiByZW0tY2FsYygxNSk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgQG1lZGlhICN7JGJyZWFrODAwfSB7XG4gICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDE1KTtcbiAgfVxuICBsaSwgbGkgc3BhbiwgbGkgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgaGVpZ2h0OiByZW0tY2FsYygzMCk7XG4gICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDMwKTtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiByZW0tY2FsYygzMCk7XG4gIH1cbiAgbGkgc3Bhbi5jdXJyZW50IHtcbiAgICBiYWNrZ3JvdW5kOiAkcmVkO1xuICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgfVxuICBsaSBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2Utb3V0ICFpbXBvcnRhbnQ7XG5cbiAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQ6ICRibHVlO1xuICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuIiwiLm1haW4tY29udGVudCA+IC5lbnRyeS1jb250ZW50ID4gLmdmb3JtX3dyYXBwZXIge1xuICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG59XG4uZ2Zvcm1fd3JhcHBlciB7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuXG4gIGZvcm0ge1xuXG4gICAgLmdmb3JtX2JvZHkge1xuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NDFweCkge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgMXJlbSk7XG4gICAgICB9XG5cbiAgICAgIGxpLmdmaWVsZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG5cbiAgICAgICAgLy8gJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIC8vICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgLy8gfVxuICAgICAgICBpbnB1dDpub3QoW3R5cGU9cmFkaW9dKTpub3QoW3R5cGU9Y2hlY2tib3hdKTpub3QoW3R5cGU9c3VibWl0XSk6bm90KFt0eXBlPWltYWdlXSk6bm90KFt0eXBlPWZpbGVdKSwgc2VsZWN0LCB0ZXh0YXJlYSB7XG4gICAgICAgICAgYm9yZGVyOiByZW0tY2FsYygxKSBzb2xpZCAjODA4MDgwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoMykgIWltcG9ydGFudDtcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDY0KTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDE1KTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygxNSk7XG4gICAgICAgIH1cbiAgICAgICAgLmdpbnB1dF9jb250YWluZXIge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcblxuICAgICAgICAgIGlucHV0LCBzZWxlY3QsIHRleHRhcmVhIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZ2lucHV0X2NvbXBsZXgge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygtMTYpO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgMXJlbSkgIWltcG9ydGFudDtcblxuICAgICAgICAgIC5naW5wdXRfZnVsbCwgLmdpbnB1dF9sZWZ0LCAuZ2lucHV0X3JpZ2h0LCAubmFtZV9maXJzdCwgLm5hbWVfbGFzdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygxNik7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuXG4gICAgICAgICAgICBpbnB1dCwgc2VsZWN0LCB0ZXh0YXJlYSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICYgKyBsYWJlbCB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRhbG1vc3RibGFjaztcbiAgICAgICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICAgICAgICAgIC8vIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAwIHJlbS1jYWxjKDEpO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IGNhbGMoMTAwJSAtIDEuMTI1cmVtKTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmhhcy1sYWJlbC1iZWxvdyB7XG5cbiAgICAgICAgICAgICAgaW5wdXQsIHNlbGVjdCwgdGV4dGFyZWEge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDM1KSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIC5naW5wdXRfZnVsbCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmdpbnB1dF9sZWZ0LCAuZ2lucHV0X3JpZ2h0LCAubmFtZV9maXJzdCwgLm5hbWVfbGFzdCB7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICBAbWVkaWEgI3skYnJlYWs2NDB9IHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5naW5wdXRfY29udGFpbmVyX2FkZHJlc3NfbGFiZWwge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRsdGdyYXk7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTYpIHJlbS1jYWxjKDE2KSAwIHJlbS1jYWxjKDE2KTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICAuZ2lucHV0X2NvbXBsZXguZ2lucHV0X2NvbnRhaW5lcl9hZGRyZXNzIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkbHRncmF5O1xuICAgICAgICAgIC8vIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygtMTYpO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg0KSByZW0tY2FsYygxNikgcmVtLWNhbGMoNSkgMDtcbiAgICAgICAgICAvLyB3aWR0aDogY2FsYygxMDAlICsgMXJlbSk7XG4gICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblxuICAgICAgICAgIC5naW5wdXRfZnVsbCwgLmdpbnB1dF9sZWZ0LCAuZ2lucHV0X3JpZ2h0IHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIHJlbS1jYWxjKDE2KSAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICBpbnB1dCwgc2VsZWN0IHtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjUpICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgJiArIGxhYmVsIHtcbiAgICAgICAgICAgICAgICB0b3A6IGNhbGMoMTAwJSAtIDAuNjI1cmVtKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLmdpbnB1dF9sZWZ0LmFkZHJlc3NfemlwIHtcblxuICAgICAgICAgIH1cbiAgICAgICAgICAuZ2lucHV0X3JpZ2h0ICsgLmdpbnB1dF9sZWZ0IHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmdmb3JtX2Zvb3RlciB7XG4gICAgICBtYXJnaW46IHJlbS1jYWxjKDMwKSAwIDAgMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGlucHV0Lmdmb3JtX2J1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICR5ZWxsb3c7XG4gICAgICAgIGNvbG9yOiAkYWxtb3N0YmxhY2sgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRiYXJsb3c7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMjIpIHJlbS1jYWxjKDEwMCk7XG5cbiAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGFsbW9zdGJsYWNrO1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLmdmb3JtX3dyYXBwZXIuZ2Zvcm1fdmFsaWRhdGlvbl9lcnJvciB7XG5cbiAgZm9ybSB7XG5cbiAgICAudmFsaWRhdGlvbl9lcnJvciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkcmVkO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkcmVkO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGZvbnQtZmFtaWx5OiAkc291cmNlc2FucztcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjIpO1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTUpO1xuICAgIH1cbiAgICAuZ2Zvcm1fYm9keSB7XG5cbiAgICAgIHVsLmdmb3JtX2ZpZWxkcyB7XG5cbiAgICAgICAgbGkuZ2ZpZWxkLmdmaWVsZF9lcnJvciB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoNSk7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoNSk7XG5cbiAgICAgICAgICBsYWJlbC5nZmllbGRfbGFiZWwge1xuICAgICAgICAgICAgLy8gbGluZS1oZWlnaHQ6IDEgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLCBpbnB1dFt0eXBlPVwiZW1haWxcIl0sIHRleHRhcmVhIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDYpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5nZmllbGRfZGVzY3JpcHRpb24udmFsaWRhdGlvbl9tZXNzYWdlIHtcbiAgICAgICAgICAgIGNvbG9yOiByZWQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuZ2lucHV0X2NvbXBsZXgge1xuXG4gICAgICAgICAgICAuZ2lucHV0X2xlZnQsIC5naW5wdXRfcmlnaHQge1xuXG4gICAgICAgICAgICAgIGlucHV0ICsgbGFiZWwge1xuICAgICAgICAgICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmLmZsb2F0TGFiZWwge1xuXG4gICAgICAgICAgICBsYWJlbC5nZmllbGRfbGFiZWwge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDkwJTtcbiAgICAgICAgICAgICAgbGVmdDogcmVtLWNhbGMoMTApO1xuICAgICAgICAgICAgICB0b3A6IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLCBpbnB1dFt0eXBlPVwiZW1haWxcIl0sIHRleHRhcmVhIHtcbiAgICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMjApIHJlbS1jYWxjKDE1KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsImJvZHkuc2VhcmNoLXJlc3VsdHMge1xuXG4gIHNlY3Rpb24jbWFpbi1jb250YWluZXIge1xuXG4gICAgZGl2Lm1haW4td3JhcCB7XG5cbiAgICAgIGFydGljbGUubWFpbi1jb250ZW50IHtcblxuICAgICAgICBzZWN0aW9uLmJzLWJsb2ctbG9vcCB7XG5cbiAgICAgICAgICBhcnRpY2xlLnR5cGUtcGFnZS5wYWdlIHtcblxuICAgICAgICAgICAgLmVudHJ5LWNvbnRlbnQge1xuXG4gICAgICAgICAgICAgIC5ibG9nLW1ldGEge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgLmJzLXBvc3QtZXhjZXJwdCB7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRiYXJsb3c7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5zaW5nbGUtcG9zdCwgLmJsb2csIC5zZWFyY2gtcmVzdWx0cywgLnNpbmdsZS1zZXJ2aWNlLCAuYXJjaGl2ZSwgLnRhZywgLnNpbmdsZS1zdGFmZiB7XG5cbiAgLm1haW4td3JhcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNDApO1xuXG4gICAgLm1haW4tY29udGVudCB7XG5cbiAgICAgIC5icy1lbnRyeS1tZXRhIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAvLyBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiByZW0tY2FsYygyKSBzb2xpZCAkYmx1ZTtcbiAgICAgICAgICBtYXJnaW46IDAgcmVtLWNhbGMoMTApIDAgMDtcbiAgICAgICAgICBwYWRkaW5nOiAwIHJlbS1jYWxjKDEwKSAwIDA7XG5cbiAgICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmLm5vLXNpZGViYXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICBhcnRpY2xlLm1haW4tY29udGVudCB7XG4gICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoODAwKTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICAgICYuYmxvZy1zaWRlYmFyLWxlZnQsICYuc2luZ2xlLXNpZGViYXItbGVmdCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAubWFpbi1jb250ZW50IHtcbiAgICAgICAgb3JkZXI6IDI7XG4gICAgICB9XG4gICAgICBhc2lkZS5zaWRlYmFyIHtcbiAgICAgICAgb3JkZXI6IDE7XG4gICAgICB9XG4gICAgfVxuICAgICYuYmxvZy1mdWxsLXdpZHRoLm5vLXNpZGViYXIsICYuc2luZ2xlLWZ1bGwtd2lkdGgubm8tc2lkZWJhciB7XG5cbiAgICAgIGFydGljbGUubWFpbi1jb250ZW50IHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuYWJvdXQtdGhlLWF1dGhvci13cmFwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1hcmdpbjogcmVtLWNhbGMoMzIpIDA7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMTUpO1xuXG4gICAgLmF1dGhvci1pbWFnZSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygxMCk7XG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDgwKTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB3aWR0aDogcmVtLWNhbGMoODApO1xuXG4gICAgICBpbWcge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgICAuYXV0aG9yLWRlc2NyaXB0aW9uIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA1LjYyNXJlbSk7XG5cbiAgICAgIHA6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICAgIHAgc3Ryb25nIHtcbiAgICAgICAgZm9udC1zaXplOiAxMTUlO1xuICAgICAgfVxuICAgICAgJi5uby1hdmF0YXIge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5icy1ibG9nLWxvb3Age1xuXG4gIC5icy1wb3N0LXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG5cbiAgICBwIHN0cm9uZyB7XG4gICAgICBmb250LWZhbWlseTogJGJhcmxvdztcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuICAgIGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzIpICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4wMjVyZW0gIWltcG9ydGFudDtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuXG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICRhbG1vc3RibGFjaztcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5ibG9nLW1ldGEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG5cbiAgICBwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDUpO1xuXG4gICAgICBhIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgICAgaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyNCk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMyk7XG4gICAgICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDI0KTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB3aWR0aDogcmVtLWNhbGMoMjQpO1xuICAgICAgfVxuICAgICAgJi5icy1wb3N0LWRhdGUge1xuICAgICAgICBvcmRlcjogMTtcbiAgICAgIH1cbiAgICAgICYuYnMtcG9zdC1ieWxpbmUge1xuICAgICAgICBvcmRlcjogMjtcblxuICAgICAgICBzcGFuLmF2YXRhciB7XG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygzKTtcbiAgICAgICAgICAgIG1peC1ibGVuZC1tb2RlOiBtdWx0aXBseTtcbiAgICAgICAgICAgIHdpZHRoOiByZW0tY2FsYygyNCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmJzLXBvc3QtY2F0cyB7XG4gICAgICAgIG9yZGVyOiAzO1xuICAgICAgfVxuICAgICAgJi5icy1wb3N0LWNvbW1lbnRzIHtcbiAgICAgICAgb3JkZXI6IDQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5icy1wb3N0LWV4Y2VycHQge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTtcblxuICAgIEBtZWRpYSAjeyRicmVhazc2N30ge1xuICAgICAgLy8gbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIH1cbiAgfVxuICAuYmxvZy1mb290ZXIge1xuXG4gICAgYSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDAgIWltcG9ydGFudDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgIHNwYW4ge1xuICAgICAgICBib3JkZXItYm90dG9tOiByZW0tY2FsYygxKSBzb2xpZCAkYWxtb3N0YmxhY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYuYnMtYmxvZy1sb29wLWxpc3Qge1xuXG4gICAgYXJ0aWNsZS5icy1zaW5nbGUtcG9zdCB7XG4gICAgICAvLyBib3JkZXItYm90dG9tOiByZW0tY2FsYygxKSBzb2xpZCAkYmx1ZTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg4MCk7XG4gICAgICAvLyBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuXG4gICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgfVxuICAgICAgLmJsb2ctZmVhdHVyZWQtaW1hZ2Uge1xuICAgICAgICBvcmRlcjogMjtcbiAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDMwMCk7XG4gICAgICAgIEBtZWRpYSAjeyRicmVhazY0MH0ge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmVudHJ5LWNvbnRlbnQge1xuICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMjApO1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTguNzVyZW0pO1xuICAgICAgICBAbWVkaWEgI3skYnJlYWs2NDB9IHtcbiAgICAgICAgICBvcmRlcjogMjtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgICYudGh1bWJuYWlsLWhpZGRlbiB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmJsb2ctZm9vdGVyIHtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYuYnMtYmxvZy1sb29wLWdyaWQsXG4gICYuYnMtYmxvZy1sb29wLWNhcm91c2VsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoLTMwKTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygtNDUpICFpbXBvcnRhbnQ7XG5cbiAgICBhcnRpY2xlLmJzLXNpbmdsZS1wb3N0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQ1KTtcbiAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygzMCk7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJveC1zaGFkb3cpO1xuXG4gICAgICBAbWVkaWEgI3skYnJlYWs2MDB9IHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgICAgIH1cblxuICAgICAgLmJsb2ctZmVhdHVyZWQtaW1hZ2Uge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYmx1ZTtcbiAgICAgICAgYm9yZGVyOiByZW0tY2FsYygyKSBzb2xpZCAkYmx1ZTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcblxuICAgICAgICBmaWd1cmUsIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuYmxvZy1tZXRhIHtcblxuICAgICAgICAuYnMtZW50cnktbWV0YSB7XG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmVudHJ5LWNvbnRlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZTFlMWUxO1xuICAgICAgICBib3JkZXI6IHJlbS1jYWxjKDIpIHNvbGlkICRibHVlO1xuICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxNSk7XG4gICAgICB9XG4gICAgICAuYnMtcG9zdC1leGNlcnB0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xuICAgICAgfVxuICAgICAgLmJsb2ctZm9vdGVyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoLTE1KTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKC0xNSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoLTE1KTtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDEuODc1cmVtKTtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmx1ZTtcbiAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxNSk7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZCk7XG5cbiAgICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRyZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCByZW0tY2FsYygyMCkgcmVtLWNhbGMoNjApIHJnYmEoMCwwLDgwLC40NSk7XG5cbiAgICAgICAgLmJsb2ctZmVhdHVyZWQtaW1hZ2Uge1xuXG4gICAgICAgICAgZmlndXJlLCBhIHtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZSgzZGVnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi5ncmlkLTItY29scyB7XG5cbiAgICAgIGFydGljbGUuYnMtc2luZ2xlLXBvc3Qge1xuICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7XG5cbiAgICAgICAgQG1lZGlhICN7JGJyZWFrNjAwfSB7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmLmdyaWQtMy1jb2xzIHtcblxuICAgICAgYXJ0aWNsZS5icy1zaW5nbGUtcG9zdCB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMlIC0gMS44NzVyZW0pO1xuXG4gICAgICAgIEBtZWRpYSAjeyRicmVhazc2N30ge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuODc1cmVtKTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skYnJlYWs2MDB9IHtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICYuZ3JpZC00LWNvbHMge1xuXG4gICAgICBhcnRpY2xlLmJzLXNpbmdsZS1wb3N0IHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pO1xuXG4gICAgICAgIEBtZWRpYSAjeyRicmVhazEwMjR9IHtcbiAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JGJyZWFrNjAwfSB7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBuYXYuY3VzdG9tLXBhZ2luYXRpb24ge1xuICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDMwKTtcbiAgICB9XG4gIH1cbiAgJi5icy1ibG9nLWxvb3AtY2Fyb3VzZWwge1xuXG4gICAgYXJ0aWNsZS5icy1zaW5nbGUtcG9zdCB7XG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5zbGljay1saXN0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICB1bC5zbGljay1kb3RzIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDM1KTtcbiAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygzMCk7XG4gICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygtMzApO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgICAgIHotaW5kZXg6IDk5O1xuXG4gICAgICBsaTpvbmx5LWNoaWxkIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgbmF2LmN1c3RvbS1wYWdpbmF0aW9uIHtcbiAgICBib3JkZXItdG9wOiByZW0tY2FsYygyKSBzb2xpZCAkYmx1ZTtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygyMCk7XG4gICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDE1KTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAbWVkaWEgI3skYnJlYWs4MDB9IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygxNSk7XG4gICAgfVxuICAgIC5wYWdlLW51bWJlcnMge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGhlaWdodDogcmVtLWNhbGMoMzApO1xuICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDMwKTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIHdpZHRoOiByZW0tY2FsYygzMCk7XG4gICAgfVxuICAgIHNwYW4ucGFnZS1udW1iZXJzLnBhZ2UtbnVtIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gICAgc3Bhbi5waXBlLXNlcGFyYXRvciB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgIG1hcmdpbjogMCByZW0tY2FsYyg3KTtcbiAgICB9XG4gICAgc3Bhbi5wYWdlLW51bWJlcnMuY3VycmVudCB7XG4gICAgICBiYWNrZ3JvdW5kOiAkcmVkO1xuICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBhLnBhZ2UtbnVtYmVycyB7XG4gICAgICAvLyBiYWNrZ3JvdW5kOiAkcmVkO1xuICAgICAgLy8gY29sb3I6IHdoaXRlO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwpO1xuXG4gICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGJsdWU7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJzZWN0aW9uI2NvbW1lbnRzIHtcbiAgYmFja2dyb3VuZDogJGx0Z3JheTtcbiAgbWFyZ2luOiByZW0tY2FsYygzMikgMCAwIDA7XG4gIHBhZGRpbmc6IHJlbS1jYWxjKDE1KTtcblxuICBvbC5jb21tZW50LWxpc3Qge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgJiA+IGxpIHtcbiAgICAgIGJvcmRlci1sZWZ0OiByZW0tY2FsYygyKSBzb2xpZCAkYmx1ZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQwKTtcbiAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMTApO1xuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgICAgcDpsYXN0LW9mLXR5cGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgICBoZWFkZXIuY29tbWVudC1hdXRob3Ige1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICBpbWcge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDEwKTtcbiAgICAgIH1cbiAgICAgIHRpbWUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgfVxuICAgICAgY2l0ZSB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgfVxuICAgIH1cbiAgICB1bC5jaGlsZHJlbiB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgbWFyZ2luOiByZW0tY2FsYygxNSkgMCAwIDA7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IHJlbS1jYWxjKDIpIHNvbGlkICRibHVlO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDEwKTtcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICAgIHA6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIGEuY29tbWVudC1yZXBseS1saW5rIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgIH1cbiAgfVxufVxuc2VjdGlvbiNyZXNwb25kIHtcbiAgYmFja2dyb3VuZDogJGx0Z3JheTtcbiAgbWFyZ2luOiByZW0tY2FsYygzMikgMCAwIDA7XG4gIHBhZGRpbmc6IHJlbS1jYWxjKDE1KTtcblxuICBwOmxhc3Qtb2YtdHlwZSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIGZvcm0jY29tbWVudGZvcm0ge1xuXG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl0sIHRleHRhcmVhIHtcbiAgICAgIGJvcmRlcjogcmVtLWNhbGMoMSkgc29saWQgJGJsdWU7XG4gICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYygzKTtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICBtaW4taGVpZ2h0OiByZW0tY2FsYyg0NSk7XG4gICAgfVxuICAgIGlucHV0LmJ1dHRvbiB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwKTtcbiAgICB9XG4gICAgbGFiZWwge1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG4gIH1cbn1cbiIsIi5icy1hamF4LWJsb2ctbG9vcCB7XG5cbiAgLmJzLWFqYXgtYmxvZy1sb29wLXdyYXBwZXIge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIC8vIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygtMzApO1xuXG4gICAgLmJzLWFqYXgtYmxvZy1sb29wLWxlZnQge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgLy8gcGFkZGluZy1sZWZ0OiByZW0tY2FsYygzMCk7XG4gICAgICB3aWR0aDogMzMuMzMzMyU7XG4gICAgICBAbWVkaWEgI3skYnJlYWs4MDB9IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIHVsLmJzLWFqYXgtYmxvZy1pbWFnZXMge1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygtMTUpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDgpO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMTUpO1xuICAgICAgICAgIC8vIHdpZHRoOiAzMy4zMzMzJTtcbiAgICAgICAgfVxuICAgICAgICAmLmdyaWQtMi1jb2xzIHtcblxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIC8vIHdpZHRoOiA1MCU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuZ3JpZC0zLWNvbHMge1xuXG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgLy8gd2lkdGg6IDMzLjMzMzMlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLmdyaWQtNC1jb2xzIHtcblxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIC8vIHdpZHRoOiAyNSU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5zbGljay1zbGlkZSwgLnNsaWNrLXRyYWNrIHtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGhlaWdodCk7XG4gICAgICAgIH1cbiAgICAgICAgYnV0dG9uLnNsaWNrLWFycm93IHtcbiAgICAgICAgICBib3R0b206IHJlbS1jYWxjKC0yMCk7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyICFpbXBvcnRhbnQ7XG4gICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygyMCk7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjApO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMTUpO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgfVxuICAgICAgICBidXR0b24uc2xpY2stbmV4dCB7XG4gICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuYnMtYWpheC1ibG9nLWxvb3AtcmlnaHQge1xuICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDMwKTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAuNXMgZWFzZS1vdXQ7XG4gICAgICB3aWR0aDogY2FsYyg2Ni42NjY2JSAtIDEuODc1cmVtKTtcblxuICAgICAgQG1lZGlhICN7JGJyZWFrODAwfSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgJi5sb2FkaW5nIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwwLjI1KTtcbiAgICAgIH1cbiAgICAgICYubG9hZGVkIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgfVxuICAgICAgLmJzLWFqYXgtc3dhcC1hcmVhLmFqYXgtbG9hZGluZyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgICBpbWcubG9hZGluZy1hbmltYXRpb24ge1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgfVxuICAgICAgLmJzLXBvc3QtZmVhdHVyZWQtaW1hZ2Uge1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuYnMtcG9zdC10aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcblxuICAgICAgICBoMyB7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5icy1wb3N0LW1ldGEge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNSk7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgICAgaSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyNCk7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDMpO1xuICAgICAgICAgICAgbWluLWhlaWdodDogcmVtLWNhbGMoMjQpO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDI0KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJi5icy1wb3N0LWRhdGUge1xuICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgICAgfVxuICAgICAgICAgICYuYnMtcG9zdC1ieWxpbmUge1xuICAgICAgICAgICAgb3JkZXI6IDI7XG5cbiAgICAgICAgICAgIHNwYW4uYXZhdGFyIHtcblxuICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDMpO1xuICAgICAgICAgICAgICAgIG1peC1ibGVuZC1tb2RlOiBtdWx0aXBseTtcbiAgICAgICAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoMjQpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICYuYnMtcG9zdC1jYXRzIHtcbiAgICAgICAgICAgIG9yZGVyOiAzO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLmJzLXBvc3QtY29tbWVudHMge1xuICAgICAgICAgICAgb3JkZXI6IDQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuYnMtcG9zdC1mb290ZXIge1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyogU2luZ2xlIFN0YWZmIEl0ZW0gU3R5bGVzICovXG4uc2luZ2xlLXN0YWZmIHtcblxuICAubWFpbi1jb250ZW50IHtcblxuICAgIC5zdGFmZi1mZWF0dXJlZC1pbWFnZSB7XG4gICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyg1KTtcbiAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMzMwKTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICB1bC5zdGFmZi1jYXRlZ29yeSB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgbWFyZ2luOiAwIDAgcmVtLWNhbGMoMTUpIDA7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoNCk7XG5cbiAgICAgICAgJi5jYXQtbmFtZSB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoNik7XG4gICAgICAgIH1cbiAgICAgICAgJi5jYXQtbmFtZTphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJywnO1xuICAgICAgICB9XG4gICAgICAgICYuY2F0LW5hbWU6bGFzdC1jaGlsZDphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8qIFN0YWZmIFNob3J0Y29kZSBTdHlsZXMgKi9cbi5zdGFmZnMtd3JhcHBlciB7XG5cbiAgLnN0YWZmLWZpbHRlci10b2dnbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xuXG4gICAgQG1lZGlhICN7JGJyZWFrNzY3fSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIGJhY2tncm91bmQ6ICRibHVlO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygxMCk7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG4gIHVsI2ZpbHRlcnMsIHVsW2lkKj1cImZpbHRlcnMtXCJdIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwIDAgcmVtLWNhbGMoMjApIHJlbS1jYWxjKC0xNSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5KTtcblxuICAgIEBtZWRpYSAjeyRicmVhazc2N30ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIG1hcmdpbjogMCAwIHJlbS1jYWxjKDIwKSAwO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMTUpO1xuXG4gICAgICBAbWVkaWEgI3skYnJlYWs3Njd9IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMik7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRibHVlO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoNikgcmVtLWNhbGMoMTUpO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAmLmFjdGl2ZSwgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJHJlZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc2luZ2xlLXN0YWZmLWl0ZW0ge1xuXG4gICAgLnN0YWZmLXRodW1ibmFpbCB7XG5cbiAgICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmOmhvdmVyLCAmOmZvY3VzIHtcblxuICAgICAgLnN0YWZmLXRodW1ibmFpbCB7XG5cbiAgICAgICAgYSB7XG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZSgzZGVnKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5zdGFmZnMtZGlzcGxheS1ncmlkIHtcblxuICAgICYuZ3JpZC1jb2xzLTEge1xuXG4gICAgICAuc2luZ2xlLXN0YWZmLWl0ZW0ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5ncmlkLWNvbHMtMiB7XG5cbiAgICAgIC5zaW5nbGUtc3RhZmYtaXRlbSB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG5cbiAgICAgICAgQG1lZGlhICN7JGJyZWFrNDAwfSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi5ncmlkLWNvbHMtMyB7XG5cbiAgICAgIC5zaW5nbGUtc3RhZmYtaXRlbSB7XG4gICAgICAgIHdpZHRoOiAzMy4zMzMzJTtcblxuICAgICAgICBAbWVkaWEgI3skYnJlYWs3Njd9IHtcbiAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRicmVhazQwMH0ge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICYuZ3JpZC1jb2xzLTQge1xuXG4gICAgICAuc2luZ2xlLXN0YWZmLWl0ZW0ge1xuICAgICAgICB3aWR0aDogMjUlO1xuXG4gICAgICAgIEBtZWRpYSAjeyRicmVhazc2N30ge1xuICAgICAgICAgIHdpZHRoOiAzMy4zMzMzJTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skYnJlYWs2MDB9IHtcbiAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRicmVhazQwMH0ge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYuc3RhZmZzLWRpc3BsYXktZ3JpZCB7XG5cbiAgICAuc3RhZmZzLWNvbnRhaW5lciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgbWFyZ2luOiAwIDAgMCByZW0tY2FsYygtMjApO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihoZWlnaHQpO1xuXG4gICAgICAuc2luZ2xlLXN0YWZmLWl0ZW0ge1xuICAgICAgICBib3gtc2hhZG93OiAkYm94c2hhZG93MjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoODApO1xuICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMjApO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB3aWR0aDogY2FsYygzMy4zMzMzJSAtIDEuMjVyZW0pO1xuXG4gICAgICAgIEBtZWRpYSAjeyRicmVhazEwMjR9IHtcbiAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skYnJlYWs2NDB9IHtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gICAgICAgIH1cblxuICAgICAgICBzZWN0aW9uLnN0YWZmLXBob3RvIHtcblxuICAgICAgICAgIGltZy5zdGFmZi10aHVtYm5haWwge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgc2VjdGlvbi5zdGFmZi1jb250ZW50IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgIGgyLnN0YWZmLXRpdGxlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYWxtb3N0YmxhY2sgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkYmFybG93O1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzMikgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoNDApIHJlbS1jYWxjKDQwKSAwO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsKTtcblxuICAgICAgICAgICAgQG1lZGlhICN7JGJyZWFrMTAyNH0ge1xuICAgICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygyMCkgcmVtLWNhbGMoMjApIDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIHAuc3RhZmYtcG9zaXRpb24ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgdWwuc3RhZmYtY2F0ZWdvcnkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIHJlbS1jYWxjKDQwKTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsKTtcblxuICAgICAgICAgICAgQG1lZGlhICN7JGJyZWFrMTAyNH0ge1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwIHJlbS1jYWxjKDIwKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICBjb2xvcjogJGFsbW9zdGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRzb3VyY2VzYW5zO1xuICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgYS5zdGFmZi1sZWFybi1tb3JlIHtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMTVyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDQwKTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZCk7XG5cbiAgICAgICAgICAgIEBtZWRpYSAjeyRicmVhazEwMjR9IHtcbiAgICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMjApO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogcmVtLWNhbGMoMSkgc29saWQgJGFsbW9zdGJsYWNrO1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYyg0MCk7XG4gICAgICAgICAgICAgIHdpZHRoOiByZW0tY2FsYyg0Mik7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHNwYW4ubmV3cy1sZWFybi1tb3JlLWlubmVyIHtcbiAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogcmVtLWNhbGMoMSkgc29saWQgJGFsbW9zdGJsYWNrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRsdGdyYXk7XG5cbiAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMjApO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuXG4gICAgICAgICAgICBoMi5zdGFmZi10aXRsZSB7XG4gICAgICAgICAgICAgIC8vYm90dG9tOiBhdXRvO1xuICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAvL3RvcDogcmVtLWNhbGMoMTApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdWwuc3RhZmYtY2F0ZWdvcnkge1xuICAgICAgICAgICAgICAvL2JvdHRvbTogcmVtLWNhbGMoMTApO1xuICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAvL3RvcDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgc2VjdGlvbi5zdGFmZi1iaW8ge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICR5ZWxsb3c7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoNjApO1xuICAgICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoNDApO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuNXMgZWFzZS1vdXQ7XG5cbiAgICAgICAgICBAbWVkaWEgI3skYnJlYWsxMDI0fSB7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygyMCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgYS5jbG9zZS1iaW8ge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDI0KTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyNCk7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgcmlnaHQ6IHJlbS1jYWxjKDM1KTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHRvcDogcmVtLWNhbGMoNDUpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC43NXMgZWFzZS1vdXQgLjVzO1xuICAgICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDI0KTtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgIHotaW5kZXg6IDEwMDtcblxuICAgICAgICAgICAgQG1lZGlhICN7JGJyZWFrMTAyNH0ge1xuICAgICAgICAgICAgICByaWdodDogcmVtLWNhbGMoMTUpO1xuICAgICAgICAgICAgICB0b3A6IHJlbS1jYWxjKDI1KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgaDIge1xuICAgICAgICAgICAgY29sb3I6ICRhbG1vc3RibGFjayAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzMikgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjE1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwcHgpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC41cyBlYXNlLW91dDtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICB9XG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkc291cmNlc2FucztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMyKTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC41cyBlYXNlLW91dDtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcblxuICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICB6LWluZGV4OiAxMDtcblxuICAgICAgICAgICAgaDIsIHAsIGEuY2xvc2UtYmlvIHtcbiAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnNpbmdsZS1zdGFmZi1saW5rLnN0YWZmLWhhcy1uby1iaW8ge1xuXG4gICAgICAgICAgLnN0YWZmLWNhdGVnb3J5IHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg0MCk7XG5cbiAgICAgICAgICAgIEBtZWRpYSAjeyRicmVhazc2N30ge1xuICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLnN0YWZmcy1kaXNwbGF5LWxpc3Qge1xuXG4gICAgLnNpbmdsZS1zdGFmZi1pdGVtIHtcbiAgICAgIGJvcmRlci1ib3R0b206IHJlbS1jYWxjKDEpIHNvbGlkICRibHVlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDI1KTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygyNSk7XG5cbiAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICB9XG4gICAgICAuc3RhZmYtdGh1bWJuYWlsIHtcbiAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgIHdpZHRoOiByZW0tY2FsYygzMDApO1xuICAgICAgICBAbWVkaWEgI3skYnJlYWs2NDB9IHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5zdGFmZi1jb250ZW50IHtcbiAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDE4Ljc1cmVtKTtcbiAgICAgICAgQG1lZGlhICN7JGJyZWFrNjQwfSB7XG4gICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIHAuc3RhZmYtbWV0YSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAgIGkge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoNik7XG4gICAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoMjApO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB1bC5zdGFmZi1jYXRlZ29yeSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgcmVtLWNhbGMoMTApIDA7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDYpO1xuICAgICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDIzKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgbGkuY2F0LW5hbWUge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICBjb250ZW50OiAnLCc7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmxhc3Qtb2YtdHlwZTphZnRlciB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuc3RhZmYtcmVhZC1tb3JlIHtcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuZXJyb3I0MDQge1xuXG4gIC5tYWluLXdyYXAubm8tc2lkZWJhciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgIGFydGljbGUubWFpbi1jb250ZW50IHtcbiAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoODAwKTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuIiwiZm9vdGVyLmZvb3RlciB7XG5cbiAgLndpZGdldCB7XG4gICAgcGFkZGluZzogMCByZW0tY2FsYygxNSk7XG4gICAgQG1lZGlhICN7JGJyZWFrNjQwfSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg0MCk7XG4gICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcDpsYXN0LW9mLXR5cGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbiAgaDYge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNSkgIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gIHVsLm1lbnUge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGEge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oY29sb3IpO1xuICAgICAgfVxuICAgICAgJi5pcy1hY3RpdmUgYSB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiZGl2I2JzLXNpdGV3aWRlLXBvcHVwIHtcblxuICAuYnMtcG9wdXAtb3ZlcmxheSB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwuODUpO1xuICAgIGJvdHRvbTogMDtcbiAgICBjdXJzb3I6IHBvaW50ZXIgIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDEwMDA7XG4gIH1cbiAgLmJzLXBvcHVwLWlubmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgYm9yZGVyOiByZW0tY2FsYygyKSBzb2xpZCAkYmx1ZTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgbWF4LWhlaWdodDogODB2aDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygzMCk7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHdpZHRoOiByZW0tY2FsYyg2MDApO1xuICAgIHotaW5kZXg6IDEwMDE7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwpO1xuXG4gICAgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgICAgIGNvbG9yOiAkYmx1ZTtcbiAgICB9XG4gICAgcCB7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgIH1cbiAgfVxuICAuYnMtcG9wdXAtY2xvc2Uge1xuICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGN1cnNvcjogcG9pbnRlciAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNDApO1xuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYyg4MCk7XG4gICAgaGVpZ2h0OiByZW0tY2FsYyg4MCk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IHJlbS1jYWxjKDgwKTtcbiAgICB6LWluZGV4OiAxMDAxO1xuICB9XG4gIC5icy1wb3B1cC1oaWRlLWZvcmV2ZXIge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIH1cbiAgJi5wb3B1cC1ib3R0b20tbGVmdCxcbiAgJi5wb3B1cC1ib3R0b20tcmlnaHQsXG4gICYucG9wdXAtYm90dG9tLWZ1bGwge1xuXG4gICAgLmJzLXBvcHVwLWlubmVyIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgIHRvcDogYXV0bztcbiAgICB9XG4gIH1cbiAgJi5wb3B1cC1ib3R0b20tcmlnaHQge1xuXG4gICAgLmJzLXBvcHVwLWlubmVyIHtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgICByaWdodDogMDtcbiAgICB9XG4gIH1cbiAgJi5wb3B1cC1ib3R0b20tZnVsbCB7XG5cbiAgICAuYnMtcG9wdXAtaW5uZXIge1xuICAgICAgbGVmdDogMDtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG59XG4iLCJkaXYjaW5zdGFmZWVkIHtcblxuICAmLmhhcy1hcnJvd3Mge1xuICAgIHBhZGRpbmc6IDAgcmVtLWNhbGMoMzApO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5zbGljay1hcnJvdyB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmx1ZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDMpO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGhlaWdodDogcmVtLWNhbGMoMjQpO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiBjYWxjKDUwJSAtIDFyZW0pO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgd2lkdGg6IHJlbS1jYWxjKDI0KTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZCk7XG5cbiAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcmVkO1xuICAgICAgfVxuICAgICAgJi5zbGljay1wcmV2IHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICAgICYuc2xpY2stbmV4dCB7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBhLmluc3RhZ3JhbS1pbWFnZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBzcGFuLmlnLWNhcHRpb24ge1xuICAgICAgYmFja2dyb3VuZDogJGJsdWVhbHBoYTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsKTtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsKTtcbiAgICB9XG4gICAgJjpob3ZlciwgJjpmb2N1cyB7XG5cbiAgICAgIHNwYW4uaWctY2FwdGlvbiB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgIH1cbiAgICAgIGltZyB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoM2RlZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5zbGljay1saXN0LmRyYWdnYWJsZSB7XG4gICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKC0yMCk7XG5cbiAgICBhLmluc3RhZ3JhbS1pbWFnZS5zbGljay1zbGlkZSB7XG4gICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMjApO1xuICAgIH1cbiAgfVxufVxudWwuc2xpY2stZG90cyB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IHJlbS1jYWxjKDE1KSAwIDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBsaSB7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIGJvcmRlcjogcmVtLWNhbGMoMikgc29saWQgJGJsdWU7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogcmVtLWNhbGMoMTQpO1xuICAgIG1hcmdpbjogMCByZW0tY2FsYyg1KTtcbiAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgICB3aWR0aDogcmVtLWNhbGMoMTQpO1xuXG4gICAgJi5zbGljay1hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZDogJGJsdWU7XG4gICAgfVxuICB9XG5cbn1cbiIsIi8qIFNsaWRlciAqL1xuLnNsaWNrLXNsaWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5zbGljay1saXN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbiAgJi5kcmFnZ2luZyB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGN1cnNvcjogaGFuZDtcbiAgfVxufVxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuLnNsaWNrLXRyYWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuXG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICB9XG4gICY6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5zbGljay1sb2FkaW5nICYge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxufVxuLnNsaWNrLXNsaWRlIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBbZGlyPVwicnRsXCJdICYge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuICBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gICYuc2xpY2stbG9hZGluZyBpbWcge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgZGlzcGxheTogbm9uZTtcbiAgJi5kcmFnZ2luZyBpbWcge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG4gIC5zbGljay1pbml0aWFsaXplZCAmIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgLnNsaWNrLXZlcnRpY2FsICYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgfVxufVxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4iLCIkaW5wdXQtbnVtYmVyLXNpemU6IDgwcHg7XG5pbnB1dDo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XG4gIG9wYWNpdHk6IDE7XG59XG5ib2R5Lndvb2NvbW1lcmNlLCBib2R5Lndvb2NvbW1lcmNlLXBhZ2UsIGRpdi53b29jb21tZXJjZSB7XG5cbiAgc3Bhbi5yZXF1aXJlZCB7XG4gICAgY29sb3I6ICRyZWQgIWltcG9ydGFudDtcbiAgfVxuICAuc3Rhci1yYXRpbmcge1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29sb3I6ICRnb2xkO1xuICAgIH1cbiAgICBzcGFuIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBzdGFyICFpbXBvcnRhbnQ7XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29sb3I6ICRnb2xkICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50IHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cbiAgZm9ybS53b29jb21tZXJjZS1vcmRlcmluZyB7XG5cbiAgICBzZWxlY3Qge1xuICAgICAgYm9yZGVyOiByZW0tY2FsYygxKSBzb2xpZCAkYmx1ZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDYpO1xuICAgIH1cbiAgfVxuICAuYnJlYWRjcnVtYnMtd3JhcHBlciB7XG5cbiAgICBuYXYud29vY29tbWVyY2UtYnJlYWRjcnVtYiB7XG4gICAgICBjb2xvcjogIzMzMztcbiAgICAgIGZvbnQtZmFtaWx5OiAkYmFybG93ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBtYXJnaW46IDFyZW0gMCAhaW1wb3J0YW50O1xuXG4gICAgICBzcGFuLnNlcGFyYXRvciB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBtYXJnaW46IDAgcmVtLWNhbGMoMTApO1xuICAgICAgfVxuICAgICAgYSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkYmFybG93ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgfVxuICAgIH1cbiAgICAmLnNob3AtbGF5b3V0LW5hcnJvdy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYyg4MzApO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG4gIC53b29jb21tZXJjZS1zaG9wLXRpdGxlIHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygyNSkgcmVtLWNhbGMoMTUpIDA7XG4gICAgQG1lZGlhICN7JGJyZWFrNzY3fSB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygyNCkgcmVtLWNhbGMoMTUpIHJlbS1jYWxjKDIwKTtcbiAgICB9XG5cbiAgICBoMSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDQwKSAhaW1wb3J0YW50O1xuICAgICAgLy8gdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICAgaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzApICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICAgICYuc2hvcC1sYXlvdXQtbmFycm93LWNvbnRlbnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDgzMCk7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbiAgLm1haW4td3JhcCB7XG5cbiAgICAmLnNob3AtbGF5b3V0LXNpZGViYXItbGVmdCB7XG5cbiAgICAgIGFydGljbGUubWFpbi1jb250ZW50Lndvb2NvbW1lcmNlLWluZGV4IHtcbiAgICAgICAgb3JkZXI6IDI7XG4gICAgICB9XG4gICAgICBhc2lkZS53b29jb21tZXJjZS1zaWRlYmFyLnNpZGViYXIge1xuICAgICAgICBvcmRlcjogMTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5zaG9wLWxheW91dC1zaWRlYmFyLXJpZ2h0IHtcblxuICAgICAgYXJ0aWNsZS5tYWluLWNvbnRlbnQud29vY29tbWVyY2UtaW5kZXgge1xuICAgICAgICBvcmRlcjogMTtcbiAgICAgIH1cbiAgICAgIGFzaWRlLndvb2NvbW1lcmNlLXNpZGViYXIuc2lkZWJhciB7XG4gICAgICAgIG9yZGVyOiAyO1xuICAgICAgfVxuICAgIH1cbiAgICAmLnNob3AtbGF5b3V0LWZ1bGwtd2lkdGgge1xuXG4gICAgICBhcnRpY2xlLm1haW4tY29udGVudC53b29jb21tZXJjZS1pbmRleCB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICAgICYuc2hvcC1sYXlvdXQtbmFycm93LWNvbnRlbnQge1xuXG4gICAgICBhcnRpY2xlLm1haW4tY29udGVudC53b29jb21tZXJjZS1pbmRleCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoODAwKTtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgYXNpZGUud29vY29tbWVyY2Utc2lkZWJhci5zaWRlYmFyIHtcblxuICB9XG4gIC53b29jb21tZXJjZS1pbmRleCBoMS5wYWdlLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIGgyLndvb2NvbW1lcmNlLXBhZ2UtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjYpICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAmICsgcC53b29jb21tZXJjZS1yZXN1bHQtY291bnQge1xuICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoLTEwKTtcbiAgICB9XG4gIH1cbiAgLndvb2NvbW1lcmNlLW9yZGVyaW5nIHtcblxuICAgIEBtZWRpYSAjeyRicmVhazc2N30ge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDIyMCk7XG4gICAgfVxuICB9XG4gIHVsLnByb2R1Y3RzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICYgPiBsaS5wcm9kdWN0IHtcbiAgICAgIGZsb2F0OiBub25lO1xuXG4gICAgICAud29vY29tbWVyY2UtbG9vcC1jYXRlZ29yeV9fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KSAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgbWFyay5jb3VudCB7XG4gICAgICAgICAgLy8gZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJiA+IGEge1xuXG4gICAgICAgICYgLmltYWdlLXdyYXBwZXIge1xuICAgICAgICAgIGJvcmRlcjogcmVtLWNhbGMoMSkgc29saWQgJGJsdWU7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIH1cbiAgICAgICAgJiBpbWcge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwpO1xuICAgICAgICB9XG4gICAgICAgIC53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlIHtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIyKSAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmc6IDAgMCByZW0tY2FsYygxMCkgMDtcbiAgICAgICAgfVxuICAgICAgICBkaXYuc3Rhci1yYXRpbmcge1xuICAgICAgICAgIC8vIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgc3Bhbi5wcmljZSB7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAgIHNwYW4uYW1vdW50IHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG5cbiAgICAgICAgJiA+IGEge1xuXG4gICAgICAgICAgJiBpbWcge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpIHJvdGF0ZSgzZGVnKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi5jb2x1bW5zLTIsXG4gICAgJi5jb2x1bW5zLTMsXG4gICAgJi5jb2x1bW5zLTQge1xuICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKC0zMCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAmID4gbGkucHJvZHVjdCB7XG4gICAgICAgIG1hcmdpbjogMCAwIHJlbS1jYWxjKDQ1KSAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgd2lkdGg6IDMzLjMzMzMlO1xuXG4gICAgICAgICYubGFzdCB7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgcmVtLWNhbGMoNDUpIDA7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JGJyZWFrNzY3fSB7XG4gICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skYnJlYWs2MDB9IHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICYubGFzdCB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgICYubGFzdCArIGxpLnByb2R1Y3QuZmlyc3Qge1xuICAgICAgICAgICAgbWFyZ2luOiByZW0tY2FsYyg0NSkgMCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuaW1hZ2Utd3JhcHBlciB7XG4gICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICB9XG4gICAgICAgIGEud29vY29tbWVyY2UtTG9vcFByb2R1Y3QtbGluayB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGx0Z3JheTtcbiAgICAgICAgICBib3JkZXI6IHJlbS1jYWxjKDIpIHNvbGlkICRyZWQ7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgcGFkZGluZzogMCAwIHJlbS1jYWxjKDE1KSAwO1xuICAgICAgICB9XG4gICAgICAgIGgyLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGUge1xuICAgICAgICAgIHBhZGRpbmc6IDAgcmVtLWNhbGMoMTUpIHJlbS1jYWxjKDEwKTtcbiAgICAgICAgfVxuICAgICAgICBzcGFuLnByaWNlIHtcbiAgICAgICAgICBwYWRkaW5nOiAwIHJlbS1jYWxjKDE1KTtcbiAgICAgICAgfVxuICAgICAgICBkaXYuc3Rhci1yYXRpbmcge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygxNSk7XG4gICAgICAgIH1cbiAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi5jb2x1bW5zLTIge1xuXG4gICAgICAmID4gbGkucHJvZHVjdCB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG5cbiAgICAgICAgQG1lZGlhICN7JGJyZWFrNjAwfSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi5jb2x1bW5zLTQge1xuXG4gICAgICAmID4gbGkucHJvZHVjdCB7XG4gICAgICAgIHdpZHRoOiAyNSU7XG5cbiAgICAgICAgQG1lZGlhICN7JGJyZWFrMTAyNH0ge1xuICAgICAgICAgIGNsZWFyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgd2lkdGg6IDMzLjMzMzMlO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRicmVhazc2N30ge1xuICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JGJyZWFrNjAwfSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnByb2R1Y3QtdG9wLXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgQG1lZGlhICN7JGJyZWFrNzY4fSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cblxuICAgIHNwYW4ub25zYWxlIHtcbiAgICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgZGl2Lndvb2NvbW1lcmNlLXByb2R1Y3QtZ2FsbGVyeSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgICBkaXYuc3VtbWFyeS5lbnRyeS1zdW1tYXJ5IHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbiAgc3Bhbi5vbnNhbGUge1xuICAgIGJhY2tncm91bmQ6ICRibHVlO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBtYXJnaW46IHJlbS1jYWxjKDgpIHJlbS1jYWxjKDEpIDAgMCAhaW1wb3J0YW50O1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB3aWR0aDogYXV0bztcblxuICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcbiAgICAgIGJvcmRlcjogcmVtLWNhbGMoMTcpIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDEpO1xuICAgICAgbGVmdDogcmVtLWNhbGMoLTE3KTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiByZW0tY2FsYygxKTtcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJsdWU7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGJsdWU7XG4gICAgICBib3R0b206IDA7XG4gICAgfVxuICB9XG4gIC5wcm9kdWN0LnNhbGUgc3Bhbi5vbnNhbGUge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgbGVmdDogcmVtLWNhbGMoMzApO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwKTtcbiAgICByaWdodDogYXV0bztcbiAgICB0b3A6IDA7XG5cbiAgICAmOmJlZm9yZSwgJjphZnRlciB7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgcmlnaHQ6IHJlbS1jYWxjKC0xNyk7XG4gICAgfVxuICB9XG4gIC5tYWluLXdyYXAgLmJ1dHRvbiwgLm1haW4td3JhcCAuYnV0dG9uLndjLWJhY2t3YXJkLCAuYnV0dG9uLCAuYnV0dG9uLndjLWJhY2t3YXJkLCAuY29tbWVudC1mb3JtIHAuZm9ybS1zdWJtaXQgaW5wdXQge1xuICAgIGJhY2tncm91bmQ6ICRyZWQgIWltcG9ydGFudDtcbiAgICAvLyBib3JkZXI6IHJlbS1jYWxjKDEpIHNvbGlkICR3aGl0ZWFscGhhICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoMTAwKSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogJGJhcmxvdztcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0uMDNlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygxNSkgcmVtLWNhbGMoMjApO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCk7XG5cbiAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQ6ICRibGFjayAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICAuYWRkX3RvX2NhcnRfYnV0dG9uLmFqYXhfYWRkX3RvX2NhcnQsXG4gIC5idXR0b24ucHJvZHVjdF90eXBlX3ZhcmlhYmxlIHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygxNSk7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGdyZWVuO1xuICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgIGJvdHRvbTogcmVtLWNhbGMoMik7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDM1KTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDUpO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IHJlbS1jYWxjKDIpO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgdG9wOiAwO1xuICAgICAgd2lkdGg6IHJlbS1jYWxjKDQyKTtcbiAgICB9XG4gICAgJi5hZGRlZDphZnRlciB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIH1cbiAgICAmICsgYS5hZGRlZF90b19jYXJ0IHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgfVxuICAubWFpbi13cmFwIHtcbiAgICBAbWVkaWEgI3skYnJlYWs3Njd9IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygwKTtcbiAgICB9XG5cbiAgICAubWFpbi1jb250ZW50IHtcblxuICAgICAgQG1lZGlhICN7JGJyZWFrNzY3fSB7XG4gICAgICAgIC8vIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQwKTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSkgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gICAgLndvb2NvbW1lcmNlLWluZGV4IHtcbiAgICAgIEBtZWRpYSAjeyRicmVhazk1MX0ge1xuICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDE2LjI1cmVtKTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skYnJlYWs3Njd9IHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBvcmRlcjogMSAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIC5yZWxhdGVkLnByb2R1Y3RzIHtcblxuICAgICAgICBoMyB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNCk7XG4gICAgICAgIH1cbiAgICAgICAgdWwucHJvZHVjdHMge1xuXG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgd2lkdGg6IDMzLjMzMyU7XG5cbiAgICAgICAgICAgIGgyLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGUge1xuICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIyKSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhICN7JGJyZWFrNjQwfSB7XG4gICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgI3skYnJlYWs0MDB9IHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLnNhbGUge1xuXG4gICAgICAgICAgICAgIHNwYW4ub25zYWxlIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiByZW0tY2FsYygzMCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgYXNpZGUuc2lkZWJhciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkbHRncmF5O1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMjUpO1xuICAgICAgQG1lZGlhICN7JGJyZWFrOTUxfSB7XG4gICAgICAgIHdpZHRoOiAxMi41cmVtICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skYnJlYWs3Njd9IHtcbiAgICAgICAgb3JkZXI6IDIgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICAud2lkZ2V0X3Byb2R1Y3RfY2F0ZWdvcmllcyB7XG5cbiAgICAgICAgaDYge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IHJlbS1jYWxjKDIpIHNvbGlkICRibHVlO1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGYwN2EnO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IGZvbnRhd2Vzb21lO1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB1bC5wcm9kdWN0LWNhdGVnb3JpZXMge1xuICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgJiA+IGxpLmNhdC1pdGVtIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJiA+IGxpLmNhdC1pdGVtID4gYSB7XG4gICAgICAgICAgICBjb2xvcjogJGJsdWU7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgfVxuICAgICAgICAgICYgPiBsaS5jYXQtaXRlbSBpLmNsb3NlLWNhdC1saXN0IHtcbiAgICAgICAgICAgIGNvbG9yOiAkcmVkO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgdG9wOiByZW0tY2FsYyg1KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJiA+IGxpLmNhdC1pdGVtID4gaS50b2dnbGUtY2F0LWxpc3Qge1xuICAgICAgICAgICAgY29sb3I6ICRyZWQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlciAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygyMCk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjApO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiByZW0tY2FsYyg0KTtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoMjApO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwpO1xuXG4gICAgICAgICAgICAmLmFuaW1hdGUtY2hldnJvbiB7XG4gICAgICAgICAgICAgIGxlZnQ6IHJlbS1jYWxjKC01KTtcbiAgICAgICAgICAgICAgdG9wOiByZW0tY2FsYyg5KTtcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmID4gbGkuY2F0LWl0ZW0gPiBpLnRvZ2dsZS1jYXQtbGlzdC5hbmltYXRlLWNoZXZyb24gfiBpLmNsb3NlLWNhdC1saXN0IHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgfVxuICAgICAgICAgIHVsLmNoaWxkcmVuIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IHJlbS1jYWxjKDEpIHNvbGlkICR3aGl0ZTtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMTcpO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygxMCk7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC41cyBlYXNlLW91dDtcbiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIC41cyBlYXNlLW91dDtcbiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgLjVzIGVhc2Utb3V0O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC41cyBlYXNlLW91dDtcblxuICAgICAgICAgICAgJi5zaG93LWNhdHMge1xuICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiByZW0tY2FsYygxKSBzb2xpZCAkd2hpdGU7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDEwKTtcblxuICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzVCNUI1QjtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgcmVtLWNhbGMoNSkgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAmLmN1cnJlbnQtY2F0ID4gYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAud29vY29tbWVyY2UtdGFicyB7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoNjApICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNjApICFpbXBvcnRhbnQ7XG5cbiAgICB1bC50YWJzLndjLXRhYnMge1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBib3JkZXItYm90dG9tOiByZW0tY2FsYygxKSBzb2xpZCAkYmx1ZTtcbiAgICAgIH1cbiAgICAgIGxpIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGJsdWU7XG4gICAgICAgIGJvcmRlcjogcmVtLWNhbGMoMSkgc29saWQgJGJsdWU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMCByZW0tY2FsYygxMCk7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZCk7XG5cbiAgICAgICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkcmVkO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcblxuICAgICAgICB9XG4gICAgICAgICYuYWN0aXZlLCAmLmFjdGl2ZTpob3ZlciwgJi5hY3RpdmU6Zm9jdXMge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRsdGdyYXk7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGx0Z3JheSAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogIzMzMyAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skYnJlYWs2NDB9IHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiByZW0tY2FsYygxKSBzb2xpZCAkbHRncmF5O1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgcmVtLWNhbGMoLTIpIHJlbS1jYWxjKDcpICMwMDFlNjE7XG4gICAgICAgICAgcGFkZGluZzogMCByZW0tY2FsYygxMCk7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihwYWRkaW5nKTtcblxuICAgICAgICAgICYuYWN0aXZlLCAmLmFjdGl2ZTpob3ZlciwgJi5hY3RpdmU6Zm9jdXMge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHJlZDtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDUpIHJlbS1jYWxjKDEwKTtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLndvb2NvbW1lcmNlLVRhYnMtcGFuZWwge1xuICAgICAgYmFja2dyb3VuZDogJGx0Z3JheTtcbiAgICAgIGJvcmRlcjogcmVtLWNhbGMoMSkgc29saWQgJGJsdWU7XG4gICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTUpICFpbXBvcnRhbnQ7XG5cbiAgICAgIHA6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICAgIHRhYmxlLnNob3BfYXR0cmlidXRlcywgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRib2R5IHtcbiAgICAgICAgYm9yZGVyOiByZW0tY2FsYygxKSBzb2xpZCAkbHRncmF5ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgICBoMi53b29jb21tZXJjZS1SZXZpZXdzLXRpdGxlLCBoMi53b29jb21tZXJjZS1SZXZpZXdzLXRpdGxlIHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KSAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICNyZXZpZXdzIHtcblxuICAgICNjb21tZW50cyBvbC5jb21tZW50bGlzdCB7XG5cbiAgICAgIGxpLmNvbW1lbnQge1xuXG4gICAgICAgIC5jb21tZW50X2NvbnRhaW5lciB7XG5cbiAgICAgICAgICBpbWcuYXZhdGFyIHtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jb21tZW50LXRleHQge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMCByZW0tY2FsYyg0MCk7XG5cbiAgICAgICAgICAgIC5zdGFyLXJhdGluZyB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygxMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwLm1ldGEge1xuICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAjcmV2aWV3X2Zvcm1fd3JhcHBlciB7XG5cbiAgICAgICNyZXBseS10aXRsZSB7XG4gICAgICAgIGNvbG9yOiAkYmx1ZTtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICB9XG4gICAgICBwLnN0YXJzIHtcbiAgICAgICAgY29sb3I6ICRnb2xkO1xuXG4gICAgICAgIGEge1xuXG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29sb3I6ICRnb2xkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAucHJvZHVjdF9tZXRhIHtcblxuICAgIHNwYW4uc2t1X3dyYXBwZXIgc3Ryb25nIHtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICBzcGFuLnBvc3RlZF9pbiBzdHJvbmcge1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbiAgZm9ybS5jYXJ0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG5cbiAgICBpbnB1dCB7XG4gICAgICBib3JkZXI6IHJlbS1jYWxjKDEpIHNvbGlkICRibHVlO1xuICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNik7XG4gICAgICBtaW4taGVpZ2h0OiByZW0tY2FsYyg0NCk7XG4gICAgfVxuICAgIGJ1dHRvbiB7XG4gICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMTApO1xuICAgIH1cbiAgfVxuICAud29vY29tbWVyY2UtcHJvZHVjdC1nYWxsZXJ5LmltYWdlcyB7XG5cbiAgICAuZmxleC12aWV3cG9ydCB7XG4gICAgICBib3JkZXI6IHJlbS1jYWxjKDEpIHNvbGlkICRncmF5O1xuXG4gICAgICAud29vY29tbWVyY2UtcHJvZHVjdC1nYWxsZXJ5X19pbWFnZSB7XG4gICAgICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgICAud29vY29tbWVyY2UtcHJvZHVjdC1nYWxsZXJ5X19pbWFnZSB7XG4gICAgICBib3JkZXI6IHJlbS1jYWxjKDEpIHNvbGlkICRibHVlO1xuICAgICAgY3Vyc29yOiBncmFiICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIC8vICY6YWZ0ZXIge1xuICAgICAgLy8gICBiYWNrZ3JvdW5kOiAkYmx1ZTtcbiAgICAgIC8vICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgIC8vICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIC8vICAgY29udGVudDogJ1xcZjAwMic7XG4gICAgICAvLyAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgLy8gICBmb250LWZhbWlseTogZm9udGF3ZXNvbWU7XG4gICAgICAvLyAgIGhlaWdodDogcmVtLWNhbGMoNDApO1xuICAgICAgLy8gICBsaW5lLWhlaWdodDogcmVtLWNhbGMoNDApO1xuICAgICAgLy8gICBvcGFjaXR5OiAuNTtcbiAgICAgIC8vICAgcmlnaHQ6IHJlbS1jYWxjKDEwKTtcbiAgICAgIC8vICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAvLyAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIC8vICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgLy8gICB0b3A6IHJlbS1jYWxjKDEwKTtcbiAgICAgIC8vICAgd2lkdGg6IHJlbS1jYWxjKDQwKTtcbiAgICAgIC8vICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwpO1xuICAgICAgLy8gfVxuICAgICAgLy8gJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAvL1xuICAgICAgLy8gICAmOmFmdGVyIHtcbiAgICAgIC8vICAgICBvcGFjaXR5OiAxO1xuICAgICAgLy8gICB9XG4gICAgICAvLyB9XG4gICAgfVxuICAgIG9sLmZsZXgtY29udHJvbC1uYXYuZmxleC1jb250cm9sLXRodW1icyB7XG4gICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoLTEwKTtcblxuICAgICAgbGkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDEwKTtcblxuICAgICAgICBpbWcge1xuXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnN1bW1hcnkuZW50cnktc3VtbWFyeSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgaDIucHJvZHVjdF90aXRsZS5lbnRyeS10aXRsZSB7XG4gICAgICBvcmRlcjogMTtcbiAgICAgIGJvcmRlci1ib3R0b206IHJlbS1jYWxjKDIpIHNvbGlkICRibHVlO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzMCkgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgfVxuICAgIC8vIC53b29jb21tZXJjZS1wcm9kdWN0LXJhdGluZyB7XG4gICAgLy8gICBvcmRlcjogMjtcbiAgICAvLyB9XG4gICAgLndvb2NvbW1lcmNlLXByb2R1Y3QtZGV0YWlsc19fc2hvcnQtZGVzY3JpcHRpb24ge1xuICAgICAgb3JkZXI6IDI7XG4gICAgfVxuICAgIHAucHJpY2Uge1xuICAgICAgb3JkZXI6IDQ7XG5cbiAgICAgIHN0cm9uZyB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICB9XG4gICAgfVxuICAgIGZvcm0uY2FydCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgb3JkZXI6IDU7XG5cbiAgICAgIC5xdWFudGl0eSB7XG4gICAgICAgIG9yZGVyOiAxO1xuXG4gICAgICAgIGlucHV0LmlucHV0LXRleHQge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIG1heC1oZWlnaHQ6IHJlbS1jYWxjKDQ0KTtcbiAgICAgICAgb3JkZXI6IDI7XG4gICAgICB9XG4gICAgfVxuICAgIC5wcm9kdWN0X21ldGEge1xuICAgICAgYm9yZGVyLWJvdHRvbTogcmVtLWNhbGMoMikgc29saWQgJGJsdWU7XG4gICAgICBib3JkZXItdG9wOiByZW0tY2FsYygyKSBzb2xpZCAkYmx1ZTtcbiAgICAgIG1hcmdpbjogcmVtLWNhbGMoMCkgMCByZW0tY2FsYygxNSk7XG4gICAgICBvcmRlcjogMztcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwKSAwIHJlbS1jYWxjKDEwKTtcbiAgICB9XG4gIH1cbiAgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24ge1xuXG4gICAgdWwucGFnZS1udW1iZXJzIHtcbiAgICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLXRvcDogcmVtLWNhbGMoMikgc29saWQgJGJsdWUgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYygwKTtcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDIwKTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygxNSkgMCAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIHdpZHRoOiByZW0tY2FsYygzMCk7XG5cbiAgICAgICAgc3Bhbi5jdXJyZW50IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkcmVkO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgfVxuICAgICAgICBhLnBhZ2UtbnVtYmVycyB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmx1ZTtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmlucHV0LW51bWJlci1ncm91cCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDIwMCk7XG5cbiAgICBpbnB1dFt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gICAgaW5wdXRbdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgfVxuICAgIGlucHV0W3R5cGU9bnVtYmVyXSB7XG4gICAgICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgICB9XG4gICAgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgICBsaW5lLWhlaWdodDogY2FsYygjeyRpbnB1dC1udW1iZXItc2l6ZX0vMik7XG4gICAgfVxuICAgIC5pbnB1dC1udW1iZXIge1xuICAgICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDUwKTtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICAuaW5wdXQtbnVtYmVyLFxuICAgIC5pbnB1dC1udW1iZXItZGVjcmVtZW50LFxuICAgIC5pbnB1dC1udW1iZXItaW5jcmVtZW50IHtcbiAgICAgIGJvcmRlcjogcmVtLWNhbGMoMSkgc29saWQgJGJsdWU7XG4gICAgICBoZWlnaHQ6ICRpbnB1dC1udW1iZXItc2l6ZS8yO1xuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICB9XG4gICAgLmlucHV0LW51bWJlci1kZWNyZW1lbnQsXG4gICAgLmlucHV0LW51bWJlci1pbmNyZW1lbnQge1xuICAgICAgYmFja2dyb3VuZDogJGJsdWU7XG4gICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmb250LWZhbWlseTogQXJpYWwgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHdpZHRoOiByZW0tY2FsYygzNSk7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCk7XG5cbiAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgICB9XG4gICAgfVxuICAgIC5pbnB1dC1udW1iZXItZGVjcmVtZW50IHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDMpIDAgMCByZW0tY2FsYygzKTtcbiAgICB9XG4gICAgLmlucHV0LW51bWJlci1pbmNyZW1lbnQge1xuICAgICAgYm9yZGVyLXJhZGl1czogMCByZW0tY2FsYygzKSByZW0tY2FsYygzKSAwO1xuICAgIH1cbiAgfVxuICBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0YWJsZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYmx1ZSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgdGhlYWQge1xuICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmx1ZTtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgIHRyIHtcblxuICAgICAgICB0aC5wcm9kdWN0LW5hbWUge1xuXG4gICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgfVxuICAgICAgICB0aC5wcm9kdWN0LXByaWNlLFxuICAgICAgICB0aC5wcm9kdWN0LXF1YW50aXR5LFxuICAgICAgICB0aC5wcm9kdWN0LXN1YnRvdGFsIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgdGgucHJvZHVjdC1yZW1vdmUge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgIHdpZHRoOiByZW0tY2FsYygzMik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgdGJvZHkge1xuXG4gICAgICB0ciB7XG4gICAgICAgIC8vIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgdGQge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJsdWUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICB0ZC5wcm9kdWN0LW5hbWUge1xuICAgICAgICAgIC8vIHdpZHRoOiBjYWxjKDM4JSAtIC41cmVtKTtcbiAgICAgICAgICB3aWR0aDogNTAlO1xuXG4gICAgICAgICAgc3Bhbi5wcm9kdWN0LXRodW1ibmFpbCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoNzUpICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyg1KSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0ZC5wcm9kdWN0LXByaWNlIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgdGQucHJvZHVjdC1xdWFudGl0eSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgLnF1YW50aXR5IHtcblxuICAgICAgICAgICAgLmlucHV0LW51bWJlci1ncm91cCB7XG4gICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0ZC5wcm9kdWN0LXN1YnRvdGFsIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgdGQucHJvZHVjdC1yZW1vdmUge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoNDIpO1xuXG4gICAgICAgICAgYS5yZW1vdmUge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoNCk7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRibHVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpbnB1dC5pbnB1dC10ZXh0LnF0eS50ZXh0IHtcbiAgICAgICAgYm9yZGVyOiByZW0tY2FsYygxKSBzb2xpZCAkYmx1ZTtcbiAgICAgICAgLy8gYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNik7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICB9XG4gICAgICAucXVhbnRpdHkge1xuICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDIwMCk7XG5cbiAgICAgICAgLy8gQG1lZGlhICN7JGJyZWFrNzY3fSB7XG4gICAgICAgIC8vICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgLy8gICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICAvLyB9XG4gICAgICB9XG4gICAgICAuY291cG9uIHtcblxuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICAgICAgICBjb2xvcjogJGJsdWUgIWltcG9ydGFudDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoNDApO1xuICAgICAgICAgIG1heC1oZWlnaHQ6IHJlbS1jYWxjKDQwKTtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDE0KTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygxNCk7XG5cbiAgICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRibGFjayAhaW1wb3J0YW50O1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpbnB1dCNjb3Vwb25fY29kZSB7XG4gICAgICAgICAgYm9yZGVyOiByZW0tY2FsYygxKSBzb2xpZCAkYmx1ZTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg2KTtcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDQwKTtcbiAgICAgICAgICBtaW4td2lkdGg6IHJlbS1jYWxjKDEyMCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5idXR0b25bbmFtZT1cInVwZGF0ZV9jYXJ0XCJdIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAkYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgICBtaW4taGVpZ2h0OiByZW0tY2FsYyg0MCk7XG5cbiAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC53Yy1wcm9jZWVkLXRvLWNoZWNrb3V0IHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIC5jYXJ0LWNvbGxhdGVyYWxzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKC0zMCk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArIDEuODc1cmVtKTtcblxuICAgIGRpdi5jb3Vwb24ge1xuICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygzMCk7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgQG1lZGlhICN7JGJyZWFrOTAwfSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDI0KTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRibHVlO1xuICAgICAgICBmb250LWZhbWlseTogJGJhcmxvdztcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCkgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNCk7XG4gICAgICB9XG4gICAgICBpbnB1dCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJsdWUgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoMykgIWltcG9ydGFudDtcbiAgICAgICAgbWluLWhlaWdodDogcmVtLWNhbGMoNDUpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgICB9XG4gICAgICAuYnV0dG9uIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICAgIGRpdi5jYXJ0X3RvdGFscyB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDMwKTtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBAbWVkaWEgI3skYnJlYWs5MDB9IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCkgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNCk7XG4gICAgICB9XG4gICAgICB0YWJsZSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJsdWU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICB0ci5vcmRlci10b3RhbCB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGJsdWU7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAgIHRkIHNwYW4ge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgYnV0dG9uLmJ1dHRvbltuYW1lPVwidXBkYXRlX2NhcnRcIl0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgICAgYnV0dG9uLmJ1dHRvbjpkaXNhYmxlZCwgYnV0dG9uLmJ1dHRvbjpkaXNhYmxlZFtkaXNhYmxlZF0ge1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxNSkgcmVtLWNhbGMoNDApICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBmb3JtLndvb2NvbW1lcmNlLWZvcm0tY291cG9uLFxuICBkaXYud29vY29tbWVyY2UtZm9ybS1jb3Vwb24ge1xuICAgIGJhY2tncm91bmQ6ICRsdGdyYXkgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IHJlbS1jYWxjKDEpIHNvbGlkICRibHVlICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAwIHJlbS1jYWxjKDI0KSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDE1KSAhaW1wb3J0YW50O1xuXG4gICAgJiA+IHAge1xuICAgICAgY29sb3I6ICRibGFjayAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG4gICAgLndvb2NvbW1lcmNlLWZvcm0tY291cG9uLXRvZ2dsZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuZm9ybS1yb3cge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICYuZm9ybS1yb3ctZmlyc3Qge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjAwcHgpICFpbXBvcnRhbnQ7XG4gICAgICAgIEBtZWRpYSAjeyRicmVhazQ4MH0ge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmZvcm0tcm93LWxhc3Qge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDIwMCkgIWltcG9ydGFudDtcbiAgICAgICAgQG1lZGlhICN7JGJyZWFrNDgwfSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoMykgIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDQ0KTtcbiAgICB9XG4gIH1cbiAgLmJpbGxpbmctc2hpcHBpbmctdGFicyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYmx1ZTtcbiAgfVxuICAuYmlsbGluZy1zaGlwcGluZy13cmFwcGVyIHtcbiAgICBib3JkZXItY29sb3I6ICRibHVlO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjQpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24obWF4LWhlaWdodCk7XG5cbiAgICAuc2hpcHBpbmctZGV0YWlscywgLmJpbGxpbmctZGV0YWlscyB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygxNSk7XG5cbiAgICAgIC8vICYudGFicy1wYW5lbC5pcy1hY3RpdmUge1xuICAgICAgLy8gICBoZWlnaHQ6IGF1dG87XG4gICAgICAvLyAgIG9wYWNpdHk6IDE7XG4gICAgICAvLyAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAvLyB9XG4gICAgICAvLyAmLnRhYnMtcGFuZWwge1xuICAgICAgLy8gICBkaXNwbGF5OiBibG9jaztcbiAgICAgIC8vICAgaGVpZ2h0OiAwO1xuICAgICAgLy8gICBvcGFjaXR5OiAwO1xuICAgICAgLy8gICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAvLyAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsKTtcbiAgICAgIC8vIH1cbiAgICB9XG4gIH1cbiAgc3Bhbi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1kcm9wZG93biB7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoLTEpO1xuXG4gICAgaW5wdXQuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJsdWU7XG4gICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYygzKTtcbiAgICAgIGJveC1zaGFkb3c6IDA7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuICAmLndvb2NvbW1lcmNlLWNoZWNrb3V0IHtcblxuICAgIGZvcm0uY2hlY2tvdXRfY291cG9uIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIHNwYW4uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItZHJvcGRvd24ge1xuICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoLTEzKTtcbiAgICB9XG4gIH1cbiAgZm9ybS53b29jb21tZXJjZS1jaGVja291dCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG5cbiAgICAud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHMsXG4gICAgLndvb2NvbW1lcmNlLWFjY291bnQtZmllbGRzLFxuICAgIC53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHMsXG4gICAgLndvb2NvbW1lcmNlLWFkZGl0aW9uYWwtZmllbGRzIHtcblxuICAgICAgaW5wdXQuaW5wdXQtdGV4dCwgdGV4dGFyZWEsIC5zZWxlY3QyLXNlbGVjdGlvbiwgc2VsZWN0IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYygzKSAhaW1wb3J0YW50O1xuICAgICAgICBtaW4taGVpZ2h0OiByZW0tY2FsYyg0NCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgICAgIH1cbiAgICAgIC5zZWxlY3QyLXNlbGVjdGlvbiB7XG5cbiAgICAgIH1cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRhbG1vc3RibGFjaztcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICB9XG4gICAgICAuZm9ybS1yb3cge1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICYuZm9ybS1yb3ctZmlyc3QsICYuZm9ybS1yb3ctbGFzdCB7XG4gICAgICAgICAgd2lkdGg6IDQ5LjI1JSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgICYuZm9ybS1yb3ctd2lkZTpsYXN0LW9mLXR5cGUsICYubm90ZXMge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICBpbnB1dCwgdGV4dGFyZWEge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5zZWxlY3QyLWNvbnRhaW5lciB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDQwKTtcbiAgICAgIH1cbiAgICAgIC5zZWxlY3QyLXNlbGVjdGlvbiB7XG5cbiAgICAgICAgc3Bhbi5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQge1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygzOCk7XG4gICAgICAgIH1cbiAgICAgICAgc3Bhbi5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cge1xuICAgICAgICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDM4KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcCNiaWxsaW5nX2NvdW50cnlfZmllbGQsXG4gICAgICBwI3NoaXBwaW5nX2NvdW50cnlfZmllbGQge1xuICAgICAgICAvLyBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgICAud29vY29tbWVyY2Utc2hpcHBpbmctZmllbGRzIHtcblxuICAgICAgaDMjc2hpcC10by1kaWZmZXJlbnQtYWRkcmVzcyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgLy9qdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICBtYXJnaW46IDAgcmVtLWNhbGMoMikgMCByZW0tY2FsYygxMCk7XG4gICAgICAgICAgICBvcmRlcjogMjtcbiAgICAgICAgICB9XG4gICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBjb2xvcjogJGJsdWU7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGJhcmxvdztcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjYpO1xuICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICNjdXN0b21lcl9kZXRhaWxzIHtcblxuICAgICAgLmNvbC0xLCAuY29sLTIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg0MCk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHAudGFicy10aXRsZS5jaGVja291dC1jb250LWJ0biB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbjogcmVtLWNhbGMoMzApIHJlbS1jYWxjKC0xNikgMCAwO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG4gIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXRbbm92YWxpZGF0ZT1cIm5vdmFsaWRhdGVcIl0ge1xuXG4gICAgLndvb2NvbW1lcmNlLWJpbGxpbmctZmllbGRzLFxuICAgIC53b29jb21tZXJjZS1hY2NvdW50LWZpZWxkcyxcbiAgICAud29vY29tbWVyY2Utc2hpcHBpbmctZmllbGRzLFxuICAgIC53b29jb21tZXJjZS1hZGRpdGlvbmFsLWZpZWxkcyB7XG5cbiAgICAgIC52YWxpZGF0ZS1yZXF1aXJlZCB7XG5cbiAgICAgICAgaW5wdXQuaW5wdXQtdGV4dCwgdGV4dGFyZWEsIC5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gICAgICAgICAgLy8gYm9yZGVyOiByZW0tY2FsYygyKSBzb2xpZCByZWQgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBoMyNvcmRlcl9yZXZpZXdfaGVhZGluZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNCk7XG4gIH1cbiAgdGFibGUuc2hvcF90YWJsZSwgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHtcbiAgICBib3JkZXI6IHJlbS1jYWxjKDEpIHNvbGlkICRibHVlICFpbXBvcnRhbnQ7XG4gICAgLy9ib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3JkZXItc3BhY2luZzogMDtcbiAgICBmb250LWZhbWlseTogJGJhcmxvdztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICB0aGVhZCB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmx1ZTtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgIHRoLnByb2R1Y3QtbmFtZSB7XG4gICAgICAgIHdpZHRoOiA0MCU7XG4gICAgICB9XG4gICAgICB0aC5wcm9kdWN0LXRvdGFsIHtcbiAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGJvZHkge1xuICAgICAgYm9yZGVyOiByZW0tY2FsYygxKSBzb2xpZCAkYmx1ZSAhaW1wb3J0YW50O1xuXG4gICAgICB0aCB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgfVxuICAgICAgdGQsIHRoIHtcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJsdWUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIHRkLnByb2R1Y3QtbmFtZSB7XG5cbiAgICAgICAgc3Bhbi5wcm9kdWN0LXRpdGxlIHtcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICB0ci5jYXJ0LWl0ZW0gdGQucHJvZHVjdC10b3RhbCBzcGFuLmFtb3VudCxcbiAgICAgIHRyLmNhcnQtaXRlbSB0ZC5wcm9kdWN0LXRvdGFsIHNwYW4uYW1vdW50IHNwYW4ud29vY29tbWVyY2UtUHJpY2UtY3VycmVuY3lTeW1ib2wge1xuICAgICAgICBjb2xvcjogJGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIHRmb290IHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJsdWUgIWltcG9ydGFudDtcblxuICAgICAgdGgsIHRkIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgdHIgdGQgc3Bhbi5hbW91bnQsXG4gICAgICB0ciB0ZCBzcGFuLmFtb3VudCBzcGFuLndvb2NvbW1lcmNlLVByaWNlLWN1cnJlbmN5U3ltYm9sIHtcbiAgICAgICAgY29sb3I6ICRibGFjayAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgdHIuc2hpcHBpbmcge1xuXG4gICAgICAgIHRkIHtcbiAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICB0ci50YXgtdG90YWwge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYmx1ZSAhaW1wb3J0YW50O1xuXG4gICAgICAgIHRoLCB0ZCB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICB0ci5vcmRlci10b3RhbCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRibHVlO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgIHRkIHN0cm9uZyBzcGFuLmFtb3VudCxcbiAgICAgICAgdGQgc3Ryb25nIHNwYW4uYW1vdW50IHNwYW4ud29vY29tbWVyY2UtUHJpY2UtY3VycmVuY3lTeW1ib2wge1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICBzbWFsbC5pbmNsdWRlc190YXggc3Bhbi53b29jb21tZXJjZS1QcmljZS1hbW91bnQsXG4gICAgICAgIHNtYWxsLmluY2x1ZGVzX3RheCBzcGFuLndvb2NvbW1lcmNlLVByaWNlLWFtb3VudCBzcGFuLndvb2NvbW1lcmNlLVByaWNlLWN1cnJlbmN5U3ltYm9sIHtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgdGFibGUuc2hvcF90YWJsZSB7XG5cbiAgICB0ciB7XG4gICAgICB0aCwgdGQge1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg5KSByZW0tY2FsYygxMik7XG4gICAgICB9XG4gICAgfVxuICAgIHRyLnNoaXBwaW5nIHtcblxuICAgICAgcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgICBhLnNoaXBwaW5nLWNhbGN1bGF0b3ItYnV0dG9uIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIH1cbiAgICAgIC5zaGlwcGluZy1jYWxjdWxhdG9yLWZvcm0ge1xuXG4gICAgICAgIHAuZm9ybS1yb3cge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQpO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAuc2VsZWN0MiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQpO1xuICAgICAgICAgICAgbWluLWhlaWdodDogcmVtLWNhbGMoNDIpO1xuXG4gICAgICAgICAgICAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRibHVlO1xuICAgICAgICAgICAgICBtaW4taGVpZ2h0OiByZW0tY2FsYyg0Mik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkLFxuICAgICAgICAgICAgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyB7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYyg0Mik7XG4gICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDQyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLmlucHV0LXRleHQge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkYmx1ZTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDMpO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgYnV0dG9uLmJ1dHRvbiB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgZGl2Lndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQsICNwYXltZW50IHtcbiAgICBiYWNrZ3JvdW5kOiAkYmx1ZTtcblxuICAgIHVsLndjX3BheW1lbnRfbWV0aG9kcyxcbiAgICB1bC53b29jb21tZXJjZS1QYXltZW50TWV0aG9kcyB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmx1ZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAgICYgPiBsaSB7XG5cbiAgICAgICAgJiA+IGxhYmVsIHtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGxpLndjX3BheW1lbnRfbWV0aG9kIHtcblxuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBsaS5wYXltZW50X21ldGhvZF9wYXlwYWwge1xuXG4gICAgICAgIGEuYWJvdXRfcGF5cGFsIHtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygxMCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGxpLnBheW1lbnRfbWV0aG9kX3N0cmlwZSB7XG5cbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG5cbiAgICAgICAgICAgIEBtZWRpYSAjeyRicmVhazYwMH0ge1xuICAgICAgICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDI1KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSAjeyRicmVhazQ4MH0ge1xuICAgICAgICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZGl2LnBheW1lbnRfYm94LnBheW1lbnRfbWV0aG9kX3N0cmlwZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBib3JkZXI6IDFlbSBzb2xpZCAkd2hpdGUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgICAgaW5wdXQjd2Mtc3RyaXBlLW5ldy1wYXltZW50LW1ldGhvZCB7XG4gICAgICAgICAgICBtYXJnaW46IDAgcmVtLWNhbGMoNSkgMCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICAgIGZpZWxkc2V0I3djLXN0cmlwZS1jYy1mb3JtIHtcblxuICAgICAgICAgICAgLmZvcm0tcm93IHtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibHVlO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAjc3RyaXBlLWNhcmQtZWxlbWVudCxcbiAgICAgICAgICAgICAgI3N0cmlwZS1leHAtZWxlbWVudCxcbiAgICAgICAgICAgICAgI3N0cmlwZS1jdmMtZWxlbWVudCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiByZW0tY2FsYygxKSBzb2xpZCAkYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDYpO1xuICAgICAgICAgICAgICAgIC8vIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDQ0KSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIC8vIGxpbmUtaGVpZ2h0OiByZW0tY2FsYyg0NCkgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuICAgIC53b29jb21tZXJjZS10ZXJtcy1hbmQtY29uZGl0aW9ucy13cmFwcGVyIHtcblxuICAgICAgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQge1xuXG4gICAgICAgIHAge1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcblxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdGV4dC1zaGFkb3c6IHJlbS1jYWxjKDIpIHJlbS1jYWxjKDEpIDAgJGJsdWU7XG4gICAgICAgICAgICB6LWluZGV4OiAxMDtcblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRibHVlO1xuICAgICAgICAgICAgICBib3R0b206IHJlbS1jYWxjKDIpO1xuICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoMik7XG4gICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJhY2tncm91bmQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlcjphZnRlciB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC53b29jb21tZXJjZS10ZXJtcy1hbmQtY29uZGl0aW9ucyB7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDIpO1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxNikgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIHNwYW4ud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMtY2hlY2tib3gtdGV4dCB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNikgIWltcG9ydGFudDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHRleHQtc2hhZG93OiByZW0tY2FsYygyKSByZW0tY2FsYygxKSAwICRibHVlO1xuICAgICAgICAgIHotaW5kZXg6IDEwO1xuXG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmx1ZTtcbiAgICAgICAgICAgIGJvdHRvbTogcmVtLWNhbGMoMik7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygyKTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihiYWNrZ3JvdW5kKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpob3ZlcjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5mb3JtLXJvdy5wbGFjZS1vcmRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmx1ZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCByZW0tY2FsYyg2KSByZW0tY2FsYyg2KTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cbiAgICBidXR0b24jcGxhY2Vfb3JkZXIge1xuICAgICAgYmFja2dyb3VuZDogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogJGJsdWUgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTtcblxuICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRibGFjayAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDhyZW0pIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRicmVhazYwMH0ge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICAgIC5yZXR1cm4tdG8tc2hvcCB7XG4gICAgICBiYWNrZ3JvdW5kOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAkYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xuXG4gICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgQG1lZGlhICN7JGJyZWFrNjAwfSB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgZGl2I3BheW1lbnQud29vY29tbWVyY2UtUGF5bWVudCB7XG5cbiAgICB1bC53b29jb21tZXJjZS1QYXltZW50TWV0aG9kcyArIGRpdi5mb3JtLXJvdyB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmx1ZTtcbiAgICB9XG4gICAgLmFib3V0X3BheXBhbCB7XG4gICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMTApO1xuICAgIH1cbiAgfVxuICAud29vY29tbWVyY2UtaW5mbyB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJGJsdWU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYyg0MCk7XG4gICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoNDUpO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwpO1xuXG4gICAgJiAqIHtcbiAgICAgIGNvbG9yOiAkYmx1ZTtcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29sb3I6ICRibHVlO1xuICAgICAgbGVmdDogcmVtLWNhbGMoMTUpICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5jbGVhci1ub3RpY2Uge1xuICAgICAgY29sb3I6IHJlZDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1mYW1pbHk6IGZvbnRhd2Vzb21lO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IHJlbS1jYWxjKDEwKTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgei1pbmRleDogNTA7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JGJyZWFrNjQwfSB7XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgbWFyZ2luOiAwIDAgcmVtLWNhbGMoMjApO1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTApIHJlbS1jYWxjKDQ1KSByZW0tY2FsYygxMCkgcmVtLWNhbGMoMTApO1xuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICAgICYuaGlkZS1ub3RpY2Uge1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxuICB9XG4gIGZvcm0uY2hlY2tvdXRfY291cG9uLndvb2NvbW1lcmNlLWZvcm0tY291cG9uLmhpZGUtbm90aWNlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC53b29jb21tZXJjZS1lcnJvciwgLndvb2NvbW1lcmNlLWluZm8sIC53b29jb21tZXJjZS1tZXNzYWdlIHtcbiAgICBiYWNrZ3JvdW5kOiAkbHRncmF5O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMTUpIHJlbS1jYWxjKDE1KSByZW0tY2FsYygxNSkgcmVtLWNhbGMoNDUpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIGEuYnV0dG9uIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygxMCk7XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAvLyBsZWZ0OiByZW0tY2FsYygxNSk7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCByZW0tY2FsYygxMCk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuICB9XG4gIC53b29jb21tZXJjZS1tZXNzYWdlIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkbHRncmVlbjtcblxuICAgIGEge1xuICAgICAgY29sb3I6ICRncmVlbjtcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZDogJGx0Z3JlZW47XG4gICAgfVxuICB9XG4gIC53b29jb21tZXJjZS1lcnJvciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJHJlZDtcblxuICAgIGEge1xuICAgICAgY29sb3I6ICRyZWQ7XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6ICRyZWQ7XG4gICAgfVxuICB9XG4gIC53b29jb21tZXJjZS1pbmZvIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkbHRibHVlO1xuXG4gICAgYSB7XG4gICAgICBjb2xvcjogJGx0Ymx1ZTtcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZDogJGx0Ymx1ZTtcbiAgICB9XG4gIH1cbn1cbi53b29jb21tZXJjZS1wYWdlLnNpbmdsZS1wcm9kdWN0IHtcblxuICBoMi53b29jb21tZXJjZS1wYWdlLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnkge1xuXG4gICAgLmdhbGxlcnkge1xuXG4gICAgICBmaWd1cmUuZ2FsbGVyeS1pdGVtIHtcblxuICAgICAgICBmaWdjYXB0aW9uLndwLWNhcHRpb24tdGV4dCB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLndvb2NvbW1lcmNlLWZvcm0ge1xuXG4gIGlucHV0LmlucHV0LXRleHQge1xuICAgIGJvcmRlcjogcmVtLWNhbGMoMSkgc29saWQgJGJsdWU7XG4gICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNik7XG4gIH1cbiAgbGFiZWwud29vY29tbWVyY2UtZm9ybV9fbGFiZWwud29vY29tbWVyY2UtZm9ybV9fbGFiZWwtZm9yLWNoZWNrYm94LmlubGluZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTApO1xuICB9XG59XG5kaXYud29vY29tbWVyY2Utb3JkZXIge1xuXG4gIHAud29vY29tbWVyY2Utbm90aWNlIHtcbiAgICBjb2xvcjogJGJsdWUgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDI4KSAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMS4yICFpbXBvcnRhbnQ7XG4gIH1cbiAgdWwud29vY29tbWVyY2Utb3JkZXItb3ZlcnZpZXcge1xuICAgIGJvcmRlcjogcmVtLWNhbGMoMSkgc29saWQgJGJsdWU7XG4gICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNik7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICBsaSB7XG4gICAgICBib3JkZXItcmlnaHQ6IHJlbS1jYWxjKDEpIHNvbGlkICRibHVlO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygxNSk7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB3aWR0aDogMjUlO1xuXG4gICAgICBzdHJvbmcge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KSAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDUpO1xuXG4gICAgICAgIEBtZWRpYSAjeyRicmVhazQ4MH0ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLndvb2NvbW1lcmNlLW9yZGVyLWRldGFpbHMge1xuXG4gICAgaDIge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyOCkgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDUpO1xuICAgIH1cbiAgfVxufVxuLnNlbGVjdDItZHJvcGRvd24ge1xuICBib3JkZXItY29sb3I6ICRibHVlO1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWRbYXJpYS1zZWxlY3RlZF0sIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkW2RhdGEtc2VsZWN0ZWRdIHtcbiAgYmFja2dyb3VuZDogJGJsdWU7XG59XG4ud29vY29tbWVyY2UtYWNjb3VudCB7XG5cbiAgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbm9uZTtcblxuICAgIHVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgbWFyZ2luOiAwIDAgcmVtLWNhbGMoNDApIDA7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgd2lkdGg6IDMzLjMzMzMlO1xuXG4gICAgICAgIEBtZWRpYSAjeyRicmVhazQ4MH0ge1xuICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRyZWQ7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoMzUpO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkYmFybG93O1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG8gcmVtLWNhbGMoNCk7XG4gICAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAuMjVyZW0pO1xuICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDQpO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZCk7XG4gICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBtZWRpYSAjeyRicmVhazQ4MH0ge1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0uMDNlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIGZvcm0ge1xuXG4gICAgICAuZm9ybS1yb3cge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuICAgICAgaW5wdXQuaW5wdXQtdGV4dCB7XG4gICAgICAgIGJvcmRlcjogcmVtLWNhbGMoMSkgc29saWQgJGJsdWU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDYpO1xuICAgICAgfVxuICAgICAgZmllbGRzZXQge1xuXG4gICAgICAgIGxlZ2VuZCB7XG4gICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygyMCkgMCAwIDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbkBtZWRpYSAjeyRicmVhazc2N30ge1xuICAud29vY29tbWVyY2UsIC53b29jb21tZXJjZS1wYWdlIHtcblxuICAgIHRhYmxlLnNob3BfdGFibGVfcmVzcG9uc2l2ZSB7XG5cbiAgICAgIHRyLndvb2NvbW1lcmNlLWNhcnQtZm9ybV9fY2FydC1pdGVtLmNhcnRfaXRlbSB7XG4gICAgICAgIGJvcmRlci10b3A6IHJlbS1jYWxjKDUpIHNvbGlkICRibHVlO1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxNSk7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICB9XG4gICAgICAgICY6bnRoLWNoaWxkKDJuKSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuXG4gICAgICAgICAgdGQge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuXG4gICAgICAgICAgICAmLnByb2R1Y3QtcHJpY2UsICYucHJvZHVjdC1zdWJ0b3RhbCB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRsdGdyYXk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHRkIHtcbiAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAucXVhbnRpdHkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gcmVtLWNhbGMoNSk7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogYXR0cihkYXRhLXRpdGxlKSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJi5wcm9kdWN0LW5hbWUge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgc3Bhbi5wcm9kdWN0LXRpdGxlIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHNwYW4ucHJvZHVjdC10aHVtYm5haWwge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygyMDApO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICYucHJvZHVjdC1yZW1vdmUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgICAgIHRvcDogcmVtLWNhbGMoNSk7XG4gICAgICAgICAgfVxuICAgICAgICAgICYucHJvZHVjdC1wcmljZSwgJi5wcm9kdWN0LXN1YnRvdGFsIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRsdGdyYXk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJib2R5IHtcbiAgYmFja2dyb3VuZDogJHdoaXRlO1xufVxuOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICRhbG1vc3RibGFjayAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IHJlbS1jYWxjKDE2KSAhaW1wb3J0YW50O1xuICBmb250LWZhbWlseTogJGJhcmxvdyAhaW1wb3J0YW50O1xufVxuOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICRhbG1vc3RibGFjayAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IHJlbS1jYWxjKDE2KSAhaW1wb3J0YW50O1xuICBmb250LWZhbWlseTogJGJhcmxvdyAhaW1wb3J0YW50O1xufVxuOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAkYWxtb3N0YmxhY2sgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiByZW0tY2FsYygxNikgIWltcG9ydGFudDtcbiAgZm9udC1mYW1pbHk6ICRiYXJsb3cgIWltcG9ydGFudDtcbn1cbjotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICRhbG1vc3RibGFjayAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IHJlbS1jYWxjKDE2KSAhaW1wb3J0YW50O1xuICBmb250LWZhbWlseTogJGJhcmxvdyAhaW1wb3J0YW50O1xufVxuOjpzZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kOiAkZ3JlZW47XG4gIGNvbG9yOiAkd2hpdGU7XG59XG46Oi1tb3otc2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogJGdyZWVuO1xuICBjb2xvcjogJHdoaXRlO1xufVxuLm1haW4tY29udGVudCAuZW50cnktY29udGVudCBibG9ja3F1b3RlIHtcbiAgYm9yZGVyLWxlZnQtY29sb3I6ICRncmVlbjtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IHJlbS1jYWxjKDQpO1xuICBtYXJnaW46IHJlbS1jYWxjKDMyKSAwO1xuICBwYWRkaW5nOiByZW0tY2FsYyg4KSByZW0tY2FsYygxNSk7XG5cbiAgcCB7XG4gICAgZm9udC1mYW1pbHk6ICRiYXJsb3c7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygzMCk7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuYm9keS5wYWdlLWlkLTMwIHtcbiAgYmFja2dyb3VuZDogJGx0Z3JheTtcbn1cbmJvZHk6bm90KC5ob21lKSAubWFpbi13cmFwIC5tYWluLWNvbnRlbnQge1xuICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg4MCk7XG5cbiAgLndwYl93cmFwcGVyIHtcblxuICAgIC53cGJfdGV4dF9jb2x1bW46bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4uZ2Zvcm1fd3JhcHBlciB7XG5cbiAgLmdmb3JtX2JvZHkge1xuXG4gICAgbGkuZ2ZpZWxkLmZsb2F0TGFiZWwge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICBsYWJlbCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGxlZnQ6IHJlbS1jYWxjKDIxKTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IHJlbS1jYWxjKDIxKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwpO1xuXG4gICAgICAgICZbZGF0YS1hdHRyPVwiYWN0aXZlXCJdIHtcbiAgICAgICAgICBmb250LXNpemU6IDgwJTtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHRvcDogcmVtLWNhbGMoLTIzKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbmhlYWRlciNtYXN0aGVhZCB7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAjaGVhZGVyLWlubmVyIHtcblxuICAgIEBtZWRpYSAjeyRicmVhazEwMjR9IHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG5cbiAgICBuYXYuc2l0ZS1uYXZpZ2F0aW9uLnRvcC1iYXIge1xuXG4gICAgICAuZGVza3RvcC1tZW51ID4gbGkgPiBhIHtcblxuICAgICAgfVxuICAgICAgLm1lbnUgLmRyb3Bkb3duIHtcbiAgICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJi5maXJzdC1zdWIge1xuICAgICAgICAgIGJveC1zaGFkb3c6ICRib3hzaGFkb3c7XG5cbiAgICAgICAgICAuZHJvcGRvd24ge1xuICAgICAgICAgICAgLy8gbGlzdC1zdHlsZTogY2lyY2xlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAvLyBsaXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB0b3A6IGF1dG87XG5cbiAgICAgICAgICAgIGxpIGEge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAvLyBsaXN0LXN0eWxlOiBjaXJjbGUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJ+KXpic7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygxNyk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyg0KTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgdG9wOiByZW0tY2FsYygtMik7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnRvcC1iYXItbGVmdCB7XG5cbiAgICAgICAgLnNpdGUtZGVza3RvcC10aXRsZS50b3AtYmFyLXRpdGxlIHtcblxuICAgICAgICAgIC5sb2dvLXdyYXBwZXIuaGlkZS1mb3Itc21hbGwtb25seSB7XG5cbiAgICAgICAgICAgIGEuY3VzdG9tLWxvZ28tbGluayB7XG4gICAgICAgICAgICAgIEBtZWRpYSAjeyRicmVhazEwMjR9IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMTApIGF1dG87XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoMTE4KTtcblxuICAgICAgICBAbWVkaWEgI3skYnJlYWsxMDI0fSB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAudG9wLWJhci1zb2NpYWwge1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDExOCk7XG5cbiAgICAgICAgICBAbWVkaWEgI3skYnJlYWsxMDI0fSB7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG4gICAgICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHVsLnNvY2lhbC1tZWRpYS13cmFwcGVyIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygxMTgpO1xuXG4gICAgICAgICAgICAgIEBtZWRpYSAjeyRicmVhazEwMjR9IHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGxpOm5vdCguY3VzdG9tLWJ1dHRvbik6bm90KC5pbmxpbmUtc29jaWFsLXNlYXJjaC13cmFwcGVyKSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBsaS5pbmxpbmUtc29jaWFsLXNlYXJjaC13cmFwcGVyIHtcblxuICAgICAgICAgICAgICBidXR0b24uc2VhcmNoLXRvZ2dsZSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoMTE4KTtcblxuICAgICAgICAgICAgICAgICY6YmVmb3JlLCAmOmFjdGl2ZTpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHllbGxvdztcbiAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDgpO1xuICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAbWVkaWEgI3skYnJlYWsxMDI0fSB7XG4gICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cywgJi5zZWFyY2gtYWN0aXZlIHtcblxuICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgI3skYnJlYWsxMDI0fSB7XG4gICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBmb3JtI3NlYXJjaGZvcm0ge1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhICN7JGJyZWFrMTAyNH0ge1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzApICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICYuc2hvdyB7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRicmVhazEwMjR9IHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTApICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBsaS5jdXN0b20tYnV0dG9uIHtcblxuICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjE1cmVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgcmVtLWNhbGMoMjIpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHVsLmRlc2t0b3AtbWVudSB7XG4gICAgICAgICAgQG1lZGlhICN7JGJyZWFrMTAyNH0ge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDcwMCk7XG4gICAgICAgICAgICBvcmRlcjogMjtcbiAgICAgICAgICB9XG4gICAgICAgICAgJiA+IGxpIHtcblxuICAgICAgICAgICAgJiA+IGEge1xuICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDExOCk7XG4gICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjE1cmVtO1xuXG4gICAgICAgICAgICAgIEBtZWRpYSAjeyRicmVhazEyMDB9IHtcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wMTVyZW07XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgQG1lZGlhICN7JGJyZWFrMTAyNH0ge1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg2KSByZW0tY2FsYygxNSkgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8qKioqIElOVEVSTkFMIFBBR0UgU1RZTEVTICoqKiovXG4uY29udGFjdC1pbmZvLXdyYXBwZXIge1xuXG4gIC5jb250YWN0LWluZm8tY29sLTEge1xuXG4gIH1cbiAgLmNvbnRhY3QtaW5mby1jb2wtMiB7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoLTk2KTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTA7XG5cbiAgICBAbWVkaWEgI3skYnJlYWs5MDB9IHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICB9XG59XG4uY29udGFjdC1pbmZvLWNvbHVtbnMge1xuICBAbWVkaWEgI3skYnJlYWs3Njd9IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuICAudmNfY29sLXNtLTYge1xuICAgIEBtZWRpYSAjeyRicmVhazExMDB9IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDYwKTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSAjeyRicmVhazc2N30ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNjApO1xuICAgICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuXG4gICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQwKTtcbiAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhICN7JGJyZWFrNjAwfSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg2MCk7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxucC5jb250YWN0LWVsZW1lbnQge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDI0KTtcblxuICBzcGFuLmNvbnRhY3QtaWNvbiB7XG4gICAgYmFja2dyb3VuZDogJGFsbW9zdGJsYWNrO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgIGhlaWdodDogcmVtLWNhbGMoMzIpO1xuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygzMik7XG4gICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygyNSk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiByZW0tY2FsYygzMik7XG5cbiAgICAmLmNvbnRhY3QtZGFzaCB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgaGVpZ2h0OiByZW0tY2FsYygyKTtcbiAgICB9XG4gIH1cbiAgc3Bhbi5jb250YWN0LXRleHQge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA1LjU2MjVyZW0pO1xuXG4gICAgc3Ryb25nIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkYmFybG93O1xuICAgIH1cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkYWxtb3N0YmxhY2s7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICAgICZbaHJlZio9XCJtYWlsdG9cIl0ge1xuICAgICAgICB3aGl0ZS1zcGFjZTogcHJld3JhcDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5jb250YWN0LW1hcC13cmFwcGVyIHtcblxuICAud3BiX3dyYXBwZXIge1xuICAgIG1heC1oZWlnaHQ6IHJlbS1jYWxjKDc1Nik7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB9XG4gIC53cGJfbWFwX3dyYXBlciB7XG4gICAgZmlsdGVyOiBncmF5c2NhbGUoMTAwJSk7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgLXdlYmtpdC1maWx0ZXI6IGdyYXlzY2FsZSgxMDAlKTtcbiAgICAtbW96LWZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xuICAgIC1tcy1maWx0ZXI6IGdyYXlzY2FsZSgxMDAlKTtcbiAgICAtby1maWx0ZXI6IGdyYXlzY2FsZSgxMDAlKTtcblxuICAgIEBtZWRpYSAjeyRicmVhazEyMDB9IHtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzOS4zNyU7XG5cbiAgICAgIGlmcmFtZSB7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSAjeyRicmVhazc2N30ge1xuICAgICAgcGFkZGluZy1ib3R0b206IDc1JTtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLC4xNSk7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuLnNpbmdsZS10cmliZV9ldmVudHMge1xuXG4gICN0cmliZS1ldmVudHMtY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgLnRyaWJlLWV2ZW50cy1iYWNrIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQwKTtcbiAgICAgIC8vIG9yZGVyOiAyO1xuXG4gICAgICBhIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMTVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAvLyBwYWRkaW5nOiByZW0tY2FsYyg0MCkgcmVtLWNhbGMoNDApIHJlbS1jYWxjKDM5KTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCk7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDQwKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgIHdpZHRoOiByZW0tY2FsYyg0Mik7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwpO1xuICAgICAgICB9XG4gICAgICAgIHNwYW4udHJpYmUtZXZlbnRzLWJhY2staW5uZXIge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IHJlbS1jYWxjKDEpIHNvbGlkICRhbG1vc3RibGFjaztcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgaDEudHJpYmUtZXZlbnRzLXNpbmdsZS1ldmVudC10aXRsZSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDY0KTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgLy8gb3JkZXI6IDE7XG4gICAgfVxuICAgIC50cmliZS1ldmVudHMtc2NoZWR1bGUge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIC8vIG9yZGVyOiAzO1xuXG4gICAgICBoMiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICAgICN0cmliZS1ldmVudHMtaGVhZGVyIHtcbiAgICAgIC8vIG9yZGVyOiA0O1xuICAgIH1cbiAgICAudHJpYmVfZXZlbnRzLnR5cGUtdHJpYmVfZXZlbnRzIHtcbiAgICAgIC8vIG9yZGVyOiA1O1xuXG4gICAgICAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyB7XG5cbiAgICAgICAgYS50cmliZS1ldmVudHMtYnV0dG9uIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkeWVsbG93O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDMpO1xuICAgICAgICAgIGNvbG9yOiAkYWxtb3N0YmxhY2s7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkYmFybG93O1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDQwKTtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4xNXJlbTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyg0MCk7XG4gICAgICAgICAgcGFkZGluZzogMCByZW0tY2FsYygyMik7XG4gICAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZCk7XG5cbiAgICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRhbG1vc3RibGFjaztcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAudHJpYmUtZXZlbnRzLXNpbmdsZS1zZWN0aW9uIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGx0Z3JheTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyg2NSk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcblxuICAgICAgICAudHJpYmUtZXZlbnRzLW1ldGEtZ3JvdXAge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDYwKTtcblxuICAgICAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgZGwge1xuXG4gICAgICAgICAgICBkdCB7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkYmFybG93O1xuICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wMjVyZW07XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBkZCB7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTtcblxuICAgICAgICAgICAgICAmLnRyaWJlLXZlbnVlLCAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5zaW5nbGUuc2luZ2xlLXBvc3Qge1xuXG4gIGEuYWxsLXBvc3RzLWJhY2sge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMTVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNDApO1xuICAgIC8vIHBhZGRpbmc6IHJlbS1jYWxjKDQwKSByZW0tY2FsYyg0MCkgcmVtLWNhbGMoMzkpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsKTtcblxuICAgIGltZyB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDQwKTtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICB3aWR0aDogcmVtLWNhbGMoNDIpO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwpO1xuICAgIH1cbiAgICBzcGFuLmFsbC1wb3N0cy1iYWNrLWlubmVyIHtcbiAgICAgIGJvcmRlci1ib3R0b206IHJlbS1jYWxjKDEpIHNvbGlkICRhbG1vc3RibGFjaztcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cbiAgICAmOmhvdmVyLCAmOmZvY3VzIHtcblxuICAgICAgaW1nIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygyMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIGgxLmVudHJ5LXRpdGxlIHtcblxuICB9XG4gIC5icy1lbnRyeS1tZXRhIHtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygtMzApO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKSAhaW1wb3J0YW50O1xuICB9XG4gIC5lbnRyeS1jb250ZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg4MCk7XG4gIH1cbn1cblxuXG4vKioqKiBQUkUtRk9PVEVSICYgRk9PVEVSIFNUWUxFUyAqKioqL1xuLnNwb25zb3ItbG9nby1jb250YWluZXIge1xuXG4gIC5zcG9uc29yLWxvZ28td3JhcHBlciB7XG5cbiAgICAuc2xpY2stbGlzdCB7XG4gICAgICBtYXJnaW46IHJlbS1jYWxjKDYwKSBhdXRvIHJlbS1jYWxjKDIwKSByZW0tY2FsYygtMTAwKTtcblxuICAgICAgQG1lZGlhICN7JGJyZWFrMTIwMH0ge1xuICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDYwKSBhdXRvIHJlbS1jYWxjKDIwKSByZW0tY2FsYygtNDApO1xuICAgICAgfVxuXG4gICAgICAuc2xpY2stc2xpZGUge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDEwMCk7XG5cbiAgICAgICAgQG1lZGlhICN7JGJyZWFrMTIwMH0ge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoNDApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuc2luZ2xlLXNwb25zb3ItbG9nby1pdGVtIHtcblxuICAgICAgICAuZW50cnktY29udGVudCB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGx0Z3JheTtcbiAgICAgICAgfVxuICAgICAgICBpbWcge1xuICAgICAgICAgIG1peC1ibGVuZC1tb2RlOiBtdWx0aXBsZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICBwLmRvbm9yLWxldmVsIHtcbiAgICAgICAgICBmb250LWZhbWlseTogJHNvdXJjZXNhbnM7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgbWFyZ2luOiByZW0tY2FsYygyMCkgMCAwO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5zbGljay1kb3RzIHtcblxuICAgICAgbGkge1xuICAgICAgICBib3JkZXI6IHJlbS1jYWxjKDEpIHNvbGlkICRhbG1vc3RibGFjaztcblxuICAgICAgICAmLnNsaWNrLWFjdGl2ZSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGFsbW9zdGJsYWNrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4jZm9vdGVyLWNvbnRhaW5lciB7XG5cbiAgLnByZS1mb290ZXItY29udGFpbmVyIHtcblxuICAgIC5wcmUtZm9vdGVyIHtcblxuXG4gICAgfVxuICB9XG4gIC5mb290ZXItY29udGFpbmVyIHtcblxuICAgIC5mb290ZXIuZ3JpZC14IHtcblxuICAgICAgc2VjdGlvbi53aWRnZXQubGFyZ2UtMyB7XG5cbiAgICAgICAgcCwgbGksIGEsIHNwYW4ge1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkc291cmNlc2FucztcbiAgICAgICAgfVxuICAgICAgICBoNiB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRiYXJsb3c7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCkgIWltcG9ydGFudDtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4xNXJlbTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCkgIWltcG9ydGFudDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAgICAgQG1lZGlhICN7JGJyZWFrNzY3fSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCkgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm1lbnUgbGkgYSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTIpO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgICAgICBAbWVkaWEgI3skYnJlYWs3Njd9IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnNvY2lhbC1tZWRpYS13cmFwcGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygtMTIpO1xuXG4gICAgICAgICAgQG1lZGlhICN7JGJyZWFrNzY3fSB7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDEyKTtcbiAgICAgICAgICAgIEBtZWRpYSAjeyRicmVhazc2N30ge1xuICAgICAgICAgICAgICAvLyBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYWxtb3N0YmxhY2s7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgICAgICAgIGNvbG9yOiAkbHRncmF5O1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygzMik7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygzMik7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDMyKTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihiYWNrZ3JvdW5kKTtcblxuICAgICAgICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkZ3JlZW47XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmZvb3Rlci1sb2dvLWNvbnRhaW5lciB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDYwKTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKC0xMCk7XG5cbiAgICAgICAgICAgIEBtZWRpYSAjeyRicmVhazc2N30ge1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmdmb3JtX3dyYXBwZXIge1xuXG4gICAgICAgICAgZm9ybSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIC5nZm9ybV9ib2R5IHtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMnJlbSk7XG5cbiAgICAgICAgICAgICAgbGkuZ2ZpZWxkIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgaW5wdXQ6bm90KFt0eXBlPXJhZGlvXSk6bm90KFt0eXBlPWNoZWNrYm94XSk6bm90KFt0eXBlPXN1Ym1pdF0pOm5vdChbdHlwZT1pbWFnZV0pOm5vdChbdHlwZT0nZmlsZSddKSB7XG4gICAgICAgICAgICAgICAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IHJlbS1jYWxjKDM4KTtcbiAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIHJlbS1jYWxjKDIwKSAwIHJlbS1jYWxjKDE1KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi5mbG9hdExhYmVsIHtcblxuICAgICAgICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiByZW0tY2FsYygxNSk7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogcmVtLWNhbGMoMTApO1xuXG4gICAgICAgICAgICAgICAgICAgICZbZGF0YS1hdHRyPVwiYWN0aXZlXCJdIHtcbiAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgIHRvcDogcmVtLWNhbGMoLTE2KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmdmb3JtX2Zvb3RlciB7XG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoMzgpO1xuXG4gICAgICAgICAgICAgIGlucHV0Lmdmb3JtX2J1dHRvbiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHllbGxvdztcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygzOCk7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDM4KTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiByZW0tY2FsYygzOCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uLy4uLy4uL3NyYy9hc3NldHMvaW1hZ2VzL2JsYWNrLWFycm93LnN2Zykgbm8tcmVwZWF0IGxlZnQgY2VudGVyO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYWxtb3N0YmxhY2s7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBmb250YXdlc29tZTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgICAgICAgICByaWdodDogcmVtLWNhbGMoMTUpO1xuICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IHJlbS1jYWxjKDE0LjUpO1xuICAgICAgICAgICAgICAgIHdpZHRoOiByZW0tY2FsYygzOCk7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihyaWdodCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG5cbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgIHJpZ2h0OiByZW0tY2FsYygxMCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIHdpZHRoOiAzNi42NSU7XG5cbiAgICAgICAgICBAbWVkaWEgI3skYnJlYWsxMDI0fSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg2MCk7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB9XG4gICAgICAgICAgQG1lZGlhICN7JGJyZWFrNzY3fSB7XG4gICAgICAgICAgICBoNiwgcCB7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICB3aWR0aDogMTcuNTIlO1xuXG4gICAgICAgICAgQG1lZGlhICN7JGJyZWFrMTAyNH0ge1xuICAgICAgICAgICAgd2lkdGg6IDMzLjMzMzMlO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAbWVkaWEgI3skYnJlYWs3Njd9IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDYwKTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgd2lkdGg6IDIxLjc3JTtcblxuICAgICAgICAgIEBtZWRpYSAjeyRicmVhazEwMjR9IHtcbiAgICAgICAgICAgIHdpZHRoOiAzMy4zMzMzJTtcbiAgICAgICAgICB9XG4gICAgICAgICAgQG1lZGlhICN7JGJyZWFrNzY3fSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg2MCk7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICB3aWR0aDogMjQuMDYlO1xuXG4gICAgICAgICAgQG1lZGlhICN7JGJyZWFrMTAyNH0ge1xuICAgICAgICAgICAgd2lkdGg6IDMzLjMzMzMlO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAbWVkaWEgI3skYnJlYWs3Njd9IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuI2NvcHlyaWdodC1jb250YWluZXIge1xuXG4gIHAsIHAgYSB7XG4gICAgZm9udC1mYW1pbHk6ICRzb3VyY2VzYW5zO1xuICB9XG59XG4iLCIvLyBOYXZpZ2F0aW9uIGJyZWFrcG9pbnRzXG4ubW9iaWxlLW1lbnUsXG4uc2l0ZS10aXRsZS1iYXIge1xuICBAaW5jbHVkZSBoaWRlLWZvcihtZWRpdW0pO1xufVxuXG4uZGVza3RvcC1tZW51LFxuYm9keTpub3QoLnRvcGJhcikgLnNpdGUtbmF2aWdhdGlvbiAudG9wLWJhci1sZWZ0IHtcbiAgQGluY2x1ZGUgc2hvdy1mb3IobWVkaXVtKTtcbn1cblxuLy8gU2l0ZSB0aXRsZVxuLnNpdGUtZGVza3RvcC10aXRsZSBhIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8vIE1vYmlsZSBtZW51XG4ubW9iaWxlLW1lbnUge1xuICBkaXNwbGF5OiBub25lOyAvLyBwcmV2ZW50cyByZXBhaW50IGNhdXNlZCBieSBKUyBoaWRpbmcgbWVudSBvbmxvYWRcbn1cblxuLm9mZi1jYW52YXMge1xuICA+IHVsLm1lbnUge1xuICAgIC8vIGhlaWdodDogMTAwdmg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmc6IDFyZW07XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgfVxuICB9XG5cbiAgLm1lbnUgLmFjdGl2ZSA+IGEgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjOyB9XG5cbn1cblxuLnRpdGxlLWJhci10aXRsZSB7XG4gIGEge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBjb2xvcjogI0I5QjlCOTtcbiAgfVxufVxuXG4ubW9iaWxlLW1lbnUsXG4ubW9iaWxlLW9mZi1jYW52YXMtbWVudSB7XG5cbiAgLm1lbnUgLmlzLWFjdGl2ZSA+IGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGRhcmstbmF2LWNvbG9yLCA1JSk7XG4gIH1cbn1cblxuLy8gVGFibGV0IGFuZCBkZXNrdG9wIG1lbnVcblxuLnRvcC1iYXIge1xuXG4gIC50b3AtYmFyLXRpdGxlIGEge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBjb2xvcjogI0I5QjlCOTtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuODtcbiAgfVxuXG4gIC5tZW51IGEge1xuICAgIGNvbG9yOiAjZTZlNmU2O1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgJjpob3Zlcjpub3QoLmJ1dHRvbikge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzQyNTI1RDtcbiAgICB9XG4gIH1cblxuICAubWVudSAuYWN0aXZlID4gYSB7IGJhY2tncm91bmQtY29sb3I6ICNjY2M7IH1cblxuICAubWVudT5saTpub3QoLm1lbnUtdGV4dCk+YSB7IHBhZGRpbmc6IDFyZW07IH1cbiAgLm1lbnUgbGk6bm90KDpsYXN0LWNoaWxkKSB7IGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM0ZTRlNGU7IH1cblxuICAuZHJvcGRvd24ubWVudSAuc3VibWVudSB7IGJvcmRlcjogMDsgfVxuICAuZHJvcGRvd24ubWVudSAuaGFzLXN1Ym1lbnUuaXMtZG93bi1hcnJvdyBhIHsgcGFkZGluZy1yaWdodDogMXJlbTsgfVxuICAuZHJvcGRvd24ubWVudSAuaGFzLXN1Ym1lbnUuaXMtZG93bi1hcnJvdyA+IGE6OmFmdGVyIHsgYm9yZGVyOiAwOyB9XG4gIC5kcm9wZG93bi5tZW51OmZpcnN0LWNoaWxkID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7IGRpc3BsYXk6IG5vbmU7IH1cbn1cblxuLnNpdGUtbmF2aWdhdGlvbiB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIHBhZGRpbmc6IDA7IC8vIHByZXZlbnRzIGNvbnRhaW5lciB2aXNpYmlsaXR5IG9uIHNtYWxsIHNjcmVlbnNcbiAgfVxufVxuXG4vLyBXUCBwb3N0IG5hdmlnYXRpb25cbi5wb3N0LW5hdmlnYXRpb24ge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLm5hdi1wcmV2aW91cyB7XG4gIGZsb2F0OmxlZnQ7XG59XG5cbi5uYXYtbmV4dCB7XG4gIGZsb2F0OnJpZ2h0O1xufVxuIiwiLm1haW4td3JhcCB7XG4gIG1heC13aWR0aDogcmVtLWNhbGMoMTM2MCk7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAvLyBtYXJnaW4tdG9wOiAxcmVtO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuXG4gICYuc2lkZWJhci1sZWZ0IHtcblxuICAgIC8vIFBsYWNlIHRoZSBzaWRlYmFyIGJlbG93IG1haW4gY29udGVudCBvbiBzbWFsbCBzY3JlZW5zIC4uLlxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xuICAgICAgICAubWFpbi1jb250ZW50IHsgb3JkZXI6IDE7IH1cbiAgICAgICAgLnNpZGViYXIgeyBvcmRlcjogMjsgfVxuICAgICAgfVxuXG4gICAgLy8gLi4uIGFuZCB0byB0aGUgbGVmdCBvbiBtZWRpdW0tdXAgc2NyZWVucywgd2hlbiB1c2luZyB0aGUgc2lkZWJhci1sZWZ0IHRlbXBsYXRlXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAubWFpbi1jb250ZW50IHsgb3JkZXI6IDI7IH1cbiAgICAgICAgLnNpZGViYXIgeyBvcmRlcjogMTsgfVxuICAgICAgfVxuICB9XG5cbiAgLy8gRnVsbCB3aWR0aCB0ZW1wbGF0ZVxuICAmLmZ1bGwtd2lkdGgge1xuICAgIC5tYWluLWNvbnRlbnQge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbCgxMik7XG4gICAgfVxuICB9XG5cbiAgLm1haW4tY29udGVudCB7XG5cbiAgICAvLyBEZWZhdWx0IHRlbXBsYXRlXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbCgxMik7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwoOCk7XG4gICAgfVxuXG4gIH1cblxuICAuc2lkZWJhciB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKDEyKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbCg0KTtcbiAgICAgIC8vIG1hcmdpbi10b3A6IDFyZW07XG4gICAgfVxuXG4gIH1cbn1cbiIsImRpdi5wcmUtZm9vdGVyLWNvbnRhaW5lciB7XG5cbiAgJiArIGRpdi5mb290ZXItY29udGFpbmVyIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG4gIC5wcmUtZm9vdGVyIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDEzNjApO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDgwKSAwO1xuICB9XG4gIC53aWRnZXQge1xuICAgIHBhZGRpbmc6IDAgcmVtLWNhbGMoMTUpO1xuXG4gICAgJiA+IGg0IHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzIpICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVyZW07XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cbiAgICBwIHtcblxuICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuYm9keS5ob21lIGRpdi5wcmUtZm9vdGVyLWNvbnRhaW5lciB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4uZm9vdGVyLWNvbnRhaW5lciB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuICAvLyBtYXJnaW4tdG9wOiByZW0tY2FsYyg2MCk7XG59XG5cbi5mb290ZXIge1xuICBtYXgtd2lkdGg6IHJlbS1jYWxjKDEzNjApO1xuICBtYXJnaW46IDAgYXV0bztcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgcGFkZGluZzogcmVtLWNhbGMoODApIDAgIWltcG9ydGFudDtcblxuICBhcnRpY2xlIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsKGF1dG8pO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIHVsIHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbiIsImJvZHkjdGlueW1jZXtcbiAgaGVpZ2h0OiBhdXRvOyAvLyBGaXggZWRpdG9yIHN0eWxlIGJ1Z1xuICBtYXgtd2lkdGg6ICRncmlkLXJvdy13aWR0aDsgLy8gR2l2ZSB0aGUgZWRpdG9yIGEgbWF4LXdpZHRoXG4gIHBhZGRpbmc6IHJlbS1jYWxjKDIwKSAhaW1wb3J0YW50O1xufSIsIi5zaXRlcy1idXR0b24ge1xuICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgYm94LXNoYWRvdzogMCAtMnB4IDAgcmdiYSgwLDAsMCwwLjIpIGluc2V0O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJvcmRlcjogbm9uZTtcbn1cbiIsIi5jYXJkcy1jb250YWluZXIge1xuXG4gIEBpbmNsdWRlIHh5LWdyaWQ7XG5cbiAgLmNhcmQge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwoMTIpO1xuXG4gICAgICAuY2FyZC1jb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKDEgb2YgMywgdHJ1ZSwgMC43cmVtICk7XG5cbiAgICB9XG5cbiAgfVxufVxuIiwiLmZlYXR1cmVkLWhlcm8ge1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDEwMCk7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtaW4taGVpZ2h0OiByZW0tY2FsYygyMDApO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICBtaW4taGVpZ2h0OiByZW0tY2FsYyg0MDApO1xuICB9XG59XG4iLCIuZG90dGVkIHtcbiAgYm9yZGVyLXN0eWxlOiBkYXNoZWQ7XG4gIG1hcmdpbjogMnJlbSAwO1xufVxuIiwiLy8gQXBwbHkgb3V0bGluZSBzdHlsZXMgb25seSB3aGVuIGlucHV0IG1ldGhvZCBpcyBrZXlib2FyZFxuLy8gcmVtb3ZlIDpmb2N1cyBzdHlsZSB2aWEgV2hhdCBJbnB1dCB1c2luZyBwcm9ncmVzc2l2ZSBlbmhhbmNlbWVudFxuLy8gc28gOmZvY3VzIGlzbid0IGxlZnQgYnJva2VuIGlmIEphdmFTY3JpcHQgZmFpbHNcblxuW2RhdGEtd2hhdGlucHV0PVwibW91c2VcIl0gYTpmb2N1cywgYnV0dG9uOmZvY3VzXG5bZGF0YS13aGF0aW5wdXQ9XCJ0b3VjaFwiXSBhOmZvY3VzLCBidXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuIiwiLy8gUGFnZSBoZWFkZXJcbi5mcm9udC1oZXJvIHtcbiAgLm1hcmtldGluZyB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXIoNTVyZW0pO1xuICAgIEBpbmNsdWRlIHh5LWdyaWQ7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XG4gICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvZGVtby9oZXJvLWJnLWZvdW5kYXRpb24tNi1zbWFsbC5zdmcnKSBib3R0b20gY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDY1JSkgMDtcbiAgICBtYXJnaW46IDAgMCByZW0tY2FsYygzMik7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9kZW1vL2hlcm8tYmctZm91bmRhdGlvbi02LWxhcmdlLnN2ZycpIGJvdHRvbSBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgaGVpZ2h0OiByZW0tY2FsYyg2ODUpO1xuICAgIG1hcmdpbjogMCAwIHJlbS1jYWxjKDcyKTtcbiAgfVxuXG4gIC53YXRjaCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbCg3KTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbCgxMik7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBjb2xvcjogI0I0QzlEMTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDIwKTtcbiAgICB9XG5cbiAgICBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cblxuICAgICNzdGFyZ2F6ZXJzIHtcbiAgICAgIDpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZjA5YlwiO1xuICAgICAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICAgICAgICBjb2xvcjogI0I0QzlEMTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyg4KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAjdHdpdHRlciB7XG4gICAgICA6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcXGYwOTlcIjtcbiAgICAgICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgICAgICAgY29sb3I6ICNCNEM5RDE7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoOCk7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxuICAudGFnbGluZSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbCg4KTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbCg1KTtcbiAgICAgIHBhZGRpbmctdG9wOiA2cmVtO1xuICAgIH1cbiAgfVxuXG4gIGgxIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXdlaWdodDogNTAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xuICAgICAgZm9udC1zaXplOiAyLjJyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGZvbnQtc2l6ZTogMi44NzVyZW07XG4gICAgfVxuICB9XG5cbiAgaDQge1xuICAgIGNvbG9yOiAjZmVmZWZlO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZm9udC1zaXplOiAxLjMxMjVyZW07XG4gIH1cblxuICAuZG93bmxvYWQge1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDIwKTtcbiAgfVxufVxuXG4vLyBJbnRyb1xuLmludHJvIHtcbiAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXI7XG4gIEBpbmNsdWRlIHh5LWdyaWQ7XG5cbiAgLmZwLWludHJvIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKDEyKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbCgxMCk7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLW9mZnNldCgxKTtcblxuICAgICAgaDIge1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgICB9XG5cbiAgICAgIGg0IHtcbiAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgY29sb3I6ICM3Nzc7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFNlY3Rpb24gZGl2aWRlclxuLnNlY3Rpb24tZGl2aWRlciB7XG4gIEBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyO1xuICBAaW5jbHVkZSB4eS1ncmlkO1xuXG4gIGhyIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsKDEyKTtcbiAgICBAZXh0ZW5kIC5kb3R0ZWQ7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxufVxuXG4vLyBCZW5lZml0c1xuLmJlbmVmaXRzIHtcbiAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXI7XG4gIEBpbmNsdWRlIHh5LWdyaWQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBoZWFkZXIge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwoMTIpO1xuXG4gICAgaDIge1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICB9XG5cbiAgICBoNCB7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgIGNvbG9yOiAjNzc3O1xuICAgIH1cbiAgfVxuXG4gIC5zZW1hbnRpYyxcbiAgLnJlc3BvbnNpdmUsXG4gIC5jdXN0b21pemFibGUsXG4gIC5wcm9mZXNzaW9uYWwge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwoMTIpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKDMpO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBwYWRkaW5nOiAxLjI1cmVtO1xuICAgICAgbWFyZ2luOiAxcmVtIGF1dG8gMCBhdXRvO1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgIGNvbG9yOiAjMGEwYTBhO1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgIH1cbiAgfVxuXG4gIC53aHktZm91bmRhdGlvbiB7XG4gICAgQGluY2x1ZGUgeHktY2VsbCgxMik7XG4gICAgbWFyZ2luLXRvcDogNHJlbTtcbiAgfVxufVxuIiwiICAgICAgICAvKiA9PT0gTUFJTiBDT05UQUlORVIgPT09ICovXG4gICAgICAgIC5kaXJlY3RvcnktY29udGFpbmVyIHsgXG4gICAgICAgICAgICAvL21heC13aWR0aDogMTYwMHB4OyBcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvOyBcbiAgICAgICAgICAgIC8vcGFkZGluZzogMjBweDsgXG4gICAgICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6IHdoaXRlOyBcbiAgICAgICAgICAgIC8vbWluLWhlaWdodDogMTAwdmg7IFxuICAgICAgICB9XG5cbiAgICAgICAgLnNlYXJjaC1zZWN0aW9uLCBcbiAgICAgICAgLnJlc3VsdHMtc3VtbWFyeSxcbiAgICAgICAgLnRpZXItaGVhZGVyLWlubmVyLFxuICAgICAgICAudmVuZG9yLWxpc3Qge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDg1LjM3NXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIFxuICAgICAgICAvKiA9PT0gU0VBUkNIIFNFQ1RJT04gPT09ICovXG4gICAgICAgIC5zZWFyY2gtc2VjdGlvbiB7IFxuICAgICAgICAgICAgYmFja2dyb3VuZDogI2Y4ZjlmYTsgXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMnB4OyBcbiAgICAgICAgICAgIHBhZGRpbmc6IDI1cHg7IFxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDsgXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDJweCAxMHB4IHJnYmEoMCwwLDAsMC4xKTsgXG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5zZWFyY2gtYmFyIHsgXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4OyBcbiAgICAgICAgICAgIGdhcDogMTBweDsgXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyBcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnNlYXJjaC1iYXIgaW5wdXQgeyBcbiAgICAgICAgICAgIGZsZXg6IDE7IFxuICAgICAgICAgICAgcGFkZGluZzogMTJweCAxNnB4OyBcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNlMWU1ZTk7IFxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4OyBcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsgXG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5zZWFyY2gtYmFyIGlucHV0OmZvY3VzIHsgXG4gICAgICAgICAgICBvdXRsaW5lOiBub25lOyBcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnNlYXJjaC1iYXIgYnV0dG9uIHsgXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDEuMzc1cmVtO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzBmNzY1NDtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTsgXG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7IFxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMC4xODc1cmVtO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyOyBcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsgXG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwOyBcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnNlYXJjaC1iYXIgYnV0dG9uOmhvdmVyIHsgXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBibGFjaztcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLyogPT09IEZJTFRFUlMgPT09ICovXG4gICAgICAgIC5maWx0ZXItdG9nZ2xlIHsgXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4OyBcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IFxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyBcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7IFxuICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7IFxuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2UxZTVlOTsgXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7IFxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyOyBcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7IFxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBcbiAgICAgICAgLmZpbHRlci1iYWRnZSB7IFxuICAgICAgICAgICAgYmFja2dyb3VuZDogIzBmNzY1NDsgXG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7IFxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTJweDsgXG4gICAgICAgICAgICBwYWRkaW5nOiAycHggMTBweDsgXG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7IFxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7IFxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7IFxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZmlsdGVyLXBhbmVsIHsgXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lOyBcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7IFxuICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7IFxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4OyBcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNlMWU1ZTk7IFxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDsgXG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5maWx0ZXItcGFuZWwuc2hvdyB7IFxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7IFxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZmlsdGVyLWdyaWQgeyBcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7IFxuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgyNTBweCwgMWZyKSk7IFxuICAgICAgICAgICAgZ2FwOiAyMHB4OyBcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IFxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZmlsdGVyLWdyb3VwIHsgXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4OyBcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IFxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZmlsdGVyLWdyb3VwIGxhYmVsIHsgXG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwOyBcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweDsgXG4gICAgICAgICAgICBjb2xvcjogIzJjM2U1MDsgXG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5maWx0ZXItZ3JvdXAgc2VsZWN0IHsgXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4OyBcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNlMWU1ZTk7IFxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OyBcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlOyBcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDsgXG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5maWx0ZXItZ3JvdXAgc2VsZWN0W211bHRpcGxlXSB7IFxuICAgICAgICAgICAgbWluLWhlaWdodDogMTIwcHg7IFxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuY2hlY2tib3gtZmlsdGVycyB7IFxuICAgICAgICAgICAgZGlzcGxheTogZ3JpZDsgXG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDIwMHB4LCAxZnIpKTsgXG4gICAgICAgICAgICBnYXA6IDE1cHg7IFxuICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDA7IFxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuY2hlY2tib3gtZmlsdGVyIHsgXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4OyBcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IFxuICAgICAgICAgICAgZ2FwOiA4cHg7IFxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuY2hlY2tib3gtZmlsdGVyIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7IFxuICAgICAgICAgICAgd2lkdGg6IDE4cHg7IFxuICAgICAgICAgICAgaGVpZ2h0OiAxOHB4OyBcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjsgXG4gICAgICAgICAgICBtYXJnaW46IDBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmNoZWNrYm94LWZpbHRlciBsYWJlbCB7IFxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyOyBcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDsgXG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5maWx0ZXItYWN0aW9ucyB7IFxuICAgICAgICAgICAgZGlzcGxheTogZmxleDsgXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyBcbiAgICAgICAgICAgIGdhcDogMTBweDsgXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTVweDsgXG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2UxZTVlOTsgXG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5jbGVhci1idG4geyBcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDsgXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRkZBRjI2O1xuICAgICAgICAgICAgY29sb3I6ICMwMDE3MTc7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7IFxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMC4xODc1cmVtO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyOyBcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDsgXG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwOyBcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmNsZWFyLWJ0bjpob3ZlciB7IFxuICAgICAgICAgICAgYmFja2dyb3VuZDogI0ZGQUYyNjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLyogPT09IFJFU1VMVFMgU1VNTUFSWSA9PT0gKi9cbiAgICAgICAgLnJlc3VsdHMtc3VtbWFyeSB7IFxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgXG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4OyBcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmOGY5ZmE7IFxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4OyBcbiAgICAgICAgICAgIGNvbG9yOiAjNjY2OyBcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsgXG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8qID09PSBUSUVSIFNFQ1RJT05TID09PSAqL1xuICAgICAgICAudGllci1zZWN0aW9uIHsgXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4OyBcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnRpZXItaGVhZGVyIHsgXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMHB4O1xuICAgICAgICAgICAgLnRpZXItaGVhZGVyLWlubmVyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGdhcDogMnJlbTtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgY29sb3I6IGJsYWNrIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDQwcHghaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZGlzY2xhaW1lciB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucmV2aWV3ZWQtdGllci1zZWN0aW9uIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5yZXZpZXdlZC10aWVyLXNlY3Rpb24sIC52ZXJpZmllZC10aWVyLXNlY3Rpb24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG5cbiAgICAgICAgICAgIC52ZW5kb3ItY2FyZCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0Q5RTBERDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5mcmVlLXRpZXItd2FybmluZyB7IFxuICAgICAgICAgICAgcGFkZGluZzogMTVweCAyMHB4OyBcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmYzY2Q7IFxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmYzEwNzsgXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHggOHB4IDAgMDsgXG4gICAgICAgICAgICBjb2xvcjogIzg1NjQwNDsgXG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7IFxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsgXG4gICAgICAgIH1cblxuICAgICAgICAuZnJlZS10aWVyLXNlY3Rpb24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwOSwgMTM4LCAxMjEpO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8qIENIQU5HRSAxOiAzIENPTFVNTiBHUklEIExBWU9VVCAqL1xuICAgICAgICAudmVuZG9yLWxpc3QgeyBcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7IFxuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbiAgICAgICAgICAgICYucmV2aWV3ZWQtdGllciB7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGdhcDogMjBweDsgXG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4OyBcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgXG4gICAgICAgIC8qID09PSBWRU5ET1IgQ0FSRFMgPT09ICovXG4gICAgICAgIC52ZW5kb3ItY2FyZCB7IFxuICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7IFxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2UxZTVlOTsgXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMnB4OyBcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47IFxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTsgXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDJweCA1cHggcmdiYSgwLDAsMCwwLjA1KTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAudmVuZG9yLWNhcmQ6aG92ZXIgeyBcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgNXB4IDIwcHggcmdiYSgwLDAsMCwwLjEpOyBcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTsgXG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8qIENIQU5HRSAzOiBIRUFERVIgV0lUSCBDT05UQUNUIEJVVFRPTlMgVklTSUJMRSAqL1xuICAgICAgICAudmVuZG9yLWNhcmQtaGVhZGVyIHsgXG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4OyBcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjsgXG4gICAgICAgICAgICAvL2JhY2tncm91bmQ6ICNmOGY5ZmE7XG4gICAgICAgICAgICAvL2JvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTFlNWU5O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAudmVuZG9yLWhlYWRlci10b3Age1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgXG4gICAgICAgIC52ZW5kb3ItbG9nby1wbGFjZWhvbGRlciBpbWcgeyBcbiAgICAgICAgICAgIGhlaWdodDogODBweDsgXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC52ZW5kb3ItbmFtZSB7IFxuICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07IFxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgXG4gICAgICAgICAgICBjb2xvcjogIzJjM2U1MDsgXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHghaW1wb3J0YW50O1xuICAgICAgICAgICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgICAgICB9XG5cbiAgICAgICAgLnZlbmRvci13ZWJzaXRlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnNvY2lhbC1pY29ucyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XG5cbiAgICAgICAgICAgIC5zb2NpYWwtaWNvbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjNDk1MDU3O1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuM3MgZWFzZTtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzBmNzY1NDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC52ZW5kb3ItZXhwZXJ0aXNlIHsgXG4gICAgICAgICAgICBjb2xvcjogIzY2NjsgXG4gICAgICAgICAgICBmb250LXNpemU6IDAuOXJlbTsgXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7IFxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAudmVuZG9yLXRhZ3MgeyBcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7IFxuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwOyBcbiAgICAgICAgICAgIGdhcDogNnB4OyBcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC52ZW5kb3ItdGFnIHsgXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMnB4OyBcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDsgXG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwOyBcbiAgICAgICAgICAgIHdpZHRoOiA0NXB4O1xuICAgICAgICB9XG4gICAgICAgIFxuXG4gICAgICAgIFxuICAgICAgICAvKiBDSEFOR0UgMzogQ09OVEFDVCBCVVRUT05TIElOIEhFQURFUiAoUklHSFQgU0lERSkgKi9cbiAgICAgICAgLnZlbmRvci1oZWFkZXItcmlnaHQge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBnYXA6IDZweDtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMTIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5jb250YWN0LWJ0bi1zbWFsbCB7XG4gICAgICAgICAgICBwYWRkaW5nOiA2cHggMTJweDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuYnRuLXByaW1hcnktc21hbGwge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzY2N2VlYTtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmJ0bi1wcmltYXJ5LXNtYWxsOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM1YTY3ZDg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5idG4tc2Vjb25kYXJ5LXNtYWxsIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICAgICAgY29sb3I6ICM0OTUwNTc7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZTFlNWU5O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuYnRuLXNlY29uZGFyeS1zbWFsbDpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjhmOWZhO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjNjY3ZWVhO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZXhwYW5kLWJ0biB7IFxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4OyBcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNGRkFGMjY7XG4gICAgICAgICAgICBjb2xvcjogIzAwMTcxNztcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTsgXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7IFxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyOyBcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZXhwYW5kLWJ0bjpob3ZlciB7IFxuICAgICAgICAgICAgYmFja2dyb3VuZDogbGlnaHRlbigjRkZBRjI2LCA1JSk7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8qID09PSBWRU5ET1IgREVUQUlMUyA9PT0gKi9cbiAgICAgICAgLnZlbmRvci1kZXRhaWxzIHsgXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lOyBcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC52ZW5kb3ItZGV0YWlscy5zaG93IHsgXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgXG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5kZXRhaWwtZ3JpZCB7IFxuICAgICAgICAgICAgLy9kaXNwbGF5OiBncmlkOyBcbiAgICAgICAgICAgIC8vZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyOyBcbiAgICAgICAgICAgIC8vZ2FwOiAxNXB4OyBcbiAgICAgICAgICAgIC8vbWFyZ2luLWJvdHRvbTogMTVweDsgXG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5kZXRhaWwtc2VjdGlvbiB7IFxuICAgICAgICAgICAgcGFkZGluZzogMTJweDsgXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjhmOWZhOyBcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsgXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyBcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgLnJldmlld2VkLWljb24ge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgICAgICAgICByaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmRldGFpbC1zZWN0aW9uIGg0IHsgXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7IFxuICAgICAgICAgICAgY29sb3I6ICMyYzNlNTA7IFxuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4OyBcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IFxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7IFxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZGV0YWlsLXNlY3Rpb24gcCB7IFxuICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4OyBcbiAgICAgICAgICAgIGNvbG9yOiAjNjY2OyBcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7IFxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnZlbmRvci1jb3VudGllcyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgZ2FwOiA2cHg7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuXG4gICAgICAgICAgICAudmVuZG9yLWNvdW50eSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnJldmlld2VkLXRpZXItc2VjdGlvbiAudmVuZG9yLWNvdW50aWVzIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgICAgIH1cblxuICAgICAgICAucmV2aWV3ZWQtdGllci1zZWN0aW9uIGgyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL2ljb25zL3Jldmlld2VkLnN2ZycpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNjBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLyogQ0hBTkdFIDU6IFBJUEUgU0VQQVJBVE9SICovXG4gICAgICAgIC5zZXBhcmF0b3Ige1xuICAgICAgICAgICAgbWFyZ2luOiAwIDRweDtcbiAgICAgICAgICAgIGNvbG9yOiAjOTk5O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvKiBDSEFOR0UgMjogVkVORE9SIFNUQVRFTUVOVCBCRUxPVyBDT05UQUNUL0xPQ0FUSU9OICovXG4gICAgICAgIC52ZW5kb3Itc3RhdGVtZW50IHsgXG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4OyBcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmOGY5ZmE7IFxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4OyBcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS43OyBcbiAgICAgICAgICAgIGNvbG9yOiAjNDk1MDU3OyBcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnZlbmRvci1zdGF0ZW1lbnQgc3Ryb25nIHtcbiAgICAgICAgICAgIGNvbG9yOiAjMmMzZTUwO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLyogQ0hBTkdFIDQ6IFRBR1MgQVQgQk9UVE9NICovXG4gICAgICAgIC52ZW5kb3ItdGFncy1ib3R0b20geyBcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7IFxuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwOyBcbiAgICAgICAgICAgIGdhcDogNnB4O1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2UxZTVlOTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5zcGVjaWFsdHktYmFkZ2UgeyBcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4OyBcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsgXG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIGNvbG9yOiAjMDAxNzE3OyBcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgJi50YWctc21hbGwtYnVzaW5lc3MgeyBcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9pY29ucy9zbWFsbC5zdmcnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYudGFnLW1pbm9yaXR5LW93bmVkIHsgXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvaWNvbnMvbWlub3JpdHkuc3ZnJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLnRhZy1lbXBsb3llZS1vd25lZCB7IFxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL2ljb25zL2VtcGxveWVlLnN2ZycpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi50YWctd29tYW4tb3duZWQgeyBcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9pY29ucy93b21hbi5zdmcnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYudGFnLXZldGVyYW4tb3duZWQgeyBcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9pY29ucy92ZXRlcmFuLnN2ZycpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi50YWctbWljcm8tYnVzaW5lc3MgeyBcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9pY29ucy9taWNyby5zdmcnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLyogPT09IE5PIFJFU1VMVFMgPT09ICovXG4gICAgICAgIC5uby1yZXN1bHRzIHsgXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IFxuICAgICAgICAgICAgcGFkZGluZzogNjBweCAyMHB4OyBcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmOGY5ZmE7IFxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTJweDsgXG4gICAgICAgICAgICBtYXJnaW46IDIwcHggMDsgXG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5uby1yZXN1bHRzIGgzIHsgXG4gICAgICAgICAgICBjb2xvcjogIzQ5NTA1NzsgXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyBcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLyogPT09IFJFU1BPTlNJVkUgREVTSUdOID09PSAqL1xuICAgICAgICAvKiBDSEFOR0UgMTogUkVTUE9OU0lWRSBHUklEICovXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgICAgIC52ZW5kb3ItbGlzdCB7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICAuZGlyZWN0b3J5LWhlYWRlciBoMSB7IGZvbnQtc2l6ZTogMnJlbTsgfVxuICAgICAgICAgICAgLnNlYXJjaC1iYXIgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgICAgICAgICAuZmlsdGVyLWdyaWQgeyBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjsgfVxuICAgICAgICAgICAgLnZlbmRvci1saXN0IHsgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7IH1cbiAgICAgICAgICAgIC52ZW5kb3ItaGVhZGVyLXRvcCB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAgICAgICAgIC52ZW5kb3ItaGVhZGVyLXJpZ2h0IHsgXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgXG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmRldGFpbC1ncmlkIHsgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7IH1cbiAgICAgICAgfSJdfQ== */
