@charset "UTF-8";
/*$body-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;*/
/*$anchor-color-hover: scale-color($anchor-color, $lightness: -14%);*/
/*$button-background-hover: scale-color($button-background, $lightness: -15%);*/
/**
 * Foundation for Sites by ZURB
 * Version 6.5.1
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */
@media print, screen and (min-width: 40em) {
  .reveal, .reveal.tiny, .reveal.small, .reveal.large {
    right: auto;
    left: auto;
    margin: 0 auto; } }

/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%; }

body {
  margin: 0; }

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

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

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

a {
  background-color: transparent; }

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

b,
strong {
  font-weight: bolder; }

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

small {
  font-size: 80%; }

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

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

img {
  border-style: none; }

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

button,
input {
  overflow: visible; }

button,
select {
  text-transform: none; }

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

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

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

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

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

progress {
  vertical-align: baseline; }

textarea {
  overflow: auto; }

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

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

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

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

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

details {
  display: block; }

summary {
  display: list-item; }

template {
  display: none; }

[hidden] {
  display: none; }

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

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

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

body {
  margin: 0;
  padding: 0;
  background: #fefefe;
  font-family: "robotoregular", "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; }

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

pre {
  overflow: auto; }

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

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

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

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

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

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

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

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

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

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

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

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

@media screen and (min-width: 90em) {
  .grid-x > .xxlarge-shrink, .grid-x > .xxlarge-full, .grid-x > .xxlarge-1, .grid-x > .xxlarge-2, .grid-x > .xxlarge-3, .grid-x > .xxlarge-4, .grid-x > .xxlarge-5, .grid-x > .xxlarge-6, .grid-x > .xxlarge-7, .grid-x > .xxlarge-8, .grid-x > .xxlarge-9, .grid-x > .xxlarge-10, .grid-x > .xxlarge-11, .grid-x > .xxlarge-12 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto; } }

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

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

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

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

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

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

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

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

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

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

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

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

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

@media print, screen and (min-width: 40em) {
  .grid-x > .medium-auto {
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    width: auto; }
  .grid-x > .medium-shrink, .grid-x > .medium-1, .grid-x > .medium-2, .grid-x > .medium-3, .grid-x > .medium-4, .grid-x > .medium-5, .grid-x > .medium-6, .grid-x > .medium-7, .grid-x > .medium-8, .grid-x > .medium-9, .grid-x > .medium-10, .grid-x > .medium-11, .grid-x > .medium-12 {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
  .grid-x > .medium-shrink {
    width: auto; }
  .grid-x > .medium-1 {
    width: 8.33333%; }
  .grid-x > .medium-2 {
    width: 16.66667%; }
  .grid-x > .medium-3 {
    width: 25%; }
  .grid-x > .medium-4 {
    width: 33.33333%; }
  .grid-x > .medium-5 {
    width: 41.66667%; }
  .grid-x > .medium-6 {
    width: 50%; }
  .grid-x > .medium-7 {
    width: 58.33333%; }
  .grid-x > .medium-8 {
    width: 66.66667%; }
  .grid-x > .medium-9 {
    width: 75%; }
  .grid-x > .medium-10 {
    width: 83.33333%; }
  .grid-x > .medium-11 {
    width: 91.66667%; }
  .grid-x > .medium-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .grid-x > .large-auto {
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    width: auto; }
  .grid-x > .large-shrink, .grid-x > .large-1, .grid-x > .large-2, .grid-x > .large-3, .grid-x > .large-4, .grid-x > .large-5, .grid-x > .large-6, .grid-x > .large-7, .grid-x > .large-8, .grid-x > .large-9, .grid-x > .large-10, .grid-x > .large-11, .grid-x > .large-12 {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
  .grid-x > .large-shrink {
    width: auto; }
  .grid-x > .large-1 {
    width: 8.33333%; }
  .grid-x > .large-2 {
    width: 16.66667%; }
  .grid-x > .large-3 {
    width: 25%; }
  .grid-x > .large-4 {
    width: 33.33333%; }
  .grid-x > .large-5 {
    width: 41.66667%; }
  .grid-x > .large-6 {
    width: 50%; }
  .grid-x > .large-7 {
    width: 58.33333%; }
  .grid-x > .large-8 {
    width: 66.66667%; }
  .grid-x > .large-9 {
    width: 75%; }
  .grid-x > .large-10 {
    width: 83.33333%; }
  .grid-x > .large-11 {
    width: 91.66667%; }
  .grid-x > .large-12 {
    width: 100%; } }

@media screen and (min-width: 75em) {
  .grid-x > .xlarge-auto {
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    width: auto; }
  .grid-x > .xlarge-shrink, .grid-x > .xlarge-1, .grid-x > .xlarge-2, .grid-x > .xlarge-3, .grid-x > .xlarge-4, .grid-x > .xlarge-5, .grid-x > .xlarge-6, .grid-x > .xlarge-7, .grid-x > .xlarge-8, .grid-x > .xlarge-9, .grid-x > .xlarge-10, .grid-x > .xlarge-11, .grid-x > .xlarge-12 {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
  .grid-x > .xlarge-shrink {
    width: auto; }
  .grid-x > .xlarge-1 {
    width: 8.33333%; }
  .grid-x > .xlarge-2 {
    width: 16.66667%; }
  .grid-x > .xlarge-3 {
    width: 25%; }
  .grid-x > .xlarge-4 {
    width: 33.33333%; }
  .grid-x > .xlarge-5 {
    width: 41.66667%; }
  .grid-x > .xlarge-6 {
    width: 50%; }
  .grid-x > .xlarge-7 {
    width: 58.33333%; }
  .grid-x > .xlarge-8 {
    width: 66.66667%; }
  .grid-x > .xlarge-9 {
    width: 75%; }
  .grid-x > .xlarge-10 {
    width: 83.33333%; }
  .grid-x > .xlarge-11 {
    width: 91.66667%; }
  .grid-x > .xlarge-12 {
    width: 100%; } }

@media screen and (min-width: 90em) {
  .grid-x > .xxlarge-auto {
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    width: auto; }
  .grid-x > .xxlarge-shrink, .grid-x > .xxlarge-1, .grid-x > .xxlarge-2, .grid-x > .xxlarge-3, .grid-x > .xxlarge-4, .grid-x > .xxlarge-5, .grid-x > .xxlarge-6, .grid-x > .xxlarge-7, .grid-x > .xxlarge-8, .grid-x > .xxlarge-9, .grid-x > .xxlarge-10, .grid-x > .xxlarge-11, .grid-x > .xxlarge-12 {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
  .grid-x > .xxlarge-shrink {
    width: auto; }
  .grid-x > .xxlarge-1 {
    width: 8.33333%; }
  .grid-x > .xxlarge-2 {
    width: 16.66667%; }
  .grid-x > .xxlarge-3 {
    width: 25%; }
  .grid-x > .xxlarge-4 {
    width: 33.33333%; }
  .grid-x > .xxlarge-5 {
    width: 41.66667%; }
  .grid-x > .xxlarge-6 {
    width: 50%; }
  .grid-x > .xxlarge-7 {
    width: 58.33333%; }
  .grid-x > .xxlarge-8 {
    width: 66.66667%; }
  .grid-x > .xxlarge-9 {
    width: 75%; }
  .grid-x > .xxlarge-10 {
    width: 83.33333%; }
  .grid-x > .xxlarge-11 {
    width: 91.66667%; }
  .grid-x > .xxlarge-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.625rem;
  margin-right: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-margin-x {
      margin-left: -0.9375rem;
      margin-right: -0.9375rem; } }
  .grid-margin-x > .cell {
    width: calc(100% - 1.25rem);
    margin-left: 0.625rem;
    margin-right: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .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.33333% - 1.25rem); }
  .grid-margin-x > .small-2 {
    width: calc(16.66667% - 1.25rem); }
  .grid-margin-x > .small-3 {
    width: calc(25% - 1.25rem); }
  .grid-margin-x > .small-4 {
    width: calc(33.33333% - 1.25rem); }
  .grid-margin-x > .small-5 {
    width: calc(41.66667% - 1.25rem); }
  .grid-margin-x > .small-6 {
    width: calc(50% - 1.25rem); }
  .grid-margin-x > .small-7 {
    width: calc(58.33333% - 1.25rem); }
  .grid-margin-x > .small-8 {
    width: calc(66.66667% - 1.25rem); }
  .grid-margin-x > .small-9 {
    width: calc(75% - 1.25rem); }
  .grid-margin-x > .small-10 {
    width: calc(83.33333% - 1.25rem); }
  .grid-margin-x > .small-11 {
    width: calc(91.66667% - 1.25rem); }
  .grid-margin-x > .small-12 {
    width: calc(100% - 1.25rem); }
  @media print, screen and (min-width: 40em) {
    .grid-margin-x > .auto {
      width: auto; }
    .grid-margin-x > .shrink {
      width: auto; }
    .grid-margin-x > .small-1 {
      width: calc(8.33333% - 1.875rem); }
    .grid-margin-x > .small-2 {
      width: calc(16.66667% - 1.875rem); }
    .grid-margin-x > .small-3 {
      width: calc(25% - 1.875rem); }
    .grid-margin-x > .small-4 {
      width: calc(33.33333% - 1.875rem); }
    .grid-margin-x > .small-5 {
      width: calc(41.66667% - 1.875rem); }
    .grid-margin-x > .small-6 {
      width: calc(50% - 1.875rem); }
    .grid-margin-x > .small-7 {
      width: calc(58.33333% - 1.875rem); }
    .grid-margin-x > .small-8 {
      width: calc(66.66667% - 1.875rem); }
    .grid-margin-x > .small-9 {
      width: calc(75% - 1.875rem); }
    .grid-margin-x > .small-10 {
      width: calc(83.33333% - 1.875rem); }
    .grid-margin-x > .small-11 {
      width: calc(91.66667% - 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.33333% - 1.875rem); }
    .grid-margin-x > .medium-2 {
      width: calc(16.66667% - 1.875rem); }
    .grid-margin-x > .medium-3 {
      width: calc(25% - 1.875rem); }
    .grid-margin-x > .medium-4 {
      width: calc(33.33333% - 1.875rem); }
    .grid-margin-x > .medium-5 {
      width: calc(41.66667% - 1.875rem); }
    .grid-margin-x > .medium-6 {
      width: calc(50% - 1.875rem); }
    .grid-margin-x > .medium-7 {
      width: calc(58.33333% - 1.875rem); }
    .grid-margin-x > .medium-8 {
      width: calc(66.66667% - 1.875rem); }
    .grid-margin-x > .medium-9 {
      width: calc(75% - 1.875rem); }
    .grid-margin-x > .medium-10 {
      width: calc(83.33333% - 1.875rem); }
    .grid-margin-x > .medium-11 {
      width: calc(91.66667% - 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.33333% - 1.875rem); }
    .grid-margin-x > .large-2 {
      width: calc(16.66667% - 1.875rem); }
    .grid-margin-x > .large-3 {
      width: calc(25% - 1.875rem); }
    .grid-margin-x > .large-4 {
      width: calc(33.33333% - 1.875rem); }
    .grid-margin-x > .large-5 {
      width: calc(41.66667% - 1.875rem); }
    .grid-margin-x > .large-6 {
      width: calc(50% - 1.875rem); }
    .grid-margin-x > .large-7 {
      width: calc(58.33333% - 1.875rem); }
    .grid-margin-x > .large-8 {
      width: calc(66.66667% - 1.875rem); }
    .grid-margin-x > .large-9 {
      width: calc(75% - 1.875rem); }
    .grid-margin-x > .large-10 {
      width: calc(83.33333% - 1.875rem); }
    .grid-margin-x > .large-11 {
      width: calc(91.66667% - 1.875rem); }
    .grid-margin-x > .large-12 {
      width: calc(100% - 1.875rem); } }
  @media screen and (min-width: 75em) {
    .grid-margin-x > .xlarge-auto {
      width: auto; }
    .grid-margin-x > .xlarge-shrink {
      width: auto; }
    .grid-margin-x > .xlarge-1 {
      width: calc(8.33333% - 1.875rem); }
    .grid-margin-x > .xlarge-2 {
      width: calc(16.66667% - 1.875rem); }
    .grid-margin-x > .xlarge-3 {
      width: calc(25% - 1.875rem); }
    .grid-margin-x > .xlarge-4 {
      width: calc(33.33333% - 1.875rem); }
    .grid-margin-x > .xlarge-5 {
      width: calc(41.66667% - 1.875rem); }
    .grid-margin-x > .xlarge-6 {
      width: calc(50% - 1.875rem); }
    .grid-margin-x > .xlarge-7 {
      width: calc(58.33333% - 1.875rem); }
    .grid-margin-x > .xlarge-8 {
      width: calc(66.66667% - 1.875rem); }
    .grid-margin-x > .xlarge-9 {
      width: calc(75% - 1.875rem); }
    .grid-margin-x > .xlarge-10 {
      width: calc(83.33333% - 1.875rem); }
    .grid-margin-x > .xlarge-11 {
      width: calc(91.66667% - 1.875rem); }
    .grid-margin-x > .xlarge-12 {
      width: calc(100% - 1.875rem); } }
  @media screen and (min-width: 90em) {
    .grid-margin-x > .xxlarge-auto {
      width: auto; }
    .grid-margin-x > .xxlarge-shrink {
      width: auto; }
    .grid-margin-x > .xxlarge-1 {
      width: calc(8.33333% - 1.875rem); }
    .grid-margin-x > .xxlarge-2 {
      width: calc(16.66667% - 1.875rem); }
    .grid-margin-x > .xxlarge-3 {
      width: calc(25% - 1.875rem); }
    .grid-margin-x > .xxlarge-4 {
      width: calc(33.33333% - 1.875rem); }
    .grid-margin-x > .xxlarge-5 {
      width: calc(41.66667% - 1.875rem); }
    .grid-margin-x > .xxlarge-6 {
      width: calc(50% - 1.875rem); }
    .grid-margin-x > .xxlarge-7 {
      width: calc(58.33333% - 1.875rem); }
    .grid-margin-x > .xxlarge-8 {
      width: calc(66.66667% - 1.875rem); }
    .grid-margin-x > .xxlarge-9 {
      width: calc(75% - 1.875rem); }
    .grid-margin-x > .xxlarge-10 {
      width: calc(83.33333% - 1.875rem); }
    .grid-margin-x > .xxlarge-11 {
      width: calc(91.66667% - 1.875rem); }
    .grid-margin-x > .xxlarge-12 {
      width: calc(100% - 1.875rem); } }

.grid-padding-x .grid-padding-x {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-padding-x .grid-padding-x {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }

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

.grid-padding-x > .cell {
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .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.33333%; }

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

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

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

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

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

@media print, screen and (min-width: 40em) {
  .medium-up-1 > .cell {
    width: 100%; }
  .medium-up-2 > .cell {
    width: 50%; }
  .medium-up-3 > .cell {
    width: 33.33333%; }
  .medium-up-4 > .cell {
    width: 25%; }
  .medium-up-5 > .cell {
    width: 20%; }
  .medium-up-6 > .cell {
    width: 16.66667%; }
  .medium-up-7 > .cell {
    width: 14.28571%; }
  .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.33333%; }
  .large-up-4 > .cell {
    width: 25%; }
  .large-up-5 > .cell {
    width: 20%; }
  .large-up-6 > .cell {
    width: 16.66667%; }
  .large-up-7 > .cell {
    width: 14.28571%; }
  .large-up-8 > .cell {
    width: 12.5%; } }

@media screen and (min-width: 75em) {
  .xlarge-up-1 > .cell {
    width: 100%; }
  .xlarge-up-2 > .cell {
    width: 50%; }
  .xlarge-up-3 > .cell {
    width: 33.33333%; }
  .xlarge-up-4 > .cell {
    width: 25%; }
  .xlarge-up-5 > .cell {
    width: 20%; }
  .xlarge-up-6 > .cell {
    width: 16.66667%; }
  .xlarge-up-7 > .cell {
    width: 14.28571%; }
  .xlarge-up-8 > .cell {
    width: 12.5%; } }

@media screen and (min-width: 90em) {
  .xxlarge-up-1 > .cell {
    width: 100%; }
  .xxlarge-up-2 > .cell {
    width: 50%; }
  .xxlarge-up-3 > .cell {
    width: 33.33333%; }
  .xxlarge-up-4 > .cell {
    width: 25%; }
  .xxlarge-up-5 > .cell {
    width: 20%; }
  .xxlarge-up-6 > .cell {
    width: 16.66667%; }
  .xxlarge-up-7 > .cell {
    width: 14.28571%; }
  .xxlarge-up-8 > .cell {
    width: 12.5%; } }

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

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

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

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

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

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

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

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

@media print, screen and (min-width: 40em) {
  .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.33333% - 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.66667% - 1.875rem); }
  .grid-margin-x.small-up-7 > .cell {
    width: calc(14.28571% - 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.33333% - 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.66667% - 1.875rem); }
  .grid-margin-x.medium-up-7 > .cell {
    width: calc(14.28571% - 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.33333% - 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.66667% - 1.875rem); }
  .grid-margin-x.large-up-7 > .cell {
    width: calc(14.28571% - 1.875rem); }
  .grid-margin-x.large-up-8 > .cell {
    width: calc(12.5% - 1.875rem); } }

@media screen and (min-width: 75em) {
  .grid-margin-x.xlarge-up-1 > .cell {
    width: calc(100% - 1.875rem); }
  .grid-margin-x.xlarge-up-2 > .cell {
    width: calc(50% - 1.875rem); }
  .grid-margin-x.xlarge-up-3 > .cell {
    width: calc(33.33333% - 1.875rem); }
  .grid-margin-x.xlarge-up-4 > .cell {
    width: calc(25% - 1.875rem); }
  .grid-margin-x.xlarge-up-5 > .cell {
    width: calc(20% - 1.875rem); }
  .grid-margin-x.xlarge-up-6 > .cell {
    width: calc(16.66667% - 1.875rem); }
  .grid-margin-x.xlarge-up-7 > .cell {
    width: calc(14.28571% - 1.875rem); }
  .grid-margin-x.xlarge-up-8 > .cell {
    width: calc(12.5% - 1.875rem); } }

@media screen and (min-width: 90em) {
  .grid-margin-x.xxlarge-up-1 > .cell {
    width: calc(100% - 1.875rem); }
  .grid-margin-x.xxlarge-up-2 > .cell {
    width: calc(50% - 1.875rem); }
  .grid-margin-x.xxlarge-up-3 > .cell {
    width: calc(33.33333% - 1.875rem); }
  .grid-margin-x.xxlarge-up-4 > .cell {
    width: calc(25% - 1.875rem); }
  .grid-margin-x.xxlarge-up-5 > .cell {
    width: calc(20% - 1.875rem); }
  .grid-margin-x.xxlarge-up-6 > .cell {
    width: calc(16.66667% - 1.875rem); }
  .grid-margin-x.xxlarge-up-7 > .cell {
    width: calc(14.28571% - 1.875rem); }
  .grid-margin-x.xxlarge-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.33333%; }
  .small-margin-collapse > .small-2 {
    width: 16.66667%; }
  .small-margin-collapse > .small-3 {
    width: 25%; }
  .small-margin-collapse > .small-4 {
    width: 33.33333%; }
  .small-margin-collapse > .small-5 {
    width: 41.66667%; }
  .small-margin-collapse > .small-6 {
    width: 50%; }
  .small-margin-collapse > .small-7 {
    width: 58.33333%; }
  .small-margin-collapse > .small-8 {
    width: 66.66667%; }
  .small-margin-collapse > .small-9 {
    width: 75%; }
  .small-margin-collapse > .small-10 {
    width: 83.33333%; }
  .small-margin-collapse > .small-11 {
    width: 91.66667%; }
  .small-margin-collapse > .small-12 {
    width: 100%; }
  @media print, screen and (min-width: 40em) {
    .small-margin-collapse > .medium-1 {
      width: 8.33333%; }
    .small-margin-collapse > .medium-2 {
      width: 16.66667%; }
    .small-margin-collapse > .medium-3 {
      width: 25%; }
    .small-margin-collapse > .medium-4 {
      width: 33.33333%; }
    .small-margin-collapse > .medium-5 {
      width: 41.66667%; }
    .small-margin-collapse > .medium-6 {
      width: 50%; }
    .small-margin-collapse > .medium-7 {
      width: 58.33333%; }
    .small-margin-collapse > .medium-8 {
      width: 66.66667%; }
    .small-margin-collapse > .medium-9 {
      width: 75%; }
    .small-margin-collapse > .medium-10 {
      width: 83.33333%; }
    .small-margin-collapse > .medium-11 {
      width: 91.66667%; }
    .small-margin-collapse > .medium-12 {
      width: 100%; } }
  @media print, screen and (min-width: 64em) {
    .small-margin-collapse > .large-1 {
      width: 8.33333%; }
    .small-margin-collapse > .large-2 {
      width: 16.66667%; }
    .small-margin-collapse > .large-3 {
      width: 25%; }
    .small-margin-collapse > .large-4 {
      width: 33.33333%; }
    .small-margin-collapse > .large-5 {
      width: 41.66667%; }
    .small-margin-collapse > .large-6 {
      width: 50%; }
    .small-margin-collapse > .large-7 {
      width: 58.33333%; }
    .small-margin-collapse > .large-8 {
      width: 66.66667%; }
    .small-margin-collapse > .large-9 {
      width: 75%; }
    .small-margin-collapse > .large-10 {
      width: 83.33333%; }
    .small-margin-collapse > .large-11 {
      width: 91.66667%; }
    .small-margin-collapse > .large-12 {
      width: 100%; } }
  @media screen and (min-width: 75em) {
    .small-margin-collapse > .xlarge-1 {
      width: 8.33333%; }
    .small-margin-collapse > .xlarge-2 {
      width: 16.66667%; }
    .small-margin-collapse > .xlarge-3 {
      width: 25%; }
    .small-margin-collapse > .xlarge-4 {
      width: 33.33333%; }
    .small-margin-collapse > .xlarge-5 {
      width: 41.66667%; }
    .small-margin-collapse > .xlarge-6 {
      width: 50%; }
    .small-margin-collapse > .xlarge-7 {
      width: 58.33333%; }
    .small-margin-collapse > .xlarge-8 {
      width: 66.66667%; }
    .small-margin-collapse > .xlarge-9 {
      width: 75%; }
    .small-margin-collapse > .xlarge-10 {
      width: 83.33333%; }
    .small-margin-collapse > .xlarge-11 {
      width: 91.66667%; }
    .small-margin-collapse > .xlarge-12 {
      width: 100%; } }
  @media screen and (min-width: 90em) {
    .small-margin-collapse > .xxlarge-1 {
      width: 8.33333%; }
    .small-margin-collapse > .xxlarge-2 {
      width: 16.66667%; }
    .small-margin-collapse > .xxlarge-3 {
      width: 25%; }
    .small-margin-collapse > .xxlarge-4 {
      width: 33.33333%; }
    .small-margin-collapse > .xxlarge-5 {
      width: 41.66667%; }
    .small-margin-collapse > .xxlarge-6 {
      width: 50%; }
    .small-margin-collapse > .xxlarge-7 {
      width: 58.33333%; }
    .small-margin-collapse > .xxlarge-8 {
      width: 66.66667%; }
    .small-margin-collapse > .xxlarge-9 {
      width: 75%; }
    .small-margin-collapse > .xxlarge-10 {
      width: 83.33333%; }
    .small-margin-collapse > .xxlarge-11 {
      width: 91.66667%; }
    .small-margin-collapse > .xxlarge-12 {
      width: 100%; } }

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

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

@media print, screen and (min-width: 40em) {
  .medium-margin-collapse > .small-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .small-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .small-3 {
    width: 25%; }
  .medium-margin-collapse > .small-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .small-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .small-6 {
    width: 50%; }
  .medium-margin-collapse > .small-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .small-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .small-9 {
    width: 75%; }
  .medium-margin-collapse > .small-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .small-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .small-12 {
    width: 100%; } }

@media print, screen and (min-width: 40em) {
  .medium-margin-collapse > .medium-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .medium-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .medium-3 {
    width: 25%; }
  .medium-margin-collapse > .medium-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .medium-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .medium-6 {
    width: 50%; }
  .medium-margin-collapse > .medium-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .medium-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .medium-9 {
    width: 75%; }
  .medium-margin-collapse > .medium-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .medium-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .medium-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .medium-margin-collapse > .large-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .large-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .large-3 {
    width: 25%; }
  .medium-margin-collapse > .large-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .large-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .large-6 {
    width: 50%; }
  .medium-margin-collapse > .large-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .large-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .large-9 {
    width: 75%; }
  .medium-margin-collapse > .large-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .large-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .large-12 {
    width: 100%; } }

@media screen and (min-width: 75em) {
  .medium-margin-collapse > .xlarge-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .xlarge-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .xlarge-3 {
    width: 25%; }
  .medium-margin-collapse > .xlarge-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .xlarge-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .xlarge-6 {
    width: 50%; }
  .medium-margin-collapse > .xlarge-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .xlarge-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .xlarge-9 {
    width: 75%; }
  .medium-margin-collapse > .xlarge-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .xlarge-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .xlarge-12 {
    width: 100%; } }

@media screen and (min-width: 90em) {
  .medium-margin-collapse > .xxlarge-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .xxlarge-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .xxlarge-3 {
    width: 25%; }
  .medium-margin-collapse > .xxlarge-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .xxlarge-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .xxlarge-6 {
    width: 50%; }
  .medium-margin-collapse > .xxlarge-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .xxlarge-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .xxlarge-9 {
    width: 75%; }
  .medium-margin-collapse > .xxlarge-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .xxlarge-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .xxlarge-12 {
    width: 100%; } }

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

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

@media print, screen and (min-width: 64em) {
  .large-margin-collapse > .small-1 {
    width: 8.33333%; }
  .large-margin-collapse > .small-2 {
    width: 16.66667%; }
  .large-margin-collapse > .small-3 {
    width: 25%; }
  .large-margin-collapse > .small-4 {
    width: 33.33333%; }
  .large-margin-collapse > .small-5 {
    width: 41.66667%; }
  .large-margin-collapse > .small-6 {
    width: 50%; }
  .large-margin-collapse > .small-7 {
    width: 58.33333%; }
  .large-margin-collapse > .small-8 {
    width: 66.66667%; }
  .large-margin-collapse > .small-9 {
    width: 75%; }
  .large-margin-collapse > .small-10 {
    width: 83.33333%; }
  .large-margin-collapse > .small-11 {
    width: 91.66667%; }
  .large-margin-collapse > .small-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .large-margin-collapse > .medium-1 {
    width: 8.33333%; }
  .large-margin-collapse > .medium-2 {
    width: 16.66667%; }
  .large-margin-collapse > .medium-3 {
    width: 25%; }
  .large-margin-collapse > .medium-4 {
    width: 33.33333%; }
  .large-margin-collapse > .medium-5 {
    width: 41.66667%; }
  .large-margin-collapse > .medium-6 {
    width: 50%; }
  .large-margin-collapse > .medium-7 {
    width: 58.33333%; }
  .large-margin-collapse > .medium-8 {
    width: 66.66667%; }
  .large-margin-collapse > .medium-9 {
    width: 75%; }
  .large-margin-collapse > .medium-10 {
    width: 83.33333%; }
  .large-margin-collapse > .medium-11 {
    width: 91.66667%; }
  .large-margin-collapse > .medium-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .large-margin-collapse > .large-1 {
    width: 8.33333%; }
  .large-margin-collapse > .large-2 {
    width: 16.66667%; }
  .large-margin-collapse > .large-3 {
    width: 25%; }
  .large-margin-collapse > .large-4 {
    width: 33.33333%; }
  .large-margin-collapse > .large-5 {
    width: 41.66667%; }
  .large-margin-collapse > .large-6 {
    width: 50%; }
  .large-margin-collapse > .large-7 {
    width: 58.33333%; }
  .large-margin-collapse > .large-8 {
    width: 66.66667%; }
  .large-margin-collapse > .large-9 {
    width: 75%; }
  .large-margin-collapse > .large-10 {
    width: 83.33333%; }
  .large-margin-collapse > .large-11 {
    width: 91.66667%; }
  .large-margin-collapse > .large-12 {
    width: 100%; } }

@media screen and (min-width: 75em) {
  .large-margin-collapse > .xlarge-1 {
    width: 8.33333%; }
  .large-margin-collapse > .xlarge-2 {
    width: 16.66667%; }
  .large-margin-collapse > .xlarge-3 {
    width: 25%; }
  .large-margin-collapse > .xlarge-4 {
    width: 33.33333%; }
  .large-margin-collapse > .xlarge-5 {
    width: 41.66667%; }
  .large-margin-collapse > .xlarge-6 {
    width: 50%; }
  .large-margin-collapse > .xlarge-7 {
    width: 58.33333%; }
  .large-margin-collapse > .xlarge-8 {
    width: 66.66667%; }
  .large-margin-collapse > .xlarge-9 {
    width: 75%; }
  .large-margin-collapse > .xlarge-10 {
    width: 83.33333%; }
  .large-margin-collapse > .xlarge-11 {
    width: 91.66667%; }
  .large-margin-collapse > .xlarge-12 {
    width: 100%; } }

@media screen and (min-width: 90em) {
  .large-margin-collapse > .xxlarge-1 {
    width: 8.33333%; }
  .large-margin-collapse > .xxlarge-2 {
    width: 16.66667%; }
  .large-margin-collapse > .xxlarge-3 {
    width: 25%; }
  .large-margin-collapse > .xxlarge-4 {
    width: 33.33333%; }
  .large-margin-collapse > .xxlarge-5 {
    width: 41.66667%; }
  .large-margin-collapse > .xxlarge-6 {
    width: 50%; }
  .large-margin-collapse > .xxlarge-7 {
    width: 58.33333%; }
  .large-margin-collapse > .xxlarge-8 {
    width: 66.66667%; }
  .large-margin-collapse > .xxlarge-9 {
    width: 75%; }
  .large-margin-collapse > .xxlarge-10 {
    width: 83.33333%; }
  .large-margin-collapse > .xxlarge-11 {
    width: 91.66667%; }
  .large-margin-collapse > .xxlarge-12 {
    width: 100%; } }

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

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

@media screen and (min-width: 75em) {
  .xlarge-margin-collapse > .small-1 {
    width: 8.33333%; }
  .xlarge-margin-collapse > .small-2 {
    width: 16.66667%; }
  .xlarge-margin-collapse > .small-3 {
    width: 25%; }
  .xlarge-margin-collapse > .small-4 {
    width: 33.33333%; }
  .xlarge-margin-collapse > .small-5 {
    width: 41.66667%; }
  .xlarge-margin-collapse > .small-6 {
    width: 50%; }
  .xlarge-margin-collapse > .small-7 {
    width: 58.33333%; }
  .xlarge-margin-collapse > .small-8 {
    width: 66.66667%; }
  .xlarge-margin-collapse > .small-9 {
    width: 75%; }
  .xlarge-margin-collapse > .small-10 {
    width: 83.33333%; }
  .xlarge-margin-collapse > .small-11 {
    width: 91.66667%; }
  .xlarge-margin-collapse > .small-12 {
    width: 100%; } }

@media screen and (min-width: 75em) {
  .xlarge-margin-collapse > .medium-1 {
    width: 8.33333%; }
  .xlarge-margin-collapse > .medium-2 {
    width: 16.66667%; }
  .xlarge-margin-collapse > .medium-3 {
    width: 25%; }
  .xlarge-margin-collapse > .medium-4 {
    width: 33.33333%; }
  .xlarge-margin-collapse > .medium-5 {
    width: 41.66667%; }
  .xlarge-margin-collapse > .medium-6 {
    width: 50%; }
  .xlarge-margin-collapse > .medium-7 {
    width: 58.33333%; }
  .xlarge-margin-collapse > .medium-8 {
    width: 66.66667%; }
  .xlarge-margin-collapse > .medium-9 {
    width: 75%; }
  .xlarge-margin-collapse > .medium-10 {
    width: 83.33333%; }
  .xlarge-margin-collapse > .medium-11 {
    width: 91.66667%; }
  .xlarge-margin-collapse > .medium-12 {
    width: 100%; } }

@media screen and (min-width: 75em) {
  .xlarge-margin-collapse > .large-1 {
    width: 8.33333%; }
  .xlarge-margin-collapse > .large-2 {
    width: 16.66667%; }
  .xlarge-margin-collapse > .large-3 {
    width: 25%; }
  .xlarge-margin-collapse > .large-4 {
    width: 33.33333%; }
  .xlarge-margin-collapse > .large-5 {
    width: 41.66667%; }
  .xlarge-margin-collapse > .large-6 {
    width: 50%; }
  .xlarge-margin-collapse > .large-7 {
    width: 58.33333%; }
  .xlarge-margin-collapse > .large-8 {
    width: 66.66667%; }
  .xlarge-margin-collapse > .large-9 {
    width: 75%; }
  .xlarge-margin-collapse > .large-10 {
    width: 83.33333%; }
  .xlarge-margin-collapse > .large-11 {
    width: 91.66667%; }
  .xlarge-margin-collapse > .large-12 {
    width: 100%; } }

@media screen and (min-width: 75em) {
  .xlarge-margin-collapse > .xlarge-1 {
    width: 8.33333%; }
  .xlarge-margin-collapse > .xlarge-2 {
    width: 16.66667%; }
  .xlarge-margin-collapse > .xlarge-3 {
    width: 25%; }
  .xlarge-margin-collapse > .xlarge-4 {
    width: 33.33333%; }
  .xlarge-margin-collapse > .xlarge-5 {
    width: 41.66667%; }
  .xlarge-margin-collapse > .xlarge-6 {
    width: 50%; }
  .xlarge-margin-collapse > .xlarge-7 {
    width: 58.33333%; }
  .xlarge-margin-collapse > .xlarge-8 {
    width: 66.66667%; }
  .xlarge-margin-collapse > .xlarge-9 {
    width: 75%; }
  .xlarge-margin-collapse > .xlarge-10 {
    width: 83.33333%; }
  .xlarge-margin-collapse > .xlarge-11 {
    width: 91.66667%; }
  .xlarge-margin-collapse > .xlarge-12 {
    width: 100%; } }

@media screen and (min-width: 90em) {
  .xlarge-margin-collapse > .xxlarge-1 {
    width: 8.33333%; }
  .xlarge-margin-collapse > .xxlarge-2 {
    width: 16.66667%; }
  .xlarge-margin-collapse > .xxlarge-3 {
    width: 25%; }
  .xlarge-margin-collapse > .xxlarge-4 {
    width: 33.33333%; }
  .xlarge-margin-collapse > .xxlarge-5 {
    width: 41.66667%; }
  .xlarge-margin-collapse > .xxlarge-6 {
    width: 50%; }
  .xlarge-margin-collapse > .xxlarge-7 {
    width: 58.33333%; }
  .xlarge-margin-collapse > .xxlarge-8 {
    width: 66.66667%; }
  .xlarge-margin-collapse > .xxlarge-9 {
    width: 75%; }
  .xlarge-margin-collapse > .xxlarge-10 {
    width: 83.33333%; }
  .xlarge-margin-collapse > .xxlarge-11 {
    width: 91.66667%; }
  .xlarge-margin-collapse > .xxlarge-12 {
    width: 100%; } }

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

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

@media screen and (min-width: 90em) {
  .xxlarge-margin-collapse > .small-1 {
    width: 8.33333%; }
  .xxlarge-margin-collapse > .small-2 {
    width: 16.66667%; }
  .xxlarge-margin-collapse > .small-3 {
    width: 25%; }
  .xxlarge-margin-collapse > .small-4 {
    width: 33.33333%; }
  .xxlarge-margin-collapse > .small-5 {
    width: 41.66667%; }
  .xxlarge-margin-collapse > .small-6 {
    width: 50%; }
  .xxlarge-margin-collapse > .small-7 {
    width: 58.33333%; }
  .xxlarge-margin-collapse > .small-8 {
    width: 66.66667%; }
  .xxlarge-margin-collapse > .small-9 {
    width: 75%; }
  .xxlarge-margin-collapse > .small-10 {
    width: 83.33333%; }
  .xxlarge-margin-collapse > .small-11 {
    width: 91.66667%; }
  .xxlarge-margin-collapse > .small-12 {
    width: 100%; } }

@media screen and (min-width: 90em) {
  .xxlarge-margin-collapse > .medium-1 {
    width: 8.33333%; }
  .xxlarge-margin-collapse > .medium-2 {
    width: 16.66667%; }
  .xxlarge-margin-collapse > .medium-3 {
    width: 25%; }
  .xxlarge-margin-collapse > .medium-4 {
    width: 33.33333%; }
  .xxlarge-margin-collapse > .medium-5 {
    width: 41.66667%; }
  .xxlarge-margin-collapse > .medium-6 {
    width: 50%; }
  .xxlarge-margin-collapse > .medium-7 {
    width: 58.33333%; }
  .xxlarge-margin-collapse > .medium-8 {
    width: 66.66667%; }
  .xxlarge-margin-collapse > .medium-9 {
    width: 75%; }
  .xxlarge-margin-collapse > .medium-10 {
    width: 83.33333%; }
  .xxlarge-margin-collapse > .medium-11 {
    width: 91.66667%; }
  .xxlarge-margin-collapse > .medium-12 {
    width: 100%; } }

@media screen and (min-width: 90em) {
  .xxlarge-margin-collapse > .large-1 {
    width: 8.33333%; }
  .xxlarge-margin-collapse > .large-2 {
    width: 16.66667%; }
  .xxlarge-margin-collapse > .large-3 {
    width: 25%; }
  .xxlarge-margin-collapse > .large-4 {
    width: 33.33333%; }
  .xxlarge-margin-collapse > .large-5 {
    width: 41.66667%; }
  .xxlarge-margin-collapse > .large-6 {
    width: 50%; }
  .xxlarge-margin-collapse > .large-7 {
    width: 58.33333%; }
  .xxlarge-margin-collapse > .large-8 {
    width: 66.66667%; }
  .xxlarge-margin-collapse > .large-9 {
    width: 75%; }
  .xxlarge-margin-collapse > .large-10 {
    width: 83.33333%; }
  .xxlarge-margin-collapse > .large-11 {
    width: 91.66667%; }
  .xxlarge-margin-collapse > .large-12 {
    width: 100%; } }

@media screen and (min-width: 90em) {
  .xxlarge-margin-collapse > .xlarge-1 {
    width: 8.33333%; }
  .xxlarge-margin-collapse > .xlarge-2 {
    width: 16.66667%; }
  .xxlarge-margin-collapse > .xlarge-3 {
    width: 25%; }
  .xxlarge-margin-collapse > .xlarge-4 {
    width: 33.33333%; }
  .xxlarge-margin-collapse > .xlarge-5 {
    width: 41.66667%; }
  .xxlarge-margin-collapse > .xlarge-6 {
    width: 50%; }
  .xxlarge-margin-collapse > .xlarge-7 {
    width: 58.33333%; }
  .xxlarge-margin-collapse > .xlarge-8 {
    width: 66.66667%; }
  .xxlarge-margin-collapse > .xlarge-9 {
    width: 75%; }
  .xxlarge-margin-collapse > .xlarge-10 {
    width: 83.33333%; }
  .xxlarge-margin-collapse > .xlarge-11 {
    width: 91.66667%; }
  .xxlarge-margin-collapse > .xlarge-12 {
    width: 100%; } }

@media screen and (min-width: 90em) {
  .xxlarge-margin-collapse > .xxlarge-1 {
    width: 8.33333%; }
  .xxlarge-margin-collapse > .xxlarge-2 {
    width: 16.66667%; }
  .xxlarge-margin-collapse > .xxlarge-3 {
    width: 25%; }
  .xxlarge-margin-collapse > .xxlarge-4 {
    width: 33.33333%; }
  .xxlarge-margin-collapse > .xxlarge-5 {
    width: 41.66667%; }
  .xxlarge-margin-collapse > .xxlarge-6 {
    width: 50%; }
  .xxlarge-margin-collapse > .xxlarge-7 {
    width: 58.33333%; }
  .xxlarge-margin-collapse > .xxlarge-8 {
    width: 66.66667%; }
  .xxlarge-margin-collapse > .xxlarge-9 {
    width: 75%; }
  .xxlarge-margin-collapse > .xxlarge-10 {
    width: 83.33333%; }
  .xxlarge-margin-collapse > .xxlarge-11 {
    width: 91.66667%; }
  .xxlarge-margin-collapse > .xxlarge-12 {
    width: 100%; } }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media print, screen and (min-width: 40em) {
  .medium-offset-0 {
    margin-left: 0%; }
  .grid-margin-x > .medium-offset-0 {
    margin-left: calc(0% + 0.9375rem); }
  .medium-offset-1 {
    margin-left: 8.33333%; }
  .grid-margin-x > .medium-offset-1 {
    margin-left: calc(8.33333% + 0.9375rem); }
  .medium-offset-2 {
    margin-left: 16.66667%; }
  .grid-margin-x > .medium-offset-2 {
    margin-left: calc(16.66667% + 0.9375rem); }
  .medium-offset-3 {
    margin-left: 25%; }
  .grid-margin-x > .medium-offset-3 {
    margin-left: calc(25% + 0.9375rem); }
  .medium-offset-4 {
    margin-left: 33.33333%; }
  .grid-margin-x > .medium-offset-4 {
    margin-left: calc(33.33333% + 0.9375rem); }
  .medium-offset-5 {
    margin-left: 41.66667%; }
  .grid-margin-x > .medium-offset-5 {
    margin-left: calc(41.66667% + 0.9375rem); }
  .medium-offset-6 {
    margin-left: 50%; }
  .grid-margin-x > .medium-offset-6 {
    margin-left: calc(50% + 0.9375rem); }
  .medium-offset-7 {
    margin-left: 58.33333%; }
  .grid-margin-x > .medium-offset-7 {
    margin-left: calc(58.33333% + 0.9375rem); }
  .medium-offset-8 {
    margin-left: 66.66667%; }
  .grid-margin-x > .medium-offset-8 {
    margin-left: calc(66.66667% + 0.9375rem); }
  .medium-offset-9 {
    margin-left: 75%; }
  .grid-margin-x > .medium-offset-9 {
    margin-left: calc(75% + 0.9375rem); }
  .medium-offset-10 {
    margin-left: 83.33333%; }
  .grid-margin-x > .medium-offset-10 {
    margin-left: calc(83.33333% + 0.9375rem); }
  .medium-offset-11 {
    margin-left: 91.66667%; }
  .grid-margin-x > .medium-offset-11 {
    margin-left: calc(91.66667% + 0.9375rem); } }

@media print, screen and (min-width: 64em) {
  .large-offset-0 {
    margin-left: 0%; }
  .grid-margin-x > .large-offset-0 {
    margin-left: calc(0% + 0.9375rem); }
  .large-offset-1 {
    margin-left: 8.33333%; }
  .grid-margin-x > .large-offset-1 {
    margin-left: calc(8.33333% + 0.9375rem); }
  .large-offset-2 {
    margin-left: 16.66667%; }
  .grid-margin-x > .large-offset-2 {
    margin-left: calc(16.66667% + 0.9375rem); }
  .large-offset-3 {
    margin-left: 25%; }
  .grid-margin-x > .large-offset-3 {
    margin-left: calc(25% + 0.9375rem); }
  .large-offset-4 {
    margin-left: 33.33333%; }
  .grid-margin-x > .large-offset-4 {
    margin-left: calc(33.33333% + 0.9375rem); }
  .large-offset-5 {
    margin-left: 41.66667%; }
  .grid-margin-x > .large-offset-5 {
    margin-left: calc(41.66667% + 0.9375rem); }
  .large-offset-6 {
    margin-left: 50%; }
  .grid-margin-x > .large-offset-6 {
    margin-left: calc(50% + 0.9375rem); }
  .large-offset-7 {
    margin-left: 58.33333%; }
  .grid-margin-x > .large-offset-7 {
    margin-left: calc(58.33333% + 0.9375rem); }
  .large-offset-8 {
    margin-left: 66.66667%; }
  .grid-margin-x > .large-offset-8 {
    margin-left: calc(66.66667% + 0.9375rem); }
  .large-offset-9 {
    margin-left: 75%; }
  .grid-margin-x > .large-offset-9 {
    margin-left: calc(75% + 0.9375rem); }
  .large-offset-10 {
    margin-left: 83.33333%; }
  .grid-margin-x > .large-offset-10 {
    margin-left: calc(83.33333% + 0.9375rem); }
  .large-offset-11 {
    margin-left: 91.66667%; }
  .grid-margin-x > .large-offset-11 {
    margin-left: calc(91.66667% + 0.9375rem); } }

@media screen and (min-width: 75em) {
  .xlarge-offset-0 {
    margin-left: 0%; }
  .grid-margin-x > .xlarge-offset-0 {
    margin-left: calc(0% + 0.9375rem); }
  .xlarge-offset-1 {
    margin-left: 8.33333%; }
  .grid-margin-x > .xlarge-offset-1 {
    margin-left: calc(8.33333% + 0.9375rem); }
  .xlarge-offset-2 {
    margin-left: 16.66667%; }
  .grid-margin-x > .xlarge-offset-2 {
    margin-left: calc(16.66667% + 0.9375rem); }
  .xlarge-offset-3 {
    margin-left: 25%; }
  .grid-margin-x > .xlarge-offset-3 {
    margin-left: calc(25% + 0.9375rem); }
  .xlarge-offset-4 {
    margin-left: 33.33333%; }
  .grid-margin-x > .xlarge-offset-4 {
    margin-left: calc(33.33333% + 0.9375rem); }
  .xlarge-offset-5 {
    margin-left: 41.66667%; }
  .grid-margin-x > .xlarge-offset-5 {
    margin-left: calc(41.66667% + 0.9375rem); }
  .xlarge-offset-6 {
    margin-left: 50%; }
  .grid-margin-x > .xlarge-offset-6 {
    margin-left: calc(50% + 0.9375rem); }
  .xlarge-offset-7 {
    margin-left: 58.33333%; }
  .grid-margin-x > .xlarge-offset-7 {
    margin-left: calc(58.33333% + 0.9375rem); }
  .xlarge-offset-8 {
    margin-left: 66.66667%; }
  .grid-margin-x > .xlarge-offset-8 {
    margin-left: calc(66.66667% + 0.9375rem); }
  .xlarge-offset-9 {
    margin-left: 75%; }
  .grid-margin-x > .xlarge-offset-9 {
    margin-left: calc(75% + 0.9375rem); }
  .xlarge-offset-10 {
    margin-left: 83.33333%; }
  .grid-margin-x > .xlarge-offset-10 {
    margin-left: calc(83.33333% + 0.9375rem); }
  .xlarge-offset-11 {
    margin-left: 91.66667%; }
  .grid-margin-x > .xlarge-offset-11 {
    margin-left: calc(91.66667% + 0.9375rem); } }

@media screen and (min-width: 90em) {
  .xxlarge-offset-0 {
    margin-left: 0%; }
  .grid-margin-x > .xxlarge-offset-0 {
    margin-left: calc(0% + 0.9375rem); }
  .xxlarge-offset-1 {
    margin-left: 8.33333%; }
  .grid-margin-x > .xxlarge-offset-1 {
    margin-left: calc(8.33333% + 0.9375rem); }
  .xxlarge-offset-2 {
    margin-left: 16.66667%; }
  .grid-margin-x > .xxlarge-offset-2 {
    margin-left: calc(16.66667% + 0.9375rem); }
  .xxlarge-offset-3 {
    margin-left: 25%; }
  .grid-margin-x > .xxlarge-offset-3 {
    margin-left: calc(25% + 0.9375rem); }
  .xxlarge-offset-4 {
    margin-left: 33.33333%; }
  .grid-margin-x > .xxlarge-offset-4 {
    margin-left: calc(33.33333% + 0.9375rem); }
  .xxlarge-offset-5 {
    margin-left: 41.66667%; }
  .grid-margin-x > .xxlarge-offset-5 {
    margin-left: calc(41.66667% + 0.9375rem); }
  .xxlarge-offset-6 {
    margin-left: 50%; }
  .grid-margin-x > .xxlarge-offset-6 {
    margin-left: calc(50% + 0.9375rem); }
  .xxlarge-offset-7 {
    margin-left: 58.33333%; }
  .grid-margin-x > .xxlarge-offset-7 {
    margin-left: calc(58.33333% + 0.9375rem); }
  .xxlarge-offset-8 {
    margin-left: 66.66667%; }
  .grid-margin-x > .xxlarge-offset-8 {
    margin-left: calc(66.66667% + 0.9375rem); }
  .xxlarge-offset-9 {
    margin-left: 75%; }
  .grid-margin-x > .xxlarge-offset-9 {
    margin-left: calc(75% + 0.9375rem); }
  .xxlarge-offset-10 {
    margin-left: 83.33333%; }
  .grid-margin-x > .xxlarge-offset-10 {
    margin-left: calc(83.33333% + 0.9375rem); }
  .xxlarge-offset-11 {
    margin-left: 91.66667%; }
  .grid-margin-x > .xxlarge-offset-11 {
    margin-left: calc(91.66667% + 0.9375rem); } }

.grid-y {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: column nowrap;
      -ms-flex-flow: column nowrap;
          flex-flow: column nowrap; }
  .grid-y > .cell {
    width: auto;
    max-width: none; }
  .grid-y > .auto {
    height: auto; }
  .grid-y > .shrink {
    height: auto; }
  .grid-y > .small-shrink, .grid-y > .small-full, .grid-y > .small-1, .grid-y > .small-2, .grid-y > .small-3, .grid-y > .small-4, .grid-y > .small-5, .grid-y > .small-6, .grid-y > .small-7, .grid-y > .small-8, .grid-y > .small-9, .grid-y > .small-10, .grid-y > .small-11, .grid-y > .small-12 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto; }
  @media print, screen and (min-width: 40em) {
    .grid-y > .medium-shrink, .grid-y > .medium-full, .grid-y > .medium-1, .grid-y > .medium-2, .grid-y > .medium-3, .grid-y > .medium-4, .grid-y > .medium-5, .grid-y > .medium-6, .grid-y > .medium-7, .grid-y > .medium-8, .grid-y > .medium-9, .grid-y > .medium-10, .grid-y > .medium-11, .grid-y > .medium-12 {
      -webkit-flex-basis: auto;
          -ms-flex-preferred-size: auto;
              flex-basis: auto; } }
  @media print, screen and (min-width: 64em) {
    .grid-y > .large-shrink, .grid-y > .large-full, .grid-y > .large-1, .grid-y > .large-2, .grid-y > .large-3, .grid-y > .large-4, .grid-y > .large-5, .grid-y > .large-6, .grid-y > .large-7, .grid-y > .large-8, .grid-y > .large-9, .grid-y > .large-10, .grid-y > .large-11, .grid-y > .large-12 {
      -webkit-flex-basis: auto;
          -ms-flex-preferred-size: auto;
              flex-basis: auto; } }
  @media screen and (min-width: 75em) {
    .grid-y > .xlarge-shrink, .grid-y > .xlarge-full, .grid-y > .xlarge-1, .grid-y > .xlarge-2, .grid-y > .xlarge-3, .grid-y > .xlarge-4, .grid-y > .xlarge-5, .grid-y > .xlarge-6, .grid-y > .xlarge-7, .grid-y > .xlarge-8, .grid-y > .xlarge-9, .grid-y > .xlarge-10, .grid-y > .xlarge-11, .grid-y > .xlarge-12 {
      -webkit-flex-basis: auto;
          -ms-flex-preferred-size: auto;
              flex-basis: auto; } }
  @media screen and (min-width: 90em) {
    .grid-y > .xxlarge-shrink, .grid-y > .xxlarge-full, .grid-y > .xxlarge-1, .grid-y > .xxlarge-2, .grid-y > .xxlarge-3, .grid-y > .xxlarge-4, .grid-y > .xxlarge-5, .grid-y > .xxlarge-6, .grid-y > .xxlarge-7, .grid-y > .xxlarge-8, .grid-y > .xxlarge-9, .grid-y > .xxlarge-10, .grid-y > .xxlarge-11, .grid-y > .xxlarge-12 {
      -webkit-flex-basis: auto;
          -ms-flex-preferred-size: auto;
              flex-basis: auto; } }
  .grid-y > .small-1, .grid-y > .small-2, .grid-y > .small-3, .grid-y > .small-4, .grid-y > .small-5, .grid-y > .small-6, .grid-y > .small-7, .grid-y > .small-8, .grid-y > .small-9, .grid-y > .small-10, .grid-y > .small-11, .grid-y > .small-12 {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
  .grid-y > .small-1 {
    height: 8.33333%; }
  .grid-y > .small-2 {
    height: 16.66667%; }
  .grid-y > .small-3 {
    height: 25%; }
  .grid-y > .small-4 {
    height: 33.33333%; }
  .grid-y > .small-5 {
    height: 41.66667%; }
  .grid-y > .small-6 {
    height: 50%; }
  .grid-y > .small-7 {
    height: 58.33333%; }
  .grid-y > .small-8 {
    height: 66.66667%; }
  .grid-y > .small-9 {
    height: 75%; }
  .grid-y > .small-10 {
    height: 83.33333%; }
  .grid-y > .small-11 {
    height: 91.66667%; }
  .grid-y > .small-12 {
    height: 100%; }
  @media print, screen and (min-width: 40em) {
    .grid-y > .medium-auto {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px;
      height: auto; }
    .grid-y > .medium-shrink, .grid-y > .medium-1, .grid-y > .medium-2, .grid-y > .medium-3, .grid-y > .medium-4, .grid-y > .medium-5, .grid-y > .medium-6, .grid-y > .medium-7, .grid-y > .medium-8, .grid-y > .medium-9, .grid-y > .medium-10, .grid-y > .medium-11, .grid-y > .medium-12 {
      -webkit-flex: 0 0 auto;
          -ms-flex: 0 0 auto;
              flex: 0 0 auto; }
    .grid-y > .medium-shrink {
      height: auto; }
    .grid-y > .medium-1 {
      height: 8.33333%; }
    .grid-y > .medium-2 {
      height: 16.66667%; }
    .grid-y > .medium-3 {
      height: 25%; }
    .grid-y > .medium-4 {
      height: 33.33333%; }
    .grid-y > .medium-5 {
      height: 41.66667%; }
    .grid-y > .medium-6 {
      height: 50%; }
    .grid-y > .medium-7 {
      height: 58.33333%; }
    .grid-y > .medium-8 {
      height: 66.66667%; }
    .grid-y > .medium-9 {
      height: 75%; }
    .grid-y > .medium-10 {
      height: 83.33333%; }
    .grid-y > .medium-11 {
      height: 91.66667%; }
    .grid-y > .medium-12 {
      height: 100%; } }
  @media print, screen and (min-width: 64em) {
    .grid-y > .large-auto {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px;
      height: auto; }
    .grid-y > .large-shrink, .grid-y > .large-1, .grid-y > .large-2, .grid-y > .large-3, .grid-y > .large-4, .grid-y > .large-5, .grid-y > .large-6, .grid-y > .large-7, .grid-y > .large-8, .grid-y > .large-9, .grid-y > .large-10, .grid-y > .large-11, .grid-y > .large-12 {
      -webkit-flex: 0 0 auto;
          -ms-flex: 0 0 auto;
              flex: 0 0 auto; }
    .grid-y > .large-shrink {
      height: auto; }
    .grid-y > .large-1 {
      height: 8.33333%; }
    .grid-y > .large-2 {
      height: 16.66667%; }
    .grid-y > .large-3 {
      height: 25%; }
    .grid-y > .large-4 {
      height: 33.33333%; }
    .grid-y > .large-5 {
      height: 41.66667%; }
    .grid-y > .large-6 {
      height: 50%; }
    .grid-y > .large-7 {
      height: 58.33333%; }
    .grid-y > .large-8 {
      height: 66.66667%; }
    .grid-y > .large-9 {
      height: 75%; }
    .grid-y > .large-10 {
      height: 83.33333%; }
    .grid-y > .large-11 {
      height: 91.66667%; }
    .grid-y > .large-12 {
      height: 100%; } }
  @media screen and (min-width: 75em) {
    .grid-y > .xlarge-auto {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px;
      height: auto; }
    .grid-y > .xlarge-shrink, .grid-y > .xlarge-1, .grid-y > .xlarge-2, .grid-y > .xlarge-3, .grid-y > .xlarge-4, .grid-y > .xlarge-5, .grid-y > .xlarge-6, .grid-y > .xlarge-7, .grid-y > .xlarge-8, .grid-y > .xlarge-9, .grid-y > .xlarge-10, .grid-y > .xlarge-11, .grid-y > .xlarge-12 {
      -webkit-flex: 0 0 auto;
          -ms-flex: 0 0 auto;
              flex: 0 0 auto; }
    .grid-y > .xlarge-shrink {
      height: auto; }
    .grid-y > .xlarge-1 {
      height: 8.33333%; }
    .grid-y > .xlarge-2 {
      height: 16.66667%; }
    .grid-y > .xlarge-3 {
      height: 25%; }
    .grid-y > .xlarge-4 {
      height: 33.33333%; }
    .grid-y > .xlarge-5 {
      height: 41.66667%; }
    .grid-y > .xlarge-6 {
      height: 50%; }
    .grid-y > .xlarge-7 {
      height: 58.33333%; }
    .grid-y > .xlarge-8 {
      height: 66.66667%; }
    .grid-y > .xlarge-9 {
      height: 75%; }
    .grid-y > .xlarge-10 {
      height: 83.33333%; }
    .grid-y > .xlarge-11 {
      height: 91.66667%; }
    .grid-y > .xlarge-12 {
      height: 100%; } }
  @media screen and (min-width: 90em) {
    .grid-y > .xxlarge-auto {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px;
      height: auto; }
    .grid-y > .xxlarge-shrink, .grid-y > .xxlarge-1, .grid-y > .xxlarge-2, .grid-y > .xxlarge-3, .grid-y > .xxlarge-4, .grid-y > .xxlarge-5, .grid-y > .xxlarge-6, .grid-y > .xxlarge-7, .grid-y > .xxlarge-8, .grid-y > .xxlarge-9, .grid-y > .xxlarge-10, .grid-y > .xxlarge-11, .grid-y > .xxlarge-12 {
      -webkit-flex: 0 0 auto;
          -ms-flex: 0 0 auto;
              flex: 0 0 auto; }
    .grid-y > .xxlarge-shrink {
      height: auto; }
    .grid-y > .xxlarge-1 {
      height: 8.33333%; }
    .grid-y > .xxlarge-2 {
      height: 16.66667%; }
    .grid-y > .xxlarge-3 {
      height: 25%; }
    .grid-y > .xxlarge-4 {
      height: 33.33333%; }
    .grid-y > .xxlarge-5 {
      height: 41.66667%; }
    .grid-y > .xxlarge-6 {
      height: 50%; }
    .grid-y > .xxlarge-7 {
      height: 58.33333%; }
    .grid-y > .xxlarge-8 {
      height: 66.66667%; }
    .grid-y > .xxlarge-9 {
      height: 75%; }
    .grid-y > .xxlarge-10 {
      height: 83.33333%; }
    .grid-y > .xxlarge-11 {
      height: 91.66667%; }
    .grid-y > .xxlarge-12 {
      height: 100%; } }

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

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

.grid-margin-y {
  margin-top: -0.625rem;
  margin-bottom: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-margin-y {
      margin-top: -0.9375rem;
      margin-bottom: -0.9375rem; } }
  .grid-margin-y > .cell {
    height: calc(100% - 1.25rem);
    margin-top: 0.625rem;
    margin-bottom: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .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.33333% - 1.25rem); }
  .grid-margin-y > .small-2 {
    height: calc(16.66667% - 1.25rem); }
  .grid-margin-y > .small-3 {
    height: calc(25% - 1.25rem); }
  .grid-margin-y > .small-4 {
    height: calc(33.33333% - 1.25rem); }
  .grid-margin-y > .small-5 {
    height: calc(41.66667% - 1.25rem); }
  .grid-margin-y > .small-6 {
    height: calc(50% - 1.25rem); }
  .grid-margin-y > .small-7 {
    height: calc(58.33333% - 1.25rem); }
  .grid-margin-y > .small-8 {
    height: calc(66.66667% - 1.25rem); }
  .grid-margin-y > .small-9 {
    height: calc(75% - 1.25rem); }
  .grid-margin-y > .small-10 {
    height: calc(83.33333% - 1.25rem); }
  .grid-margin-y > .small-11 {
    height: calc(91.66667% - 1.25rem); }
  .grid-margin-y > .small-12 {
    height: calc(100% - 1.25rem); }
  @media print, screen and (min-width: 40em) {
    .grid-margin-y > .auto {
      height: auto; }
    .grid-margin-y > .shrink {
      height: auto; }
    .grid-margin-y > .small-1 {
      height: calc(8.33333% - 1.875rem); }
    .grid-margin-y > .small-2 {
      height: calc(16.66667% - 1.875rem); }
    .grid-margin-y > .small-3 {
      height: calc(25% - 1.875rem); }
    .grid-margin-y > .small-4 {
      height: calc(33.33333% - 1.875rem); }
    .grid-margin-y > .small-5 {
      height: calc(41.66667% - 1.875rem); }
    .grid-margin-y > .small-6 {
      height: calc(50% - 1.875rem); }
    .grid-margin-y > .small-7 {
      height: calc(58.33333% - 1.875rem); }
    .grid-margin-y > .small-8 {
      height: calc(66.66667% - 1.875rem); }
    .grid-margin-y > .small-9 {
      height: calc(75% - 1.875rem); }
    .grid-margin-y > .small-10 {
      height: calc(83.33333% - 1.875rem); }
    .grid-margin-y > .small-11 {
      height: calc(91.66667% - 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.33333% - 1.875rem); }
    .grid-margin-y > .medium-2 {
      height: calc(16.66667% - 1.875rem); }
    .grid-margin-y > .medium-3 {
      height: calc(25% - 1.875rem); }
    .grid-margin-y > .medium-4 {
      height: calc(33.33333% - 1.875rem); }
    .grid-margin-y > .medium-5 {
      height: calc(41.66667% - 1.875rem); }
    .grid-margin-y > .medium-6 {
      height: calc(50% - 1.875rem); }
    .grid-margin-y > .medium-7 {
      height: calc(58.33333% - 1.875rem); }
    .grid-margin-y > .medium-8 {
      height: calc(66.66667% - 1.875rem); }
    .grid-margin-y > .medium-9 {
      height: calc(75% - 1.875rem); }
    .grid-margin-y > .medium-10 {
      height: calc(83.33333% - 1.875rem); }
    .grid-margin-y > .medium-11 {
      height: calc(91.66667% - 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.33333% - 1.875rem); }
    .grid-margin-y > .large-2 {
      height: calc(16.66667% - 1.875rem); }
    .grid-margin-y > .large-3 {
      height: calc(25% - 1.875rem); }
    .grid-margin-y > .large-4 {
      height: calc(33.33333% - 1.875rem); }
    .grid-margin-y > .large-5 {
      height: calc(41.66667% - 1.875rem); }
    .grid-margin-y > .large-6 {
      height: calc(50% - 1.875rem); }
    .grid-margin-y > .large-7 {
      height: calc(58.33333% - 1.875rem); }
    .grid-margin-y > .large-8 {
      height: calc(66.66667% - 1.875rem); }
    .grid-margin-y > .large-9 {
      height: calc(75% - 1.875rem); }
    .grid-margin-y > .large-10 {
      height: calc(83.33333% - 1.875rem); }
    .grid-margin-y > .large-11 {
      height: calc(91.66667% - 1.875rem); }
    .grid-margin-y > .large-12 {
      height: calc(100% - 1.875rem); } }
  @media screen and (min-width: 75em) {
    .grid-margin-y > .xlarge-auto {
      height: auto; }
    .grid-margin-y > .xlarge-shrink {
      height: auto; }
    .grid-margin-y > .xlarge-1 {
      height: calc(8.33333% - 1.875rem); }
    .grid-margin-y > .xlarge-2 {
      height: calc(16.66667% - 1.875rem); }
    .grid-margin-y > .xlarge-3 {
      height: calc(25% - 1.875rem); }
    .grid-margin-y > .xlarge-4 {
      height: calc(33.33333% - 1.875rem); }
    .grid-margin-y > .xlarge-5 {
      height: calc(41.66667% - 1.875rem); }
    .grid-margin-y > .xlarge-6 {
      height: calc(50% - 1.875rem); }
    .grid-margin-y > .xlarge-7 {
      height: calc(58.33333% - 1.875rem); }
    .grid-margin-y > .xlarge-8 {
      height: calc(66.66667% - 1.875rem); }
    .grid-margin-y > .xlarge-9 {
      height: calc(75% - 1.875rem); }
    .grid-margin-y > .xlarge-10 {
      height: calc(83.33333% - 1.875rem); }
    .grid-margin-y > .xlarge-11 {
      height: calc(91.66667% - 1.875rem); }
    .grid-margin-y > .xlarge-12 {
      height: calc(100% - 1.875rem); } }
  @media screen and (min-width: 90em) {
    .grid-margin-y > .xxlarge-auto {
      height: auto; }
    .grid-margin-y > .xxlarge-shrink {
      height: auto; }
    .grid-margin-y > .xxlarge-1 {
      height: calc(8.33333% - 1.875rem); }
    .grid-margin-y > .xxlarge-2 {
      height: calc(16.66667% - 1.875rem); }
    .grid-margin-y > .xxlarge-3 {
      height: calc(25% - 1.875rem); }
    .grid-margin-y > .xxlarge-4 {
      height: calc(33.33333% - 1.875rem); }
    .grid-margin-y > .xxlarge-5 {
      height: calc(41.66667% - 1.875rem); }
    .grid-margin-y > .xxlarge-6 {
      height: calc(50% - 1.875rem); }
    .grid-margin-y > .xxlarge-7 {
      height: calc(58.33333% - 1.875rem); }
    .grid-margin-y > .xxlarge-8 {
      height: calc(66.66667% - 1.875rem); }
    .grid-margin-y > .xxlarge-9 {
      height: calc(75% - 1.875rem); }
    .grid-margin-y > .xxlarge-10 {
      height: calc(83.33333% - 1.875rem); }
    .grid-margin-y > .xxlarge-11 {
      height: calc(91.66667% - 1.875rem); }
    .grid-margin-y > .xxlarge-12 {
      height: calc(100% - 1.875rem); } }

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

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

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

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

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

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

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

@media screen and (min-width: 75em) {
  .xlarge-grid-frame {
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    width: 100vw; }
  .cell .xlarge-grid-frame {
    width: 100%; }
  .xlarge-cell-block {
    overflow-x: auto;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; }
  .xlarge-cell-block-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    max-height: 100%; }
    .xlarge-cell-block-container > .grid-x {
      max-height: 100%;
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap; }
  .xlarge-cell-block-y {
    overflow-y: auto;
    max-height: 100%;
    min-height: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; } }

@media screen and (min-width: 90em) {
  .xxlarge-grid-frame {
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    width: 100vw; }
  .cell .xxlarge-grid-frame {
    width: 100%; }
  .xxlarge-cell-block {
    overflow-x: auto;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; }
  .xxlarge-cell-block-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    max-height: 100%; }
    .xxlarge-cell-block-container > .grid-x {
      max-height: 100%;
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap; }
  .xxlarge-cell-block-y {
    overflow-y: auto;
    max-height: 100%;
    min-height: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; } }

.grid-y.grid-frame {
  width: auto;
  overflow: hidden;
  position: relative;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  height: 100vh; }

@media print, screen and (min-width: 40em) {
  .grid-y.medium-grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    height: 100vh; } }

@media print, screen and (min-width: 64em) {
  .grid-y.large-grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    height: 100vh; } }

@media screen and (min-width: 75em) {
  .grid-y.xlarge-grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    height: 100vh; } }

@media screen and (min-width: 90em) {
  .grid-y.xxlarge-grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    height: 100vh; } }

.cell .grid-y.grid-frame {
  height: 100%; }

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

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

@media screen and (min-width: 75em) {
  .cell .grid-y.xlarge-grid-frame {
    height: 100%; } }

@media screen and (min-width: 90em) {
  .cell .grid-y.xxlarge-grid-frame {
    height: 100%; } }

.grid-margin-y {
  margin-top: -0.625rem;
  margin-bottom: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-margin-y {
      margin-top: -0.9375rem;
      margin-bottom: -0.9375rem; } }
  .grid-margin-y > .cell {
    height: calc(100% - 1.25rem);
    margin-top: 0.625rem;
    margin-bottom: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .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.33333% - 1.25rem); }
  .grid-margin-y > .small-2 {
    height: calc(16.66667% - 1.25rem); }
  .grid-margin-y > .small-3 {
    height: calc(25% - 1.25rem); }
  .grid-margin-y > .small-4 {
    height: calc(33.33333% - 1.25rem); }
  .grid-margin-y > .small-5 {
    height: calc(41.66667% - 1.25rem); }
  .grid-margin-y > .small-6 {
    height: calc(50% - 1.25rem); }
  .grid-margin-y > .small-7 {
    height: calc(58.33333% - 1.25rem); }
  .grid-margin-y > .small-8 {
    height: calc(66.66667% - 1.25rem); }
  .grid-margin-y > .small-9 {
    height: calc(75% - 1.25rem); }
  .grid-margin-y > .small-10 {
    height: calc(83.33333% - 1.25rem); }
  .grid-margin-y > .small-11 {
    height: calc(91.66667% - 1.25rem); }
  .grid-margin-y > .small-12 {
    height: calc(100% - 1.25rem); }
  @media print, screen and (min-width: 40em) {
    .grid-margin-y > .auto {
      height: auto; }
    .grid-margin-y > .shrink {
      height: auto; }
    .grid-margin-y > .small-1 {
      height: calc(8.33333% - 1.875rem); }
    .grid-margin-y > .small-2 {
      height: calc(16.66667% - 1.875rem); }
    .grid-margin-y > .small-3 {
      height: calc(25% - 1.875rem); }
    .grid-margin-y > .small-4 {
      height: calc(33.33333% - 1.875rem); }
    .grid-margin-y > .small-5 {
      height: calc(41.66667% - 1.875rem); }
    .grid-margin-y > .small-6 {
      height: calc(50% - 1.875rem); }
    .grid-margin-y > .small-7 {
      height: calc(58.33333% - 1.875rem); }
    .grid-margin-y > .small-8 {
      height: calc(66.66667% - 1.875rem); }
    .grid-margin-y > .small-9 {
      height: calc(75% - 1.875rem); }
    .grid-margin-y > .small-10 {
      height: calc(83.33333% - 1.875rem); }
    .grid-margin-y > .small-11 {
      height: calc(91.66667% - 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.33333% - 1.875rem); }
    .grid-margin-y > .medium-2 {
      height: calc(16.66667% - 1.875rem); }
    .grid-margin-y > .medium-3 {
      height: calc(25% - 1.875rem); }
    .grid-margin-y > .medium-4 {
      height: calc(33.33333% - 1.875rem); }
    .grid-margin-y > .medium-5 {
      height: calc(41.66667% - 1.875rem); }
    .grid-margin-y > .medium-6 {
      height: calc(50% - 1.875rem); }
    .grid-margin-y > .medium-7 {
      height: calc(58.33333% - 1.875rem); }
    .grid-margin-y > .medium-8 {
      height: calc(66.66667% - 1.875rem); }
    .grid-margin-y > .medium-9 {
      height: calc(75% - 1.875rem); }
    .grid-margin-y > .medium-10 {
      height: calc(83.33333% - 1.875rem); }
    .grid-margin-y > .medium-11 {
      height: calc(91.66667% - 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.33333% - 1.875rem); }
    .grid-margin-y > .large-2 {
      height: calc(16.66667% - 1.875rem); }
    .grid-margin-y > .large-3 {
      height: calc(25% - 1.875rem); }
    .grid-margin-y > .large-4 {
      height: calc(33.33333% - 1.875rem); }
    .grid-margin-y > .large-5 {
      height: calc(41.66667% - 1.875rem); }
    .grid-margin-y > .large-6 {
      height: calc(50% - 1.875rem); }
    .grid-margin-y > .large-7 {
      height: calc(58.33333% - 1.875rem); }
    .grid-margin-y > .large-8 {
      height: calc(66.66667% - 1.875rem); }
    .grid-margin-y > .large-9 {
      height: calc(75% - 1.875rem); }
    .grid-margin-y > .large-10 {
      height: calc(83.33333% - 1.875rem); }
    .grid-margin-y > .large-11 {
      height: calc(91.66667% - 1.875rem); }
    .grid-margin-y > .large-12 {
      height: calc(100% - 1.875rem); } }
  @media screen and (min-width: 75em) {
    .grid-margin-y > .xlarge-auto {
      height: auto; }
    .grid-margin-y > .xlarge-shrink {
      height: auto; }
    .grid-margin-y > .xlarge-1 {
      height: calc(8.33333% - 1.875rem); }
    .grid-margin-y > .xlarge-2 {
      height: calc(16.66667% - 1.875rem); }
    .grid-margin-y > .xlarge-3 {
      height: calc(25% - 1.875rem); }
    .grid-margin-y > .xlarge-4 {
      height: calc(33.33333% - 1.875rem); }
    .grid-margin-y > .xlarge-5 {
      height: calc(41.66667% - 1.875rem); }
    .grid-margin-y > .xlarge-6 {
      height: calc(50% - 1.875rem); }
    .grid-margin-y > .xlarge-7 {
      height: calc(58.33333% - 1.875rem); }
    .grid-margin-y > .xlarge-8 {
      height: calc(66.66667% - 1.875rem); }
    .grid-margin-y > .xlarge-9 {
      height: calc(75% - 1.875rem); }
    .grid-margin-y > .xlarge-10 {
      height: calc(83.33333% - 1.875rem); }
    .grid-margin-y > .xlarge-11 {
      height: calc(91.66667% - 1.875rem); }
    .grid-margin-y > .xlarge-12 {
      height: calc(100% - 1.875rem); } }
  @media screen and (min-width: 90em) {
    .grid-margin-y > .xxlarge-auto {
      height: auto; }
    .grid-margin-y > .xxlarge-shrink {
      height: auto; }
    .grid-margin-y > .xxlarge-1 {
      height: calc(8.33333% - 1.875rem); }
    .grid-margin-y > .xxlarge-2 {
      height: calc(16.66667% - 1.875rem); }
    .grid-margin-y > .xxlarge-3 {
      height: calc(25% - 1.875rem); }
    .grid-margin-y > .xxlarge-4 {
      height: calc(33.33333% - 1.875rem); }
    .grid-margin-y > .xxlarge-5 {
      height: calc(41.66667% - 1.875rem); }
    .grid-margin-y > .xxlarge-6 {
      height: calc(50% - 1.875rem); }
    .grid-margin-y > .xxlarge-7 {
      height: calc(58.33333% - 1.875rem); }
    .grid-margin-y > .xxlarge-8 {
      height: calc(66.66667% - 1.875rem); }
    .grid-margin-y > .xxlarge-9 {
      height: calc(75% - 1.875rem); }
    .grid-margin-y > .xxlarge-10 {
      height: calc(83.33333% - 1.875rem); }
    .grid-margin-y > .xxlarge-11 {
      height: calc(91.66667% - 1.875rem); }
    .grid-margin-y > .xxlarge-12 {
      height: calc(100% - 1.875rem); } }

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

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

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

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

@media screen and (min-width: 90em) {
  .grid-margin-y.xxlarge-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: "bebas_neuebold", sans-serif;
  font-style: normal;
  font-weight: normal;
  color: #877148;
  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: 40em) {
  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: #2f2f2f;
  text-decoration: none;
  cursor: pointer; }
  a:hover, a:focus {
    color: #877148; }
  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, ol ul, ul ol, 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; }

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

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

figure {
  margin: 0; }

code {
  padding: 0.125rem 0.3125rem 0.0625rem;
  border: 1px solid #cacaca;
  background-color: #e6e6e6;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: normal;
  color: #0a0a0a; }

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

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

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

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

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

@media print, screen and (min-width: 40em) {
  .medium-text-left {
    text-align: left; }
  .medium-text-right {
    text-align: right; }
  .medium-text-center {
    text-align: center; }
  .medium-text-justify {
    text-align: justify; } }

@media print, screen and (min-width: 64em) {
  .large-text-left {
    text-align: left; }
  .large-text-right {
    text-align: right; }
  .large-text-center {
    text-align: center; }
  .large-text-justify {
    text-align: justify; } }

@media screen and (min-width: 75em) {
  .xlarge-text-left {
    text-align: left; }
  .xlarge-text-right {
    text-align: right; }
  .xlarge-text-center {
    text-align: center; }
  .xlarge-text-justify {
    text-align: justify; } }

@media screen and (min-width: 90em) {
  .xxlarge-text-left {
    text-align: left; }
  .xxlarge-text-right {
    text-align: right; }
  .xxlarge-text-center {
    text-align: center; }
  .xxlarge-text-justify {
    text-align: justify; } }

.show-for-print {
  display: none !important; }

@media print {
  * {
    background: transparent !important;
    box-shadow: none !important;
    color: black !important;
    text-shadow: none !important; }
  .show-for-print {
    display: block !important; }
  .hide-for-print {
    display: none !important; }
  table.show-for-print {
    display: table !important; }
  thead.show-for-print {
    display: table-header-group !important; }
  tbody.show-for-print {
    display: table-row-group !important; }
  tr.show-for-print {
    display: table-row !important; }
  td.show-for-print {
    display: table-cell !important; }
  th.show-for-print {
    display: table-cell !important; }
  a,
  a:visited {
    text-decoration: underline; }
  a[href]:after {
    content: " (" attr(href) ")"; }
  .ir a:after,
  a[href^='javascript:']:after,
  a[href^='#']:after {
    content: ''; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  pre,
  blockquote {
    border: 1px solid #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, .wp-block-button .wp-block-button__link {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 1rem 0;
  padding: 0.85em 1em;
  border: 1px solid transparent;
  border-radius: 0;
  transition: background-color 0.25s ease-out, color 0.25s ease-out;
  font-family: inherit;
  font-size: 0.9rem;
  -webkit-appearance: none;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  background-color: #877148;
  color: #fefefe; }
  [data-whatinput='mouse'] .button, [data-whatinput='mouse'] .wp-block-button .wp-block-button__link, .wp-block-button [data-whatinput='mouse'] .wp-block-button__link {
    outline: 0; }
  .button:hover, .wp-block-button .wp-block-button__link:hover, .button:focus, .wp-block-button .wp-block-button__link:focus {
    background-color: #ffe100;
    color: #fefefe; }
  .button.tiny, .wp-block-button .tiny.wp-block-button__link {
    font-size: 0.6rem; }
  .button.small, .wp-block-button .small.wp-block-button__link {
    font-size: 0.75rem; }
  .button.large, .wp-block-button .large.wp-block-button__link {
    font-size: 1.25rem; }
  .button.expanded, .wp-block-button .expanded.wp-block-button__link {
    display: block;
    width: 100%;
    margin-right: 0;
    margin-left: 0; }
  .button.primary, .wp-block-button .primary.wp-block-button__link {
    background-color: #877148;
    color: #fefefe; }
    .button.primary:hover, .wp-block-button .primary.wp-block-button__link:hover, .button.primary:focus, .wp-block-button .primary.wp-block-button__link:focus {
      background-color: #6c5a3a;
      color: #fefefe; }
  .button.secondary, .wp-block-button .secondary.wp-block-button__link {
    background-color: #767676;
    color: #fefefe; }
    .button.secondary:hover, .wp-block-button .secondary.wp-block-button__link:hover, .button.secondary:focus, .wp-block-button .secondary.wp-block-button__link:focus {
      background-color: #5e5e5e;
      color: #fefefe; }
  .button.success, .wp-block-button .success.wp-block-button__link {
    background-color: #3adb76;
    color: #0a0a0a; }
    .button.success:hover, .wp-block-button .success.wp-block-button__link:hover, .button.success:focus, .wp-block-button .success.wp-block-button__link:focus {
      background-color: #22bb5b;
      color: #0a0a0a; }
  .button.warning, .wp-block-button .warning.wp-block-button__link {
    background-color: #ffae00;
    color: #0a0a0a; }
    .button.warning:hover, .wp-block-button .warning.wp-block-button__link:hover, .button.warning:focus, .wp-block-button .warning.wp-block-button__link:focus {
      background-color: #cc8b00;
      color: #0a0a0a; }
  .button.alert, .wp-block-button .alert.wp-block-button__link {
    background-color: #cc4b37;
    color: #fefefe; }
    .button.alert:hover, .wp-block-button .alert.wp-block-button__link:hover, .button.alert:focus, .wp-block-button .alert.wp-block-button__link:focus {
      background-color: #a53b2a;
      color: #fefefe; }
  .button.disabled, .wp-block-button .disabled.wp-block-button__link, .button[disabled], .wp-block-button .wp-block-button__link[disabled] {
    opacity: 0.25;
    cursor: not-allowed; }
    .button.disabled, .wp-block-button .disabled.wp-block-button__link, .button.disabled:hover, .wp-block-button .disabled.wp-block-button__link:hover, .button.disabled:focus, .wp-block-button .disabled.wp-block-button__link:focus, .button[disabled], .wp-block-button .wp-block-button__link[disabled], .button[disabled]:hover, .wp-block-button .wp-block-button__link[disabled]:hover, .button[disabled]:focus, .wp-block-button .wp-block-button__link[disabled]:focus {
      background-color: #877148;
      color: #fefefe; }
    .button.disabled.primary, .wp-block-button .disabled.primary.wp-block-button__link, .button[disabled].primary, .wp-block-button .wp-block-button__link[disabled].primary {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.primary, .wp-block-button .disabled.primary.wp-block-button__link, .button.disabled.primary:hover, .wp-block-button .disabled.primary.wp-block-button__link:hover, .button.disabled.primary:focus, .wp-block-button .disabled.primary.wp-block-button__link:focus, .button[disabled].primary, .wp-block-button .wp-block-button__link[disabled].primary, .button[disabled].primary:hover, .wp-block-button .wp-block-button__link[disabled].primary:hover, .button[disabled].primary:focus, .wp-block-button .wp-block-button__link[disabled].primary:focus {
        background-color: #877148;
        color: #fefefe; }
    .button.disabled.secondary, .wp-block-button .disabled.secondary.wp-block-button__link, .button[disabled].secondary, .wp-block-button .wp-block-button__link[disabled].secondary {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.secondary, .wp-block-button .disabled.secondary.wp-block-button__link, .button.disabled.secondary:hover, .wp-block-button .disabled.secondary.wp-block-button__link:hover, .button.disabled.secondary:focus, .wp-block-button .disabled.secondary.wp-block-button__link:focus, .button[disabled].secondary, .wp-block-button .wp-block-button__link[disabled].secondary, .button[disabled].secondary:hover, .wp-block-button .wp-block-button__link[disabled].secondary:hover, .button[disabled].secondary:focus, .wp-block-button .wp-block-button__link[disabled].secondary:focus {
        background-color: #767676;
        color: #fefefe; }
    .button.disabled.success, .wp-block-button .disabled.success.wp-block-button__link, .button[disabled].success, .wp-block-button .wp-block-button__link[disabled].success {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.success, .wp-block-button .disabled.success.wp-block-button__link, .button.disabled.success:hover, .wp-block-button .disabled.success.wp-block-button__link:hover, .button.disabled.success:focus, .wp-block-button .disabled.success.wp-block-button__link:focus, .button[disabled].success, .wp-block-button .wp-block-button__link[disabled].success, .button[disabled].success:hover, .wp-block-button .wp-block-button__link[disabled].success:hover, .button[disabled].success:focus, .wp-block-button .wp-block-button__link[disabled].success:focus {
        background-color: #3adb76;
        color: #0a0a0a; }
    .button.disabled.warning, .wp-block-button .disabled.warning.wp-block-button__link, .button[disabled].warning, .wp-block-button .wp-block-button__link[disabled].warning {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.warning, .wp-block-button .disabled.warning.wp-block-button__link, .button.disabled.warning:hover, .wp-block-button .disabled.warning.wp-block-button__link:hover, .button.disabled.warning:focus, .wp-block-button .disabled.warning.wp-block-button__link:focus, .button[disabled].warning, .wp-block-button .wp-block-button__link[disabled].warning, .button[disabled].warning:hover, .wp-block-button .wp-block-button__link[disabled].warning:hover, .button[disabled].warning:focus, .wp-block-button .wp-block-button__link[disabled].warning:focus {
        background-color: #ffae00;
        color: #0a0a0a; }
    .button.disabled.alert, .wp-block-button .disabled.alert.wp-block-button__link, .button[disabled].alert, .wp-block-button .wp-block-button__link[disabled].alert {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.alert, .wp-block-button .disabled.alert.wp-block-button__link, .button.disabled.alert:hover, .wp-block-button .disabled.alert.wp-block-button__link:hover, .button.disabled.alert:focus, .wp-block-button .disabled.alert.wp-block-button__link:focus, .button[disabled].alert, .wp-block-button .wp-block-button__link[disabled].alert, .button[disabled].alert:hover, .wp-block-button .wp-block-button__link[disabled].alert:hover, .button[disabled].alert:focus, .wp-block-button .wp-block-button__link[disabled].alert:focus {
        background-color: #cc4b37;
        color: #fefefe; }
  .button.hollow, .wp-block-button .hollow.wp-block-button__link, .wp-block-button.is-style-outline .wp-block-button__link {
    border: 1px solid #877148;
    color: #877148; }
    .button.hollow, .wp-block-button .hollow.wp-block-button__link, .wp-block-button.is-style-outline .wp-block-button__link, .button.hollow:hover, .wp-block-button .hollow.wp-block-button__link:hover, .wp-block-button.is-style-outline .wp-block-button__link:hover, .button.hollow:focus, .wp-block-button .hollow.wp-block-button__link:focus, .wp-block-button.is-style-outline .wp-block-button__link:focus {
      background-color: transparent; }
    .button.hollow.disabled, .wp-block-button .hollow.disabled.wp-block-button__link, .wp-block-button.is-style-outline .disabled.wp-block-button__link, .button.hollow.disabled:hover, .wp-block-button .hollow.disabled.wp-block-button__link:hover, .wp-block-button.is-style-outline .disabled.wp-block-button__link:hover, .button.hollow.disabled:focus, .wp-block-button .hollow.disabled.wp-block-button__link:focus, .wp-block-button.is-style-outline .disabled.wp-block-button__link:focus, .button.hollow[disabled], .wp-block-button .hollow.wp-block-button__link[disabled], .wp-block-button.is-style-outline .wp-block-button__link[disabled], .button.hollow[disabled]:hover, .wp-block-button .hollow.wp-block-button__link[disabled]:hover, .wp-block-button.is-style-outline .wp-block-button__link[disabled]:hover, .button.hollow[disabled]:focus, .wp-block-button .hollow.wp-block-button__link[disabled]:focus, .wp-block-button.is-style-outline .wp-block-button__link[disabled]:focus {
      background-color: transparent; }
    .button.hollow:hover, .wp-block-button .hollow.wp-block-button__link:hover, .wp-block-button.is-style-outline .wp-block-button__link:hover, .button.hollow:focus, .wp-block-button .hollow.wp-block-button__link:focus, .wp-block-button.is-style-outline .wp-block-button__link:focus {
      border-color: #443924;
      color: #443924; }
      .button.hollow:hover.disabled, .wp-block-button .hollow.wp-block-button__link:hover.disabled, .wp-block-button.is-style-outline .wp-block-button__link:hover.disabled, .button.hollow:hover[disabled], .wp-block-button .hollow.wp-block-button__link:hover[disabled], .wp-block-button.is-style-outline .wp-block-button__link:hover[disabled], .button.hollow:focus.disabled, .wp-block-button .hollow.wp-block-button__link:focus.disabled, .wp-block-button.is-style-outline .wp-block-button__link:focus.disabled, .button.hollow:focus[disabled], .wp-block-button .hollow.wp-block-button__link:focus[disabled], .wp-block-button.is-style-outline .wp-block-button__link:focus[disabled] {
        border: 1px solid #877148;
        color: #877148; }
    .button.hollow.primary, .wp-block-button .hollow.primary.wp-block-button__link, .wp-block-button.is-style-outline .primary.wp-block-button__link {
      border: 1px solid #877148;
      color: #877148; }
      .button.hollow.primary:hover, .wp-block-button .hollow.primary.wp-block-button__link:hover, .wp-block-button.is-style-outline .primary.wp-block-button__link:hover, .button.hollow.primary:focus, .wp-block-button .hollow.primary.wp-block-button__link:focus, .wp-block-button.is-style-outline .primary.wp-block-button__link:focus {
        border-color: #443924;
        color: #443924; }
        .button.hollow.primary:hover.disabled, .wp-block-button .hollow.primary.wp-block-button__link:hover.disabled, .wp-block-button.is-style-outline .primary.wp-block-button__link:hover.disabled, .button.hollow.primary:hover[disabled], .wp-block-button .hollow.primary.wp-block-button__link:hover[disabled], .wp-block-button.is-style-outline .primary.wp-block-button__link:hover[disabled], .button.hollow.primary:focus.disabled, .wp-block-button .hollow.primary.wp-block-button__link:focus.disabled, .wp-block-button.is-style-outline .primary.wp-block-button__link:focus.disabled, .button.hollow.primary:focus[disabled], .wp-block-button .hollow.primary.wp-block-button__link:focus[disabled], .wp-block-button.is-style-outline .primary.wp-block-button__link:focus[disabled] {
          border: 1px solid #877148;
          color: #877148; }
    .button.hollow.secondary, .wp-block-button .hollow.secondary.wp-block-button__link, .wp-block-button.is-style-outline .secondary.wp-block-button__link {
      border: 1px solid #767676;
      color: #767676; }
      .button.hollow.secondary:hover, .wp-block-button .hollow.secondary.wp-block-button__link:hover, .wp-block-button.is-style-outline .secondary.wp-block-button__link:hover, .button.hollow.secondary:focus, .wp-block-button .hollow.secondary.wp-block-button__link:focus, .wp-block-button.is-style-outline .secondary.wp-block-button__link:focus {
        border-color: #3b3b3b;
        color: #3b3b3b; }
        .button.hollow.secondary:hover.disabled, .wp-block-button .hollow.secondary.wp-block-button__link:hover.disabled, .wp-block-button.is-style-outline .secondary.wp-block-button__link:hover.disabled, .button.hollow.secondary:hover[disabled], .wp-block-button .hollow.secondary.wp-block-button__link:hover[disabled], .wp-block-button.is-style-outline .secondary.wp-block-button__link:hover[disabled], .button.hollow.secondary:focus.disabled, .wp-block-button .hollow.secondary.wp-block-button__link:focus.disabled, .wp-block-button.is-style-outline .secondary.wp-block-button__link:focus.disabled, .button.hollow.secondary:focus[disabled], .wp-block-button .hollow.secondary.wp-block-button__link:focus[disabled], .wp-block-button.is-style-outline .secondary.wp-block-button__link:focus[disabled] {
          border: 1px solid #767676;
          color: #767676; }
    .button.hollow.success, .wp-block-button .hollow.success.wp-block-button__link, .wp-block-button.is-style-outline .success.wp-block-button__link {
      border: 1px solid #3adb76;
      color: #3adb76; }
      .button.hollow.success:hover, .wp-block-button .hollow.success.wp-block-button__link:hover, .wp-block-button.is-style-outline .success.wp-block-button__link:hover, .button.hollow.success:focus, .wp-block-button .hollow.success.wp-block-button__link:focus, .wp-block-button.is-style-outline .success.wp-block-button__link:focus {
        border-color: #157539;
        color: #157539; }
        .button.hollow.success:hover.disabled, .wp-block-button .hollow.success.wp-block-button__link:hover.disabled, .wp-block-button.is-style-outline .success.wp-block-button__link:hover.disabled, .button.hollow.success:hover[disabled], .wp-block-button .hollow.success.wp-block-button__link:hover[disabled], .wp-block-button.is-style-outline .success.wp-block-button__link:hover[disabled], .button.hollow.success:focus.disabled, .wp-block-button .hollow.success.wp-block-button__link:focus.disabled, .wp-block-button.is-style-outline .success.wp-block-button__link:focus.disabled, .button.hollow.success:focus[disabled], .wp-block-button .hollow.success.wp-block-button__link:focus[disabled], .wp-block-button.is-style-outline .success.wp-block-button__link:focus[disabled] {
          border: 1px solid #3adb76;
          color: #3adb76; }
    .button.hollow.warning, .wp-block-button .hollow.warning.wp-block-button__link, .wp-block-button.is-style-outline .warning.wp-block-button__link {
      border: 1px solid #ffae00;
      color: #ffae00; }
      .button.hollow.warning:hover, .wp-block-button .hollow.warning.wp-block-button__link:hover, .wp-block-button.is-style-outline .warning.wp-block-button__link:hover, .button.hollow.warning:focus, .wp-block-button .hollow.warning.wp-block-button__link:focus, .wp-block-button.is-style-outline .warning.wp-block-button__link:focus {
        border-color: #805700;
        color: #805700; }
        .button.hollow.warning:hover.disabled, .wp-block-button .hollow.warning.wp-block-button__link:hover.disabled, .wp-block-button.is-style-outline .warning.wp-block-button__link:hover.disabled, .button.hollow.warning:hover[disabled], .wp-block-button .hollow.warning.wp-block-button__link:hover[disabled], .wp-block-button.is-style-outline .warning.wp-block-button__link:hover[disabled], .button.hollow.warning:focus.disabled, .wp-block-button .hollow.warning.wp-block-button__link:focus.disabled, .wp-block-button.is-style-outline .warning.wp-block-button__link:focus.disabled, .button.hollow.warning:focus[disabled], .wp-block-button .hollow.warning.wp-block-button__link:focus[disabled], .wp-block-button.is-style-outline .warning.wp-block-button__link:focus[disabled] {
          border: 1px solid #ffae00;
          color: #ffae00; }
    .button.hollow.alert, .wp-block-button .hollow.alert.wp-block-button__link, .wp-block-button.is-style-outline .alert.wp-block-button__link {
      border: 1px solid #cc4b37;
      color: #cc4b37; }
      .button.hollow.alert:hover, .wp-block-button .hollow.alert.wp-block-button__link:hover, .wp-block-button.is-style-outline .alert.wp-block-button__link:hover, .button.hollow.alert:focus, .wp-block-button .hollow.alert.wp-block-button__link:focus, .wp-block-button.is-style-outline .alert.wp-block-button__link:focus {
        border-color: #67251a;
        color: #67251a; }
        .button.hollow.alert:hover.disabled, .wp-block-button .hollow.alert.wp-block-button__link:hover.disabled, .wp-block-button.is-style-outline .alert.wp-block-button__link:hover.disabled, .button.hollow.alert:hover[disabled], .wp-block-button .hollow.alert.wp-block-button__link:hover[disabled], .wp-block-button.is-style-outline .alert.wp-block-button__link:hover[disabled], .button.hollow.alert:focus.disabled, .wp-block-button .hollow.alert.wp-block-button__link:focus.disabled, .wp-block-button.is-style-outline .alert.wp-block-button__link:focus.disabled, .button.hollow.alert:focus[disabled], .wp-block-button .hollow.alert.wp-block-button__link:focus[disabled], .wp-block-button.is-style-outline .alert.wp-block-button__link:focus[disabled] {
          border: 1px solid #cc4b37;
          color: #cc4b37; }
  .button.clear, .wp-block-button .clear.wp-block-button__link {
    border: 1px solid #877148;
    color: #877148; }
    .button.clear, .wp-block-button .clear.wp-block-button__link, .button.clear:hover, .wp-block-button .clear.wp-block-button__link:hover, .button.clear:focus, .wp-block-button .clear.wp-block-button__link:focus {
      background-color: transparent; }
    .button.clear.disabled, .wp-block-button .clear.disabled.wp-block-button__link, .button.clear.disabled:hover, .wp-block-button .clear.disabled.wp-block-button__link:hover, .button.clear.disabled:focus, .wp-block-button .clear.disabled.wp-block-button__link:focus, .button.clear[disabled], .wp-block-button .clear.wp-block-button__link[disabled], .button.clear[disabled]:hover, .wp-block-button .clear.wp-block-button__link[disabled]:hover, .button.clear[disabled]:focus, .wp-block-button .clear.wp-block-button__link[disabled]:focus {
      background-color: transparent; }
    .button.clear:hover, .wp-block-button .clear.wp-block-button__link:hover, .button.clear:focus, .wp-block-button .clear.wp-block-button__link:focus {
      border-color: #443924;
      color: #443924; }
      .button.clear:hover.disabled, .wp-block-button .clear.wp-block-button__link:hover.disabled, .button.clear:hover[disabled], .wp-block-button .clear.wp-block-button__link:hover[disabled], .button.clear:focus.disabled, .wp-block-button .clear.wp-block-button__link:focus.disabled, .button.clear:focus[disabled], .wp-block-button .clear.wp-block-button__link:focus[disabled] {
        border: 1px solid #877148;
        color: #877148; }
    .button.clear, .wp-block-button .clear.wp-block-button__link, .button.clear.disabled, .wp-block-button .clear.disabled.wp-block-button__link, .button.clear[disabled], .wp-block-button .clear.wp-block-button__link[disabled], .button.clear:hover, .wp-block-button .clear.wp-block-button__link:hover, .button.clear:hover.disabled, .wp-block-button .clear.wp-block-button__link:hover.disabled, .button.clear:hover[disabled], .wp-block-button .clear.wp-block-button__link:hover[disabled], .button.clear:focus, .wp-block-button .clear.wp-block-button__link:focus, .button.clear:focus.disabled, .wp-block-button .clear.wp-block-button__link:focus.disabled, .button.clear:focus[disabled], .wp-block-button .clear.wp-block-button__link:focus[disabled] {
      border-color: transparent; }
    .button.clear.primary, .wp-block-button .clear.primary.wp-block-button__link {
      border: 1px solid #877148;
      color: #877148; }
      .button.clear.primary:hover, .wp-block-button .clear.primary.wp-block-button__link:hover, .button.clear.primary:focus, .wp-block-button .clear.primary.wp-block-button__link:focus {
        border-color: #443924;
        color: #443924; }
        .button.clear.primary:hover.disabled, .wp-block-button .clear.primary.wp-block-button__link:hover.disabled, .button.clear.primary:hover[disabled], .wp-block-button .clear.primary.wp-block-button__link:hover[disabled], .button.clear.primary:focus.disabled, .wp-block-button .clear.primary.wp-block-button__link:focus.disabled, .button.clear.primary:focus[disabled], .wp-block-button .clear.primary.wp-block-button__link:focus[disabled] {
          border: 1px solid #877148;
          color: #877148; }
      .button.clear.primary, .wp-block-button .clear.primary.wp-block-button__link, .button.clear.primary.disabled, .wp-block-button .clear.primary.disabled.wp-block-button__link, .button.clear.primary[disabled], .wp-block-button .clear.primary.wp-block-button__link[disabled], .button.clear.primary:hover, .wp-block-button .clear.primary.wp-block-button__link:hover, .button.clear.primary:hover.disabled, .wp-block-button .clear.primary.wp-block-button__link:hover.disabled, .button.clear.primary:hover[disabled], .wp-block-button .clear.primary.wp-block-button__link:hover[disabled], .button.clear.primary:focus, .wp-block-button .clear.primary.wp-block-button__link:focus, .button.clear.primary:focus.disabled, .wp-block-button .clear.primary.wp-block-button__link:focus.disabled, .button.clear.primary:focus[disabled], .wp-block-button .clear.primary.wp-block-button__link:focus[disabled] {
        border-color: transparent; }
    .button.clear.secondary, .wp-block-button .clear.secondary.wp-block-button__link {
      border: 1px solid #767676;
      color: #767676; }
      .button.clear.secondary:hover, .wp-block-button .clear.secondary.wp-block-button__link:hover, .button.clear.secondary:focus, .wp-block-button .clear.secondary.wp-block-button__link:focus {
        border-color: #3b3b3b;
        color: #3b3b3b; }
        .button.clear.secondary:hover.disabled, .wp-block-button .clear.secondary.wp-block-button__link:hover.disabled, .button.clear.secondary:hover[disabled], .wp-block-button .clear.secondary.wp-block-button__link:hover[disabled], .button.clear.secondary:focus.disabled, .wp-block-button .clear.secondary.wp-block-button__link:focus.disabled, .button.clear.secondary:focus[disabled], .wp-block-button .clear.secondary.wp-block-button__link:focus[disabled] {
          border: 1px solid #767676;
          color: #767676; }
      .button.clear.secondary, .wp-block-button .clear.secondary.wp-block-button__link, .button.clear.secondary.disabled, .wp-block-button .clear.secondary.disabled.wp-block-button__link, .button.clear.secondary[disabled], .wp-block-button .clear.secondary.wp-block-button__link[disabled], .button.clear.secondary:hover, .wp-block-button .clear.secondary.wp-block-button__link:hover, .button.clear.secondary:hover.disabled, .wp-block-button .clear.secondary.wp-block-button__link:hover.disabled, .button.clear.secondary:hover[disabled], .wp-block-button .clear.secondary.wp-block-button__link:hover[disabled], .button.clear.secondary:focus, .wp-block-button .clear.secondary.wp-block-button__link:focus, .button.clear.secondary:focus.disabled, .wp-block-button .clear.secondary.wp-block-button__link:focus.disabled, .button.clear.secondary:focus[disabled], .wp-block-button .clear.secondary.wp-block-button__link:focus[disabled] {
        border-color: transparent; }
    .button.clear.success, .wp-block-button .clear.success.wp-block-button__link {
      border: 1px solid #3adb76;
      color: #3adb76; }
      .button.clear.success:hover, .wp-block-button .clear.success.wp-block-button__link:hover, .button.clear.success:focus, .wp-block-button .clear.success.wp-block-button__link:focus {
        border-color: #157539;
        color: #157539; }
        .button.clear.success:hover.disabled, .wp-block-button .clear.success.wp-block-button__link:hover.disabled, .button.clear.success:hover[disabled], .wp-block-button .clear.success.wp-block-button__link:hover[disabled], .button.clear.success:focus.disabled, .wp-block-button .clear.success.wp-block-button__link:focus.disabled, .button.clear.success:focus[disabled], .wp-block-button .clear.success.wp-block-button__link:focus[disabled] {
          border: 1px solid #3adb76;
          color: #3adb76; }
      .button.clear.success, .wp-block-button .clear.success.wp-block-button__link, .button.clear.success.disabled, .wp-block-button .clear.success.disabled.wp-block-button__link, .button.clear.success[disabled], .wp-block-button .clear.success.wp-block-button__link[disabled], .button.clear.success:hover, .wp-block-button .clear.success.wp-block-button__link:hover, .button.clear.success:hover.disabled, .wp-block-button .clear.success.wp-block-button__link:hover.disabled, .button.clear.success:hover[disabled], .wp-block-button .clear.success.wp-block-button__link:hover[disabled], .button.clear.success:focus, .wp-block-button .clear.success.wp-block-button__link:focus, .button.clear.success:focus.disabled, .wp-block-button .clear.success.wp-block-button__link:focus.disabled, .button.clear.success:focus[disabled], .wp-block-button .clear.success.wp-block-button__link:focus[disabled] {
        border-color: transparent; }
    .button.clear.warning, .wp-block-button .clear.warning.wp-block-button__link {
      border: 1px solid #ffae00;
      color: #ffae00; }
      .button.clear.warning:hover, .wp-block-button .clear.warning.wp-block-button__link:hover, .button.clear.warning:focus, .wp-block-button .clear.warning.wp-block-button__link:focus {
        border-color: #805700;
        color: #805700; }
        .button.clear.warning:hover.disabled, .wp-block-button .clear.warning.wp-block-button__link:hover.disabled, .button.clear.warning:hover[disabled], .wp-block-button .clear.warning.wp-block-button__link:hover[disabled], .button.clear.warning:focus.disabled, .wp-block-button .clear.warning.wp-block-button__link:focus.disabled, .button.clear.warning:focus[disabled], .wp-block-button .clear.warning.wp-block-button__link:focus[disabled] {
          border: 1px solid #ffae00;
          color: #ffae00; }
      .button.clear.warning, .wp-block-button .clear.warning.wp-block-button__link, .button.clear.warning.disabled, .wp-block-button .clear.warning.disabled.wp-block-button__link, .button.clear.warning[disabled], .wp-block-button .clear.warning.wp-block-button__link[disabled], .button.clear.warning:hover, .wp-block-button .clear.warning.wp-block-button__link:hover, .button.clear.warning:hover.disabled, .wp-block-button .clear.warning.wp-block-button__link:hover.disabled, .button.clear.warning:hover[disabled], .wp-block-button .clear.warning.wp-block-button__link:hover[disabled], .button.clear.warning:focus, .wp-block-button .clear.warning.wp-block-button__link:focus, .button.clear.warning:focus.disabled, .wp-block-button .clear.warning.wp-block-button__link:focus.disabled, .button.clear.warning:focus[disabled], .wp-block-button .clear.warning.wp-block-button__link:focus[disabled] {
        border-color: transparent; }
    .button.clear.alert, .wp-block-button .clear.alert.wp-block-button__link {
      border: 1px solid #cc4b37;
      color: #cc4b37; }
      .button.clear.alert:hover, .wp-block-button .clear.alert.wp-block-button__link:hover, .button.clear.alert:focus, .wp-block-button .clear.alert.wp-block-button__link:focus {
        border-color: #67251a;
        color: #67251a; }
        .button.clear.alert:hover.disabled, .wp-block-button .clear.alert.wp-block-button__link:hover.disabled, .button.clear.alert:hover[disabled], .wp-block-button .clear.alert.wp-block-button__link:hover[disabled], .button.clear.alert:focus.disabled, .wp-block-button .clear.alert.wp-block-button__link:focus.disabled, .button.clear.alert:focus[disabled], .wp-block-button .clear.alert.wp-block-button__link:focus[disabled] {
          border: 1px solid #cc4b37;
          color: #cc4b37; }
      .button.clear.alert, .wp-block-button .clear.alert.wp-block-button__link, .button.clear.alert.disabled, .wp-block-button .clear.alert.disabled.wp-block-button__link, .button.clear.alert[disabled], .wp-block-button .clear.alert.wp-block-button__link[disabled], .button.clear.alert:hover, .wp-block-button .clear.alert.wp-block-button__link:hover, .button.clear.alert:hover.disabled, .wp-block-button .clear.alert.wp-block-button__link:hover.disabled, .button.clear.alert:hover[disabled], .wp-block-button .clear.alert.wp-block-button__link:hover[disabled], .button.clear.alert:focus, .wp-block-button .clear.alert.wp-block-button__link:focus, .button.clear.alert:focus.disabled, .wp-block-button .clear.alert.wp-block-button__link:focus.disabled, .button.clear.alert:focus[disabled], .wp-block-button .clear.alert.wp-block-button__link:focus[disabled] {
        border-color: transparent; }
  .button.dropdown::after, .wp-block-button .dropdown.wp-block-button__link::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 0.4em;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #fefefe transparent transparent;
    position: relative;
    top: 0.4em;
    display: inline-block;
    float: right;
    margin-left: 1em; }
  .button.dropdown.hollow::after, .wp-block-button .dropdown.hollow.wp-block-button__link::after, .wp-block-button.is-style-outline .dropdown.wp-block-button__link::after, .button.dropdown.clear::after, .wp-block-button .dropdown.clear.wp-block-button__link::after {
    border-top-color: #877148; }
  .button.dropdown.hollow.primary::after, .wp-block-button .dropdown.hollow.primary.wp-block-button__link::after, .wp-block-button.is-style-outline .dropdown.primary.wp-block-button__link::after, .button.dropdown.clear.primary::after, .wp-block-button .dropdown.clear.primary.wp-block-button__link::after {
    border-top-color: #877148; }
  .button.dropdown.hollow.secondary::after, .wp-block-button .dropdown.hollow.secondary.wp-block-button__link::after, .wp-block-button.is-style-outline .dropdown.secondary.wp-block-button__link::after, .button.dropdown.clear.secondary::after, .wp-block-button .dropdown.clear.secondary.wp-block-button__link::after {
    border-top-color: #767676; }
  .button.dropdown.hollow.success::after, .wp-block-button .dropdown.hollow.success.wp-block-button__link::after, .wp-block-button.is-style-outline .dropdown.success.wp-block-button__link::after, .button.dropdown.clear.success::after, .wp-block-button .dropdown.clear.success.wp-block-button__link::after {
    border-top-color: #3adb76; }
  .button.dropdown.hollow.warning::after, .wp-block-button .dropdown.hollow.warning.wp-block-button__link::after, .wp-block-button.is-style-outline .dropdown.warning.wp-block-button__link::after, .button.dropdown.clear.warning::after, .wp-block-button .dropdown.clear.warning.wp-block-button__link::after {
    border-top-color: #ffae00; }
  .button.dropdown.hollow.alert::after, .wp-block-button .dropdown.hollow.alert.wp-block-button__link::after, .wp-block-button.is-style-outline .dropdown.alert.wp-block-button__link::after, .button.dropdown.clear.alert::after, .wp-block-button .dropdown.clear.alert.wp-block-button__link::after {
    border-top-color: #cc4b37; }
  .button.arrow-only::after, .wp-block-button .arrow-only.wp-block-button__link::after {
    top: -0.1em;
    float: none;
    margin-left: 0; }

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

[type='text'], [type='password'], [type='date'], [type='datetime'], [type='datetime-local'], [type='month'], [type='week'], [type='email'], [type='number'], [type='search'], [type='tel'], [type='time'], [type='url'], [type='color'],
textarea {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 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;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }
  [type='text']:focus, [type='password']:focus, [type='date']:focus, [type='datetime']:focus, [type='datetime-local']:focus, [type='month']:focus, [type='week']:focus, [type='email']:focus, [type='number']:focus, [type='search']:focus, [type='tel']:focus, [type='time']:focus, [type='url']:focus, [type='color']:focus,
  textarea:focus {
    outline: none;
    border: 1px solid #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; }

::-webkit-input-placeholder {
  color: #877148;
  text-transform: uppercase;
  font-family: 'bebas_neuebold', sans-serif;
  opacity: 100; }

:-ms-input-placeholder {
  color: #877148;
  text-transform: uppercase;
  font-family: 'bebas_neuebold', sans-serif;
  opacity: 100; }

::placeholder {
  color: #877148;
  text-transform: uppercase;
  font-family: 'bebas_neuebold', sans-serif;
  opacity: 100; }

[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;
    padding: 0.5625rem 0; }

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

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

.input-group-label, .input-group-field, .input-group-button, .input-group-button a,
.input-group-button input,
.input-group-button button,
.input-group-button 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: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .input-group-label:first-child {
    border-right: 0; }
  .input-group-label:last-child {
    border-left: 0; }

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

.input-group-button {
  padding-top: 0;
  padding-bottom: 0;
  text-align: center;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto; }
  .input-group-button a,
  .input-group-button input,
  .input-group-button button,
  .input-group-button label {
    -webkit-align-self: stretch;
        -ms-flex-item-align: stretch;
                -ms-grid-row-align: stretch;
            align-self: stretch;
    height: auto;
    padding-top: 0;
    padding-bottom: 0;
    font-size: 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;
  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>");
  background-origin: content-box;
  background-position: right -1rem center;
  background-repeat: no-repeat;
  background-size: 9px 6px;
  padding-right: 1.5rem;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out; }
  @media screen and (min-width: 0\0) {
    select {
      background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/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; }

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

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

.form-error {
  display: none;
  margin-top: -0.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: #877148; }
  :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: '\2013'; }

.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: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #877148 transparent transparent;
    position: absolute;
    top: 50%;
    margin-top: -3px;
    right: 1rem; }

.accordion-menu.align-left .is-accordion-submenu-parent > a::after {
  right: 1rem;
  left: auto; }

.accordion-menu.align-right .is-accordion-submenu-parent > a::after {
  right: auto;
  left: 1rem; }

.accordion-menu .is-accordion-submenu-parent[aria-expanded='true'] > a::after {
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg);
  -webkit-transform-origin: 50% 50%;
      -ms-transform-origin: 50% 50%;
          transform-origin: 50% 50%; }

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

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

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

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

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

.badge {
  display: inline-block;
  min-width: 2.1em;
  padding: 0.3em;
  border-radius: 50%;
  font-size: 0.6rem;
  text-align: center;
  background: #877148;
  color: #fefefe; }
  .badge.primary {
    background: #877148;
    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: ' ';
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .breadcrumbs::after {
    clear: both; }
  .breadcrumbs li {
    float: left;
    font-size: 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: #877148; }
    .breadcrumbs a:hover {
      text-decoration: underline; }
  .breadcrumbs .disabled {
    color: #cacaca;
    cursor: not-allowed; }

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

.callout {
  position: relative;
  margin: 0 0 1rem 0;
  padding: 1rem;
  border: 1px solid rgba(10, 10, 10, 0.25);
  border-radius: 0;
  background-color: white;
  color: #0a0a0a; }
  .callout > :first-child {
    margin-top: 0; }
  .callout > :last-child {
    margin-bottom: 0; }
  .callout.primary {
    background-color: #efeae1;
    color: #0a0a0a; }
  .callout.secondary {
    background-color: #eaeaea;
    color: #0a0a0a; }
  .callout.success {
    background-color: #e1faea;
    color: #0a0a0a; }
  .callout.warning {
    background-color: #fff3d9;
    color: #0a0a0a; }
  .callout.alert {
    background-color: #f7e4e1;
    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: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  margin-bottom: 1rem;
  border: 1px solid #e6e6e6;
  border-radius: 0;
  background: #fefefe;
  box-shadow: none;
  overflow: hidden;
  color: #0a0a0a; }
  .card > :last-child {
    margin-bottom: 0; }

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

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

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

.close-button {
  position: absolute;
  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, .close-button.medium {
    right: 1rem;
    top: 0.5rem;
    font-size: 2em;
    line-height: 1; }

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

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

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

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

.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: -webkit-transform 0.15s linear;
  transition: transform 0.15s linear;
  transition: transform 0.15s linear, -webkit-transform 0.15s linear; }
  .drilldown .is-drilldown-submenu.is-active {
    z-index: 1;
    display: block;
    -webkit-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
            transform: translateX(-100%); }
  .drilldown .is-drilldown-submenu.is-closing {
    -webkit-transform: translateX(100%);
        -ms-transform: translateX(100%);
            transform: translateX(100%); }
  .drilldown .is-drilldown-submenu a {
    padding: 0.7rem 1rem; }

.drilldown .nested.is-drilldown-submenu {
  margin-right: 0;
  margin-left: 0; }

.drilldown .drilldown-submenu-cover-previous {
  min-height: 100%; }

.drilldown .is-drilldown-submenu-parent > a {
  position: relative; }
  .drilldown .is-drilldown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #877148;
    position: absolute;
    top: 50%;
    margin-top: -6px;
    right: 1rem; }

.drilldown.align-left .is-drilldown-submenu-parent > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #2f2f2f;
  right: 1rem;
  left: auto; }

.drilldown.align-right .is-drilldown-submenu-parent > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #2f2f2f transparent transparent;
  right: auto;
  left: 1rem; }

.drilldown .js-drilldown-back > a::before {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #877148 transparent transparent;
  border-left-width: 0;
  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 {
  /*@include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, down);*/
  right: 5px;
  left: auto;
  margin-top: -3px; }

[data-whatinput='mouse'] .dropdown.menu a {
  outline: 0; }

.dropdown.menu > li > a {
  padding: 0.7rem 1rem; }

.dropdown.menu > li.is-active > a {
  background: transparent;
  color: #877148; }

.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;
  font-family: 'robotoregular', sans-serif;
  text-transform: none;
  font-size: 0.9rem; }

.dropdown.menu.vertical > li.opens-left > .is-dropdown-submenu {
  right: auto;
  left: 100%; }

.dropdown.menu.vertical > li.opens-right > .is-dropdown-submenu {
  top: 0;
  right: 100%;
  left: auto; }

.dropdown.menu.vertical > li > a::after {
  right: 14px; }

.dropdown.menu.vertical > li.opens-left > a::after {
  /*@include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, left);*/
  right: auto;
  left: 5px; }

.dropdown.menu.vertical > li.opens-right > a::after {
  /*@include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, right);*/ }

@media print, screen and (min-width: 40em) {
  .dropdown.menu.medium-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto; }
  .dropdown.menu.medium-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0; }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem; }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a::after {
    /*@include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, down);*/
    right: 5px;
    left: auto;
    margin-top: -3px; }
  .dropdown.menu.medium-vertical > li .is-dropdown-submenu {
    top: 0;
    font-family: 'robotoregular', sans-serif;
    text-transform: none;
    font-size: 0.9rem; }
  .dropdown.menu.medium-vertical > li.opens-left > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.medium-vertical > li.opens-right > .is-dropdown-submenu {
    top: 0;
    right: 100%;
    left: auto; }
  .dropdown.menu.medium-vertical > li > a::after {
    right: 14px; }
  .dropdown.menu.medium-vertical > li.opens-left > a::after {
    /*@include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, left);*/
    right: auto;
    left: 5px; }
  .dropdown.menu.medium-vertical > li.opens-right > a::after {
    /*@include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, right);*/ } }

@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 {
    /*@include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, down);*/
    right: 5px;
    left: auto;
    margin-top: -3px; }
  .dropdown.menu.large-vertical > li .is-dropdown-submenu {
    top: 0;
    font-family: 'robotoregular', sans-serif;
    text-transform: none;
    font-size: 0.9rem; }
  .dropdown.menu.large-vertical > li.opens-left > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.large-vertical > li.opens-right > .is-dropdown-submenu {
    top: 0;
    right: 100%;
    left: auto; }
  .dropdown.menu.large-vertical > li > a::after {
    right: 14px; }
  .dropdown.menu.large-vertical > li.opens-left > a::after {
    /*@include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, left);*/
    right: auto;
    left: 5px; }
  .dropdown.menu.large-vertical > li.opens-right > a::after {
    /*@include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, right);*/ } }

@media screen and (min-width: 75em) {
  .dropdown.menu.xlarge-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto; }
  .dropdown.menu.xlarge-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0; }
  .dropdown.menu.xlarge-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem; }
  .dropdown.menu.xlarge-horizontal > li.is-dropdown-submenu-parent > a::after {
    /*@include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, down);*/
    right: 5px;
    left: auto;
    margin-top: -3px; }
  .dropdown.menu.xlarge-vertical > li .is-dropdown-submenu {
    top: 0;
    font-family: 'robotoregular', sans-serif;
    text-transform: none;
    font-size: 0.9rem; }
  .dropdown.menu.xlarge-vertical > li.opens-left > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.xlarge-vertical > li.opens-right > .is-dropdown-submenu {
    top: 0;
    right: 100%;
    left: auto; }
  .dropdown.menu.xlarge-vertical > li > a::after {
    right: 14px; }
  .dropdown.menu.xlarge-vertical > li.opens-left > a::after {
    /*@include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, left);*/
    right: auto;
    left: 5px; }
  .dropdown.menu.xlarge-vertical > li.opens-right > a::after {
    /*@include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, right);*/ } }

@media screen and (min-width: 90em) {
  .dropdown.menu.xxlarge-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto; }
  .dropdown.menu.xxlarge-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0; }
  .dropdown.menu.xxlarge-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem; }
  .dropdown.menu.xxlarge-horizontal > li.is-dropdown-submenu-parent > a::after {
    /*@include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, down);*/
    right: 5px;
    left: auto;
    margin-top: -3px; }
  .dropdown.menu.xxlarge-vertical > li .is-dropdown-submenu {
    top: 0;
    font-family: 'robotoregular', sans-serif;
    text-transform: none;
    font-size: 0.9rem; }
  .dropdown.menu.xxlarge-vertical > li.opens-left > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.xxlarge-vertical > li.opens-right > .is-dropdown-submenu {
    top: 0;
    right: 100%;
    left: auto; }
  .dropdown.menu.xxlarge-vertical > li > a::after {
    right: 14px; }
  .dropdown.menu.xxlarge-vertical > li.opens-left > a::after {
    /*@include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, left);*/
    right: auto;
    left: 5px; }
  .dropdown.menu.xxlarge-vertical > li.opens-right > a::after {
    /*@include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, right);*/ } }

.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 {
    /*@include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, left);*/
    right: auto;
    left: 5px; }
  .is-dropdown-submenu .is-dropdown-submenu-parent.opens-right > a::after {
    /*@include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, right);*/ }
  .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: #877148;
  color: #fefefe; }
  .label.primary {
    background: #877148;
    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: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 1rem;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap; }
  .media-object img {
    max-width: none; }
  @media screen and (max-width: 39.99875em) {
    .media-object.stack-for-small {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; } }

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

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

.js-off-canvas-overlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 11;
  width: 100%;
  height: 100%;
  transition: opacity 0.5s ease, visibility 0.5s ease;
  background: rgba(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 {
  position: fixed;
  z-index: 12;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  background: #ffffff; }
  [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 {
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0); }

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

.position-left {
  top: 0;
  left: 0;
  height: 100%;
  overflow-y: auto;
  width: 250px;
  -webkit-transform: translateX(-250px);
      -ms-transform: translateX(-250px);
          transform: translateX(-250px); }
  .off-canvas-content .off-canvas.position-left {
    -webkit-transform: translateX(-250px);
        -ms-transform: translateX(-250px);
            transform: translateX(-250px); }
    .off-canvas-content .off-canvas.position-left.is-transition-overlap.is-open {
      -webkit-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
              transform: translate(0, 0); }
  .off-canvas-content.is-open-left.has-transition-push {
    -webkit-transform: translateX(250px);
        -ms-transform: translateX(250px);
            transform: translateX(250px); }
  .position-left.is-transition-push {
    box-shadow: inset -13px 0 20px -13px rgba(10, 10, 10, 0.25); }

.position-right {
  top: 0;
  right: 0;
  height: 100%;
  overflow-y: auto;
  width: 250px;
  -webkit-transform: translateX(250px);
      -ms-transform: translateX(250px);
          transform: translateX(250px); }
  .off-canvas-content .off-canvas.position-right {
    -webkit-transform: translateX(250px);
        -ms-transform: translateX(250px);
            transform: translateX(250px); }
    .off-canvas-content .off-canvas.position-right.is-transition-overlap.is-open {
      -webkit-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
              transform: translate(0, 0); }
  .off-canvas-content.is-open-right.has-transition-push {
    -webkit-transform: translateX(-250px);
        -ms-transform: translateX(-250px);
            transform: translateX(-250px); }
  .position-right.is-transition-push {
    box-shadow: inset 13px 0 20px -13px rgba(10, 10, 10, 0.25); }

.position-top {
  top: 0;
  left: 0;
  width: 100%;
  overflow-x: auto;
  height: 250px;
  -webkit-transform: translateY(-250px);
      -ms-transform: translateY(-250px);
          transform: translateY(-250px); }
  .off-canvas-content .off-canvas.position-top {
    -webkit-transform: translateY(-250px);
        -ms-transform: translateY(-250px);
            transform: translateY(-250px); }
    .off-canvas-content .off-canvas.position-top.is-transition-overlap.is-open {
      -webkit-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
              transform: translate(0, 0); }
  .off-canvas-content.is-open-top.has-transition-push {
    -webkit-transform: translateY(250px);
        -ms-transform: translateY(250px);
            transform: translateY(250px); }
  .position-top.is-transition-push {
    box-shadow: inset 0 -13px 20px -13px rgba(10, 10, 10, 0.25); }

.position-bottom {
  bottom: 0;
  left: 0;
  width: 100%;
  overflow-x: auto;
  height: 250px;
  -webkit-transform: translateY(250px);
      -ms-transform: translateY(250px);
          transform: translateY(250px); }
  .off-canvas-content .off-canvas.position-bottom {
    -webkit-transform: translateY(250px);
        -ms-transform: translateY(250px);
            transform: translateY(250px); }
    .off-canvas-content .off-canvas.position-bottom.is-transition-overlap.is-open {
      -webkit-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
              transform: translate(0, 0); }
  .off-canvas-content.is-open-bottom.has-transition-push {
    -webkit-transform: translateY(-250px);
        -ms-transform: translateY(-250px);
            transform: translateY(-250px); }
  .position-bottom.is-transition-push {
    box-shadow: inset 0 13px 20px -13px rgba(10, 10, 10, 0.25); }

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

@media print, screen and (min-width: 40em) {
  .position-left.reveal-for-medium {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-left.reveal-for-medium .close-button {
      display: none; }
    .off-canvas-content .position-left.reveal-for-medium {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-left {
      margin-left: 250px; }
    .position-left.reveal-for-medium ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-medium {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-right.reveal-for-medium .close-button {
      display: none; }
    .off-canvas-content .position-right.reveal-for-medium {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-right {
      margin-right: 250px; }
    .position-right.reveal-for-medium ~ .off-canvas-content {
      margin-right: 250px; }
  .position-top.reveal-for-medium {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-top.reveal-for-medium .close-button {
      display: none; }
    .off-canvas-content .position-top.reveal-for-medium {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-top {
      margin-top: 250px; }
    .position-top.reveal-for-medium ~ .off-canvas-content {
      margin-top: 250px; }
  .position-bottom.reveal-for-medium {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-bottom.reveal-for-medium .close-button {
      display: none; }
    .off-canvas-content .position-bottom.reveal-for-medium {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-bottom {
      margin-bottom: 250px; }
    .position-bottom.reveal-for-medium ~ .off-canvas-content {
      margin-bottom: 250px; } }

@media print, screen and (min-width: 64em) {
  .position-left.reveal-for-large {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-left.reveal-for-large .close-button {
      display: none; }
    .off-canvas-content .position-left.reveal-for-large {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-left {
      margin-left: 250px; }
    .position-left.reveal-for-large ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-large {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-right.reveal-for-large .close-button {
      display: none; }
    .off-canvas-content .position-right.reveal-for-large {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-right {
      margin-right: 250px; }
    .position-right.reveal-for-large ~ .off-canvas-content {
      margin-right: 250px; }
  .position-top.reveal-for-large {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-top.reveal-for-large .close-button {
      display: none; }
    .off-canvas-content .position-top.reveal-for-large {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-top {
      margin-top: 250px; }
    .position-top.reveal-for-large ~ .off-canvas-content {
      margin-top: 250px; }
  .position-bottom.reveal-for-large {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-bottom.reveal-for-large .close-button {
      display: none; }
    .off-canvas-content .position-bottom.reveal-for-large {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-bottom {
      margin-bottom: 250px; }
    .position-bottom.reveal-for-large ~ .off-canvas-content {
      margin-bottom: 250px; } }

@media screen and (min-width: 75em) {
  .position-left.reveal-for-xlarge {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-left.reveal-for-xlarge .close-button {
      display: none; }
    .off-canvas-content .position-left.reveal-for-xlarge {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-left {
      margin-left: 250px; }
    .position-left.reveal-for-xlarge ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-xlarge {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-right.reveal-for-xlarge .close-button {
      display: none; }
    .off-canvas-content .position-right.reveal-for-xlarge {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-right {
      margin-right: 250px; }
    .position-right.reveal-for-xlarge ~ .off-canvas-content {
      margin-right: 250px; }
  .position-top.reveal-for-xlarge {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-top.reveal-for-xlarge .close-button {
      display: none; }
    .off-canvas-content .position-top.reveal-for-xlarge {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-top {
      margin-top: 250px; }
    .position-top.reveal-for-xlarge ~ .off-canvas-content {
      margin-top: 250px; }
  .position-bottom.reveal-for-xlarge {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-bottom.reveal-for-xlarge .close-button {
      display: none; }
    .off-canvas-content .position-bottom.reveal-for-xlarge {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-bottom {
      margin-bottom: 250px; }
    .position-bottom.reveal-for-xlarge ~ .off-canvas-content {
      margin-bottom: 250px; } }

@media screen and (min-width: 90em) {
  .position-left.reveal-for-xxlarge {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-left.reveal-for-xxlarge .close-button {
      display: none; }
    .off-canvas-content .position-left.reveal-for-xxlarge {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-left {
      margin-left: 250px; }
    .position-left.reveal-for-xxlarge ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-xxlarge {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-right.reveal-for-xxlarge .close-button {
      display: none; }
    .off-canvas-content .position-right.reveal-for-xxlarge {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-right {
      margin-right: 250px; }
    .position-right.reveal-for-xxlarge ~ .off-canvas-content {
      margin-right: 250px; }
  .position-top.reveal-for-xxlarge {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-top.reveal-for-xxlarge .close-button {
      display: none; }
    .off-canvas-content .position-top.reveal-for-xxlarge {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-top {
      margin-top: 250px; }
    .position-top.reveal-for-xxlarge ~ .off-canvas-content {
      margin-top: 250px; }
  .position-bottom.reveal-for-xxlarge {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-bottom.reveal-for-xxlarge .close-button {
      display: none; }
    .off-canvas-content .position-bottom.reveal-for-xxlarge {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-bottom {
      margin-bottom: 250px; }
    .position-bottom.reveal-for-xxlarge ~ .off-canvas-content {
      margin-bottom: 250px; } }

@media print, screen and (min-width: 40em) {
  .off-canvas.in-canvas-for-medium {
    visibility: visible;
    height: auto;
    position: static;
    background: none;
    width: auto;
    overflow: visible;
    transition: none; }
    .off-canvas.in-canvas-for-medium.position-left, .off-canvas.in-canvas-for-medium.position-right, .off-canvas.in-canvas-for-medium.position-top, .off-canvas.in-canvas-for-medium.position-bottom {
      box-shadow: none;
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas.in-canvas-for-medium .close-button {
      display: none; } }

@media print, screen and (min-width: 64em) {
  .off-canvas.in-canvas-for-large {
    visibility: visible;
    height: auto;
    position: static;
    background: none;
    width: auto;
    overflow: visible;
    transition: none; }
    .off-canvas.in-canvas-for-large.position-left, .off-canvas.in-canvas-for-large.position-right, .off-canvas.in-canvas-for-large.position-top, .off-canvas.in-canvas-for-large.position-bottom {
      box-shadow: none;
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas.in-canvas-for-large .close-button {
      display: none; } }

@media screen and (min-width: 75em) {
  .off-canvas.in-canvas-for-xlarge {
    visibility: visible;
    height: auto;
    position: static;
    background: none;
    width: auto;
    overflow: visible;
    transition: none; }
    .off-canvas.in-canvas-for-xlarge.position-left, .off-canvas.in-canvas-for-xlarge.position-right, .off-canvas.in-canvas-for-xlarge.position-top, .off-canvas.in-canvas-for-xlarge.position-bottom {
      box-shadow: none;
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas.in-canvas-for-xlarge .close-button {
      display: none; } }

@media screen and (min-width: 90em) {
  .off-canvas.in-canvas-for-xxlarge {
    visibility: visible;
    height: auto;
    position: static;
    background: none;
    width: auto;
    overflow: visible;
    transition: none; }
    .off-canvas.in-canvas-for-xxlarge.position-left, .off-canvas.in-canvas-for-xxlarge.position-right, .off-canvas.in-canvas-for-xxlarge.position-top, .off-canvas.in-canvas-for-xxlarge.position-bottom {
      box-shadow: none;
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas.in-canvas-for-xxlarge .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-previous, .orbit-next {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 10;
  padding: 1rem;
  color: #fefefe; }
  [data-whatinput='mouse'] .orbit-previous, [data-whatinput='mouse'] .orbit-next {
    outline: 0; }
  .orbit-previous:hover, .orbit-next:hover, .orbit-previous:active, .orbit-next:active, .orbit-previous:focus, .orbit-next: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: ' ';
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .pagination::after {
    clear: both; }
  .pagination li {
    margin-right: 0.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: 40em) {
      .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: #877148;
    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: '\2026';
    color: #0a0a0a; }

.pagination-previous a::before,
.pagination-previous.disabled::before {
  display: inline-block;
  margin-right: 0.5rem;
  content: '\00ab'; }

.pagination-next a::after,
.pagination-next.disabled::after {
  display: inline-block;
  margin-left: 0.5rem;
  content: '\00bb'; }

.progress {
  height: 1rem;
  margin-bottom: 1rem;
  border-radius: 0;
  background-color: #cacaca; }
  .progress.primary .progress-meter {
    background-color: #877148; }
  .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: #877148; }

.progress-meter-text {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  position: absolute;
  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;
      -ms-user-select: none;
          user-select: none;
  -ms-touch-action: none;
      touch-action: none; }

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

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

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

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

.sticky-container {
  position: relative; }

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

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

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

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

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

.reveal {
  z-index: 1006;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  display: none;
  padding: 1rem;
  border: 1px solid #cacaca;
  border-radius: 0;
  background-color: #fefefe;
  position: relative;
  top: 100px;
  margin-right: auto;
  margin-left: auto;
  overflow-y: auto; }
  [data-whatinput='mouse'] .reveal {
    outline: 0; }
  @media print, screen and (min-width: 40em) {
    .reveal {
      min-height: 0; } }
  .reveal .column {
    min-width: 0; }
  .reveal > :last-child {
    margin-bottom: 0; }
  @media print, screen and (min-width: 40em) {
    .reveal {
      width: 600px;
      max-width: 75rem; } }
  .reveal.collapse {
    padding: 0; }
  @media print, screen and (min-width: 40em) {
    .reveal.tiny {
      width: 30%;
      max-width: 75rem; } }
  @media print, screen and (min-width: 40em) {
    .reveal.small {
      width: 50%;
      max-width: 75rem; } }
  @media print, screen and (min-width: 40em) {
    .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 screen and (max-width: 39.99875em) {
    .reveal {
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      width: 100%;
      max-width: none;
      height: 100%;
      min-height: 100%;
      margin-left: 0;
      border: 0;
      border-radius: 0; } }
  .reveal.without-overlay {
    position: fixed; }

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

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

.switch-paddle {
  position: relative;
  display: block;
  width: 4rem;
  height: 2rem;
  border-radius: 0;
  background: #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;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    border-radius: 0;
    background: #fefefe;
    transition: all 0.25s ease-out;
    content: ''; }
  input:checked ~ .switch-paddle {
    background: #877148; }
    input:checked ~ .switch-paddle::after {
      left: 2.25rem; }
  [data-whatinput='mouse'] input:focus ~ .switch-paddle {
    outline: 0; }

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

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

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

.switch.tiny {
  height: 1.5rem; }
  .switch.tiny .switch-paddle {
    width: 3rem;
    height: 1.5rem;
    font-size: 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 #f1f1f1;
    background-color: #fefefe; }
  caption {
    padding: 0.5rem 0.625rem 0.625rem;
    font-weight: bold; }
  thead {
    background: #f8f8f8;
    color: #0a0a0a; }
  tfoot {
    background: #f1f1f1;
    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: #f1f1f1; }
  table.unstriped tbody {
    background-color: #fefefe; }
    table.unstriped tbody tr {
      border-bottom: 0;
      border-bottom: 1px solid #f1f1f1;
      background-color: #fefefe; }

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

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

table.hover thead tr:hover {
  background-color: #f3f3f3; }

table.hover tfoot tr:hover {
  background-color: #ececec; }

table.hover tbody tr:hover {
  background-color: #f9f9f9; }

table.hover:not(.unstriped) tr:nth-of-type(even):hover {
  background-color: #ececec; }

.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: ' ';
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .tabs::after {
    clear: both; }

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

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

.tabs.primary {
  background: #877148; }
  .tabs.primary > li > a {
    color: #fefefe; }
    .tabs.primary > li > a:hover, .tabs.primary > li > a:focus {
      background: #806b44; }

.tabs-title {
  float: left; }
  .tabs-title > a {
    display: block;
    padding: 1.25rem 1.5rem;
    font-size: 0.75rem;
    line-height: 1;
    color: #877148; }
    [data-whatinput='mouse'] .tabs-title > a {
      outline: 0; }
    .tabs-title > a:hover {
      background: #fefefe;
      color: #74613e; }
    .tabs-title > a:focus, .tabs-title > a[aria-selected='true'] {
      background: #e6e6e6;
      color: #877148; }

.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(135, 113, 72, 0.5); }
  a.thumbnail image {
    box-shadow: none; }

.title-bar {
  /* padding: $titlebar-padding;*/
  background: #ffffff;
  color: #fefefe;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .title-bar .menu-icon {
    /*margin-left: $titlebar-icon-spacing;
      margin-right: $titlebar-icon-spacing;
      margin:1rem;*/ }

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

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

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

.has-tip {
  position: relative;
  display: inline-block;
  border-bottom: dotted 1px #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: inset 0.75rem;
    content: '';
    border-top-width: 0;
    border-bottom-style: solid;
    border-color: transparent transparent #0a0a0a;
    bottom: 100%; }
  .tooltip.bottom.align-center::before {
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%); }
  .tooltip.top::before {
    display: block;
    width: 0;
    height: 0;
    border: inset 0.75rem;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #0a0a0a transparent transparent;
    top: 100%;
    bottom: auto; }
  .tooltip.top.align-center::before {
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%); }
  .tooltip.left::before {
    display: block;
    width: 0;
    height: 0;
    border: inset 0.75rem;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #0a0a0a;
    left: 100%; }
  .tooltip.left.align-center::before {
    bottom: auto;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }
  .tooltip.right::before {
    display: block;
    width: 0;
    height: 0;
    border: inset 0.75rem;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #0a0a0a transparent transparent;
    right: 100%;
    left: auto; }
  .tooltip.right.align-center::before {
    bottom: auto;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }
  .tooltip.align-top::before {
    bottom: auto;
    top: 10%; }
  .tooltip.align-bottom::before {
    bottom: 10%;
    top: auto; }
  .tooltip.align-left::before {
    left: 10%;
    right: auto; }
  .tooltip.align-right::before {
    left: auto;
    right: 10%; }

.top-bar {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  max-width: none;
  margin: 0 auto;
  padding: 0rem;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  .top-bar,
  .top-bar ul {
    background-color: #fefefe;
    text-transform: uppercase;
    font-size: 1.1rem; }
  .top-bar input {
    max-width: 200px;
    margin-right: 1rem; }
  .top-bar .input-group-field {
    width: 100%;
    margin-right: 0; }
  .top-bar input.button, .top-bar .wp-block-button input.wp-block-button__link, .wp-block-button .top-bar input.wp-block-button__link {
    width: auto; }
  .top-bar .top-bar-left,
  .top-bar .top-bar-right {
    -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%; }
  @media print, screen and (min-width: 40em) {
    .top-bar {
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap; }
      .top-bar .top-bar-left {
        -webkit-flex: 0 1 auto;
            -ms-flex: 0 1 auto;
                flex: 0 1 auto;
        margin-right: auto; }
      .top-bar .top-bar-right {
        -webkit-flex: 1 1 auto;
            -ms-flex: 1 1 auto;
                flex: 1 1 auto;
        margin-left: auto; } }
  @media screen and (max-width: 63.99875em) {
    .top-bar.stacked-for-medium {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .top-bar.stacked-for-medium .top-bar-left,
      .top-bar.stacked-for-medium .top-bar-right {
        -webkit-flex: 0 0 100%;
            -ms-flex: 0 0 100%;
                flex: 0 0 100%;
        max-width: 100%; } }
  @media screen and (max-width: 74.99875em) {
    .top-bar.stacked-for-large {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .top-bar.stacked-for-large .top-bar-left,
      .top-bar.stacked-for-large .top-bar-right {
        -webkit-flex: 0 0 100%;
            -ms-flex: 0 0 100%;
                flex: 0 0 100%;
        max-width: 100%; } }
  @media screen and (max-width: 89.99875em) {
    .top-bar.stacked-for-xlarge {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .top-bar.stacked-for-xlarge .top-bar-left,
      .top-bar.stacked-for-xlarge .top-bar-right {
        -webkit-flex: 0 0 100%;
            -ms-flex: 0 0 100%;
                flex: 0 0 100%;
        max-width: 100%; } }
  .top-bar.stacked-for-xxlarge {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .top-bar.stacked-for-xxlarge .top-bar-left,
    .top-bar.stacked-for-xxlarge .top-bar-right {
      -webkit-flex: 0 0 100%;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      max-width: 100%; }

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

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

.hide {
  display: none !important; }

.invisible {
  visibility: hidden; }

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

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

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

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

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

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

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

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

@media 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; } }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media screen and (min-width: 75em) {
  .xlarge-order-1 {
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .xlarge-order-2 {
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; }
  .xlarge-order-3 {
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3; }
  .xlarge-order-4 {
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4; }
  .xlarge-order-5 {
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5; }
  .xlarge-order-6 {
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6; } }

@media screen and (min-width: 90em) {
  .xxlarge-order-1 {
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .xxlarge-order-2 {
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; }
  .xxlarge-order-3 {
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3; }
  .xxlarge-order-4 {
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4; }
  .xxlarge-order-5 {
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5; }
  .xxlarge-order-6 {
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6; } }

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

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

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

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

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

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

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

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

@media print, screen and (min-width: 40em) {
  .medium-flex-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .medium-flex-child-auto {
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .medium-flex-child-grow {
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .medium-flex-child-shrink {
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .medium-flex-dir-row {
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .medium-flex-dir-row-reverse {
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .medium-flex-dir-column {
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .medium-flex-dir-column-reverse {
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

@media print, screen and (min-width: 64em) {
  .large-flex-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .large-flex-child-auto {
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .large-flex-child-grow {
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .large-flex-child-shrink {
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .large-flex-dir-row {
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .large-flex-dir-row-reverse {
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .large-flex-dir-column {
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .large-flex-dir-column-reverse {
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

@media screen and (min-width: 75em) {
  .xlarge-flex-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .xlarge-flex-child-auto {
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .xlarge-flex-child-grow {
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .xlarge-flex-child-shrink {
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .xlarge-flex-dir-row {
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .xlarge-flex-dir-row-reverse {
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .xlarge-flex-dir-column {
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .xlarge-flex-dir-column-reverse {
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

@media screen and (min-width: 90em) {
  .xxlarge-flex-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .xxlarge-flex-child-auto {
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .xxlarge-flex-child-grow {
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .xxlarge-flex-child-shrink {
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .xxlarge-flex-dir-row {
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .xxlarge-flex-dir-row-reverse {
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .xxlarge-flex-dir-column {
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .xxlarge-flex-dir-column-reverse {
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.shake {
  -webkit-animation-name: shake-7;
          animation-name: shake-7; }

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

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

.spin-cw {
  -webkit-animation-name: spin-cw-1turn;
          animation-name: spin-cw-1turn; }

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

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

.spin-ccw {
  -webkit-animation-name: spin-ccw-1turn;
          animation-name: spin-ccw-1turn; }

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

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

.wiggle {
  -webkit-animation-name: wiggle-7deg;
          animation-name: wiggle-7deg; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

/*
  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.is-open {
  top: 2.875rem; }
  @media screen and (min-width: 48.9375em) {
    body.admin-bar.offcanvas .off-canvas.is-open {
      top: 2rem; } }

body {
  color: #1d1d1d;
  letter-spacing: 0rem;
  /* Common Featured Header Styles */
  /* General Styles for Main Container */
  /*General Styles for Exhibitions */
  /* End Main Exhibition Styles */
  /* Styles for ONLY the Current Exhibition */
  /* Styles for Current/Upcoming Exhibition Page */
  /* UPCOMING EXHIBITIONS PAGE */
  /* End Upcoming Exhibitions */
  /* GALLERY EVENTS CATEGORY PAGE */
  /* end gallery events category page */
  /* START PUBLICATIONS PAGE */
  /* end publications list*/
  /* PAST EXHIBITION SINGLE PAGE TEMPLATE */
  /* end past exhibition single page */
  /* PAST EXHIBITION CATEGORY LISTING PAGE */
  /* end past exhibitions category page */
  /* PRESS CATEGORY PAGE */
  /* End press category page */
  /* START VISITOR INFORMATION PAGE */
  /* End Visitor Information page */
  /* START RESEARCH AND LEARN PAGE */
  /* START JOIN US */
  /* end join us page */
  /* START SINGLE COLLECTION PAGE */
  /* End single collection page */
  /* START COLLECTION CATEGORY PAGE */
  /* Grid for 1 off pages */
  /* End Grid for 1 Off Pages */
  /* HOME PAGE STYLES */ }
  body .button, body .wp-block-button .wp-block-button__link, .wp-block-button body .wp-block-button__link {
    background-color: #1d1d1d;
    margin-top: 1rem;
    padding: 0.5rem 1rem;
    text-transform: uppercase;
    font-family: 'bebas_neuebold', sans-serif;
    font-size: 1.2rem;
    color: #fff;
    letter-spacing: 0.2rem; }
    body .button.yellow, body .wp-block-button .yellow.wp-block-button__link, .wp-block-button body .yellow.wp-block-button__link {
      background-color: #ffe100;
      color: #1d1d1d; }
      body .button.yellow:hover, body .wp-block-button .yellow.wp-block-button__link:hover, .wp-block-button body .yellow.wp-block-button__link:hover, body .button.yellow:focus, body .wp-block-button .yellow.wp-block-button__link:focus, .wp-block-button body .yellow.wp-block-button__link:focus {
        background-color: #1d1d1d;
        color: #fff; }
    body .button:hover, body .wp-block-button .wp-block-button__link:hover, .wp-block-button body .wp-block-button__link:hover {
      color: #1d1d1d; }
  body .wp-caption > figcaption {
    max-width: 100%;
    font-size: 0.8rem;
    color: #999;
    padding: 0.25rem 0; }
  body p.wp-caption-text {
    font-size: 90%;
    color: #666;
    padding: 0.625rem 0; }
  body .alignleft {
    float: left;
    padding-right: 1rem;
    margin: 0; }
  body .alignright {
    float: right;
    padding-left: 1rem;
    margin: 0; }
  body .aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto; }
  body .gallery {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    margin-right: -0.625rem;
    margin-left: -0.625rem; }
    @media print, screen and (min-width: 40em) {
      body .gallery {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    body .gallery.gallery-columns-1 > .gallery-item {
      width: calc(50% - 1.25rem);
      margin-right: 0.625rem;
      margin-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      body .gallery.gallery-columns-1 > .gallery-item {
        width: calc(25% - 1.875rem);
        margin-right: 0.9375rem;
        margin-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
      body .gallery.gallery-columns-1 > .gallery-item {
        width: calc(100% - 1.875rem);
        margin-right: 0.9375rem;
        margin-left: 0.9375rem; } }
    body .gallery.gallery-columns-2 > .gallery-item {
      width: calc(50% - 1.25rem);
      margin-right: 0.625rem;
      margin-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      body .gallery.gallery-columns-2 > .gallery-item {
        width: calc(25% - 1.875rem);
        margin-right: 0.9375rem;
        margin-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
      body .gallery.gallery-columns-2 > .gallery-item {
        width: calc(50% - 1.875rem);
        margin-right: 0.9375rem;
        margin-left: 0.9375rem; } }
    body .gallery.gallery-columns-3 > .gallery-item {
      width: calc(50% - 1.25rem);
      margin-right: 0.625rem;
      margin-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      body .gallery.gallery-columns-3 > .gallery-item {
        width: calc(25% - 1.875rem);
        margin-right: 0.9375rem;
        margin-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
      body .gallery.gallery-columns-3 > .gallery-item {
        width: calc(33.33333% - 1.875rem);
        margin-right: 0.9375rem;
        margin-left: 0.9375rem; } }
    body .gallery.gallery-columns-4 > .gallery-item {
      width: calc(50% - 1.25rem);
      margin-right: 0.625rem;
      margin-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      body .gallery.gallery-columns-4 > .gallery-item {
        width: calc(25% - 1.875rem);
        margin-right: 0.9375rem;
        margin-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
      body .gallery.gallery-columns-4 > .gallery-item {
        width: calc(25% - 1.875rem);
        margin-right: 0.9375rem;
        margin-left: 0.9375rem; } }
    body .gallery.gallery-columns-5 > .gallery-item {
      width: calc(50% - 1.25rem);
      margin-right: 0.625rem;
      margin-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      body .gallery.gallery-columns-5 > .gallery-item {
        width: calc(25% - 1.875rem);
        margin-right: 0.9375rem;
        margin-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
      body .gallery.gallery-columns-5 > .gallery-item {
        width: calc(20% - 1.875rem);
        margin-right: 0.9375rem;
        margin-left: 0.9375rem; } }
    body .gallery.gallery-columns-6 > .gallery-item {
      width: calc(50% - 1.25rem);
      margin-right: 0.625rem;
      margin-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      body .gallery.gallery-columns-6 > .gallery-item {
        width: calc(25% - 1.875rem);
        margin-right: 0.9375rem;
        margin-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
      body .gallery.gallery-columns-6 > .gallery-item {
        width: calc(16.66667% - 1.875rem);
        margin-right: 0.9375rem;
        margin-left: 0.9375rem; } }
    body .gallery.gallery-columns-7 > .gallery-item {
      width: calc(50% - 1.25rem);
      margin-right: 0.625rem;
      margin-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      body .gallery.gallery-columns-7 > .gallery-item {
        width: calc(25% - 1.875rem);
        margin-right: 0.9375rem;
        margin-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
      body .gallery.gallery-columns-7 > .gallery-item {
        width: calc(14.28571% - 1.875rem);
        margin-right: 0.9375rem;
        margin-left: 0.9375rem; } }
    body .gallery.gallery-columns-8 > .gallery-item {
      width: calc(50% - 1.25rem);
      margin-right: 0.625rem;
      margin-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      body .gallery.gallery-columns-8 > .gallery-item {
        width: calc(25% - 1.875rem);
        margin-right: 0.9375rem;
        margin-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
      body .gallery.gallery-columns-8 > .gallery-item {
        width: calc(12.5% - 1.875rem);
        margin-right: 0.9375rem;
        margin-left: 0.9375rem; } }
    body .gallery.gallery-columns-9 > .gallery-item {
      width: calc(50% - 1.25rem);
      margin-right: 0.625rem;
      margin-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      body .gallery.gallery-columns-9 > .gallery-item {
        width: calc(25% - 1.875rem);
        margin-right: 0.9375rem;
        margin-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
      body .gallery.gallery-columns-9 > .gallery-item {
        width: calc(11.11111% - 1.875rem);
        margin-right: 0.9375rem;
        margin-left: 0.9375rem; } }
    body .gallery .gallery-icon > a {
      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;
      transition: box-shadow 200ms ease-out; }
      body .gallery .gallery-icon > a:hover, body .gallery .gallery-icon > a:focus {
        box-shadow: 0 0 6px 1px rgba(135, 113, 72, 0.5); }
      body .gallery .gallery-icon > a image {
        box-shadow: none; }
    body .gallery .gallery-icon > img {
      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; }
  body .site-desktop-title a #desktopLogo {
    max-width: 250px;
    margin-right: 1rem; }
  body #top-bar-right-content {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-align-content: center;
        -ms-flex-line-pack: center;
            align-content: center;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
    body #top-bar-right-content li.is-active .submenu-toggle {
      background-color: #877148; }
    body #top-bar-right-content li.is-active ::after {
      border-color: #fff transparent transparent; }
    body #top-bar-right-content li.is-active li.is-active a {
      background-color: transparent;
      color: #877148; }
  body .site-header {
    font-family: 'bebas_neuebold', sans-serif; }
    body .site-header .site-title-bar #mobileTopRow {
      max-width: 75rem;
      margin-right: auto;
      margin-left: auto; }
      body .site-header .site-title-bar #mobileTopRow::before, body .site-header .site-title-bar #mobileTopRow::after {
        display: table;
        content: ' ';
        -webkit-flex-basis: 0;
            -ms-flex-preferred-size: 0;
                flex-basis: 0;
        -webkit-order: 1;
            -ms-flex-order: 1;
                order: 1; }
      body .site-header .site-title-bar #mobileTopRow::after {
        clear: both; }
      body .site-header .site-title-bar #mobileTopRow .menuIconWrapper {
        width: 16.66667%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        background-color: #2f2f2f;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center; }
        @media print, screen and (min-width: 40em) {
          body .site-header .site-title-bar #mobileTopRow .menuIconWrapper {
            padding-right: 0.9375rem;
            padding-left: 0.9375rem; } }
        body .site-header .site-title-bar #mobileTopRow .menuIconWrapper, body .site-header .site-title-bar #mobileTopRow .menuIconWrapper:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body .site-header .site-title-bar #mobileTopRow .menuIconWrapper:last-child:not(:first-child) {
          float: right; }
        body .site-header .site-title-bar #mobileTopRow .menuIconWrapper .menu-icon {
          background-color: #2f2f2f; }
      body .site-header .site-title-bar #mobileTopRow #header-widgets-mobile {
        width: 83.33333%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        margin-left: auto;
        background-color: #ffe100;
        text-align: center;
        color: #2f2f2f;
        font-size: 1.2rem; }
        @media print, screen and (min-width: 40em) {
          body .site-header .site-title-bar #mobileTopRow #header-widgets-mobile {
            padding-right: 0.9375rem;
            padding-left: 0.9375rem; } }
        body .site-header .site-title-bar #mobileTopRow #header-widgets-mobile, body .site-header .site-title-bar #mobileTopRow #header-widgets-mobile:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body .site-header .site-title-bar #mobileTopRow #header-widgets-mobile:last-child:not(:first-child) {
          float: right; }
        @media print, screen and (min-width: 40em) {
          body .site-header .site-title-bar #mobileTopRow #header-widgets-mobile {
            display: none; } }
        body .site-header .site-title-bar #mobileTopRow #header-widgets-mobile .widget_custom_html {
          padding: 1rem 0rem; }
          body .site-header .site-title-bar #mobileTopRow #header-widgets-mobile .widget_custom_html #businessHours img {
            max-width: 30px;
            height: auto; }
          body .site-header .site-title-bar #mobileTopRow #header-widgets-mobile .widget_custom_html #businessHours span {
            padding-left: 1rem;
            display: inline-block;
            line-height: 1.1rem;
            margin-top: 0.25rem; }
            body .site-header .site-title-bar #mobileTopRow #header-widgets-mobile .widget_custom_html #businessHours span br {
              display: none; }
    body .site-header .site-title-bar #mobileBottomRow .title-bar-title {
      width: 100%;
      text-align: center; }
      body .site-header .site-title-bar #mobileBottomRow .title-bar-title #mobileLogo {
        max-width: 300px;
        padding: 1.5rem; }
        @media screen and (max-width: 39.99875em) {
          body .site-header .site-title-bar #mobileBottomRow .title-bar-title #mobileLogo {
            max-width: 250px;
            padding: 1rem; } }
    @media screen and (min-width: 90em) {
      body .site-header .top-bar .top-bar-left {
        margin-left: 10rem; } }
    @media screen and (min-width: 75em) and (max-width: 89.99875em) {
      body .site-header .top-bar .top-bar-left {
        margin-left: 1rem; } }
    @media screen and (min-width: 64em) {
      body .site-header .top-bar #menu-main-menu {
        margin-left: 2rem; } }
    @media screen and (min-width: 40em) and (max-width: 63.99875em) {
      body .site-header .top-bar #menu-main-menu {
        margin-left: 1rem; } }
    body .site-header .top-bar #menu-main-menu .is-dropdown-submenu-parent .is-dropdown-submenu {
      font-family: 'robotoregular',sans-serif;
      font-size: 0.9rem;
      text-transform: none; }
    body .site-header .top-bar #header-widgets-desktop {
      margin-left: auto;
      color: #2f2f2f;
      padding: 0 1rem;
      background-color: #ffe100;
      text-align: center;
      display: none;
      font-size: 1rem; }
      @media print, screen and (min-width: 40em) {
        body .site-header .top-bar #header-widgets-desktop {
          display: inline-block; } }
      body .site-header .top-bar #header-widgets-desktop .widget_custom_html {
        padding: 1rem 0rem; }
        body .site-header .top-bar #header-widgets-desktop .widget_custom_html #businessHours img {
          max-width: 36px;
          height: auto; }
        body .site-header .top-bar #header-widgets-desktop .widget_custom_html #businessHours span {
          display: block;
          line-height: 1.1rem;
          margin-top: 0.25rem; }
  @media screen and (max-width: 39.99875em) {
    body .featured-hero .featured-hero {
      min-height: 25rem; } }
  @media screen and (min-width: 40em) {
    body .featured-hero .featured-hero {
      min-height: 20rem; } }
  body .featured-hero .pageTitleContainer {
    display: table;
    width: 100%;
    height: 100%; }
    @media screen and (max-width: 39.99875em) {
      body .featured-hero .pageTitleContainer {
        position: relative; } }
    body .featured-hero .pageTitleContainer .pageTitle {
      /*@include breakpoint(small only){
					position:absolute;
					bottom:0%;
					width:100%;
					@include grid-row;
				}
				@include breakpoint(medium up){*/
      display: table-cell;
      vertical-align: middle;
      max-width: 75rem;
      margin-right: auto;
      margin-left: auto;
      /*}*/ }
      body .featured-hero .pageTitleContainer .pageTitle::before, body .featured-hero .pageTitleContainer .pageTitle::after {
        display: table;
        content: ' ';
        -webkit-flex-basis: 0;
            -ms-flex-preferred-size: 0;
                flex-basis: 0;
        -webkit-order: 1;
            -ms-flex-order: 1;
                order: 1; }
      body .featured-hero .pageTitleContainer .pageTitle::after {
        clear: both; }
      body .featured-hero .pageTitleContainer .pageTitle .titleContainer {
        margin-right: auto;
        margin-left: auto;
        text-align: center; }
        @media screen and (min-width: 64em) {
          body .featured-hero .pageTitleContainer .pageTitle .titleContainer {
            width: 50%;
            float: left;
            padding-right: 0.625rem;
            padding-left: 0.625rem; } }
  @media screen and (min-width: 64em) and (min-width: 40em) {
    body .featured-hero .pageTitleContainer .pageTitle .titleContainer {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
        @media screen and (min-width: 64em) {
            body .featured-hero .pageTitleContainer .pageTitle .titleContainer, body .featured-hero .pageTitleContainer .pageTitle .titleContainer:last-child:not(:first-child) {
              float: left;
              clear: none; }
            body .featured-hero .pageTitleContainer .pageTitle .titleContainer:last-child:not(:first-child) {
              float: right; } }
        @media screen and (min-width: 40em) and (max-width: 63.99875em) {
          body .featured-hero .pageTitleContainer .pageTitle .titleContainer {
            width: 66.66667%;
            float: left;
            padding-right: 0.625rem;
            padding-left: 0.625rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.99875em) and (min-width: 40em) {
    body .featured-hero .pageTitleContainer .pageTitle .titleContainer {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
        @media screen and (min-width: 40em) and (max-width: 63.99875em) {
            body .featured-hero .pageTitleContainer .pageTitle .titleContainer, body .featured-hero .pageTitleContainer .pageTitle .titleContainer:last-child:not(:first-child) {
              float: left;
              clear: none; }
            body .featured-hero .pageTitleContainer .pageTitle .titleContainer:last-child:not(:first-child) {
              float: right; } }
        @media screen and (max-width: 39.99875em) {
          body .featured-hero .pageTitleContainer .pageTitle .titleContainer {
            width: 100%;
            float: left;
            padding-right: 0.625rem;
            padding-left: 0.625rem; } }
  @media screen and (max-width: 39.99875em) and (min-width: 40em) {
    body .featured-hero .pageTitleContainer .pageTitle .titleContainer {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
        @media screen and (max-width: 39.99875em) {
            body .featured-hero .pageTitleContainer .pageTitle .titleContainer, body .featured-hero .pageTitleContainer .pageTitle .titleContainer:last-child:not(:first-child) {
              float: left;
              clear: none; }
            body .featured-hero .pageTitleContainer .pageTitle .titleContainer:last-child:not(:first-child) {
              float: right; } }
        body .featured-hero .pageTitleContainer .pageTitle .titleContainer, body .featured-hero .pageTitleContainer .pageTitle .titleContainer:last-child:not(:first-child) {
          float: none;
          clear: both; }
        body .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryCategoryContainer {
          width: 100%;
          text-align: left; }
          body .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryCategoryContainer .category {
            background-color: #ffe100;
            text-transform: uppercase;
            font-family: 'bebas_neuebold','sans-serif';
            line-height: 1;
            padding: 0.25rem 0.5rem;
            display: inline-block; }
        body .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryTitle {
          display: inline-block;
          background-color: #fff;
          margin: 0 auto;
          color: #1d1d1d;
          font-size: 4rem;
          word-wrap: anywhere;
          line-height: 0.8;
          padding: 1rem; }
          @media screen and (max-width: 39.99875em) {
            body .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryTitle {
              padding-left: 0.5rem; } }
        body .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryDate {
          width: 100%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem;
          background-color: #fff;
          text-align: center;
          padding-bottom: 1rem;
          text-transform: uppercase;
          font-family: 'bebas_neuebold','sans-serif';
          color: #877148;
          font-size: 2rem;
          line-height: 0.9;
          padding-top: 0.25rem;
          padding-bottom: 0.25rem; }
          @media print, screen and (min-width: 40em) {
            body .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryDate {
              padding-right: 0.9375rem;
              padding-left: 0.9375rem; } }
          body .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryDate, body .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryDate:last-child:not(:first-child) {
            float: left;
            clear: none; }
          body .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryDate:last-child:not(:first-child) {
            float: right; }
          @media screen and (max-width: 63.99875em) {
            body .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryDate {
              font-size: 1.5rem; } }
          @media screen and (max-width: 39.99875em) {
            body .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryDate {
              text-align: left; } }
          body .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryDate span {
            display: inline-block;
            line-height: 0.5;
            width: 100%; }
            @media screen and (max-width: 39.99875em) {
              body .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryDate span {
                padding-left: 3rem;
                text-indent: -3rem;
                color: #1d1d1d; } }
            body .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryDate span img {
              max-width: 38px;
              height: auto; }
  body .featured-hero#mainPageHeader h1.entryTitle {
    font-size: 3rem; }
    @media screen and (max-width: 39.99875em) {
      body .featured-hero#mainPageHeader h1.entryTitle {
        font-size: 2rem; } }
  body .main-container {
    max-width: 75rem;
    padding-bottom: 4rem; }
    body .main-container .main-grid {
      margin-top: 2rem; }
      body .main-container .main-grid .main-content {
        width: 100%;
        /* Intro text for pages */ }
        body .main-container .main-grid .main-content .wp-block-gallery {
          margin-left: 0px; }
        body .main-container .main-grid .main-content .introTextContainer {
          max-width: 75rem;
          margin-right: auto;
          margin-left: auto;
          padding-bottom: 3.5rem; }
          body .main-container .main-grid .main-content .introTextContainer::before, body .main-container .main-grid .main-content .introTextContainer::after {
            display: table;
            content: ' ';
            -webkit-flex-basis: 0;
                -ms-flex-preferred-size: 0;
                    flex-basis: 0;
            -webkit-order: 1;
                -ms-flex-order: 1;
                    order: 1; }
          body .main-container .main-grid .main-content .introTextContainer::after {
            clear: both; }
          body .main-container .main-grid .main-content .introTextContainer .introText {
            font-size: 1.1rem;
            text-align: center; }
            @media screen and (min-width: 40em) {
              body .main-container .main-grid .main-content .introTextContainer .introText {
                width: 66.66667%;
                float: left;
                padding-right: 0;
                padding-left: 0;
                margin-right: auto;
                margin-left: auto; }
                body .main-container .main-grid .main-content .introTextContainer .introText, body .main-container .main-grid .main-content .introTextContainer .introText:last-child:not(:first-child) {
                  float: left;
                  clear: none; }
                body .main-container .main-grid .main-content .introTextContainer .introText:last-child:not(:first-child) {
                  float: right; }
                body .main-container .main-grid .main-content .introTextContainer .introText, body .main-container .main-grid .main-content .introTextContainer .introText:last-child:not(:first-child) {
                  float: none;
                  clear: both; } }
            @media screen and (max-width: 39.99875em) {
              body .main-container .main-grid .main-content .introTextContainer .introText {
                width: 100%;
                float: left;
                padding-right: 0;
                padding-left: 0; }
                body .main-container .main-grid .main-content .introTextContainer .introText, body .main-container .main-grid .main-content .introTextContainer .introText:last-child:not(:first-child) {
                  float: left;
                  clear: none; }
                body .main-container .main-grid .main-content .introTextContainer .introText:last-child:not(:first-child) {
                  float: right; } }
            body .main-container .main-grid .main-content .introTextContainer .introText p {
              margin-bottom: 0rem; }
  body .exhibition .main-content {
    width: 100%;
    margin: 0; }
    body .exhibition .main-content h2 {
      font-size: 1.5rem;
      line-height: 0.9;
      margin-top: 2rem; }
    body .exhibition .main-content h2:first-of-type {
      margin-top: 0rem;
      margin-bottom: 0.25rem; }
    body .exhibition .main-content article .articleTop {
      max-width: 75rem;
      margin-right: auto;
      margin-left: auto; }
      body .exhibition .main-content article .articleTop::before, body .exhibition .main-content article .articleTop::after {
        display: table;
        content: ' ';
        -webkit-flex-basis: 0;
            -ms-flex-preferred-size: 0;
                flex-basis: 0;
        -webkit-order: 1;
            -ms-flex-order: 1;
                order: 1; }
      body .exhibition .main-content article .articleTop::after {
        clear: both; }
      @media screen and (max-width: 63.99875em) {
        body .exhibition .main-content article .articleTop .entryContentSplit {
          width: 100%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem; } }
  @media screen and (max-width: 63.99875em) and (min-width: 40em) {
    body .exhibition .main-content article .articleTop .entryContentSplit {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
      @media screen and (max-width: 63.99875em) {
          body .exhibition .main-content article .articleTop .entryContentSplit, body .exhibition .main-content article .articleTop .entryContentSplit:last-child:not(:first-child) {
            float: left;
            clear: none; }
          body .exhibition .main-content article .articleTop .entryContentSplit:last-child:not(:first-child) {
            float: right; } }
      @media screen and (min-width: 64em) {
        body .exhibition .main-content article .articleTop .entryContentSplit {
          width: 83.33333%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem; } }
  @media screen and (min-width: 64em) and (min-width: 40em) {
    body .exhibition .main-content article .articleTop .entryContentSplit {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
      @media screen and (min-width: 64em) {
          body .exhibition .main-content article .articleTop .entryContentSplit, body .exhibition .main-content article .articleTop .entryContentSplit:last-child:not(:first-child) {
            float: left;
            clear: none; }
          body .exhibition .main-content article .articleTop .entryContentSplit:last-child:not(:first-child) {
            float: right; } }
      body .exhibition .main-content article .articleTop .entryContentFull {
        width: 100%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; }
        @media print, screen and (min-width: 40em) {
          body .exhibition .main-content article .articleTop .entryContentFull {
            padding-right: 0.9375rem;
            padding-left: 0.9375rem; } }
        body .exhibition .main-content article .articleTop .entryContentFull, body .exhibition .main-content article .articleTop .entryContentFull:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body .exhibition .main-content article .articleTop .entryContentFull:last-child:not(:first-child) {
          float: right; }
      @media screen and (max-width: 63.99875em) {
        body .exhibition .main-content article .articleTop .publicationContent {
          width: 100%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem;
          padding-top: 3rem;
          border-top: 1px solid #c3c3c3;
          margin-top: 2rem; } }
  @media screen and (max-width: 63.99875em) and (min-width: 40em) {
    body .exhibition .main-content article .articleTop .publicationContent {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
      @media screen and (max-width: 63.99875em) {
          body .exhibition .main-content article .articleTop .publicationContent, body .exhibition .main-content article .articleTop .publicationContent:last-child:not(:first-child) {
            float: left;
            clear: none; }
          body .exhibition .main-content article .articleTop .publicationContent:last-child:not(:first-child) {
            float: right; } }
      @media screen and (min-width: 64em) {
        body .exhibition .main-content article .articleTop .publicationContent {
          width: 16.66667%;
          float: left;
          padding-right: 0;
          padding-left: 0;
          padding: 0.75rem 1rem 0rem 1.5rem; }
          body .exhibition .main-content article .articleTop .publicationContent, body .exhibition .main-content article .articleTop .publicationContent:last-child:not(:first-child) {
            float: left;
            clear: none; }
          body .exhibition .main-content article .articleTop .publicationContent:last-child:not(:first-child) {
            float: right; } }
      body .exhibition .main-content article .articleTop .publicationContent img {
        padding-bottom: 0.75rem;
        max-width: 125px; }
      body .exhibition .main-content article .articleTop .publicationContent h3 {
        font-size: 1.2rem;
        line-height: 1; }
      body .exhibition .main-content article .articleTop .publicationContent p {
        margin-bottom: 0;
        font-size: 0.8rem;
        line-height: 1.2; }
      body .exhibition .main-content article .articleTop .publicationContent .publicationPrice {
        font-family: 'bebas_neuebold','sans-serif';
        font-size: 1rem;
        margin-top: 0.5rem; }
      body .exhibition .main-content article .articleTop .publicationContent .button, body .exhibition .main-content article .articleTop .publicationContent .wp-block-button .wp-block-button__link, .wp-block-button body .exhibition .main-content article .articleTop .publicationContent .wp-block-button__link {
        background-color: #ffe100;
        color: #1d1d1d;
        font-size: 0.9rem;
        letter-spacing: 0.1rem;
        padding: 0.25rem 0.5rem; }
        body .exhibition .main-content article .articleTop .publicationContent .button:hover, body .exhibition .main-content article .articleTop .publicationContent .wp-block-button .wp-block-button__link:hover, .wp-block-button body .exhibition .main-content article .articleTop .publicationContent .wp-block-button__link:hover, body .exhibition .main-content article .articleTop .publicationContent .button:focus, body .exhibition .main-content article .articleTop .publicationContent .wp-block-button .wp-block-button__link:focus, .wp-block-button body .exhibition .main-content article .articleTop .publicationContent .wp-block-button__link:focus {
          background-color: #1d1d1d;
          color: #fff; }
    body .exhibition .main-content article .imageGalleryContainer {
      margin-top: 1rem;
      max-width: 75rem;
      margin-right: auto;
      margin-left: auto; }
      body .exhibition .main-content article .imageGalleryContainer::before, body .exhibition .main-content article .imageGalleryContainer::after {
        display: table;
        content: ' ';
        -webkit-flex-basis: 0;
            -ms-flex-preferred-size: 0;
                flex-basis: 0;
        -webkit-order: 1;
            -ms-flex-order: 1;
                order: 1; }
      body .exhibition .main-content article .imageGalleryContainer::after {
        clear: both; }
      body .exhibition .main-content article .imageGalleryContainer .imageGallery {
        width: 100%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; }
        @media print, screen and (min-width: 40em) {
          body .exhibition .main-content article .imageGalleryContainer .imageGallery {
            padding-right: 0.9375rem;
            padding-left: 0.9375rem; } }
        body .exhibition .main-content article .imageGalleryContainer .imageGallery, body .exhibition .main-content article .imageGalleryContainer .imageGallery:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body .exhibition .main-content article .imageGalleryContainer .imageGallery:last-child:not(:first-child) {
          float: right; }
        @media screen and (max-width: 39.99875em) {
          body .exhibition .main-content article .imageGalleryContainer .imageGallery {
            padding-right: 0;
            padding-left: 0; } }
    body .exhibition .main-content article .pressContainer {
      margin-top: 4rem; }
      body .exhibition .main-content article .pressContainer .pressSectionTitle {
        max-width: 75rem;
        margin-right: auto;
        margin-left: auto; }
        body .exhibition .main-content article .pressContainer .pressSectionTitle::before, body .exhibition .main-content article .pressContainer .pressSectionTitle::after {
          display: table;
          content: ' ';
          -webkit-flex-basis: 0;
              -ms-flex-preferred-size: 0;
                  flex-basis: 0;
          -webkit-order: 1;
              -ms-flex-order: 1;
                  order: 1; }
        body .exhibition .main-content article .pressContainer .pressSectionTitle::after {
          clear: both; }
        body .exhibition .main-content article .pressContainer .pressSectionTitle .titleContainer {
          width: 100%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem; }
          @media print, screen and (min-width: 40em) {
            body .exhibition .main-content article .pressContainer .pressSectionTitle .titleContainer {
              padding-right: 0.9375rem;
              padding-left: 0.9375rem; } }
          body .exhibition .main-content article .pressContainer .pressSectionTitle .titleContainer, body .exhibition .main-content article .pressContainer .pressSectionTitle .titleContainer:last-child:not(:first-child) {
            float: left;
            clear: none; }
          body .exhibition .main-content article .pressContainer .pressSectionTitle .titleContainer:last-child:not(:first-child) {
            float: right; }
          body .exhibition .main-content article .pressContainer .pressSectionTitle .titleContainer h2 {
            text-align: left;
            font-size: 3rem;
            font-family: 'bebas_neueregular','sans-serif';
            letter-spacing: 0.05rem;
            color: #1d1d1d;
            border-bottom: 2px solid #1d1d1d; }
      body .exhibition .main-content article .pressContainer .pressItem {
        max-width: 75rem;
        margin-right: auto;
        margin-left: auto; }
        body .exhibition .main-content article .pressContainer .pressItem::before, body .exhibition .main-content article .pressContainer .pressItem::after {
          display: table;
          content: ' ';
          -webkit-flex-basis: 0;
              -ms-flex-preferred-size: 0;
                  flex-basis: 0;
          -webkit-order: 1;
              -ms-flex-order: 1;
                  order: 1; }
        body .exhibition .main-content article .pressContainer .pressItem::after {
          clear: both; }
        body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper {
          max-width: 75rem;
          margin-right: auto;
          margin-left: auto;
          width: 100%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem;
          padding-top: 1rem;
          padding-bottom: 1rem; }
          body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper::before, body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper::after {
            display: table;
            content: ' ';
            -webkit-flex-basis: 0;
                -ms-flex-preferred-size: 0;
                    flex-basis: 0;
            -webkit-order: 1;
                -ms-flex-order: 1;
                    order: 1; }
          body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper::after {
            clear: both; }
          @media print, screen and (min-width: 40em) {
            body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper {
              padding-right: 0.9375rem;
              padding-left: 0.9375rem; } }
          body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper, body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper:last-child:not(:first-child) {
            float: left;
            clear: none; }
          body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper:last-child:not(:first-child) {
            float: right; }
          body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper, body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper:last-child {
            float: none; }
          @media screen and (min-width: 40em) {
            body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressImageContainer {
              border-bottom: 1px solid #d7d7d7;
              padding: 0rem 1rem 2rem 0rem !important; } }
          @media screen and (min-width: 64em) {
            body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressImageContainer {
              width: 33.33333%;
              float: left;
              padding-right: 0.625rem;
              padding-left: 0.625rem; } }
  @media screen and (min-width: 64em) and (min-width: 40em) {
    body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressImageContainer {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
          @media screen and (min-width: 64em) {
              body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressImageContainer, body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressImageContainer:last-child:not(:first-child) {
                float: left;
                clear: none; }
              body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressImageContainer:last-child:not(:first-child) {
                float: right; } }
          @media screen and (min-width: 40em) and (max-width: 63.99875em) {
            body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressImageContainer {
              width: 41.66667%;
              float: left;
              padding-right: 0.625rem;
              padding-left: 0.625rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.99875em) and (min-width: 40em) {
    body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressImageContainer {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
          @media screen and (min-width: 40em) and (max-width: 63.99875em) {
              body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressImageContainer, body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressImageContainer:last-child:not(:first-child) {
                float: left;
                clear: none; }
              body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressImageContainer:last-child:not(:first-child) {
                float: right; } }
          @media screen and (max-width: 39.99875em) {
            body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressImageContainer {
              width: 100%;
              float: left;
              padding-right: 0;
              padding-left: 0;
              margin-bottom: 1rem; }
              body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressImageContainer, body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressImageContainer:last-child:not(:first-child) {
                float: left;
                clear: none; }
              body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressImageContainer:last-child:not(:first-child) {
                float: right; } }
          body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressImageContainer .pressImage {
            min-height: 200px;
            height: 100%;
            background-position: center;
            background-size: cover;
            background-repeat: no-repeat; }
            @media screen and (min-width: 64em) {
              body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressImageContainer .pressImage {
                min-height: 270px; } }
          @media screen and (min-width: 40em) {
            body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails {
              border-bottom: 1px solid #d7d7d7;
              padding-bottom: 2rem; } }
          @media screen and (min-width: 64em) {
            body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails {
              width: 66.66667%;
              float: left;
              padding-right: 0.625rem;
              padding-left: 0.625rem; } }
  @media screen and (min-width: 64em) and (min-width: 40em) {
    body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
          @media screen and (min-width: 64em) {
              body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails, body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails:last-child:not(:first-child) {
                float: left;
                clear: none; }
              body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails:last-child:not(:first-child) {
                float: right; } }
          @media screen and (min-width: 40em) and (max-width: 63.99875em) {
            body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails {
              width: 58.33333%;
              float: left;
              padding-right: 0.625rem;
              padding-left: 0.625rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.99875em) and (min-width: 40em) {
    body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
          @media screen and (min-width: 40em) and (max-width: 63.99875em) {
              body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails, body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails:last-child:not(:first-child) {
                float: left;
                clear: none; }
              body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails:last-child:not(:first-child) {
                float: right; } }
          @media screen and (max-width: 39.99875em) {
            body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails {
              width: 100%;
              float: left;
              padding-right: 0.625rem;
              padding-left: 0.625rem;
              padding-right: 0;
              padding-left: 0; } }
  @media screen and (max-width: 39.99875em) and (min-width: 40em) {
    body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
          @media screen and (max-width: 39.99875em) {
              body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails, body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails:last-child:not(:first-child) {
                float: left;
                clear: none; }
              body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails:last-child:not(:first-child) {
                float: right; } }
          body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails .pressOrgDateContainer {
            font-family: 'bebas_neuebold','sans-serif';
            text-transform: uppercase;
            letter-spacing: 0.1rem;
            max-width: 75rem;
            margin-right: auto;
            margin-left: auto; }
            body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails .pressOrgDateContainer::before, body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails .pressOrgDateContainer::after {
              display: table;
              content: ' ';
              -webkit-flex-basis: 0;
                  -ms-flex-preferred-size: 0;
                      flex-basis: 0;
              -webkit-order: 1;
                  -ms-flex-order: 1;
                      order: 1; }
            body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails .pressOrgDateContainer::after {
              clear: both; }
            body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails .pressOrgDateContainer .pressOrg {
              display: inline-block;
              text-align: center;
              background-color: #ffe100;
              padding: 0.15rem 1rem;
              margin-right: 0.5rem;
              margin-bottom: 0.45rem; }
            body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails .pressOrgDateContainer .pressDate {
              display: inline-block;
              background-color: #e5e5e5;
              text-align: center;
              padding: 0.15rem 1rem; }
          body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails .pressTitle {
            max-width: 75rem;
            margin-right: auto;
            margin-left: auto;
            margin: 0.5rem 0; }
            body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails .pressTitle::before, body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails .pressTitle::after {
              display: table;
              content: ' ';
              -webkit-flex-basis: 0;
                  -ms-flex-preferred-size: 0;
                      flex-basis: 0;
              -webkit-order: 1;
                  -ms-flex-order: 1;
                      order: 1; }
            body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails .pressTitle::after {
              clear: both; }
            body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails .pressTitle h3 {
              text-transform: none;
              color: #1d1d1d;
              font-family: 'robotoregular','sans-serif';
              font-size: 1.25rem;
              line-height: 1.2; }
          body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails .pressDescription {
            max-width: 75rem;
            margin-right: auto;
            margin-left: auto; }
            body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails .pressDescription::before, body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails .pressDescription::after {
              display: table;
              content: ' ';
              -webkit-flex-basis: 0;
                  -ms-flex-preferred-size: 0;
                      flex-basis: 0;
              -webkit-order: 1;
                  -ms-flex-order: 1;
                      order: 1; }
            body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails .pressDescription::after {
              clear: both; }
          body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails .pressLink {
            max-width: 75rem;
            margin-right: auto;
            margin-left: auto; }
            body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails .pressLink::before, body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails .pressLink::after {
              display: table;
              content: ' ';
              -webkit-flex-basis: 0;
                  -ms-flex-preferred-size: 0;
                      flex-basis: 0;
              -webkit-order: 1;
                  -ms-flex-order: 1;
                      order: 1; }
            body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails .pressLink::after {
              clear: both; }
            body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails .pressLink .button, body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails .pressLink .wp-block-button .wp-block-button__link, .wp-block-button body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails .pressLink .wp-block-button__link {
              margin-bottom: 2rem; }
              @media screen and (max-width: 39.99875em) {
                body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails .pressLink .button, body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails .pressLink .wp-block-button .wp-block-button__link, .wp-block-button body .exhibition .main-content article .pressContainer .pressItem .pressItemWrapper .pressDetails .pressLink .wp-block-button__link {
                  margin-bottom: 1rem; } }
      @media screen and (max-width: 39.99875em) {
        body .exhibition .main-content article .pressContainer .pressItem2 {
          border-top: 1px solid #c3c3c3;
          border-bottom: 1px solid #c3c3c3; } }
  @media screen and (min-width: 64em) {
    body #currentExhibition .featured-hero {
      min-height: 40rem; } }
  @media screen and (max-width: 39.99875em) {
    body .currentUpcomingExhibition .featured-hero {
      min-height: 18rem; } }
  @media screen and (min-width: 40em) {
    body .currentUpcomingExhibition .featured-hero {
      min-height: 20rem; } }
  body .currentUpcomingExhibition .featured-hero .pageTitleContainer {
    display: table;
    width: 100%;
    height: 100%; }
    @media screen and (max-width: 39.99875em) {
      body .currentUpcomingExhibition .featured-hero .pageTitleContainer {
        position: relative; } }
    @media screen and (max-width: 39.99875em) {
      body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle {
        position: absolute;
        bottom: 0%;
        width: 100%;
        max-width: 75rem;
        margin-right: auto;
        margin-left: auto; }
        body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle::before, body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle::after {
          display: table;
          content: ' ';
          -webkit-flex-basis: 0;
              -ms-flex-preferred-size: 0;
                  flex-basis: 0;
          -webkit-order: 1;
              -ms-flex-order: 1;
                  order: 1; }
        body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle::after {
          clear: both; } }
    @media screen and (min-width: 40em) {
      body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle {
        display: table-cell;
        vertical-align: middle;
        max-width: 75rem;
        margin-right: auto;
        margin-left: auto; }
        body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle::before, body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle::after {
          display: table;
          content: ' ';
          -webkit-flex-basis: 0;
              -ms-flex-preferred-size: 0;
                  flex-basis: 0;
          -webkit-order: 1;
              -ms-flex-order: 1;
                  order: 1; }
        body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle::after {
          clear: both; } }
    body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer {
      margin-right: auto;
      margin-left: auto;
      text-align: left; }
      @media screen and (min-width: 64em) {
        body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer {
          width: 50%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem; } }
  @media screen and (min-width: 64em) and (min-width: 40em) {
    body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
      @media screen and (min-width: 64em) {
          body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer, body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer:last-child:not(:first-child) {
            float: left;
            clear: none; }
          body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer:last-child:not(:first-child) {
            float: right; } }
      @media screen and (min-width: 40em) and (max-width: 63.99875em) {
        body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer {
          width: 66.66667%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.99875em) and (min-width: 40em) {
    body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
      @media screen and (min-width: 40em) and (max-width: 63.99875em) {
          body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer, body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer:last-child:not(:first-child) {
            float: left;
            clear: none; }
          body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer:last-child:not(:first-child) {
            float: right; } }
      @media screen and (max-width: 39.99875em) {
        body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer {
          width: 100%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem; } }
  @media screen and (max-width: 39.99875em) and (min-width: 40em) {
    body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
      @media screen and (max-width: 39.99875em) {
          body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer, body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer:last-child:not(:first-child) {
            float: left;
            clear: none; }
          body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer:last-child:not(:first-child) {
            float: right; } }
      body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer, body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer:last-child:not(:first-child) {
        float: none;
        clear: both; }
      body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryCategoryContainer {
        width: 100%; }
        body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryCategoryContainer .category {
          background-color: #ffe100;
          text-transform: uppercase;
          font-family: 'bebas_neuebold','sans-serif';
          line-height: 1;
          padding: 0.25rem 1rem;
          display: inline-block; }
      body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryTitle {
        width: 100%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        background-color: #fff;
        text-align: center;
        margin: 0 auto;
        color: #1d1d1d;
        font-size: 4rem;
        line-height: 0.8;
        padding: 0.5rem 1rem 0.25rem 1rem; }
        @media print, screen and (min-width: 40em) {
          body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryTitle {
            padding-right: 0.9375rem;
            padding-left: 0.9375rem; } }
        body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryTitle, body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryTitle:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryTitle:last-child:not(:first-child) {
          float: right; }
        @media screen and (max-width: 39.99875em) {
          body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryTitle {
            padding-left: 0.5rem;
            text-align: left;
            font-size: 2.25rem; } }
      body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryDate {
        width: 100%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        background-color: #fff;
        text-align: center;
        padding-bottom: 0.75rem;
        text-transform: uppercase;
        font-family: 'bebas_neuebold','sans-serif';
        color: #877148;
        font-size: 2rem;
        line-height: 0.9;
        padding-top: 0.25rem; }
        @media print, screen and (min-width: 40em) {
          body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryDate {
            padding-right: 0.9375rem;
            padding-left: 0.9375rem; } }
        body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryDate, body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryDate:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryDate:last-child:not(:first-child) {
          float: right; }
        @media screen and (max-width: 63.99875em) {
          body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryDate {
            font-size: 1.5rem; } }
        @media screen and (max-width: 39.99875em) {
          body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryDate {
            text-align: left; } }
        @media screen and (max-width: 39.99875em) {
          body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryDate {
            padding-bottom: 0.25rem; } }
        body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryDate span {
          display: inline-block;
          line-height: 0.5; }
          @media screen and (max-width: 39.99875em) {
            body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryDate span {
              padding-left: 2rem;
              text-indent: -1.8rem;
              line-height: 0.9;
              color: #1d1d1d; } }
          body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryDate span img {
            height: auto; }
            @media screen and (max-width: 39.99875em) {
              body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryDate span img {
                max-width: 26px; } }
            @media screen and (min-width: 40em) and (max-width: 63.99875em) {
              body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryDate span img {
                max-width: 29px; } }
            @media screen and (min-width: 64em) {
              body .currentUpcomingExhibition .featured-hero .pageTitleContainer .pageTitle .titleContainer .entryDate span img {
                max-width: 33px; } }
  body .currentUpcomingExhibition .featured-hero#mainPageHeader h1.entryTitle {
    font-size: 3rem;
    padding-top: 0.5rem; }
  body .currentUpcomingExhibition .main-container {
    background-color: #fff; }
    @media screen and (min-width: 40em) {
      body .currentUpcomingExhibition .main-container {
        margin-top: -6rem; } }
    body .currentUpcomingExhibition .main-container .main-grid {
      padding-top: 2rem; }
      @media screen and (max-width: 39.99875em) {
        body .currentUpcomingExhibition .main-container .main-grid {
          padding-top: 1rem;
          margin-top: 1rem; } }
  body #upcomingExhibitions .main-grid {
    margin-top: 4rem; }
  body #upcomingExhibitions .main-content {
    width: 100%;
    max-width: 70rem; }
    body #upcomingExhibitions .main-content .listingContainer {
      max-width: 75rem;
      margin-right: auto;
      margin-left: auto; }
      body #upcomingExhibitions .main-content .listingContainer::before, body #upcomingExhibitions .main-content .listingContainer::after {
        display: table;
        content: ' ';
        -webkit-flex-basis: 0;
            -ms-flex-preferred-size: 0;
                flex-basis: 0;
        -webkit-order: 1;
            -ms-flex-order: 1;
                order: 1; }
      body #upcomingExhibitions .main-content .listingContainer::after {
        clear: both; }
      body #upcomingExhibitions .main-content .listingContainer .image {
        min-height: 200px;
        width: auto;
        background-size: cover;
        background-position: center; }
        @media print, screen and (min-width: 40em) {
          body #upcomingExhibitions .main-content .listingContainer .image {
            min-height: 470px; } }
        @media print, screen and (min-width: 64em) {
          body #upcomingExhibitions .main-content .listingContainer .image {
            min-height: 560px; } }
      body #upcomingExhibitions .main-content .listingContainer .details {
        background-color: #fff;
        display: table; }
        @media screen and (min-width: 64em) {
          body #upcomingExhibitions .main-content .listingContainer .details {
            padding: 3rem !important; } }
        @media screen and (min-width: 40em) and (max-width: 63.99875em) {
          body #upcomingExhibitions .main-content .listingContainer .details {
            padding: 1.5rem !important; } }
        @media screen and (max-width: 39.99875em) {
          body #upcomingExhibitions .main-content .listingContainer .details {
            padding-left: inherit !important;
            padding-right: inherit !important;
            padding-top: 1.5rem;
            padding-bottom: 1.5rem; } }
        body #upcomingExhibitions .main-content .listingContainer .details .valign {
          display: table-cell;
          vertical-align: middle; }
          body #upcomingExhibitions .main-content .listingContainer .details .valign .dateContainer {
            width: 100%; }
            body #upcomingExhibitions .main-content .listingContainer .details .valign .dateContainer .date {
              font-size: 1.5rem;
              line-height: 0.8;
              display: inline-block;
              padding-left: 2.2rem;
              text-indent: -1.9rem;
              width: 100%; }
              @media screen and (max-width: 63.99875em) {
                body #upcomingExhibitions .main-content .listingContainer .details .valign .dateContainer .date {
                  font-size: 1.4rem; } }
              body #upcomingExhibitions .main-content .listingContainer .details .valign .dateContainer .date .calendarIcon {
                max-width: 23px;
                height: auto;
                margin-right: 0.5rem; }
          body #upcomingExhibitions .main-content .listingContainer .details .valign a .title:hover, body #upcomingExhibitions .main-content .listingContainer .details .valign a .title:focus {
            color: #877148; }
          body #upcomingExhibitions .main-content .listingContainer .details .valign .title {
            font-size: 3rem;
            color: #1d1d1d;
            line-height: 0.8;
            padding: 0.15rem 0rem 0.5rem 0rem; }
          body #upcomingExhibitions .main-content .listingContainer .details .valign .description {
            line-height: 1.4; }
            @media screen and (max-width: 63.99875em) {
              body #upcomingExhibitions .main-content .listingContainer .details .valign .description {
                font-size: 0.9rem; } }
          body #upcomingExhibitions .main-content .listingContainer .details .valign .showMoreInfo {
            background-color: #ffe100;
            color: #1d1d1d; }
            body #upcomingExhibitions .main-content .listingContainer .details .valign .showMoreInfo:hover, body #upcomingExhibitions .main-content .listingContainer .details .valign .showMoreInfo:focus {
              background-color: #1d1d1d;
              color: #fff; }
    @media screen and (max-width: 39.99875em) {
      body #upcomingExhibitions .main-content .even .details {
        width: 100%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        /*margin-top: -3rem;
						margin-left: -1rem;
						float:left!important;*/ } }
  @media screen and (max-width: 39.99875em) and (min-width: 40em) {
    body #upcomingExhibitions .main-content .even .details {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media screen and (max-width: 39.99875em) {
        body #upcomingExhibitions .main-content .even .details, body #upcomingExhibitions .main-content .even .details:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #upcomingExhibitions .main-content .even .details:last-child:not(:first-child) {
          float: right; } }
    @media screen and (min-width: 40em) {
      body #upcomingExhibitions .main-content .even .details {
        position: relative;
        left: -50%;
        width: 50%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media screen and (min-width: 40em) and (min-width: 40em) {
    body #upcomingExhibitions .main-content .even .details {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media screen and (min-width: 40em) {
        body #upcomingExhibitions .main-content .even .details, body #upcomingExhibitions .main-content .even .details:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #upcomingExhibitions .main-content .even .details:last-child:not(:first-child) {
          float: right; } }
    @media screen and (max-width: 39.99875em) {
      body #upcomingExhibitions .main-content .even .image {
        width: 100%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media screen and (max-width: 39.99875em) and (min-width: 40em) {
    body #upcomingExhibitions .main-content .even .image {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media screen and (max-width: 39.99875em) {
        body #upcomingExhibitions .main-content .even .image, body #upcomingExhibitions .main-content .even .image:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #upcomingExhibitions .main-content .even .image:last-child:not(:first-child) {
          float: right; } }
    @media screen and (min-width: 40em) {
      body #upcomingExhibitions .main-content .even .image {
        position: relative;
        left: 50%;
        width: 50%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media screen and (min-width: 40em) and (min-width: 40em) {
    body #upcomingExhibitions .main-content .even .image {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media screen and (min-width: 40em) {
        body #upcomingExhibitions .main-content .even .image, body #upcomingExhibitions .main-content .even .image:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #upcomingExhibitions .main-content .even .image:last-child:not(:first-child) {
          float: right; } }
    body #upcomingExhibitions .main-content .odd .details {
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; }
      @media print, screen and (min-width: 40em) {
        body #upcomingExhibitions .main-content .odd .details {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      body #upcomingExhibitions .main-content .odd .details, body #upcomingExhibitions .main-content .odd .details:last-child:not(:first-child) {
        float: left;
        clear: none; }
      body #upcomingExhibitions .main-content .odd .details:last-child:not(:first-child) {
        float: right; }
      @media screen and (min-width: 40em) {
        body #upcomingExhibitions .main-content .odd .details {
          width: 50%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem; } }
  @media screen and (min-width: 40em) and (min-width: 40em) {
    body #upcomingExhibitions .main-content .odd .details {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
      @media screen and (min-width: 40em) {
          body #upcomingExhibitions .main-content .odd .details, body #upcomingExhibitions .main-content .odd .details:last-child:not(:first-child) {
            float: left;
            clear: none; }
          body #upcomingExhibitions .main-content .odd .details:last-child:not(:first-child) {
            float: right; } }
      @media screen and (max-width: 39.99875em) {
        body #upcomingExhibitions .main-content .odd .details {
          /*margin-top: -3rem;
						margin-right: -1rem;*/ } }
    body #upcomingExhibitions .main-content .odd .image {
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; }
      @media print, screen and (min-width: 40em) {
        body #upcomingExhibitions .main-content .odd .image {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      body #upcomingExhibitions .main-content .odd .image, body #upcomingExhibitions .main-content .odd .image:last-child:not(:first-child) {
        float: left;
        clear: none; }
      body #upcomingExhibitions .main-content .odd .image:last-child:not(:first-child) {
        float: right; }
      @media screen and (min-width: 40em) {
        body #upcomingExhibitions .main-content .odd .image {
          width: 50%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem; } }
  @media screen and (min-width: 40em) and (min-width: 40em) {
    body #upcomingExhibitions .main-content .odd .image {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
      @media screen and (min-width: 40em) {
          body #upcomingExhibitions .main-content .odd .image, body #upcomingExhibitions .main-content .odd .image:last-child:not(:first-child) {
            float: left;
            clear: none; }
          body #upcomingExhibitions .main-content .odd .image:last-child:not(:first-child) {
            float: right; } }
  body #galleryEvents .main-grid .eventRow {
    max-width: 75rem;
    margin-right: auto;
    margin-left: auto;
    max-width: 60rem; }
    body #galleryEvents .main-grid .eventRow::before, body #galleryEvents .main-grid .eventRow::after {
      display: table;
      content: ' ';
      -webkit-flex-basis: 0;
          -ms-flex-preferred-size: 0;
              flex-basis: 0;
      -webkit-order: 1;
          -ms-flex-order: 1;
              order: 1; }
    body #galleryEvents .main-grid .eventRow::after {
      clear: both; }
    @media screen and (min-width: 40em) {
      body #galleryEvents .main-grid .eventRow {
        margin-bottom: 4rem; } }
    @media screen and (max-width: 39.99875em) {
      body #galleryEvents .main-grid .eventRow .eventContainer {
        width: 100%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        margin-bottom: 2rem; } }
  @media screen and (max-width: 39.99875em) and (min-width: 40em) {
    body #galleryEvents .main-grid .eventRow .eventContainer {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media screen and (max-width: 39.99875em) {
        body #galleryEvents .main-grid .eventRow .eventContainer, body #galleryEvents .main-grid .eventRow .eventContainer:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #galleryEvents .main-grid .eventRow .eventContainer:last-child:not(:first-child) {
          float: right; } }
    @media screen and (min-width: 40em) {
      body #galleryEvents .main-grid .eventRow .eventContainer {
        width: 50%;
        float: left;
        padding-right: 2.1875rem;
        padding-left: 2.1875rem; }
        body #galleryEvents .main-grid .eventRow .eventContainer, body #galleryEvents .main-grid .eventRow .eventContainer:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #galleryEvents .main-grid .eventRow .eventContainer:last-child:not(:first-child) {
          float: right; } }
    body #galleryEvents .main-grid .eventRow .eventContainer .imageContainer {
      max-width: 75rem;
      margin-right: auto;
      margin-left: auto; }
      body #galleryEvents .main-grid .eventRow .eventContainer .imageContainer::before, body #galleryEvents .main-grid .eventRow .eventContainer .imageContainer::after {
        display: table;
        content: ' ';
        -webkit-flex-basis: 0;
            -ms-flex-preferred-size: 0;
                flex-basis: 0;
        -webkit-order: 1;
            -ms-flex-order: 1;
                order: 1; }
      body #galleryEvents .main-grid .eventRow .eventContainer .imageContainer::after {
        clear: both; }
      body #galleryEvents .main-grid .eventRow .eventContainer .imageContainer .image {
        width: 100%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        min-height: 200px;
        background-position: center;
        background-size: cover;
        background-repeat: no-repeat; }
        @media print, screen and (min-width: 40em) {
          body #galleryEvents .main-grid .eventRow .eventContainer .imageContainer .image {
            padding-right: 0.9375rem;
            padding-left: 0.9375rem; } }
        body #galleryEvents .main-grid .eventRow .eventContainer .imageContainer .image, body #galleryEvents .main-grid .eventRow .eventContainer .imageContainer .image:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #galleryEvents .main-grid .eventRow .eventContainer .imageContainer .image:last-child:not(:first-child) {
          float: right; }
    body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer {
      max-width: 75rem;
      margin-right: auto;
      margin-left: auto;
      margin-top: 1rem; }
      body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer::before, body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer::after {
        display: table;
        content: ' ';
        -webkit-flex-basis: 0;
            -ms-flex-preferred-size: 0;
                flex-basis: 0;
        -webkit-order: 1;
            -ms-flex-order: 1;
                order: 1; }
      body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer::after {
        clear: both; }
      body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .category {
        position: relative; }
        @media screen and (min-width: 64em) {
          body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .category {
            width: 25%;
            float: left;
            padding-right: 0;
            padding-left: 0; }
            body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .category, body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .category:last-child:not(:first-child) {
              float: left;
              clear: none; }
            body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .category:last-child:not(:first-child) {
              float: right; } }
        @media screen and (max-width: 63.99875em) {
          body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .category {
            width: 33.33333%;
            float: left;
            padding-right: 0;
            padding-left: 0; }
            body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .category, body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .category:last-child:not(:first-child) {
              float: left;
              clear: none; }
            body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .category:last-child:not(:first-child) {
              float: right; } }
        body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .category span {
          padding: 0.5rem 0.75rem;
          display: inline-block;
          position: absolute;
          bottom: 0;
          left: 0;
          line-height: 0.9;
          font-family: 'bebas_neuebold','sans-serif';
          text-transform: uppercase; }
          @media screen and (max-width: 39.99875em) {
            body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .category span {
              padding: 0.25rem 0.5rem; } }
          @media screen and (max-width: 39.99875em) {
            body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .category span {
              font-size: 0.9rem; } }
      body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .artistLecture {
        background-color: #ffe100; }
      body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .filmScreening {
        background-color: #e71717;
        color: #fff; }
      body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .openingReception {
        background-color: #0f99d8;
        color: #fff; }
      @media screen and (min-width: 64em) {
        body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .dateContainer {
          width: 75%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem; } }
  @media screen and (min-width: 64em) and (min-width: 40em) {
    body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .dateContainer {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
      @media screen and (min-width: 64em) {
          body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .dateContainer, body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .dateContainer:last-child:not(:first-child) {
            float: left;
            clear: none; }
          body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .dateContainer:last-child:not(:first-child) {
            float: right; } }
      @media screen and (max-width: 63.99875em) {
        body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .dateContainer {
          width: 66.66667%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem; } }
  @media screen and (max-width: 63.99875em) and (min-width: 40em) {
    body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .dateContainer {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
      @media screen and (max-width: 63.99875em) {
          body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .dateContainer, body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .dateContainer:last-child:not(:first-child) {
            float: left;
            clear: none; }
          body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .dateContainer:last-child:not(:first-child) {
            float: right; } }
      body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .dateContainer .date {
        max-width: 75rem;
        margin-right: auto;
        margin-left: auto;
        width: 100%;
        float: left;
        padding-right: 0;
        padding-left: 0; }
        body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .dateContainer .date::before, body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .dateContainer .date::after {
          display: table;
          content: ' ';
          -webkit-flex-basis: 0;
              -ms-flex-preferred-size: 0;
                  flex-basis: 0;
          -webkit-order: 1;
              -ms-flex-order: 1;
                  order: 1; }
        body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .dateContainer .date::after {
          clear: both; }
        body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .dateContainer .date, body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .dateContainer .date:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .dateContainer .date:last-child:not(:first-child) {
          float: right; }
        body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .dateContainer .date, body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .dateContainer .date:last-child {
          float: none; }
        body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .dateContainer .date h3 {
          line-height: 0.9;
          margin-bottom: 0px; }
      body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .dateContainer .time {
        max-width: 75rem;
        margin-right: auto;
        margin-left: auto;
        width: 100%;
        float: left;
        padding-right: 0;
        padding-left: 0;
        color: #877148;
        text-transform: uppercase;
        font-family: 'bebas_neuebook','sans-serif';
        font-size: 1.75rem;
        line-height: 0.9; }
        body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .dateContainer .time::before, body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .dateContainer .time::after {
          display: table;
          content: ' ';
          -webkit-flex-basis: 0;
              -ms-flex-preferred-size: 0;
                  flex-basis: 0;
          -webkit-order: 1;
              -ms-flex-order: 1;
                  order: 1; }
        body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .dateContainer .time::after {
          clear: both; }
        body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .dateContainer .time, body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .dateContainer .time:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .dateContainer .time:last-child:not(:first-child) {
          float: right; }
        body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .dateContainer .time, body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .dateContainer .time:last-child {
          float: none; }
        @media screen and (max-width: 39.99875em) {
          body #galleryEvents .main-grid .eventRow .eventContainer .categoryDateContainer .dateContainer .time {
            font-size: 1.25rem; } }
    body #galleryEvents .main-grid .eventRow .eventContainer .eventTitleContainer {
      max-width: 75rem;
      margin-right: auto;
      margin-left: auto; }
      body #galleryEvents .main-grid .eventRow .eventContainer .eventTitleContainer::before, body #galleryEvents .main-grid .eventRow .eventContainer .eventTitleContainer::after {
        display: table;
        content: ' ';
        -webkit-flex-basis: 0;
            -ms-flex-preferred-size: 0;
                flex-basis: 0;
        -webkit-order: 1;
            -ms-flex-order: 1;
                order: 1; }
      body #galleryEvents .main-grid .eventRow .eventContainer .eventTitleContainer::after {
        clear: both; }
      body #galleryEvents .main-grid .eventRow .eventContainer .eventTitleContainer .eventTitle {
        width: 100%;
        float: left;
        padding-right: 0;
        padding-left: 0;
        font-family: 'robotoregular','sans-serif';
        line-height: 1.1;
        color: #000;
        text-transform: none;
        margin-top: 1.5rem;
        font-size: 1.75rem; }
        body #galleryEvents .main-grid .eventRow .eventContainer .eventTitleContainer .eventTitle, body #galleryEvents .main-grid .eventRow .eventContainer .eventTitleContainer .eventTitle:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #galleryEvents .main-grid .eventRow .eventContainer .eventTitleContainer .eventTitle:last-child:not(:first-child) {
          float: right; }
    body #galleryEvents .main-grid .eventRow .eventContainer .eventDescriptionContainer {
      max-width: 75rem;
      margin-right: auto;
      margin-left: auto; }
      body #galleryEvents .main-grid .eventRow .eventContainer .eventDescriptionContainer::before, body #galleryEvents .main-grid .eventRow .eventContainer .eventDescriptionContainer::after {
        display: table;
        content: ' ';
        -webkit-flex-basis: 0;
            -ms-flex-preferred-size: 0;
                flex-basis: 0;
        -webkit-order: 1;
            -ms-flex-order: 1;
                order: 1; }
      body #galleryEvents .main-grid .eventRow .eventContainer .eventDescriptionContainer::after {
        clear: both; }
      body #galleryEvents .main-grid .eventRow .eventContainer .eventDescriptionContainer .eventDescription {
        width: 100%;
        float: left;
        padding-right: 0;
        padding-left: 0; }
        body #galleryEvents .main-grid .eventRow .eventContainer .eventDescriptionContainer .eventDescription, body #galleryEvents .main-grid .eventRow .eventContainer .eventDescriptionContainer .eventDescription:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #galleryEvents .main-grid .eventRow .eventContainer .eventDescriptionContainer .eventDescription:last-child:not(:first-child) {
          float: right; }
      body #galleryEvents .main-grid .eventRow .eventContainer .eventDescriptionContainer .moreInfo {
        width: 100%;
        float: left;
        padding-right: 0;
        padding-left: 0;
        margin-top: 0.5rem;
        font-family: 'robotobold','sans-serif';
        text-decoration: underline; }
        body #galleryEvents .main-grid .eventRow .eventContainer .eventDescriptionContainer .moreInfo, body #galleryEvents .main-grid .eventRow .eventContainer .eventDescriptionContainer .moreInfo:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #galleryEvents .main-grid .eventRow .eventContainer .eventDescriptionContainer .moreInfo:last-child:not(:first-child) {
          float: right; }
  body #publications {
    max-width: 70rem; }
    body #publications .main-grid {
      margin-top: 0rem;
      padding-top: 2rem; }
      body #publications .main-grid .publicationsListIntroTextContainer {
        max-width: 75rem;
        margin-right: auto;
        margin-left: auto; }
        body #publications .main-grid .publicationsListIntroTextContainer::before, body #publications .main-grid .publicationsListIntroTextContainer::after {
          display: table;
          content: ' ';
          -webkit-flex-basis: 0;
              -ms-flex-preferred-size: 0;
                  flex-basis: 0;
          -webkit-order: 1;
              -ms-flex-order: 1;
                  order: 1; }
        body #publications .main-grid .publicationsListIntroTextContainer::after {
          clear: both; }
        @media screen and (min-width: 40em) {
          body #publications .main-grid .publicationsListIntroTextContainer .publicationsListIntroText {
            width: 100%;
            float: left;
            padding-right: 0;
            padding-left: 0;
            margin-right: auto;
            margin-left: auto; }
            body #publications .main-grid .publicationsListIntroTextContainer .publicationsListIntroText, body #publications .main-grid .publicationsListIntroTextContainer .publicationsListIntroText:last-child:not(:first-child) {
              float: left;
              clear: none; }
            body #publications .main-grid .publicationsListIntroTextContainer .publicationsListIntroText:last-child:not(:first-child) {
              float: right; }
            body #publications .main-grid .publicationsListIntroTextContainer .publicationsListIntroText, body #publications .main-grid .publicationsListIntroTextContainer .publicationsListIntroText:last-child:not(:first-child) {
              float: none;
              clear: both; } }
        @media screen and (max-width: 39.99875em) {
          body #publications .main-grid .publicationsListIntroTextContainer .publicationsListIntroText {
            width: 100%;
            float: left;
            padding-right: 0;
            padding-left: 0; }
            body #publications .main-grid .publicationsListIntroTextContainer .publicationsListIntroText, body #publications .main-grid .publicationsListIntroTextContainer .publicationsListIntroText:last-child:not(:first-child) {
              float: left;
              clear: none; }
            body #publications .main-grid .publicationsListIntroTextContainer .publicationsListIntroText:last-child:not(:first-child) {
              float: right; } }
        body #publications .main-grid .publicationsListIntroTextContainer .publicationsListIntroText h2 {
          font-size: 1.75rem; }
        body #publications .main-grid .publicationsListIntroTextContainer .publicationsListIntroText p {
          line-height: 1.3; }
      body #publications .main-grid .publicationsList {
        border-top: 1px solid #d7d7d7;
        padding-top: 3rem; }
        body #publications .main-grid .publicationsList .publicationRow {
          max-width: 75rem;
          margin-right: auto;
          margin-left: auto; }
          body #publications .main-grid .publicationsList .publicationRow::before, body #publications .main-grid .publicationsList .publicationRow::after {
            display: table;
            content: ' ';
            -webkit-flex-basis: 0;
                -ms-flex-preferred-size: 0;
                    flex-basis: 0;
            -webkit-order: 1;
                -ms-flex-order: 1;
                    order: 1; }
          body #publications .main-grid .publicationsList .publicationRow::after {
            clear: both; }
          @media screen and (min-width: 64em) {
            body #publications .main-grid .publicationsList .publicationRow {
              margin-bottom: 2rem; } }
          @media screen and (max-width: 63.99875em) {
            body #publications .main-grid .publicationsList .publicationRow .publicationContainer {
              width: 100%;
              float: left;
              padding-right: 0;
              padding-left: 0;
              margin-bottom: 2rem; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer, body #publications .main-grid .publicationsList .publicationRow .publicationContainer:last-child:not(:first-child) {
                float: left;
                clear: none; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer:last-child:not(:first-child) {
                float: right; } }
          @media screen and (min-width: 64em) {
            body #publications .main-grid .publicationsList .publicationRow .publicationContainer {
              width: 50%;
              float: left;
              padding-right: 0;
              padding-left: 0; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer, body #publications .main-grid .publicationsList .publicationRow .publicationContainer:last-child:not(:first-child) {
                float: left;
                clear: none; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer:last-child:not(:first-child) {
                float: right; } }
          body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication {
            max-width: 75rem;
            margin-right: auto;
            margin-left: auto; }
            body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication::before, body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication::after {
              display: table;
              content: ' ';
              -webkit-flex-basis: 0;
                  -ms-flex-preferred-size: 0;
                      flex-basis: 0;
              -webkit-order: 1;
                  -ms-flex-order: 1;
                      order: 1; }
            body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication::after {
              clear: both; }
            @media screen and (max-width: 39.99875em) {
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .imageContainer {
                max-width: 260px;
                height: auto; } }
            @media screen and (min-width: 40em) and (max-width: 63.99875em) {
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .imageContainer {
                width: 33.33333%;
                float: left;
                padding-right: 0.625rem;
                padding-left: 0.625rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.99875em) and (min-width: 40em) {
    body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .imageContainer {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
            @media screen and (min-width: 40em) and (max-width: 63.99875em) {
                body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .imageContainer, body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .imageContainer:last-child:not(:first-child) {
                  float: left;
                  clear: none; }
                body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .imageContainer:last-child:not(:first-child) {
                  float: right; } }
            @media screen and (min-width: 64em) {
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .imageContainer {
                width: 50%;
                float: left;
                padding-right: 0.625rem;
                padding-left: 0.625rem; } }
  @media screen and (min-width: 64em) and (min-width: 40em) {
    body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .imageContainer {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
            @media screen and (min-width: 64em) {
                body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .imageContainer, body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .imageContainer:last-child:not(:first-child) {
                  float: left;
                  clear: none; }
                body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .imageContainer:last-child:not(:first-child) {
                  float: right; } }
            @media screen and (max-width: 63.99875em) {
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .imageContainer {
                padding-left: 0px; } }
            body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .imageContainer .image {
              min-height: 360px;
              background-position: center;
              background-size: cover;
              background-repeat: no-repeat; }
              @media screen and (max-width: 39.99875em) {
                body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .imageContainer .image {
                  min-height: 350px; } }
            @media screen and (max-width: 39.99875em) {
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer {
                width: 100%;
                float: left;
                padding-right: 0;
                padding-left: 0; }
                body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer, body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer:last-child:not(:first-child) {
                  float: left;
                  clear: none; }
                body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer:last-child:not(:first-child) {
                  float: right; } }
            @media screen and (min-width: 40em) and (max-width: 63.99875em) {
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer {
                width: 66.66667%;
                float: left;
                padding-right: 0.625rem;
                padding-left: 0.625rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.99875em) and (min-width: 40em) {
    body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
            @media screen and (min-width: 40em) and (max-width: 63.99875em) {
                body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer, body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer:last-child:not(:first-child) {
                  float: left;
                  clear: none; }
                body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer:last-child:not(:first-child) {
                  float: right; } }
            @media screen and (min-width: 64em) {
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer {
                width: 50%;
                float: left;
                padding-right: 0.625rem;
                padding-left: 0.625rem; } }
  @media screen and (min-width: 64em) and (min-width: 40em) {
    body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
            @media screen and (min-width: 64em) {
                body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer, body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer:last-child:not(:first-child) {
                  float: left;
                  clear: none; }
                body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer:last-child:not(:first-child) {
                  float: right; } }
            body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationTitle {
              max-width: 75rem;
              margin-right: auto;
              margin-left: auto;
              width: 100%;
              float: left;
              padding-right: 0;
              padding-left: 0; }
              @media screen and (max-width: 39.99875em) {
                body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationTitle {
                  margin-top: 1.5rem; } }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationTitle::before, body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationTitle::after {
                display: table;
                content: ' ';
                -webkit-flex-basis: 0;
                    -ms-flex-preferred-size: 0;
                        flex-basis: 0;
                -webkit-order: 1;
                    -ms-flex-order: 1;
                        order: 1; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationTitle::after {
                clear: both; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationTitle, body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationTitle:last-child:not(:first-child) {
                float: left;
                clear: none; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationTitle:last-child:not(:first-child) {
                float: right; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationTitle, body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationTitle:last-child {
                float: none; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationTitle h2 {
                font-size: 1.45rem;
                line-height: 0.9;
                margin-bottom: 0.2rem; }
            body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationYear {
              max-width: 75rem;
              margin-right: auto;
              margin-left: auto;
              width: 100%;
              float: left;
              padding-right: 0;
              padding-left: 0;
              font-family: 'bebas_neueregular','sans-serif';
              color: #6a6a6a;
              text-transform: uppercase;
              font-size: 1.2rem;
              line-height: 1; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationYear::before, body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationYear::after {
                display: table;
                content: ' ';
                -webkit-flex-basis: 0;
                    -ms-flex-preferred-size: 0;
                        flex-basis: 0;
                -webkit-order: 1;
                    -ms-flex-order: 1;
                        order: 1; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationYear::after {
                clear: both; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationYear, body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationYear:last-child:not(:first-child) {
                float: left;
                clear: none; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationYear:last-child:not(:first-child) {
                float: right; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationYear, body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationYear:last-child {
                float: none; }
            body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationAuthor {
              max-width: 75rem;
              margin-right: auto;
              margin-left: auto;
              width: 100%;
              float: left;
              padding-right: 0;
              padding-left: 0;
              font-family: 'bebas_neueregular','sans-serif';
              color: #6a6a6a;
              text-transform: uppercase;
              font-size: 1.2rem;
              line-height: 1; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationAuthor::before, body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationAuthor::after {
                display: table;
                content: ' ';
                -webkit-flex-basis: 0;
                    -ms-flex-preferred-size: 0;
                        flex-basis: 0;
                -webkit-order: 1;
                    -ms-flex-order: 1;
                        order: 1; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationAuthor::after {
                clear: both; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationAuthor, body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationAuthor:last-child:not(:first-child) {
                float: left;
                clear: none; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationAuthor:last-child:not(:first-child) {
                float: right; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationAuthor, body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationAuthor:last-child {
                float: none; }
            body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationLength {
              max-width: 75rem;
              margin-right: auto;
              margin-left: auto;
              width: 100%;
              float: left;
              padding-right: 0;
              padding-left: 0;
              font-family: 'robotoitalic','sans-serif';
              margin: 0.75rem 0;
              font-size: 0.95rem;
              line-height: 0.9; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationLength::before, body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationLength::after {
                display: table;
                content: ' ';
                -webkit-flex-basis: 0;
                    -ms-flex-preferred-size: 0;
                        flex-basis: 0;
                -webkit-order: 1;
                    -ms-flex-order: 1;
                        order: 1; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationLength::after {
                clear: both; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationLength, body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationLength:last-child:not(:first-child) {
                float: left;
                clear: none; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationLength:last-child:not(:first-child) {
                float: right; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationLength, body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationLength:last-child {
                float: none; }
            body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationDescription {
              max-width: 75rem;
              margin-right: auto;
              margin-left: auto;
              width: 100%;
              float: left;
              padding-right: 0;
              padding-left: 0;
              font-size: 0.9rem;
              line-height: 1.2; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationDescription::before, body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationDescription::after {
                display: table;
                content: ' ';
                -webkit-flex-basis: 0;
                    -ms-flex-preferred-size: 0;
                        flex-basis: 0;
                -webkit-order: 1;
                    -ms-flex-order: 1;
                        order: 1; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationDescription::after {
                clear: both; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationDescription, body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationDescription:last-child:not(:first-child) {
                float: left;
                clear: none; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationDescription:last-child:not(:first-child) {
                float: right; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationDescription, body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationDescription:last-child {
                float: none; }
            body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationPrice {
              max-width: 75rem;
              margin-right: auto;
              margin-left: auto;
              width: 100%;
              float: left;
              padding-right: 0;
              padding-left: 0;
              font-family: 'robotobold','sans-serif';
              font-size: 1rem;
              line-height: 1.1;
              margin: 0.5rem 0; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationPrice::before, body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationPrice::after {
                display: table;
                content: ' ';
                -webkit-flex-basis: 0;
                    -ms-flex-preferred-size: 0;
                        flex-basis: 0;
                -webkit-order: 1;
                    -ms-flex-order: 1;
                        order: 1; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationPrice::after {
                clear: both; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationPrice, body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationPrice:last-child:not(:first-child) {
                float: left;
                clear: none; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationPrice:last-child:not(:first-child) {
                float: right; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationPrice, body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .publicationDetailsContainer .publicationPrice:last-child {
                float: none; }
            body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .eventTitleContainer {
              max-width: 75rem;
              margin-right: auto;
              margin-left: auto; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .eventTitleContainer::before, body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .eventTitleContainer::after {
                display: table;
                content: ' ';
                -webkit-flex-basis: 0;
                    -ms-flex-preferred-size: 0;
                        flex-basis: 0;
                -webkit-order: 1;
                    -ms-flex-order: 1;
                        order: 1; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .eventTitleContainer::after {
                clear: both; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .eventTitleContainer .eventTitle {
                width: 100%;
                float: left;
                padding-right: 0;
                padding-left: 0;
                font-family: 'robotoregular','sans-serif';
                line-height: 1;
                color: #000;
                text-transform: none;
                margin-top: 1.5rem;
                font-size: 1.75rem; }
                body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .eventTitleContainer .eventTitle, body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .eventTitleContainer .eventTitle:last-child:not(:first-child) {
                  float: left;
                  clear: none; }
                body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .eventTitleContainer .eventTitle:last-child:not(:first-child) {
                  float: right; }
            body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .eventDescriptionContainer {
              max-width: 75rem;
              margin-right: auto;
              margin-left: auto; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .eventDescriptionContainer::before, body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .eventDescriptionContainer::after {
                display: table;
                content: ' ';
                -webkit-flex-basis: 0;
                    -ms-flex-preferred-size: 0;
                        flex-basis: 0;
                -webkit-order: 1;
                    -ms-flex-order: 1;
                        order: 1; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .eventDescriptionContainer::after {
                clear: both; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .eventDescriptionContainer .eventDescription {
                width: 100%;
                float: left;
                padding-right: 0;
                padding-left: 0; }
                body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .eventDescriptionContainer .eventDescription, body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .eventDescriptionContainer .eventDescription:last-child:not(:first-child) {
                  float: left;
                  clear: none; }
                body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .eventDescriptionContainer .eventDescription:last-child:not(:first-child) {
                  float: right; }
              body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .eventDescriptionContainer .moreInfo {
                width: 100%;
                float: left;
                padding-right: 0;
                padding-left: 0;
                margin-top: 0.5rem;
                font-family: 'robotobold','sans-serif';
                text-decoration: underline; }
                body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .eventDescriptionContainer .moreInfo, body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .eventDescriptionContainer .moreInfo:last-child:not(:first-child) {
                  float: left;
                  clear: none; }
                body #publications .main-grid .publicationsList .publicationRow .publicationContainer .publication .eventDescriptionContainer .moreInfo:last-child:not(:first-child) {
                  float: right; }
          body #publications .main-grid .publicationsList .publicationRow .publicationContainer:nth-child(odd) .imageContainer {
            padding-left: 0px; }
  @media screen and (max-width: 39.99875em) {
    body .pastExhibition .featured-hero {
      min-height: 25rem; } }
  @media screen and (min-width: 40em) {
    body .pastExhibition .featured-hero {
      min-height: 20rem; } }
  @media screen and (max-width: 39.99875em) {
    body .pastExhibition .pageTitleContainer .pageTitle {
      bottom: 0 !important; } }
  body .pastExhibition .pageTitleContainer .pageTitle .entryTitle {
    font-size: 3.25rem !important;
    padding-bottom: 1rem;
    display: block !important; }
  body .pastExhibition .pastExhibitionsButton {
    min-width: 100%;
    text-align: center;
    margin-top: 4rem; }
  body .pastExhibition .bottomHours {
    display: none; }
  body #pastExhibitions .main-grid .entryRow {
    max-width: 75rem;
    margin-right: auto;
    margin-left: auto; }
    body #pastExhibitions .main-grid .entryRow::before, body #pastExhibitions .main-grid .entryRow::after {
      display: table;
      content: ' ';
      -webkit-flex-basis: 0;
          -ms-flex-preferred-size: 0;
              flex-basis: 0;
      -webkit-order: 1;
          -ms-flex-order: 1;
              order: 1; }
    body #pastExhibitions .main-grid .entryRow::after {
      clear: both; }
    @media screen and (min-width: 40em) {
      body #pastExhibitions .main-grid .entryRow {
        margin-bottom: 4rem; } }
    @media screen and (max-width: 63.99875em) {
      body #pastExhibitions .main-grid .entryRow .entryContainer {
        width: 100%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        margin-bottom: 4rem; } }
  @media screen and (max-width: 63.99875em) and (min-width: 40em) {
    body #pastExhibitions .main-grid .entryRow .entryContainer {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media screen and (max-width: 63.99875em) {
        body #pastExhibitions .main-grid .entryRow .entryContainer, body #pastExhibitions .main-grid .entryRow .entryContainer:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #pastExhibitions .main-grid .entryRow .entryContainer:last-child:not(:first-child) {
          float: right; } }
    @media screen and (min-width: 64em) {
      body #pastExhibitions .main-grid .entryRow .entryContainer {
        width: 33.33333%;
        float: left;
        padding-right: 1.5625rem;
        padding-left: 1.5625rem; }
        body #pastExhibitions .main-grid .entryRow .entryContainer, body #pastExhibitions .main-grid .entryRow .entryContainer:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #pastExhibitions .main-grid .entryRow .entryContainer:last-child:not(:first-child) {
          float: right; } }
    body #pastExhibitions .main-grid .entryRow .entryContainer .imageContainer {
      max-width: 75rem;
      margin-right: auto;
      margin-left: auto; }
      body #pastExhibitions .main-grid .entryRow .entryContainer .imageContainer::before, body #pastExhibitions .main-grid .entryRow .entryContainer .imageContainer::after {
        display: table;
        content: ' ';
        -webkit-flex-basis: 0;
            -ms-flex-preferred-size: 0;
                flex-basis: 0;
        -webkit-order: 1;
            -ms-flex-order: 1;
                order: 1; }
      body #pastExhibitions .main-grid .entryRow .entryContainer .imageContainer::after {
        clear: both; }
      body #pastExhibitions .main-grid .entryRow .entryContainer .imageContainer .image {
        width: 100%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        background-position: center;
        background-size: cover;
        background-repeat: no-repeat; }
        @media print, screen and (min-width: 40em) {
          body #pastExhibitions .main-grid .entryRow .entryContainer .imageContainer .image {
            padding-right: 0.9375rem;
            padding-left: 0.9375rem; } }
        body #pastExhibitions .main-grid .entryRow .entryContainer .imageContainer .image, body #pastExhibitions .main-grid .entryRow .entryContainer .imageContainer .image:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #pastExhibitions .main-grid .entryRow .entryContainer .imageContainer .image:last-child:not(:first-child) {
          float: right; }
        @media screen and (min-width: 64em) {
          body #pastExhibitions .main-grid .entryRow .entryContainer .imageContainer .image {
            min-height: 200px; } }
        @media screen and (max-width: 63.99875em) {
          body #pastExhibitions .main-grid .entryRow .entryContainer .imageContainer .image {
            min-height: 250px; } }
    body #pastExhibitions .main-grid .entryRow .entryContainer .titleContainer {
      max-width: 75rem;
      margin-right: auto;
      margin-left: auto; }
      body #pastExhibitions .main-grid .entryRow .entryContainer .titleContainer::before, body #pastExhibitions .main-grid .entryRow .entryContainer .titleContainer::after {
        display: table;
        content: ' ';
        -webkit-flex-basis: 0;
            -ms-flex-preferred-size: 0;
                flex-basis: 0;
        -webkit-order: 1;
            -ms-flex-order: 1;
                order: 1; }
      body #pastExhibitions .main-grid .entryRow .entryContainer .titleContainer::after {
        clear: both; }
      body #pastExhibitions .main-grid .entryRow .entryContainer .titleContainer .title {
        width: 100%;
        float: left;
        padding-right: 0;
        padding-left: 0;
        font-family: 'robotoregular','sans-serif';
        line-height: 1;
        color: #000;
        text-transform: none;
        margin-top: 0.75rem;
        margin-bottom: 0.25rem;
        font-size: 1.75rem;
        letter-spacing: 0.01rem; }
        body #pastExhibitions .main-grid .entryRow .entryContainer .titleContainer .title, body #pastExhibitions .main-grid .entryRow .entryContainer .titleContainer .title:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #pastExhibitions .main-grid .entryRow .entryContainer .titleContainer .title:last-child:not(:first-child) {
          float: right; }
    body #pastExhibitions .main-grid .entryRow .entryContainer .dateContainer {
      max-width: 75rem;
      margin-right: auto;
      margin-left: auto;
      margin-top: 0.25rem; }
      body #pastExhibitions .main-grid .entryRow .entryContainer .dateContainer::before, body #pastExhibitions .main-grid .entryRow .entryContainer .dateContainer::after {
        display: table;
        content: ' ';
        -webkit-flex-basis: 0;
            -ms-flex-preferred-size: 0;
                flex-basis: 0;
        -webkit-order: 1;
            -ms-flex-order: 1;
                order: 1; }
      body #pastExhibitions .main-grid .entryRow .entryContainer .dateContainer::after {
        clear: both; }
      body #pastExhibitions .main-grid .entryRow .entryContainer .dateContainer .date {
        max-width: 75rem;
        margin-right: auto;
        margin-left: auto;
        width: 100%;
        float: left;
        padding-right: 0;
        padding-left: 0; }
        body #pastExhibitions .main-grid .entryRow .entryContainer .dateContainer .date::before, body #pastExhibitions .main-grid .entryRow .entryContainer .dateContainer .date::after {
          display: table;
          content: ' ';
          -webkit-flex-basis: 0;
              -ms-flex-preferred-size: 0;
                  flex-basis: 0;
          -webkit-order: 1;
              -ms-flex-order: 1;
                  order: 1; }
        body #pastExhibitions .main-grid .entryRow .entryContainer .dateContainer .date::after {
          clear: both; }
        body #pastExhibitions .main-grid .entryRow .entryContainer .dateContainer .date, body #pastExhibitions .main-grid .entryRow .entryContainer .dateContainer .date:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #pastExhibitions .main-grid .entryRow .entryContainer .dateContainer .date:last-child:not(:first-child) {
          float: right; }
        body #pastExhibitions .main-grid .entryRow .entryContainer .dateContainer .date, body #pastExhibitions .main-grid .entryRow .entryContainer .dateContainer .date:last-child {
          float: none; }
        body #pastExhibitions .main-grid .entryRow .entryContainer .dateContainer .date h3 {
          font-family: 'robotoitalic','sans-serif';
          line-height: 0.9;
          margin-bottom: 1rem;
          font-size: 1.15rem; }
    body #pastExhibitions .main-grid .entryRow .entryContainer .descriptionContainer {
      max-width: 75rem;
      margin-right: auto;
      margin-left: auto; }
      body #pastExhibitions .main-grid .entryRow .entryContainer .descriptionContainer::before, body #pastExhibitions .main-grid .entryRow .entryContainer .descriptionContainer::after {
        display: table;
        content: ' ';
        -webkit-flex-basis: 0;
            -ms-flex-preferred-size: 0;
                flex-basis: 0;
        -webkit-order: 1;
            -ms-flex-order: 1;
                order: 1; }
      body #pastExhibitions .main-grid .entryRow .entryContainer .descriptionContainer::after {
        clear: both; }
      body #pastExhibitions .main-grid .entryRow .entryContainer .descriptionContainer .eventDescription {
        width: 100%;
        float: left;
        padding-right: 0;
        padding-left: 0;
        font-size: 0.92rem; }
        body #pastExhibitions .main-grid .entryRow .entryContainer .descriptionContainer .eventDescription, body #pastExhibitions .main-grid .entryRow .entryContainer .descriptionContainer .eventDescription:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #pastExhibitions .main-grid .entryRow .entryContainer .descriptionContainer .eventDescription:last-child:not(:first-child) {
          float: right; }
    body #pastExhibitions .main-grid .entryRow .entryContainer.end:last-child:last-child {
      float: left; }
  body #press .main-grid .entryRow {
    max-width: 75rem;
    margin-right: auto;
    margin-left: auto; }
    body #press .main-grid .entryRow::before, body #press .main-grid .entryRow::after {
      display: table;
      content: ' ';
      -webkit-flex-basis: 0;
          -ms-flex-preferred-size: 0;
              flex-basis: 0;
      -webkit-order: 1;
          -ms-flex-order: 1;
              order: 1; }
    body #press .main-grid .entryRow::after {
      clear: both; }
    @media screen and (min-width: 64em) {
      body #press .main-grid .entryRow {
        margin-bottom: 4rem; } }
    @media screen and (max-width: 63.99875em) {
      body #press .main-grid .entryRow .entryContainer {
        width: 100%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        margin-bottom: 2rem; } }
  @media screen and (max-width: 63.99875em) and (min-width: 40em) {
    body #press .main-grid .entryRow .entryContainer {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media screen and (max-width: 63.99875em) {
        body #press .main-grid .entryRow .entryContainer, body #press .main-grid .entryRow .entryContainer:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #press .main-grid .entryRow .entryContainer:last-child:not(:first-child) {
          float: right; } }
    @media screen and (min-width: 64em) {
      body #press .main-grid .entryRow .entryContainer {
        width: 33.33333%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media screen and (min-width: 64em) and (min-width: 40em) {
    body #press .main-grid .entryRow .entryContainer {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media screen and (min-width: 64em) {
        body #press .main-grid .entryRow .entryContainer, body #press .main-grid .entryRow .entryContainer:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #press .main-grid .entryRow .entryContainer:last-child:not(:first-child) {
          float: right; } }
    body #press .main-grid .entryRow .entryContainer .imageContainer {
      max-width: 75rem;
      margin-right: auto;
      margin-left: auto; }
      body #press .main-grid .entryRow .entryContainer .imageContainer::before, body #press .main-grid .entryRow .entryContainer .imageContainer::after {
        display: table;
        content: ' ';
        -webkit-flex-basis: 0;
            -ms-flex-preferred-size: 0;
                flex-basis: 0;
        -webkit-order: 1;
            -ms-flex-order: 1;
                order: 1; }
      body #press .main-grid .entryRow .entryContainer .imageContainer::after {
        clear: both; }
      body #press .main-grid .entryRow .entryContainer .imageContainer .image {
        width: 100%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        background-position: center;
        background-size: cover;
        background-repeat: no-repeat; }
        @media print, screen and (min-width: 40em) {
          body #press .main-grid .entryRow .entryContainer .imageContainer .image {
            padding-right: 0.9375rem;
            padding-left: 0.9375rem; } }
        body #press .main-grid .entryRow .entryContainer .imageContainer .image, body #press .main-grid .entryRow .entryContainer .imageContainer .image:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #press .main-grid .entryRow .entryContainer .imageContainer .image:last-child:not(:first-child) {
          float: right; }
        @media screen and (min-width: 64em) {
          body #press .main-grid .entryRow .entryContainer .imageContainer .image {
            min-height: 200px; } }
        @media screen and (max-width: 63.99875em) {
          body #press .main-grid .entryRow .entryContainer .imageContainer .image {
            min-height: 250px; } }
    body #press .main-grid .entryRow .entryContainer .orgContainer {
      max-width: 75rem;
      margin-right: auto;
      margin-left: auto;
      margin-top: 0.75rem; }
      body #press .main-grid .entryRow .entryContainer .orgContainer::before, body #press .main-grid .entryRow .entryContainer .orgContainer::after {
        display: table;
        content: ' ';
        -webkit-flex-basis: 0;
            -ms-flex-preferred-size: 0;
                flex-basis: 0;
        -webkit-order: 1;
            -ms-flex-order: 1;
                order: 1; }
      body #press .main-grid .entryRow .entryContainer .orgContainer::after {
        clear: both; }
      body #press .main-grid .entryRow .entryContainer .orgContainer .org {
        width: auto;
        display: inline-block;
        background-color: #ffe100; }
        body #press .main-grid .entryRow .entryContainer .orgContainer .org h3 {
          font-family: 'bebas_neuebold','sans-serif';
          line-height: 0.9;
          margin-bottom: 0rem;
          letter-spacing: 0.1rem;
          font-size: 1rem;
          color: #1d1d1d;
          padding: 0.35rem 0.5rem; }
    body #press .main-grid .entryRow .entryContainer .dateContainer {
      max-width: 75rem;
      margin-right: auto;
      margin-left: auto;
      margin-top: 0.25rem; }
      body #press .main-grid .entryRow .entryContainer .dateContainer::before, body #press .main-grid .entryRow .entryContainer .dateContainer::after {
        display: table;
        content: ' ';
        -webkit-flex-basis: 0;
            -ms-flex-preferred-size: 0;
                flex-basis: 0;
        -webkit-order: 1;
            -ms-flex-order: 1;
                order: 1; }
      body #press .main-grid .entryRow .entryContainer .dateContainer::after {
        clear: both; }
      body #press .main-grid .entryRow .entryContainer .dateContainer .date {
        width: auto;
        display: inline-block;
        background-color: #e5e5e5; }
        body #press .main-grid .entryRow .entryContainer .dateContainer .date h3 {
          font-family: 'bebas_neuebold','sans-serif';
          line-height: 0.9;
          margin-bottom: 0rem;
          letter-spacing: 0.1rem;
          font-size: 1rem;
          color: #1d1d1d;
          padding: 0.35rem 0.5rem; }
    body #press .main-grid .entryRow .entryContainer .titleContainer {
      max-width: 75rem;
      margin-right: auto;
      margin-left: auto; }
      body #press .main-grid .entryRow .entryContainer .titleContainer::before, body #press .main-grid .entryRow .entryContainer .titleContainer::after {
        display: table;
        content: ' ';
        -webkit-flex-basis: 0;
            -ms-flex-preferred-size: 0;
                flex-basis: 0;
        -webkit-order: 1;
            -ms-flex-order: 1;
                order: 1; }
      body #press .main-grid .entryRow .entryContainer .titleContainer::after {
        clear: both; }
      body #press .main-grid .entryRow .entryContainer .titleContainer .title {
        width: 100%;
        float: left;
        padding-right: 0;
        padding-left: 0;
        font-family: 'robotoregular','sans-serif';
        line-height: 1.2;
        color: #000;
        text-transform: none;
        margin-top: 0.5rem;
        margin-bottom: 1rem;
        font-size: 1.45rem;
        letter-spacing: 0.01rem; }
        body #press .main-grid .entryRow .entryContainer .titleContainer .title, body #press .main-grid .entryRow .entryContainer .titleContainer .title:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #press .main-grid .entryRow .entryContainer .titleContainer .title:last-child:not(:first-child) {
          float: right; }
    body #press .main-grid .entryRow .entryContainer .descriptionContainer {
      max-width: 75rem;
      margin-right: auto;
      margin-left: auto; }
      body #press .main-grid .entryRow .entryContainer .descriptionContainer::before, body #press .main-grid .entryRow .entryContainer .descriptionContainer::after {
        display: table;
        content: ' ';
        -webkit-flex-basis: 0;
            -ms-flex-preferred-size: 0;
                flex-basis: 0;
        -webkit-order: 1;
            -ms-flex-order: 1;
                order: 1; }
      body #press .main-grid .entryRow .entryContainer .descriptionContainer::after {
        clear: both; }
      body #press .main-grid .entryRow .entryContainer .descriptionContainer .description {
        width: 100%;
        float: left;
        padding-right: 0;
        padding-left: 0;
        font-size: 0.92rem; }
        body #press .main-grid .entryRow .entryContainer .descriptionContainer .description, body #press .main-grid .entryRow .entryContainer .descriptionContainer .description:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #press .main-grid .entryRow .entryContainer .descriptionContainer .description:last-child:not(:first-child) {
          float: right; }
    body #press .main-grid .entryRow .entryContainer .readArticleContainer {
      max-width: 75rem;
      margin-right: auto;
      margin-left: auto; }
      @media screen and (max-width: 63.99875em) {
        body #press .main-grid .entryRow .entryContainer .readArticleContainer {
          margin-top: 0.5rem; } }
      body #press .main-grid .entryRow .entryContainer .readArticleContainer::before, body #press .main-grid .entryRow .entryContainer .readArticleContainer::after {
        display: table;
        content: ' ';
        -webkit-flex-basis: 0;
            -ms-flex-preferred-size: 0;
                flex-basis: 0;
        -webkit-order: 1;
            -ms-flex-order: 1;
                order: 1; }
      body #press .main-grid .entryRow .entryContainer .readArticleContainer::after {
        clear: both; }
      body #press .main-grid .entryRow .entryContainer .readArticleContainer .readArticle {
        display: block;
        font-size: 0.85rem;
        letter-spacing: 0.1rem; }
        @media screen and (max-width: 39.99875em) {
          body #press .main-grid .entryRow .entryContainer .readArticleContainer .readArticle {
            width: 50%;
            float: left;
            padding-right: 0.625rem;
            padding-left: 0.625rem; } }
  @media screen and (max-width: 39.99875em) and (min-width: 40em) {
    body #press .main-grid .entryRow .entryContainer .readArticleContainer .readArticle {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
        @media screen and (max-width: 39.99875em) {
            body #press .main-grid .entryRow .entryContainer .readArticleContainer .readArticle, body #press .main-grid .entryRow .entryContainer .readArticleContainer .readArticle:last-child:not(:first-child) {
              float: left;
              clear: none; }
            body #press .main-grid .entryRow .entryContainer .readArticleContainer .readArticle:last-child:not(:first-child) {
              float: right; } }
        @media screen and (min-width: 40em) and (max-width: 63.99875em) {
          body #press .main-grid .entryRow .entryContainer .readArticleContainer .readArticle {
            width: 25%;
            float: left;
            padding-right: 0.625rem;
            padding-left: 0.625rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.99875em) and (min-width: 40em) {
    body #press .main-grid .entryRow .entryContainer .readArticleContainer .readArticle {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
        @media screen and (min-width: 40em) and (max-width: 63.99875em) {
            body #press .main-grid .entryRow .entryContainer .readArticleContainer .readArticle, body #press .main-grid .entryRow .entryContainer .readArticleContainer .readArticle:last-child:not(:first-child) {
              float: left;
              clear: none; }
            body #press .main-grid .entryRow .entryContainer .readArticleContainer .readArticle:last-child:not(:first-child) {
              float: right; } }
        @media screen and (min-width: 64em) {
          body #press .main-grid .entryRow .entryContainer .readArticleContainer .readArticle {
            width: 41.66667%;
            float: left;
            padding-right: 0.625rem;
            padding-left: 0.625rem; } }
  @media screen and (min-width: 64em) and (min-width: 40em) {
    body #press .main-grid .entryRow .entryContainer .readArticleContainer .readArticle {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
        @media screen and (min-width: 64em) {
            body #press .main-grid .entryRow .entryContainer .readArticleContainer .readArticle, body #press .main-grid .entryRow .entryContainer .readArticleContainer .readArticle:last-child:not(:first-child) {
              float: left;
              clear: none; }
            body #press .main-grid .entryRow .entryContainer .readArticleContainer .readArticle:last-child:not(:first-child) {
              float: right; }
            body #press .main-grid .entryRow .entryContainer .readArticleContainer .readArticle:last-child:last-child {
              float: left; } }
    body #press .main-grid .entryRow .entryContainer.end:last-child:last-child {
      float: left; }
  body #visitorInformation p {
    font-size: 0.95rem;
    letter-spacing: 0.01rem; }
  body #visitorInformation .entryRow .entry {
    padding-left: 4rem;
    padding-right: 4rem;
    min-height: 570px; }
  body #visitorInformation .entryRow:first-of-type .entry {
    display: table; }
    body #visitorInformation .entryRow:first-of-type .entry .hoursContainer {
      display: table-cell;
      vertical-align: middle; }
  body #visitorInformation .hoursContainer {
    background-color: #ffe100; }
    body #visitorInformation .hoursContainer .hoursIcon {
      text-align: center;
      margin-bottom: 2rem; }
    body #visitorInformation .hoursContainer .hours {
      padding: 0; }
      body #visitorInformation .hoursContainer .hours .titleBlock h2 {
        width: 100%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        font-family: 'bebas_neueregular','sans-serif'; }
        @media print, screen and (min-width: 40em) {
          body #visitorInformation .hoursContainer .hours .titleBlock h2 {
            padding-right: 0.9375rem;
            padding-left: 0.9375rem; } }
        body #visitorInformation .hoursContainer .hours .titleBlock h2, body #visitorInformation .hoursContainer .hours .titleBlock h2:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #visitorInformation .hoursContainer .hours .titleBlock h2:last-child:not(:first-child) {
          float: right; }
      body #visitorInformation .hoursContainer .hours .headingBlock h3 {
        width: 100%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; }
        @media print, screen and (min-width: 40em) {
          body #visitorInformation .hoursContainer .hours .headingBlock h3 {
            padding-right: 0.9375rem;
            padding-left: 0.9375rem; } }
        body #visitorInformation .hoursContainer .hours .headingBlock h3, body #visitorInformation .hoursContainer .hours .headingBlock h3:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #visitorInformation .hoursContainer .hours .headingBlock h3:last-child:not(:first-child) {
          float: right; }
      body #visitorInformation .hoursContainer .hours .regularHours .hourBlock {
        width: 100%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; }
        @media print, screen and (min-width: 40em) {
          body #visitorInformation .hoursContainer .hours .regularHours .hourBlock {
            padding-right: 0.9375rem;
            padding-left: 0.9375rem; } }
        body #visitorInformation .hoursContainer .hours .regularHours .hourBlock, body #visitorInformation .hoursContainer .hours .regularHours .hourBlock:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #visitorInformation .hoursContainer .hours .regularHours .hourBlock:last-child:not(:first-child) {
          float: right; }
      body #visitorInformation .hoursContainer .hours .specialHours {
        max-width: 75rem;
        margin-right: auto;
        margin-left: auto; }
        body #visitorInformation .hoursContainer .hours .specialHours::before, body #visitorInformation .hoursContainer .hours .specialHours::after {
          display: table;
          content: ' ';
          -webkit-flex-basis: 0;
              -ms-flex-preferred-size: 0;
                  flex-basis: 0;
          -webkit-order: 1;
              -ms-flex-order: 1;
                  order: 1; }
        body #visitorInformation .hoursContainer .hours .specialHours::after {
          clear: both; }
        body #visitorInformation .hoursContainer .hours .specialHours .specialWrapper {
          width: 100%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem;
          margin-right: auto;
          margin-left: auto; }
          @media print, screen and (min-width: 40em) {
            body #visitorInformation .hoursContainer .hours .specialHours .specialWrapper {
              padding-right: 0.9375rem;
              padding-left: 0.9375rem; } }
          body #visitorInformation .hoursContainer .hours .specialHours .specialWrapper, body #visitorInformation .hoursContainer .hours .specialHours .specialWrapper:last-child:not(:first-child) {
            float: left;
            clear: none; }
          body #visitorInformation .hoursContainer .hours .specialHours .specialWrapper:last-child:not(:first-child) {
            float: right; }
          body #visitorInformation .hoursContainer .hours .specialHours .specialWrapper, body #visitorInformation .hoursContainer .hours .specialHours .specialWrapper:last-child:not(:first-child) {
            float: none;
            clear: both; }
          body #visitorInformation .hoursContainer .hours .specialHours .specialWrapper .detailWrapper {
            max-width: 75rem;
            margin-right: auto;
            margin-left: auto; }
            body #visitorInformation .hoursContainer .hours .specialHours .specialWrapper .detailWrapper::before, body #visitorInformation .hoursContainer .hours .specialHours .specialWrapper .detailWrapper::after {
              display: table;
              content: ' ';
              -webkit-flex-basis: 0;
                  -ms-flex-preferred-size: 0;
                      flex-basis: 0;
              -webkit-order: 1;
                  -ms-flex-order: 1;
                      order: 1; }
            body #visitorInformation .hoursContainer .hours .specialHours .specialWrapper .detailWrapper::after {
              clear: both; }
            body #visitorInformation .hoursContainer .hours .specialHours .specialWrapper .detailWrapper .hourBlock {
              width: 100%;
              float: left;
              padding-right: 0.625rem;
              padding-left: 0.625rem;
              margin-bottom: 0rem; }
              @media print, screen and (min-width: 40em) {
                body #visitorInformation .hoursContainer .hours .specialHours .specialWrapper .detailWrapper .hourBlock {
                  padding-right: 0.9375rem;
                  padding-left: 0.9375rem; } }
              body #visitorInformation .hoursContainer .hours .specialHours .specialWrapper .detailWrapper .hourBlock, body #visitorInformation .hoursContainer .hours .specialHours .specialWrapper .detailWrapper .hourBlock:last-child:not(:first-child) {
                float: left;
                clear: none; }
              body #visitorInformation .hoursContainer .hours .specialHours .specialWrapper .detailWrapper .hourBlock:last-child:not(:first-child) {
                float: right; }
  body #visitorInformation #locationMap {
    padding: 0px !important; }
    @media screen and (min-width: 64em) {
      body #visitorInformation #locationMap {
        position: relative;
        left: 50%; } }
    body #visitorInformation #locationMap .google-maps {
      position: relative;
      padding-bottom: 100%;
      height: 0;
      overflow: hidden; }
    body #visitorInformation #locationMap .google-maps iframe {
      position: absolute;
      top: 0;
      left: 0;
      width: 100% !important;
      height: 100% !important; }
  body #visitorInformation #locationDetails {
    text-align: center; }
    @media screen and (min-width: 64em) {
      body #visitorInformation #locationDetails {
        position: relative;
        left: -50%; } }
    body #visitorInformation #locationDetails .icon {
      margin-bottom: 1rem; }
    body #visitorInformation #locationDetails h2 {
      font-family: 'bebas_neueregular','sans-serif';
      font-size: 3.25rem;
      line-height: 0.9;
      margin: 1rem 0; }
    body #visitorInformation #locationDetails .address {
      font-family: 'bebas_neuebold','sans-serif';
      text-transform: uppercase;
      line-height: 1.1;
      font-size: 1.1rem; }
  body #visitorInformation #aboutOUAG p:first-of-type {
    font-size: 1.25rem; }
  @media screen and (min-width: 40em) {
    body #researchAndLearn .entryRow:nth-of-type(even) .image {
      position: relative;
      left: 50%; } }
  @media screen and (min-width: 40em) {
    body #researchAndLearn .entryRow:nth-of-type(even) .content {
      position: relative;
      left: -50%; } }
  body #researchAndLearn .entryRow .image {
    background-size: cover;
    background-position: center; }
    @media screen and (min-width: 64em) {
      body #researchAndLearn .entryRow .image {
        width: 50%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        min-height: 570px; } }
  @media screen and (min-width: 64em) and (min-width: 40em) {
    body #researchAndLearn .entryRow .image {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media screen and (min-width: 64em) {
        body #researchAndLearn .entryRow .image, body #researchAndLearn .entryRow .image:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #researchAndLearn .entryRow .image:last-child:not(:first-child) {
          float: right; } }
    @media screen and (min-width: 40em) and (max-width: 63.99875em) {
      body #researchAndLearn .entryRow .image {
        width: 50%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        min-height: 465px; } }
  @media screen and (min-width: 40em) and (max-width: 63.99875em) and (min-width: 40em) {
    body #researchAndLearn .entryRow .image {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media screen and (min-width: 40em) and (max-width: 63.99875em) {
        body #researchAndLearn .entryRow .image, body #researchAndLearn .entryRow .image:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #researchAndLearn .entryRow .image:last-child:not(:first-child) {
          float: right; } }
    @media screen and (max-width: 39.99875em) {
      body #researchAndLearn .entryRow .image {
        width: 100%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        min-height: 200px; } }
  @media screen and (max-width: 39.99875em) and (min-width: 40em) {
    body #researchAndLearn .entryRow .image {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media screen and (max-width: 39.99875em) {
        body #researchAndLearn .entryRow .image, body #researchAndLearn .entryRow .image:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #researchAndLearn .entryRow .image:last-child:not(:first-child) {
          float: right; } }
  body #researchAndLearn .entryRow .entry.content {
    text-align: center; }
    @media screen and (min-width: 64em) {
      body #researchAndLearn .entryRow .entry.content {
        padding-right: 4rem !important;
        padding-left: 4rem !important;
        width: 50%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        min-height: 570px; } }
  @media screen and (min-width: 64em) and (min-width: 40em) {
    body #researchAndLearn .entryRow .entry.content {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media screen and (min-width: 64em) {
        body #researchAndLearn .entryRow .entry.content, body #researchAndLearn .entryRow .entry.content:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #researchAndLearn .entryRow .entry.content:last-child:not(:first-child) {
          float: right; } }
    @media screen and (min-width: 40em) and (max-width: 63.99875em) {
      body #researchAndLearn .entryRow .entry.content {
        width: 50%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        min-height: 465px; } }
  @media screen and (min-width: 40em) and (max-width: 63.99875em) and (min-width: 40em) {
    body #researchAndLearn .entryRow .entry.content {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media screen and (min-width: 40em) and (max-width: 63.99875em) {
        body #researchAndLearn .entryRow .entry.content, body #researchAndLearn .entryRow .entry.content:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #researchAndLearn .entryRow .entry.content:last-child:not(:first-child) {
          float: right; } }
    @media screen and (max-width: 39.99875em) {
      body #researchAndLearn .entryRow .entry.content {
        width: 100%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        min-height: 200px; } }
  @media screen and (max-width: 39.99875em) and (min-width: 40em) {
    body #researchAndLearn .entryRow .entry.content {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media screen and (max-width: 39.99875em) {
        body #researchAndLearn .entryRow .entry.content, body #researchAndLearn .entryRow .entry.content:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #researchAndLearn .entryRow .entry.content:last-child:not(:first-child) {
          float: right; } }
    body #researchAndLearn .entryRow .entry.content h2 {
      color: #877148;
      font-family: 'bebas_neueregular','sans-serif';
      font-size: 3.25rem; }
  body #joinUs .entryRow .image {
    background-position: center;
    background-size: cover;
    min-height: 200px;
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    display: block; }
    @media print, screen and (min-width: 40em) {
      body #joinUs .entryRow .image {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    body #joinUs .entryRow .image, body #joinUs .entryRow .image:last-child:not(:first-child) {
      float: left;
      clear: none; }
    body #joinUs .entryRow .image:last-child:not(:first-child) {
      float: right; }
  body #joinUs .entryRow .content {
    text-align: center;
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    padding: 2rem 4rem; }
    @media print, screen and (min-width: 40em) {
      body #joinUs .entryRow .content {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    body #joinUs .entryRow .content, body #joinUs .entryRow .content:last-child:not(:first-child) {
      float: left;
      clear: none; }
    body #joinUs .entryRow .content:last-child:not(:first-child) {
      float: right; }
    body #joinUs .entryRow .content h2 {
      color: #1d1d1d;
      font-family: 'bebas_neueregular','sans-serif';
      font-size: 3.25rem;
      line-height: 0.9;
      margin-bottom: 1rem; }
  @media screen and (max-width: 39.99875em) {
    body .collection .featured-hero {
      min-height: 18rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.99875em) {
    body .collection .featured-hero {
      min-height: 20rem; } }
  @media screen and (min-width: 64em) {
    body .collection .featured-hero {
      min-height: 40rem; } }
  @media screen and (max-width: 39.99875em) {
    body .collection .pageTitleContainer .pageTitle {
      bottom: 0 !important; } }
  body .collection .pageTitleContainer .pageTitle .entryTitle {
    font-size: 3.25rem !important;
    padding-bottom: 1rem;
    display: block !important; }
  body .collection .main-container {
    background-color: #fff; }
    @media screen and (min-width: 64em) {
      body .collection .main-container {
        margin-top: -6rem; } }
    @media screen and (max-width: 63.99875em) {
      body .collection .main-container {
        padding-bottom: 2rem; } }
    @media screen and (min-width: 64em) {
      body .collection .main-container .main-grid {
        padding-top: 2rem; } }
    @media screen and (max-width: 63.99875em) {
      body .collection .main-container .main-grid {
        margin-top: 2rem; } }
    body .collection .main-container article .articleTop {
      max-width: 75rem;
      margin-right: auto;
      margin-left: auto; }
      body .collection .main-container article .articleTop::before, body .collection .main-container article .articleTop::after {
        display: table;
        content: ' ';
        -webkit-flex-basis: 0;
            -ms-flex-preferred-size: 0;
                flex-basis: 0;
        -webkit-order: 1;
            -ms-flex-order: 1;
                order: 1; }
      body .collection .main-container article .articleTop::after {
        clear: both; }
      @media screen and (max-width: 63.99875em) {
        body .collection .main-container article .articleTop .entryContentSplit {
          width: 100%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem; } }
  @media screen and (max-width: 63.99875em) and (min-width: 40em) {
    body .collection .main-container article .articleTop .entryContentSplit {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
      @media screen and (max-width: 63.99875em) {
          body .collection .main-container article .articleTop .entryContentSplit, body .collection .main-container article .articleTop .entryContentSplit:last-child:not(:first-child) {
            float: left;
            clear: none; }
          body .collection .main-container article .articleTop .entryContentSplit:last-child:not(:first-child) {
            float: right; } }
      @media screen and (min-width: 64em) {
        body .collection .main-container article .articleTop .entryContentSplit {
          width: 83.33333%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem; } }
  @media screen and (min-width: 64em) and (min-width: 40em) {
    body .collection .main-container article .articleTop .entryContentSplit {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
      @media screen and (min-width: 64em) {
          body .collection .main-container article .articleTop .entryContentSplit, body .collection .main-container article .articleTop .entryContentSplit:last-child:not(:first-child) {
            float: left;
            clear: none; }
          body .collection .main-container article .articleTop .entryContentSplit:last-child:not(:first-child) {
            float: right; } }
      body .collection .main-container article .articleTop .entryContentFull {
        width: 100%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; }
        @media print, screen and (min-width: 40em) {
          body .collection .main-container article .articleTop .entryContentFull {
            padding-right: 0.9375rem;
            padding-left: 0.9375rem; } }
        body .collection .main-container article .articleTop .entryContentFull, body .collection .main-container article .articleTop .entryContentFull:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body .collection .main-container article .articleTop .entryContentFull:last-child:not(:first-child) {
          float: right; }
      body .collection .main-container article .articleTop .entry-content p:first-of-type {
        font-size: 1.2rem; }
      @media screen and (max-width: 63.99875em) {
        body .collection .main-container article .articleTop .fastFactContainer {
          width: 100%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem;
          padding-top: 3rem;
          border-top: 1px solid #c3c3c3;
          margin-top: 2rem; } }
  @media screen and (max-width: 63.99875em) and (min-width: 40em) {
    body .collection .main-container article .articleTop .fastFactContainer {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
      @media screen and (max-width: 63.99875em) {
          body .collection .main-container article .articleTop .fastFactContainer, body .collection .main-container article .articleTop .fastFactContainer:last-child:not(:first-child) {
            float: left;
            clear: none; }
          body .collection .main-container article .articleTop .fastFactContainer:last-child:not(:first-child) {
            float: right; } }
      @media screen and (min-width: 64em) {
        body .collection .main-container article .articleTop .fastFactContainer {
          width: 16.66667%;
          float: left;
          padding-right: 0;
          padding-left: 0;
          padding: 1.1rem 1.75rem 0rem 0rem; }
          body .collection .main-container article .articleTop .fastFactContainer, body .collection .main-container article .articleTop .fastFactContainer:last-child:not(:first-child) {
            float: left;
            clear: none; }
          body .collection .main-container article .articleTop .fastFactContainer:last-child:not(:first-child) {
            float: right; } }
      body .collection .main-container article .articleTop .fastFactContainer .fastFact {
        max-width: 75rem;
        margin-right: auto;
        margin-left: auto;
        text-align: center; }
        body .collection .main-container article .articleTop .fastFactContainer .fastFact::before, body .collection .main-container article .articleTop .fastFactContainer .fastFact::after {
          display: table;
          content: ' ';
          -webkit-flex-basis: 0;
              -ms-flex-preferred-size: 0;
                  flex-basis: 0;
          -webkit-order: 1;
              -ms-flex-order: 1;
                  order: 1; }
        body .collection .main-container article .articleTop .fastFactContainer .fastFact::after {
          clear: both; }
        body .collection .main-container article .articleTop .fastFactContainer .fastFact .num {
          max-width: 75rem;
          margin-right: auto;
          margin-left: auto;
          width: 100%;
          float: left;
          padding-right: 0.375rem;
          padding-left: 0.375rem;
          font-family: 'bebas_neuebold','sans-serif';
          font-size: 4rem;
          color: #877148;
          line-height: 1; }
          body .collection .main-container article .articleTop .fastFactContainer .fastFact .num::before, body .collection .main-container article .articleTop .fastFactContainer .fastFact .num::after {
            display: table;
            content: ' ';
            -webkit-flex-basis: 0;
                -ms-flex-preferred-size: 0;
                    flex-basis: 0;
            -webkit-order: 1;
                -ms-flex-order: 1;
                    order: 1; }
          body .collection .main-container article .articleTop .fastFactContainer .fastFact .num::after {
            clear: both; }
          body .collection .main-container article .articleTop .fastFactContainer .fastFact .num, body .collection .main-container article .articleTop .fastFactContainer .fastFact .num:last-child:not(:first-child) {
            float: left;
            clear: none; }
          body .collection .main-container article .articleTop .fastFactContainer .fastFact .num:last-child:not(:first-child) {
            float: right; }
          body .collection .main-container article .articleTop .fastFactContainer .fastFact .num, body .collection .main-container article .articleTop .fastFactContainer .fastFact .num:last-child {
            float: none; }
        body .collection .main-container article .articleTop .fastFactContainer .fastFact .text {
          max-width: 75rem;
          margin-right: auto;
          margin-left: auto;
          width: 100%;
          float: left;
          padding-right: 0.375rem;
          padding-left: 0.375rem;
          margin-bottom: 1rem; }
          body .collection .main-container article .articleTop .fastFactContainer .fastFact .text::before, body .collection .main-container article .articleTop .fastFactContainer .fastFact .text::after {
            display: table;
            content: ' ';
            -webkit-flex-basis: 0;
                -ms-flex-preferred-size: 0;
                    flex-basis: 0;
            -webkit-order: 1;
                -ms-flex-order: 1;
                    order: 1; }
          body .collection .main-container article .articleTop .fastFactContainer .fastFact .text::after {
            clear: both; }
          body .collection .main-container article .articleTop .fastFactContainer .fastFact .text, body .collection .main-container article .articleTop .fastFactContainer .fastFact .text:last-child:not(:first-child) {
            float: left;
            clear: none; }
          body .collection .main-container article .articleTop .fastFactContainer .fastFact .text:last-child:not(:first-child) {
            float: right; }
          body .collection .main-container article .articleTop .fastFactContainer .fastFact .text, body .collection .main-container article .articleTop .fastFactContainer .fastFact .text:last-child {
            float: none; }
        body .collection .main-container article .articleTop .fastFactContainer .fastFact:nth-of-type(even) .num {
          color: #1d1d1d; }
      body .collection .main-container article .articleTop .fastFactContainer img {
        padding-bottom: 0.75rem; }
      body .collection .main-container article .articleTop .fastFactContainer h3 {
        font-size: 1.2rem;
        line-height: 1; }
      body .collection .main-container article .articleTop .fastFactContainer p {
        margin-bottom: 0;
        font-size: 0.8rem;
        line-height: 1.2; }
  body .collection .imageGalleryContainer {
    margin-top: 1rem;
    margin-bottom: 4rem;
    max-width: 75rem;
    margin-right: auto;
    margin-left: auto;
    max-width: none; }
    body .collection .imageGalleryContainer::before, body .collection .imageGalleryContainer::after {
      display: table;
      content: ' ';
      -webkit-flex-basis: 0;
          -ms-flex-preferred-size: 0;
              flex-basis: 0;
      -webkit-order: 1;
          -ms-flex-order: 1;
              order: 1; }
    body .collection .imageGalleryContainer::after {
      clear: both; }
    body .collection .imageGalleryContainer .imageGallery {
      width: 91.66667%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem;
      margin-right: auto;
      margin-left: auto; }
      @media print, screen and (min-width: 40em) {
        body .collection .imageGalleryContainer .imageGallery {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      body .collection .imageGalleryContainer .imageGallery, body .collection .imageGalleryContainer .imageGallery:last-child:not(:first-child) {
        float: left;
        clear: none; }
      body .collection .imageGalleryContainer .imageGallery:last-child:not(:first-child) {
        float: right; }
      body .collection .imageGalleryContainer .imageGallery, body .collection .imageGalleryContainer .imageGallery:last-child:not(:first-child) {
        float: none;
        clear: both; }
      @media screen and (max-width: 39.99875em) {
        body .collection .imageGalleryContainer .imageGallery {
          padding-right: 0;
          padding-left: 0; } }
  body #collection .listingContainer {
    max-width: 75rem;
    margin-right: auto;
    margin-left: auto; }
    body #collection .listingContainer::before, body #collection .listingContainer::after {
      display: table;
      content: ' ';
      -webkit-flex-basis: 0;
          -ms-flex-preferred-size: 0;
              flex-basis: 0;
      -webkit-order: 1;
          -ms-flex-order: 1;
              order: 1; }
    body #collection .listingContainer::after {
      clear: both; }
    body #collection .listingContainer .image {
      min-height: 200px;
      width: auto;
      background-size: cover;
      background-position: center; }
      @media screen and (min-width: 40em) and (max-width: 63.99875em) {
        body #collection .listingContainer .image {
          min-height: 440px; } }
      @media screen and (min-width: 64em) {
        body #collection .listingContainer .image {
          min-height: 570px; } }
    body #collection .listingContainer .details {
      background-color: #fff;
      display: table; }
      @media screen and (min-width: 64em) {
        body #collection .listingContainer .details {
          padding: 3rem !important; } }
      @media screen and (min-width: 40em) and (max-width: 63.99875em) {
        body #collection .listingContainer .details {
          padding: 1.5rem !important; } }
      @media screen and (max-width: 39.99875em) {
        body #collection .listingContainer .details {
          padding-left: inherit !important;
          padding-right: inherit !important;
          padding-top: 0.25rem;
          padding-bottom: 1.5rem; } }
      body #collection .listingContainer .details .valign {
        display: table-cell;
        vertical-align: middle; }
        body #collection .listingContainer .details .valign .tagContainer {
          max-width: 75rem;
          margin-right: auto;
          margin-left: auto;
          margin-top: 0.75rem; }
          body #collection .listingContainer .details .valign .tagContainer::before, body #collection .listingContainer .details .valign .tagContainer::after {
            display: table;
            content: ' ';
            -webkit-flex-basis: 0;
                -ms-flex-preferred-size: 0;
                    flex-basis: 0;
            -webkit-order: 1;
                -ms-flex-order: 1;
                    order: 1; }
          body #collection .listingContainer .details .valign .tagContainer::after {
            clear: both; }
          body #collection .listingContainer .details .valign .tagContainer .tag {
            width: auto;
            display: inline-block;
            background-color: #ffe100;
            color: #1d1d1d;
            font-family: 'bebas_neuebold','sans-serif';
            line-height: 0.9;
            margin-bottom: 0rem;
            letter-spacing: 0.1rem;
            font-size: 0.85rem;
            padding: 0.35rem 0.5rem; }
        body #collection .listingContainer .details .valign .title {
          font-size: 3.25rem;
          color: #877148;
          line-height: 0.9;
          padding: 1rem 0rem 0.25rem 0rem;
          font-family: 'bebas_neueregular','sans-serif'; }
        body #collection .listingContainer .details .valign .description {
          line-height: 1.4; }
          @media screen and (max-width: 63.99875em) {
            body #collection .listingContainer .details .valign .description {
              font-size: 0.9rem; } }
        @media screen and (max-width: 39.99875em) {
          body #collection .listingContainer .details .valign .showMoreInfo {
            margin-top: 1rem; } }
  @media screen and (max-width: 39.99875em) {
    body #collection .even .details {
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem;
      /*margin-top: -3rem;
					margin-left: -1rem;
					float:left!important;*/ } }
  @media screen and (max-width: 39.99875em) and (min-width: 40em) {
    body #collection .even .details {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media screen and (max-width: 39.99875em) {
      body #collection .even .details, body #collection .even .details:last-child:not(:first-child) {
        float: left;
        clear: none; }
      body #collection .even .details:last-child:not(:first-child) {
        float: right; } }
  @media screen and (min-width: 40em) {
    body #collection .even .details {
      position: relative;
      left: -50%;
      width: 50%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media screen and (min-width: 40em) and (min-width: 40em) {
    body #collection .even .details {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media screen and (min-width: 40em) {
      body #collection .even .details, body #collection .even .details:last-child:not(:first-child) {
        float: left;
        clear: none; }
      body #collection .even .details:last-child:not(:first-child) {
        float: right; } }
  @media screen and (max-width: 39.99875em) {
    body #collection .even .image {
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media screen and (max-width: 39.99875em) and (min-width: 40em) {
    body #collection .even .image {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media screen and (max-width: 39.99875em) {
      body #collection .even .image, body #collection .even .image:last-child:not(:first-child) {
        float: left;
        clear: none; }
      body #collection .even .image:last-child:not(:first-child) {
        float: right; } }
  @media screen and (min-width: 40em) {
    body #collection .even .image {
      position: relative;
      left: 50%;
      width: 50%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media screen and (min-width: 40em) and (min-width: 40em) {
    body #collection .even .image {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media screen and (min-width: 40em) {
      body #collection .even .image, body #collection .even .image:last-child:not(:first-child) {
        float: left;
        clear: none; }
      body #collection .even .image:last-child:not(:first-child) {
        float: right; } }
  body #collection .odd .details {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      body #collection .odd .details {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    body #collection .odd .details, body #collection .odd .details:last-child:not(:first-child) {
      float: left;
      clear: none; }
    body #collection .odd .details:last-child:not(:first-child) {
      float: right; }
    @media screen and (min-width: 40em) {
      body #collection .odd .details {
        width: 50%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media screen and (min-width: 40em) and (min-width: 40em) {
    body #collection .odd .details {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media screen and (min-width: 40em) {
        body #collection .odd .details, body #collection .odd .details:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #collection .odd .details:last-child:not(:first-child) {
          float: right; } }
    @media screen and (max-width: 39.99875em) {
      body #collection .odd .details {
        /*margin-top: -3rem;
					margin-right: -1rem;*/ } }
  body #collection .odd .image {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      body #collection .odd .image {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    body #collection .odd .image, body #collection .odd .image:last-child:not(:first-child) {
      float: left;
      clear: none; }
    body #collection .odd .image:last-child:not(:first-child) {
      float: right; }
    @media screen and (min-width: 40em) {
      body #collection .odd .image {
        width: 50%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media screen and (min-width: 40em) and (min-width: 40em) {
    body #collection .odd .image {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media screen and (min-width: 40em) {
        body #collection .odd .image, body #collection .odd .image:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body #collection .odd .image:last-child:not(:first-child) {
          float: right; } }
  body .entryRow {
    max-width: 75rem;
    margin-right: auto;
    margin-left: auto; }
    body .entryRow::before, body .entryRow::after {
      display: table;
      content: ' ';
      -webkit-flex-basis: 0;
          -ms-flex-preferred-size: 0;
              flex-basis: 0;
      -webkit-order: 1;
          -ms-flex-order: 1;
              order: 1; }
    body .entryRow::after {
      clear: both; }
    body .entryRow .entry {
      display: table; }
      @media screen and (max-width: 63.99875em) {
        body .entryRow .entry {
          width: 100%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem;
          padding: 2rem !important; } }
  @media screen and (max-width: 63.99875em) and (min-width: 40em) {
    body .entryRow .entry {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
      @media screen and (max-width: 63.99875em) {
          body .entryRow .entry, body .entryRow .entry:last-child:not(:first-child) {
            float: left;
            clear: none; }
          body .entryRow .entry:last-child:not(:first-child) {
            float: right; } }
      @media screen and (min-width: 64em) {
        body .entryRow .entry {
          width: 50%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem;
          padding: 4rem; } }
  @media screen and (min-width: 64em) and (min-width: 40em) {
    body .entryRow .entry {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
      @media screen and (min-width: 64em) {
          body .entryRow .entry, body .entryRow .entry:last-child:not(:first-child) {
            float: left;
            clear: none; }
          body .entryRow .entry:last-child:not(:first-child) {
            float: right; } }
      body .entryRow .entry.yellow {
        background-color: #ffe100; }
      body .entryRow .entry .entryContent {
        max-width: 75rem;
        margin-right: auto;
        margin-left: auto;
        display: table-cell;
        vertical-align: middle; }
        body .entryRow .entry .entryContent::before, body .entryRow .entry .entryContent::after {
          display: table;
          content: ' ';
          -webkit-flex-basis: 0;
              -ms-flex-preferred-size: 0;
                  flex-basis: 0;
          -webkit-order: 1;
              -ms-flex-order: 1;
                  order: 1; }
        body .entryRow .entry .entryContent::after {
          clear: both; }
        body .entryRow .entry .entryContent .subEntryItem {
          text-align: center;
          width: 100%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem; }
          @media print, screen and (min-width: 40em) {
            body .entryRow .entry .entryContent .subEntryItem {
              padding-right: 0.9375rem;
              padding-left: 0.9375rem; } }
          body .entryRow .entry .entryContent .subEntryItem, body .entryRow .entry .entryContent .subEntryItem:last-child:not(:first-child) {
            float: left;
            clear: none; }
          body .entryRow .entry .entryContent .subEntryItem:last-child:not(:first-child) {
            float: right; }
          body .entryRow .entry .entryContent .subEntryItem .heading {
            max-width: 75rem;
            margin-right: auto;
            margin-left: auto;
            width: 100%;
            float: left;
            padding-right: 0.375rem;
            padding-left: 0.375rem;
            font-size: 3.25rem;
            color: #877148;
            text-transform: uppercase;
            font-family: 'bebas_neueregular','sans-serif';
            line-height: 0.9;
            margin-bottom: 1rem; }
            body .entryRow .entry .entryContent .subEntryItem .heading::before, body .entryRow .entry .entryContent .subEntryItem .heading::after {
              display: table;
              content: ' ';
              -webkit-flex-basis: 0;
                  -ms-flex-preferred-size: 0;
                      flex-basis: 0;
              -webkit-order: 1;
                  -ms-flex-order: 1;
                      order: 1; }
            body .entryRow .entry .entryContent .subEntryItem .heading::after {
              clear: both; }
            body .entryRow .entry .entryContent .subEntryItem .heading, body .entryRow .entry .entryContent .subEntryItem .heading:last-child:not(:first-child) {
              float: left;
              clear: none; }
            body .entryRow .entry .entryContent .subEntryItem .heading:last-child:not(:first-child) {
              float: right; }
            body .entryRow .entry .entryContent .subEntryItem .heading, body .entryRow .entry .entryContent .subEntryItem .heading:last-child {
              float: none; }
          body .entryRow .entry .entryContent .subEntryItem .description {
            max-width: 75rem;
            margin-right: auto;
            margin-left: auto;
            width: 100%;
            float: left;
            padding-right: 0.375rem;
            padding-left: 0.375rem; }
            body .entryRow .entry .entryContent .subEntryItem .description::before, body .entryRow .entry .entryContent .subEntryItem .description::after {
              display: table;
              content: ' ';
              -webkit-flex-basis: 0;
                  -ms-flex-preferred-size: 0;
                      flex-basis: 0;
              -webkit-order: 1;
                  -ms-flex-order: 1;
                      order: 1; }
            body .entryRow .entry .entryContent .subEntryItem .description::after {
              clear: both; }
            body .entryRow .entry .entryContent .subEntryItem .description, body .entryRow .entry .entryContent .subEntryItem .description:last-child:not(:first-child) {
              float: left;
              clear: none; }
            body .entryRow .entry .entryContent .subEntryItem .description:last-child:not(:first-child) {
              float: right; }
            body .entryRow .entry .entryContent .subEntryItem .description, body .entryRow .entry .entryContent .subEntryItem .description:last-child {
              float: none; }
          body .entryRow .entry .entryContent .subEntryItem .buttonContainer {
            max-width: 75rem;
            margin-right: auto;
            margin-left: auto;
            width: 100%;
            float: left;
            padding-right: 0.375rem;
            padding-left: 0.375rem; }
            body .entryRow .entry .entryContent .subEntryItem .buttonContainer::before, body .entryRow .entry .entryContent .subEntryItem .buttonContainer::after {
              display: table;
              content: ' ';
              -webkit-flex-basis: 0;
                  -ms-flex-preferred-size: 0;
                      flex-basis: 0;
              -webkit-order: 1;
                  -ms-flex-order: 1;
                      order: 1; }
            body .entryRow .entry .entryContent .subEntryItem .buttonContainer::after {
              clear: both; }
            body .entryRow .entry .entryContent .subEntryItem .buttonContainer, body .entryRow .entry .entryContent .subEntryItem .buttonContainer:last-child:not(:first-child) {
              float: left;
              clear: none; }
            body .entryRow .entry .entryContent .subEntryItem .buttonContainer:last-child:not(:first-child) {
              float: right; }
            body .entryRow .entry .entryContent .subEntryItem .buttonContainer, body .entryRow .entry .entryContent .subEntryItem .buttonContainer:last-child {
              float: none; }
          body .entryRow .entry .entryContent .subEntryItem:first-of-type {
            border-bottom: 1px solid #d7d7d7;
            padding-bottom: 2rem;
            margin-bottom: 3rem; }
  body .hoursContainer {
    background-color: #ffe100; }
    body .hoursContainer .hours {
      padding: 3rem 0; }
      body .hoursContainer .hours h2, body .hoursContainer .hours h3 {
        text-align: center;
        font-family: 'bebas_neuebold',sans-serif;
        color: #1d1d1d; }
      body .hoursContainer .hours .day {
        font-family: 'robotobold','sans-serif';
        font-size: 1rem;
        display: block;
        line-height: 1.3; }
      body .hoursContainer .hours .hoursDetail {
        font-family: 'robotolight','sans-serif';
        display: block;
        line-height: 1.3;
        font-size: 0.9rem;
        padding-top: 0.25rem; }
      body .hoursContainer .hours .hourBlock {
        text-align: center;
        margin: 0.5rem 0; }
      body .hoursContainer .hours .titleBlock {
        max-width: 75rem;
        margin-right: auto;
        margin-left: auto;
        margin-bottom: 2rem; }
        body .hoursContainer .hours .titleBlock::before, body .hoursContainer .hours .titleBlock::after {
          display: table;
          content: ' ';
          -webkit-flex-basis: 0;
              -ms-flex-preferred-size: 0;
                  flex-basis: 0;
          -webkit-order: 1;
              -ms-flex-order: 1;
                  order: 1; }
        body .hoursContainer .hours .titleBlock::after {
          clear: both; }
        body .hoursContainer .hours .titleBlock h2 {
          font-size: 3.25rem;
          margin-bottom: 0;
          line-height: 0.9; }
          @media screen and (min-width: 40em) {
            body .hoursContainer .hours .titleBlock h2 {
              width: 50%;
              float: left;
              padding-right: 0.625rem;
              padding-left: 0.625rem;
              margin-right: auto;
              margin-left: auto; } }
  @media screen and (min-width: 40em) and (min-width: 40em) {
    body .hoursContainer .hours .titleBlock h2 {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
          @media screen and (min-width: 40em) {
              body .hoursContainer .hours .titleBlock h2, body .hoursContainer .hours .titleBlock h2:last-child:not(:first-child) {
                float: left;
                clear: none; }
              body .hoursContainer .hours .titleBlock h2:last-child:not(:first-child) {
                float: right; }
              body .hoursContainer .hours .titleBlock h2, body .hoursContainer .hours .titleBlock h2:last-child:not(:first-child) {
                float: none;
                clear: both; } }
          @media screen and (max-width: 39.99875em) {
            body .hoursContainer .hours .titleBlock h2 {
              width: 83.33333%;
              float: left;
              padding-right: 0.625rem;
              padding-left: 0.625rem;
              margin-right: auto;
              margin-left: auto; } }
  @media screen and (max-width: 39.99875em) and (min-width: 40em) {
    body .hoursContainer .hours .titleBlock h2 {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
          @media screen and (max-width: 39.99875em) {
              body .hoursContainer .hours .titleBlock h2, body .hoursContainer .hours .titleBlock h2:last-child:not(:first-child) {
                float: left;
                clear: none; }
              body .hoursContainer .hours .titleBlock h2:last-child:not(:first-child) {
                float: right; }
              body .hoursContainer .hours .titleBlock h2, body .hoursContainer .hours .titleBlock h2:last-child:not(:first-child) {
                float: none;
                clear: both; } }
      body .hoursContainer .hours .headingBlock {
        max-width: 75rem;
        margin-right: auto;
        margin-left: auto;
        margin-top: 1.5rem; }
        body .hoursContainer .hours .headingBlock::before, body .hoursContainer .hours .headingBlock::after {
          display: table;
          content: ' ';
          -webkit-flex-basis: 0;
              -ms-flex-preferred-size: 0;
                  flex-basis: 0;
          -webkit-order: 1;
              -ms-flex-order: 1;
                  order: 1; }
        body .hoursContainer .hours .headingBlock::after {
          clear: both; }
        body .hoursContainer .hours .headingBlock h3 {
          font-size: 1.8rem;
          margin-bottom: 0;
          line-height: 0.9; }
          @media screen and (min-width: 40em) {
            body .hoursContainer .hours .headingBlock h3 {
              width: 50%;
              float: left;
              padding-right: 0.625rem;
              padding-left: 0.625rem;
              margin-right: auto;
              margin-left: auto; } }
  @media screen and (min-width: 40em) and (min-width: 40em) {
    body .hoursContainer .hours .headingBlock h3 {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
          @media screen and (min-width: 40em) {
              body .hoursContainer .hours .headingBlock h3, body .hoursContainer .hours .headingBlock h3:last-child:not(:first-child) {
                float: left;
                clear: none; }
              body .hoursContainer .hours .headingBlock h3:last-child:not(:first-child) {
                float: right; }
              body .hoursContainer .hours .headingBlock h3, body .hoursContainer .hours .headingBlock h3:last-child:not(:first-child) {
                float: none;
                clear: both; } }
          @media screen and (max-width: 39.99875em) {
            body .hoursContainer .hours .headingBlock h3 {
              width: 83.33333%;
              float: left;
              padding-right: 0.625rem;
              padding-left: 0.625rem;
              margin-right: auto;
              margin-left: auto; } }
  @media screen and (max-width: 39.99875em) and (min-width: 40em) {
    body .hoursContainer .hours .headingBlock h3 {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
          @media screen and (max-width: 39.99875em) {
              body .hoursContainer .hours .headingBlock h3, body .hoursContainer .hours .headingBlock h3:last-child:not(:first-child) {
                float: left;
                clear: none; }
              body .hoursContainer .hours .headingBlock h3:last-child:not(:first-child) {
                float: right; }
              body .hoursContainer .hours .headingBlock h3, body .hoursContainer .hours .headingBlock h3:last-child:not(:first-child) {
                float: none;
                clear: both; } }
        body .hoursContainer .hours .headingBlock.specialHours h3 {
          font-size: 1.25rem; }
      body .hoursContainer .hours .regularHours {
        max-width: 75rem;
        margin-right: auto;
        margin-left: auto; }
        body .hoursContainer .hours .regularHours::before, body .hoursContainer .hours .regularHours::after {
          display: table;
          content: ' ';
          -webkit-flex-basis: 0;
              -ms-flex-preferred-size: 0;
                  flex-basis: 0;
          -webkit-order: 1;
              -ms-flex-order: 1;
                  order: 1; }
        body .hoursContainer .hours .regularHours::after {
          clear: both; }
        @media screen and (min-width: 40em) {
          body .hoursContainer .hours .regularHours .hourBlock {
            width: 50%;
            float: left;
            padding-right: 0.625rem;
            padding-left: 0.625rem;
            margin-right: auto;
            margin-left: auto; } }
  @media screen and (min-width: 40em) and (min-width: 40em) {
    body .hoursContainer .hours .regularHours .hourBlock {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
        @media screen and (min-width: 40em) {
            body .hoursContainer .hours .regularHours .hourBlock, body .hoursContainer .hours .regularHours .hourBlock:last-child:not(:first-child) {
              float: left;
              clear: none; }
            body .hoursContainer .hours .regularHours .hourBlock:last-child:not(:first-child) {
              float: right; }
            body .hoursContainer .hours .regularHours .hourBlock, body .hoursContainer .hours .regularHours .hourBlock:last-child:not(:first-child) {
              float: none;
              clear: both; } }
        @media screen and (max-width: 39.99875em) {
          body .hoursContainer .hours .regularHours .hourBlock {
            width: 83.33333%;
            float: left;
            padding-right: 0.625rem;
            padding-left: 0.625rem;
            margin-right: auto;
            margin-left: auto; } }
  @media screen and (max-width: 39.99875em) and (min-width: 40em) {
    body .hoursContainer .hours .regularHours .hourBlock {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
        @media screen and (max-width: 39.99875em) {
            body .hoursContainer .hours .regularHours .hourBlock, body .hoursContainer .hours .regularHours .hourBlock:last-child:not(:first-child) {
              float: left;
              clear: none; }
            body .hoursContainer .hours .regularHours .hourBlock:last-child:not(:first-child) {
              float: right; }
            body .hoursContainer .hours .regularHours .hourBlock, body .hoursContainer .hours .regularHours .hourBlock:last-child:not(:first-child) {
              float: none;
              clear: both; } }
  body section[role="main"] {
    padding-top: 4rem;
    max-width: 75rem;
    margin-right: auto;
    margin-left: auto;
    /* Homepage Custom Widgets */ }
    body section[role="main"]::before, body section[role="main"]::after {
      display: table;
      content: ' ';
      -webkit-flex-basis: 0;
          -ms-flex-preferred-size: 0;
              flex-basis: 0;
      -webkit-order: 1;
          -ms-flex-order: 1;
              order: 1; }
    body section[role="main"]::after {
      clear: both; }
    body section[role="main"] h1 {
      font-family: 'bebas_neueregular',sans-serif;
      text-align: center;
      width: 100%;
      line-height: 3rem;
      font-size: 4rem; }
      @media screen and (max-width: 39.99875em) {
        body section[role="main"] h1 {
          font-size: 3rem;
          line-height: 2.5rem; } }
    body section[role="main"] .OUAG_homepage_listing {
      padding-top: 4rem;
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; }
      body section[role="main"] .OUAG_homepage_listing h2 {
        color: #1d1d1d;
        font-size: 3.75rem;
        line-height: 0.9; }
        @media screen and (max-width: 63.99875em) {
          body section[role="main"] .OUAG_homepage_listing h2 {
            font-size: 2.75rem; } }
      @media print, screen and (min-width: 40em) {
        body section[role="main"] .OUAG_homepage_listing {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      body section[role="main"] .OUAG_homepage_listing, body section[role="main"] .OUAG_homepage_listing:last-child:not(:first-child) {
        float: left;
        clear: none; }
      body section[role="main"] .OUAG_homepage_listing:last-child:not(:first-child) {
        float: right; }
      body section[role="main"] .OUAG_homepage_listing .homepageEventListingContainer {
        max-width: 75rem;
        margin-right: auto;
        margin-left: auto; }
        body section[role="main"] .OUAG_homepage_listing .homepageEventListingContainer::before, body section[role="main"] .OUAG_homepage_listing .homepageEventListingContainer::after {
          display: table;
          content: ' ';
          -webkit-flex-basis: 0;
              -ms-flex-preferred-size: 0;
                  flex-basis: 0;
          -webkit-order: 1;
              -ms-flex-order: 1;
                  order: 1; }
        body section[role="main"] .OUAG_homepage_listing .homepageEventListingContainer::after {
          clear: both; }
        body section[role="main"] .OUAG_homepage_listing .homepageEventListingContainer .image {
          min-height: 400px;
          width: 100%;
          background-size: cover; }
          @media print, screen and (min-width: 40em) {
            body section[role="main"] .OUAG_homepage_listing .homepageEventListingContainer .image {
              min-height: 440px; } }
          @media print, screen and (min-width: 64em) {
            body section[role="main"] .OUAG_homepage_listing .homepageEventListingContainer .image {
              min-height: 560px; } }
        body section[role="main"] .OUAG_homepage_listing .homepageEventListingContainer .details {
          background-color: #fff;
          display: table; }
          body section[role="main"] .OUAG_homepage_listing .homepageEventListingContainer .details .valign {
            display: table-cell;
            vertical-align: middle; }
            body section[role="main"] .OUAG_homepage_listing .homepageEventListingContainer .details .valign .homepageCategory {
              display: inline-block;
              color: #1d1d1d;
              background-color: #ffe100;
              text-transform: uppercase;
              font-family: 'bebas_neuebold',sans-serif;
              padding: 0.6rem;
              line-height: 0.5rem;
              letter-spacing: 0.1rem;
              margin-bottom: 0.8rem; }
            body section[role="main"] .OUAG_homepage_listing .homepageEventListingContainer .details .valign a:hover h2, body section[role="main"] .OUAG_homepage_listing .homepageEventListingContainer .details .valign a:focus h2 {
              color: #877148; }
            body section[role="main"] .OUAG_homepage_listing .homepageEventListingContainer .details .valign .dateContainer .homepageDate {
              font-size: 1.75rem;
              line-height: 0.3;
              display: inline-block;
              padding-left: 2.2rem;
              text-indent: -2.2rem;
              margin-bottom: 1rem;
              width: 100%; }
              @media screen and (max-width: 63.99875em) {
                body section[role="main"] .OUAG_homepage_listing .homepageEventListingContainer .details .valign .dateContainer .homepageDate {
                  font-size: 1.4rem; } }
              body section[role="main"] .OUAG_homepage_listing .homepageEventListingContainer .details .valign .dateContainer .homepageDate .calendarIcon {
                max-width: 27px;
                height: auto;
                margin-right: 0.5rem; }
            body section[role="main"] .OUAG_homepage_listing .homepageEventListingContainer .details .valign .homepageDescription {
              line-height: 1.4; }
              @media screen and (max-width: 63.99875em) {
                body section[role="main"] .OUAG_homepage_listing .homepageEventListingContainer .details .valign .homepageDescription {
                  font-size: 0.9rem; } }
      body section[role="main"] .OUAG_homepage_listing .even .details {
        padding: 3rem 3rem 3rem 1rem !important; }
        @media screen and (max-width: 39.99875em) {
          body section[role="main"] .OUAG_homepage_listing .even .details {
            width: 100%;
            float: left;
            padding-right: 0.625rem;
            padding-left: 0.625rem;
            margin-top: -3rem;
            margin-left: -1rem;
            float: left !important;
            padding: 1.5rem 1rem 4rem 1rem !important; } }
  @media screen and (max-width: 39.99875em) and (min-width: 40em) {
    body section[role="main"] .OUAG_homepage_listing .even .details {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
        @media screen and (max-width: 39.99875em) {
            body section[role="main"] .OUAG_homepage_listing .even .details, body section[role="main"] .OUAG_homepage_listing .even .details:last-child:not(:first-child) {
              float: left;
              clear: none; }
            body section[role="main"] .OUAG_homepage_listing .even .details:last-child:not(:first-child) {
              float: right; } }
        @media print, screen and (min-width: 40em) {
          body section[role="main"] .OUAG_homepage_listing .even .details {
            position: relative;
            left: -50%;
            width: 50%;
            float: left;
            padding-right: 0.625rem;
            padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    body section[role="main"] .OUAG_homepage_listing .even .details {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
        @media print, screen and (min-width: 40em) {
            body section[role="main"] .OUAG_homepage_listing .even .details, body section[role="main"] .OUAG_homepage_listing .even .details:last-child:not(:first-child) {
              float: left;
              clear: none; }
            body section[role="main"] .OUAG_homepage_listing .even .details:last-child:not(:first-child) {
              float: right; } }
      @media screen and (max-width: 39.99875em) {
        body section[role="main"] .OUAG_homepage_listing .even .image {
          width: 100%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem; } }
  @media screen and (max-width: 39.99875em) and (min-width: 40em) {
    body section[role="main"] .OUAG_homepage_listing .even .image {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
      @media screen and (max-width: 39.99875em) {
          body section[role="main"] .OUAG_homepage_listing .even .image, body section[role="main"] .OUAG_homepage_listing .even .image:last-child:not(:first-child) {
            float: left;
            clear: none; }
          body section[role="main"] .OUAG_homepage_listing .even .image:last-child:not(:first-child) {
            float: right; } }
      @media print, screen and (min-width: 40em) {
        body section[role="main"] .OUAG_homepage_listing .even .image {
          position: relative;
          left: 50%;
          width: 50%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    body section[role="main"] .OUAG_homepage_listing .even .image {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
      @media print, screen and (min-width: 40em) {
          body section[role="main"] .OUAG_homepage_listing .even .image, body section[role="main"] .OUAG_homepage_listing .even .image:last-child:not(:first-child) {
            float: left;
            clear: none; }
          body section[role="main"] .OUAG_homepage_listing .even .image:last-child:not(:first-child) {
            float: right; } }
      body section[role="main"] .OUAG_homepage_listing .odd .details {
        padding: 3rem 1rem 3rem 3rem !important;
        width: 100%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; }
        @media print, screen and (min-width: 40em) {
          body section[role="main"] .OUAG_homepage_listing .odd .details {
            padding-right: 0.9375rem;
            padding-left: 0.9375rem; } }
        body section[role="main"] .OUAG_homepage_listing .odd .details, body section[role="main"] .OUAG_homepage_listing .odd .details:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body section[role="main"] .OUAG_homepage_listing .odd .details:last-child:not(:first-child) {
          float: right; }
        @media print, screen and (min-width: 40em) {
          body section[role="main"] .OUAG_homepage_listing .odd .details {
            width: 50%;
            float: left;
            padding-right: 0.625rem;
            padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    body section[role="main"] .OUAG_homepage_listing .odd .details {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
        @media print, screen and (min-width: 40em) {
            body section[role="main"] .OUAG_homepage_listing .odd .details, body section[role="main"] .OUAG_homepage_listing .odd .details:last-child:not(:first-child) {
              float: left;
              clear: none; }
            body section[role="main"] .OUAG_homepage_listing .odd .details:last-child:not(:first-child) {
              float: right; } }
        @media screen and (max-width: 39.99875em) {
          body section[role="main"] .OUAG_homepage_listing .odd .details {
            margin-top: -3rem;
            margin-right: -1rem;
            padding: 1.5rem 1rem 4rem 1rem !important; } }
      body section[role="main"] .OUAG_homepage_listing .odd .image {
        width: 100%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; }
        @media print, screen and (min-width: 40em) {
          body section[role="main"] .OUAG_homepage_listing .odd .image {
            padding-right: 0.9375rem;
            padding-left: 0.9375rem; } }
        body section[role="main"] .OUAG_homepage_listing .odd .image, body section[role="main"] .OUAG_homepage_listing .odd .image:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body section[role="main"] .OUAG_homepage_listing .odd .image:last-child:not(:first-child) {
          float: right; }
        @media print, screen and (min-width: 40em) {
          body section[role="main"] .OUAG_homepage_listing .odd .image {
            width: 50%;
            float: left;
            padding-right: 0.625rem;
            padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    body section[role="main"] .OUAG_homepage_listing .odd .image {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
        @media print, screen and (min-width: 40em) {
            body section[role="main"] .OUAG_homepage_listing .odd .image, body section[role="main"] .OUAG_homepage_listing .odd .image:last-child:not(:first-child) {
              float: left;
              clear: none; }
            body section[role="main"] .OUAG_homepage_listing .odd .image:last-child:not(:first-child) {
              float: right; } }
  body .homepageBottom {
    margin-top: 4rem; }
    body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer {
      position: relative;
      max-width: 75rem;
      margin-right: auto;
      margin-left: auto;
      max-width: none;
      min-height: 800px;
      background-repeat: no-repeat;
      background-size: cover; }
      body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer::before, body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer::after {
        display: table;
        content: ' ';
        -webkit-flex-basis: 0;
            -ms-flex-preferred-size: 0;
                flex-basis: 0;
        -webkit-order: 1;
            -ms-flex-order: 1;
                order: 1; }
      body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer::after {
        clear: both; }
      body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionHeading {
        width: 25%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        margin-right: auto;
        margin-left: auto;
        text-align: center;
        background-color: rgba(255, 225, 0, 0.85);
        font-family: 'bebas_neuebold', sans-serif;
        padding-top: 1.5rem;
        padding-bottom: 1.5rem;
        font-size: 1.2rem;
        letter-spacing: 0.2rem; }
        @media print, screen and (min-width: 40em) {
          body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionHeading {
            padding-right: 0.9375rem;
            padding-left: 0.9375rem; } }
        body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionHeading, body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionHeading:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionHeading:last-child:not(:first-child) {
          float: right; }
        body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionHeading, body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionHeading:last-child:not(:first-child) {
          float: none;
          clear: both; }
        @media screen and (max-width: 39.99875em) {
          body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionHeading {
            width: 83.33333%;
            float: left;
            padding-right: 0.625rem;
            padding-left: 0.625rem;
            margin-right: auto;
            margin-left: auto; } }
  @media screen and (max-width: 39.99875em) and (min-width: 40em) {
    body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionHeading {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
        @media screen and (max-width: 39.99875em) {
            body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionHeading, body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionHeading:last-child:not(:first-child) {
              float: left;
              clear: none; }
            body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionHeading:last-child:not(:first-child) {
              float: right; }
            body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionHeading, body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionHeading:last-child:not(:first-child) {
              float: none;
              clear: both; } }
        @media screen and (min-width: 40em) and (max-width: 63.99875em) {
          body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionHeading {
            width: 41.66667%;
            float: left;
            padding-right: 0.625rem;
            padding-left: 0.625rem;
            margin-right: auto;
            margin-left: auto; } }
  @media screen and (min-width: 40em) and (max-width: 63.99875em) and (min-width: 40em) {
    body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionHeading {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
        @media screen and (min-width: 40em) and (max-width: 63.99875em) {
            body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionHeading, body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionHeading:last-child:not(:first-child) {
              float: left;
              clear: none; }
            body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionHeading:last-child:not(:first-child) {
              float: right; }
            body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionHeading, body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionHeading:last-child:not(:first-child) {
              float: none;
              clear: both; } }
      body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionDetails {
        position: absolute;
        bottom: 0;
        text-align: center;
        background-color: #fff;
        width: 50%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; }
        @media print, screen and (min-width: 40em) {
          body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionDetails {
            padding-right: 0.9375rem;
            padding-left: 0.9375rem; } }
        body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionDetails, body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionDetails:last-child:not(:first-child) {
          float: left;
          clear: none; }
        body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionDetails:last-child:not(:first-child) {
          float: right; }
        @media screen and (max-width: 39.99875em) {
          body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionDetails {
            width: 83.33333%;
            float: left;
            padding-right: 0.625rem;
            padding-left: 0.625rem;
            left: 8%; } }
  @media screen and (max-width: 39.99875em) and (min-width: 40em) {
    body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionDetails {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
        @media screen and (max-width: 39.99875em) {
            body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionDetails, body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionDetails:last-child:not(:first-child) {
              float: left;
              clear: none; }
            body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionDetails:last-child:not(:first-child) {
              float: right; } }
        @media screen and (min-width: 40em) and (max-width: 63.99875em) {
          body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionDetails {
            left: 25%; } }
        @media print, screen and (min-width: 64em) {
          body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionDetails {
            width: 33.33333%;
            float: left;
            padding-right: 0.625rem;
            padding-left: 0.625rem;
            left: 33.5%; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionDetails {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
        @media print, screen and (min-width: 64em) {
            body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionDetails, body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionDetails:last-child:not(:first-child) {
              float: left;
              clear: none; }
            body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionDetails:last-child:not(:first-child) {
              float: right; } }
        body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionDetails #collectionTitle {
          padding: 2rem 3rem 0.5rem 3rem;
          color: #1d1d1d;
          font-family: 'bebas_neueregular',sans-serif;
          font-size: 2.7rem;
          line-height: 0.9; }
        body .homepageBottom .OUAG_homepage_featured_collection #homepageCollectionContainer #collectionDetails #collectionDescription {
          font-family: 'robotoitalic','sans-serif';
          font-size: 0.85rem;
          line-height: 1.5;
          padding: 0 2.2rem; }
  body .footer-container {
    max-width: none;
    background-color: #f4f4f4;
    border-top: none;
    padding: 0px;
    margin-top: 0; }
    body .footer-container .footer-grid {
      max-width: 75rem;
      margin: 0 auto;
      padding-top: 2.2rem 0rem; }
      body .footer-container .footer-grid p {
        font-family: 'bebas_neuebold', sans-serif;
        text-transform: uppercase;
        color: #877148;
        font-size: 1.21rem; }
      @media screen and (max-width: 63.99875em) {
        body .footer-container .footer-grid #footerContactInfo {
          padding-bottom: 1rem; } }
      body .footer-container .footer-grid #footerContactInfo img {
        max-width: 285px;
        width: 100%;
        margin-bottom: 1rem; }
        body .footer-container .footer-grid #footerContactInfo img.social {
          max-width: 31px;
          display: inline; }
        body .footer-container .footer-grid #footerContactInfo img.leftPadding {
          margin-left: 12px; }
      body .footer-container .footer-grid #footerContactInfo p {
        line-height: 1.1rem; }
      @media screen and (max-width: 63.99875em) {
        body .footer-container .footer-grid .wpcf7 {
          margin-top: 2rem;
          margin-bottom: 2rem; } }
      @media print, screen and (min-width: 64em) {
        body .footer-container .footer-grid .wpcf7 {
          padding: 0rem 2.5rem; } }
      body .footer-container .footer-grid .wpcf7 h3 {
        line-height: 1.4rem;
        font-size: 1.9375rem;
        margin-bottom: 0.75rem; }
      body .footer-container .footer-grid .wpcf7 form p {
        line-height: 1.3;
        font-size: 0.85rem;
        font-family: 'roboto','sans-serif';
        text-transform: none;
        color: #1d1d1d; }
      body .footer-container .footer-grid .wpcf7 form input {
        border: 0px;
        box-shadow: none;
        max-width: 450px; }
      body .footer-container .footer-grid .wpcf7 form input[type="submit"] {
        background-color: #1d1d1d;
        border: none;
        margin-top: 1rem;
        padding: 0.5rem 1rem;
        text-transform: uppercase;
        font-family: 'bebas_neuebold', sans-serif;
        font-size: 1.2rem;
        color: #fff;
        letter-spacing: 0.2rem; }
        body .footer-container .footer-grid .wpcf7 form input[type="submit"]:hover, body .footer-container .footer-grid .wpcf7 form input[type="submit"]:focus {
          background-color: #ffe100;
          color: #1d1d1d;
          cursor: pointer; }
      body .footer-container .footer-grid .wpcf7 form input[type="email"] {
        margin-bottom: 0px; }
      body .footer-container .footer-grid .wpcf7 form br {
        display: none; }
      @media screen and (max-width: 63.99875em) {
        body .footer-container .footer-grid #madePossibleBy {
          margin-top: 2rem; } }
      body .footer-container .footer-grid #madePossibleBy h4 {
        font-size: 1.1rem;
        text-align: center;
        line-height: 1;
        margin-bottom: 2rem; }
        @media screen and (max-width: 63.99875em) {
          body .footer-container .footer-grid #madePossibleBy h4 {
            text-align: left; } }
      body .footer-container .footer-grid #madePossibleBy #footerSponsorContainer {
        max-width: 75rem;
        margin-right: auto;
        margin-left: auto; }
        body .footer-container .footer-grid #madePossibleBy #footerSponsorContainer::before, body .footer-container .footer-grid #madePossibleBy #footerSponsorContainer::after {
          display: table;
          content: ' ';
          -webkit-flex-basis: 0;
              -ms-flex-preferred-size: 0;
                  flex-basis: 0;
          -webkit-order: 1;
              -ms-flex-order: 1;
                  order: 1; }
        body .footer-container .footer-grid #madePossibleBy #footerSponsorContainer::after {
          clear: both; }
        body .footer-container .footer-grid #madePossibleBy #footerSponsorContainer .imageLeft {
          width: 33.33333%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem; }
          @media print, screen and (min-width: 40em) {
            body .footer-container .footer-grid #madePossibleBy #footerSponsorContainer .imageLeft {
              padding-right: 0.9375rem;
              padding-left: 0.9375rem; } }
          body .footer-container .footer-grid #madePossibleBy #footerSponsorContainer .imageLeft, body .footer-container .footer-grid #madePossibleBy #footerSponsorContainer .imageLeft:last-child:not(:first-child) {
            float: left;
            clear: none; }
          body .footer-container .footer-grid #madePossibleBy #footerSponsorContainer .imageLeft:last-child:not(:first-child) {
            float: right; }
          @media screen and (min-width: 40em) and (max-width: 63.99875em) {
            body .footer-container .footer-grid #madePossibleBy #footerSponsorContainer .imageLeft {
              width: 16.66667%;
              float: left;
              padding-right: 0.625rem;
              padding-left: 0.625rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.99875em) and (min-width: 40em) {
    body .footer-container .footer-grid #madePossibleBy #footerSponsorContainer .imageLeft {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
          @media screen and (min-width: 40em) and (max-width: 63.99875em) {
              body .footer-container .footer-grid #madePossibleBy #footerSponsorContainer .imageLeft, body .footer-container .footer-grid #madePossibleBy #footerSponsorContainer .imageLeft:last-child:not(:first-child) {
                float: left;
                clear: none; }
              body .footer-container .footer-grid #madePossibleBy #footerSponsorContainer .imageLeft:last-child:not(:first-child) {
                float: right; } }
          @media screen and (max-width: 63.99875em) {
            body .footer-container .footer-grid #madePossibleBy #footerSponsorContainer .imageLeft img {
              max-width: 93px; } }
        body .footer-container .footer-grid #madePossibleBy #footerSponsorContainer .imageRight {
          width: 66.66667%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem; }
          @media print, screen and (min-width: 40em) {
            body .footer-container .footer-grid #madePossibleBy #footerSponsorContainer .imageRight {
              padding-right: 0.9375rem;
              padding-left: 0.9375rem; } }
          body .footer-container .footer-grid #madePossibleBy #footerSponsorContainer .imageRight, body .footer-container .footer-grid #madePossibleBy #footerSponsorContainer .imageRight:last-child:not(:first-child) {
            float: left;
            clear: none; }
          body .footer-container .footer-grid #madePossibleBy #footerSponsorContainer .imageRight:last-child:not(:first-child) {
            float: right; }
          @media screen and (min-width: 40em) and (max-width: 63.99875em) {
            body .footer-container .footer-grid #madePossibleBy #footerSponsorContainer .imageRight {
              width: 83.33333%;
              float: left;
              padding-right: 0.625rem;
              padding-left: 0.625rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.99875em) and (min-width: 40em) {
    body .footer-container .footer-grid #madePossibleBy #footerSponsorContainer .imageRight {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
          @media screen and (min-width: 40em) and (max-width: 63.99875em) {
              body .footer-container .footer-grid #madePossibleBy #footerSponsorContainer .imageRight, body .footer-container .footer-grid #madePossibleBy #footerSponsorContainer .imageRight:last-child:not(:first-child) {
                float: left;
                clear: none; }
              body .footer-container .footer-grid #madePossibleBy #footerSponsorContainer .imageRight:last-child:not(:first-child) {
                float: right; } }
          body .footer-container .footer-grid #madePossibleBy #footerSponsorContainer .imageRight img {
            margin-bottom: 1rem; }
            @media screen and (max-width: 63.99875em) {
              body .footer-container .footer-grid #madePossibleBy #footerSponsorContainer .imageRight img {
                max-width: 216px;
                display: block; } }
      @media screen and (max-width: 63.99875em) {
        body .footer-container .footer-grid #custom_html-11, body .footer-container .footer-grid #custom_html-12 {
          border-top: 1px solid #c3c3c3; } }
      @media screen and (max-width: 63.99875em) {
        body .footer-container .footer-grid #custom_html-5 {
          border-bottom: 1px solid #c3c3c3; } }
    body .footer-container .ouFooter-container {
      max-width: 75rem;
      margin-right: auto;
      margin-left: auto;
      max-width: none;
      background-color: #1d1d1d;
      padding: 2rem 0; }
      body .footer-container .ouFooter-container::before, body .footer-container .ouFooter-container::after {
        display: table;
        content: ' ';
        -webkit-flex-basis: 0;
            -ms-flex-preferred-size: 0;
                flex-basis: 0;
        -webkit-order: 1;
            -ms-flex-order: 1;
                order: 1; }
      body .footer-container .ouFooter-container::after {
        clear: both; }
      body .footer-container .ouFooter-container .ouFooter {
        margin-right: auto;
        margin-left: auto;
        max-width: 860px;
        margin: 0 auto; }
        @media print, screen and (min-width: 64em) {
          body .footer-container .ouFooter-container .ouFooter {
            width: 83.33333%;
            float: left;
            padding-right: 0.625rem;
            padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    body .footer-container .ouFooter-container .ouFooter {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
        @media print, screen and (min-width: 64em) {
            body .footer-container .ouFooter-container .ouFooter, body .footer-container .ouFooter-container .ouFooter:last-child:not(:first-child) {
              float: left;
              clear: none; }
            body .footer-container .ouFooter-container .ouFooter:last-child:not(:first-child) {
              float: right; } }
        @media screen and (max-width: 63.99875em) {
          body .footer-container .ouFooter-container .ouFooter {
            width: 100%;
            float: left;
            padding-right: 0.625rem;
            padding-left: 0.625rem; } }
  @media screen and (max-width: 63.99875em) and (min-width: 40em) {
    body .footer-container .ouFooter-container .ouFooter {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
        @media screen and (max-width: 63.99875em) {
            body .footer-container .ouFooter-container .ouFooter, body .footer-container .ouFooter-container .ouFooter:last-child:not(:first-child) {
              float: left;
              clear: none; }
            body .footer-container .ouFooter-container .ouFooter:last-child:not(:first-child) {
              float: right; } }
        body .footer-container .ouFooter-container .ouFooter, body .footer-container .ouFooter-container .ouFooter:last-child:not(:first-child) {
          float: none;
          clear: both; }
        body .footer-container .ouFooter-container .ouFooter .footerItem {
          text-align: center;
          width: 33.33333%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem; }
          @media print, screen and (min-width: 40em) {
            body .footer-container .ouFooter-container .ouFooter .footerItem {
              padding-right: 0.9375rem;
              padding-left: 0.9375rem; } }
          body .footer-container .ouFooter-container .ouFooter .footerItem, body .footer-container .ouFooter-container .ouFooter .footerItem:last-child:not(:first-child) {
            float: left;
            clear: none; }
          body .footer-container .ouFooter-container .ouFooter .footerItem:last-child:not(:first-child) {
            float: right; }
          @media screen and (max-width: 63.99875em) {
            body .footer-container .ouFooter-container .ouFooter .footerItem {
              width: 100%;
              float: left;
              padding-right: 0.625rem;
              padding-left: 0.625rem;
              padding-bottom: 1rem; } }
  @media screen and (max-width: 63.99875em) and (min-width: 40em) {
    body .footer-container .ouFooter-container .ouFooter .footerItem {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
          @media screen and (max-width: 63.99875em) {
              body .footer-container .ouFooter-container .ouFooter .footerItem, body .footer-container .ouFooter-container .ouFooter .footerItem:last-child:not(:first-child) {
                float: left;
                clear: none; }
              body .footer-container .ouFooter-container .ouFooter .footerItem:last-child:not(:first-child) {
                float: right; } }
          @media print, screen and (min-width: 64em) {
            body .footer-container .ouFooter-container .ouFooter .footerItem {
              border-right: 1px solid #303030; } }
          body .footer-container .ouFooter-container .ouFooter .footerItem #ouFooterLogo {
            max-width: 230px;
            margin: 0 auto; }
            @media print, screen and (min-width: 64em) {
              body .footer-container .ouFooter-container .ouFooter .footerItem #ouFooterLogo {
                padding-top: 0.1rem; } }
            @media screen and (max-width: 63.99875em) {
              body .footer-container .ouFooter-container .ouFooter .footerItem #ouFooterLogo {
                float: none;
                max-width: 300px; } }
          body .footer-container .ouFooter-container .ouFooter .footerItem a {
            width: 100%;
            color: #ccb57a;
            font-size: 0.85rem; }
          body .footer-container .ouFooter-container .ouFooter .footerItem a:hover {
            text-decoration: underline; }
        body .footer-container .ouFooter-container .ouFooter :last-of-type {
          border-right: none; }
          body .footer-container .ouFooter-container .ouFooter :last-of-type:last-child:last-child {
            float: left; }

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

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

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

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

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

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

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

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

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

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

/** === Button === */
.wp-block-button .wp-block-button__link.has-primary-background-color {
  background-color: #877148; }

.wp-block-button .wp-block-button__link.has-primary-color {
  color: #877148; }

.wp-block-button .wp-block-button__link.has-secondary-background-color {
  background-color: #767676; }

.wp-block-button .wp-block-button__link.has-secondary-color {
  color: #767676; }

.wp-block-button .wp-block-button__link.has-success-background-color {
  background-color: #3adb76; }

.wp-block-button .wp-block-button__link.has-success-color {
  color: #3adb76; }

.wp-block-button .wp-block-button__link.has-warning-background-color {
  background-color: #ffae00; }

.wp-block-button .wp-block-button__link.has-warning-color {
  color: #ffae00; }

.wp-block-button .wp-block-button__link.has-alert-background-color {
  background-color: #cc4b37; }

.wp-block-button .wp-block-button__link.has-alert-color {
  color: #cc4b37; }

.wp-block-button.is-style-squared .wp-block-button__link {
  border-radius: 0; }

/** === File === */
.wp-block-file .wp-block-file__button {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 1rem 0;
  padding: 0.85em 1em;
  border: 1px solid transparent;
  border-radius: 0;
  transition: background-color 0.25s ease-out, color 0.25s ease-out;
  font-family: inherit;
  font-size: 0.9rem;
  -webkit-appearance: none;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  background-color: #877148;
  color: #fefefe; }
  [data-whatinput='mouse'] .wp-block-file .wp-block-file__button {
    outline: 0; }
  .wp-block-file .wp-block-file__button:hover, .wp-block-file .wp-block-file__button:focus {
    background-color: #ffe100;
    color: #fefefe; }

@font-face {
  font-family: 'robotobold';
  src: url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-bold-web.eot");
  src: url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-bold-web.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-bold-web.woff2") format("woff2"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-bold-web.woff") format("woff"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-bold-web.ttf") format("truetype"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-bold-web.svg#robotobold") format("svg");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'robotobold_italic';
  src: url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-bolditalic-web.eot");
  src: url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-bolditalic-web.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-bolditalic-web.woff2") format("woff2"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-bolditalic-web.woff") format("woff"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-bolditalic-web.ttf") format("truetype"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-bolditalic-web.svg#robotobold_italic") format("svg");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'robotoregular';
  src: url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-regular-web.eot");
  src: url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-regular-web.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-regular-web.woff2") format("woff2"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-regular-web.woff") format("woff"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-regular-web.ttf") format("truetype"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-regular-web.svg#robotoregular") format("svg");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'robotoitalic';
  src: url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-regularitalic-web.eot");
  src: url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-regularitalic-web.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-regularitalic-web.woff2") format("woff2"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-regularitalic-web.woff") format("woff"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-regularitalic-web.ttf") format("truetype"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-regularitalic-web.svg#robotoitalic") format("svg");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'robotolight';
  src: url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-light-web.eot");
  src: url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-light-web.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-light-web.woff2") format("woff2"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-light-web.woff") format("woff"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-light-web.ttf") format("truetype"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-light-web.svg#robotolight") format("svg");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'robotolight_italic';
  src: url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/r/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/oboto-lightitalic-web.eot");
  src: url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-lightitalic-web.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-lightitalic-web.woff2") format("woff2"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-lightitalic-web.woff") format("woff"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-lightitalic-web.ttf") format("truetype"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-lightitalic-web.svg#robotolight_italic") format("svg");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'robotomedium';
  src: url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-medium-web.eot");
  src: url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-medium-web.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-medium-web.woff2") format("woff2"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-medium-web.woff") format("woff"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-medium-web.ttf") format("truetype"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-medium-web.svg#robotomedium") format("svg");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'robotomedium_italic';
  src: url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-mediumitalic-web.eot");
  src: url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-mediumitalic-web.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-mediumitalic-web.woff2") format("woff2"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-mediumitalic-web.woff") format("woff"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-mediumitalic-web.ttf") format("truetype"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-mediumitalic-web.svg#robotomedium_italic") format("svg");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'robotothin';
  src: url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-thin-web.eot");
  src: url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-thin-web.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-thin-web.woff2") format("woff2"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-thin-web.woff") format("woff"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-thin-web.ttf") format("truetype"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-thin-web.svg#robotothin") format("svg");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'robotothin_italic';
  src: url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-thinitalic-web.eot");
  src: url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-thinitalic-web.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-thinitalic-web.woff2") format("woff2"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-thinitalic-web.woff") format("woff"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-thinitalic-web.ttf") format("truetype"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/roboto-thinitalic-web.svg#robotothin_italic") format("svg");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'bebas_neuebold';
  src: url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/bebasneue-bold-web.eot");
  src: url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/bebasneue-bold-web.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/bebasneue-bold-web.woff2") format("woff2"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/bebasneue-bold-web.woff") format("woff"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/bebasneue-bold-web.ttf") format("truetype"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/bebasneue-bold-web.svg#bebas_neuebold") format("svg");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'bebas_neueregular';
  src: url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/bebasneue-regular-web.eot");
  src: url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/bebasneue-regular-web.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/bebasneue-regular-web.woff2") format("woff2"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/bebasneue-regular-web.woff") format("woff"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/bebasneue-regular-web.ttf") format("truetype"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/bebasneue-regular-web.svg#bebas_neueregular") format("svg");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'bebas_neuebook';
  src: url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/bebasneue-book-web.eot");
  src: url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/bebasneue-book-web.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/bebasneue-book-web.woff2") format("woff2"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/bebasneue-book-web.woff") format("woff"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/bebasneue-book-web.ttf") format("truetype"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/bebasneue-book-web.svg#bebas_neuebook") format("svg");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'bebas_neuelight';
  src: url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/bebasneue-light-web.eot");
  src: url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/bebasneue-light-web.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/bebasneue-light-web.woff2") format("woff2"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/bebasneue-light-web.woff") format("woff"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/bebasneue-light-web.ttf") format("truetype"), url("bebasneue-light-web.svg#bebas_neuelight") format("svg");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'bebas_neuethin';
  src: url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/bebasneue-thin-web.eot");
  src: url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/bebasneue-thin-web.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/bebasneue-thin-web.woff2") format("woff2"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/bebasneue-thin-web.woff") format("woff"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/bebasneue-thin-web.ttf") format("truetype"), url("/wp-content/themes/OaklandUniversityArtGallery/dist/assets/fonts/bebasneue-thin-web.svg#bebas_neuethin") format("svg");
  font-weight: normal;
  font-style: normal; }

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

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

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

.post-navigation::before, .post-navigation::after {
  display: table;
  content: ' ';
  -webkit-flex-basis: 0;
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1; }

.post-navigation::after {
  clear: both; }

.nav-previous {
  float: left; }

.nav-next {
  float: right; }

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

.main-grid {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  margin-top: 1rem; }
  @media print, screen and (min-width: 40em) {
    .main-grid {
      margin-top: 3rem; } }
  .main-grid.sidebar-left .main-content {
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .main-grid.sidebar-left .sidebar {
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; }
  @media print, screen and (min-width: 40em) {
    .main-grid.sidebar-left .main-content {
      -webkit-order: 2;
          -ms-flex-order: 2;
              order: 2; }
    .main-grid.sidebar-left .sidebar {
      -webkit-order: 1;
          -ms-flex-order: 1;
              order: 1; } }
  .main-grid .main-content-full-width {
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
  .main-grid .main-content {
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .main-grid .main-content {
        width: calc(66.66667% - 1.875rem);
        margin-right: 0.9375rem;
        margin-left: 0.9375rem; } }
  .main-grid .sidebar {
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .main-grid .sidebar {
        width: calc(33.33333% - 1.875rem);
        margin-right: 0.9375rem;
        margin-left: 0.9375rem;
        margin-top: 1rem; } }

.footer-container {
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  max-width: 75rem;
  margin: 0 auto;
  border-top: 1px solid #cacaca;
  margin-top: 3.75rem; }
  @media print, screen and (min-width: 40em) {
    .footer-container {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }

.footer-grid {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  padding: 1.875rem 0; }
  .footer-grid section {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    min-height: 0px;
    min-width: 0px;
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
    @media print, screen and (min-width: 64em) {
      .footer-grid section {
        -webkit-flex: 1 1 0px;
            -ms-flex: 1 1 0px;
                flex: 1 1 0px;
        width: auto;
        margin-right: 0.9375rem;
        margin-left: 0.9375rem; } }
  .footer-grid ul {
    list-style-type: none;
    margin: 0;
    padding: 0; }

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

.sites-button {
  background: #877148;
  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: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap; }
  .cards-container .card {
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
    .cards-container .card .card-content {
      padding: 1rem; }
    @media print, screen and (min-width: 40em) {
      .cards-container .card {
        width: calc(33.33333% - 0.7rem);
        margin-right: 0.35rem;
        margin-left: 0.35rem; } }

.featured-hero {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  height: 18.75rem; }
  @media print, screen and (min-width: 40em) {
    .featured-hero {
      height: 25rem; } }
  @media screen and (min-width: 75em) {
    .featured-hero {
      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 {
  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; }
  .front-hero .marketing {
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    max-width: 55rem;
    margin: 0 auto;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap; }
    @media print, screen and (min-width: 40em) {
      .front-hero .marketing {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
  @media print, screen and (min-width: 40em) {
    .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 {
    width: calc(58.33333% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .front-hero .watch {
        width: calc(100% - 1.875rem);
        margin-right: 0.9375rem;
        margin-left: 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 {
    width: calc(66.66667% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .front-hero .tagline {
        width: calc(41.66667% - 1.875rem);
        margin-right: 0.9375rem;
        margin-left: 0.9375rem;
        padding-top: 6rem; } }
  .front-hero h1 {
    color: #fff;
    font-weight: 500;
    font-size: 2.2rem; }
    @media print, screen and (min-width: 40em) {
      .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 {
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  max-width: 75rem;
  margin: 0 auto;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap; }
  @media print, screen and (min-width: 40em) {
    .intro {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .intro .fp-intro {
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .intro .fp-intro {
        width: calc(83.33333% - 1.875rem);
        margin-right: 0.9375rem;
        margin-left: 0.9375rem;
        margin-left: calc(8.33333% + 0.625rem); }
        .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 {
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  max-width: 75rem;
  margin: 0 auto;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap; }
  @media print, screen and (min-width: 40em) {
    .section-divider {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .section-divider hr {
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem;
    box-sizing: border-box; }

.benefits {
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  max-width: 75rem;
  margin: 0 auto;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  text-align: center; }
  @media print, screen and (min-width: 40em) {
    .benefits {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .benefits header {
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
    .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 {
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .benefits .semantic,
      .benefits .responsive,
      .benefits .customizable,
      .benefits .professional {
        width: calc(25% - 1.875rem);
        margin-right: 0.9375rem;
        margin-left: 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 {
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem;
    margin-top: 4rem; }

.kitchen-sink-header {
  width: calc(100% - 1.25rem);
  margin-right: 0.625rem;
  margin-left: 0.625rem; }

.kitchen-sink-components {
  width: calc(100% - 1.25rem);
  margin-right: 0.625rem;
  margin-left: 0.625rem; }
  .kitchen-sink-components hr {
    margin: 3rem 0; }
  @media print, screen and (min-width: 64em) {
    .kitchen-sink-components {
      width: calc(75% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }

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

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

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC5jc3MiLCJfc2V0dGluZ3Muc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm91bmRhdGlvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19icmVha3BvaW50LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3JldmVhbC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy92ZW5kb3Ivbm9ybWFsaXplLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL19nbG9iYWwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2NsYXNzZXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fZ3V0dGVycy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19ncmlkLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX3VuaXQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fY2VsbC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19sYXlvdXQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fY29sbGFwc2Uuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fcG9zaXRpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fZnJhbWUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYmFzZS5zY3NzIiwiZ2xvYmFsL19jb2xvcnMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9faGVscGVycy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19hbGlnbm1lbnQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fcHJpbnQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL190ZXh0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19jaGVja2JveC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fbGFiZWwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2hlbHAtdGV4dC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9faW5wdXQtZ3JvdXAuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2ZpZWxkc2V0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19zZWxlY3Quc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2Vycm9yLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2FjY29yZGlvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19hY2NvcmRpb24tbWVudS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2JhZGdlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2JyZWFkY3J1bWJzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi1ncm91cC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19jYWxsb3V0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2NhcmQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2xvc2UtYnV0dG9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUtaWNvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcmlsbGRvd24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXNwb25zaXZlLWVtYmVkLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21hdGguc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbGFiZWwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVkaWEtb2JqZWN0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb3JiaXQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19wcm9ncmVzcy1iYXIuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fc2xpZGVyLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3N0aWNreS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zd2l0Y2guc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFibGUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fY29sb3Iuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFicy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190aHVtYm5haWwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGl0bGUtYmFyLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Rvb2x0aXAuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdG9wLWJhci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2ZsZXguc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fZmxleC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvX2NsYXNzZXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL19zZXR0aW5ncy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fa2V5ZnJhbWUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL19zbGlkZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX2ZhZGUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL2VmZmVjdHMvX2hpbmdlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9faGluZ2Uuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL196b29tLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fc3Bpbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fYW5pbWF0aW9uLnNjc3MiLCJhcHAuc2NzcyIsImdsb2JhbC9fYWNjZXNzaWJpbGl0eS5zY3NzIiwiZ2xvYmFsL193cC1hZG1pbi5zY3NzIiwiZ2xvYmFsL193cC1vdmVycmlkZXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fcm93LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX3NpemUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY29sdW1uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2d1dHRlci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19wb3NpdGlvbi5zY3NzIiwiZ2xvYmFsL19ndXRlbmJlcmcuc2NzcyIsImdsb2JhbC9fZm9udHMuc2NzcyIsIm1vZHVsZXMvX25hdmlnYXRpb24uc2NzcyIsIm1vZHVsZXMvX2NvbnRlbnQuc2NzcyIsIm1vZHVsZXMvX2Zvb3Rlci5zY3NzIiwibW9kdWxlcy9fZWRpdG9yLXN0eWxlLnNjc3MiLCJjb21wb25lbnRzL19idXR0b25zLnNjc3MiLCJjb21wb25lbnRzL19jYXJkcy5zY3NzIiwiY29tcG9uZW50cy9fZmVhdHVyZWQtaW1hZ2Uuc2NzcyIsImNvbXBvbmVudHMvX2RpdmlkZXJzLnNjc3MiLCJjb21wb25lbnRzL19saW5rcy5zY3NzIiwidGVtcGxhdGVzL19mcm9udC5zY3NzIiwidGVtcGxhdGVzL19raXRjaGVuLXNpbmsuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxpQkFBaUI7QUNzRmpCLHlLQUF5SztBQXNGekssc0VBQXNFO0FBb0h0RSxnRkFBZ0Y7QUNoU2hGOzs7OztHQUtHO0FDaUtHO0VDekhKO0lBQ0UsWUFBVztJQUNYLFdBQVU7SUFDVixlQUFjLEVBQ2YsRUFBQTs7QUNoREQsNEVBQTRFO0FBUTVFO0VBQ0Usa0JBQWlCO0VBQ2pCLCtCQUE4QixFQUMvQjs7QUFPRDtFQUNFLFVBQVMsRUFDVjs7QUFLRDtFQUNFLGVBQWM7RUFDZCxpQkFBZ0IsRUFDakI7O0FBUUQ7RUFDRSx3QkFBdUI7RUFDdkIsVUFBUztFQUNULGtCQUFpQixFQUNsQjs7QUFLRDtFQUNFLGtDQUFpQztFQUNqQyxlQUFjLEVBQ2Y7O0FBT0Q7RUFDRSw4QkFBNkIsRUFDOUI7O0FBS0Q7RUFDRSxvQkFBbUI7RUFDbkIsMkJBQTBCO0VBQzFCLGtDQUFpQyxFQUNsQzs7QUFJRDs7RUFFRSxvQkFBbUIsRUFDcEI7O0FBS0Q7OztFQUdFLGtDQUFpQztFQUNqQyxlQUFjLEVBQ2Y7O0FBSUQ7RUFDRSxlQUFjLEVBQ2Y7O0FBS0Q7O0VBRUUsZUFBYztFQUNkLGVBQWM7RUFDZCxtQkFBa0I7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c0MvRztFQUZEO0lJbkNBLGlDQURnSCxFSnNDL0c7RUFGRDtJSW5DQSwyQkFEZ0gsRUpzQy9HO0VBRkQ7SUluQ0EsaUNBRGdILEVKc0MvRztFQUZEO0lJbkNBLGlDQURnSCxFSnNDL0c7RUFGRDtJSW5DQSwyQkFEZ0gsRUpzQy9HO0VBRkQ7SUluQ0EsaUNBRGdILEVKc0MvRztFQUZEO0lJbkNBLGlDQURnSCxFSnNDL0c7RUFGRDtJSW5DQSwyQkFEZ0gsRUpzQy9HO0VBRkQ7SUluQ0EsaUNBRGdILEVKc0MvRztFQUZEO0lJbkNBLGlDQURnSCxFSnNDL0c7RUFGRDtJSW5DQSw0QkFEZ0gsRUpzQy9HO0VMdUNDO0lLckRKO01JL0JFLFlBQW1CLEVKaUNwQjtJQUVEO01JL0JFLFlBQW1CLEVKaUNwQjtJQU1DO01JbkNBLGlDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxrQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNEJBRGdILEVKc0MvRztJQUZEO01JbkNBLGtDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxrQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNEJBRGdILEVKc0MvRztJQUZEO01JbkNBLGtDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxrQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNEJBRGdILEVKc0MvRztJQUZEO01JbkNBLGtDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxrQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNkJBRGdILEVKc0MvRztJQWRIO01JL0JFLFlBQW1CLEVKaUNwQjtJQUVEO01JL0JFLFlBQW1CLEVKaUNwQjtJQU1DO01JbkNBLGlDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxrQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNEJBRGdILEVKc0MvRztJQUZEO01JbkNBLGtDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxrQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNEJBRGdILEVKc0MvRztJQUZEO01JbkNBLGtDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxrQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNEJBRGdILEVKc0MvRztJQUZEO01JbkNBLGtDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxrQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNkJBRGdILEVKc0MvRyxFQUFBO0VMdUNDO0lLckRKO01JL0JFLFlBQW1CLEVKaUNwQjtJQUVEO01JL0JFLFlBQW1CLEVKaUNwQjtJQU1DO01JbkNBLGlDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxrQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNEJBRGdILEVKc0MvRztJQUZEO01JbkNBLGtDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxrQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNEJBRGdILEVKc0MvRztJQUZEO01JbkNBLGtDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxrQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNEJBRGdILEVKc0MvRztJQUZEO01JbkNBLGtDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxrQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNkJBRGdILEVKc0MvRyxFQUFBO0VMNENDO0lLMURKO01JL0JFLFlBQW1CLEVKaUNwQjtJQUVEO01JL0JFLFlBQW1CLEVKaUNwQjtJQU1DO01JbkNBLGlDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxrQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNEJBRGdILEVKc0MvRztJQUZEO01JbkNBLGtDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxrQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNEJBRGdILEVKc0MvRztJQUZEO01JbkNBLGtDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxrQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNEJBRGdILEVKc0MvRztJQUZEO01JbkNBLGtDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxrQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNkJBRGdILEVKc0MvRyxFQUFBO0VMNENDO0lLMURKO01JL0JFLFlBQW1CLEVKaUNwQjtJQUVEO01JL0JFLFlBQW1CLEVKaUNwQjtJQU1DO01JbkNBLGlDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxrQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNEJBRGdILEVKc0MvRztJQUZEO01JbkNBLGtDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxrQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNEJBRGdILEVKc0MvRztJQUZEO01JbkNBLGtDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxrQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNEJBRGdILEVKc0MvRztJQUZEO01JbkNBLGtDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxrQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNkJBRGdILEVKc0MvRyxFQUFBOztBQThDSDtFQzdJTSx3QkFBNkQ7RUFBN0QsdUJBQTZELEVEa0poRTtFTFpDO0lLT0o7TUM3SU0seUJBQTZEO01BQTdELHdCQUE2RCxFRGtKaEUsRUFBQTs7QUFJRDtFQ3RKSSx3QkFBNkQ7RUFBN0QsdUJBQTZELEVEd0poRTtFTGxCQztJS2dCRjtNQ3RKSSx5QkFBNkQ7TUFBN0Qsd0JBQTZELEVEd0poRSxFQUFBOztBQVhIO0VDN0lNLHdCQUE2RDtFQUE3RCx1QkFBNkQsRUQ2SmhFO0VMdkJDO0lLT0o7TUM3SU0seUJBQTZEO01BQTdELHdCQUE2RCxFRDZKaEUsRUFBQTs7QUsvSkg7RUQ0REUsWUFEb0QsRUN6RHJEOztBQUZEO0VENERFLFdBRG9ELEVDekRyRDs7QUFGRDtFRDRERSxpQkFEb0QsRUN6RHJEOztBQUZEO0VENERFLFdBRG9ELEVDekRyRDs7QUFGRDtFRDRERSxXQURvRCxFQ3pEckQ7O0FBRkQ7RUQ0REUsaUJBRG9ELEVDekRyRDs7QUFGRDtFRDRERSxpQkFEb0QsRUN6RHJEOztBQUZEO0VENERFLGFBRG9ELEVDekRyRDs7QVZzSUc7RVV4SUo7SUQ0REUsWUFEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsV0FEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsaUJBRG9ELEVDekRyRDtFQUZEO0lENERFLFdBRG9ELEVDekRyRDtFQUZEO0lENERFLFdBRG9ELEVDekRyRDtFQUZEO0lENERFLGlCQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxpQkFEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsYUFEb0QsRUN6RHJELEVBQUE7O0FWc0lHO0VVeElKO0lENERFLFlBRG9ELEVDekRyRDtFQUZEO0lENERFLFdBRG9ELEVDekRyRDtFQUZEO0lENERFLGlCQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxXQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxXQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxpQkFEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsaUJBRG9ELEVDekRyRDtFQUZEO0lENERFLGFBRG9ELEVDekRyRCxFQUFBOztBVjJJRztFVTdJSjtJRDRERSxZQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxXQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxpQkFEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsV0FEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsV0FEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsaUJBRG9ELEVDekRyRDtFQUZEO0lENERFLGlCQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxhQURvRCxFQ3pEckQsRUFBQTs7QVYySUc7RVU3SUo7SUQ0REUsWUFEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsV0FEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsaUJBRG9ELEVDekRyRDtFQUZEO0lENERFLFdBRG9ELEVDekRyRDtFQUZEO0lENERFLFdBRG9ELEVDekRyRDtFQUZEO0lENERFLGlCQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxpQkFEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsYUFEb0QsRUN6RHJELEVBQUE7O0FBRkQ7RUQ0REUsNEJBRGdILEVDekRqSDs7QUFGRDtFRDRERSwyQkFEZ0gsRUN6RGpIOztBQUZEO0VENERFLGlDQURnSCxFQ3pEakg7O0FBRkQ7RUQ0REUsMkJBRGdILEVDekRqSDs7QUFGRDtFRDRERSwyQkFEZ0gsRUN6RGpIOztBQUZEO0VENERFLGlDQURnSCxFQ3pEakg7O0FBRkQ7RUQ0REUsaUNBRGdILEVDekRqSDs7QUFGRDtFRDRERSw2QkFEZ0gsRUN6RGpIOztBVnNJRztFVXhJSjtJRDRERSw2QkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsNEJBRGdILEVDekRqSDtFQUZEO0lENERFLGtDQURnSCxFQ3pEakg7RUFGRDtJRDRERSw0QkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsNEJBRGdILEVDekRqSDtFQUZEO0lENERFLGtDQURnSCxFQ3pEakg7RUFGRDtJRDRERSxrQ0FEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsOEJBRGdILEVDekRqSDtFQUZEO0lENERFLDZCQURnSCxFQ3pEakg7RUFGRDtJRDRERSw0QkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsa0NBRGdILEVDekRqSDtFQUZEO0lENERFLDRCQURnSCxFQ3pEakg7RUFGRDtJRDRERSw0QkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsa0NBRGdILEVDekRqSDtFQUZEO0lENERFLGtDQURnSCxFQ3pEakg7RUFGRDtJRDRERSw4QkFEZ0gsRUN6RGpILEVBQUE7O0FWc0lHO0VVeElKO0lENERFLDZCQURnSCxFQ3pEakg7RUFGRDtJRDRERSw0QkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsa0NBRGdILEVDekRqSDtFQUZEO0lENERFLDRCQURnSCxFQ3pEakg7RUFGRDtJRDRERSw0QkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsa0NBRGdILEVDekRqSDtFQUZEO0lENERFLGtDQURnSCxFQ3pEakg7RUFGRDtJRDRERSw4QkFEZ0gsRUN6RGpILEVBQUE7O0FWMklHO0VVN0lKO0lENERFLDZCQURnSCxFQ3pEakg7RUFGRDtJRDRERSw0QkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsa0NBRGdILEVDekRqSDtFQUZEO0lENERFLDRCQURnSCxFQ3pEakg7RUFGRDtJRDRERSw0QkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsa0NBRGdILEVDekRqSDtFQUZEO0lENERFLGtDQURnSCxFQ3pEakg7RUFGRDtJRDRERSw4QkFEZ0gsRUN6RGpILEVBQUE7O0FWMklHO0VVN0lKO0lENERFLDZCQURnSCxFQ3pEakg7RUFGRDtJRDRERSw0QkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsa0NBRGdILEVDekRqSDtFQUZEO0lENERFLDRCQURnSCxFQ3pEakg7RUFGRDtJRDRERSw0QkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsa0NBRGdILEVDekRqSDtFQUZEO0lENERFLGtDQURnSCxFQ3pEakg7RUFGRDtJRDRERSw4QkFEZ0gsRUN6RGpILEVBQUE7O0FMeU1HO0VNaE5FLGdCQUEwQjtFQUExQixlQUEwQixFTmtOM0I7RU0vTUQ7SUFFSSxnQkFBMEI7SUFBMUIsZUFBMEIsRUFFN0I7RUFvQks7SUZzQ1IsZ0JBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixZQURvRCxFRW5DM0M7RVhnSFA7SVdsSE07TUZzQ1IsZ0JBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixXQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLFdBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsV0FEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixZQURvRCxFRW5DM0MsRUFBQTtFWGdIUDtJV2xITTtNRnNDUixnQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLFdBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsV0FEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixXQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLFlBRG9ELEVFbkMzQyxFQUFBO0VYcUhQO0lXdkhNO01Gc0NSLGdCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsV0FEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixXQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLFdBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsWUFEb0QsRUVuQzNDLEVBQUE7RVhxSFA7SVd2SE07TUZzQ1IsZ0JBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixXQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLFdBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsV0FEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixZQURvRCxFRW5DM0MsRUFBQTs7QU55TFA7RU0vS0UsZ0JBQTBCO0VBQTFCLGVBQTBCLEVOaUwzQjtFTTlLRDtJQUVJLGlCQUE0QjtJQUE1QixnQkFBNEIsRUFFL0I7O0FYK0ZEO0VLbUVBO0lNaE5FLGdCQUEwQjtJQUExQixlQUEwQixFTmtOM0I7SU0vTUQ7TUFFSSxnQkFBMEI7TUFBMUIsZUFBMEIsRUFFN0IsRUFBQTs7QVhzSUQ7RVczSE07SUYrQ1IsZ0JBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixZQURvRCxFRTVDM0MsRUFBQTs7QVh5SFA7RVdsSE07SUZzQ1IsZ0JBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixZQURvRCxFRW5DM0MsRUFBQTs7QVhnSFA7RVdsSE07SUZzQ1IsZ0JBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixZQURvRCxFRW5DM0MsRUFBQTs7QVhxSFA7RVd2SE07SUZzQ1IsZ0JBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixZQURvRCxFRW5DM0MsRUFBQTs7QVhxSFA7RVd2SE07SUZzQ1IsZ0JBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixZQURvRCxFRW5DM0MsRUFBQTs7QVhnSFA7RUt5RUE7SU0vS0UsZ0JBQTBCO0lBQTFCLGVBQTBCLEVOaUwzQjtJTTlLRDtNQUVJLGlCQUE0QjtNQUE1QixnQkFBNEIsRUFFL0IsRUFBQTs7QVgrRkQ7RUttRUE7SU1oTkUsZ0JBQTBCO0lBQTFCLGVBQTBCLEVOa04zQjtJTS9NRDtNQUVJLGdCQUEwQjtNQUExQixlQUEwQixFQUU3QixFQUFBOztBWHNJRDtFVzNITTtJRitDUixnQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFlBRG9ELEVFNUMzQyxFQUFBOztBWHlIUDtFVzNITTtJRitDUixnQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFlBRG9ELEVFNUMzQyxFQUFBOztBWHlIUDtFV2xITTtJRnNDUixnQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFlBRG9ELEVFbkMzQyxFQUFBOztBWHFIUDtFV3ZITTtJRnNDUixnQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFlBRG9ELEVFbkMzQyxFQUFBOztBWHFIUDtFV3ZITTtJRnNDUixnQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFlBRG9ELEVFbkMzQyxFQUFBOztBWGdIUDtFS3lFQTtJTS9LRSxnQkFBMEI7SUFBMUIsZUFBMEIsRU5pTDNCO0lNOUtEO01BRUksaUJBQTRCO01BQTVCLGdCQUE0QixFQUUvQixFQUFBOztBWG9HRDtFSzhEQTtJTWhORSxnQkFBMEI7SUFBMUIsZUFBMEIsRU5rTjNCO0lNL01EO01BRUksZ0JBQTBCO01BQTFCLGVBQTBCLEVBRTdCLEVBQUE7O0FYMklEO0VXaElNO0lGK0NSLGdCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsWUFEb0QsRUU1QzNDLEVBQUE7O0FYOEhQO0VXaElNO0lGK0NSLGdCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsWUFEb0QsRUU1QzNDLEVBQUE7O0FYOEhQO0VXaElNO0lGK0NSLGdCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsWUFEb0QsRUU1QzNDLEVBQUE7O0FYOEhQO0VXdkhNO0lGc0NSLGdCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsWUFEb0QsRUVuQzNDLEVBQUE7O0FYcUhQO0VXdkhNO0lGc0NSLGdCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsWUFEb0QsRUVuQzNDLEVBQUE7O0FYcUhQO0VLb0VBO0lNL0tFLGdCQUEwQjtJQUExQixlQUEwQixFTmlMM0I7SU05S0Q7TUFFSSxpQkFBNEI7TUFBNUIsZ0JBQTRCLEVBRS9CLEVBQUE7O0FYb0dEO0VLOERBO0lNaE5FLGdCQUEwQjtJQUExQixlQUEwQixFTmtOM0I7SU0vTUQ7TUFFSSxnQkFBMEI7TUFBMUIsZUFBMEIsRUFFN0IsRUFBQTs7QVgySUQ7RVdoSU07SUYrQ1IsZ0JBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixZQURvRCxFRTVDM0MsRUFBQTs7QVg4SFA7RVdoSU07SUYrQ1IsZ0JBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixZQURvRCxFRTVDM0MsRUFBQTs7QVg4SFA7RVdoSU07SUYrQ1IsZ0JBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixZQURvRCxFRTVDM0MsRUFBQTs7QVg4SFA7RVdoSU07SUYrQ1IsZ0JBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixZQURvRCxFRTVDM0MsRUFBQTs7QVg4SFA7RVd2SE07SUZzQ1IsZ0JBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixZQURvRCxFRW5DM0MsRUFBQTs7QVhxSFA7RUtvRUE7SU0vS0UsZ0JBQTBCO0lBQTFCLGVBQTBCLEVOaUwzQjtJTTlLRDtNQUVJLGlCQUE0QjtNQUE1QixnQkFBNEIsRUFFL0IsRUFBQTs7QU5zTEQ7RU9oT0YsZ0JBQTZCLEVQa08xQjs7QUFFRDtFT3BPRixpQ0FBNkIsRVBzTzFCOztBQU5EO0VPaE9GLHNCQUE2QixFUGtPMUI7O0FBRUQ7RU9wT0YsdUNBQTZCLEVQc08xQjs7QUFORDtFT2hPRix1QkFBNkIsRVBrTzFCOztBQUVEO0VPcE9GLHdDQUE2QixFUHNPMUI7O0FBTkQ7RU9oT0YsaUJBQTZCLEVQa08xQjs7QUFFRDtFT3BPRixrQ0FBNkIsRVBzTzFCOztBQU5EO0VPaE9GLHVCQUE2QixFUGtPMUI7O0FBRUQ7RU9wT0Ysd0NBQTZCLEVQc08xQjs7QUFORDtFT2hPRix1QkFBNkIsRVBrTzFCOztBQUVEO0VPcE9GLHdDQUE2QixFUHNPMUI7O0FBTkQ7RU9oT0YsaUJBQTZCLEVQa08xQjs7QUFFRDtFT3BPRixrQ0FBNkIsRVBzTzFCOztBQU5EO0VPaE9GLHVCQUE2QixFUGtPMUI7O0FBRUQ7RU9wT0Ysd0NBQTZCLEVQc08xQjs7QUFORDtFT2hPRix1QkFBNkIsRVBrTzFCOztBQUVEO0VPcE9GLHdDQUE2QixFUHNPMUI7O0FBTkQ7RU9oT0YsaUJBQTZCLEVQa08xQjs7QUFFRDtFT3BPRixrQ0FBNkIsRVBzTzFCOztBQU5EO0VPaE9GLHVCQUE2QixFUGtPMUI7O0FBRUQ7RU9wT0Ysd0NBQTZCLEVQc08xQjs7QUFORDtFT2hPRix1QkFBNkIsRVBrTzFCOztBQUVEO0VPcE9GLHdDQUE2QixFUHNPMUI7O0FMN0ZEO0VLdUZBO0lPaE9GLGdCQUE2QixFUGtPMUI7RUFFRDtJT3BPRixrQ0FBNkIsRVBzTzFCO0VBTkQ7SU9oT0Ysc0JBQTZCLEVQa08xQjtFQUVEO0lPcE9GLHdDQUE2QixFUHNPMUI7RUFORDtJT2hPRix1QkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0YseUNBQTZCLEVQc08xQjtFQU5EO0lPaE9GLGlCQUE2QixFUGtPMUI7RUFFRDtJT3BPRixtQ0FBNkIsRVBzTzFCO0VBTkQ7SU9oT0YsdUJBQTZCLEVQa08xQjtFQUVEO0lPcE9GLHlDQUE2QixFUHNPMUI7RUFORDtJT2hPRix1QkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0YseUNBQTZCLEVQc08xQjtFQU5EO0lPaE9GLGlCQUE2QixFUGtPMUI7RUFFRDtJT3BPRixtQ0FBNkIsRVBzTzFCO0VBTkQ7SU9oT0YsdUJBQTZCLEVQa08xQjtFQUVEO0lPcE9GLHlDQUE2QixFUHNPMUI7RUFORDtJT2hPRix1QkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0YseUNBQTZCLEVQc08xQjtFQU5EO0lPaE9GLGlCQUE2QixFUGtPMUI7RUFFRDtJT3BPRixtQ0FBNkIsRVBzTzFCO0VBTkQ7SU9oT0YsdUJBQTZCLEVQa08xQjtFQUVEO0lPcE9GLHlDQUE2QixFUHNPMUI7RUFORDtJT2hPRix1QkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0YseUNBQTZCLEVQc08xQixFQUFBOztBTDdGRDtFS3VGQTtJT2hPRixnQkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0Ysa0NBQTZCLEVQc08xQjtFQU5EO0lPaE9GLHNCQUE2QixFUGtPMUI7RUFFRDtJT3BPRix3Q0FBNkIsRVBzTzFCO0VBTkQ7SU9oT0YsdUJBQTZCLEVQa08xQjtFQUVEO0lPcE9GLHlDQUE2QixFUHNPMUI7RUFORDtJT2hPRixpQkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0YsbUNBQTZCLEVQc08xQjtFQU5EO0lPaE9GLHVCQUE2QixFUGtPMUI7RUFFRDtJT3BPRix5Q0FBNkIsRVBzTzFCO0VBTkQ7SU9oT0YsdUJBQTZCLEVQa08xQjtFQUVEO0lPcE9GLHlDQUE2QixFUHNPMUI7RUFORDtJT2hPRixpQkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0YsbUNBQTZCLEVQc08xQjtFQU5EO0lPaE9GLHVCQUE2QixFUGtPMUI7RUFFRDtJT3BPRix5Q0FBNkIsRVBzTzFCO0VBTkQ7SU9oT0YsdUJBQTZCLEVQa08xQjtFQUVEO0lPcE9GLHlDQUE2QixFUHNPMUI7RUFORDtJT2hPRixpQkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0YsbUNBQTZCLEVQc08xQjtFQU5EO0lPaE9GLHVCQUE2QixFUGtPMUI7RUFFRDtJT3BPRix5Q0FBNkIsRVBzTzFCO0VBTkQ7SU9oT0YsdUJBQTZCLEVQa08xQjtFQUVEO0lPcE9GLHlDQUE2QixFUHNPMUIsRUFBQTs7QUx4RkQ7RUtrRkE7SU9oT0YsZ0JBQTZCLEVQa08xQjtFQUVEO0lPcE9GLGtDQUE2QixFUHNPMUI7RUFORDtJT2hPRixzQkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0Ysd0NBQTZCLEVQc08xQjtFQU5EO0lPaE9GLHVCQUE2QixFUGtPMUI7RUFFRDtJT3BPRix5Q0FBNkIsRVBzTzFCO0VBTkQ7SU9oT0YsaUJBQTZCLEVQa08xQjtFQUVEO0lPcE9GLG1DQUE2QixFUHNPMUI7RUFORDtJT2hPRix1QkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0YseUNBQTZCLEVQc08xQjtFQU5EO0lPaE9GLHVCQUE2QixFUGtPMUI7RUFFRDtJT3BPRix5Q0FBNkIsRVBzTzFCO0VBTkQ7SU9oT0YsaUJBQTZCLEVQa08xQjtFQUVEO0lPcE9GLG1DQUE2QixFUHNPMUI7RUFORDtJT2hPRix1QkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0YseUNBQTZCLEVQc08xQjtFQU5EO0lPaE9GLHVCQUE2QixFUGtPMUI7RUFFRDtJT3BPRix5Q0FBNkIsRVBzTzFCO0VBTkQ7SU9oT0YsaUJBQTZCLEVQa08xQjtFQUVEO0lPcE9GLG1DQUE2QixFUHNPMUI7RUFORDtJT2hPRix1QkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0YseUNBQTZCLEVQc08xQjtFQU5EO0lPaE9GLHVCQUE2QixFUGtPMUI7RUFFRDtJT3BPRix5Q0FBNkIsRVBzTzFCLEVBQUE7O0FMeEZEO0VLa0ZBO0lPaE9GLGdCQUE2QixFUGtPMUI7RUFFRDtJT3BPRixrQ0FBNkIsRVBzTzFCO0VBTkQ7SU9oT0Ysc0JBQTZCLEVQa08xQjtFQUVEO0lPcE9GLHdDQUE2QixFUHNPMUI7RUFORDtJT2hPRix1QkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0YseUNBQTZCLEVQc08xQjtFQU5EO0lPaE9GLGlCQUE2QixFUGtPMUI7RUFFRDtJT3BPRixtQ0FBNkIsRVBzTzFCO0VBTkQ7SU9oT0YsdUJBQTZCLEVQa08xQjtFQUVEO0lPcE9GLHlDQUE2QixFUHNPMUI7RUFORDtJT2hPRix1QkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0YseUNBQTZCLEVQc08xQjtFQU5EO0lPaE9GLGlCQUE2QixFUGtPMUI7RUFFRDtJT3BPRixtQ0FBNkIsRVBzTzFCO0VBTkQ7SU9oT0YsdUJBQTZCLEVQa08xQjtFQUVEO0lPcE9GLHlDQUE2QixFUHNPMUI7RUFORDtJT2hPRix1QkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0YseUNBQTZCLEVQc08xQjtFQU5EO0lPaE9GLGlCQUE2QixFUGtPMUI7RUFFRDtJT3BPRixtQ0FBNkIsRVBzTzFCO0VBTkQ7SU9oT0YsdUJBQTZCLEVQa08xQjtFQUVEO0lPcE9GLHlDQUE2QixFUHNP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RkQ7TUluQ0EsbUNBRGdILEVKc0MvRztJQUZEO01JbkNBLG1DQURnSCxFSnNDL0c7SUFGRDtNSW5DQSw2QkFEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsbUNBRGdILEVKc0MvRztJQUZEO01JbkNBLG1DQURnSCxFSnNDL0c7SUFGRDtNSW5DQSw4QkFEZ0gsRUpzQy9HO0lBZEg7TUkvQkUsYUFBbUIsRUppQ3BCO0lBRUQ7TUkvQkUsYUFBbUIsRUppQ3BCO0lBTUM7TUluQ0Esa0NBRGdILEVKc0MvRztJQUZEO01JbkNBLG1DQURnSCxFSnNDL0c7SUFGRDtNSW5DQSw2QkFEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsbUNBRGdILEVKc0MvRztJQUZEO01JbkNBLG1DQURnSCxFSnNDL0c7SUFGRDtNSW5DQSw2QkFEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsbUNBRGdILEVKc0MvRztJQUZEO01JbkNBLG1DQURnSCxFSnNDL0c7SUFGRDtNSW5DQSw2QkFEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsbUNBRGdILEVKc0MvRztJQUZEO01JbkNBLG1DQURnSCxFSnNDL0c7SUFGRDtNSW5DQSw4QkFEZ0gsRUpzQy9HLEVBQUE7RUx1Q0M7SUtyREo7TUkvQkUsYUFBbUIsRUppQ3BCO0lBRUQ7TUkvQkUsYUFBbUIsRUppQ3BCO0lBTUM7TUluQ0Esa0NBRGdILEVKc0MvRztJQUZEO01JbkNBLG1DQURnSCxFSnNDL0c7SUFGRDtNSW5DQSw2QkFEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsbUNBRGdILEVKc0MvRztJQUZEO01JbkNBLG1DQURnSCxFSnNDL0c7SUFGRDtNSW5DQSw2QkFEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsbUNBRGdILEVKc0MvRztJQUZEO01JbkNBLG1DQURnSCxFSnNDL0c7SUFGRDtNSW5DQSw2QkFEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsbUNBRGdILEVKc0MvRztJQUZEO01JbkNBLG1DQURnSCxFSnNDL0c7SUFGRDtNSW5DQSw4QkFEZ0gsRUpzQy9HLEVBQUE7RUw0Q0M7SUsxREo7TUkvQkUsYUFBbUIsRUppQ3BCO0lBRUQ7TUkv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bkNBLGtDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxtQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNkJBRGdILEVKc0MvRztJQUZEO01JbkNBLG1DQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxtQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNkJBRGdILEVKc0MvRztJQUZEO01JbkNBLG1DQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxtQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNkJBRGdILEVKc0MvRztJQUZEO01JbkNBLG1DQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxtQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsOEJBRGdILEVKc0MvRztJQWRIO01JL0JFLGFBQW1CLEVKaUNwQjtJQUVEO01JL0JFLGFBQW1CLEVKaUNwQjtJQU1DO01JbkNBLGtDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxtQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNkJBRGdILEVKc0MvRztJQUZEO01JbkNBLG1DQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxtQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNkJBRGdILEVKc0MvRztJQUZEO01JbkNBLG1DQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxtQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNkJBRGdILEVKc0MvRztJQUZEO01JbkNBLG1DQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxtQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsOEJBRGdILEVKc0MvRyxFQUFBO0VMdUNDO0lLckRKO01JL0JFLGFBQW1CLEVKaUNwQjtJQUVEO01JL0JFLGFBQW1CLEVKaUNwQjtJQU1DO01JbkNBLGtDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxtQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNkJBRGdILEVKc0MvRztJQUZEO01JbkNBLG1DQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxtQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNkJBRGdILEVKc0MvRztJQUZEO01JbkNBLG1DQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxtQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNkJBRGdILEVKc0MvRztJQUZEO01JbkNBLG1DQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxtQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsOEJBRGdILEVKc0MvRyxFQUFBO0VMNENDO0lLMURKO01JL0JFLGFBQW1CLEVKaUNwQjtJQUVEO01JL0JFLGFBQW1CLEVKaUNwQjtJQU1DO01JbkNBLGtDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxtQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNkJBRGdILEVKc0MvRztJQUZEO01JbkNBLG1DQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxtQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNkJBRGdILEVKc0MvRztJQUZEO01JbkNBLG1DQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxtQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNkJBRGdILEVKc0MvRztJQUZEO01JbkNBLG1DQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxtQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsOEJBRGdILEVKc0MvRyxFQUFBO0VMNENDO0lLMURKO01JL0JFLGFBQW1CLEVKaUNwQjtJQUVEO01JL0JFLGFBQW1CLEVKaUNwQjtJQU1DO01JbkNBLGtDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxtQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNkJBRGdILEVKc0MvRztJQUZEO01JbkNBLG1DQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxtQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNkJBRGdILEVKc0MvRztJQUZEO01JbkNBLG1DQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxtQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNkJBRGdILEVKc0MvRztJQUZEO01JbkNBLG1DQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxtQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsOEJBRGdILEVKc0MvRyxFQUFBOztBQW1URDtFUS9ZSSw4QkFBbUMsRVJpWnRDO0VMOVFDO0lLNFFGO01RL1lJLCtCQUFtQyxFUmladEMsRUFBQTtFTDlRQztJSzRRRjtNUS9ZSSwrQkFBbUMsRVJpWnRDLEVBQUE7RUx6UUM7SUt1UUY7TVEvWUksK0JBQW1DLEVSaVp0QyxFQUFBO0VMelFDO0lLdVFGO01RL1lJLCtCQUFtQyxFUmladEMsRUFBQTs7QUw5UUM7RUtnUkE7SVFuWkUsK0JBQW1DLEVScVpwQyxFQUFBOztBTGxSRDtFS2dSQTtJUW5aRSwrQkFBbUMsRVJxWnBDLEVBQUE7O0FMN1FEO0VLMlFBO0lRblpFLCtCQUFtQyxFUnFacEMsRUFBQTs7QUw3UUQ7RUsyUUE7SVFuWkUsK0JBQW1DLEVScVpwQyxFQUFBOztBU3pMTDs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQW1CRSxVQUFTO0VBQ1QsV0FBVSxFQUNYOztBQUdEO0VBQ0Usb0JoQnJIMEI7RWdCdUgxQixtQkFBa0I7RUFDbEIsaUJoQnpIc0I7RWdCMEh0QixtQ2hCeEh5QyxFZ0J5SDFDOztBQUdEOztFQUVFLG1CQUFrQjtFQUNsQixxQkFBb0IsRUFDckI7O0FBR0Q7O0VBRUUsa0JoQjVNcUI7RWdCNk1yQixxQkFBb0IsRUFDckI7O0Fabk5EO0VZdU5FLGVoQi9JaUI7RWdCZ0pqQixxQkFBb0IsRUFDckI7O0FBR0Q7Ozs7OztFQU1FLDBDaEJuTDZDO0VnQm9MN0MsbUJoQm5Mc0I7RWdCb0x0QixvQmhCaE95QjtFZ0JpT3pCLGVDNVRhO0VENlRiLG1DaEIvSnNDLEVnQnFLdkM7RUFoQkQ7Ozs7OztJQWFJLGVBQWM7SUFDZCxlaEJsUGUsRWdCbVBoQjs7QUFRRztFQUlJLGtCTnZQNkM7RU1tUTdDLGlCaEJoTlc7RWdCd05YLGNBQWE7RUFPYixzQmhCOU5pQixFZ0JnT3BCOztBQWpDRDtFQUlJLG1CTnZQNkM7RU1tUTdDLGlCaEJoTlc7RWdCd05YLGNBQWE7RUFPYixzQmhCOU5pQixFZ0JnT3BCOztBQWpDRDtFQUlJLHFCTnZQNkM7RU1tUTdDLGlCaEJoTlc7RWdCd05YLGNBQWE7RUFPYixzQmhCOU5pQixFZ0JnT3BCOztBQWpDRDtFQUlJLG9CTnZQNkM7RU1tUTdDLGlCaEJoTlc7RWdCd05YLGNBQWE7RUFPYixzQmhCOU5pQixFZ0JnT3BCOztBQWpDRDtFQUlJLHFCTnZQNkM7RU1tUTdDLGlCaEJoTlc7RWdCd05YLGNBQWE7RUFPYixzQmhCOU5pQixFZ0JnT3BCOztBQWpDRDtFQUlJLGdCTnZQNkM7RU1tUTdDLGlCaEJoTlc7RWdCd05YLGNBQWE7RUFPYixzQmhCOU5pQixFZ0JnT3BCOztBZHRNSDtFY3FLRTtJQUlJLGdCTnZQNkMsRU1vUmhEO0VBakNEO0lBSUksa0JOdlA2QyxFTW9SaEQ7RUFqQ0Q7SUFJSSxxQk52UDZDLEVNb1JoRDtFQWpDRDtJQUlJLHFCTnZQNkMsRU1vUmhEO0VBakNEO0lBSUksbUJOdlA2QyxFTW9SaEQ7RUFqQ0Q7SUFJSSxnQk52UDZDLEVNb1JoRCxFQUFBOztBWnBUUDtFWTJURSxxQkFBb0I7RUFDcEIsZUNqWGE7RURrWGIsc0JoQnZNeUI7RWdCeU16QixnQkFBZSxFQWFoQjtFQWxCRDtJQVNJLGVDMVhXLEVEOFhaO0VBYkg7SUFnQkksVUFBUyxFQUNWOztBWjlWSDtFWW1XRSxZQUFXO0VBRVgsaUJObFRxRDtFTW1UckQsVUFBUztFQUNULHFCaEIxTnlCO0VnQjROekIsY0FBYTtFQUNiLGdCQUFlO0VBQ2YsaUNoQmhVaUI7RWdCaVVqQixlQUFjLEVBQ2Y7O0FBR0Q7OztFQUdFLG9CaEJyUDBCO0VnQnNQMUIsNkJoQm5PeUI7RWdCb096QixpQmhCeFBzQixFZ0J5UHZCOztBQUdEO0VBQ0UsbUJBQWtCLEVBQ25COztBQUdEO0VBQ0UscUJoQjdPc0I7RWdCOE90QixzQmhCaFBrQixFZ0JpUG5COztBQUdEO0VBQ0UscUJoQm5Qc0IsRWdCb1B2Qjs7QUFHRDtFQUVJLHFCaEJ4UDJCO0VnQnlQM0IsaUJBQWdCLEVBQ2pCOztBQUlIO0VBQ0Usb0JoQjlQeUIsRWdCb1ExQjtFQVBEO0lBSUksc0JoQi9QOEI7SWdCZ1E5QixrQmhCOVZtQixFZ0IrVnBCOztBQUlIO0VBQ0UsaUJoQjlSMEI7RWdCK1IxQix1Q04xV3FEO0VNMldyRCwrQmhCblhpQixFZ0J5WGxCO0VBVEQ7SUFNSSxpQmhCcFNvQjtJZ0Jx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bEIsNEJBdkRrQjtVQXVEbEIsb0JBdkRrQixFRGlGZjs7QUFJSDtFQy9DQSxnQ0FuRGtCO01BbURsQixzQkFuRGtCO1VBbURsQix3QkFuRGtCO0VBb0RsQiw0QkF4Q2dCO01Bd0NoQix1QkF4Q2dCO1VBd0NoQixvQkF4Q2dCO0VEd0ZkLDhCQUFxQjtNQUFyQiwyQkFBcUI7VUFBckIsc0JBQXFCLEVBQ3RCOztBQUtHO0VDaENKLGlCRCtCZ0I7TUMvQmhCLGtCRCtCZ0I7VUMvQmhCLFNEK0JnQixFQUdYOztBQUZEO0VDaENKLGlCRCtCZ0I7TUMvQmhCLGtCRCtCZ0I7VUMvQmhCLFNEK0JnQixFQUdYOztBQUZEO0VDaENKLGlCRCtCZ0I7TUMvQmhCLGtCRCtCZ0I7VUMvQmhCLFNEK0JnQixFQUdYOztBQUZEO0VDaENKLGlCRCtCZ0I7TUMvQmhCLGtCRCtCZ0I7VUMvQmhCLFNEK0JnQixFQUdYOztBQUZEO0VDaENKLGlCRCtCZ0I7TUMvQmhCLGtCRCtCZ0I7VUMvQmhCLFNEK0JnQixFQUdYOztBQUZEO0VDaENKLGlCRCtCZ0I7TUMvQmhCLGtCRCtCZ0I7VUMvQmhCLFNEK0JnQixFQUdYOztBNURzREQ7RTREeERBO0lDaENKLGlCRCtCZ0I7UUMvQmhCLGtCRCtCZ0I7WUMvQmhCLFNEK0JnQixFQUdYO0VBRkQ7SUNoQ0osaUJEK0JnQjtRQy9CaEIsa0JEK0JnQjtZQy9CaEIsU0QrQmdCLEVBR1g7RUFGRDtJQ2hDSixpQkQrQmdCO1FDL0JoQixrQkQrQmdCO1lDL0JoQixTRCtCZ0IsRUFHWDtFQUZEO0lDaENKLGlCRCtCZ0I7UUMvQmhCLGtCRCtCZ0I7WUMvQmhCLFNEK0JnQixFQUdYO0VBRkQ7SUNoQ0osaUJEK0JnQjtRQy9CaEIsa0JEK0JnQjtZQy9CaEIsU0QrQmdCLEVBR1g7RUFGRDtJQ2hDSixpQkQrQmdCO1FDL0JoQixrQkQrQmdCO1lDL0JoQixTRCtCZ0IsRUFHWCxFQUFBOztBNURzREQ7RTREeERBO0lDaENKLGlCRCtCZ0I7UUMvQmhCLGtCRCtCZ0I7WUMvQmhCLFNEK0JnQixFQUdYO0VBRkQ7SUNoQ0osaUJEK0JnQjtRQy9CaEIsa0JEK0JnQjtZQy9CaEIsU0QrQmdCLEVBR1g7RUFGRDtJQ2hDSixpQkQrQmdCO1FDL0JoQixrQkQrQmdCO1lDL0JoQixTRCtCZ0IsRUFHWDtFQUZEO0lDaENKLGlCRCtCZ0I7UUMvQmhCLGtCRCtCZ0I7WUMvQmhCLFNEK0JnQixFQUdYO0VBRkQ7SUNoQ0osaUJEK0JnQjtRQy9CaEIsa0JEK0JnQjtZQy9CaEIsU0QrQmdCLEVBR1g7RUFGRDtJQ2hDSixpQkQrQmdCO1FDL0JoQixrQkQrQmdCO1lDL0JoQixTRCtCZ0IsRUFHWCxFQUFBOztBNUQyREQ7RTREN0RBO0lDaENKLGlCRCtCZ0I7UUMvQmhCLGtCRCtCZ0I7WUMvQmhCLFNEK0JnQixFQUdYO0VBRkQ7SUNoQ0osaUJEK0JnQjtRQy9CaEIsa0JEK0JnQjtZQy9CaEIsU0QrQmdCLEVBR1g7RUFGRDtJQ2hDSixpQkQrQmdCO1FDL0JoQixrQkQrQmdCO1lDL0JoQixTRCtCZ0IsRUFHWDtFQUZEO0lDaENKLGlCRCtCZ0I7UUMvQmhCLGtCRCtCZ0I7WUMvQmhCLFNEK0JnQixFQUdYO0VBRkQ7SUNoQ0osaUJEK0JnQjtRQy9CaEIsa0JEK0JnQjtZQy9CaEIsU0QrQmdCLEVBR1g7RUFGRDtJQ2hDSixpQkQrQmdCO1FDL0JoQixrQkQrQmdCO1lDL0JoQixTRCtCZ0IsRUFHWCxFQUFBOztBNUQyREQ7RTREN0RBO0lDaENKLGlCRCtCZ0I7UUMvQmhCLGtCRCtCZ0I7WUMvQmhCLFNEK0JnQixFQUdYO0VBRkQ7SUNoQ0osaUJEK0JnQjtRQy9CaEIsa0JEK0JnQjtZQy9CaEIsU0QrQmdCLEVBR1g7RUFGRDtJQ2hDSixpQkQrQmdCO1FDL0JoQixrQkQrQmdCO1lDL0JoQixTRCtCZ0IsRUFHWDtFQUZEO0lDaENKLGlCRCtCZ0I7UUMvQmhCLGtCRCtCZ0I7WUMvQmhCLFNEK0JnQixFQUdYO0VBRkQ7SUNoQ0osaUJEK0JnQjtRQy9CaEIsa0JEK0JnQjtZQy9CaEIsU0QrQmdCLEVBR1g7RUFGRDtJQ2hDSixpQkQrQmdCO1FDL0JoQixrQkQr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akJkLG1DQ2lDZTtFQ2dCYixXRmhDa0M7RUlFbEMsNkJBQTRCLEVMQTNCOztBQVVEO0VHb0JBLFdGaENxQyxFRGNwQzs7QUFkRDtFQ2xCRiwyQkNrQmM7RURqQmQsbUNDaUNlO0VDZ0JiLFdGL0JrQztFSUNsQyw2QkFBNEIsRUxBM0I7O0FBVUQ7RUdvQkEsV0YvQnFDLEVEYXBDOztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsdURHckNtQztVSHFDbkMsK0NHckNtQztFSHFDbkMsOEJGNUJtRDtNRTRCbkQsMEJGNUJtRDtVRTRCbkQsc0JGNUJtRDtFTUlqRCxnREFBdUM7RUFBdkMsd0NBQXVDO0VBQXZDLDJEQUF1QztFQUN2QyxXQUEyQixFUFA1Qjs7QUFVRDtFR29CQSxvREdUNEM7VUhTNUMsNENHVDRDO0VDSjFDLFdBQTJCLEVQTDVCOztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsdURHcENxQztVSG9DckMsK0NHcENxQztFSG9DckMsZ0NGM0JxRDtNRTJCckQsNEJGM0JxRDtVRTJCckQsd0JGM0JxRDtFTUduRCxnREFBdUM7RUFBdkMsd0NBQXVDO0VBQXZDLDJEQUF1QztFQUN2QyxXQUEyQixFUFA1Qjs7QUFVRDtFR29CQSxvREdUNEM7VUhTNUMsNENHVDRDO0VDSjFDLFdBQTJCLEVQTDVCOztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsc0RHbkNpQztVSG1DakMsOENHbkNpQztFSG1DakMsaUNGMUJzRDtNRTBCdEQsNkJGMUJzRDtVRTBCdEQseUJGMUJzRDtFTUVwRCxnREFBdUM7RUFBdkMsd0NBQXVDO0VBQXZDLDJEQUF1QztFQUN2QyxXQUEyQixFUFA1Qjs7QUFVRDtFR29CQSxvREdUNEM7VUhTNUMsNENHVDRDO0VDSjFDLFdBQTJCLEVQTDVCOztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsc0RHbEMrQjtVSGtDL0IsOENHbEMrQjtFSGtDL0IsK0JGekJvRDtNRXlCcEQsMkJGekJvRDtVRXlCcEQsdUJGekJvRDtFTUNsRCxnREFBdUM7RUFBdkMsd0NBQXVDO0VBQXZDLDJEQUF1QztFQUN2QyxXQUEyQixFUFA1Qjs7QUFVRDtFR29CQSxvREdUNEM7VUhTNUMsNENHVDRDO0VDSjFDLFdBQTJCLEVQTDVCOztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsdURHckNtQztVSHFDbkMsK0NHckNtQztFSHFDbkMsaUNHRWU7TUhGZiw2QkdFZTtVSEZmLHlCR0VlO0VDMUJiLGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBQ3ZDLFdBQTJCLEVQUDVCOztBQVVEO0VHb0JBLG9ER1Q0QztVSFM1Qyw0Q0dUNEM7RUNKMUMsV0FBMkIsRVBMNUI7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYix1REdwQ3FDO1VIb0NyQywrQ0dwQ3FDO0VIb0NyQyxpQ0dFZTtNSEZmLDZCR0VlO1VIRmYseUJHRWU7RUMxQmIsZ0RBQXVDO0VBQXZDLHdDQUF1QztFQUF2QywyREFBdUM7RUFDdkMsV0FBMkIsRVBQNUI7O0FBVUQ7RUdvQkEsb0RHVDRDO1VIUzVDLDRDR1Q0QztFQ0oxQyxXQUEyQixFUEw1Qjs7QUFkRDtFQ2xCRiwyQkNrQmM7RURqQmQsbUNDaUNlO0VDZ0JiLG9ER1A4QztVSE85Qyw0Q0dQOEM7RUhPOUMsOEJGdEJtRDtNRXNCbkQsMEJGdEJtRDtVRXNCbkQsc0JGdEJtRDtFTUZqRCxnREFBdUM7RUFBdkMsd0NBQXVDO0VBQXZDLDJEQUF1QztFQUN2QyxXQUE4QixFUFAvQjs7QUFVRDtFR29CQSxzREcvQjhCO1VIK0I5Qiw4Q0cvQjhCO0VDa0I1QixXQUE4QixFUEwvQjs7QUFkRDtFQ2xCRiwyQkNrQmM7RURqQmQsbUNDaUNlO0VDZ0JiLG9ER1A4QztVSE85Qyw0Q0dQOEM7RUhPOUMsZ0NGckJxRDtNRXFCckQsNEJGckJxRDtVRXFCckQsd0JGckJxRDtFTUhuRCxnREFBdUM7RUFBdkMsd0NBQXVDO0VBQXZDLDJEQUF1QztFQUN2QyxXQUE4QixFUFAvQjs7QUFVRDtFR29CQSxzREc5QmdDO1VIOEJoQyw4Q0c5QmdDO0VDaUI5QixXQUE4QixFUEwvQjs7QUFkRDtFQ2xCRiwyQkNrQmM7RURqQmQsbUNDaUNlO0VDZ0JiLG9ER1A4QztVSE85Qyw0Q0dQOEM7RUhPOUMsaUNGcEJzRDtNRW9CdEQsNkJGcEJzRDtVRW9CdEQseUJGcEJzRDtFTUpwRCxnREFBdUM7RUFBdkMsd0NBQXVDO0VBQXZDLDJEQUF1QztFQUN2QyxXQUE4QixFUFAvQjs7QUFVRDtFR29CQSx1REc3QnNDO1VINkJ0QywrQ0c3QnNDO0VDZ0JwQyxXQUE4QixFUEwvQjs7QUFkRDtFQ2xCRiwyQkNrQmM7RURqQmQsbUNDaUNlO0VDZ0JiLG9ER1A4QztVSE85Qyw0Q0dQOEM7RUhPOUMsK0JGbkJvRDtNRW1CcEQsMkJGbkJvRDtVRW1CcEQsdUJGbkJvRDtFTUxsRCxnREFBdUM7RUFBdkMsd0NBQXVDO0VBQXZDLDJEQUF1QztFQUN2QyxXQUE4QixFUFAvQjs7QUFVRDtFR29CQSx1REc1Qm9DO1VINEJwQywrQ0c1Qm9DO0VDZWxDLFdBQThCLEVQTC9COztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsb0RHUDhDO1VITzlDLDRDR1A4QztFSE85QyxpQ0dFZTtNSEZmLDZCR0VlO1VIRmYseUJHRWU7RUMxQmIsZ0RBQXVDO0VBQXZDLHdDQUF1QztFQUF2QywyREFBdUM7RUFDdkMsV0FBOEIsRVBQL0I7O0FBVUQ7RUdvQkEsc0RHL0I4QjtVSCtCOUIsOENHL0I4QjtFQ2tCNUIsV0FBOEIsRVBML0I7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYixvREdQOEM7VUhPOUMsNENHUDhDO0VITzlDLGlDR0VlO01IRmYsNkJHRWU7VUhGZix5QkdFZTtFQzFCYixnREFBdUM7RUFBdkMsd0NBQXVDO0VBQXZDLDJEQUF1QztFQUN2QyxXQUE4QixFUFAvQjs7QUFVRDtFR29CQSxzREc5QmdDO1VIOEJoQyw4Q0c5QmdDO0VDaUI5QixXQUE4QixFUEwvQjs7QUFkRDtFQ2xCRiwyQkNrQmM7RURqQmQsbUND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STVFMXJCQztRaUZ4SkY7VUFDRSxZOUVzR3FEO1U4RXJHckQsWUFBVyxFQUNaO1FBSUM7VUFDRSxhOUVnR29ELEU4RS9GckQsRUFBQTtJakYrSUQ7TTRFMUtOO1FLbUNJLG1CQUFrQjtRQUNsQixXQUhtRDtRSHBCckQsV0NlcUQ7UUErQnJELFk1RThEeUQ7UTZFcEd2RCx3QkFGcUM7UUFHckMsdUJBSHFDLEVKaTFCcEMsRUFBQTtFNUUvckJDO0k0RXJLTjtNSXFCSSx5QkFGcUM7TUFHckMsd0JBSHFDLEVKaTFCcEMsRUFBQTtJNUUxckJDO1FpRnhKRjtVQUNFLFk5RXNHcUQ7VThFckdyRCxZQUFXLEVBQ1o7UUFJQztVQUNFLGE5RWdHb0QsRThFL0ZyRCxFQUFBO0lqRitJRDtNNEUxS047UUVhRSxZQ2VxRDtRQStCckQsWTVFOER5RDtRNkVwR3ZELHdCQUZxQztRQUdyQyx1QkFIcUMsRUowMUJwQyxFQUFBO0U1RXhzQkM7STRFcktOO01JcUJJLHlCQUZxQztNQUdyQyx3QkFIcUMsRUowMUJwQyxFQUFBO0k1RW5zQkM7UWlGeEpGO1VBQ0UsWTlFc0dxRDtVOEVyR3JELFlBQVcsRUFDWjtRQUlDO1VBQ0UsYTlFZ0dvRCxFOEUvRnJELEVBQUE7SWpGK0lEO000RTFLTjtRS21DSSxtQkFBa0I7UUFDbEIsVUFIbUQ7UUhwQnJELFdDZXFEO1FBK0JyRCxZNUU4RHlEO1E2RXBHdkQsd0JBRnFDO1FBR3JDLHVCQUhxQyxFSjAxQnBDLEVBQUE7RTVFeHNCQztJNEVyS047TUlxQkkseUJBRnFDO01BR3JDLHdCQUhxQyxFSjAxQnBDLEVBQUE7STVFbnNCQztRaUZ4SkY7VUFDRSxZOUVzR3FEO1U4RXJHckQsWUFBVyxFQUNaO1FBSUM7VUFDRSxhOUVnR29ELEU4RS9GckQsRUFBQTtJTDNCUDtNRWFFLFlDZXFEO01BK0JyRCxZNUU4RHlEO002RXBHdkQsd0JBRnFDO01BR3JDLHVCQUhxQyxFSnUyQnBDO001RXJ0QkM7UTRFcktOO1VJcUJJLHlCQUZxQztVQUdyQyx3QkFIcUMsRUp1MkJwQyxFQUFBO01LeDJCRDtRQUNF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TUlxQkkseUJBRnFDO01BR3JDLHdCQUhxQyxFSjhwRG5DLEVBQUE7TTVFdmdEQTtVaUZ4SkY7WUFDRSxZOUVzR3FEO1k4RXJHckQsWUFBVyxFQUNaO1VBSUM7WUFDRSxhOUVnR29ELEU4RS9GckQsRUFBQTtNakYrSUQ7UTRFMUtOO1VFYUUsaUJDZXFEO1VBK0JyRCxZNUU4RHlEO1U2RXBHdkQsd0JBRnFDO1VBR3JDLHVCQUhxQyxFSjhwRG5DLEVBQUE7RTVFNWdEQTtJNEVyS047TUlxQkkseUJBRnFDO01BR3JDLHdCQUhxQyxFSjhwRG5DLEVBQUE7TTVFdmdEQTtVaUZ4SkY7WUFDRSxZOUVzR3FEO1k4RXJHckQsWUFBVyxFQUNaO1VBSUM7WUFDRSxhOUVnR29ELEU4RS9GckQsRUFBQTtNTDNCUDtRRWFFLFlDZXFEO1FBK0JyRCxZNUU4RHlEO1E2RXBHdkQsd0JBRnFDO1FBR3JDLHVCQUhxQyxFSmtxRG5DO1E1RWhoREE7VTRFcktOO1lJcUJJLHlCQUZxQztZQUdyQyx3QkFIcUMsRUprcURuQyxFQUFBO1FLbnFERjtVQUNFLFk5RXNHcUQ7VThFckdyRCxZQUFXLEVBQ1o7UUFJQztVQUNFLGE5RWdHb0QsRThFL0ZyRDtNTDNCUDtRQXlyRE8sa0JBQWdCLEVBQ2hCO001RWhoREQ7UTRFMUtOO1VFYUUsWUNlcUQ7VUErQnJELFk1RThEeUQ7VTZFcEd2RCx3QkFGcUM7VUFHckMsdUJBSHFDO1VKNHFEbEMsa0JBQWlCO1VBQ2pCLDhCQUE2QjtVQUM3QixpQkFBZ0IsRUEyQ2pCLEVBQUE7RTVFdmtEQTtJNEVyS047TUlxQkkseUJBRnFDO01BR3JDLHdCQUhxQyxFSnl0RG5DLEVBQUE7TTVFbGtEQTtVaUZ4SkY7WUFDRSxZOUVzR3FEO1k4RXJHckQsWUFBVyxFQUNaO1VBSUM7WUFDRSxhOUVnR29ELEU4RS9GckQsRUFBQTtNakYrSUQ7UTRFMUtOO1VFYUUsaUJDZXFEO1VBK0JyRCxZNUU4RHlEO1U2RXBHdkQsaUJ4RXVFUztVd0V0RVQsZ0J4RXNFUztVb0V5bUROLGtDQUFpQyxFQXVDbEM7VUsxdERGO1lBQ0Us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LFlDZXFEO01BK0JyRCxZNUU4RHlEO002RXBHdkQsd0JBRnFDO01BR3JDLHVCQUhxQztNSjJ6RHBDOzs0QkFFdUIsRUFPeEIsRUFBQTtFNUVsckRFO0k0RXJLTjtNSXFCSSx5QkFGcUM7TUFHckMsd0JBSHFDLEVKbzBEckMsRUFBQTtFNUU3cURFO01pRnhKRjtRQUNFLFk5RXNHcUQ7UThFckdyRCxZQUFXLEVBQ1o7TUFJQztRQUNFLGE5RWdHb0QsRThFL0ZyRCxFQUFBO0VqRitJRDtJNEUxS047TUttQ0ksbUJBQWtCO01BQ2xCLFdBSG1EO01IcEJyRCxXQ2VxRDtNQStCckQsWTVFOER5RDtNNkVwR3ZELHdCQUZxQztNQUdyQyx1QkFIcUMsRUpvMERyQyxFQUFBO0U1RWxyREU7STRFcktOO01JcUJJLHlCQUZxQztNQUdyQyx3QkFIcUMsRUpvMERyQyxFQUFBO0U1RTdxREU7TWlGeEpGO1FBQ0UsWTlFc0dxRDtROEVyR3JELFlBQVcsRUFDWjtNQUlDO1FBQ0UsYTlFZ0dvRCxFOEUvRnJELEVBQUE7RWpGK0lEO0k0RTFLTjtNRWFFLFlDZXFEO01BK0JyRCxZNUU4RHlEO002RXBHdkQsd0JBRnFDO01BR3JDLHVCQUhxQyxFSjYwRHJDLEVBQUE7RTVFM3JERTtJNEVyS047TUlxQkkseUJBRnFDO01BR3JDLHdCQUhxQyxFSjYwRHJDLEVBQUE7RTVFdHJERTtNaUZ4SkY7UUFDRSxZOUVzR3FEO1E4RXJHckQsWUFBVyxFQUNaO01BSUM7UUFDRSxhOUVnR29ELEU4RS9GckQsRUFBQTtFakYrSUQ7STRFMUtOO01LbUNJLG1CQUFrQjtNQUNsQixVQUhtRDtNSHBCckQsV0NlcUQ7TUErQnJELFk1RThEeUQ7TTZFcEd2RCx3QkFGcUM7TUFHckMsdUJBSHFDLEVKNjBEckMsRUFBQTtFNUUzckRFO0k0RXJLTjtNSXFCSSx5QkFGcUM7TUFHckMsd0JBSHFDLEVKNjBEckMsRUFBQTtFNUV0ckRFO01pRnhKRjtRQUNFLFk5RXNHcUQ7UThFckdyRCxZQUFXLEVBQ1o7TUFJQztRQUNFLGE5RWdHb0QsRThFL0ZyRCxFQUFBO0VMM0JQO0lFYUUsWUNlcUQ7SUErQnJELFk1RThEeUQ7STZFcEd2RCx3QkFGcUM7SUFHckMsdUJBSHFDLEVKMDFEckM7STVFeHNERTtNNEVyS047UUlxQkkseUJBRnFDO1FBR3JDLHdCQUhxQyxFSjAxRHJDLEVBQUE7SUszMURBO01BQ0UsWTlFc0dxRDtNOEVyR3JELFlBQVcsRUFDWjtJQUlDO01BQ0UsYTlFZ0dvRCxFOEUvRnJEO0lqRitJRDtNNEUxS047UUVhRSxXQ2VxRDtRQStCckQsWTVFOER5RDtRNkVwR3ZELHdCQUZxQztRQUdyQyx1QkFIcUMsRUowMURyQyxFQUFBO0U1RXhzREU7STRFcktOO01JcUJJLHlCQUZxQztNQUdyQyx3QkFIcUMsRUowMURyQyxFQUFBO0k1RW5zREU7UWlGeEpGO1VBQ0UsWTlFc0dxRDtVOEVyR3JELFlBQVcsRUFDWjtRQUlDO1VBQ0UsYTlFZ0dvRCxFOEUvRnJELEVBQUE7SWpGK0lEO000RTFLTjtRQTAyREs7MkJBQ3NCLEVBRXZCLEVBQUE7RUE3MkRKO0lFYUUsWUNlcUQ7SUErQnJELFk1RThEeUQ7STZFcEd2RCx3QkFGcUM7SUFHckMsdUJBSHFDLEVKZzJEckM7STVFOXNERTtNNEVyS047UUlxQkkseUJBRnFDO1FBR3JDLHdCQUhxQyxFSmcyRHJDLEVBQUE7SUtqMkRBO01BQ0UsWTlFc0dxRDtNOEVyR3JELFlBQVcsRUFDWjtJQUlDO01BQ0UsYTlFZ0dvRCxFOEUvRnJEO0lqRitJRDtNNEUxS047UUVhRSxXQ2VxRDtRQStCckQsWTVFOER5RDtRNkVwR3ZELHdCQUZxQztRQUdyQyx1QkFIcUMsRUpnMkRyQyxFQUFBO0U1RTlzREU7STRFcktOO01JcUJJLHlCQUZxQztNQUdyQyx3QkFIcUMsRUpnMkRyQyxFQUFBO0k1RXpzREU7UWlGeEpGO1VBQ0UsWTlFc0dxRDtVOEVyR3JELFlBQVcsRUFDWjtRQUlDO1VBQ0UsYTlFZ0dvRCxFOEUvRnJELEVBQUE7RUwzQlA7SUNnR0UsaUJyRVR1RDtJcUUxQnJELG1CQUFrQjtJQUNsQixrQkFBaUIsRUQ2MkRuQjtJeEVud0RBO01B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QiwwQ0FBd0MsRUFPekMsRUFBQTtFNUUvOERBO0k0RXJLTjtNSXFCSSx5QkFGcUM7TUFHckMsd0JBSHFDLEVKaW1FbkMsRUFBQTtRNUUxOERBO1lpRnhKRjtjQUNFLFk5RXNHcUQ7YzhFckdyRCxZQUFXLEVBQ1o7WUFJQztjQUNFLGE5RWdHb0QsRThFL0ZyRCxFQUFBO1FqRjBJRDtVNEVyS047WUttQ0ksbUJBQWtCO1lBQ2xCLFdBSG1EO1lIcEJyRCxXQ2VxRDtZQStCckQsWTVFOER5RDtZNkVwR3ZELHdCQUZxQztZQUdyQyx1QkFIcUMsRUppbUVuQyxFQUFBO0U1RS84REE7STRFcktOO01JcUJJLHlCQUZxQztNQUdyQyx3QkFIcUMsRUppbUVuQyxFQUFBO1E1RS84REE7WWlGbkpGO2NBQ0UsWTlFc0dxRDtjOEVyR3JELFlBQVcsRUFDWjtZQUlDO2NBQ0UsYTlFZ0dvRCxFOEUvRnJELEVBQUE7TWpGK0lEO1E0RTFLTjtVRWFFLFlDZXFEO1VBK0JyRCxZNUU4RHlEO1U2RXBHdkQsd0JBRnFDO1VBR3JDLHVCQUhxQyxFSjBtRW5DLEVBQUE7RTVFeDlEQTtJNEVyS047TUlxQkkseUJBRnFDO01BR3JDLHdCQUhxQyxFSjBtRW5DLEVBQUE7TTVFbjlEQTtVaUZ4SkY7WUFDRSxZOUVzR3FEO1k4RXJHckQsWUFBVyxFQUNaO1VBSUM7WUFDRSxhOUVnR29ELEU4RS9GckQsRUFBQTtNakYwSUQ7UTRFcktOO1VLbUNJLG1CQUFrQjtVQUNsQixVQUhtRDtVSHBCckQsV0NlcUQ7VUErQnJELFk1RThEeUQ7VTZFcEd2RCx3QkFGcUM7VUFHckMsdUJBSHFDLEVKMG1FbkMsRUFBQTtFNUV4OURBO0k0RXJLTjtNSXFCSSx5QkFGcUM7TUFHckMsd0JBSHFDLEVKMG1FbkMsRUFBQTtNNUV4OURBO1VpRm5KRjtZQUNFLFk5RXNHcUQ7WThFckdyRCxZQUFXLEVBQ1o7VUFJQztZQUNFLGE5RWdHb0QsRThFL0ZyRCxFQUFBO01MM0JQO1FBa29FTSx3Q0FBcUM7UUVybkV6QyxZQ2VxRDtRQStCckQsWTVFOER5RDtRNkVwR3ZELHdC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a0JBQWlCO1FBQ2pCLGVBQWM7UUFDZCxxQkFBb0I7UUFDcEIsc0JBQXFCO1FBQ3JCLDhCaEdzQ2U7UWdHckNmLGlCQUFnQjtRQUNoQixvQkFBbUIsRUFDcEI7TUExQkw7UUE2Qk0sWUFBVztRQUNYLG1CQUFrQjtRQUNsQixvQkFBbUIsRUFDcEI7TUFoQ0w7UUFtQ00sb0JBQW1CO1FBQ25CLGFBQVksRUFDYjtNQXJDTDtRQXdDTSxjQUFhO1FBQ2IsY0FBYTtRQUNiLGVBQWMsRUFDZixFQUFBOztBQUlMO0VBRUksb0JBQW1CO0VBQ25CLGdCQUFlO0VBQ2Ysa0JBQWlCO0VBQ2pCLHNCQUFxQixFQVd0QjtFQWhCSDtJQVFNLG9CQUFtQjtJQUNuQixlQUFjLEVBQ2Y7RUFWTDtJQWFNLG9CQUFtQjtJQUNuQixlQUFjLEVBQ2YiLCJmaWxlIjoiYXBwLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qJGJvZHktZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBcIlJvYm90b1wiLCBcIk94eWdlblwiLCBcIlVidW50dVwiLCBcIkNhbnRhcmVsbFwiLCBcIkZpcmEgU2Fuc1wiLCBcIkRyb2lkIFNhbnNcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmOyovXG4vKiRhbmNob3ItY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRhbmNob3ItY29sb3IsICRsaWdodG5lc3M6IC0xNCUpOyovXG4vKiRidXR0b24tYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMTUlKTsqL1xuLyoqXG4gKiBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4gKiBWZXJzaW9uIDYuNS4xXG4gKiBmb3VuZGF0aW9uLnp1cmIuY29tXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcbiAqL1xuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnJldmVhbCwgLnJldmVhbC50aW55LCAucmV2ZWFsLnNtYWxsLCAucmV2ZWFsLmxhcmdlIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbjogMCBhdXRvOyB9IH1cblxuLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4wIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IH1cblxuYm9keSB7XG4gIG1hcmdpbjogMDsgfVxuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwOyB9XG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTsgfVxuXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyB9XG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyOyB9XG5cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTsgfVxuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlOyB9XG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtOyB9XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtOyB9XG5cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgfVxuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgbWFyZ2luOiAwOyB9XG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgfVxuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDsgfVxuXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDsgfVxuXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTsgfVxuXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZGlzcGxheTogdGFibGU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgfVxuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZzogMDsgfVxuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyB9XG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgZm9udDogaW5oZXJpdDsgfVxuXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgfVxuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5mb3VuZGF0aW9uLW1xIHtcbiAgZm9udC1mYW1pbHk6IFwic21hbGw9MGVtJm1lZGl1bT00MGVtJmxhcmdlPTY0ZW0meGxhcmdlPTc1ZW0meHhsYXJnZT05MGVtXCI7IH1cblxuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZvbnQtc2l6ZTogMTAwJTsgfVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0OyB9XG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIGZvbnQtZmFtaWx5OiBcInJvYm90b3JlZ3VsYXJcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzBhMGEwYTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cblxuaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYzsgfVxuXG50ZXh0YXJlYSB7XG4gIGhlaWdodDogYXV0bztcbiAgbWluLWhlaWdodDogNTBweDtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG5zZWxlY3Qge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG4ubWFwX2NhbnZhcyBpbWcsXG4ubWFwX2NhbnZhcyBlbWJlZCxcbi5tYXBfY2FudmFzIG9iamVjdCxcbi5tcWEtZGlzcGxheSBpbWcsXG4ubXFhLWRpc3BsYXkgZW1iZWQsXG4ubXFhLWRpc3BsYXkgb2JqZWN0IHtcbiAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7IH1cblxuYnV0dG9uIHtcbiAgcGFkZGluZzogMDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGN1cnNvcjogYXV0bzsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gYnV0dG9uIHtcbiAgICBvdXRsaW5lOiAwOyB9XG5cbnByZSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0OyB9XG5cbi5pcy12aXNpYmxlIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuXG4uaXMtaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5ncmlkLWNvbnRhaW5lciB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBtYXgtd2lkdGg6IDc1cmVtO1xuICBtYXJnaW46IDAgYXV0bzsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5ncmlkLWNvbnRhaW5lci5mbHVpZCB7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmdyaWQtY29udGFpbmVyLmZsdWlkIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5ncmlkLWNvbnRhaW5lci5mdWxsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwIGF1dG87IH1cblxuLmdyaWQteCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7IH1cblxuLmNlbGwge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgbWluLWhlaWdodDogMHB4O1xuICBtaW4td2lkdGg6IDBweDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmNlbGwuYXV0byB7XG4gICAgZmxleDogMSAxIDBweDsgfVxuICAuY2VsbC5zaHJpbmsge1xuICAgIGZsZXg6IDAgMCBhdXRvOyB9XG5cbi5ncmlkLXggPiAuYXV0byB7XG4gIHdpZHRoOiBhdXRvOyB9XG5cbi5ncmlkLXggPiAuc2hyaW5rIHtcbiAgd2lkdGg6IGF1dG87IH1cblxuLmdyaWQteCA+IC5zbWFsbC1zaHJpbmssIC5ncmlkLXggPiAuc21hbGwtZnVsbCwgLmdyaWQteCA+IC5zbWFsbC0xLCAuZ3JpZC14ID4gLnNtYWxsLTIsIC5ncmlkLXggPiAuc21hbGwtMywgLmdyaWQteCA+IC5zbWFsbC00LCAuZ3JpZC14ID4gLnNtYWxsLTUsIC5ncmlkLXggPiAuc21hbGwtNiwgLmdyaWQteCA+IC5zbWFsbC03LCAuZ3JpZC14ID4gLnNtYWxsLTgsIC5ncmlkLXggPiAuc21hbGwtOSwgLmdyaWQteCA+IC5zbWFsbC0xMCwgLmdyaWQteCA+IC5zbWFsbC0xMSwgLmdyaWQteCA+IC5zbWFsbC0xMiB7XG4gIGZsZXgtYmFzaXM6IGF1dG87IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyaWQteCA+IC5tZWRpdW0tc2hyaW5rLCAuZ3JpZC14ID4gLm1lZGl1bS1mdWxsLCAuZ3JpZC14ID4gLm1lZGl1bS0xLCAuZ3JpZC14ID4gLm1lZGl1bS0yLCAuZ3JpZC14ID4gLm1lZGl1bS0zLCAuZ3JpZC14ID4gLm1lZGl1bS00LCAuZ3JpZC14ID4gLm1lZGl1bS01LCAuZ3JpZC14ID4gLm1lZGl1bS02LCAuZ3JpZC14ID4gLm1lZGl1bS03LCAuZ3JpZC14ID4gLm1lZGl1bS04LCAuZ3JpZC14ID4gLm1lZGl1bS05LCAuZ3JpZC14ID4gLm1lZGl1bS0xMCwgLmdyaWQteCA+IC5tZWRpdW0tMTEsIC5ncmlkLXggPiAubWVkaXVtLTEyIHtcbiAgICBmbGV4LWJhc2lzOiBhdXRvOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQteCA+IC5sYXJnZS1zaHJpbmssIC5ncmlkLXggPiAubGFyZ2UtZnVsbCwgLmdyaWQteCA+IC5sYXJnZS0xLCAuZ3JpZC14ID4gLmxhcmdlLTIsIC5ncmlkLXggPiAubGFyZ2UtMywgLmdyaWQteCA+IC5sYXJnZS00LCAuZ3JpZC14ID4gLmxhcmdlLTUsIC5ncmlkLXggPiAubGFyZ2UtNiwgLmdyaWQteCA+IC5sYXJnZS03LCAuZ3JpZC14ID4gLmxhcmdlLTgsIC5ncmlkLXggPiAubGFyZ2UtOSwgLmdyaWQteCA+IC5sYXJnZS0xMCwgLmdyaWQteCA+IC5sYXJnZS0xMSwgLmdyaWQteCA+IC5sYXJnZS0xMiB7XG4gICAgZmxleC1iYXNpczogYXV0bzsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmdyaWQteCA+IC54bGFyZ2Utc2hyaW5rLCAuZ3JpZC14ID4gLnhsYXJnZS1mdWxsLCAuZ3JpZC14ID4gLnhsYXJnZS0xLCAuZ3JpZC14ID4gLnhsYXJnZS0yLCAuZ3JpZC14ID4gLnhsYXJnZS0zLCAuZ3JpZC14ID4gLnhsYXJnZS00LCAuZ3JpZC14ID4gLnhsYXJnZS01LCAuZ3JpZC14ID4gLnhsYXJnZS02LCAuZ3JpZC14ID4gLnhsYXJnZS03LCAuZ3JpZC14ID4gLnhsYXJnZS04LCAuZ3JpZC14ID4gLnhsYXJnZS05LCAuZ3JpZC14ID4gLnhsYXJnZS0xMCwgLmdyaWQteCA+IC54bGFyZ2UtMTEsIC5ncmlkLXggPiAueGxhcmdlLTEyIHtcbiAgICBmbGV4LWJhc2lzOiBhdXRvOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuZ3JpZC14ID4gLnh4bGFyZ2Utc2hyaW5rLCAuZ3JpZC14ID4gLnh4bGFyZ2UtZnVsbCwgLmdyaWQteCA+IC54eGxhcmdlLTEsIC5ncmlkLXggPiAueHhsYXJnZS0yLCAuZ3JpZC14ID4gLnh4bGFyZ2UtMywgLmdyaWQteCA+IC54eGxhcmdlLTQsIC5ncmlkLXggPiAueHhsYXJnZS01LCAuZ3JpZC14ID4gLnh4bGFyZ2UtNiwgLmdyaWQteCA+IC54eGxhcmdlLTcsIC5ncmlkLXggPiAueHhsYXJnZS04LCAuZ3JpZC14ID4gLnh4bGFyZ2UtOSwgLmdyaWQteCA+IC54eGxhcmdlLTEwLCAuZ3JpZC14ID4gLnh4bGFyZ2UtMTEsIC5ncmlkLXggPiAueHhsYXJnZS0xMiB7XG4gICAgZmxleC1iYXNpczogYXV0bzsgfSB9XG5cbi5ncmlkLXggPiAuc21hbGwtMSwgLmdyaWQteCA+IC5zbWFsbC0yLCAuZ3JpZC14ID4gLnNtYWxsLTMsIC5ncmlkLXggPiAuc21hbGwtNCwgLmdyaWQteCA+IC5zbWFsbC01LCAuZ3JpZC14ID4gLnNtYWxsLTYsIC5ncmlkLXggPiAuc21hbGwtNywgLmdyaWQteCA+IC5zbWFsbC04LCAuZ3JpZC14ID4gLnNtYWxsLTksIC5ncmlkLXggPiAuc21hbGwtMTAsIC5ncmlkLXggPiAuc21hbGwtMTEsIC5ncmlkLXggPiAuc21hbGwtMTIge1xuICBmbGV4OiAwIDAgYXV0bzsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTEge1xuICB3aWR0aDogOC4zMzMzMyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC0yIHtcbiAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTMge1xuICB3aWR0aDogMjUlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtNCB7XG4gIHdpZHRoOiAzMy4zMzMzMyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC01IHtcbiAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTYge1xuICB3aWR0aDogNTAlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtNyB7XG4gIHdpZHRoOiA1OC4zMzMzMyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC04IHtcbiAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTkge1xuICB3aWR0aDogNzUlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtMTAge1xuICB3aWR0aDogODMuMzMzMzMlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtMTEge1xuICB3aWR0aDogOTEuNjY2NjclOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtMTIge1xuICB3aWR0aDogMTAwJTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ3JpZC14ID4gLm1lZGl1bS1hdXRvIHtcbiAgICBmbGV4OiAxIDEgMHB4O1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLXNocmluaywgLmdyaWQteCA+IC5tZWRpdW0tMSwgLmdyaWQteCA+IC5tZWRpdW0tMiwgLmdyaWQteCA+IC5tZWRpdW0tMywgLmdyaWQteCA+IC5tZWRpdW0tNCwgLmdyaWQteCA+IC5tZWRpdW0tNSwgLmdyaWQteCA+IC5tZWRpdW0tNiwgLmdyaWQteCA+IC5tZWRpdW0tNywgLmdyaWQteCA+IC5tZWRpdW0tOCwgLmdyaWQteCA+IC5tZWRpdW0tOSwgLmdyaWQteCA+IC5tZWRpdW0tMTAsIC5ncmlkLXggPiAubWVkaXVtLTExLCAuZ3JpZC14ID4gLm1lZGl1bS0xMiB7XG4gICAgZmxleDogMCAwIGF1dG87IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLXggPiAubGFyZ2UtYXV0byB7XG4gICAgZmxleDogMSAxIDBweDtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLXNocmluaywgLmdyaWQteCA+IC5sYXJnZS0xLCAuZ3JpZC14ID4gLmxhcmdlLTIsIC5ncmlkLXggPiAubGFyZ2UtMywgLmdyaWQteCA+IC5sYXJnZS00LCAuZ3JpZC14ID4gLmxhcmdlLTUsIC5ncmlkLXggPiAubGFyZ2UtNiwgLmdyaWQteCA+IC5sYXJnZS03LCAuZ3JpZC14ID4gLmxhcmdlLTgsIC5ncmlkLXggPiAubGFyZ2UtOSwgLmdyaWQteCA+IC5sYXJnZS0xMCwgLmdyaWQteCA+IC5sYXJnZS0xMSwgLmdyaWQteCA+IC5sYXJnZS0xMiB7XG4gICAgZmxleDogMCAwIGF1dG87IH1cbiAgLmdyaWQteCA+IC5sYXJnZS1zaHJpbmsge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuZ3JpZC14ID4gLnhsYXJnZS1hdXRvIHtcbiAgICBmbGV4OiAxIDEgMHB4O1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLXNocmluaywgLmdyaWQteCA+IC54bGFyZ2UtMSwgLmdyaWQteCA+IC54bGFyZ2UtMiwgLmdyaWQteCA+IC54bGFyZ2UtMywgLmdyaWQteCA+IC54bGFyZ2UtNCwgLmdyaWQteCA+IC54bGFyZ2UtNSwgLmdyaWQteCA+IC54bGFyZ2UtNiwgLmdyaWQteCA+IC54bGFyZ2UtNywgLmdyaWQteCA+IC54bGFyZ2UtOCwgLmdyaWQteCA+IC54bGFyZ2UtOSwgLmdyaWQteCA+IC54bGFyZ2UtMTAsIC5ncmlkLXggPiAueGxhcmdlLTExLCAuZ3JpZC14ID4gLnhsYXJnZS0xMiB7XG4gICAgZmxleDogMCAwIGF1dG87IH1cbiAgLmdyaWQteCA+IC54bGFyZ2Utc2hyaW5rIHtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmdyaWQteCA+IC54eGxhcmdlLWF1dG8ge1xuICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQteCA+IC54eGxhcmdlLXNocmluaywgLmdyaWQteCA+IC54eGxhcmdlLTEsIC5ncmlkLXggPiAueHhsYXJnZS0yLCAuZ3JpZC14ID4gLnh4bGFyZ2UtMywgLmdyaWQteCA+IC54eGxhcmdlLTQsIC5ncmlkLXggPiAueHhsYXJnZS01LCAuZ3JpZC14ID4gLnh4bGFyZ2UtNiwgLmdyaWQteCA+IC54eGxhcmdlLTcsIC5ncmlkLXggPiAueHhsYXJnZS04LCAuZ3JpZC14ID4gLnh4bGFyZ2UtOSwgLmdyaWQteCA+IC54eGxhcmdlLTEwLCAuZ3JpZC14ID4gLnh4bGFyZ2UtMTEsIC5ncmlkLXggPiAueHhsYXJnZS0xMiB7XG4gICAgZmxleDogMCAwIGF1dG87IH1cbiAgLmdyaWQteCA+IC54eGxhcmdlLXNocmluayB7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQteCA+IC54eGxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLnh4bGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLnh4bGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAuZ3JpZC14ID4gLnh4bGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLnh4bGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLnh4bGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAuZ3JpZC14ID4gLnh4bGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLnh4bGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLnh4bGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAuZ3JpZC14ID4gLnh4bGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC54eGxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAueHhsYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4uZ3JpZC1tYXJnaW4teDpub3QoLmdyaWQteCkgPiAuY2VsbCB7XG4gIHdpZHRoOiBhdXRvOyB9XG5cbi5ncmlkLW1hcmdpbi15Om5vdCguZ3JpZC15KSA+IC5jZWxsIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi5ncmlkLW1hcmdpbi14IHtcbiAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teCB7XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTsgfSB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLW1hcmdpbi14ID4gLmNlbGwge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmF1dG8ge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNocmluayB7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMSB7XG4gICAgd2lkdGg6IGNhbGMoOC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0yIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0zIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC00IHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC01IHtcbiAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC02IHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC03IHtcbiAgICB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC04IHtcbiAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC05IHtcbiAgICB3aWR0aDogY2FsYyg3NSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMCB7XG4gICAgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTEge1xuICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEyIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5hdXRvIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc2hyaW5rIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMSB7XG4gICAgICB3aWR0aDogY2FsYyg4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC00IHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTUge1xuICAgICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC03IHtcbiAgICAgIHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTgge1xuICAgICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMCB7XG4gICAgICB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMSB7XG4gICAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLWF1dG8ge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTEge1xuICAgICAgd2lkdGg6IGNhbGMoOC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMiB7XG4gICAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNCB7XG4gICAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNSB7XG4gICAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNyB7XG4gICAgICB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tOCB7XG4gICAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMTAge1xuICAgICAgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTExIHtcbiAgICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1hdXRvIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utc2hyaW5rIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMSB7XG4gICAgICB3aWR0aDogY2FsYyg4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS00IHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTUge1xuICAgICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS03IHtcbiAgICAgIHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTgge1xuICAgICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0xMCB7XG4gICAgICB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0xMSB7XG4gICAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1hdXRvIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLXNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS0xIHtcbiAgICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTMge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTQge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTUge1xuICAgICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTYge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTcge1xuICAgICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTgge1xuICAgICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTkge1xuICAgICAgd2lkdGg6IGNhbGMoNzUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTEwIHtcbiAgICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS0xMSB7XG4gICAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtMTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54eGxhcmdlLWF1dG8ge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54eGxhcmdlLXNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2UtMSB7XG4gICAgICB3aWR0aDogY2FsYyg4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2UtMiB7XG4gICAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54eGxhcmdlLTMge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS00IHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2UtNSB7XG4gICAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54eGxhcmdlLTYge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS03IHtcbiAgICAgIHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2UtOCB7XG4gICAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54eGxhcmdlLTkge1xuICAgICAgd2lkdGg6IGNhbGMoNzUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS0xMCB7XG4gICAgICB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54eGxhcmdlLTExIHtcbiAgICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2UtMTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTsgfSB9XG5cbi5ncmlkLXBhZGRpbmcteCAuZ3JpZC1wYWRkaW5nLXgge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLXBhZGRpbmcteCAuZ3JpZC1wYWRkaW5nLXgge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuXG4uZ3JpZC1jb250YWluZXI6bm90KC5mdWxsKSA+IC5ncmlkLXBhZGRpbmcteCB7XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtY29udGFpbmVyOm5vdCguZnVsbCkgPiAuZ3JpZC1wYWRkaW5nLXgge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuXG4uZ3JpZC1wYWRkaW5nLXggPiAuY2VsbCB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtcGFkZGluZy14ID4gLmNlbGwge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuXG4uc21hbGwtdXAtMSA+IC5jZWxsIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLnNtYWxsLXVwLTIgPiAuY2VsbCB7XG4gIHdpZHRoOiA1MCU7IH1cblxuLnNtYWxsLXVwLTMgPiAuY2VsbCB7XG4gIHdpZHRoOiAzMy4zMzMzMyU7IH1cblxuLnNtYWxsLXVwLTQgPiAuY2VsbCB7XG4gIHdpZHRoOiAyNSU7IH1cblxuLnNtYWxsLXVwLTUgPiAuY2VsbCB7XG4gIHdpZHRoOiAyMCU7IH1cblxuLnNtYWxsLXVwLTYgPiAuY2VsbCB7XG4gIHdpZHRoOiAxNi42NjY2NyU7IH1cblxuLnNtYWxsLXVwLTcgPiAuY2VsbCB7XG4gIHdpZHRoOiAxNC4yODU3MSU7IH1cblxuLnNtYWxsLXVwLTggPiAuY2VsbCB7XG4gIHdpZHRoOiAxMi41JTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLm1lZGl1bS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyMCU7IH1cbiAgLm1lZGl1bS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLm1lZGl1bS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMi41JTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5sYXJnZS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmxhcmdlLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyMCU7IH1cbiAgLmxhcmdlLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTQuMjg1NzElOyB9XG4gIC5sYXJnZS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMi41JTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC54bGFyZ2UtdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC54bGFyZ2UtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC54bGFyZ2UtdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjAlOyB9XG4gIC54bGFyZ2UtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC54bGFyZ2UtdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTQuMjg1NzElOyB9XG4gIC54bGFyZ2UtdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTIuNSU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC54eGxhcmdlLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnh4bGFyZ2UtdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC54eGxhcmdlLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueHhsYXJnZS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnh4bGFyZ2UtdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjAlOyB9XG4gIC54eGxhcmdlLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueHhsYXJnZS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLnh4bGFyZ2UtdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTIuNSU7IH0gfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0xID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMiA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoNTAlIC0gMS4yNXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMyA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNCA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoMjUlIC0gMS4yNXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNSA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoMjAlIC0gMS4yNXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNiA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS4yNXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNyA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMS4yNXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtOCA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoMTIuNSUgLSAxLjI1cmVtKTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyMCUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNC4yODU3MSUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMi41JSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMS44NzVyZW0pOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjAlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTIuNSUgLSAxLjg3NXJlbSk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5ncmlkLW1hcmdpbi14LnhsYXJnZS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueGxhcmdlLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnhsYXJnZS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54bGFyZ2UtdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueGxhcmdlLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjAlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnhsYXJnZS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54bGFyZ2UtdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNC4yODU3MSUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueGxhcmdlLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTIuNSUgLSAxLjg3NXJlbSk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5ncmlkLW1hcmdpbi14Lnh4bGFyZ2UtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lnh4bGFyZ2UtdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueHhsYXJnZS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54eGxhcmdlLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lnh4bGFyZ2UtdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyMCUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueHhsYXJnZS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54eGxhcmdlLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lnh4bGFyZ2UtdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMi41JSAtIDEuODc1cmVtKTsgfSB9XG5cbi5zbWFsbC1tYXJnaW4tY29sbGFwc2Uge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMSB7XG4gICAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0yIHtcbiAgICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0zIHtcbiAgICAgIHdpZHRoOiAyNSU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS00IHtcbiAgICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS01IHtcbiAgICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS02IHtcbiAgICAgIHdpZHRoOiA1MCU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS03IHtcbiAgICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS04IHtcbiAgICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS05IHtcbiAgICAgIHdpZHRoOiA3NSU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMCB7XG4gICAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTEge1xuICAgICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEyIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEge1xuICAgICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0yIHtcbiAgICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTMge1xuICAgICAgd2lkdGg6IDI1JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNCB7XG4gICAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS01IHtcbiAgICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTYge1xuICAgICAgd2lkdGg6IDUwJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNyB7XG4gICAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS04IHtcbiAgICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTkge1xuICAgICAgd2lkdGg6IDc1JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTAge1xuICAgICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTEge1xuICAgICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTIge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMSB7XG4gICAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0yIHtcbiAgICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0zIHtcbiAgICAgIHdpZHRoOiAyNSU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS00IHtcbiAgICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS01IHtcbiAgICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS02IHtcbiAgICAgIHdpZHRoOiA1MCU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS03IHtcbiAgICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS04IHtcbiAgICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS05IHtcbiAgICAgIHdpZHRoOiA3NSU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMCB7XG4gICAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTEge1xuICAgICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEyIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0xIHtcbiAgICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0yIHtcbiAgICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMyB7XG4gICAgICB3aWR0aDogMjUlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTQge1xuICAgICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS01IHtcbiAgICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtNiB7XG4gICAgICB3aWR0aDogNTAlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTcge1xuICAgICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS04IHtcbiAgICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtOSB7XG4gICAgICB3aWR0aDogNzUlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTEwIHtcbiAgICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMTEge1xuICAgICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0xMiB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi5zbWFsbC1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuICAuc21hbGwtcGFkZGluZy1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAubWVkaXVtLXBhZGRpbmctY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtcGFkZGluZy1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLmxhcmdlLXBhZGRpbmctY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAueGxhcmdlLXBhZGRpbmctY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC54bGFyZ2UtcGFkZGluZy1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmNlbGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnh4bGFyZ2UtcGFkZGluZy1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLnh4bGFyZ2UtcGFkZGluZy1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7IH0gfVxuXG4uc21hbGwtb2Zmc2V0LTAge1xuICBtYXJnaW4tbGVmdDogMCU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTAge1xuICBtYXJnaW4tbGVmdDogY2FsYygwJSArIDAuNjI1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTEge1xuICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTEge1xuICBtYXJnaW4tbGVmdDogY2FsYyg4LjMzMzMzJSArIDAuNjI1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTIge1xuICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0yIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoMTYuNjY2NjclICsgMC42MjVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtMyB7XG4gIG1hcmdpbi1sZWZ0OiAyNSU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTMge1xuICBtYXJnaW4tbGVmdDogY2FsYygyNSUgKyAwLjYyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC00IHtcbiAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtNCB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzJSArIDAuNjI1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTUge1xuICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC01IHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoNDEuNjY2NjclICsgMC42MjVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtNiB7XG4gIG1hcmdpbi1sZWZ0OiA1MCU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTYge1xuICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAwLjYyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC03IHtcbiAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtNyB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDU4LjMzMzMzJSArIDAuNjI1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTgge1xuICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC04IHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoNjYuNjY2NjclICsgMC42MjVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtOSB7XG4gIG1hcmdpbi1sZWZ0OiA3NSU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTkge1xuICBtYXJnaW4tbGVmdDogY2FsYyg3NSUgKyAwLjYyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTEwIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoODMuMzMzMzMlICsgMC42MjVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtMTEge1xuICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0xMSB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDkxLjY2NjY3JSArIDAuNjI1cmVtKTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygwJSArIDAuOTM3NXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoOC4zMzMzMyUgKyAwLjkzNzVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygxNi42NjY2NyUgKyAwLjkzNzVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygyNSUgKyAwLjkzNzVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygzMy4zMzMzMyUgKyAwLjkzNzVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg0MS42NjY2NyUgKyAwLjkzNzVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAwLjkzNzVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1OC4zMzMzMyUgKyAwLjkzNzVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg2Ni42NjY2NyUgKyAwLjkzNzVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg3NSUgKyAwLjkzNzVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDgzLjMzMzMzJSArIDAuOTM3NXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoOTEuNjY2NjclICsgMC45Mzc1cmVtKTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygwJSArIDAuOTM3NXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDguMzMzMzMlICsgMC45Mzc1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDE2LjY2NjY3JSArIDAuOTM3NXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygyNSUgKyAwLjkzNzVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMzMuMzMzMzMlICsgMC45Mzc1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDQxLjY2NjY3JSArIDAuOTM3NXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAwLjkzNzVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTguMzMzMzMlICsgMC45Mzc1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDY2LjY2NjY3JSArIDAuOTM3NXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg3NSUgKyAwLjkzNzVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4My4zMzMzMyUgKyAwLjkzNzVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg5MS42NjY2NyUgKyAwLjkzNzVyZW0pOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAueGxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygwJSArIDAuOTM3NXJlbSk7IH1cbiAgLnhsYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoOC4zMzMzMyUgKyAwLjkzNzVyZW0pOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygxNi42NjY2NyUgKyAwLjkzNzVyZW0pOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygyNSUgKyAwLjkzNzVyZW0pOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygzMy4zMzMzMyUgKyAwLjkzNzVyZW0pOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg0MS42NjY2NyUgKyAwLjkzNzVyZW0pOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAwLjkzNzVyZW0pOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1OC4zMzMzMyUgKyAwLjkzNzVyZW0pOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg2Ni42NjY2NyUgKyAwLjkzNzVyZW0pOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg3NSUgKyAwLjkzNzVyZW0pOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDgzLjMzMzMzJSArIDAuOTM3NXJlbSk7IH1cbiAgLnhsYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoOTEuNjY2NjclICsgMC45Mzc1cmVtKTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnh4bGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54eGxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygwJSArIDAuOTM3NXJlbSk7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54eGxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4LjMzMzMzJSArIDAuOTM3NXJlbSk7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTYuNjY2NjclICsgMC45Mzc1cmVtKTsgfVxuICAueHhsYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54eGxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygyNSUgKyAwLjkzNzVyZW0pOyB9XG4gIC54eGxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzJSArIDAuOTM3NXJlbSk7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNDEuNjY2NjclICsgMC45Mzc1cmVtKTsgfVxuICAueHhsYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54eGxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAwLjkzNzVyZW0pOyB9XG4gIC54eGxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDU4LjMzMzMzJSArIDAuOTM3NXJlbSk7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNjYuNjY2NjclICsgMC45Mzc1cmVtKTsgfVxuICAueHhsYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54eGxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg3NSUgKyAwLjkzNzVyZW0pOyB9XG4gIC54eGxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54eGxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoODMuMzMzMzMlICsgMC45Mzc1cmVtKTsgfVxuICAueHhsYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDkxLjY2NjY3JSArIDAuOTM3NXJlbSk7IH0gfVxuXG4uZ3JpZC15IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwOyB9XG4gIC5ncmlkLXkgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gIC5ncmlkLXkgPiAuYXV0byB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLXkgPiAuc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmdyaWQteSA+IC5zbWFsbC1zaHJpbmssIC5ncmlkLXkgPiAuc21hbGwtZnVsbCwgLmdyaWQteSA+IC5zbWFsbC0xLCAuZ3JpZC15ID4gLnNtYWxsLTIsIC5ncmlkLXkgPiAuc21hbGwtMywgLmdyaWQteSA+IC5zbWFsbC00LCAuZ3JpZC15ID4gLnNtYWxsLTUsIC5ncmlkLXkgPiAuc21hbGwtNiwgLmdyaWQteSA+IC5zbWFsbC03LCAuZ3JpZC15ID4gLnNtYWxsLTgsIC5ncmlkLXkgPiAuc21hbGwtOSwgLmdyaWQteSA+IC5zbWFsbC0xMCwgLmdyaWQteSA+IC5zbWFsbC0xMSwgLmdyaWQteSA+IC5zbWFsbC0xMiB7XG4gICAgZmxleC1iYXNpczogYXV0bzsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLXkgPiAubWVkaXVtLXNocmluaywgLmdyaWQteSA+IC5tZWRpdW0tZnVsbCwgLmdyaWQteSA+IC5tZWRpdW0tMSwgLmdyaWQteSA+IC5tZWRpdW0tMiwgLmdyaWQteSA+IC5tZWRpdW0tMywgLmdyaWQteSA+IC5tZWRpdW0tNCwgLmdyaWQteSA+IC5tZWRpdW0tNSwgLmdyaWQteSA+IC5tZWRpdW0tNiwgLmdyaWQteSA+IC5tZWRpdW0tNywgLmdyaWQteSA+IC5tZWRpdW0tOCwgLmdyaWQteSA+IC5tZWRpdW0tOSwgLmdyaWQteSA+IC5tZWRpdW0tMTAsIC5ncmlkLXkgPiAubWVkaXVtLTExLCAuZ3JpZC15ID4gLm1lZGl1bS0xMiB7XG4gICAgICBmbGV4LWJhc2lzOiBhdXRvOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC15ID4gLmxhcmdlLXNocmluaywgLmdyaWQteSA+IC5sYXJnZS1mdWxsLCAuZ3JpZC15ID4gLmxhcmdlLTEsIC5ncmlkLXkgPiAubGFyZ2UtMiwgLmdyaWQteSA+IC5sYXJnZS0zLCAuZ3JpZC15ID4gLmxhcmdlLTQsIC5ncmlkLXkgPiAubGFyZ2UtNSwgLmdyaWQteSA+IC5sYXJnZS02LCAuZ3JpZC15ID4gLmxhcmdlLTcsIC5ncmlkLXkgPiAubGFyZ2UtOCwgLmdyaWQteSA+IC5sYXJnZS05LCAuZ3JpZC15ID4gLmxhcmdlLTEwLCAuZ3JpZC15ID4gLmxhcmdlLTExLCAuZ3JpZC15ID4gLmxhcmdlLTEyIHtcbiAgICAgIGZsZXgtYmFzaXM6IGF1dG87IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmdyaWQteSA+IC54bGFyZ2Utc2hyaW5rLCAuZ3JpZC15ID4gLnhsYXJnZS1mdWxsLCAuZ3JpZC15ID4gLnhsYXJnZS0xLCAuZ3JpZC15ID4gLnhsYXJnZS0yLCAuZ3JpZC15ID4gLnhsYXJnZS0zLCAuZ3JpZC15ID4gLnhsYXJnZS00LCAuZ3JpZC15ID4gLnhsYXJnZS01LCAuZ3JpZC15ID4gLnhsYXJnZS02LCAuZ3JpZC15ID4gLnhsYXJnZS03LCAuZ3JpZC15ID4gLnhsYXJnZS04LCAuZ3JpZC15ID4gLnhsYXJnZS05LCAuZ3JpZC15ID4gLnhsYXJnZS0xMCwgLmdyaWQteSA+IC54bGFyZ2UtMTEsIC5ncmlkLXkgPiAueGxhcmdlLTEyIHtcbiAgICAgIGZsZXgtYmFzaXM6IGF1dG87IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmdyaWQteSA+IC54eGxhcmdlLXNocmluaywgLmdyaWQteSA+IC54eGxhcmdlLWZ1bGwsIC5ncmlkLXkgPiAueHhsYXJnZS0xLCAuZ3JpZC15ID4gLnh4bGFyZ2UtMiwgLmdyaWQteSA+IC54eGxhcmdlLTMsIC5ncmlkLXkgPiAueHhsYXJnZS00LCAuZ3JpZC15ID4gLnh4bGFyZ2UtNSwgLmdyaWQteSA+IC54eGxhcmdlLTYsIC5ncmlkLXkgPiAueHhsYXJnZS03LCAuZ3JpZC15ID4gLnh4bGFyZ2UtOCwgLmdyaWQteSA+IC54eGxhcmdlLTksIC5ncmlkLXkgPiAueHhsYXJnZS0xMCwgLmdyaWQteSA+IC54eGxhcmdlLTExLCAuZ3JpZC15ID4gLnh4bGFyZ2UtMTIge1xuICAgICAgZmxleC1iYXNpczogYXV0bzsgfSB9XG4gIC5ncmlkLXkgPiAuc21hbGwtMSwgLmdyaWQteSA+IC5zbWFsbC0yLCAuZ3JpZC15ID4gLnNtYWxsLTMsIC5ncmlkLXkgPiAuc21hbGwtNCwgLmdyaWQteSA+IC5zbWFsbC01LCAuZ3JpZC15ID4gLnNtYWxsLTYsIC5ncmlkLXkgPiAuc21hbGwtNywgLmdyaWQteSA+IC5zbWFsbC04LCAuZ3JpZC15ID4gLnNtYWxsLTksIC5ncmlkLXkgPiAuc21hbGwtMTAsIC5ncmlkLXkgPiAuc21hbGwtMTEsIC5ncmlkLXkgPiAuc21hbGwtMTIge1xuICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtMSB7XG4gICAgaGVpZ2h0OiA4LjMzMzMzJTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTIge1xuICAgIGhlaWdodDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtMyB7XG4gICAgaGVpZ2h0OiAyNSU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC00IHtcbiAgICBoZWlnaHQ6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTUge1xuICAgIGhlaWdodDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtNiB7XG4gICAgaGVpZ2h0OiA1MCU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC03IHtcbiAgICBoZWlnaHQ6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTgge1xuICAgIGhlaWdodDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtOSB7XG4gICAgaGVpZ2h0OiA3NSU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC0xMCB7XG4gICAgaGVpZ2h0OiA4My4zMzMzMyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC0xMSB7XG4gICAgaGVpZ2h0OiA5MS42NjY2NyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC0xMiB7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tYXV0byB7XG4gICAgICBmbGV4OiAxIDEgMHB4O1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tc2hyaW5rLCAuZ3JpZC15ID4gLm1lZGl1bS0xLCAuZ3JpZC15ID4gLm1lZGl1bS0yLCAuZ3JpZC15ID4gLm1lZGl1bS0zLCAuZ3JpZC15ID4gLm1lZGl1bS00LCAuZ3JpZC15ID4gLm1lZGl1bS01LCAuZ3JpZC15ID4gLm1lZGl1bS02LCAuZ3JpZC15ID4gLm1lZGl1bS03LCAuZ3JpZC15ID4gLm1lZGl1bS04LCAuZ3JpZC15ID4gLm1lZGl1bS05LCAuZ3JpZC15ID4gLm1lZGl1bS0xMCwgLmdyaWQteSA+IC5tZWRpdW0tMTEsIC5ncmlkLXkgPiAubWVkaXVtLTEyIHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTEge1xuICAgICAgaGVpZ2h0OiA4LjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTIge1xuICAgICAgaGVpZ2h0OiAxNi42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS0zIHtcbiAgICAgIGhlaWdodDogMjUlOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tNCB7XG4gICAgICBoZWlnaHQ6IDMzLjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTUge1xuICAgICAgaGVpZ2h0OiA0MS42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS02IHtcbiAgICAgIGhlaWdodDogNTAlOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tNyB7XG4gICAgICBoZWlnaHQ6IDU4LjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTgge1xuICAgICAgaGVpZ2h0OiA2Ni42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS05IHtcbiAgICAgIGhlaWdodDogNzUlOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tMTAge1xuICAgICAgaGVpZ2h0OiA4My4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS0xMSB7XG4gICAgICBoZWlnaHQ6IDkxLjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTEyIHtcbiAgICAgIGhlaWdodDogMTAwJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQteSA+IC5sYXJnZS1hdXRvIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLXNocmluaywgLmdyaWQteSA+IC5sYXJnZS0xLCAuZ3JpZC15ID4gLmxhcmdlLTIsIC5ncmlkLXkgPiAubGFyZ2UtMywgLmdyaWQteSA+IC5sYXJnZS00LCAuZ3JpZC15ID4gLmxhcmdlLTUsIC5ncmlkLXkgPiAubGFyZ2UtNiwgLmdyaWQteSA+IC5sYXJnZS03LCAuZ3JpZC15ID4gLmxhcmdlLTgsIC5ncmlkLXkgPiAubGFyZ2UtOSwgLmdyaWQteSA+IC5sYXJnZS0xMCwgLmdyaWQteSA+IC5sYXJnZS0xMSwgLmdyaWQteSA+IC5sYXJnZS0xMiB7XG4gICAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2Utc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtMSB7XG4gICAgICBoZWlnaHQ6IDguMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS0yIHtcbiAgICAgIGhlaWdodDogMTYuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS0zIHtcbiAgICAgIGhlaWdodDogMjUlOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS00IHtcbiAgICAgIGhlaWdodDogMzMuMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS01IHtcbiAgICAgIGhlaWdodDogNDEuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS02IHtcbiAgICAgIGhlaWdodDogNTAlOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS03IHtcbiAgICAgIGhlaWdodDogNTguMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS04IHtcbiAgICAgIGhlaWdodDogNjYuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS05IHtcbiAgICAgIGhlaWdodDogNzUlOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS0xMCB7XG4gICAgICBoZWlnaHQ6IDgzLjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtMTEge1xuICAgICAgaGVpZ2h0OiA5MS42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTEyIHtcbiAgICAgIGhlaWdodDogMTAwJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZ3JpZC15ID4gLnhsYXJnZS1hdXRvIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS1zaHJpbmssIC5ncmlkLXkgPiAueGxhcmdlLTEsIC5ncmlkLXkgPiAueGxhcmdlLTIsIC5ncmlkLXkgPiAueGxhcmdlLTMsIC5ncmlkLXkgPiAueGxhcmdlLTQsIC5ncmlkLXkgPiAueGxhcmdlLTUsIC5ncmlkLXkgPiAueGxhcmdlLTYsIC5ncmlkLXkgPiAueGxhcmdlLTcsIC5ncmlkLXkgPiAueGxhcmdlLTgsIC5ncmlkLXkgPiAueGxhcmdlLTksIC5ncmlkLXkgPiAueGxhcmdlLTEwLCAuZ3JpZC15ID4gLnhsYXJnZS0xMSwgLmdyaWQteSA+IC54bGFyZ2UtMTIge1xuICAgICAgZmxleDogMCAwIGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtMSB7XG4gICAgICBoZWlnaHQ6IDguMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtMiB7XG4gICAgICBoZWlnaHQ6IDE2LjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLTMge1xuICAgICAgaGVpZ2h0OiAyNSU7IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS00IHtcbiAgICAgIGhlaWdodDogMzMuMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtNSB7XG4gICAgICBoZWlnaHQ6IDQxLjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLTYge1xuICAgICAgaGVpZ2h0OiA1MCU7IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS03IHtcbiAgICAgIGhlaWdodDogNTguMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtOCB7XG4gICAgICBoZWlnaHQ6IDY2LjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLTkge1xuICAgICAgaGVpZ2h0OiA3NSU7IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS0xMCB7XG4gICAgICBoZWlnaHQ6IDgzLjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLTExIHtcbiAgICAgIGhlaWdodDogOTEuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtMTIge1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5ncmlkLXkgPiAueHhsYXJnZS1hdXRvIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLnh4bGFyZ2Utc2hyaW5rLCAuZ3JpZC15ID4gLnh4bGFyZ2UtMSwgLmdyaWQteSA+IC54eGxhcmdlLTIsIC5ncmlkLXkgPiAueHhsYXJnZS0zLCAuZ3JpZC15ID4gLnh4bGFyZ2UtNCwgLmdyaWQteSA+IC54eGxhcmdlLTUsIC5ncmlkLXkgPiAueHhsYXJnZS02LCAuZ3JpZC15ID4gLnh4bGFyZ2UtNywgLmdyaWQteSA+IC54eGxhcmdlLTgsIC5ncmlkLXkgPiAueHhsYXJnZS05LCAuZ3JpZC15ID4gLnh4bGFyZ2UtMTAsIC5ncmlkLXkgPiAueHhsYXJnZS0xMSwgLmdyaWQteSA+IC54eGxhcmdlLTEyIHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC54eGxhcmdlLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLnh4bGFyZ2UtMSB7XG4gICAgICBoZWlnaHQ6IDguMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC54eGxhcmdlLTIge1xuICAgICAgaGVpZ2h0OiAxNi42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLnh4bGFyZ2UtMyB7XG4gICAgICBoZWlnaHQ6IDI1JTsgfVxuICAgIC5ncmlkLXkgPiAueHhsYXJnZS00IHtcbiAgICAgIGhlaWdodDogMzMuMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC54eGxhcmdlLTUge1xuICAgICAgaGVpZ2h0OiA0MS42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLnh4bGFyZ2UtNiB7XG4gICAgICBoZWlnaHQ6IDUwJTsgfVxuICAgIC5ncmlkLXkgPiAueHhsYXJnZS03IHtcbiAgICAgIGhlaWdodDogNTguMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC54eGxhcmdlLTgge1xuICAgICAgaGVpZ2h0OiA2Ni42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLnh4bGFyZ2UtOSB7XG4gICAgICBoZWlnaHQ6IDc1JTsgfVxuICAgIC5ncmlkLXkgPiAueHhsYXJnZS0xMCB7XG4gICAgICBoZWlnaHQ6IDgzLjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAueHhsYXJnZS0xMSB7XG4gICAgICBoZWlnaHQ6IDkxLjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAueHhsYXJnZS0xMiB7XG4gICAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuXG4uZ3JpZC1wYWRkaW5nLXkgLmdyaWQtcGFkZGluZy15IHtcbiAgbWFyZ2luLXRvcDogLTAuNjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXkgLmdyaWQtcGFkZGluZy15IHtcbiAgICAgIG1hcmdpbi10b3A6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMC45Mzc1cmVtOyB9IH1cblxuLmdyaWQtcGFkZGluZy15ID4gLmNlbGwge1xuICBwYWRkaW5nLXRvcDogMC42MjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLXBhZGRpbmcteSA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMC45Mzc1cmVtOyB9IH1cblxuLmdyaWQtbWFyZ2luLXkge1xuICBtYXJnaW4tdG9wOiAtMC42MjVyZW07XG4gIG1hcmdpbi1ib3R0b206IC0wLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15IHtcbiAgICAgIG1hcmdpbi10b3A6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMC45Mzc1cmVtOyB9IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuY2VsbCB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tdG9wOiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7XG4gICAgICBtYXJnaW4tdG9wOiAwLjkzNzVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH0gfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMge1xuICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC00IHtcbiAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7XG4gICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYge1xuICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC03IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOCB7XG4gICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkge1xuICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMCB7XG4gICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTExIHtcbiAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS4yNXJlbSk7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7IH0gfVxuXG4uZ3JpZC1mcmFtZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMTAwdnc7IH1cblxuLmNlbGwgLmdyaWQtZnJhbWUge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uY2VsbC1ibG9jayB7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfVxuXG4uY2VsbC1ibG9jay15IHtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfVxuXG4uY2VsbC1ibG9jay1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXgtaGVpZ2h0OiAxMDAlOyB9XG4gIC5jZWxsLWJsb2NrLWNvbnRhaW5lciA+IC5ncmlkLXgge1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1ncmlkLWZyYW1lIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB3aWR0aDogMTAwdnc7IH1cbiAgLmNlbGwgLm1lZGl1bS1ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAubWVkaXVtLWNlbGwtYmxvY2sge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfVxuICAubWVkaXVtLWNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAgIC5tZWRpdW0tY2VsbC1ibG9jay1jb250YWluZXIgPiAuZ3JpZC14IHtcbiAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuICAubWVkaXVtLWNlbGwtYmxvY2steSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLWdyaWQtZnJhbWUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIHdpZHRoOiAxMDB2dzsgfVxuICAuY2VsbCAubGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmxhcmdlLWNlbGwtYmxvY2sge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfVxuICAubGFyZ2UtY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlOyB9XG4gICAgLmxhcmdlLWNlbGwtYmxvY2stY29udGFpbmVyID4gLmdyaWQteCB7XG4gICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgLmxhcmdlLWNlbGwtYmxvY2steSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAueGxhcmdlLWdyaWQtZnJhbWUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIHdpZHRoOiAxMDB2dzsgfVxuICAuY2VsbCAueGxhcmdlLWdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC54bGFyZ2UtY2VsbC1ibG9jayB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9XG4gIC54bGFyZ2UtY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlOyB9XG4gICAgLnhsYXJnZS1jZWxsLWJsb2NrLWNvbnRhaW5lciA+IC5ncmlkLXgge1xuICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwOyB9XG4gIC54bGFyZ2UtY2VsbC1ibG9jay15IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC54eGxhcmdlLWdyaWQtZnJhbWUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIHdpZHRoOiAxMDB2dzsgfVxuICAuY2VsbCAueHhsYXJnZS1ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAueHhsYXJnZS1jZWxsLWJsb2NrIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH1cbiAgLnh4bGFyZ2UtY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlOyB9XG4gICAgLnh4bGFyZ2UtY2VsbC1ibG9jay1jb250YWluZXIgPiAuZ3JpZC14IHtcbiAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuICAueHhsYXJnZS1jZWxsLWJsb2NrLXkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfSB9XG5cbi5ncmlkLXkuZ3JpZC1mcmFtZSB7XG4gIHdpZHRoOiBhdXRvO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgaGVpZ2h0OiAxMDB2aDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ3JpZC15Lm1lZGl1bS1ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBoZWlnaHQ6IDEwMHZoOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQteS5sYXJnZS1ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBoZWlnaHQ6IDEwMHZoOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuZ3JpZC15LnhsYXJnZS1ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBoZWlnaHQ6IDEwMHZoOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuZ3JpZC15Lnh4bGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgaGVpZ2h0OiAxMDB2aDsgfSB9XG5cbi5jZWxsIC5ncmlkLXkuZ3JpZC1mcmFtZSB7XG4gIGhlaWdodDogMTAwJTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuY2VsbCAuZ3JpZC15Lm1lZGl1bS1ncmlkLWZyYW1lIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY2VsbCAuZ3JpZC15LmxhcmdlLWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmNlbGwgLmdyaWQteS54bGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuY2VsbCAuZ3JpZC15Lnh4bGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiAxMDAlOyB9IH1cblxuLmdyaWQtbWFyZ2luLXkge1xuICBtYXJnaW4tdG9wOiAtMC42MjVyZW07XG4gIG1hcmdpbi1ib3R0b206IC0wLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15IHtcbiAgICAgIG1hcmdpbi10b3A6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMC45Mzc1cmVtOyB9IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuY2VsbCB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tdG9wOiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7XG4gICAgICBtYXJnaW4tdG9wOiAwLjkzNzVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH0gfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMge1xuICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC00IHtcbiAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7XG4gICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYge1xuICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC03IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOCB7XG4gICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkge1xuICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMCB7XG4gICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTExIHtcbiAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS4yNXJlbSk7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7IH0gfVxuXG4uZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMS4yNXJlbSk7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgICAgIGhlaWdodDogY2FsYygxMDB2aCArIDEuODc1cmVtKTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtZnJhbWUuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAxLjg3NXJlbSk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmdyaWQtZnJhbWUuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAxLjg3NXJlbSk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmdyaWQtZnJhbWUuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAxLjg3NXJlbSk7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ3JpZC1tYXJnaW4teS5tZWRpdW0tZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMS44NzVyZW0pOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkubGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMS44NzVyZW0pOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuZ3JpZC1tYXJnaW4teS54bGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMS44NzVyZW0pOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuZ3JpZC1tYXJnaW4teS54eGxhcmdlLWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCArIDEuODc1cmVtKTsgfSB9XG5cbmRpdixcbmRsLFxuZHQsXG5kZCxcbnVsLFxub2wsXG5saSxcbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNixcbnByZSxcbmZvcm0sXG5wLFxuYmxvY2txdW90ZSxcbnRoLFxudGQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxucCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuXG5lbSxcbmkge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbnN0cm9uZyxcbmIge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuaDEsIC5oMSxcbmgyLCAuaDIsXG5oMywgLmgzLFxuaDQsIC5oNCxcbmg1LCAuaDUsXG5oNiwgLmg2IHtcbiAgZm9udC1mYW1pbHk6IFwiYmViYXNfbmV1ZWJvbGRcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjb2xvcjogIzg3NzE0ODtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuICBoMSBzbWFsbCwgLmgxIHNtYWxsLFxuICBoMiBzbWFsbCwgLmgyIHNtYWxsLFxuICBoMyBzbWFsbCwgLmgzIHNtYWxsLFxuICBoNCBzbWFsbCwgLmg0IHNtYWxsLFxuICBoNSBzbWFsbCwgLmg1IHNtYWxsLFxuICBoNiBzbWFsbCwgLmg2IHNtYWxsIHtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBjb2xvcjogI2NhY2FjYTsgfVxuXG5oMSwgLmgxIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oMiwgLmgyIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuaDMsIC5oMyB7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuaDQsIC5oNCB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oNSwgLmg1IHtcbiAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oNiwgLmg2IHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgaDEsIC5oMSB7XG4gICAgZm9udC1zaXplOiAzcmVtOyB9XG4gIGgyLCAuaDIge1xuICAgIGZvbnQtc2l6ZTogMi41cmVtOyB9XG4gIGgzLCAuaDMge1xuICAgIGZvbnQtc2l6ZTogMS45Mzc1cmVtOyB9XG4gIGg0LCAuaDQge1xuICAgIGZvbnQtc2l6ZTogMS41NjI1cmVtOyB9XG4gIGg1LCAuaDUge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfVxuICBoNiwgLmg2IHtcbiAgICBmb250LXNpemU6IDFyZW07IH0gfVxuXG5hIHtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiAjMmYyZjJmO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICBhOmhvdmVyLCBhOmZvY3VzIHtcbiAgICBjb2xvcjogIzg3NzE0ODsgfVxuICBhIGltZyB7XG4gICAgYm9yZGVyOiAwOyB9XG5cbmhyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIG1heC13aWR0aDogNzVyZW07XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAxLjI1cmVtIGF1dG87XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJvcmRlci1sZWZ0OiAwOyB9XG5cbnVsLFxub2wsXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7IH1cblxubGkge1xuICBmb250LXNpemU6IGluaGVyaXQ7IH1cblxudWwge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgbGlzdC1zdHlsZS10eXBlOiBkaXNjOyB9XG5cbm9sIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07IH1cblxudWwgdWwsIG9sIHVsLCB1bCBvbCwgb2wgb2wge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgZGwgZHQge1xuICAgIG1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC41NjI1cmVtIDEuMjVyZW0gMCAxLjE4NzVyZW07XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2NhY2FjYTsgfVxuICBibG9ja3F1b3RlLCBibG9ja3F1b3RlIHAge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgY29sb3I6ICM4YThhOGE7IH1cblxuY2l0ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgY29sb3I6ICM4YThhOGE7IH1cbiAgY2l0ZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwi4oCUIFwiOyB9XG5cbmFiYnIsIGFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAjMGEwYTBhO1xuICBjdXJzb3I6IGhlbHA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG5maWd1cmUge1xuICBtYXJnaW46IDA7IH1cblxuY29kZSB7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuMzEyNXJlbSAwLjA2MjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gIGZvbnQtZmFtaWx5OiBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgQ291cmllciwgbW9ub3NwYWNlO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjb2xvcjogIzBhMGEwYTsgfVxuXG5rYmQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuMjVyZW0gMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGNvbG9yOiAjMGEwYTBhOyB9XG5cbi5zdWJoZWFkZXIge1xuICBtYXJnaW4tdG9wOiAwLjJyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgY29sb3I6ICM4YThhOGE7IH1cblxuLmxlYWQge1xuICBmb250LXNpemU6IDEyNSU7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7IH1cblxuLnN0YXQge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgcCArIC5zdGF0IHtcbiAgICBtYXJnaW4tdG9wOiAtMXJlbTsgfVxuXG51bC5uby1idWxsZXQsIG9sLm5vLWJ1bGxldCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi50ZXh0LWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi50ZXh0LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLnRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi50ZXh0LWp1c3RpZnkge1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5tZWRpdW0tdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLm1lZGl1bS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5tZWRpdW0tdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAubGFyZ2UtdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLmxhcmdlLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmxhcmdlLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLnhsYXJnZS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAueGxhcmdlLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnhsYXJnZS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC54eGxhcmdlLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAueHhsYXJnZS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAueHhsYXJnZS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC54eGxhcmdlLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfSB9XG5cbi5zaG93LWZvci1wcmludCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgcHJpbnQge1xuICAqIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAuaGlkZS1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICB0YWJsZS5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICB0aGVhZC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgdGJvZHkuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gIHRyLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICB0ZC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIHRoLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgYSxcbiAgYTp2aXNpdGVkIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICBhW2hyZWZdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjsgfVxuICAuaXIgYTphZnRlcixcbiAgYVtocmVmXj0namF2YXNjcmlwdDonXTphZnRlcixcbiAgYVtocmVmXj0nIyddOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJzsgfVxuICBhYmJyW3RpdGxlXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiOyB9XG4gIHByZSxcbiAgYmxvY2txdW90ZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzhhOGE4YTtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgdGhlYWQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgfVxuICB0cixcbiAgaW1nIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuICBAcGFnZSB7XG4gICAgbWFyZ2luOiAwLjVjbTsgfVxuICBwLFxuICBoMixcbiAgaDMge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgd2lkb3dzOiAzOyB9XG4gIGgyLFxuICBoMyB7XG4gICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7IH1cbiAgLnByaW50LWJyZWFrLWluc2lkZSB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF1dG87IH0gfVxuXG4uYnV0dG9uLCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgcGFkZGluZzogMC44NWVtIDFlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODc3MTQ4O1xuICBjb2xvcjogI2ZlZmVmZTsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmJ1dHRvbiwgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgb3V0bGluZTogMDsgfVxuICAuYnV0dG9uOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b246Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZTEwMDtcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAuYnV0dG9uLnRpbnksIC53cC1ibG9jay1idXR0b24gLnRpbnkud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICBmb250LXNpemU6IDAuNnJlbTsgfVxuICAuYnV0dG9uLnNtYWxsLCAud3AtYmxvY2stYnV0dG9uIC5zbWFsbC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuICAuYnV0dG9uLmxhcmdlLCAud3AtYmxvY2stYnV0dG9uIC5sYXJnZS53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfVxuICAuYnV0dG9uLmV4cGFuZGVkLCAud3AtYmxvY2stYnV0dG9uIC5leHBhbmRlZC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAuYnV0dG9uLnByaW1hcnksIC53cC1ibG9jay1idXR0b24gLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjODc3MTQ4O1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLmJ1dHRvbi5wcmltYXJ5OmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5wcmltYXJ5OmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmM1YTNhO1xuICAgICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmJ1dHRvbi5zZWNvbmRhcnksIC53cC1ibG9jay1idXR0b24gLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3Njc2NzY7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgICAuYnV0dG9uLnNlY29uZGFyeTpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5zZWNvbmRhcnk6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVlNWU1ZTtcbiAgICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gIC5idXR0b24uc3VjY2VzcywgLndwLWJsb2NrLWJ1dHRvbiAuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgICAuYnV0dG9uLnN1Y2Nlc3M6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLnN1Y2Nlc3M6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyMmJiNWI7XG4gICAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAuYnV0dG9uLndhcm5pbmcsIC53cC1ibG9jay1idXR0b24gLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZTAwO1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gICAgLmJ1dHRvbi53YXJuaW5nOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi53YXJuaW5nOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M4YjAwO1xuICAgICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgLmJ1dHRvbi5hbGVydCwgLndwLWJsb2NrLWJ1dHRvbiAuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M0YjM3O1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLmJ1dHRvbi5hbGVydDpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmFsZXJ0OmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E1M2IyYTtcbiAgICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gIC5idXR0b24uZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbltkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0ge1xuICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgIC5idXR0b24uZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuZGlzYWJsZWQud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5kaXNhYmxlZC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLCAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF06Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzg3NzE0ODtcbiAgICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5LCAud3AtYmxvY2stYnV0dG9uIC5kaXNhYmxlZC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbltkaXNhYmxlZF0ucHJpbWFyeSwgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXS5wcmltYXJ5IHtcbiAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAuYnV0dG9uLmRpc2FibGVkLnByaW1hcnksIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLmRpc2FibGVkLnByaW1hcnk6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLnByaW1hcnk6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5LCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLnByaW1hcnksIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnk6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0ucHJpbWFyeTpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0ucHJpbWFyeTpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXS5wcmltYXJ5OmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzg3NzE0ODtcbiAgICAgICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeSwgLndwLWJsb2NrLWJ1dHRvbiAuZGlzYWJsZWQuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5LCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLnNlY29uZGFyeSB7XG4gICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnksIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5OmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5kaXNhYmxlZC5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeTpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuZGlzYWJsZWQuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5LCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLnNlY29uZGFyeSwgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5OmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5OmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLnNlY29uZGFyeTpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM3Njc2NzY7XG4gICAgICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzLCAud3AtYmxvY2stYnV0dG9uIC5kaXNhYmxlZC5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2VzcywgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXS5zdWNjZXNzIHtcbiAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAuYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3MsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3M6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3M6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzLCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLnN1Y2Nlc3MsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3M6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0uc3VjY2Vzczpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2Vzczpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXS5zdWNjZXNzOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzNhZGI3NjtcbiAgICAgICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLndhcm5pbmcsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nLCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLndhcm5pbmcge1xuICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAgIC5idXR0b24uZGlzYWJsZWQud2FybmluZywgLndwLWJsb2NrLWJ1dHRvbiAuZGlzYWJsZWQud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24uZGlzYWJsZWQud2FybmluZzpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuZGlzYWJsZWQud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQud2FybmluZzpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuZGlzYWJsZWQud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLndhcm5pbmcsIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0ud2FybmluZywgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZzpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXS53YXJuaW5nOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLndhcm5pbmc6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZTAwO1xuICAgICAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAgIC5idXR0b24uZGlzYWJsZWQuYWxlcnQsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQsIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0uYWxlcnQge1xuICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAgIC5idXR0b24uZGlzYWJsZWQuYWxlcnQsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydDpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuZGlzYWJsZWQuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLmFsZXJ0OmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5kaXNhYmxlZC5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0LCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLmFsZXJ0LCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydDpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXS5hbGVydDpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQ6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0uYWxlcnQ6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M0YjM3O1xuICAgICAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAuYnV0dG9uLmhvbGxvdywgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM4NzcxNDg7XG4gICAgY29sb3I6ICM4NzcxNDg7IH1cbiAgICAuYnV0dG9uLmhvbGxvdywgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24uaG9sbG93OmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5kaXNhYmxlZC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuZGlzYWJsZWQud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZDpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LmRpc2FibGVkLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5kaXNhYmxlZC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24uaG9sbG93LmRpc2FibGVkOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuZGlzYWJsZWQud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmRpc2FibGVkLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXTpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF06Zm9jdXMsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uaG9sbG93OmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogIzQ0MzkyNDtcbiAgICAgIGNvbG9yOiAjNDQzOTI0OyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdzpob3Zlci5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlci5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93OmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXMuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdzpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXNbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjODc3MTQ4O1xuICAgICAgICBjb2xvcjogIzg3NzE0ODsgfVxuICAgIC5idXR0b24uaG9sbG93LnByaW1hcnksIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjODc3MTQ4O1xuICAgICAgY29sb3I6ICM4NzcxNDg7IH1cbiAgICAgIC5idXR0b24uaG9sbG93LnByaW1hcnk6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjNDQzOTI0O1xuICAgICAgICBjb2xvcjogIzQ0MzkyNDsgfVxuICAgICAgICAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnByaW1hcnk6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpmb2N1cy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmZvY3VzW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM4NzcxNDg7XG4gICAgICAgICAgY29sb3I6ICM4NzcxNDg7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnksIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzc2NzY3NjtcbiAgICAgIGNvbG9yOiAjNzY3Njc2OyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzNiM2IzYjtcbiAgICAgICAgY29sb3I6ICMzYjNiM2I7IH1cbiAgICAgICAgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlci5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1cy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmZvY3VzW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXNbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjNzY3Njc2O1xuICAgICAgICAgIGNvbG9yOiAjNzY3Njc2OyB9XG4gICAgLmJ1dHRvbi5ob2xsb3cuc3VjY2VzcywgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMzYWRiNzY7XG4gICAgICBjb2xvcjogIzNhZGI3NjsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICMxNTc1Mzk7XG4gICAgICAgIGNvbG9yOiAjMTU3NTM5OyB9XG4gICAgICAgIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlci5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpob3ZlcltkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6Zm9jdXNbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXNbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzNhZGI3NjtcbiAgICAgICAgICBjb2xvcjogIzNhZGI3NjsgfVxuICAgIC5idXR0b24uaG9sbG93Lndhcm5pbmcsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZhZTAwO1xuICAgICAgY29sb3I6ICNmZmFlMDA7IH1cbiAgICAgIC5idXR0b24uaG9sbG93Lndhcm5pbmc6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93Lndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjODA1NzAwO1xuICAgICAgICBjb2xvcjogIzgwNTcwMDsgfVxuICAgICAgICAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93Lndhcm5pbmc6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpmb2N1cy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93Lndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmZvY3VzW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93Lndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmFlMDA7XG4gICAgICAgICAgY29sb3I6ICNmZmFlMDA7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5hbGVydCwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NjNGIzNztcbiAgICAgIGNvbG9yOiAjY2M0YjM3OyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy5hbGVydDpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24uaG9sbG93LmFsZXJ0OmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzY3MjUxYTtcbiAgICAgICAgY29sb3I6ICM2NzI1MWE7IH1cbiAgICAgICAgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5hbGVydDpob3ZlcltkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LmFsZXJ0OmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6Zm9jdXNbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2M0YjM3O1xuICAgICAgICAgIGNvbG9yOiAjY2M0YjM3OyB9XG4gIC5idXR0b24uY2xlYXIsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzg3NzE0ODtcbiAgICBjb2xvcjogIzg3NzE0ODsgfVxuICAgIC5idXR0b24uY2xlYXIsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi5jbGVhcjpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmNsZWFyOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmNsZWFyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5kaXNhYmxlZC53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24uY2xlYXIuZGlzYWJsZWQ6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLmRpc2FibGVkLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZDpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuZGlzYWJsZWQud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5jbGVhcjpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmNsZWFyOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjNDQzOTI0O1xuICAgICAgY29sb3I6ICM0NDM5MjQ7IH1cbiAgICAgIC5idXR0b24uY2xlYXI6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhcjpob3ZlcltkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXI6Zm9jdXMuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhcjpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjODc3MTQ4O1xuICAgICAgICBjb2xvcjogIzg3NzE0ODsgfVxuICAgIC5idXR0b24uY2xlYXIsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuZGlzYWJsZWQud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhcjpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmNsZWFyOmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXI6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC5idXR0b24uY2xlYXI6Zm9jdXMuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhcjpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uY2xlYXIucHJpbWFyeSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzg3NzE0ODtcbiAgICAgIGNvbG9yOiAjODc3MTQ4OyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjNDQzOTI0O1xuICAgICAgICBjb2xvcjogIzQ0MzkyNDsgfVxuICAgICAgICAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1cy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzg3NzE0ODtcbiAgICAgICAgICBjb2xvcjogIzg3NzE0ODsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci5wcmltYXJ5LCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi5jbGVhci5wcmltYXJ5LmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5wcmltYXJ5LmRpc2FibGVkLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi5jbGVhci5wcmltYXJ5W2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1cy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjNzY3Njc2O1xuICAgICAgY29sb3I6ICM3Njc2NzY7IH1cbiAgICAgIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzNiM2IzYjtcbiAgICAgICAgY29sb3I6ICMzYjNiM2I7IH1cbiAgICAgICAgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjNzY3Njc2O1xuICAgICAgICAgIGNvbG9yOiAjNzY3Njc2OyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnkuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnNlY29uZGFyeS5kaXNhYmxlZC53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5W2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3Zlci5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uY2xlYXIuc3VjY2VzcywgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzNhZGI3NjtcbiAgICAgIGNvbG9yOiAjM2FkYjc2OyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMTU3NTM5O1xuICAgICAgICBjb2xvcjogIzE1NzUzOTsgfVxuICAgICAgICAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1cy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzNhZGI3NjtcbiAgICAgICAgICBjb2xvcjogIzNhZGI3NjsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci5zdWNjZXNzLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi5jbGVhci5zdWNjZXNzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zdWNjZXNzLmRpc2FibGVkLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi5jbGVhci5zdWNjZXNzW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1cy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmNsZWFyLndhcm5pbmcsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmFlMDA7XG4gICAgICBjb2xvcjogI2ZmYWUwMDsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzgwNTcwMDtcbiAgICAgICAgY29sb3I6ICM4MDU3MDA7IH1cbiAgICAgICAgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXMuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXNbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmFlMDA7XG4gICAgICAgICAgY29sb3I6ICNmZmFlMDA7IH1cbiAgICAgIC5idXR0b24uY2xlYXIud2FybmluZywgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24uY2xlYXIud2FybmluZy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud2FybmluZy5kaXNhYmxlZC53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24uY2xlYXIud2FybmluZ1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXMuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXNbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5jbGVhci5hbGVydCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjYzRiMzc7XG4gICAgICBjb2xvcjogI2NjNGIzNzsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci5hbGVydDpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICM2NzI1MWE7XG4gICAgICAgIGNvbG9yOiAjNjcyNTFhOyB9XG4gICAgICAgIC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hbGVydDpob3ZlcltkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXMuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjYzRiMzc7XG4gICAgICAgICAgY29sb3I6ICNjYzRiMzc7IH1cbiAgICAgIC5idXR0b24uY2xlYXIuYWxlcnQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi5jbGVhci5hbGVydC5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuYWxlcnQuZGlzYWJsZWQud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLmNsZWFyLmFsZXJ0W2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5hbGVydDpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXMuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5idXR0b24uZHJvcGRvd246OmFmdGVyLCAud3AtYmxvY2stYnV0dG9uIC5kcm9wZG93bi53cC1ibG9jay1idXR0b25fX2xpbms6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCAwLjRlbTtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogI2ZlZmVmZSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwLjRlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1sZWZ0OiAxZW07IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3c6OmFmdGVyLCAud3AtYmxvY2stYnV0dG9uIC5kcm9wZG93bi5ob2xsb3cud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5kcm9wZG93bi53cC1ibG9jay1idXR0b25fX2xpbms6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyOjphZnRlciwgLndwLWJsb2NrLWJ1dHRvbiAuZHJvcGRvd24uY2xlYXIud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogIzg3NzE0ODsgfVxuICAuYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5wcmltYXJ5OjphZnRlciwgLndwLWJsb2NrLWJ1dHRvbiAuZHJvcGRvd24uaG9sbG93LnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5kcm9wZG93bi5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIucHJpbWFyeTo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24gLmRyb3Bkb3duLmNsZWFyLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogIzg3NzE0ODsgfVxuICAuYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5zZWNvbmRhcnk6OmFmdGVyLCAud3AtYmxvY2stYnV0dG9uIC5kcm9wZG93bi5ob2xsb3cuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuZHJvcGRvd24uc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIuc2Vjb25kYXJ5OjphZnRlciwgLndwLWJsb2NrLWJ1dHRvbiAuZHJvcGRvd24uY2xlYXIuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICM3Njc2NzY7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuc3VjY2Vzczo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24gLmRyb3Bkb3duLmhvbGxvdy5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuZHJvcGRvd24uc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLnN1Y2Nlc3M6OmFmdGVyLCAud3AtYmxvY2stYnV0dG9uIC5kcm9wZG93bi5jbGVhci5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICMzYWRiNzY7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cud2FybmluZzo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24gLmRyb3Bkb3duLmhvbGxvdy53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuZHJvcGRvd24ud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLndhcm5pbmc6OmFmdGVyLCAud3AtYmxvY2stYnV0dG9uIC5kcm9wZG93bi5jbGVhci53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICNmZmFlMDA7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuYWxlcnQ6OmFmdGVyLCAud3AtYmxvY2stYnV0dG9uIC5kcm9wZG93bi5ob2xsb3cuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5kcm9wZG93bi5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLmFsZXJ0OjphZnRlciwgLndwLWJsb2NrLWJ1dHRvbiAuZHJvcGRvd24uY2xlYXIuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogI2NjNGIzNzsgfVxuICAuYnV0dG9uLmFycm93LW9ubHk6OmFmdGVyLCAud3AtYmxvY2stYnV0dG9uIC5hcnJvdy1vbmx5LndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIge1xuICAgIHRvcDogLTAuMWVtO1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbmEuYnV0dG9uOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIGEud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCBhLmJ1dHRvbjpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiBhLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG5bdHlwZT0ndGV4dCddLCBbdHlwZT0ncGFzc3dvcmQnXSwgW3R5cGU9J2RhdGUnXSwgW3R5cGU9J2RhdGV0aW1lJ10sIFt0eXBlPSdkYXRldGltZS1sb2NhbCddLCBbdHlwZT0nbW9udGgnXSwgW3R5cGU9J3dlZWsnXSwgW3R5cGU9J2VtYWlsJ10sIFt0eXBlPSdudW1iZXInXSwgW3R5cGU9J3NlYXJjaCddLCBbdHlwZT0ndGVsJ10sIFt0eXBlPSd0aW1lJ10sIFt0eXBlPSd1cmwnXSwgW3R5cGU9J2NvbG9yJ10sXG50ZXh0YXJlYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAyLjQzNzVyZW07XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoMTAsIDEwLCAxMCwgMC4xKTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuICBhcHBlYXJhbmNlOiBub25lOyB9XG4gIFt0eXBlPSd0ZXh0J106Zm9jdXMsIFt0eXBlPSdwYXNzd29yZCddOmZvY3VzLCBbdHlwZT0nZGF0ZSddOmZvY3VzLCBbdHlwZT0nZGF0ZXRpbWUnXTpmb2N1cywgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ106Zm9jdXMsIFt0eXBlPSdtb250aCddOmZvY3VzLCBbdHlwZT0nd2VlayddOmZvY3VzLCBbdHlwZT0nZW1haWwnXTpmb2N1cywgW3R5cGU9J251bWJlciddOmZvY3VzLCBbdHlwZT0nc2VhcmNoJ106Zm9jdXMsIFt0eXBlPSd0ZWwnXTpmb2N1cywgW3R5cGU9J3RpbWUnXTpmb2N1cywgW3R5cGU9J3VybCddOmZvY3VzLCBbdHlwZT0nY29sb3InXTpmb2N1cyxcbiAgdGV4dGFyZWE6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzhhOGE4YTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICAgIGJveC1zaGFkb3c6IDAgMCA1cHggI2NhY2FjYTtcbiAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDsgfVxuXG50ZXh0YXJlYSB7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuICB0ZXh0YXJlYVtyb3dzXSB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG5cbmlucHV0OmRpc2FibGVkLCBpbnB1dFtyZWFkb25seV0sXG50ZXh0YXJlYTpkaXNhYmxlZCxcbnRleHRhcmVhW3JlYWRvbmx5XSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cblxuW3R5cGU9J3N1Ym1pdCddLFxuW3R5cGU9J2J1dHRvbiddIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG5pbnB1dFt0eXBlPSdzZWFyY2gnXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjODc3MTQ4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LWZhbWlseTogJ2JlYmFzX25ldWVib2xkJywgc2Fucy1zZXJpZjtcbiAgb3BhY2l0eTogMTAwOyB9XG5cblt0eXBlPSdmaWxlJ10sXG5bdHlwZT0nY2hlY2tib3gnXSxcblt0eXBlPSdyYWRpbyddIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTsgfVxuXG5bdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsLFxuW3R5cGU9J3JhZGlvJ10gKyBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbFtmb3JdLFxuICBbdHlwZT0ncmFkaW8nXSArIGxhYmVsW2Zvcl0ge1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuXG5sYWJlbCA+IFt0eXBlPSdjaGVja2JveCddLFxubGFiZWwgPiBbdHlwZT0ncmFkaW8nXSB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtOyB9XG5cblt0eXBlPSdmaWxlJ10ge1xuICB3aWR0aDogMTAwJTsgfVxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjg7XG4gIGNvbG9yOiAjMGEwYTBhOyB9XG4gIGxhYmVsLm1pZGRsZSB7XG4gICAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgICBwYWRkaW5nOiAwLjU2MjVyZW0gMDsgfVxuXG4uaGVscC10ZXh0IHtcbiAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICMwYTBhMGE7IH1cblxuLmlucHV0LWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG4gIC5pbnB1dC1ncm91cCA+IDpmaXJzdC1jaGlsZCwgLmlucHV0LWdyb3VwID4gOmZpcnN0LWNoaWxkLmlucHV0LWdyb3VwLWJ1dHRvbiA+ICoge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cbiAgLmlucHV0LWdyb3VwID4gOmxhc3QtY2hpbGQsIC5pbnB1dC1ncm91cCA+IDpsYXN0LWNoaWxkLmlucHV0LWdyb3VwLWJ1dHRvbiA+ICoge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cblxuLmlucHV0LWdyb3VwLWxhYmVsLCAuaW5wdXQtZ3JvdXAtZmllbGQsIC5pbnB1dC1ncm91cC1idXR0b24sIC5pbnB1dC1ncm91cC1idXR0b24gYSxcbi5pbnB1dC1ncm91cC1idXR0b24gaW5wdXQsXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGJ1dHRvbixcbi5pbnB1dC1ncm91cC1idXR0b24gbGFiZWwge1xuICBtYXJnaW46IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLmlucHV0LWdyb3VwLWxhYmVsIHtcbiAgcGFkZGluZzogMCAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xuICBjb2xvcjogIzBhMGEwYTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAwIDAgYXV0bztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuaW5wdXQtZ3JvdXAtbGFiZWw6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1yaWdodDogMDsgfVxuICAuaW5wdXQtZ3JvdXAtbGFiZWw6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWxlZnQ6IDA7IH1cblxuLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgZmxleDogMSAxIDBweDtcbiAgbWluLXdpZHRoOiAwOyB9XG5cbi5pbnB1dC1ncm91cC1idXR0b24ge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMCAwIGF1dG87IH1cbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiBhLFxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGlucHV0LFxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGJ1dHRvbixcbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiBsYWJlbCB7XG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgZm9udC1zaXplOiAxcmVtOyB9XG5cbmZpZWxkc2V0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7IH1cblxubGVnZW5kIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuLmZpZWxkc2V0IHtcbiAgbWFyZ2luOiAxLjEyNXJlbSAwO1xuICBwYWRkaW5nOiAxLjI1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhOyB9XG4gIC5maWVsZHNldCBsZWdlbmQge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tbGVmdDogLTAuMTg3NXJlbTtcbiAgICBwYWRkaW5nOiAwIDAuMTg3NXJlbTsgfVxuXG5zZWxlY3Qge1xuICBoZWlnaHQ6IDIuNDM3NXJlbTtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC41cmVtO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzBhMGEwYTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZlcnNpb249JzEuMScgd2lkdGg9JzMyJyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMzIgMjQnPjxwb2x5Z29uIHBvaW50cz0nMCwwIDMyLDAgMTYsMjQnIHN0eWxlPSdmaWxsOiByZ2IlMjgxMzgsIDEzOCwgMTM4JTI5Jz48L3BvbHlnb24+PC9zdmc+XCIpO1xuICBiYWNrZ3JvdW5kLW9yaWdpbjogY29udGVudC1ib3g7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IC0xcmVtIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBcXDApIHtcbiAgICBzZWxlY3Qge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJcEpSRUZVZU5yRWtja05nREFNQkJmUmtFdDBPYlJCQmRzR1hVRGdtUWZLNFhoSDJtOGN6UUFBeTI3UjN0c3c0UWZlMng4dU9PNm9ZTGI2R2xPb3IzR0Yrc3dVUkFPbVVKK1J3dEVKczlXdlRHRVl4QlhxSTFNUUFaaENmVVFLUnpETVZqK1R3ckFJVjZqdlNVRWtZQXIxTFNrY3lUQmIvVitLWWZYN3hBZXVzcTNzTER0R0gza0VHQUNQV0lmbE5aZmhSUUFBQUFCSlJVNUVya0pnZ2c9PVwiKTsgfSB9XG4gIHNlbGVjdDpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOGE4YThhO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gICAgYm94LXNoYWRvdzogMCAwIDVweCAjY2FjYWNhO1xuICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0OyB9XG4gIHNlbGVjdDpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gIHNlbGVjdDo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBzZWxlY3RbbXVsdGlwbGVdIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuXG4uaXMtaW52YWxpZC1pbnB1dDpub3QoOmZvY3VzKSB7XG4gIGJvcmRlci1jb2xvcjogI2NjNGIzNztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZWNlYTsgfVxuICAuaXMtaW52YWxpZC1pbnB1dDpub3QoOmZvY3VzKTo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjY2M0YjM3OyB9XG5cbi5pcy1pbnZhbGlkLWxhYmVsIHtcbiAgY29sb3I6ICNjYzRiMzc7IH1cblxuLmZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogI2NjNGIzNzsgfVxuICAuZm9ybS1lcnJvci5pcy12aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4uYWNjb3JkaW9uIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuICAuYWNjb3JkaW9uW2Rpc2FibGVkXSAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG5cbi5hY2NvcmRpb24taXRlbTpmaXJzdC1jaGlsZCA+IDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cblxuLmFjY29yZGlvbi1pdGVtOmxhc3QtY2hpbGQgPiA6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cblxuLmFjY29yZGlvbi10aXRsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDEuMjVyZW0gMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICM4NzcxNDg7IH1cbiAgOmxhc3QtY2hpbGQ6bm90KC5pcy1hY3RpdmUpID4gLmFjY29yZGlvbi10aXRsZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNmU2ZTY7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDsgfVxuICAuYWNjb3JkaW9uLXRpdGxlOmhvdmVyLCAuYWNjb3JkaW9uLXRpdGxlOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2OyB9XG4gIC5hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiAxcmVtO1xuICAgIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gICAgY29udGVudDogJysnOyB9XG4gIC5pcy1hY3RpdmUgPiAuYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICdcXDIwMTMnOyB9XG5cbi5hY2NvcmRpb24tY29udGVudCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGNvbG9yOiAjMGEwYTBhOyB9XG4gIDpsYXN0LWNoaWxkID4gLmFjY29yZGlvbi1jb250ZW50Omxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTZlNmU2OyB9XG5cbi5hY2NvcmRpb24tbWVudSBsaSB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5hY2NvcmRpb24tbWVudSBhIHtcbiAgcGFkZGluZzogMC43cmVtIDFyZW07IH1cblxuLmFjY29yZGlvbi1tZW51IC5pcy1hY2NvcmRpb24tc3VibWVudSBhIHtcbiAgcGFkZGluZzogMC43cmVtIDFyZW07IH1cblxuLmFjY29yZGlvbi1tZW51IC5uZXN0ZWQuaXMtYWNjb3JkaW9uLXN1Ym1lbnUge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtOyB9XG5cbi5hY2NvcmRpb24tbWVudS5hbGlnbi1yaWdodCAubmVzdGVkLmlzLWFjY29yZGlvbi1zdWJtZW51IHtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuXG4uYWNjb3JkaW9uLW1lbnUgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudDpub3QoLmhhcy1zdWJtZW51LXRvZ2dsZSkgPiBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5hY2NvcmRpb24tbWVudSAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50Om5vdCguaGFzLXN1Ym1lbnUtdG9nZ2xlKSA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICM4NzcxNDggdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gICAgcmlnaHQ6IDFyZW07IH1cblxuLmFjY29yZGlvbi1tZW51LmFsaWduLWxlZnQgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgcmlnaHQ6IDFyZW07XG4gIGxlZnQ6IGF1dG87IH1cblxuLmFjY29yZGlvbi1tZW51LmFsaWduLXJpZ2h0IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAxcmVtOyB9XG5cbi5hY2NvcmRpb24tbWVudSAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50W2FyaWEtZXhwYW5kZWQ9J3RydWUnXSA+IGE6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTsgfVxuXG4uaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5oYXMtc3VibWVudS10b2dnbGUgPiBhIHtcbiAgbWFyZ2luLXJpZ2h0OiA0MHB4OyB9XG5cbi5zdWJtZW51LXRvZ2dsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5zdWJtZW51LXRvZ2dsZTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogIzg3NzE0OCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIG1hcmdpbjogYXV0bzsgfVxuXG4uc3VibWVudS10b2dnbGVbYXJpYS1leHBhbmRlZD0ndHJ1ZSddOjphZnRlciB7XG4gIHRyYW5zZm9ybTogc2NhbGVZKC0xKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTsgfVxuXG4uc3VibWVudS10b2dnbGUtdGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwOyB9XG5cbi5iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLXdpZHRoOiAyLjFlbTtcbiAgcGFkZGluZzogMC4zZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgZm9udC1zaXplOiAwLjZyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogIzg3NzE0ODtcbiAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmJhZGdlLnByaW1hcnkge1xuICAgIGJhY2tncm91bmQ6ICM4NzcxNDg7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmJhZGdlLnNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZDogIzc2NzY3NjtcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAuYmFkZ2Uuc3VjY2VzcyB7XG4gICAgYmFja2dyb3VuZDogIzNhZGI3NjtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAuYmFkZ2Uud2FybmluZyB7XG4gICAgYmFja2dyb3VuZDogI2ZmYWUwMDtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAuYmFkZ2UuYWxlcnQge1xuICAgIGJhY2tncm91bmQ6ICNjYzRiMzc7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cblxuLmJyZWFkY3J1bWJzIHtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIC5icmVhZGNydW1iczo6YmVmb3JlLCAuYnJlYWRjcnVtYnM6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBvcmRlcjogMTsgfVxuICAuYnJlYWRjcnVtYnM6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuYnJlYWRjcnVtYnMgbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGZvbnQtc2l6ZTogMC42ODc1cmVtO1xuICAgIGNvbG9yOiAjMGEwYTBhO1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgLmJyZWFkY3J1bWJzIGxpOm5vdCg6bGFzdC1jaGlsZCk6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbjogMCAwLjc1cmVtO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIGNvbnRlbnQ6IFwiL1wiO1xuICAgICAgY29sb3I6ICNjYWNhY2E7IH1cbiAgLmJyZWFkY3J1bWJzIGEge1xuICAgIGNvbG9yOiAjODc3MTQ4OyB9XG4gICAgLmJyZWFkY3J1bWJzIGE6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgLmJyZWFkY3J1bWJzIC5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICNjYWNhY2E7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG4uYnV0dG9uLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG4gIC5idXR0b24tZ3JvdXA6OmJlZm9yZSwgLmJ1dHRvbi1ncm91cDo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIG9yZGVyOiAxOyB9XG4gIC5idXR0b24tZ3JvdXA6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuYnV0dG9uLWdyb3VwIC5idXR0b24sIC5idXR0b24tZ3JvdXAgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAgLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi1yaWdodDogMXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDFweDtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAgIC5idXR0b24tZ3JvdXAgLmJ1dHRvbjpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpsYXN0LWNoaWxkLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAuYnV0dG9uLWdyb3VwLnRpbnkgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC50aW55IC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnRpbnkgLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgZm9udC1zaXplOiAwLjZyZW07IH1cbiAgLmJ1dHRvbi1ncm91cC5zbWFsbCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnNtYWxsIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnNtYWxsIC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuICAuYnV0dG9uLWdyb3VwLmxhcmdlIC5idXR0b24sIC5idXR0b24tZ3JvdXAubGFyZ2UgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAubGFyZ2UgLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG4gIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICBmbGV4OiAxIDEgMHB4OyB9XG4gIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAucHJpbWFyeSAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjODc3MTQ4O1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAucHJpbWFyeSAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAucHJpbWFyeSAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM2YzVhM2E7XG4gICAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzc2NzY3NjtcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAgIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWU1ZTVlO1xuICAgICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgICAuYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b246Zm9jdXMsIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIyYmI1YjtcbiAgICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLndhcm5pbmcgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAud2FybmluZyAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZTAwO1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gICAgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAud2FybmluZyAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC53YXJuaW5nIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLndhcm5pbmcgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAud2FybmluZyAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzhiMDA7XG4gICAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAuYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b24sIC5idXR0b24tZ3JvdXAuYWxlcnQgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuYWxlcnQgLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGIzNztcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAgIC5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5hbGVydCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5hbGVydCAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b246Zm9jdXMsIC5idXR0b24tZ3JvdXAuYWxlcnQgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuYWxlcnQgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTUzYjJhO1xuICAgICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmJ1dHRvbi1ncm91cC5zdGFja2VkIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5zdGFja2VkIC53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCAud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0gLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgICBmbGV4OiAwIDAgMTAwJTsgfVxuICAgICAgLmJ1dHRvbi1ncm91cC5zdGFja2VkIC5idXR0b246bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpsYXN0LWNoaWxkLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuc3RhY2tlZCAud3AtYmxvY2stYnV0dG9uX19saW5rOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgLmJ1dHRvbjpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpsYXN0LWNoaWxkLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAuYnV0dG9uOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpsYXN0LWNoaWxkLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIC53cC1ibG9jay1idXR0b25fX2xpbms6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQuZXhwYW5kZWQgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLmV4cGFuZGVkIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnN0YWNrZWQuZXhwYW5kZWQgLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIC53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtLmV4cGFuZGVkIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtLmV4cGFuZGVkIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtLmV4cGFuZGVkIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtLmV4cGFuZGVkIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG5cbi5jYWxsb3V0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTAsIDEwLCAxMCwgMC4yNSk7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBjb2xvcjogIzBhMGEwYTsgfVxuICAuY2FsbG91dCA+IDpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAuY2FsbG91dCA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5jYWxsb3V0LnByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmVhZTE7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgLmNhbGxvdXQuc2Vjb25kYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFlYWVhO1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5jYWxsb3V0LnN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlMWZhZWE7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgLmNhbGxvdXQud2FybmluZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjNkOTtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAuY2FsbG91dC5hbGVydCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZTRlMTtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAuY2FsbG91dC5zbWFsbCB7XG4gICAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTsgfVxuICAuY2FsbG91dC5sYXJnZSB7XG4gICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgcGFkZGluZy1yaWdodDogM3JlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW07IH1cblxuLmNhcmQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LWdyb3c6IDE7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5jYXJkID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmNhcmQtZGl2aWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICBwYWRkaW5nOiAxcmVtO1xuICBiYWNrZ3JvdW5kOiAjZTZlNmU2OyB9XG4gIC5jYXJkLWRpdmlkZXIgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uY2FyZC1zZWN0aW9uIHtcbiAgZmxleDogMSAwIGF1dG87XG4gIHBhZGRpbmc6IDFyZW07IH1cbiAgLmNhcmQtc2VjdGlvbiA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5jYXJkLWltYWdlIHtcbiAgbWluLWhlaWdodDogMXB4OyB9XG5cbi5jbG9zZS1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbG9yOiAjOGE4YThhO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5jbG9zZS1idXR0b24ge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLmNsb3NlLWJ1dHRvbjpob3ZlciwgLmNsb3NlLWJ1dHRvbjpmb2N1cyB7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgLmNsb3NlLWJ1dHRvbi5zbWFsbCB7XG4gICAgcmlnaHQ6IDAuNjZyZW07XG4gICAgdG9wOiAwLjMzZW07XG4gICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuICAuY2xvc2UtYnV0dG9uLCAuY2xvc2UtYnV0dG9uLm1lZGl1bSB7XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgdG9wOiAwLjVyZW07XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cblxuLm1lbnUge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAubWVudSBsaSB7XG4gICAgb3V0bGluZTogMDsgfVxuICAubWVudSBhLFxuICAubWVudSAuYnV0dG9uLFxuICAubWVudSAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssXG4gIC53cC1ibG9jay1idXR0b24gLm1lbnUgLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDAuN3JlbSAxcmVtOyB9XG4gIC5tZW51IGlucHV0LFxuICAubWVudSBzZWxlY3QsXG4gIC5tZW51IGEsXG4gIC5tZW51IGJ1dHRvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAubWVudSBpbnB1dCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5tZW51LCAubWVudS5ob3Jpem9udGFsIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAubWVudS52ZXJ0aWNhbCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAubWVudS5leHBhbmRlZCBsaSB7XG4gICAgZmxleDogMSAxIDBweDsgfVxuICAubWVudS5zaW1wbGUge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAubWVudS5zaW1wbGUgbGkgKyBsaSB7XG4gICAgICBtYXJnaW4tbGVmdDogMXJlbTsgfVxuICAgIC5tZW51LnNpbXBsZSBhIHtcbiAgICAgIHBhZGRpbmc6IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubWVudS5tZWRpdW0taG9yaXpvbnRhbCB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gICAgLm1lbnUubWVkaXVtLXZlcnRpY2FsIHtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIC5tZW51Lm1lZGl1bS1leHBhbmRlZCBsaSB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyB9XG4gICAgLm1lbnUubWVkaXVtLXNpbXBsZSBsaSB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubWVudS5sYXJnZS1ob3Jpem9udGFsIHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgICAubWVudS5sYXJnZS12ZXJ0aWNhbCB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAubWVudS5sYXJnZS1leHBhbmRlZCBsaSB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyB9XG4gICAgLm1lbnUubGFyZ2Utc2ltcGxlIGxpIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLm1lbnUueGxhcmdlLWhvcml6b250YWwge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAgIC5tZW51LnhsYXJnZS12ZXJ0aWNhbCB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAubWVudS54bGFyZ2UtZXhwYW5kZWQgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgfVxuICAgIC5tZW51LnhsYXJnZS1zaW1wbGUgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAubWVudS54eGxhcmdlLWhvcml6b250YWwge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAgIC5tZW51Lnh4bGFyZ2UtdmVydGljYWwge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgLm1lbnUueHhsYXJnZS1leHBhbmRlZCBsaSB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyB9XG4gICAgLm1lbnUueHhsYXJnZS1zaW1wbGUgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgfSB9XG4gIC5tZW51Lm5lc3RlZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtOyB9XG4gIC5tZW51Lmljb25zIGEge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLm1lbnUuaWNvbi10b3AgYSwgLm1lbnUuaWNvbi1yaWdodCBhLCAubWVudS5pY29uLWJvdHRvbSBhLCAubWVudS5pY29uLWxlZnQgYSB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAubWVudS5pY29uLWxlZnQgbGkgYSB7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwOyB9XG4gICAgLm1lbnUuaWNvbi1sZWZ0IGxpIGEgaW1nLFxuICAgIC5tZW51Lmljb24tbGVmdCBsaSBhIGksXG4gICAgLm1lbnUuaWNvbi1sZWZ0IGxpIGEgc3ZnIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbTsgfVxuICAubWVudS5pY29uLXJpZ2h0IGxpIGEge1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDsgfVxuICAgIC5tZW51Lmljb24tcmlnaHQgbGkgYSBpbWcsXG4gICAgLm1lbnUuaWNvbi1yaWdodCBsaSBhIGksXG4gICAgLm1lbnUuaWNvbi1yaWdodCBsaSBhIHN2ZyB7XG4gICAgICBtYXJnaW4tbGVmdDogMC4yNXJlbTsgfVxuICAubWVudS5pY29uLXRvcCBsaSBhIHtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7IH1cbiAgICAubWVudS5pY29uLXRvcCBsaSBhIGltZyxcbiAgICAubWVudS5pY29uLXRvcCBsaSBhIGksXG4gICAgLm1lbnUuaWNvbi10b3AgbGkgYSBzdmcge1xuICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLm1lbnUuaWNvbi1ib3R0b20gbGkgYSB7XG4gICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwOyB9XG4gICAgLm1lbnUuaWNvbi1ib3R0b20gbGkgYSBpbWcsXG4gICAgLm1lbnUuaWNvbi1ib3R0b20gbGkgYSBpLFxuICAgIC5tZW51Lmljb24tYm90dG9tIGxpIGEgc3ZnIHtcbiAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5tZW51IC5pcy1hY3RpdmUgPiBhIHtcbiAgICBiYWNrZ3JvdW5kOiAjODc3MTQ4O1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gIC5tZW51IC5hY3RpdmUgPiBhIHtcbiAgICBiYWNrZ3JvdW5kOiAjODc3MTQ4O1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gIC5tZW51LmFsaWduLWxlZnQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAubWVudS5hbGlnbi1yaWdodCBsaSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gICAgLm1lbnUuYWxpZ24tcmlnaHQgbGkgLnN1Ym1lbnUgbGkge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gIC5tZW51LmFsaWduLXJpZ2h0LnZlcnRpY2FsIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgIC5tZW51LmFsaWduLXJpZ2h0LnZlcnRpY2FsIGxpIC5zdWJtZW51IGxpIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5tZW51LmFsaWduLXJpZ2h0IC5uZXN0ZWQge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAubWVudS5hbGlnbi1jZW50ZXIgbGkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAubWVudS5hbGlnbi1jZW50ZXIgbGkgLnN1Ym1lbnUgbGkge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gIC5tZW51IC5tZW51LXRleHQge1xuICAgIHBhZGRpbmc6IDAuN3JlbSAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiBpbmhlcml0OyB9XG5cbi5tZW51LWNlbnRlcmVkID4gLm1lbnUge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAubWVudS1jZW50ZXJlZCA+IC5tZW51IGxpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgLm1lbnUtY2VudGVyZWQgPiAubWVudSBsaSAuc3VibWVudSBsaSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cblxuLm5vLWpzIFtkYXRhLXJlc3BvbnNpdmUtbWVudV0gdWwge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5tZW51LWljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMTZweDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5tZW51LWljb246OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgICBib3gtc2hhZG93OiAwIDdweCAwICNmZWZlZmUsIDAgMTRweCAwICNmZWZlZmU7XG4gICAgY29udGVudDogJyc7IH1cbiAgLm1lbnUtaWNvbjpob3Zlcjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICM4NzcxNDg7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMCAjODc3MTQ4LCAwIDE0cHggMCAjODc3MTQ4OyB9XG5cbi5tZW51LWljb24uZGFyayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLm1lbnUtaWNvbi5kYXJrOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQ6ICMwYTBhMGE7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMCAjMGEwYTBhLCAwIDE0cHggMCAjMGEwYTBhO1xuICAgIGNvbnRlbnQ6ICcnOyB9XG4gIC5tZW51LWljb24uZGFyazpob3Zlcjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICM4YThhOGE7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMCAjOGE4YThhLCAwIDE0cHggMCAjOGE4YThhOyB9XG5cbi5pcy1kcmlsbGRvd24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmlzLWRyaWxsZG93biBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmlzLWRyaWxsZG93bi5hbmltYXRlLWhlaWdodCB7XG4gICAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuNXM7IH1cblxuLmRyaWxsZG93biBhIHtcbiAgcGFkZGluZzogMC43cmVtIDFyZW07XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7IH1cblxuLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMTAwJTtcbiAgei1pbmRleDogLTE7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgbGluZWFyOyB9XG4gIC5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51LmlzLWFjdGl2ZSB7XG4gICAgei1pbmRleDogMTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpOyB9XG4gIC5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51LmlzLWNsb3Npbmcge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTsgfVxuICAuZHJpbGxkb3duIC5pcy1kcmlsbGRvd24tc3VibWVudSBhIHtcbiAgICBwYWRkaW5nOiAwLjdyZW0gMXJlbTsgfVxuXG4uZHJpbGxkb3duIC5uZXN0ZWQuaXMtZHJpbGxkb3duLXN1Ym1lbnUge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5kcmlsbGRvd24gLmRyaWxsZG93bi1zdWJtZW51LWNvdmVyLXByZXZpb3VzIHtcbiAgbWluLWhlaWdodDogMTAwJTsgfVxuXG4uZHJpbGxkb3duIC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICM4NzcxNDg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIG1hcmdpbi10b3A6IC02cHg7XG4gICAgcmlnaHQ6IDFyZW07IH1cblxuLmRyaWxsZG93bi5hbGlnbi1sZWZ0IC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMyZjJmMmY7XG4gIHJpZ2h0OiAxcmVtO1xuICBsZWZ0OiBhdXRvOyB9XG5cbi5kcmlsbGRvd24uYWxpZ24tcmlnaHQgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgNnB4O1xuICBjb250ZW50OiAnJztcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzJmMmYyZiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDFyZW07IH1cblxuLmRyaWxsZG93biAuanMtZHJpbGxkb3duLWJhY2sgPiBhOjpiZWZvcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjODc3MTQ4IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07IH1cblxuLmRyb3Bkb3duLXBhbmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMzAwcHg7XG4gIHBhZGRpbmc6IDFyZW07XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgZm9udC1zaXplOiAxcmVtOyB9XG4gIC5kcm9wZG93bi1wYW5lLmlzLW9wZW5pbmcge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5kcm9wZG93bi1wYW5lLmlzLW9wZW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cblxuLmRyb3Bkb3duLXBhbmUudGlueSB7XG4gIHdpZHRoOiAxMDBweDsgfVxuXG4uZHJvcGRvd24tcGFuZS5zbWFsbCB7XG4gIHdpZHRoOiAyMDBweDsgfVxuXG4uZHJvcGRvd24tcGFuZS5sYXJnZSB7XG4gIHdpZHRoOiA0MDBweDsgfVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMTAwJTtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87IH1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgdG9wOiAxMDAlO1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMDsgfVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtOyB9XG5cbi5kcm9wZG93bi5tZW51ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIC8qQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgZG93bik7Ki9cbiAgcmlnaHQ6IDVweDtcbiAgbGVmdDogYXV0bztcbiAgbWFyZ2luLXRvcDogLTNweDsgfVxuXG5bZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmRyb3Bkb3duLm1lbnUgYSB7XG4gIG91dGxpbmU6IDA7IH1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaSA+IGEge1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTsgfVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLmlzLWFjdGl2ZSA+IGEge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICM4NzcxNDg7IH1cblxuLm5vLWpzIC5kcm9wZG93bi5tZW51IHVsIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZHJvcGRvd24ubWVudSAubmVzdGVkLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB0b3A6IDA7XG4gIGZvbnQtZmFtaWx5OiAncm9ib3RvcmVndWxhcicsIHNhbnMtc2VyaWY7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBmb250LXNpemU6IDAuOXJlbTsgfVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAxMDAlOyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDEwMCU7XG4gIGxlZnQ6IGF1dG87IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgcmlnaHQ6IDE0cHg7IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAvKkBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIGxlZnQpOyovXG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiA1cHg7IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgLypAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCByaWdodCk7Ki8gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIC8qQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgZG93bik7Ki9cbiAgICByaWdodDogNXB4O1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwO1xuICAgIGZvbnQtZmFtaWx5OiAncm9ib3RvcmVndWxhcicsIHNhbnMtc2VyaWY7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgZm9udC1zaXplOiAwLjlyZW07IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlOyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxNHB4OyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgLypAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCBsZWZ0KTsqL1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDVweDsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICAvKkBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIHJpZ2h0KTsqLyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIC8qQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgZG93bik7Ki9cbiAgICByaWdodDogNXB4O1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7XG4gICAgZm9udC1mYW1pbHk6ICdyb2JvdG9yZWd1bGFyJywgc2Fucy1zZXJpZjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBmb250LXNpemU6IDAuOXJlbTsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IDE0cHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIC8qQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgbGVmdCk7Ki9cbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiA1cHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICAvKkBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIHJpZ2h0KTsqLyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDsgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTsgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIC8qQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgZG93bik7Ki9cbiAgICByaWdodDogNXB4O1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtdmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwO1xuICAgIGZvbnQtZmFtaWx5OiAncm9ib3RvcmVndWxhcicsIHNhbnMtc2VyaWY7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgZm9udC1zaXplOiAwLjlyZW07IH1cbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlOyB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxNHB4OyB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgLypAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCBsZWZ0KTsqL1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDVweDsgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICAvKkBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIHJpZ2h0KTsqLyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5kcm9wZG93bi5tZW51Lnh4bGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwOyB9XG4gIC5kcm9wZG93bi5tZW51Lnh4bGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTsgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICAvKkBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIGRvd24pOyovXG4gICAgcmlnaHQ6IDVweDtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IC0zcHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUueHhsYXJnZS12ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7XG4gICAgZm9udC1mYW1pbHk6ICdyb2JvdG9yZWd1bGFyJywgc2Fucy1zZXJpZjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBmb250LXNpemU6IDAuOXJlbTsgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlOyB9XG4gIC5kcm9wZG93bi5tZW51Lnh4bGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLXZlcnRpY2FsID4gbGkgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IDE0cHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUueHhsYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgLypAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCBsZWZ0KTsqL1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDVweDsgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgLypAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCByaWdodCk7Ki8gfSB9XG5cbi5kcm9wZG93bi5tZW51LmFsaWduLXJpZ2h0IC5pcy1kcm9wZG93bi1zdWJtZW51LmZpcnN0LXN1YiB7XG4gIHRvcDogMTAwJTtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87IH1cblxuLmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwge1xuICB3aWR0aDogMTAwcHg7IH1cbiAgLmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwuYWxpZ24tcmlnaHQge1xuICAgIGZsb2F0OiByaWdodDsgfVxuXG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IGE6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDVweDtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IC02cHg7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLWlubmVyID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7IH1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMTAwJTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWluLXdpZHRoOiAyMDBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTsgfVxuICAuZHJvcGRvd24gLmlzLWRyb3Bkb3duLXN1Ym1lbnUgYSB7XG4gICAgcGFkZGluZzogMC43cmVtIDFyZW07IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxNHB4OyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIC8qQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgbGVmdCk7Ki9cbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiA1cHg7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIC8qQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgcmlnaHQpOyovIH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIG1hcmdpbi10b3A6IC0xcHg7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgPiBsaSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUuanMtZHJvcGRvd24tYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4ucmVzcG9uc2l2ZS1lbWJlZCxcbi5mbGV4LXZpZGVvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIHBhZGRpbmctYm90dG9tOiA3NSU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLnJlc3BvbnNpdmUtZW1iZWQgaWZyYW1lLFxuICAucmVzcG9uc2l2ZS1lbWJlZCBvYmplY3QsXG4gIC5yZXNwb25zaXZlLWVtYmVkIGVtYmVkLFxuICAucmVzcG9uc2l2ZS1lbWJlZCB2aWRlbyxcbiAgLmZsZXgtdmlkZW8gaWZyYW1lLFxuICAuZmxleC12aWRlbyBvYmplY3QsXG4gIC5mbGV4LXZpZGVvIGVtYmVkLFxuICAuZmxleC12aWRlbyB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAucmVzcG9uc2l2ZS1lbWJlZC53aWRlc2NyZWVuLFxuICAuZmxleC12aWRlby53aWRlc2NyZWVuIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlOyB9XG5cbi5sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBiYWNrZ3JvdW5kOiAjODc3MTQ4O1xuICBjb2xvcjogI2ZlZmVmZTsgfVxuICAubGFiZWwucHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZDogIzg3NzE0ODtcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAubGFiZWwuc2Vjb25kYXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiAjNzY3Njc2O1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gIC5sYWJlbC5zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kOiAjM2FkYjc2O1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5sYWJlbC53YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZhZTAwO1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5sYWJlbC5hbGVydCB7XG4gICAgYmFja2dyb3VuZDogI2NjNGIzNztcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuXG4ubWVkaWEtb2JqZWN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgLm1lZGlhLW9iamVjdCBpbWcge1xuICAgIG1heC13aWR0aDogbm9uZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLm1lZGlhLW9iamVjdC5zdGFjay1mb3Itc21hbGwge1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9IH1cblxuLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgZmxleDogMCAxIGF1dG87IH1cbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtOyB9XG4gIC5tZWRpYS1vYmplY3Qtc2VjdGlvbjpsYXN0LWNoaWxkOm5vdCg6bnRoLWNoaWxkKDIpKSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtOyB9XG4gIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuc3RhY2stZm9yLXNtYWxsIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gICAgICAuc3RhY2stZm9yLXNtYWxsIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIC5tZWRpYS1vYmplY3Qtc2VjdGlvbi5tYWluLXNlY3Rpb24ge1xuICAgIGZsZXg6IDEgMSAwcHg7IH1cblxuLmlzLW9mZi1jYW52YXMtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLmpzLW9mZi1jYW52YXMtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2UsIHZpc2liaWxpdHkgMC41cyBlYXNlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NCwgMjU0LCAyNTQsIDAuMjUpO1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmpzLW9mZi1jYW52YXMtb3ZlcmxheS5pcy12aXNpYmxlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgLmpzLW9mZi1jYW52YXMtb3ZlcmxheS5pcy1jbG9zYWJsZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5qcy1vZmYtY2FudmFzLW92ZXJsYXkuaXMtb3ZlcmxheS1hYnNvbHV0ZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gIC5qcy1vZmYtY2FudmFzLW92ZXJsYXkuaXMtb3ZlcmxheS1maXhlZCB7XG4gICAgcG9zaXRpb246IGZpeGVkOyB9XG5cbi5vZmYtY2FudmFzLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLm9mZi1jYW52YXMge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEyO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5vZmYtY2FudmFzIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5vZmYtY2FudmFzLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgei1pbmRleDogMTI7IH1cbiAgLm9mZi1jYW52YXMuaXMtY2xvc2VkIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgLm9mZi1jYW52YXMuaXMtdHJhbnNpdGlvbi1vdmVybGFwIHtcbiAgICB6LWluZGV4OiAxMzsgfVxuICAgIC5vZmYtY2FudmFzLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMTAsIDEwLCAxMCwgMC43KTsgfVxuICAub2ZmLWNhbnZhcy5pcy1vcGVuIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuXG4ub2ZmLWNhbnZhcy1hYnNvbHV0ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTI7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGVhc2U7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLm9mZi1jYW52YXMtYWJzb2x1dGUge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB6LWluZGV4OiAxMjsgfVxuICAub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy1jbG9zZWQge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy10cmFuc2l0aW9uLW92ZXJsYXAge1xuICAgIHotaW5kZXg6IDEzOyB9XG4gICAgLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgxMCwgMTAsIDEwLCAwLjcpOyB9XG4gIC5vZmYtY2FudmFzLWFic29sdXRlLmlzLW9wZW4ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG5cbi5wb3NpdGlvbi1sZWZ0IHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHdpZHRoOiAyNTBweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNTBweCk7IH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1sZWZ0IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1MHB4KTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tbGVmdC5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tbGVmdC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjUwcHgpOyB9XG4gIC5wb3NpdGlvbi1sZWZ0LmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgLTEzcHggMCAyMHB4IC0xM3B4IHJnYmEoMTAsIDEwLCAxMCwgMC4yNSk7IH1cblxuLnBvc2l0aW9uLXJpZ2h0IHtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICB3aWR0aDogMjUwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNTBweCk7IH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1yaWdodCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI1MHB4KTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tcmlnaHQuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLXJpZ2h0Lmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjUwcHgpOyB9XG4gIC5wb3NpdGlvbi1yaWdodC5pcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDEzcHggMCAyMHB4IC0xM3B4IHJnYmEoMTAsIDEwLCAxMCwgMC4yNSk7IH1cblxuLnBvc2l0aW9uLXRvcCB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIGhlaWdodDogMjUwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjUwcHgpOyB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tdG9wIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1MHB4KTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tdG9wLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi10b3AuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI1MHB4KTsgfVxuICAucG9zaXRpb24tdG9wLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAtMTNweCAyMHB4IC0xM3B4IHJnYmEoMTAsIDEwLCAxMCwgMC4yNSk7IH1cblxuLnBvc2l0aW9uLWJvdHRvbSB7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIGhlaWdodDogMjUwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNTBweCk7IH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1ib3R0b20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNTBweCk7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWJvdHRvbS5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tYm90dG9tLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjUwcHgpOyB9XG4gIC5wb3NpdGlvbi1ib3R0b20uaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDEzcHggMjBweCAtMTNweCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpOyB9XG5cbi5vZmYtY2FudmFzLWNvbnRlbnQge1xuICB0cmFuc2Zvcm06IG5vbmU7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGVhc2U7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMuaXMtb3BlbiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLW1lZGl1bSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1sZWZ0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbWVkaXVtIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tbGVmdDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1yaWdodCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbWVkaXVtIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4OyB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtdG9wIHtcbiAgICAgIG1hcmdpbi10b3A6IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLW1lZGl1bSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLXRvcDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1ib3R0b20ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbWVkaXVtIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNTBweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtbGVmdCB7XG4gICAgICBtYXJnaW4tbGVmdDogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLWxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tbGVmdDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1yaWdodCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC10b3Age1xuICAgICAgbWFyZ2luLXRvcDogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi10b3A6IDI1MHB4OyB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtYm90dG9tIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNTBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci14bGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLXhsYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3IteGxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1sZWZ0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3IteGxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tbGVmdDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3IteGxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3IteGxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3IteGxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1yaWdodCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3IteGxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4OyB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci14bGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3IteGxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLXhsYXJnZSB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtdG9wIHtcbiAgICAgIG1hcmdpbi10b3A6IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLXhsYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLXRvcDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLXhsYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci14bGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3IteGxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1ib3R0b20ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3IteGxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNTBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci14eGxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci14eGxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci14eGxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1sZWZ0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3IteHhsYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDI1MHB4OyB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLXh4bGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci14eGxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3IteHhsYXJnZSB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtcmlnaHQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLXh4bGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLXh4bGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3IteHhsYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci14eGxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC10b3Age1xuICAgICAgbWFyZ2luLXRvcDogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3IteHhsYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLXRvcDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLXh4bGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3IteHhsYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci14eGxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1ib3R0b20ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3IteHhsYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIHRyYW5zaXRpb246IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bS5wb3NpdGlvbi1sZWZ0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bS5wb3NpdGlvbi1yaWdodCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ucG9zaXRpb24tdG9wLCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bS5wb3NpdGlvbi1ib3R0b20ge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2Uge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB0cmFuc2l0aW9uOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZS5wb3NpdGlvbi1sZWZ0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlLnBvc2l0aW9uLXJpZ2h0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlLnBvc2l0aW9uLXRvcCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZS5wb3NpdGlvbi1ib3R0b20ge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXhsYXJnZSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIHRyYW5zaXRpb246IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXhsYXJnZS5wb3NpdGlvbi1sZWZ0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXhsYXJnZS5wb3NpdGlvbi1yaWdodCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci14bGFyZ2UucG9zaXRpb24tdG9wLCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXhsYXJnZS5wb3NpdGlvbi1ib3R0b20ge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3IteGxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci14eGxhcmdlIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgdHJhbnNpdGlvbjogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3IteHhsYXJnZS5wb3NpdGlvbi1sZWZ0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXh4bGFyZ2UucG9zaXRpb24tcmlnaHQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3IteHhsYXJnZS5wb3NpdGlvbi10b3AsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3IteHhsYXJnZS5wb3NpdGlvbi1ib3R0b20ge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3IteHhsYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4ub3JiaXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLm9yYml0LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLm9yYml0LXNsaWRlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAub3JiaXQtc2xpZGUubm8tbW90aW9udWkuaXMtYWN0aXZlIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDsgfVxuXG4ub3JiaXQtZmlndXJlIHtcbiAgbWFyZ2luOiAwOyB9XG5cbi5vcmJpdC1pbWFnZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDsgfVxuXG4ub3JiaXQtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogMXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMCwgMTAsIDEwLCAwLjUpO1xuICBjb2xvcjogI2ZlZmVmZTsgfVxuXG4ub3JiaXQtcHJldmlvdXMsIC5vcmJpdC1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB6LWluZGV4OiAxMDtcbiAgcGFkZGluZzogMXJlbTtcbiAgY29sb3I6ICNmZWZlZmU7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5vcmJpdC1wcmV2aW91cywgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5vcmJpdC1uZXh0IHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5vcmJpdC1wcmV2aW91czpob3ZlciwgLm9yYml0LW5leHQ6aG92ZXIsIC5vcmJpdC1wcmV2aW91czphY3RpdmUsIC5vcmJpdC1uZXh0OmFjdGl2ZSwgLm9yYml0LXByZXZpb3VzOmZvY3VzLCAub3JiaXQtbmV4dDpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMCwgMTAsIDEwLCAwLjUpOyB9XG5cbi5vcmJpdC1wcmV2aW91cyB7XG4gIGxlZnQ6IDA7IH1cblxuLm9yYml0LW5leHQge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDsgfVxuXG4ub3JiaXQtYnVsbGV0cyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogMC44cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjhyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLm9yYml0LWJ1bGxldHMge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLm9yYml0LWJ1bGxldHMgYnV0dG9uIHtcbiAgICB3aWR0aDogMS4ycmVtO1xuICAgIGhlaWdodDogMS4ycmVtO1xuICAgIG1hcmdpbjogMC4xcmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2FjYWNhOyB9XG4gICAgLm9yYml0LWJ1bGxldHMgYnV0dG9uOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM4YThhOGE7IH1cbiAgICAub3JiaXQtYnVsbGV0cyBidXR0b24uaXMtYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM4YThhOGE7IH1cblxuLnBhZ2luYXRpb24ge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAucGFnaW5hdGlvbjo6YmVmb3JlLCAucGFnaW5hdGlvbjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIG9yZGVyOiAxOyB9XG4gIC5wYWdpbmF0aW9uOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnBhZ2luYXRpb24gbGkge1xuICAgIG1hcmdpbi1yaWdodDogMC4wNjI1cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLnBhZ2luYXRpb24gbGk6bGFzdC1jaGlsZCwgLnBhZ2luYXRpb24gbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wYWdpbmF0aW9uIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cbiAgLnBhZ2luYXRpb24gYSxcbiAgLnBhZ2luYXRpb24gYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwLjE4NzVyZW0gMC42MjVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAgIC5wYWdpbmF0aW9uIGE6aG92ZXIsXG4gICAgLnBhZ2luYXRpb24gYnV0dG9uOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICNlNmU2ZTY7IH1cbiAgLnBhZ2luYXRpb24gLmN1cnJlbnQge1xuICAgIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTtcbiAgICBiYWNrZ3JvdW5kOiAjODc3MTQ4O1xuICAgIGNvbG9yOiAjZmVmZWZlO1xuICAgIGN1cnNvcjogZGVmYXVsdDsgfVxuICAucGFnaW5hdGlvbiAuZGlzYWJsZWQge1xuICAgIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTtcbiAgICBjb2xvcjogI2NhY2FjYTtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgLnBhZ2luYXRpb24gLmRpc2FibGVkOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIC5wYWdpbmF0aW9uIC5lbGxpcHNpczo6YWZ0ZXIge1xuICAgIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTtcbiAgICBjb250ZW50OiAnXFwyMDI2JztcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuXG4ucGFnaW5hdGlvbi1wcmV2aW91cyBhOjpiZWZvcmUsXG4ucGFnaW5hdGlvbi1wcmV2aW91cy5kaXNhYmxlZDo6YmVmb3JlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgY29udGVudDogJ1xcMDBhYic7IH1cblxuLnBhZ2luYXRpb24tbmV4dCBhOjphZnRlcixcbi5wYWdpbmF0aW9uLW5leHQuZGlzYWJsZWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICBjb250ZW50OiAnXFwwMGJiJzsgfVxuXG4ucHJvZ3Jlc3Mge1xuICBoZWlnaHQ6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYWNhY2E7IH1cbiAgLnByb2dyZXNzLnByaW1hcnkgLnByb2dyZXNzLW1ldGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjODc3MTQ4OyB9XG4gIC5wcm9ncmVzcy5zZWNvbmRhcnkgLnByb2dyZXNzLW1ldGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzY3Njc2OyB9XG4gIC5wcm9ncmVzcy5zdWNjZXNzIC5wcm9ncmVzcy1tZXRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNhZGI3NjsgfVxuICAucHJvZ3Jlc3Mud2FybmluZyAucHJvZ3Jlc3MtbWV0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7IH1cbiAgLnByb2dyZXNzLmFsZXJ0IC5wcm9ncmVzcy1tZXRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGIzNzsgfVxuXG4ucHJvZ3Jlc3MtbWV0ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzg3NzE0ODsgfVxuXG4ucHJvZ3Jlc3MtbWV0ZXItdGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4uc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDAuNXJlbTtcbiAgbWFyZ2luLXRvcDogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMi4yNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgdG91Y2gtYWN0aW9uOiBub25lOyB9XG5cbi5zbGlkZXItZmlsbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAwLjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYWNhY2E7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0OyB9XG4gIC5zbGlkZXItZmlsbC5pcy1kcmFnZ2luZyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDBzIGxpbmVhcjsgfVxuXG4uc2xpZGVyLWhhbmRsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMS40cmVtO1xuICBoZWlnaHQ6IDEuNHJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzg3NzE0ODtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuc2xpZGVyLWhhbmRsZSB7XG4gICAgb3V0bGluZTogMDsgfVxuICAuc2xpZGVyLWhhbmRsZTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzczNjAzZDsgfVxuICAuc2xpZGVyLWhhbmRsZS5pcy1kcmFnZ2luZyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDBzIGxpbmVhcjsgfVxuXG4uc2xpZGVyLmRpc2FibGVkLFxuLnNsaWRlcltkaXNhYmxlZF0ge1xuICBvcGFjaXR5OiAwLjI1O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG5cbi5zbGlkZXIudmVydGljYWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAwLjVyZW07XG4gIGhlaWdodDogMTIuNXJlbTtcbiAgbWFyZ2luOiAwIDEuMjVyZW07XG4gIHRyYW5zZm9ybTogc2NhbGUoMSwgLTEpOyB9XG4gIC5zbGlkZXIudmVydGljYWwgLnNsaWRlci1maWxsIHtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDAuNXJlbTtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlOyB9XG4gIC5zbGlkZXIudmVydGljYWwgLnNsaWRlci1oYW5kbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIHdpZHRoOiAxLjRyZW07XG4gICAgaGVpZ2h0OiAxLjRyZW07XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOyB9XG5cbi5zdGlja3ktY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5zdGlja3kge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cblxuLnN0aWNreS5pcy1zdHVjayB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogNTtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLnN0aWNreS5pcy1zdHVjay5pcy1hdC10b3Age1xuICAgIHRvcDogMDsgfVxuICAuc3RpY2t5LmlzLXN0dWNrLmlzLWF0LWJvdHRvbSB7XG4gICAgYm90dG9tOiAwOyB9XG5cbi5zdGlja3kuaXMtYW5jaG9yZWQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiBhdXRvOyB9XG4gIC5zdGlja3kuaXMtYW5jaG9yZWQuaXMtYXQtYm90dG9tIHtcbiAgICBib3R0b206IDA7IH1cblxuaHRtbC5pcy1yZXZlYWwtb3BlbiB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXk6IGhpZGRlbjsgfVxuICBodG1sLmlzLXJldmVhbC1vcGVuLnpmLWhhcy1zY3JvbGwge1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDsgfVxuICBodG1sLmlzLXJldmVhbC1vcGVuIGJvZHkge1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbjsgfVxuXG4ucmV2ZWFsLW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTAwNTtcbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMCwgMTAsIDEwLCAwLjQ1KTtcbiAgb3ZlcmZsb3cteTogYXV0bzsgfVxuXG4ucmV2ZWFsIHtcbiAgei1pbmRleDogMTAwNjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMTAwcHg7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG92ZXJmbG93LXk6IGF1dG87IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5yZXZlYWwge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDA7IH0gfVxuICAucmV2ZWFsIC5jb2x1bW4ge1xuICAgIG1pbi13aWR0aDogMDsgfVxuICAucmV2ZWFsID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsIHtcbiAgICAgIHdpZHRoOiA2MDBweDtcbiAgICAgIG1heC13aWR0aDogNzVyZW07IH0gfVxuICAucmV2ZWFsLmNvbGxhcHNlIHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbC50aW55IHtcbiAgICAgIHdpZHRoOiAzMCU7XG4gICAgICBtYXgtd2lkdGg6IDc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsLnNtYWxsIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBtYXgtd2lkdGg6IDc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsLmxhcmdlIHtcbiAgICAgIHdpZHRoOiA5MCU7XG4gICAgICBtYXgtd2lkdGg6IDc1cmVtOyB9IH1cbiAgLnJldmVhbC5mdWxsIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAucmV2ZWFsIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYm9yZGVyLXJhZGl1czogMDsgfSB9XG4gIC5yZXZlYWwud2l0aG91dC1vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7IH1cblxuLnN3aXRjaCB7XG4gIGhlaWdodDogMnJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBvdXRsaW5lOiAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIHVzZXItc2VsZWN0OiBub25lOyB9XG5cbi5zd2l0Y2gtaW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnN3aXRjaC1wYWRkbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogNHJlbTtcbiAgaGVpZ2h0OiAycmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiAjY2FjYWNhO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1vdXQ7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIGlucHV0ICsgLnN3aXRjaC1wYWRkbGUge1xuICAgIG1hcmdpbjogMDsgfVxuICAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDAuMjVyZW07XG4gICAgbGVmdDogMC4yNXJlbTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMS41cmVtO1xuICAgIGhlaWdodDogMS41cmVtO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLW91dDtcbiAgICBjb250ZW50OiAnJzsgfVxuICBpbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGUge1xuICAgIGJhY2tncm91bmQ6ICM4NzcxNDg7IH1cbiAgICBpbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICAgIGxlZnQ6IDIuMjVyZW07IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIGlucHV0OmZvY3VzIH4gLnN3aXRjaC1wYWRkbGUge1xuICAgIG91dGxpbmU6IDA7IH1cblxuLnN3aXRjaC1hY3RpdmUsIC5zd2l0Y2gtaW5hY3RpdmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cblxuLnN3aXRjaC1hY3RpdmUge1xuICBsZWZ0OiA4JTtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBpbnB1dDpjaGVja2VkICsgbGFiZWwgPiAuc3dpdGNoLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLnN3aXRjaC1pbmFjdGl2ZSB7XG4gIHJpZ2h0OiAxNSU7IH1cbiAgaW5wdXQ6Y2hlY2tlZCArIGxhYmVsID4gLnN3aXRjaC1pbmFjdGl2ZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4uc3dpdGNoLnRpbnkge1xuICBoZWlnaHQ6IDEuNXJlbTsgfVxuICAuc3dpdGNoLnRpbnkgLnN3aXRjaC1wYWRkbGUge1xuICAgIHdpZHRoOiAzcmVtO1xuICAgIGhlaWdodDogMS41cmVtO1xuICAgIGZvbnQtc2l6ZTogMC42MjVyZW07IH1cbiAgLnN3aXRjaC50aW55IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gICAgdG9wOiAwLjI1cmVtO1xuICAgIGxlZnQ6IDAuMjVyZW07XG4gICAgd2lkdGg6IDFyZW07XG4gICAgaGVpZ2h0OiAxcmVtOyB9XG4gIC5zd2l0Y2gudGlueSBpbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICBsZWZ0OiAxLjc1cmVtOyB9XG5cbi5zd2l0Y2guc21hbGwge1xuICBoZWlnaHQ6IDEuNzVyZW07IH1cbiAgLnN3aXRjaC5zbWFsbCAuc3dpdGNoLXBhZGRsZSB7XG4gICAgd2lkdGg6IDMuNXJlbTtcbiAgICBoZWlnaHQ6IDEuNzVyZW07XG4gICAgZm9udC1zaXplOiAwLjc1cmVtOyB9XG4gIC5zd2l0Y2guc21hbGwgLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICB0b3A6IDAuMjVyZW07XG4gICAgbGVmdDogMC4yNXJlbTtcbiAgICB3aWR0aDogMS4yNXJlbTtcbiAgICBoZWlnaHQ6IDEuMjVyZW07IH1cbiAgLnN3aXRjaC5zbWFsbCBpbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICBsZWZ0OiAycmVtOyB9XG5cbi5zd2l0Y2gubGFyZ2Uge1xuICBoZWlnaHQ6IDIuNXJlbTsgfVxuICAuc3dpdGNoLmxhcmdlIC5zd2l0Y2gtcGFkZGxlIHtcbiAgICB3aWR0aDogNXJlbTtcbiAgICBoZWlnaHQ6IDIuNXJlbTtcbiAgICBmb250LXNpemU6IDFyZW07IH1cbiAgLnN3aXRjaC5sYXJnZSAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICAgIHRvcDogMC4yNXJlbTtcbiAgICBsZWZ0OiAwLjI1cmVtO1xuICAgIHdpZHRoOiAycmVtO1xuICAgIGhlaWdodDogMnJlbTsgfVxuICAuc3dpdGNoLmxhcmdlIGlucHV0OmNoZWNrZWQgfiAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICAgIGxlZnQ6IDIuNzVyZW07IH1cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuICB0aGVhZCxcbiAgdGJvZHksXG4gIHRmb290IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZjFmMWYxO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7IH1cbiAgY2FwdGlvbiB7XG4gICAgcGFkZGluZzogMC41cmVtIDAuNjI1cmVtIDAuNjI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gIHRoZWFkIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjhmOGY4O1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIHRmb290IHtcbiAgICBiYWNrZ3JvdW5kOiAjZjFmMWYxO1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIHRoZWFkIHRyLFxuICB0Zm9vdCB0ciB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgdGhlYWQgdGgsXG4gIHRoZWFkIHRkLFxuICB0Zm9vdCB0aCxcbiAgdGZvb3QgdGQge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIHRib2R5IHRoLFxuICB0Ym9keSB0ZCB7XG4gICAgcGFkZGluZzogMC41cmVtIDAuNjI1cmVtIDAuNjI1cmVtOyB9XG4gIHRib2R5IHRyOm50aC1jaGlsZChldmVuKSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmMWYxOyB9XG4gIHRhYmxlLnVuc3RyaXBlZCB0Ym9keSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTsgfVxuICAgIHRhYmxlLnVuc3RyaXBlZCB0Ym9keSB0ciB7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMWYxZjE7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgdGFibGUuc3RhY2sgdGhlYWQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgdGFibGUuc3RhY2sgdGZvb3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgdGFibGUuc3RhY2sgdHIsXG4gIHRhYmxlLnN0YWNrIHRoLFxuICB0YWJsZS5zdGFjayB0ZCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgdGFibGUuc3RhY2sgdGQge1xuICAgIGJvcmRlci10b3A6IDA7IH0gfVxuXG50YWJsZS5zY3JvbGwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87IH1cblxudGFibGUuaG92ZXIgdGhlYWQgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjNmM2YzOyB9XG5cbnRhYmxlLmhvdmVyIHRmb290IHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VjZWNlYzsgfVxuXG50YWJsZS5ob3ZlciB0Ym9keSB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7IH1cblxudGFibGUuaG92ZXI6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VjZWNlYzsgfVxuXG4udGFibGUtc2Nyb2xsIHtcbiAgb3ZlcmZsb3cteDogYXV0bzsgfVxuXG4udGFicyB7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lOyB9XG4gIC50YWJzOjpiZWZvcmUsIC50YWJzOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgb3JkZXI6IDE7IH1cbiAgLnRhYnM6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuXG4udGFicy52ZXJ0aWNhbCA+IGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBub25lO1xuICB3aWR0aDogYXV0bzsgfVxuXG4udGFicy5zaW1wbGUgPiBsaSA+IGEge1xuICBwYWRkaW5nOiAwOyB9XG4gIC50YWJzLnNpbXBsZSA+IGxpID4gYTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cblxuLnRhYnMucHJpbWFyeSB7XG4gIGJhY2tncm91bmQ6ICM4NzcxNDg7IH1cbiAgLnRhYnMucHJpbWFyeSA+IGxpID4gYSB7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgICAudGFicy5wcmltYXJ5ID4gbGkgPiBhOmhvdmVyLCAudGFicy5wcmltYXJ5ID4gbGkgPiBhOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQ6ICM4MDZiNDQ7IH1cblxuLnRhYnMtdGl0bGUge1xuICBmbG9hdDogbGVmdDsgfVxuICAudGFicy10aXRsZSA+IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDEuMjVyZW0gMS41cmVtO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogIzg3NzE0ODsgfVxuICAgIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAudGFicy10aXRsZSA+IGEge1xuICAgICAgb3V0bGluZTogMDsgfVxuICAgIC50YWJzLXRpdGxlID4gYTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICAgICAgY29sb3I6ICM3NDYxM2U7IH1cbiAgICAudGFicy10aXRsZSA+IGE6Zm9jdXMsIC50YWJzLXRpdGxlID4gYVthcmlhLXNlbGVjdGVkPSd0cnVlJ10ge1xuICAgICAgYmFja2dyb3VuZDogI2U2ZTZlNjtcbiAgICAgIGNvbG9yOiAjODc3MTQ4OyB9XG5cbi50YWJzLWNvbnRlbnQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBib3JkZXItdG9wOiAwO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTsgfVxuXG4udGFicy1jb250ZW50LnZlcnRpY2FsIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYm9yZGVyLWxlZnQ6IDA7IH1cblxuLnRhYnMtcGFuZWwge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtOyB9XG4gIC50YWJzLXBhbmVsLmlzLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLnRodW1ibmFpbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXI6IHNvbGlkIDRweCAjZmVmZWZlO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgxMCwgMTAsIDEwLCAwLjIpO1xuICBsaW5lLWhlaWdodDogMDsgfVxuXG5hLnRodW1ibmFpbCB7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQ7IH1cbiAgYS50aHVtYm5haWw6aG92ZXIsIGEudGh1bWJuYWlsOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAwIDAgNnB4IDFweCByZ2JhKDEzNSwgMTEzLCA3MiwgMC41KTsgfVxuICBhLnRodW1ibmFpbCBpbWFnZSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4udGl0bGUtYmFyIHtcbiAgLyogcGFkZGluZzogJHRpdGxlYmFyLXBhZGRpbmc7Ki9cbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAudGl0bGUtYmFyIC5tZW51LWljb24ge1xuICAgIC8qbWFyZ2luLWxlZnQ6ICR0aXRsZWJhci1pY29uLXNwYWNpbmc7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICR0aXRsZWJhci1pY29uLXNwYWNpbmc7XG4gICAgICBtYXJnaW46MXJlbTsqLyB9XG5cbi50aXRsZS1iYXItbGVmdCxcbi50aXRsZS1iYXItcmlnaHQge1xuICBmbGV4OiAxIDEgMHB4OyB9XG5cbi50aXRsZS1iYXItcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG4udGl0bGUtYmFyLXRpdGxlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4uaGFzLXRpcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItYm90dG9tOiBkb3R0ZWQgMXB4ICM4YThhOGE7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjdXJzb3I6IGhlbHA7IH1cblxuLnRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogY2FsYygxMDAlICsgMC42NDk1cmVtKTtcbiAgei1pbmRleDogMTIwMDtcbiAgbWF4LXdpZHRoOiAxMHJlbTtcbiAgcGFkZGluZzogMC43NXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbiAgZm9udC1zaXplOiA4MCU7XG4gIGNvbG9yOiAjZmVmZWZlOyB9XG4gIC50b29sdGlwOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAudG9vbHRpcC5ib3R0b206OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgMC43NXJlbTtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzBhMGEwYTtcbiAgICBib3R0b206IDEwMCU7IH1cbiAgLnRvb2x0aXAuYm90dG9tLmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOyB9XG4gIC50b29sdGlwLnRvcDo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCAwLjc1cmVtO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjMGEwYTBhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHRvcDogMTAwJTtcbiAgICBib3R0b206IGF1dG87IH1cbiAgLnRvb2x0aXAudG9wLmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOyB9XG4gIC50b29sdGlwLmxlZnQ6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgMC43NXJlbTtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzBhMGEwYTtcbiAgICBsZWZ0OiAxMDAlOyB9XG4gIC50b29sdGlwLmxlZnQuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICAgIGJvdHRvbTogYXV0bztcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cbiAgLnRvb2x0aXAucmlnaHQ6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgMC43NXJlbTtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzBhMGEwYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC50b29sdGlwLnJpZ2h0LmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICBib3R0b206IGF1dG87XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG4gIC50b29sdGlwLmFsaWduLXRvcDo6YmVmb3JlIHtcbiAgICBib3R0b206IGF1dG87XG4gICAgdG9wOiAxMCU7IH1cbiAgLnRvb2x0aXAuYWxpZ24tYm90dG9tOjpiZWZvcmUge1xuICAgIGJvdHRvbTogMTAlO1xuICAgIHRvcDogYXV0bzsgfVxuICAudG9vbHRpcC5hbGlnbi1sZWZ0OjpiZWZvcmUge1xuICAgIGxlZnQ6IDEwJTtcbiAgICByaWdodDogYXV0bzsgfVxuICAudG9vbHRpcC5hbGlnbi1yaWdodDo6YmVmb3JlIHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAxMCU7IH1cblxuLnRvcC1iYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAwcmVtO1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLnRvcC1iYXIsXG4gIC50b3AtYmFyIHVsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAxLjFyZW07IH1cbiAgLnRvcC1iYXIgaW5wdXQge1xuICAgIG1heC13aWR0aDogMjAwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtOyB9XG4gIC50b3AtYmFyIC5pbnB1dC1ncm91cC1maWVsZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC50b3AtYmFyIGlucHV0LmJ1dHRvbiwgLnRvcC1iYXIgLndwLWJsb2NrLWJ1dHRvbiBpbnB1dC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLnRvcC1iYXIgaW5wdXQud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAudG9wLWJhciAudG9wLWJhci1sZWZ0LFxuICAudG9wLWJhciAudG9wLWJhci1yaWdodCB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnRvcC1iYXIge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgICAgIC50b3AtYmFyIC50b3AtYmFyLWxlZnQge1xuICAgICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICAudG9wLWJhciAudG9wLWJhci1yaWdodCB7XG4gICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAudG9wLWJhci5zdGFja2VkLWZvci1tZWRpdW0ge1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICAudG9wLWJhci5zdGFja2VkLWZvci1tZWRpdW0gLnRvcC1iYXItbGVmdCxcbiAgICAgIC50b3AtYmFyLnN0YWNrZWQtZm9yLW1lZGl1bSAudG9wLWJhci1yaWdodCB7XG4gICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSB7XG4gICAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbGFyZ2Uge1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICAudG9wLWJhci5zdGFja2VkLWZvci1sYXJnZSAudG9wLWJhci1sZWZ0LFxuICAgICAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbGFyZ2UgLnRvcC1iYXItcmlnaHQge1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODkuOTk4NzVlbSkge1xuICAgIC50b3AtYmFyLnN0YWNrZWQtZm9yLXhsYXJnZSB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAgIC50b3AtYmFyLnN0YWNrZWQtZm9yLXhsYXJnZSAudG9wLWJhci1sZWZ0LFxuICAgICAgLnRvcC1iYXIuc3RhY2tlZC1mb3IteGxhcmdlIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTsgfSB9XG4gIC50b3AtYmFyLnN0YWNrZWQtZm9yLXh4bGFyZ2Uge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC50b3AtYmFyLnN0YWNrZWQtZm9yLXh4bGFyZ2UgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhci5zdGFja2VkLWZvci14eGxhcmdlIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbi50b3AtYmFyLXRpdGxlIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtOyB9XG5cbi50b3AtYmFyLWxlZnQsXG4udG9wLWJhci1yaWdodCB7XG4gIGZsZXg6IDAgMCBhdXRvOyB9XG5cbi5oaWRlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuaGlkZS1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMGVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zaG93LWZvci1zbWFsbC1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuaGlkZS1mb3ItbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zaG93LWZvci1tZWRpdW0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5oaWRlLWZvci1tZWRpdW0tb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2hvdy1mb3ItbWVkaXVtLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5oaWRlLWZvci1sYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuc2hvdy1mb3ItbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSB7XG4gIC5oaWRlLWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaG93LWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5oaWRlLWZvci14bGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0Ljk5ODc1ZW0pIHtcbiAgLnNob3ctZm9yLXhsYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtYXgtd2lkdGg6IDg5Ljk5ODc1ZW0pIHtcbiAgLmhpZGUtZm9yLXhsYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5zaG93LWZvci14bGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuaGlkZS1mb3IteHhsYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODkuOTk4NzVlbSkge1xuICAuc2hvdy1mb3IteHhsYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuaGlkZS1mb3IteHhsYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4OS45OTg3NWVtKSB7XG4gIC5zaG93LWZvci14eGxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbi5zaG93LWZvci1zcixcbi5zaG93LW9uLWZvY3VzIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3JkZXI6IDA7IH1cblxuLnNob3ctb24tZm9jdXM6YWN0aXZlLCAuc2hvdy1vbi1mb2N1czpmb2N1cyB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGNsaXA6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IH1cblxuLnNob3ctZm9yLWxhbmRzY2FwZSxcbi5oaWRlLWZvci1wb3J0cmFpdCB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAgIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xuICAgIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gICAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbi5oaWRlLWZvci1sYW5kc2NhcGUsXG4uc2hvdy1mb3ItcG9ydHJhaXQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAgIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gICAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfSB9XG5cbi5hbGlnbi1sZWZ0IHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG5cbi5hbGlnbi1yaWdodCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cblxuLmFsaWduLWNlbnRlciB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG5cbi5hbGlnbi1qdXN0aWZ5IHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG5cbi5hbGlnbi1zcGFjZWQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDsgfVxuXG4uYWxpZ24tbGVmdC52ZXJ0aWNhbC5tZW51ID4gbGkgPiBhIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG5cbi5hbGlnbi1yaWdodC52ZXJ0aWNhbC5tZW51ID4gbGkgPiBhIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuXG4uYWxpZ24tY2VudGVyLnZlcnRpY2FsLm1lbnUgPiBsaSA+IGEge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4uYWxpZ24tdG9wIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cblxuLmFsaWduLXNlbGYtdG9wIHtcbiAgYWxpZ24tc2VsZjogZmxleC1zdGFydDsgfVxuXG4uYWxpZ24tYm90dG9tIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG5cbi5hbGlnbi1zZWxmLWJvdHRvbSB7XG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kOyB9XG5cbi5hbGlnbi1taWRkbGUge1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbi5hbGlnbi1zZWxmLW1pZGRsZSB7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjsgfVxuXG4uYWxpZ24tc3RyZXRjaCB7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG5cbi5hbGlnbi1zZWxmLXN0cmV0Y2gge1xuICBhbGlnbi1zZWxmOiBzdHJldGNoOyB9XG5cbi5hbGlnbi1jZW50ZXItbWlkZGxlIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4uc21hbGwtb3JkZXItMSB7XG4gIG9yZGVyOiAxOyB9XG5cbi5zbWFsbC1vcmRlci0yIHtcbiAgb3JkZXI6IDI7IH1cblxuLnNtYWxsLW9yZGVyLTMge1xuICBvcmRlcjogMzsgfVxuXG4uc21hbGwtb3JkZXItNCB7XG4gIG9yZGVyOiA0OyB9XG5cbi5zbWFsbC1vcmRlci01IHtcbiAgb3JkZXI6IDU7IH1cblxuLnNtYWxsLW9yZGVyLTYge1xuICBvcmRlcjogNjsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLW9yZGVyLTEge1xuICAgIG9yZGVyOiAxOyB9XG4gIC5tZWRpdW0tb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLm1lZGl1bS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAubWVkaXVtLW9yZGVyLTQge1xuICAgIG9yZGVyOiA0OyB9XG4gIC5tZWRpdW0tb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLm1lZGl1bS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1vcmRlci0xIHtcbiAgICBvcmRlcjogMTsgfVxuICAubGFyZ2Utb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLmxhcmdlLW9yZGVyLTMge1xuICAgIG9yZGVyOiAzOyB9XG4gIC5sYXJnZS1vcmRlci00IHtcbiAgICBvcmRlcjogNDsgfVxuICAubGFyZ2Utb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLmxhcmdlLW9yZGVyLTYge1xuICAgIG9yZGVyOiA2OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAueGxhcmdlLW9yZGVyLTEge1xuICAgIG9yZGVyOiAxOyB9XG4gIC54bGFyZ2Utb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLnhsYXJnZS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAueGxhcmdlLW9yZGVyLTQge1xuICAgIG9yZGVyOiA0OyB9XG4gIC54bGFyZ2Utb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLnhsYXJnZS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnh4bGFyZ2Utb3JkZXItMSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLnh4bGFyZ2Utb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLnh4bGFyZ2Utb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7IH1cbiAgLnh4bGFyZ2Utb3JkZXItNCB7XG4gICAgb3JkZXI6IDQ7IH1cbiAgLnh4bGFyZ2Utb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLnh4bGFyZ2Utb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7IH0gfVxuXG4uZmxleC1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4OyB9XG5cbi5mbGV4LWNoaWxkLWF1dG8ge1xuICBmbGV4OiAxIDEgYXV0bzsgfVxuXG4uZmxleC1jaGlsZC1ncm93IHtcbiAgZmxleDogMSAwIGF1dG87IH1cblxuLmZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgZmxleDogMCAxIGF1dG87IH1cblxuLmZsZXgtZGlyLXJvdyB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cblxuLmZsZXgtZGlyLXJvdy1yZXZlcnNlIHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9XG5cbi5mbGV4LWRpci1jb2x1bW4ge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG5cbi5mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLWZsZXgtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5tZWRpdW0tZmxleC1jaGlsZC1hdXRvIHtcbiAgICBmbGV4OiAxIDEgYXV0bzsgfVxuICAubWVkaXVtLWZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgZmxleDogMSAwIGF1dG87IH1cbiAgLm1lZGl1bS1mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87IH1cbiAgLm1lZGl1bS1mbGV4LWRpci1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgLm1lZGl1bS1mbGV4LWRpci1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9XG4gIC5tZWRpdW0tZmxleC1kaXItY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5tZWRpdW0tZmxleC1kaXItY29sdW1uLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1mbGV4LWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAubGFyZ2UtZmxleC1jaGlsZC1hdXRvIHtcbiAgICBmbGV4OiAxIDEgYXV0bzsgfVxuICAubGFyZ2UtZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bzsgfVxuICAubGFyZ2UtZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvOyB9XG4gIC5sYXJnZS1mbGV4LWRpci1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgLmxhcmdlLWZsZXgtZGlyLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cbiAgLmxhcmdlLWZsZXgtZGlyLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAubGFyZ2UtZmxleC1kaXItY29sdW1uLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS1mbGV4LWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAueGxhcmdlLWZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87IH1cbiAgLnhsYXJnZS1mbGV4LWNoaWxkLWdyb3cge1xuICAgIGZsZXg6IDEgMCBhdXRvOyB9XG4gIC54bGFyZ2UtZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvOyB9XG4gIC54bGFyZ2UtZmxleC1kaXItcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC54bGFyZ2UtZmxleC1kaXItcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAueGxhcmdlLWZsZXgtZGlyLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAueGxhcmdlLWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC54eGxhcmdlLWZsZXgtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gIC54eGxhcmdlLWZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87IH1cbiAgLnh4bGFyZ2UtZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bzsgfVxuICAueHhsYXJnZS1mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87IH1cbiAgLnh4bGFyZ2UtZmxleC1kaXItcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC54eGxhcmdlLWZsZXgtZGlyLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cbiAgLnh4bGFyZ2UtZmxleC1kaXItY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC54eGxhcmdlLWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH0gfVxuXG4uc2xpZGUtaW4tZG93bi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLWluLWRvd24ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cblxuLnNsaWRlLWluLWxlZnQubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1pbi1sZWZ0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XG5cbi5zbGlkZS1pbi11cC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtaW4tdXAubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cblxuLnNsaWRlLWluLXJpZ2h0Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1pbi1yaWdodC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxuXG4uc2xpZGUtb3V0LWRvd24ubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLW91dC1kb3duLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpOyB9XG5cbi5zbGlkZS1vdXQtcmlnaHQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLW91dC1yaWdodC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTsgfVxuXG4uc2xpZGUtb3V0LXVwLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1vdXQtdXAubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpOyB9XG5cbi5zbGlkZS1vdXQtbGVmdC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtb3V0LWxlZnQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpOyB9XG5cbi5mYWRlLWluLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5OyB9XG5cbi5mYWRlLWluLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgb3BhY2l0eTogMTsgfVxuXG4uZmFkZS1vdXQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7IH1cblxuLmZhZGUtb3V0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2UtaW4tZnJvbS10b3AubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLXRvcC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLWluLWZyb20tcmlnaHQubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLWluLWZyb20tcmlnaHQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1pbi1mcm9tLWJvdHRvbS5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b207XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2UtaW4tZnJvbS1ib3R0b20ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1pbi1mcm9tLWxlZnQubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLWxlZnQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1pbi1mcm9tLW1pZGRsZS14Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2UtaW4tZnJvbS1taWRkbGUteC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLWluLWZyb20tbWlkZGxlLXkubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLW1pZGRsZS15Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tdG9wLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3A7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tdG9wLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1yaWdodC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tcmlnaHQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSg5MGRlZyk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLW91dC1mcm9tLWJvdHRvbS5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLW91dC1mcm9tLWJvdHRvbS5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLW91dC1mcm9tLWxlZnQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tbGVmdC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS14Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tbWlkZGxlLXgubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCg5MGRlZyk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS15Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tbWlkZGxlLXkubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSg5MGRlZyk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNjYWxlLWluLXVwLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc2NhbGUtaW4tdXAubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zY2FsZS1pbi1kb3duLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc2NhbGUtaW4tZG93bi5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNjYWxlLW91dC11cC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zY2FsZS1vdXQtdXAubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNjYWxlLW91dC1kb3duLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNjYWxlLW91dC1kb3duLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjUpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zcGluLWluLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMC43NXR1cm4pO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNwaW4taW4ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc3Bpbi1vdXQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNwaW4tb3V0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMC43NXR1cm4pO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zcGluLWluLWNjdy5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMC43NXR1cm4pO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNwaW4taW4tY2N3Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNwaW4tb3V0LWNjdy5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc3Bpbi1vdXQtY2N3Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTAuNzV0dXJuKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc2xvdyB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDc1MG1zICFpbXBvcnRhbnQ7IH1cblxuLmZhc3Qge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyNTBtcyAhaW1wb3J0YW50OyB9XG5cbi5saW5lYXIge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyICFpbXBvcnRhbnQ7IH1cblxuLmVhc2Uge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZSAhaW1wb3J0YW50OyB9XG5cbi5lYXNlLWluIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4gIWltcG9ydGFudDsgfVxuXG4uZWFzZS1vdXQge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQgIWltcG9ydGFudDsgfVxuXG4uZWFzZS1pbi1vdXQge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQgIWltcG9ydGFudDsgfVxuXG4uYm91bmNlLWluIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50OyB9XG5cbi5ib3VuY2Utb3V0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuNTE1LCAwLjg0NSkgIWltcG9ydGFudDsgfVxuXG4uYm91bmNlLWluLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NiwgLTAuMjQ1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDsgfVxuXG4uc2hvcnQtZGVsYXkge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAzMDBtcyAhaW1wb3J0YW50OyB9XG5cbi5sb25nLWRlbGF5IHtcbiAgdHJhbnNpdGlvbi1kZWxheTogNzAwbXMgIWltcG9ydGFudDsgfVxuXG4uc2hha2Uge1xuICBhbmltYXRpb24tbmFtZTogc2hha2UtNzsgfVxuXG5Aa2V5ZnJhbWVzIHNoYWtlLTcge1xuICAwJSwgMTAlLCAyMCUsIDMwJSwgNDAlLCA1MCUsIDYwJSwgNzAlLCA4MCUsIDkwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDclKTsgfVxuICA1JSwgMTUlLCAyNSUsIDM1JSwgNDUlLCA1NSUsIDY1JSwgNzUlLCA4NSUsIDk1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC03JSk7IH0gfVxuXG4uc3Bpbi1jdyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzcGluLWN3LTF0dXJuOyB9XG5cbkBrZXlmcmFtZXMgc3Bpbi1jdy0xdHVybiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMXR1cm4pOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApOyB9IH1cblxuLnNwaW4tY2N3IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNwaW4tY2N3LTF0dXJuOyB9XG5cbkBrZXlmcmFtZXMgc3Bpbi1jY3ctMXR1cm4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTF0dXJuKTsgfSB9XG5cbi53aWdnbGUge1xuICBhbmltYXRpb24tbmFtZTogd2lnZ2xlLTdkZWc7IH1cblxuQGtleWZyYW1lcyB3aWdnbGUtN2RlZyB7XG4gIDQwJSwgNTAlLCA2MCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDdkZWcpOyB9XG4gIDM1JSwgNDUlLCA1NSUsIDY1JSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTdkZWcpOyB9XG4gIDAlLCAzMCUsIDcwJSwgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7IH0gfVxuXG4uc2hha2UsXG4uc3Bpbi1jdyxcbi5zcGluLWNjdyxcbi53aWdnbGUge1xuICBhbmltYXRpb24tZHVyYXRpb246IDUwMG1zOyB9XG5cbi5pbmZpbml0ZSB7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlOyB9XG5cbi5zbG93IHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiA3NTBtcyAhaW1wb3J0YW50OyB9XG5cbi5mYXN0IHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAyNTBtcyAhaW1wb3J0YW50OyB9XG5cbi5saW5lYXIge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXIgIWltcG9ydGFudDsgfVxuXG4uZWFzZSB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UgIWltcG9ydGFudDsgfVxuXG4uZWFzZS1pbiB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4gIWltcG9ydGFudDsgfVxuXG4uZWFzZS1vdXQge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dCAhaW1wb3J0YW50OyB9XG5cbi5lYXNlLWluLW91dCB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0ICFpbXBvcnRhbnQ7IH1cblxuLmJvdW5jZS1pbiB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50OyB9XG5cbi5ib3VuY2Utb3V0IHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC41MTUsIDAuODQ1KSAhaW1wb3J0YW50OyB9XG5cbi5ib3VuY2UtaW4tb3V0IHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzYsIC0wLjI0NSwgMC4yNCwgMS4yNDUpICFpbXBvcnRhbnQ7IH1cblxuLnNob3J0LWRlbGF5IHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAzMDBtcyAhaW1wb3J0YW50OyB9XG5cbi5sb25nLWRlbGF5IHtcbiAgYW5pbWF0aW9uLWRlbGF5OiA3MDBtcyAhaW1wb3J0YW50OyB9XG5cbi8qXG4gIE15IGN1c3RvbSBzdHlsZXM6XG4gIEFkZCB5b3VyIHNjc3MgZmlsZXMgYmVsb3cgdG8gc3RydWN0dXJlIHlvdXIgcHJvamVjdCBzdHlsZXNcbiovXG4uc2NyZWVuLXJlYWRlci10ZXh0IHtcbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHdpZHRoOiAxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLnNjcmVlbi1yZWFkZXItdGV4dDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMWYxZjE7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYm94LXNoYWRvdzogMCAwIDJweCAycHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBjbGlwOiBhdXRvICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMjE3NTliO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBsZWZ0OiA1cHg7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIHBhZGRpbmc6IDE1cHggMjNweCAxNHB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRvcDogNXB4O1xuICB3aWR0aDogYXV0bztcbiAgei1pbmRleDogMTAwMDAwOyB9XG5cbiN3cGFkbWluYmFyIHtcbiAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7IH1cblxuYm9keS5hZG1pbi1iYXIuZi10b3BiYXItZml4ZWQgLnN0aWNreS5maXhlZCB7XG4gIG1hcmdpbi10b3A6IDJyZW07IH1cblxuYm9keS5hZG1pbi1iYXIub2ZmY2FudmFzIC5vZmYtY2FudmFzLmlzLW9wZW4ge1xuICB0b3A6IDIuODc1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4LjkzNzVlbSkge1xuICAgIGJvZHkuYWRtaW4tYmFyLm9mZmNhbnZhcyAub2ZmLWNhbnZhcy5pcy1vcGVuIHtcbiAgICAgIHRvcDogMnJlbTsgfSB9XG5cbmJvZHkge1xuICBjb2xvcjogIzFkMWQxZDtcbiAgbGV0dGVyLXNwYWNpbmc6IDByZW07XG4gIC8qIENvbW1vbiBGZWF0dXJlZCBIZWFkZXIgU3R5bGVzICovXG4gIC8qIEdlbmVyYWwgU3R5bGVzIGZvciBNYWluIENvbnRhaW5lciAqL1xuICAvKkdlbmVyYWwgU3R5bGVzIGZvciBFeGhpYml0aW9ucyAqL1xuICAvKiBFbmQgTWFpbiBFeGhpYml0aW9uIFN0eWxlcyAqL1xuICAvKiBTdHlsZXMgZm9yIE9OTFkgdGhlIEN1cnJlbnQgRXhoaWJpdGlvbiAqL1xuICAvKiBTdHlsZXMgZm9yIEN1cnJlbnQvVXBjb21pbmcgRXhoaWJpdGlvbiBQYWdlICovXG4gIC8qIFVQQ09NSU5HIEVYSElCSVRJT05TIFBBR0UgKi9cbiAgLyogRW5kIFVwY29taW5nIEV4aGliaXRpb25zICovXG4gIC8qIEdBTExFUlkgRVZFTlRTIENBVEVHT1JZIFBBR0UgKi9cbiAgLyogZW5kIGdhbGxlcnkgZXZlbnRzIGNhdGVnb3J5IHBhZ2UgKi9cbiAgLyogU1RBUlQgUFVCTElDQVRJT05TIFBBR0UgKi9cbiAgLyogZW5kIHB1YmxpY2F0aW9ucyBsaXN0Ki9cbiAgLyogUEFTVCBFWEhJQklUSU9OIFNJTkdMRSBQQUdFIFRFTVBMQVRFICovXG4gIC8qIGVuZCBwYXN0IGV4aGliaXRpb24gc2luZ2xlIHBhZ2UgKi9cbiAgLyogUEFTVCBFWEhJQklUSU9OIENBVEVHT1JZIExJU1RJTkcgUEFHRSAqL1xuICAvKiBlbmQgcGFzdCBleGhpYml0aW9ucyBjYXRlZ29yeSBwYWdlICovXG4gIC8qIFBSRVNTIENBVEVHT1JZIFBBR0UgKi9cbiAgLyogRW5kIHByZXNzIGNhdGVnb3J5IHBhZ2UgKi9cbiAgLyogU1RBUlQgVklTSVRPUiBJTkZPUk1BVElPTiBQQUdFICovXG4gIC8qIEVuZCBWaXNpdG9yIEluZm9ybWF0aW9uIHBhZ2UgKi9cbiAgLyogU1RBUlQgUkVTRUFSQ0ggQU5EIExFQVJOIFBBR0UgKi9cbiAgLyogU1RBUlQgSk9JTiBVUyAqL1xuICAvKiBlbmQgam9pbiB1cyBwYWdlICovXG4gIC8qIFNUQVJUIFNJTkdMRSBDT0xMRUNUSU9OIFBBR0UgKi9cbiAgLyogRW5kIHNpbmdsZSBjb2xsZWN0aW9uIHBhZ2UgKi9cbiAgLyogU1RBUlQgQ09MTEVDVElPTiBDQVRFR09SWSBQQUdFICovXG4gIC8qIEdyaWQgZm9yIDEgb2ZmIHBhZ2VzICovXG4gIC8qIEVuZCBHcmlkIGZvciAxIE9mZiBQYWdlcyAqL1xuICAvKiBIT01FIFBBR0UgU1RZTEVTICovIH1cbiAgYm9keSAuYnV0dG9uLCBib2R5IC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiBib2R5IC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxZDFkMWQ7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtZmFtaWx5OiAnYmViYXNfbmV1ZWJvbGQnLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjJyZW07IH1cbiAgICBib2R5IC5idXR0b24ueWVsbG93LCBib2R5IC53cC1ibG9jay1idXR0b24gLnllbGxvdy53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gYm9keSAueWVsbG93LndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlMTAwO1xuICAgICAgY29sb3I6ICMxZDFkMWQ7IH1cbiAgICAgIGJvZHkgLmJ1dHRvbi55ZWxsb3c6aG92ZXIsIGJvZHkgLndwLWJsb2NrLWJ1dHRvbiAueWVsbG93LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiBib2R5IC55ZWxsb3cud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCBib2R5IC5idXR0b24ueWVsbG93OmZvY3VzLCBib2R5IC53cC1ibG9jay1idXR0b24gLnllbGxvdy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gYm9keSAueWVsbG93LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxZDFkMWQ7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgYm9keSAuYnV0dG9uOmhvdmVyLCBib2R5IC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiBib2R5IC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIge1xuICAgICAgY29sb3I6ICMxZDFkMWQ7IH1cbiAgYm9keSAud3AtY2FwdGlvbiA+IGZpZ2NhcHRpb24ge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICBjb2xvcjogIzk5OTtcbiAgICBwYWRkaW5nOiAwLjI1cmVtIDA7IH1cbiAgYm9keSBwLndwLWNhcHRpb24tdGV4dCB7XG4gICAgZm9udC1zaXplOiA5MCU7XG4gICAgY29sb3I6ICM2NjY7XG4gICAgcGFkZGluZzogMC42MjVyZW0gMDsgfVxuICBib2R5IC5hbGlnbmxlZnQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgbWFyZ2luOiAwOyB9XG4gIGJvZHkgLmFsaWducmlnaHQge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gICAgbWFyZ2luOiAwOyB9XG4gIGJvZHkgLmFsaWduY2VudGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgYm9keSAuZ2FsbGVyeSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgYm9keSAuZ2FsbGVyeSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICAgIGJvZHkgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTEgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuMjVyZW0pO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICBib2R5IC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy0xID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICBib2R5IC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy0xID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBib2R5IC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy0yID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgYm9keSAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtMiA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgYm9keSAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtMiA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBib2R5IC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy0zID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgYm9keSAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtMyA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgYm9keSAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtMyA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgICAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBib2R5IC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy00ID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgYm9keSAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtNCA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgYm9keSAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtNCA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBib2R5IC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy01ID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgYm9keSAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtNSA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgYm9keSAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtNSA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgICAgICB3aWR0aDogY2FsYygyMCUgLSAxLjg3NXJlbSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBib2R5IC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy02ID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgYm9keSAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtNiA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgYm9keSAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtNiA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgICAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjg3NXJlbSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBib2R5IC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy03ID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgYm9keSAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtNyA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgYm9keSAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtNyA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgICAgICB3aWR0aDogY2FsYygxNC4yODU3MSUgLSAxLjg3NXJlbSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBib2R5IC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy04ID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgYm9keSAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtOCA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgYm9keSAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtOCA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgICAgICB3aWR0aDogY2FsYygxMi41JSAtIDEuODc1cmVtKTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIGJvZHkgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTkgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuMjVyZW0pO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICBib2R5IC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy05ID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICBib2R5IC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy05ID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDExLjExMTExJSAtIDEuODc1cmVtKTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIGJvZHkgLmdhbGxlcnkgLmdhbGxlcnktaWNvbiA+IGEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgIGJvcmRlcjogc29saWQgNHB4ICNmZWZlZmU7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMTAsIDEwLCAxMCwgMC4yKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dDsgfVxuICAgICAgYm9keSAuZ2FsbGVyeSAuZ2FsbGVyeS1pY29uID4gYTpob3ZlciwgYm9keSAuZ2FsbGVyeSAuZ2FsbGVyeS1pY29uID4gYTpmb2N1cyB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCA2cHggMXB4IHJnYmEoMTM1LCAxMTMsIDcyLCAwLjUpOyB9XG4gICAgICBib2R5IC5nYWxsZXJ5IC5nYWxsZXJ5LWljb24gPiBhIGltYWdlIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAgIGJvZHkgLmdhbGxlcnkgLmdhbGxlcnktaWNvbiA+IGltZyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgYm9yZGVyOiBzb2xpZCA0cHggI2ZlZmVmZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgxMCwgMTAsIDEwLCAwLjIpO1xuICAgICAgbGluZS1oZWlnaHQ6IDA7IH1cbiAgYm9keSAuc2l0ZS1kZXNrdG9wLXRpdGxlIGEgI2Rlc2t0b3BMb2dvIHtcbiAgICBtYXgtd2lkdGg6IDI1MHB4O1xuICAgIG1hcmdpbi1yaWdodDogMXJlbTsgfVxuICBib2R5ICN0b3AtYmFyLXJpZ2h0LWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgICBib2R5ICN0b3AtYmFyLXJpZ2h0LWNvbnRlbnQgbGkuaXMtYWN0aXZlIC5zdWJtZW51LXRvZ2dsZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjODc3MTQ4OyB9XG4gICAgYm9keSAjdG9wLWJhci1yaWdodC1jb250ZW50IGxpLmlzLWFjdGl2ZSA6OmFmdGVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogI2ZmZiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsgfVxuICAgIGJvZHkgI3RvcC1iYXItcmlnaHQtY29udGVudCBsaS5pcy1hY3RpdmUgbGkuaXMtYWN0aXZlIGEge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBjb2xvcjogIzg3NzE0ODsgfVxuICBib2R5IC5zaXRlLWhlYWRlciB7XG4gICAgZm9udC1mYW1pbHk6ICdiZWJhc19uZXVlYm9sZCcsIHNhbnMtc2VyaWY7IH1cbiAgICBib2R5IC5zaXRlLWhlYWRlciAuc2l0ZS10aXRsZS1iYXIgI21vYmlsZVRvcFJvdyB7XG4gICAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgICAgIGJvZHkgLnNpdGUtaGVhZGVyIC5zaXRlLXRpdGxlLWJhciAjbW9iaWxlVG9wUm93OjpiZWZvcmUsIGJvZHkgLnNpdGUtaGVhZGVyIC5zaXRlLXRpdGxlLWJhciAjbW9iaWxlVG9wUm93OjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBjb250ZW50OiAnICc7XG4gICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgIG9yZGVyOiAxOyB9XG4gICAgICBib2R5IC5zaXRlLWhlYWRlciAuc2l0ZS10aXRsZS1iYXIgI21vYmlsZVRvcFJvdzo6YWZ0ZXIge1xuICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgYm9keSAuc2l0ZS1oZWFkZXIgLnNpdGUtdGl0bGUtYmFyICNtb2JpbGVUb3BSb3cgLm1lbnVJY29uV3JhcHBlciB7XG4gICAgICAgIHdpZHRoOiAxNi42NjY2NyU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzJmMmYyZjtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICBib2R5IC5zaXRlLWhlYWRlciAuc2l0ZS10aXRsZS1iYXIgI21vYmlsZVRvcFJvdyAubWVudUljb25XcmFwcGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgICAgYm9keSAuc2l0ZS1oZWFkZXIgLnNpdGUtdGl0bGUtYmFyICNtb2JpbGVUb3BSb3cgLm1lbnVJY29uV3JhcHBlciwgYm9keSAuc2l0ZS1oZWFkZXIgLnNpdGUtdGl0bGUtYmFyICNtb2JpbGVUb3BSb3cgLm1lbnVJY29uV3JhcHBlcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICBib2R5IC5zaXRlLWhlYWRlciAuc2l0ZS10aXRsZS1iYXIgI21vYmlsZVRvcFJvdyAubWVudUljb25XcmFwcGVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgICBib2R5IC5zaXRlLWhlYWRlciAuc2l0ZS10aXRsZS1iYXIgI21vYmlsZVRvcFJvdyAubWVudUljb25XcmFwcGVyIC5tZW51LWljb24ge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyZjJmMmY7IH1cbiAgICAgIGJvZHkgLnNpdGUtaGVhZGVyIC5zaXRlLXRpdGxlLWJhciAjbW9iaWxlVG9wUm93ICNoZWFkZXItd2lkZ2V0cy1tb2JpbGUge1xuICAgICAgICB3aWR0aDogODMuMzMzMzMlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlMTAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAjMmYyZjJmO1xuICAgICAgICBmb250LXNpemU6IDEuMnJlbTsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIGJvZHkgLnNpdGUtaGVhZGVyIC5zaXRlLXRpdGxlLWJhciAjbW9iaWxlVG9wUm93ICNoZWFkZXItd2lkZ2V0cy1tb2JpbGUge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgICBib2R5IC5zaXRlLWhlYWRlciAuc2l0ZS10aXRsZS1iYXIgI21vYmlsZVRvcFJvdyAjaGVhZGVyLXdpZGdldHMtbW9iaWxlLCBib2R5IC5zaXRlLWhlYWRlciAuc2l0ZS10aXRsZS1iYXIgI21vYmlsZVRvcFJvdyAjaGVhZGVyLXdpZGdldHMtbW9iaWxlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgIGJvZHkgLnNpdGUtaGVhZGVyIC5zaXRlLXRpdGxlLWJhciAjbW9iaWxlVG9wUm93ICNoZWFkZXItd2lkZ2V0cy1tb2JpbGU6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgYm9keSAuc2l0ZS1oZWFkZXIgLnNpdGUtdGl0bGUtYmFyICNtb2JpbGVUb3BSb3cgI2hlYWRlci13aWRnZXRzLW1vYmlsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAgICAgYm9keSAuc2l0ZS1oZWFkZXIgLnNpdGUtdGl0bGUtYmFyICNtb2JpbGVUb3BSb3cgI2hlYWRlci13aWRnZXRzLW1vYmlsZSAud2lkZ2V0X2N1c3RvbV9odG1sIHtcbiAgICAgICAgICBwYWRkaW5nOiAxcmVtIDByZW07IH1cbiAgICAgICAgICBib2R5IC5zaXRlLWhlYWRlciAuc2l0ZS10aXRsZS1iYXIgI21vYmlsZVRvcFJvdyAjaGVhZGVyLXdpZGdldHMtbW9iaWxlIC53aWRnZXRfY3VzdG9tX2h0bWwgI2J1c2luZXNzSG91cnMgaW1nIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMzBweDtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgICAgICAgIGJvZHkgLnNpdGUtaGVhZGVyIC5zaXRlLXRpdGxlLWJhciAjbW9iaWxlVG9wUm93ICNoZWFkZXItd2lkZ2V0cy1tb2JpbGUgLndpZGdldF9jdXN0b21faHRtbCAjYnVzaW5lc3NIb3VycyBzcGFuIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjFyZW07XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwLjI1cmVtOyB9XG4gICAgICAgICAgICBib2R5IC5zaXRlLWhlYWRlciAuc2l0ZS10aXRsZS1iYXIgI21vYmlsZVRvcFJvdyAjaGVhZGVyLXdpZGdldHMtbW9iaWxlIC53aWRnZXRfY3VzdG9tX2h0bWwgI2J1c2luZXNzSG91cnMgc3BhbiBiciB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICBib2R5IC5zaXRlLWhlYWRlciAuc2l0ZS10aXRsZS1iYXIgI21vYmlsZUJvdHRvbVJvdyAudGl0bGUtYmFyLXRpdGxlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICBib2R5IC5zaXRlLWhlYWRlciAuc2l0ZS10aXRsZS1iYXIgI21vYmlsZUJvdHRvbVJvdyAudGl0bGUtYmFyLXRpdGxlICNtb2JpbGVMb2dvIHtcbiAgICAgICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgICAgICAgcGFkZGluZzogMS41cmVtOyB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgICAgICBib2R5IC5zaXRlLWhlYWRlciAuc2l0ZS10aXRsZS1iYXIgI21vYmlsZUJvdHRvbVJvdyAudGl0bGUtYmFyLXRpdGxlICNtb2JpbGVMb2dvIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMjUwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICBib2R5IC5zaXRlLWhlYWRlciAudG9wLWJhciAudG9wLWJhci1sZWZ0IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSBhbmQgKG1heC13aWR0aDogODkuOTk4NzVlbSkge1xuICAgICAgYm9keSAuc2l0ZS1oZWFkZXIgLnRvcC1iYXIgLnRvcC1iYXItbGVmdCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICBib2R5IC5zaXRlLWhlYWRlciAudG9wLWJhciAjbWVudS1tYWluLW1lbnUge1xuICAgICAgICBtYXJnaW4tbGVmdDogMnJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgIGJvZHkgLnNpdGUtaGVhZGVyIC50b3AtYmFyICNtZW51LW1haW4tbWVudSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtOyB9IH1cbiAgICBib2R5IC5zaXRlLWhlYWRlciAudG9wLWJhciAjbWVudS1tYWluLW1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgIGZvbnQtZmFtaWx5OiAncm9ib3RvcmVndWxhcicsc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cbiAgICBib2R5IC5zaXRlLWhlYWRlciAudG9wLWJhciAjaGVhZGVyLXdpZGdldHMtZGVza3RvcCB7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIGNvbG9yOiAjMmYyZjJmO1xuICAgICAgcGFkZGluZzogMCAxcmVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZTEwMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBmb250LXNpemU6IDFyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIGJvZHkgLnNpdGUtaGVhZGVyIC50b3AtYmFyICNoZWFkZXItd2lkZ2V0cy1kZXNrdG9wIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuICAgICAgYm9keSAuc2l0ZS1oZWFkZXIgLnRvcC1iYXIgI2hlYWRlci13aWRnZXRzLWRlc2t0b3AgLndpZGdldF9jdXN0b21faHRtbCB7XG4gICAgICAgIHBhZGRpbmc6IDFyZW0gMHJlbTsgfVxuICAgICAgICBib2R5IC5zaXRlLWhlYWRlciAudG9wLWJhciAjaGVhZGVyLXdpZGdldHMtZGVza3RvcCAud2lkZ2V0X2N1c3RvbV9odG1sICNidXNpbmVzc0hvdXJzIGltZyB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAzNnB4O1xuICAgICAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgICAgICBib2R5IC5zaXRlLWhlYWRlciAudG9wLWJhciAjaGVhZGVyLXdpZGdldHMtZGVza3RvcCAud2lkZ2V0X2N1c3RvbV9odG1sICNidXNpbmVzc0hvdXJzIHNwYW4ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjFyZW07XG4gICAgICAgICAgbWFyZ2luLXRvcDogMC4yNXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgYm9keSAuZmVhdHVyZWQtaGVybyAuZmVhdHVyZWQtaGVybyB7XG4gICAgICBtaW4taGVpZ2h0OiAyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5IC5mZWF0dXJlZC1oZXJvIC5mZWF0dXJlZC1oZXJvIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDIwcmVtOyB9IH1cbiAgYm9keSAuZmVhdHVyZWQtaGVybyAucGFnZVRpdGxlQ29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICBib2R5IC5mZWF0dXJlZC1oZXJvIC5wYWdlVGl0bGVDb250YWluZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH0gfVxuICAgIGJvZHkgLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlIHtcbiAgICAgIC8qQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KXtcblx0XHRcdFx0XHRwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHRcdFx0XHRib3R0b206MCU7XG5cdFx0XHRcdFx0d2lkdGg6MTAwJTtcblx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLXJvdztcblx0XHRcdFx0fVxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCl7Ki9cbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgLyp9Ki8gfVxuICAgICAgYm9keSAuZmVhdHVyZWQtaGVybyAucGFnZVRpdGxlQ29udGFpbmVyIC5wYWdlVGl0bGU6OmJlZm9yZSwgYm9keSAuZmVhdHVyZWQtaGVybyAucGFnZVRpdGxlQ29udGFpbmVyIC5wYWdlVGl0bGU6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgb3JkZXI6IDE7IH1cbiAgICAgIGJvZHkgLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlOjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICBib2R5IC5mZWF0dXJlZC1oZXJvIC5wYWdlVGl0bGVDb250YWluZXIgLnBhZ2VUaXRsZSAudGl0bGVDb250YWluZXIge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgIGJvZHkgLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlIC50aXRsZUNvbnRhaW5lciB7XG4gICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkgLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlIC50aXRsZUNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICAgIGJvZHkgLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlIC50aXRsZUNvbnRhaW5lciwgYm9keSAuZmVhdHVyZWQtaGVybyAucGFnZVRpdGxlQ29udGFpbmVyIC5wYWdlVGl0bGUgLnRpdGxlQ29udGFpbmVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAgIGJvZHkgLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlIC50aXRsZUNvbnRhaW5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgICAgICBib2R5IC5mZWF0dXJlZC1oZXJvIC5wYWdlVGl0bGVDb250YWluZXIgLnBhZ2VUaXRsZSAudGl0bGVDb250YWluZXIge1xuICAgICAgICAgICAgd2lkdGg6IDY2LjY2NjY3JTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgYm9keSAuZmVhdHVyZWQtaGVybyAucGFnZVRpdGxlQ29udGFpbmVyIC5wYWdlVGl0bGUgLnRpdGxlQ29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgICAgICAgIGJvZHkgLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlIC50aXRsZUNvbnRhaW5lciwgYm9keSAuZmVhdHVyZWQtaGVybyAucGFnZVRpdGxlQ29udGFpbmVyIC5wYWdlVGl0bGUgLnRpdGxlQ29udGFpbmVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAgIGJvZHkgLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlIC50aXRsZUNvbnRhaW5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICAgIGJvZHkgLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlIC50aXRsZUNvbnRhaW5lciB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5IC5mZWF0dXJlZC1oZXJvIC5wYWdlVGl0bGVDb250YWluZXIgLnBhZ2VUaXRsZSAudGl0bGVDb250YWluZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAgICAgICBib2R5IC5mZWF0dXJlZC1oZXJvIC5wYWdlVGl0bGVDb250YWluZXIgLnBhZ2VUaXRsZSAudGl0bGVDb250YWluZXIsIGJvZHkgLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlIC50aXRsZUNvbnRhaW5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgICBib2R5IC5mZWF0dXJlZC1oZXJvIC5wYWdlVGl0bGVDb250YWluZXIgLnBhZ2VUaXRsZSAudGl0bGVDb250YWluZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgICAgIGJvZHkgLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlIC50aXRsZUNvbnRhaW5lciwgYm9keSAuZmVhdHVyZWQtaGVybyAucGFnZVRpdGxlQ29udGFpbmVyIC5wYWdlVGl0bGUgLnRpdGxlQ29udGFpbmVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAgIGJvZHkgLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlIC50aXRsZUNvbnRhaW5lciAuZW50cnlDYXRlZ29yeUNvbnRhaW5lciB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgICAgICAgIGJvZHkgLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlIC50aXRsZUNvbnRhaW5lciAuZW50cnlDYXRlZ29yeUNvbnRhaW5lciAuY2F0ZWdvcnkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZTEwMDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJ2JlYmFzX25ldWVib2xkJywnc2Fucy1zZXJpZic7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICAgIGJvZHkgLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlIC50aXRsZUNvbnRhaW5lciAuZW50cnlUaXRsZSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgY29sb3I6ICMxZDFkMWQ7XG4gICAgICAgICAgZm9udC1zaXplOiA0cmVtO1xuICAgICAgICAgIHdvcmQtd3JhcDogYW55d2hlcmU7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDAuODtcbiAgICAgICAgICBwYWRkaW5nOiAxcmVtOyB9XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICAgICAgYm9keSAuZmVhdHVyZWQtaGVybyAucGFnZVRpdGxlQ29udGFpbmVyIC5wYWdlVGl0bGUgLnRpdGxlQ29udGFpbmVyIC5lbnRyeVRpdGxlIHtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07IH0gfVxuICAgICAgICBib2R5IC5mZWF0dXJlZC1oZXJvIC5wYWdlVGl0bGVDb250YWluZXIgLnBhZ2VUaXRsZSAudGl0bGVDb250YWluZXIgLmVudHJ5RGF0ZSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAnYmViYXNfbmV1ZWJvbGQnLCdzYW5zLXNlcmlmJztcbiAgICAgICAgICBjb2xvcjogIzg3NzE0ODtcbiAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDAuOTtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMC4yNXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbTsgfVxuICAgICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgICBib2R5IC5mZWF0dXJlZC1oZXJvIC5wYWdlVGl0bGVDb250YWluZXIgLnBhZ2VUaXRsZSAudGl0bGVDb250YWluZXIgLmVudHJ5RGF0ZSB7XG4gICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgICAgIGJvZHkgLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlIC50aXRsZUNvbnRhaW5lciAuZW50cnlEYXRlLCBib2R5IC5mZWF0dXJlZC1oZXJvIC5wYWdlVGl0bGVDb250YWluZXIgLnBhZ2VUaXRsZSAudGl0bGVDb250YWluZXIgLmVudHJ5RGF0ZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICBib2R5IC5mZWF0dXJlZC1oZXJvIC5wYWdlVGl0bGVDb250YWluZXIgLnBhZ2VUaXRsZSAudGl0bGVDb250YWluZXIgLmVudHJ5RGF0ZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgICAgICAgIGJvZHkgLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlIC50aXRsZUNvbnRhaW5lciAuZW50cnlEYXRlIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07IH0gfVxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgICAgICAgIGJvZHkgLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlIC50aXRsZUNvbnRhaW5lciAuZW50cnlEYXRlIHtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfSB9XG4gICAgICAgICAgYm9keSAuZmVhdHVyZWQtaGVybyAucGFnZVRpdGxlQ29udGFpbmVyIC5wYWdlVGl0bGUgLnRpdGxlQ29udGFpbmVyIC5lbnRyeURhdGUgc3BhbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMC41O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgICAgICAgICAgYm9keSAuZmVhdHVyZWQtaGVybyAucGFnZVRpdGxlQ29udGFpbmVyIC5wYWdlVGl0bGUgLnRpdGxlQ29udGFpbmVyIC5lbnRyeURhdGUgc3BhbiB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzcmVtO1xuICAgICAgICAgICAgICAgIHRleHQtaW5kZW50OiAtM3JlbTtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzFkMWQxZDsgfSB9XG4gICAgICAgICAgICBib2R5IC5mZWF0dXJlZC1oZXJvIC5wYWdlVGl0bGVDb250YWluZXIgLnBhZ2VUaXRsZSAudGl0bGVDb250YWluZXIgLmVudHJ5RGF0ZSBzcGFuIGltZyB7XG4gICAgICAgICAgICAgIG1heC13aWR0aDogMzhweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gIGJvZHkgLmZlYXR1cmVkLWhlcm8jbWFpblBhZ2VIZWFkZXIgaDEuZW50cnlUaXRsZSB7XG4gICAgZm9udC1zaXplOiAzcmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgYm9keSAuZmVhdHVyZWQtaGVybyNtYWluUGFnZUhlYWRlciBoMS5lbnRyeVRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAycmVtOyB9IH1cbiAgYm9keSAubWFpbi1jb250YWluZXIge1xuICAgIG1heC13aWR0aDogNzVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDRyZW07IH1cbiAgICBib2R5IC5tYWluLWNvbnRhaW5lciAubWFpbi1ncmlkIHtcbiAgICAgIG1hcmdpbi10b3A6IDJyZW07IH1cbiAgICAgIGJvZHkgLm1haW4tY29udGFpbmVyIC5tYWluLWdyaWQgLm1haW4tY29udGVudCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAvKiBJbnRybyB0ZXh0IGZvciBwYWdlcyAqLyB9XG4gICAgICAgIGJvZHkgLm1haW4tY29udGFpbmVyIC5tYWluLWdyaWQgLm1haW4tY29udGVudCAud3AtYmxvY2stZ2FsbGVyeSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDBweDsgfVxuICAgICAgICBib2R5IC5tYWluLWNvbnRhaW5lciAubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQgLmludHJvVGV4dENvbnRhaW5lciB7XG4gICAgICAgICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDMuNXJlbTsgfVxuICAgICAgICAgIGJvZHkgLm1haW4tY29udGFpbmVyIC5tYWluLWdyaWQgLm1haW4tY29udGVudCAuaW50cm9UZXh0Q29udGFpbmVyOjpiZWZvcmUsIGJvZHkgLm1haW4tY29udGFpbmVyIC5tYWluLWdyaWQgLm1haW4tY29udGVudCAuaW50cm9UZXh0Q29udGFpbmVyOjphZnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgICAgICBvcmRlcjogMTsgfVxuICAgICAgICAgIGJvZHkgLm1haW4tY29udGFpbmVyIC5tYWluLWdyaWQgLm1haW4tY29udGVudCAuaW50cm9UZXh0Q29udGFpbmVyOjphZnRlciB7XG4gICAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICAgIGJvZHkgLm1haW4tY29udGFpbmVyIC5tYWluLWdyaWQgLm1haW4tY29udGVudCAuaW50cm9UZXh0Q29udGFpbmVyIC5pbnRyb1RleHQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAgICAgYm9keSAubWFpbi1jb250YWluZXIgLm1haW4tZ3JpZCAubWFpbi1jb250ZW50IC5pbnRyb1RleHRDb250YWluZXIgLmludHJvVGV4dCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDY2LjY2NjY3JTtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgICAgICAgICAgICAgICBib2R5IC5tYWluLWNvbnRhaW5lciAubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQgLmludHJvVGV4dENvbnRhaW5lciAuaW50cm9UZXh0LCBib2R5IC5tYWluLWNvbnRhaW5lciAubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQgLmludHJvVGV4dENvbnRhaW5lciAuaW50cm9UZXh0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgICAgICAgIGJvZHkgLm1haW4tY29udGFpbmVyIC5tYWluLWdyaWQgLm1haW4tY29udGVudCAuaW50cm9UZXh0Q29udGFpbmVyIC5pbnRyb1RleHQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgICAgICAgICAgICBib2R5IC5tYWluLWNvbnRhaW5lciAubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQgLmludHJvVGV4dENvbnRhaW5lciAuaW50cm9UZXh0LCBib2R5IC5tYWluLWNvbnRhaW5lciAubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQgLmludHJvVGV4dENvbnRhaW5lciAuaW50cm9UZXh0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAgICAgICAgIGJvZHkgLm1haW4tY29udGFpbmVyIC5tYWluLWdyaWQgLm1haW4tY29udGVudCAuaW50cm9UZXh0Q29udGFpbmVyIC5pbnRyb1RleHQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gICAgICAgICAgICAgICAgYm9keSAubWFpbi1jb250YWluZXIgLm1haW4tZ3JpZCAubWFpbi1jb250ZW50IC5pbnRyb1RleHRDb250YWluZXIgLmludHJvVGV4dCwgYm9keSAubWFpbi1jb250YWluZXIgLm1haW4tZ3JpZCAubWFpbi1jb250ZW50IC5pbnRyb1RleHRDb250YWluZXIgLmludHJvVGV4dDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAgICAgICBib2R5IC5tYWluLWNvbnRhaW5lciAubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQgLmludHJvVGV4dENvbnRhaW5lciAuaW50cm9UZXh0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICAgICAgICAgIGJvZHkgLm1haW4tY29udGFpbmVyIC5tYWluLWdyaWQgLm1haW4tY29udGVudCAuaW50cm9UZXh0Q29udGFpbmVyIC5pbnRyb1RleHQgcCB7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDByZW07IH1cbiAgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDA7IH1cbiAgICBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgaDIge1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMC45O1xuICAgICAgbWFyZ2luLXRvcDogMnJlbTsgfVxuICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBoMjpmaXJzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi10b3A6IDByZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtOyB9XG4gICAgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLmFydGljbGVUb3Age1xuICAgICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gICAgICBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAuYXJ0aWNsZVRvcDo6YmVmb3JlLCBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAuYXJ0aWNsZVRvcDo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY29udGVudDogJyAnO1xuICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICBvcmRlcjogMTsgfVxuICAgICAgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLmFydGljbGVUb3A6OmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgICAgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLmFydGljbGVUb3AgLmVudHJ5Q29udGVudFNwbGl0IHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAuYXJ0aWNsZVRvcCAuZW50cnlDb250ZW50U3BsaXQge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5hcnRpY2xlVG9wIC5lbnRyeUNvbnRlbnRTcGxpdCwgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLmFydGljbGVUb3AgLmVudHJ5Q29udGVudFNwbGl0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5hcnRpY2xlVG9wIC5lbnRyeUNvbnRlbnRTcGxpdDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5hcnRpY2xlVG9wIC5lbnRyeUNvbnRlbnRTcGxpdCB7XG4gICAgICAgICAgd2lkdGg6IDgzLjMzMzMzJTtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAuYXJ0aWNsZVRvcCAuZW50cnlDb250ZW50U3BsaXQge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5hcnRpY2xlVG9wIC5lbnRyeUNvbnRlbnRTcGxpdCwgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLmFydGljbGVUb3AgLmVudHJ5Q29udGVudFNwbGl0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5hcnRpY2xlVG9wIC5lbnRyeUNvbnRlbnRTcGxpdDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgICBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAuYXJ0aWNsZVRvcCAuZW50cnlDb250ZW50RnVsbCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAuYXJ0aWNsZVRvcCAuZW50cnlDb250ZW50RnVsbCB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5hcnRpY2xlVG9wIC5lbnRyeUNvbnRlbnRGdWxsLCBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAuYXJ0aWNsZVRvcCAuZW50cnlDb250ZW50RnVsbDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAuYXJ0aWNsZVRvcCAuZW50cnlDb250ZW50RnVsbDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgICAgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLmFydGljbGVUb3AgLnB1YmxpY2F0aW9uQ29udGVudCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2MzYzNjMztcbiAgICAgICAgICBtYXJnaW4tdG9wOiAycmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAuYXJ0aWNsZVRvcCAucHVibGljYXRpb25Db250ZW50IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgICAgICBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAuYXJ0aWNsZVRvcCAucHVibGljYXRpb25Db250ZW50LCBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAuYXJ0aWNsZVRvcCAucHVibGljYXRpb25Db250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5hcnRpY2xlVG9wIC5wdWJsaWNhdGlvbkNvbnRlbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAuYXJ0aWNsZVRvcCAucHVibGljYXRpb25Db250ZW50IHtcbiAgICAgICAgICB3aWR0aDogMTYuNjY2NjclO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMXJlbSAwcmVtIDEuNXJlbTsgfVxuICAgICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5hcnRpY2xlVG9wIC5wdWJsaWNhdGlvbkNvbnRlbnQsIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5hcnRpY2xlVG9wIC5wdWJsaWNhdGlvbkNvbnRlbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLmFydGljbGVUb3AgLnB1YmxpY2F0aW9uQ29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgICBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAuYXJ0aWNsZVRvcCAucHVibGljYXRpb25Db250ZW50IGltZyB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjc1cmVtO1xuICAgICAgICBtYXgtd2lkdGg6IDEyNXB4OyB9XG4gICAgICBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAuYXJ0aWNsZVRvcCAucHVibGljYXRpb25Db250ZW50IGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gICAgICBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAuYXJ0aWNsZVRvcCAucHVibGljYXRpb25Db250ZW50IHAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjsgfVxuICAgICAgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLmFydGljbGVUb3AgLnB1YmxpY2F0aW9uQ29udGVudCAucHVibGljYXRpb25QcmljZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnYmViYXNfbmV1ZWJvbGQnLCdzYW5zLXNlcmlmJztcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBtYXJnaW4tdG9wOiAwLjVyZW07IH1cbiAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5hcnRpY2xlVG9wIC5wdWJsaWNhdGlvbkNvbnRlbnQgLmJ1dHRvbiwgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLmFydGljbGVUb3AgLnB1YmxpY2F0aW9uQ29udGVudCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLmFydGljbGVUb3AgLnB1YmxpY2F0aW9uQ29udGVudCAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZTEwMDtcbiAgICAgICAgY29sb3I6ICMxZDFkMWQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4xcmVtO1xuICAgICAgICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTsgfVxuICAgICAgICBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAuYXJ0aWNsZVRvcCAucHVibGljYXRpb25Db250ZW50IC5idXR0b246aG92ZXIsIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5hcnRpY2xlVG9wIC5wdWJsaWNhdGlvbkNvbnRlbnQgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5hcnRpY2xlVG9wIC5wdWJsaWNhdGlvbkNvbnRlbnQgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLmFydGljbGVUb3AgLnB1YmxpY2F0aW9uQ29udGVudCAuYnV0dG9uOmZvY3VzLCBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAuYXJ0aWNsZVRvcCAucHVibGljYXRpb25Db250ZW50IC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAuYXJ0aWNsZVRvcCAucHVibGljYXRpb25Db250ZW50IC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxZDFkMWQ7XG4gICAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAuaW1hZ2VHYWxsZXJ5Q29udGFpbmVyIHtcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5pbWFnZUdhbGxlcnlDb250YWluZXI6OmJlZm9yZSwgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLmltYWdlR2FsbGVyeUNvbnRhaW5lcjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY29udGVudDogJyAnO1xuICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICBvcmRlcjogMTsgfVxuICAgICAgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLmltYWdlR2FsbGVyeUNvbnRhaW5lcjo6YWZ0ZXIge1xuICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLmltYWdlR2FsbGVyeUNvbnRhaW5lciAuaW1hZ2VHYWxsZXJ5IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5pbWFnZUdhbGxlcnlDb250YWluZXIgLmltYWdlR2FsbGVyeSB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5pbWFnZUdhbGxlcnlDb250YWluZXIgLmltYWdlR2FsbGVyeSwgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLmltYWdlR2FsbGVyeUNvbnRhaW5lciAuaW1hZ2VHYWxsZXJ5Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5pbWFnZUdhbGxlcnlDb250YWluZXIgLmltYWdlR2FsbGVyeTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5pbWFnZUdhbGxlcnlDb250YWluZXIgLmltYWdlR2FsbGVyeSB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9IH1cbiAgICBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAucHJlc3NDb250YWluZXIge1xuICAgICAgbWFyZ2luLXRvcDogNHJlbTsgfVxuICAgICAgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLnByZXNzQ29udGFpbmVyIC5wcmVzc1NlY3Rpb25UaXRsZSB7XG4gICAgICAgIG1heC13aWR0aDogNzVyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgICAgICAgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLnByZXNzQ29udGFpbmVyIC5wcmVzc1NlY3Rpb25UaXRsZTo6YmVmb3JlLCBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAucHJlc3NDb250YWluZXIgLnByZXNzU2VjdGlvblRpdGxlOjphZnRlciB7XG4gICAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgICAgY29udGVudDogJyAnO1xuICAgICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgICAgb3JkZXI6IDE7IH1cbiAgICAgICAgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLnByZXNzQ29udGFpbmVyIC5wcmVzc1NlY3Rpb25UaXRsZTo6YWZ0ZXIge1xuICAgICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NTZWN0aW9uVGl0bGUgLnRpdGxlQ29udGFpbmVyIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NTZWN0aW9uVGl0bGUgLnRpdGxlQ29udGFpbmVyIHtcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICAgICAgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLnByZXNzQ29udGFpbmVyIC5wcmVzc1NlY3Rpb25UaXRsZSAudGl0bGVDb250YWluZXIsIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NTZWN0aW9uVGl0bGUgLnRpdGxlQ29udGFpbmVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NTZWN0aW9uVGl0bGUgLnRpdGxlQ29udGFpbmVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICAgICAgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLnByZXNzQ29udGFpbmVyIC5wcmVzc1NlY3Rpb25UaXRsZSAudGl0bGVDb250YWluZXIgaDIge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnYmViYXNfbmV1ZXJlZ3VsYXInLCdzYW5zLXNlcmlmJztcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA1cmVtO1xuICAgICAgICAgICAgY29sb3I6ICMxZDFkMWQ7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzFkMWQxZDsgfVxuICAgICAgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLnByZXNzQ29udGFpbmVyIC5wcmVzc0l0ZW0ge1xuICAgICAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NJdGVtOjpiZWZvcmUsIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NJdGVtOjphZnRlciB7XG4gICAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgICAgY29udGVudDogJyAnO1xuICAgICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgICAgb3JkZXI6IDE7IH1cbiAgICAgICAgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLnByZXNzQ29udGFpbmVyIC5wcmVzc0l0ZW06OmFmdGVyIHtcbiAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAucHJlc3NDb250YWluZXIgLnByZXNzSXRlbSAucHJlc3NJdGVtV3JhcHBlciB7XG4gICAgICAgICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTsgfVxuICAgICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NJdGVtIC5wcmVzc0l0ZW1XcmFwcGVyOjpiZWZvcmUsIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NJdGVtIC5wcmVzc0l0ZW1XcmFwcGVyOjphZnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgICAgICBvcmRlcjogMTsgfVxuICAgICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NJdGVtIC5wcmVzc0l0ZW1XcmFwcGVyOjphZnRlciB7XG4gICAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgICBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAucHJlc3NDb250YWluZXIgLnByZXNzSXRlbSAucHJlc3NJdGVtV3JhcHBlciB7XG4gICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NJdGVtIC5wcmVzc0l0ZW1XcmFwcGVyLCBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAucHJlc3NDb250YWluZXIgLnByZXNzSXRlbSAucHJlc3NJdGVtV3JhcHBlcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAucHJlc3NDb250YWluZXIgLnByZXNzSXRlbSAucHJlc3NJdGVtV3JhcHBlcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NJdGVtIC5wcmVzc0l0ZW1XcmFwcGVyLCBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAucHJlc3NDb250YWluZXIgLnByZXNzSXRlbSAucHJlc3NJdGVtV3JhcHBlcjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lOyB9XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgICAgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLnByZXNzQ29udGFpbmVyIC5wcmVzc0l0ZW0gLnByZXNzSXRlbVdyYXBwZXIgLnByZXNzSW1hZ2VDb250YWluZXIge1xuICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q3ZDdkNztcbiAgICAgICAgICAgICAgcGFkZGluZzogMHJlbSAxcmVtIDJyZW0gMHJlbSAhaW1wb3J0YW50OyB9IH1cbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgICBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAucHJlc3NDb250YWluZXIgLnByZXNzSXRlbSAucHJlc3NJdGVtV3JhcHBlciAucHJlc3NJbWFnZUNvbnRhaW5lciB7XG4gICAgICAgICAgICAgIHdpZHRoOiAzMy4zMzMzMyU7XG4gICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLnByZXNzQ29udGFpbmVyIC5wcmVzc0l0ZW0gLnByZXNzSXRlbVdyYXBwZXIgLnByZXNzSW1hZ2VDb250YWluZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICAgICAgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLnByZXNzQ29udGFpbmVyIC5wcmVzc0l0ZW0gLnByZXNzSXRlbVdyYXBwZXIgLnByZXNzSW1hZ2VDb250YWluZXIsIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NJdGVtIC5wcmVzc0l0ZW1XcmFwcGVyIC5wcmVzc0ltYWdlQ29udGFpbmVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NJdGVtIC5wcmVzc0l0ZW1XcmFwcGVyIC5wcmVzc0ltYWdlQ29udGFpbmVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NJdGVtIC5wcmVzc0l0ZW1XcmFwcGVyIC5wcmVzc0ltYWdlQ29udGFpbmVyIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDQxLjY2NjY3JTtcbiAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLnByZXNzQ29udGFpbmVyIC5wcmVzc0l0ZW0gLnByZXNzSXRlbVdyYXBwZXIgLnByZXNzSW1hZ2VDb250YWluZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAgICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NJdGVtIC5wcmVzc0l0ZW1XcmFwcGVyIC5wcmVzc0ltYWdlQ29udGFpbmVyLCBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAucHJlc3NDb250YWluZXIgLnByZXNzSXRlbSAucHJlc3NJdGVtV3JhcHBlciAucHJlc3NJbWFnZUNvbnRhaW5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgICAgICBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAucHJlc3NDb250YWluZXIgLnByZXNzSXRlbSAucHJlc3NJdGVtV3JhcHBlciAucHJlc3NJbWFnZUNvbnRhaW5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NJdGVtIC5wcmVzc0l0ZW1XcmFwcGVyIC5wcmVzc0ltYWdlQ29udGFpbmVyIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgICAgICAgICAgICAgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLnByZXNzQ29udGFpbmVyIC5wcmVzc0l0ZW0gLnByZXNzSXRlbVdyYXBwZXIgLnByZXNzSW1hZ2VDb250YWluZXIsIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NJdGVtIC5wcmVzc0l0ZW1XcmFwcGVyIC5wcmVzc0ltYWdlQ29udGFpbmVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NJdGVtIC5wcmVzc0l0ZW1XcmFwcGVyIC5wcmVzc0ltYWdlQ29udGFpbmVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgICAgICAgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLnByZXNzQ29udGFpbmVyIC5wcmVzc0l0ZW0gLnByZXNzSXRlbVdyYXBwZXIgLnByZXNzSW1hZ2VDb250YWluZXIgLnByZXNzSW1hZ2Uge1xuICAgICAgICAgICAgbWluLWhlaWdodDogMjAwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgICAgICBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAucHJlc3NDb250YWluZXIgLnByZXNzSXRlbSAucHJlc3NJdGVtV3JhcHBlciAucHJlc3NJbWFnZUNvbnRhaW5lciAucHJlc3NJbWFnZSB7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMjcwcHg7IH0gfVxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NJdGVtIC5wcmVzc0l0ZW1XcmFwcGVyIC5wcmVzc0RldGFpbHMge1xuICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q3ZDdkNztcbiAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDJyZW07IH0gfVxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NJdGVtIC5wcmVzc0l0ZW1XcmFwcGVyIC5wcmVzc0RldGFpbHMge1xuICAgICAgICAgICAgICB3aWR0aDogNjYuNjY2NjclO1xuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NJdGVtIC5wcmVzc0l0ZW1XcmFwcGVyIC5wcmVzc0RldGFpbHMge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICAgICAgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLnByZXNzQ29udGFpbmVyIC5wcmVzc0l0ZW0gLnByZXNzSXRlbVdyYXBwZXIgLnByZXNzRGV0YWlscywgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLnByZXNzQ29udGFpbmVyIC5wcmVzc0l0ZW0gLnByZXNzSXRlbVdyYXBwZXIgLnByZXNzRGV0YWlsczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgICAgICBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAucHJlc3NDb250YWluZXIgLnByZXNzSXRlbSAucHJlc3NJdGVtV3JhcHBlciAucHJlc3NEZXRhaWxzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NJdGVtIC5wcmVzc0l0ZW1XcmFwcGVyIC5wcmVzc0RldGFpbHMge1xuICAgICAgICAgICAgICB3aWR0aDogNTguMzMzMzMlO1xuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAucHJlc3NDb250YWluZXIgLnByZXNzSXRlbSAucHJlc3NJdGVtV3JhcHBlciAucHJlc3NEZXRhaWxzIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgICAgICAgICBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAucHJlc3NDb250YWluZXIgLnByZXNzSXRlbSAucHJlc3NJdGVtV3JhcHBlciAucHJlc3NEZXRhaWxzLCBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAucHJlc3NDb250YWluZXIgLnByZXNzSXRlbSAucHJlc3NJdGVtV3JhcHBlciAucHJlc3NEZXRhaWxzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NJdGVtIC5wcmVzc0l0ZW1XcmFwcGVyIC5wcmVzc0RldGFpbHM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAgICAgICBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAucHJlc3NDb250YWluZXIgLnByZXNzSXRlbSAucHJlc3NJdGVtV3JhcHBlciAucHJlc3NEZXRhaWxzIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAucHJlc3NDb250YWluZXIgLnByZXNzSXRlbSAucHJlc3NJdGVtV3JhcHBlciAucHJlc3NEZXRhaWxzIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAgICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NJdGVtIC5wcmVzc0l0ZW1XcmFwcGVyIC5wcmVzc0RldGFpbHMsIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NJdGVtIC5wcmVzc0l0ZW1XcmFwcGVyIC5wcmVzc0RldGFpbHM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAgICAgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLnByZXNzQ29udGFpbmVyIC5wcmVzc0l0ZW0gLnByZXNzSXRlbVdyYXBwZXIgLnByZXNzRGV0YWlsczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NJdGVtIC5wcmVzc0l0ZW1XcmFwcGVyIC5wcmVzc0RldGFpbHMgLnByZXNzT3JnRGF0ZUNvbnRhaW5lciB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJ2JlYmFzX25ldWVib2xkJywnc2Fucy1zZXJpZic7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMXJlbTtcbiAgICAgICAgICAgIG1heC13aWR0aDogNzVyZW07XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgICAgICAgICAgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLnByZXNzQ29udGFpbmVyIC5wcmVzc0l0ZW0gLnByZXNzSXRlbVdyYXBwZXIgLnByZXNzRGV0YWlscyAucHJlc3NPcmdEYXRlQ29udGFpbmVyOjpiZWZvcmUsIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NJdGVtIC5wcmVzc0l0ZW1XcmFwcGVyIC5wcmVzc0RldGFpbHMgLnByZXNzT3JnRGF0ZUNvbnRhaW5lcjo6YWZ0ZXIge1xuICAgICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICAgICAgY29udGVudDogJyAnO1xuICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICAgICAgICBvcmRlcjogMTsgfVxuICAgICAgICAgICAgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLnByZXNzQ29udGFpbmVyIC5wcmVzc0l0ZW0gLnByZXNzSXRlbVdyYXBwZXIgLnByZXNzRGV0YWlscyAucHJlc3NPcmdEYXRlQ29udGFpbmVyOjphZnRlciB7XG4gICAgICAgICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAgICAgICBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAucHJlc3NDb250YWluZXIgLnByZXNzSXRlbSAucHJlc3NJdGVtV3JhcHBlciAucHJlc3NEZXRhaWxzIC5wcmVzc09yZ0RhdGVDb250YWluZXIgLnByZXNzT3JnIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmUxMDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDAuMTVyZW0gMXJlbTtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNDVyZW07IH1cbiAgICAgICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NJdGVtIC5wcmVzc0l0ZW1XcmFwcGVyIC5wcmVzc0RldGFpbHMgLnByZXNzT3JnRGF0ZUNvbnRhaW5lciAucHJlc3NEYXRlIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTVlNWU1O1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDAuMTVyZW0gMXJlbTsgfVxuICAgICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NJdGVtIC5wcmVzc0l0ZW1XcmFwcGVyIC5wcmVzc0RldGFpbHMgLnByZXNzVGl0bGUge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luOiAwLjVyZW0gMDsgfVxuICAgICAgICAgICAgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLnByZXNzQ29udGFpbmVyIC5wcmVzc0l0ZW0gLnByZXNzSXRlbVdyYXBwZXIgLnByZXNzRGV0YWlscyAucHJlc3NUaXRsZTo6YmVmb3JlLCBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAucHJlc3NDb250YWluZXIgLnByZXNzSXRlbSAucHJlc3NJdGVtV3JhcHBlciAucHJlc3NEZXRhaWxzIC5wcmVzc1RpdGxlOjphZnRlciB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgICAgICBjb250ZW50OiAnICc7XG4gICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgICAgICAgIG9yZGVyOiAxOyB9XG4gICAgICAgICAgICBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAucHJlc3NDb250YWluZXIgLnByZXNzSXRlbSAucHJlc3NJdGVtV3JhcHBlciAucHJlc3NEZXRhaWxzIC5wcmVzc1RpdGxlOjphZnRlciB7XG4gICAgICAgICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAgICAgICBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAucHJlc3NDb250YWluZXIgLnByZXNzSXRlbSAucHJlc3NJdGVtV3JhcHBlciAucHJlc3NEZXRhaWxzIC5wcmVzc1RpdGxlIGgzIHtcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICAgIGNvbG9yOiAjMWQxZDFkO1xuICAgICAgICAgICAgICBmb250LWZhbWlseTogJ3JvYm90b3JlZ3VsYXInLCdzYW5zLXNlcmlmJztcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yOyB9XG4gICAgICAgICAgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLnByZXNzQ29udGFpbmVyIC5wcmVzc0l0ZW0gLnByZXNzSXRlbVdyYXBwZXIgLnByZXNzRGV0YWlscyAucHJlc3NEZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgICAgICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NJdGVtIC5wcmVzc0l0ZW1XcmFwcGVyIC5wcmVzc0RldGFpbHMgLnByZXNzRGVzY3JpcHRpb246OmJlZm9yZSwgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLnByZXNzQ29udGFpbmVyIC5wcmVzc0l0ZW0gLnByZXNzSXRlbVdyYXBwZXIgLnByZXNzRGV0YWlscyAucHJlc3NEZXNjcmlwdGlvbjo6YWZ0ZXIge1xuICAgICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICAgICAgY29udGVudDogJyAnO1xuICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICAgICAgICBvcmRlcjogMTsgfVxuICAgICAgICAgICAgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLnByZXNzQ29udGFpbmVyIC5wcmVzc0l0ZW0gLnByZXNzSXRlbVdyYXBwZXIgLnByZXNzRGV0YWlscyAucHJlc3NEZXNjcmlwdGlvbjo6YWZ0ZXIge1xuICAgICAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NJdGVtIC5wcmVzc0l0ZW1XcmFwcGVyIC5wcmVzc0RldGFpbHMgLnByZXNzTGluayB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgICAgICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NJdGVtIC5wcmVzc0l0ZW1XcmFwcGVyIC5wcmVzc0RldGFpbHMgLnByZXNzTGluazo6YmVmb3JlLCBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAucHJlc3NDb250YWluZXIgLnByZXNzSXRlbSAucHJlc3NJdGVtV3JhcHBlciAucHJlc3NEZXRhaWxzIC5wcmVzc0xpbms6OmFmdGVyIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgICAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgICAgICAgb3JkZXI6IDE7IH1cbiAgICAgICAgICAgIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NJdGVtIC5wcmVzc0l0ZW1XcmFwcGVyIC5wcmVzc0RldGFpbHMgLnByZXNzTGluazo6YWZ0ZXIge1xuICAgICAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICAgICAgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLnByZXNzQ29udGFpbmVyIC5wcmVzc0l0ZW0gLnByZXNzSXRlbVdyYXBwZXIgLnByZXNzRGV0YWlscyAucHJlc3NMaW5rIC5idXR0b24sIGJvZHkgLmV4aGliaXRpb24gLm1haW4tY29udGVudCBhcnRpY2xlIC5wcmVzc0NvbnRhaW5lciAucHJlc3NJdGVtIC5wcmVzc0l0ZW1XcmFwcGVyIC5wcmVzc0RldGFpbHMgLnByZXNzTGluayAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLnByZXNzQ29udGFpbmVyIC5wcmVzc0l0ZW0gLnByZXNzSXRlbVdyYXBwZXIgLnByZXNzRGV0YWlscyAucHJlc3NMaW5rIC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG4gICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgICAgICAgICAgICBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAucHJlc3NDb250YWluZXIgLnByZXNzSXRlbSAucHJlc3NJdGVtV3JhcHBlciAucHJlc3NEZXRhaWxzIC5wcmVzc0xpbmsgLmJ1dHRvbiwgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLnByZXNzQ29udGFpbmVyIC5wcmVzc0l0ZW0gLnByZXNzSXRlbVdyYXBwZXIgLnByZXNzRGV0YWlscyAucHJlc3NMaW5rIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiBib2R5IC5leGhpYml0aW9uIC5tYWluLWNvbnRlbnQgYXJ0aWNsZSAucHJlc3NDb250YWluZXIgLnByZXNzSXRlbSAucHJlc3NJdGVtV3JhcHBlciAucHJlc3NEZXRhaWxzIC5wcmVzc0xpbmsgLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgICAgYm9keSAuZXhoaWJpdGlvbiAubWFpbi1jb250ZW50IGFydGljbGUgLnByZXNzQ29udGFpbmVyIC5wcmVzc0l0ZW0yIHtcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2MzYzNjMztcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2MzYzNjMzsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICBib2R5ICNjdXJyZW50RXhoaWJpdGlvbiAuZmVhdHVyZWQtaGVybyB7XG4gICAgICBtaW4taGVpZ2h0OiA0MHJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICBib2R5IC5jdXJyZW50VXBjb21pbmdFeGhpYml0aW9uIC5mZWF0dXJlZC1oZXJvIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDE4cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkgLmN1cnJlbnRVcGNvbWluZ0V4aGliaXRpb24gLmZlYXR1cmVkLWhlcm8ge1xuICAgICAgbWluLWhlaWdodDogMjByZW07IH0gfVxuICBib2R5IC5jdXJyZW50VXBjb21pbmdFeGhpYml0aW9uIC5mZWF0dXJlZC1oZXJvIC5wYWdlVGl0bGVDb250YWluZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIGJvZHkgLmN1cnJlbnRVcGNvbWluZ0V4aGliaXRpb24gLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgYm9keSAuY3VycmVudFVwY29taW5nRXhoaWJpdGlvbiAuZmVhdHVyZWQtaGVybyAucGFnZVRpdGxlQ29udGFpbmVyIC5wYWdlVGl0bGUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gICAgICAgIGJvZHkgLmN1cnJlbnRVcGNvbWluZ0V4aGliaXRpb24gLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlOjpiZWZvcmUsIGJvZHkgLmN1cnJlbnRVcGNvbWluZ0V4aGliaXRpb24gLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlOjphZnRlciB7XG4gICAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgICAgY29udGVudDogJyAnO1xuICAgICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgICAgb3JkZXI6IDE7IH1cbiAgICAgICAgYm9keSAuY3VycmVudFVwY29taW5nRXhoaWJpdGlvbiAuZmVhdHVyZWQtaGVybyAucGFnZVRpdGxlQ29udGFpbmVyIC5wYWdlVGl0bGU6OmFmdGVyIHtcbiAgICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgYm9keSAuY3VycmVudFVwY29taW5nRXhoaWJpdGlvbiAuZmVhdHVyZWQtaGVybyAucGFnZVRpdGxlQ29udGFpbmVyIC5wYWdlVGl0bGUge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gICAgICAgIGJvZHkgLmN1cnJlbnRVcGNvbWluZ0V4aGliaXRpb24gLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlOjpiZWZvcmUsIGJvZHkgLmN1cnJlbnRVcGNvbWluZ0V4aGliaXRpb24gLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlOjphZnRlciB7XG4gICAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgICAgY29udGVudDogJyAnO1xuICAgICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgICAgb3JkZXI6IDE7IH1cbiAgICAgICAgYm9keSAuY3VycmVudFVwY29taW5nRXhoaWJpdGlvbiAuZmVhdHVyZWQtaGVybyAucGFnZVRpdGxlQ29udGFpbmVyIC5wYWdlVGl0bGU6OmFmdGVyIHtcbiAgICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gICAgYm9keSAuY3VycmVudFVwY29taW5nRXhoaWJpdGlvbiAuZmVhdHVyZWQtaGVybyAucGFnZVRpdGxlQ29udGFpbmVyIC5wYWdlVGl0bGUgLnRpdGxlQ29udGFpbmVyIHtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICBib2R5IC5jdXJyZW50VXBjb21pbmdFeGhpYml0aW9uIC5mZWF0dXJlZC1oZXJvIC5wYWdlVGl0bGVDb250YWluZXIgLnBhZ2VUaXRsZSAudGl0bGVDb250YWluZXIge1xuICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgYm9keSAuY3VycmVudFVwY29taW5nRXhoaWJpdGlvbiAuZmVhdHVyZWQtaGVybyAucGFnZVRpdGxlQ29udGFpbmVyIC5wYWdlVGl0bGUgLnRpdGxlQ29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICBib2R5IC5jdXJyZW50VXBjb21pbmdFeGhpYml0aW9uIC5mZWF0dXJlZC1oZXJvIC5wYWdlVGl0bGVDb250YWluZXIgLnBhZ2VUaXRsZSAudGl0bGVDb250YWluZXIsIGJvZHkgLmN1cnJlbnRVcGNvbWluZ0V4aGliaXRpb24gLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlIC50aXRsZUNvbnRhaW5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICBib2R5IC5jdXJyZW50VXBjb21pbmdFeGhpYml0aW9uIC5mZWF0dXJlZC1oZXJvIC5wYWdlVGl0bGVDb250YWluZXIgLnBhZ2VUaXRsZSAudGl0bGVDb250YWluZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgICAgYm9keSAuY3VycmVudFVwY29taW5nRXhoaWJpdGlvbiAuZmVhdHVyZWQtaGVybyAucGFnZVRpdGxlQ29udGFpbmVyIC5wYWdlVGl0bGUgLnRpdGxlQ29udGFpbmVyIHtcbiAgICAgICAgICB3aWR0aDogNjYuNjY2NjclO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5IC5jdXJyZW50VXBjb21pbmdFeGhpYml0aW9uIC5mZWF0dXJlZC1oZXJvIC5wYWdlVGl0bGVDb250YWluZXIgLnBhZ2VUaXRsZSAudGl0bGVDb250YWluZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgICAgICBib2R5IC5jdXJyZW50VXBjb21pbmdFeGhpYml0aW9uIC5mZWF0dXJlZC1oZXJvIC5wYWdlVGl0bGVDb250YWluZXIgLnBhZ2VUaXRsZSAudGl0bGVDb250YWluZXIsIGJvZHkgLmN1cnJlbnRVcGNvbWluZ0V4aGliaXRpb24gLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlIC50aXRsZUNvbnRhaW5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICBib2R5IC5jdXJyZW50VXBjb21pbmdFeGhpYml0aW9uIC5mZWF0dXJlZC1oZXJvIC5wYWdlVGl0bGVDb250YWluZXIgLnBhZ2VUaXRsZSAudGl0bGVDb250YWluZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICBib2R5IC5jdXJyZW50VXBjb21pbmdFeGhpYml0aW9uIC5mZWF0dXJlZC1oZXJvIC5wYWdlVGl0bGVDb250YWluZXIgLnBhZ2VUaXRsZSAudGl0bGVDb250YWluZXIge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkgLmN1cnJlbnRVcGNvbWluZ0V4aGliaXRpb24gLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlIC50aXRsZUNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAgICAgYm9keSAuY3VycmVudFVwY29taW5nRXhoaWJpdGlvbiAuZmVhdHVyZWQtaGVybyAucGFnZVRpdGxlQ29udGFpbmVyIC5wYWdlVGl0bGUgLnRpdGxlQ29udGFpbmVyLCBib2R5IC5jdXJyZW50VXBjb21pbmdFeGhpYml0aW9uIC5mZWF0dXJlZC1oZXJvIC5wYWdlVGl0bGVDb250YWluZXIgLnBhZ2VUaXRsZSAudGl0bGVDb250YWluZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgYm9keSAuY3VycmVudFVwY29taW5nRXhoaWJpdGlvbiAuZmVhdHVyZWQtaGVybyAucGFnZVRpdGxlQ29udGFpbmVyIC5wYWdlVGl0bGUgLnRpdGxlQ29udGFpbmVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICAgIGJvZHkgLmN1cnJlbnRVcGNvbWluZ0V4aGliaXRpb24gLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlIC50aXRsZUNvbnRhaW5lciwgYm9keSAuY3VycmVudFVwY29taW5nRXhoaWJpdGlvbiAuZmVhdHVyZWQtaGVybyAucGFnZVRpdGxlQ29udGFpbmVyIC5wYWdlVGl0bGUgLnRpdGxlQ29udGFpbmVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIGJvZHkgLmN1cnJlbnRVcGNvbWluZ0V4aGliaXRpb24gLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlIC50aXRsZUNvbnRhaW5lciAuZW50cnlDYXRlZ29yeUNvbnRhaW5lciB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgIGJvZHkgLmN1cnJlbnRVcGNvbWluZ0V4aGliaXRpb24gLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlIC50aXRsZUNvbnRhaW5lciAuZW50cnlDYXRlZ29yeUNvbnRhaW5lciAuY2F0ZWdvcnkge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmUxMDA7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBmb250LWZhbWlseTogJ2JlYmFzX25ldWVib2xkJywnc2Fucy1zZXJpZic7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgcGFkZGluZzogMC4yNXJlbSAxcmVtO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgYm9keSAuY3VycmVudFVwY29taW5nRXhoaWJpdGlvbiAuZmVhdHVyZWQtaGVybyAucGFnZVRpdGxlQ29udGFpbmVyIC5wYWdlVGl0bGUgLnRpdGxlQ29udGFpbmVyIC5lbnRyeVRpdGxlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgY29sb3I6ICMxZDFkMWQ7XG4gICAgICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDAuODtcbiAgICAgICAgcGFkZGluZzogMC41cmVtIDFyZW0gMC4yNXJlbSAxcmVtOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgYm9keSAuY3VycmVudFVwY29taW5nRXhoaWJpdGlvbiAuZmVhdHVyZWQtaGVybyAucGFnZVRpdGxlQ29udGFpbmVyIC5wYWdlVGl0bGUgLnRpdGxlQ29udGFpbmVyIC5lbnRyeVRpdGxlIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgICAgYm9keSAuY3VycmVudFVwY29taW5nRXhoaWJpdGlvbiAuZmVhdHVyZWQtaGVybyAucGFnZVRpdGxlQ29udGFpbmVyIC5wYWdlVGl0bGUgLnRpdGxlQ29udGFpbmVyIC5lbnRyeVRpdGxlLCBib2R5IC5jdXJyZW50VXBjb21pbmdFeGhpYml0aW9uIC5mZWF0dXJlZC1oZXJvIC5wYWdlVGl0bGVDb250YWluZXIgLnBhZ2VUaXRsZSAudGl0bGVDb250YWluZXIgLmVudHJ5VGl0bGU6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgYm9keSAuY3VycmVudFVwY29taW5nRXhoaWJpdGlvbiAuZmVhdHVyZWQtaGVybyAucGFnZVRpdGxlQ29udGFpbmVyIC5wYWdlVGl0bGUgLnRpdGxlQ29udGFpbmVyIC5lbnRyeVRpdGxlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAgICAgYm9keSAuY3VycmVudFVwY29taW5nRXhoaWJpdGlvbiAuZmVhdHVyZWQtaGVybyAucGFnZVRpdGxlQ29udGFpbmVyIC5wYWdlVGl0bGUgLnRpdGxlQ29udGFpbmVyIC5lbnRyeVRpdGxlIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi4yNXJlbTsgfSB9XG4gICAgICBib2R5IC5jdXJyZW50VXBjb21pbmdFeGhpYml0aW9uIC5mZWF0dXJlZC1oZXJvIC5wYWdlVGl0bGVDb250YWluZXIgLnBhZ2VUaXRsZSAudGl0bGVDb250YWluZXIgLmVudHJ5RGF0ZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDAuNzVyZW07XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnYmViYXNfbmV1ZWJvbGQnLCdzYW5zLXNlcmlmJztcbiAgICAgICAgY29sb3I6ICM4NzcxNDg7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDAuOTtcbiAgICAgICAgcGFkZGluZy10b3A6IDAuMjVyZW07IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICBib2R5IC5jdXJyZW50VXBjb21pbmdFeGhpYml0aW9uIC5mZWF0dXJlZC1oZXJvIC5wYWdlVGl0bGVDb250YWluZXIgLnBhZ2VUaXRsZSAudGl0bGVDb250YWluZXIgLmVudHJ5RGF0ZSB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICAgIGJvZHkgLmN1cnJlbnRVcGNvbWluZ0V4aGliaXRpb24gLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlIC50aXRsZUNvbnRhaW5lciAuZW50cnlEYXRlLCBib2R5IC5jdXJyZW50VXBjb21pbmdFeGhpYml0aW9uIC5mZWF0dXJlZC1oZXJvIC5wYWdlVGl0bGVDb250YWluZXIgLnBhZ2VUaXRsZSAudGl0bGVDb250YWluZXIgLmVudHJ5RGF0ZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICBib2R5IC5jdXJyZW50VXBjb21pbmdFeGhpYml0aW9uIC5mZWF0dXJlZC1oZXJvIC5wYWdlVGl0bGVDb250YWluZXIgLnBhZ2VUaXRsZSAudGl0bGVDb250YWluZXIgLmVudHJ5RGF0ZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgICAgIGJvZHkgLmN1cnJlbnRVcGNvbWluZ0V4aGliaXRpb24gLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlIC50aXRsZUNvbnRhaW5lciAuZW50cnlEYXRlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtOyB9IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICAgIGJvZHkgLmN1cnJlbnRVcGNvbWluZ0V4aGliaXRpb24gLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlIC50aXRsZUNvbnRhaW5lciAuZW50cnlEYXRlIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAgICAgYm9keSAuY3VycmVudFVwY29taW5nRXhoaWJpdGlvbiAuZmVhdHVyZWQtaGVybyAucGFnZVRpdGxlQ29udGFpbmVyIC5wYWdlVGl0bGUgLnRpdGxlQ29udGFpbmVyIC5lbnRyeURhdGUge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW07IH0gfVxuICAgICAgICBib2R5IC5jdXJyZW50VXBjb21pbmdFeGhpYml0aW9uIC5mZWF0dXJlZC1oZXJvIC5wYWdlVGl0bGVDb250YWluZXIgLnBhZ2VUaXRsZSAudGl0bGVDb250YWluZXIgLmVudHJ5RGF0ZSBzcGFuIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDAuNTsgfVxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgICAgICAgIGJvZHkgLmN1cnJlbnRVcGNvbWluZ0V4aGliaXRpb24gLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlIC50aXRsZUNvbnRhaW5lciAuZW50cnlEYXRlIHNwYW4ge1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gICAgICAgICAgICAgIHRleHQtaW5kZW50OiAtMS44cmVtO1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMC45O1xuICAgICAgICAgICAgICBjb2xvcjogIzFkMWQxZDsgfSB9XG4gICAgICAgICAgYm9keSAuY3VycmVudFVwY29taW5nRXhoaWJpdGlvbiAuZmVhdHVyZWQtaGVybyAucGFnZVRpdGxlQ29udGFpbmVyIC5wYWdlVGl0bGUgLnRpdGxlQ29udGFpbmVyIC5lbnRyeURhdGUgc3BhbiBpbWcge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAgICAgICAgIGJvZHkgLmN1cnJlbnRVcGNvbWluZ0V4aGliaXRpb24gLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlIC50aXRsZUNvbnRhaW5lciAuZW50cnlEYXRlIHNwYW4gaW1nIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDI2cHg7IH0gfVxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgICAgICAgICAgYm9keSAuY3VycmVudFVwY29taW5nRXhoaWJpdGlvbiAuZmVhdHVyZWQtaGVybyAucGFnZVRpdGxlQ29udGFpbmVyIC5wYWdlVGl0bGUgLnRpdGxlQ29udGFpbmVyIC5lbnRyeURhdGUgc3BhbiBpbWcge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMjlweDsgfSB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgICAgIGJvZHkgLmN1cnJlbnRVcGNvbWluZ0V4aGliaXRpb24gLmZlYXR1cmVkLWhlcm8gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlIC50aXRsZUNvbnRhaW5lciAuZW50cnlEYXRlIHNwYW4gaW1nIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDMzcHg7IH0gfVxuICBib2R5IC5jdXJyZW50VXBjb21pbmdFeGhpYml0aW9uIC5mZWF0dXJlZC1oZXJvI21haW5QYWdlSGVhZGVyIGgxLmVudHJ5VGl0bGUge1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtOyB9XG4gIGJvZHkgLmN1cnJlbnRVcGNvbWluZ0V4aGliaXRpb24gLm1haW4tY29udGFpbmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgYm9keSAuY3VycmVudFVwY29taW5nRXhoaWJpdGlvbiAubWFpbi1jb250YWluZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiAtNnJlbTsgfSB9XG4gICAgYm9keSAuY3VycmVudFVwY29taW5nRXhoaWJpdGlvbiAubWFpbi1jb250YWluZXIgLm1haW4tZ3JpZCB7XG4gICAgICBwYWRkaW5nLXRvcDogMnJlbTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICBib2R5IC5jdXJyZW50VXBjb21pbmdFeGhpYml0aW9uIC5tYWluLWNvbnRhaW5lciAubWFpbi1ncmlkIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxcmVtOyB9IH1cbiAgYm9keSAjdXBjb21pbmdFeGhpYml0aW9ucyAubWFpbi1ncmlkIHtcbiAgICBtYXJnaW4tdG9wOiA0cmVtOyB9XG4gIGJvZHkgI3VwY29taW5nRXhoaWJpdGlvbnMgLm1haW4tY29udGVudCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiA3MHJlbTsgfVxuICAgIGJvZHkgI3VwY29taW5nRXhoaWJpdGlvbnMgLm1haW4tY29udGVudCAubGlzdGluZ0NvbnRhaW5lciB7XG4gICAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgICAgIGJvZHkgI3VwY29taW5nRXhoaWJpdGlvbnMgLm1haW4tY29udGVudCAubGlzdGluZ0NvbnRhaW5lcjo6YmVmb3JlLCBib2R5ICN1cGNvbWluZ0V4aGliaXRpb25zIC5tYWluLWNvbnRlbnQgLmxpc3RpbmdDb250YWluZXI6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgb3JkZXI6IDE7IH1cbiAgICAgIGJvZHkgI3VwY29taW5nRXhoaWJpdGlvbnMgLm1haW4tY29udGVudCAubGlzdGluZ0NvbnRhaW5lcjo6YWZ0ZXIge1xuICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgYm9keSAjdXBjb21pbmdFeGhpYml0aW9ucyAubWFpbi1jb250ZW50IC5saXN0aW5nQ29udGFpbmVyIC5pbWFnZSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDIwMHB4O1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgYm9keSAjdXBjb21pbmdFeGhpYml0aW9ucyAubWFpbi1jb250ZW50IC5saXN0aW5nQ29udGFpbmVyIC5pbWFnZSB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA0NzBweDsgfSB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgYm9keSAjdXBjb21pbmdFeGhpYml0aW9ucyAubWFpbi1jb250ZW50IC5saXN0aW5nQ29udGFpbmVyIC5pbWFnZSB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA1NjBweDsgfSB9XG4gICAgICBib2R5ICN1cGNvbWluZ0V4aGliaXRpb25zIC5tYWluLWNvbnRlbnQgLmxpc3RpbmdDb250YWluZXIgLmRldGFpbHMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgYm9keSAjdXBjb21pbmdFeGhpYml0aW9ucyAubWFpbi1jb250ZW50IC5saXN0aW5nQ29udGFpbmVyIC5kZXRhaWxzIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDNyZW0gIWltcG9ydGFudDsgfSB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAgICAgYm9keSAjdXBjb21pbmdFeGhpYml0aW9ucyAubWFpbi1jb250ZW50IC5saXN0aW5nQ29udGFpbmVyIC5kZXRhaWxzIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEuNXJlbSAhaW1wb3J0YW50OyB9IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICAgIGJvZHkgI3VwY29taW5nRXhoaWJpdGlvbnMgLm1haW4tY29udGVudCAubGlzdGluZ0NvbnRhaW5lciAuZGV0YWlscyB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxLjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtOyB9IH1cbiAgICAgICAgYm9keSAjdXBjb21pbmdFeGhpYml0aW9ucyAubWFpbi1jb250ZW50IC5saXN0aW5nQ29udGFpbmVyIC5kZXRhaWxzIC52YWxpZ24ge1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgICAgICAgIGJvZHkgI3VwY29taW5nRXhoaWJpdGlvbnMgLm1haW4tY29udGVudCAubGlzdGluZ0NvbnRhaW5lciAuZGV0YWlscyAudmFsaWduIC5kYXRlQ29udGFpbmVyIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgICAgICBib2R5ICN1cGNvbWluZ0V4aGliaXRpb25zIC5tYWluLWNvbnRlbnQgLmxpc3RpbmdDb250YWluZXIgLmRldGFpbHMgLnZhbGlnbiAuZGF0ZUNvbnRhaW5lciAuZGF0ZSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMC44O1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMi4ycmVtO1xuICAgICAgICAgICAgICB0ZXh0LWluZGVudDogLTEuOXJlbTtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgICAgICAgICAgIGJvZHkgI3VwY29taW5nRXhoaWJpdGlvbnMgLm1haW4tY29udGVudCAubGlzdGluZ0NvbnRhaW5lciAuZGV0YWlscyAudmFsaWduIC5kYXRlQ29udGFpbmVyIC5kYXRlIHtcbiAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtOyB9IH1cbiAgICAgICAgICAgICAgYm9keSAjdXBjb21pbmdFeGhpYml0aW9ucyAubWFpbi1jb250ZW50IC5saXN0aW5nQ29udGFpbmVyIC5kZXRhaWxzIC52YWxpZ24gLmRhdGVDb250YWluZXIgLmRhdGUgLmNhbGVuZGFySWNvbiB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyM3B4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTsgfVxuICAgICAgICAgIGJvZHkgI3VwY29taW5nRXhoaWJpdGlvbnMgLm1haW4tY29udGVudCAubGlzdGluZ0NvbnRhaW5lciAuZGV0YWlscyAudmFsaWduIGEgLnRpdGxlOmhvdmVyLCBib2R5ICN1cGNvbWluZ0V4aGliaXRpb25zIC5tYWluLWNvbnRlbnQgLmxpc3RpbmdDb250YWluZXIgLmRldGFpbHMgLnZhbGlnbiBhIC50aXRsZTpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogIzg3NzE0ODsgfVxuICAgICAgICAgIGJvZHkgI3VwY29taW5nRXhoaWJpdGlvbnMgLm1haW4tY29udGVudCAubGlzdGluZ0NvbnRhaW5lciAuZGV0YWlscyAudmFsaWduIC50aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDNyZW07XG4gICAgICAgICAgICBjb2xvcjogIzFkMWQxZDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwLjg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjE1cmVtIDByZW0gMC41cmVtIDByZW07IH1cbiAgICAgICAgICBib2R5ICN1cGNvbWluZ0V4aGliaXRpb25zIC5tYWluLWNvbnRlbnQgLmxpc3RpbmdDb250YWluZXIgLmRldGFpbHMgLnZhbGlnbiAuZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDsgfVxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgICAgICAgICBib2R5ICN1cGNvbWluZ0V4aGliaXRpb25zIC5tYWluLWNvbnRlbnQgLmxpc3RpbmdDb250YWluZXIgLmRldGFpbHMgLnZhbGlnbiAuZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC45cmVtOyB9IH1cbiAgICAgICAgICBib2R5ICN1cGNvbWluZ0V4aGliaXRpb25zIC5tYWluLWNvbnRlbnQgLmxpc3RpbmdDb250YWluZXIgLmRldGFpbHMgLnZhbGlnbiAuc2hvd01vcmVJbmZvIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmUxMDA7XG4gICAgICAgICAgICBjb2xvcjogIzFkMWQxZDsgfVxuICAgICAgICAgICAgYm9keSAjdXBjb21pbmdFeGhpYml0aW9ucyAubWFpbi1jb250ZW50IC5saXN0aW5nQ29udGFpbmVyIC5kZXRhaWxzIC52YWxpZ24gLnNob3dNb3JlSW5mbzpob3ZlciwgYm9keSAjdXBjb21pbmdFeGhpYml0aW9ucyAubWFpbi1jb250ZW50IC5saXN0aW5nQ29udGFpbmVyIC5kZXRhaWxzIC52YWxpZ24gLnNob3dNb3JlSW5mbzpmb2N1cyB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxZDFkMWQ7XG4gICAgICAgICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgYm9keSAjdXBjb21pbmdFeGhpYml0aW9ucyAubWFpbi1jb250ZW50IC5ldmVuIC5kZXRhaWxzIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgICAgLyptYXJnaW4tdG9wOiAtM3JlbTtcblx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAtMXJlbTtcblx0XHRcdFx0XHRcdGZsb2F0OmxlZnQhaW1wb3J0YW50OyovIH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkgI3VwY29taW5nRXhoaWJpdGlvbnMgLm1haW4tY29udGVudCAuZXZlbiAuZGV0YWlscyB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICBib2R5ICN1cGNvbWluZ0V4aGliaXRpb25zIC5tYWluLWNvbnRlbnQgLmV2ZW4gLmRldGFpbHMsIGJvZHkgI3VwY29taW5nRXhoaWJpdGlvbnMgLm1haW4tY29udGVudCAuZXZlbiAuZGV0YWlsczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICBib2R5ICN1cGNvbWluZ0V4aGliaXRpb25zIC5tYWluLWNvbnRlbnQgLmV2ZW4gLmRldGFpbHM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICBib2R5ICN1cGNvbWluZ0V4aGliaXRpb25zIC5tYWluLWNvbnRlbnQgLmV2ZW4gLmRldGFpbHMge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGxlZnQ6IC01MCU7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgYm9keSAjdXBjb21pbmdFeGhpYml0aW9ucyAubWFpbi1jb250ZW50IC5ldmVuIC5kZXRhaWxzIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIGJvZHkgI3VwY29taW5nRXhoaWJpdGlvbnMgLm1haW4tY29udGVudCAuZXZlbiAuZGV0YWlscywgYm9keSAjdXBjb21pbmdFeGhpYml0aW9ucyAubWFpbi1jb250ZW50IC5ldmVuIC5kZXRhaWxzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgIGJvZHkgI3VwY29taW5nRXhoaWJpdGlvbnMgLm1haW4tY29udGVudCAuZXZlbiAuZGV0YWlsczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIGJvZHkgI3VwY29taW5nRXhoaWJpdGlvbnMgLm1haW4tY29udGVudCAuZXZlbiAuaW1hZ2Uge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5ICN1cGNvbWluZ0V4aGliaXRpb25zIC5tYWluLWNvbnRlbnQgLmV2ZW4gLmltYWdlIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAgIGJvZHkgI3VwY29taW5nRXhoaWJpdGlvbnMgLm1haW4tY29udGVudCAuZXZlbiAuaW1hZ2UsIGJvZHkgI3VwY29taW5nRXhoaWJpdGlvbnMgLm1haW4tY29udGVudCAuZXZlbiAuaW1hZ2U6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgYm9keSAjdXBjb21pbmdFeGhpYml0aW9ucyAubWFpbi1jb250ZW50IC5ldmVuIC5pbWFnZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIGJvZHkgI3VwY29taW5nRXhoaWJpdGlvbnMgLm1haW4tY29udGVudCAuZXZlbiAuaW1hZ2Uge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5ICN1cGNvbWluZ0V4aGliaXRpb25zIC5tYWluLWNvbnRlbnQgLmV2ZW4gLmltYWdlIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIGJvZHkgI3VwY29taW5nRXhoaWJpdGlvbnMgLm1haW4tY29udGVudCAuZXZlbiAuaW1hZ2UsIGJvZHkgI3VwY29taW5nRXhoaWJpdGlvbnMgLm1haW4tY29udGVudCAuZXZlbiAuaW1hZ2U6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgYm9keSAjdXBjb21pbmdFeGhpYml0aW9ucyAubWFpbi1jb250ZW50IC5ldmVuIC5pbWFnZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgIGJvZHkgI3VwY29taW5nRXhoaWJpdGlvbnMgLm1haW4tY29udGVudCAub2RkIC5kZXRhaWxzIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIGJvZHkgI3VwY29taW5nRXhoaWJpdGlvbnMgLm1haW4tY29udGVudCAub2RkIC5kZXRhaWxzIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgYm9keSAjdXBjb21pbmdFeGhpYml0aW9ucyAubWFpbi1jb250ZW50IC5vZGQgLmRldGFpbHMsIGJvZHkgI3VwY29taW5nRXhoaWJpdGlvbnMgLm1haW4tY29udGVudCAub2RkIC5kZXRhaWxzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIGJvZHkgI3VwY29taW5nRXhoaWJpdGlvbnMgLm1haW4tY29udGVudCAub2RkIC5kZXRhaWxzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgYm9keSAjdXBjb21pbmdFeGhpYml0aW9ucyAubWFpbi1jb250ZW50IC5vZGQgLmRldGFpbHMge1xuICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgYm9keSAjdXBjb21pbmdFeGhpYml0aW9ucyAubWFpbi1jb250ZW50IC5vZGQgLmRldGFpbHMge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIGJvZHkgI3VwY29taW5nRXhoaWJpdGlvbnMgLm1haW4tY29udGVudCAub2RkIC5kZXRhaWxzLCBib2R5ICN1cGNvbWluZ0V4aGliaXRpb25zIC5tYWluLWNvbnRlbnQgLm9kZCAuZGV0YWlsczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICBib2R5ICN1cGNvbWluZ0V4aGliaXRpb25zIC5tYWluLWNvbnRlbnQgLm9kZCAuZGV0YWlsczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAgIGJvZHkgI3VwY29taW5nRXhoaWJpdGlvbnMgLm1haW4tY29udGVudCAub2RkIC5kZXRhaWxzIHtcbiAgICAgICAgICAvKm1hcmdpbi10b3A6IC0zcmVtO1xuXHRcdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAtMXJlbTsqLyB9IH1cbiAgICBib2R5ICN1cGNvbWluZ0V4aGliaXRpb25zIC5tYWluLWNvbnRlbnQgLm9kZCAuaW1hZ2Uge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgYm9keSAjdXBjb21pbmdFeGhpYml0aW9ucyAubWFpbi1jb250ZW50IC5vZGQgLmltYWdlIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgYm9keSAjdXBjb21pbmdFeGhpYml0aW9ucyAubWFpbi1jb250ZW50IC5vZGQgLmltYWdlLCBib2R5ICN1cGNvbWluZ0V4aGliaXRpb25zIC5tYWluLWNvbnRlbnQgLm9kZCAuaW1hZ2U6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgYm9keSAjdXBjb21pbmdFeGhpYml0aW9ucyAubWFpbi1jb250ZW50IC5vZGQgLmltYWdlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgYm9keSAjdXBjb21pbmdFeGhpYml0aW9ucyAubWFpbi1jb250ZW50IC5vZGQgLmltYWdlIHtcbiAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkgI3VwY29taW5nRXhoaWJpdGlvbnMgLm1haW4tY29udGVudCAub2RkIC5pbWFnZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgYm9keSAjdXBjb21pbmdFeGhpYml0aW9ucyAubWFpbi1jb250ZW50IC5vZGQgLmltYWdlLCBib2R5ICN1cGNvbWluZ0V4aGliaXRpb25zIC5tYWluLWNvbnRlbnQgLm9kZCAuaW1hZ2U6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgYm9keSAjdXBjb21pbmdFeGhpYml0aW9ucyAubWFpbi1jb250ZW50IC5vZGQgLmltYWdlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgYm9keSAjZ2FsbGVyeUV2ZW50cyAubWFpbi1ncmlkIC5ldmVudFJvdyB7XG4gICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWF4LXdpZHRoOiA2MHJlbTsgfVxuICAgIGJvZHkgI2dhbGxlcnlFdmVudHMgLm1haW4tZ3JpZCAuZXZlbnRSb3c6OmJlZm9yZSwgYm9keSAjZ2FsbGVyeUV2ZW50cyAubWFpbi1ncmlkIC5ldmVudFJvdzo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjb250ZW50OiAnICc7XG4gICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgb3JkZXI6IDE7IH1cbiAgICBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93OjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIGJvZHkgI2dhbGxlcnlFdmVudHMgLm1haW4tZ3JpZCAuZXZlbnRSb3cge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkgI2dhbGxlcnlFdmVudHMgLm1haW4tZ3JpZCAuZXZlbnRSb3cgLmV2ZW50Q29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAgIGJvZHkgI2dhbGxlcnlFdmVudHMgLm1haW4tZ3JpZCAuZXZlbnRSb3cgLmV2ZW50Q29udGFpbmVyLCBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIGJvZHkgI2dhbGxlcnlFdmVudHMgLm1haW4tZ3JpZCAuZXZlbnRSb3cgLmV2ZW50Q29udGFpbmVyIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIuMTg3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyLjE4NzVyZW07IH1cbiAgICAgICAgYm9keSAjZ2FsbGVyeUV2ZW50cyAubWFpbi1ncmlkIC5ldmVudFJvdyAuZXZlbnRDb250YWluZXIsIGJvZHkgI2dhbGxlcnlFdmVudHMgLm1haW4tZ3JpZCAuZXZlbnRSb3cgLmV2ZW50Q29udGFpbmVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgIGJvZHkgI2dhbGxlcnlFdmVudHMgLm1haW4tZ3JpZCAuZXZlbnRSb3cgLmV2ZW50Q29udGFpbmVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgYm9keSAjZ2FsbGVyeUV2ZW50cyAubWFpbi1ncmlkIC5ldmVudFJvdyAuZXZlbnRDb250YWluZXIgLmltYWdlQ29udGFpbmVyIHtcbiAgICAgIG1heC13aWR0aDogNzVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgICAgYm9keSAjZ2FsbGVyeUV2ZW50cyAubWFpbi1ncmlkIC5ldmVudFJvdyAuZXZlbnRDb250YWluZXIgLmltYWdlQ29udGFpbmVyOjpiZWZvcmUsIGJvZHkgI2dhbGxlcnlFdmVudHMgLm1haW4tZ3JpZCAuZXZlbnRSb3cgLmV2ZW50Q29udGFpbmVyIC5pbWFnZUNvbnRhaW5lcjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY29udGVudDogJyAnO1xuICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICBvcmRlcjogMTsgfVxuICAgICAgYm9keSAjZ2FsbGVyeUV2ZW50cyAubWFpbi1ncmlkIC5ldmVudFJvdyAuZXZlbnRDb250YWluZXIgLmltYWdlQ29udGFpbmVyOjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciAuaW1hZ2VDb250YWluZXIgLmltYWdlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgICAgbWluLWhlaWdodDogMjAwcHg7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIGJvZHkgI2dhbGxlcnlFdmVudHMgLm1haW4tZ3JpZCAuZXZlbnRSb3cgLmV2ZW50Q29udGFpbmVyIC5pbWFnZUNvbnRhaW5lciAuaW1hZ2Uge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgICBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciAuaW1hZ2VDb250YWluZXIgLmltYWdlLCBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciAuaW1hZ2VDb250YWluZXIgLmltYWdlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgIGJvZHkgI2dhbGxlcnlFdmVudHMgLm1haW4tZ3JpZCAuZXZlbnRSb3cgLmV2ZW50Q29udGFpbmVyIC5pbWFnZUNvbnRhaW5lciAuaW1hZ2U6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgYm9keSAjZ2FsbGVyeUV2ZW50cyAubWFpbi1ncmlkIC5ldmVudFJvdyAuZXZlbnRDb250YWluZXIgLmNhdGVnb3J5RGF0ZUNvbnRhaW5lciB7XG4gICAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tdG9wOiAxcmVtOyB9XG4gICAgICBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciAuY2F0ZWdvcnlEYXRlQ29udGFpbmVyOjpiZWZvcmUsIGJvZHkgI2dhbGxlcnlFdmVudHMgLm1haW4tZ3JpZCAuZXZlbnRSb3cgLmV2ZW50Q29udGFpbmVyIC5jYXRlZ29yeURhdGVDb250YWluZXI6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgb3JkZXI6IDE7IH1cbiAgICAgIGJvZHkgI2dhbGxlcnlFdmVudHMgLm1haW4tZ3JpZCAuZXZlbnRSb3cgLmV2ZW50Q29udGFpbmVyIC5jYXRlZ29yeURhdGVDb250YWluZXI6OmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIGJvZHkgI2dhbGxlcnlFdmVudHMgLm1haW4tZ3JpZCAuZXZlbnRSb3cgLmV2ZW50Q29udGFpbmVyIC5jYXRlZ29yeURhdGVDb250YWluZXIgLmNhdGVnb3J5IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciAuY2F0ZWdvcnlEYXRlQ29udGFpbmVyIC5jYXRlZ29yeSB7XG4gICAgICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gICAgICAgICAgICBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciAuY2F0ZWdvcnlEYXRlQ29udGFpbmVyIC5jYXRlZ29yeSwgYm9keSAjZ2FsbGVyeUV2ZW50cyAubWFpbi1ncmlkIC5ldmVudFJvdyAuZXZlbnRDb250YWluZXIgLmNhdGVnb3J5RGF0ZUNvbnRhaW5lciAuY2F0ZWdvcnk6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgICAgYm9keSAjZ2FsbGVyeUV2ZW50cyAubWFpbi1ncmlkIC5ldmVudFJvdyAuZXZlbnRDb250YWluZXIgLmNhdGVnb3J5RGF0ZUNvbnRhaW5lciAuY2F0ZWdvcnk6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgICAgICBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciAuY2F0ZWdvcnlEYXRlQ29udGFpbmVyIC5jYXRlZ29yeSB7XG4gICAgICAgICAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gICAgICAgICAgICBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciAuY2F0ZWdvcnlEYXRlQ29udGFpbmVyIC5jYXRlZ29yeSwgYm9keSAjZ2FsbGVyeUV2ZW50cyAubWFpbi1ncmlkIC5ldmVudFJvdyAuZXZlbnRDb250YWluZXIgLmNhdGVnb3J5RGF0ZUNvbnRhaW5lciAuY2F0ZWdvcnk6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgICAgYm9keSAjZ2FsbGVyeUV2ZW50cyAubWFpbi1ncmlkIC5ldmVudFJvdyAuZXZlbnRDb250YWluZXIgLmNhdGVnb3J5RGF0ZUNvbnRhaW5lciAuY2F0ZWdvcnk6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgICAgIGJvZHkgI2dhbGxlcnlFdmVudHMgLm1haW4tZ3JpZCAuZXZlbnRSb3cgLmV2ZW50Q29udGFpbmVyIC5jYXRlZ29yeURhdGVDb250YWluZXIgLmNhdGVnb3J5IHNwYW4ge1xuICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDAuOTtcbiAgICAgICAgICBmb250LWZhbWlseTogJ2JlYmFzX25ldWVib2xkJywnc2Fucy1zZXJpZic7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgICAgICAgIGJvZHkgI2dhbGxlcnlFdmVudHMgLm1haW4tZ3JpZCAuZXZlbnRSb3cgLmV2ZW50Q29udGFpbmVyIC5jYXRlZ29yeURhdGVDb250YWluZXIgLmNhdGVnb3J5IHNwYW4ge1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTsgfSB9XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICAgICAgYm9keSAjZ2FsbGVyeUV2ZW50cyAubWFpbi1ncmlkIC5ldmVudFJvdyAuZXZlbnRDb250YWluZXIgLmNhdGVnb3J5RGF0ZUNvbnRhaW5lciAuY2F0ZWdvcnkgc3BhbiB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC45cmVtOyB9IH1cbiAgICAgIGJvZHkgI2dhbGxlcnlFdmVudHMgLm1haW4tZ3JpZCAuZXZlbnRSb3cgLmV2ZW50Q29udGFpbmVyIC5jYXRlZ29yeURhdGVDb250YWluZXIgLmFydGlzdExlY3R1cmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlMTAwOyB9XG4gICAgICBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciAuY2F0ZWdvcnlEYXRlQ29udGFpbmVyIC5maWxtU2NyZWVuaW5nIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2U3MTcxNztcbiAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAgIGJvZHkgI2dhbGxlcnlFdmVudHMgLm1haW4tZ3JpZCAuZXZlbnRSb3cgLmV2ZW50Q29udGFpbmVyIC5jYXRlZ29yeURhdGVDb250YWluZXIgLm9wZW5pbmdSZWNlcHRpb24ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGY5OWQ4O1xuICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciAuY2F0ZWdvcnlEYXRlQ29udGFpbmVyIC5kYXRlQ29udGFpbmVyIHtcbiAgICAgICAgICB3aWR0aDogNzUlO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkgI2dhbGxlcnlFdmVudHMgLm1haW4tZ3JpZCAuZXZlbnRSb3cgLmV2ZW50Q29udGFpbmVyIC5jYXRlZ29yeURhdGVDb250YWluZXIgLmRhdGVDb250YWluZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgIGJvZHkgI2dhbGxlcnlFdmVudHMgLm1haW4tZ3JpZCAuZXZlbnRSb3cgLmV2ZW50Q29udGFpbmVyIC5jYXRlZ29yeURhdGVDb250YWluZXIgLmRhdGVDb250YWluZXIsIGJvZHkgI2dhbGxlcnlFdmVudHMgLm1haW4tZ3JpZCAuZXZlbnRSb3cgLmV2ZW50Q29udGFpbmVyIC5jYXRlZ29yeURhdGVDb250YWluZXIgLmRhdGVDb250YWluZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgYm9keSAjZ2FsbGVyeUV2ZW50cyAubWFpbi1ncmlkIC5ldmVudFJvdyAuZXZlbnRDb250YWluZXIgLmNhdGVnb3J5RGF0ZUNvbnRhaW5lciAuZGF0ZUNvbnRhaW5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAgIGJvZHkgI2dhbGxlcnlFdmVudHMgLm1haW4tZ3JpZCAuZXZlbnRSb3cgLmV2ZW50Q29udGFpbmVyIC5jYXRlZ29yeURhdGVDb250YWluZXIgLmRhdGVDb250YWluZXIge1xuICAgICAgICAgIHdpZHRoOiA2Ni42NjY2NyU7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgYm9keSAjZ2FsbGVyeUV2ZW50cyAubWFpbi1ncmlkIC5ldmVudFJvdyAuZXZlbnRDb250YWluZXIgLmNhdGVnb3J5RGF0ZUNvbnRhaW5lciAuZGF0ZUNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAgICAgYm9keSAjZ2FsbGVyeUV2ZW50cyAubWFpbi1ncmlkIC5ldmVudFJvdyAuZXZlbnRDb250YWluZXIgLmNhdGVnb3J5RGF0ZUNvbnRhaW5lciAuZGF0ZUNvbnRhaW5lciwgYm9keSAjZ2FsbGVyeUV2ZW50cyAubWFpbi1ncmlkIC5ldmVudFJvdyAuZXZlbnRDb250YWluZXIgLmNhdGVnb3J5RGF0ZUNvbnRhaW5lciAuZGF0ZUNvbnRhaW5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciAuY2F0ZWdvcnlEYXRlQ29udGFpbmVyIC5kYXRlQ29udGFpbmVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICAgIGJvZHkgI2dhbGxlcnlFdmVudHMgLm1haW4tZ3JpZCAuZXZlbnRSb3cgLmV2ZW50Q29udGFpbmVyIC5jYXRlZ29yeURhdGVDb250YWluZXIgLmRhdGVDb250YWluZXIgLmRhdGUge1xuICAgICAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAgICAgICBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciAuY2F0ZWdvcnlEYXRlQ29udGFpbmVyIC5kYXRlQ29udGFpbmVyIC5kYXRlOjpiZWZvcmUsIGJvZHkgI2dhbGxlcnlFdmVudHMgLm1haW4tZ3JpZCAuZXZlbnRSb3cgLmV2ZW50Q29udGFpbmVyIC5jYXRlZ29yeURhdGVDb250YWluZXIgLmRhdGVDb250YWluZXIgLmRhdGU6OmFmdGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICBjb250ZW50OiAnICc7XG4gICAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgICBvcmRlcjogMTsgfVxuICAgICAgICBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciAuY2F0ZWdvcnlEYXRlQ29udGFpbmVyIC5kYXRlQ29udGFpbmVyIC5kYXRlOjphZnRlciB7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgYm9keSAjZ2FsbGVyeUV2ZW50cyAubWFpbi1ncmlkIC5ldmVudFJvdyAuZXZlbnRDb250YWluZXIgLmNhdGVnb3J5RGF0ZUNvbnRhaW5lciAuZGF0ZUNvbnRhaW5lciAuZGF0ZSwgYm9keSAjZ2FsbGVyeUV2ZW50cyAubWFpbi1ncmlkIC5ldmVudFJvdyAuZXZlbnRDb250YWluZXIgLmNhdGVnb3J5RGF0ZUNvbnRhaW5lciAuZGF0ZUNvbnRhaW5lciAuZGF0ZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciAuY2F0ZWdvcnlEYXRlQ29udGFpbmVyIC5kYXRlQ29udGFpbmVyIC5kYXRlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgICBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciAuY2F0ZWdvcnlEYXRlQ29udGFpbmVyIC5kYXRlQ29udGFpbmVyIC5kYXRlLCBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciAuY2F0ZWdvcnlEYXRlQ29udGFpbmVyIC5kYXRlQ29udGFpbmVyIC5kYXRlOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGZsb2F0OiBub25lOyB9XG4gICAgICAgIGJvZHkgI2dhbGxlcnlFdmVudHMgLm1haW4tZ3JpZCAuZXZlbnRSb3cgLmV2ZW50Q29udGFpbmVyIC5jYXRlZ29yeURhdGVDb250YWluZXIgLmRhdGVDb250YWluZXIgLmRhdGUgaDMge1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwLjk7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4OyB9XG4gICAgICBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciAuY2F0ZWdvcnlEYXRlQ29udGFpbmVyIC5kYXRlQ29udGFpbmVyIC50aW1lIHtcbiAgICAgICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIGNvbG9yOiAjODc3MTQ4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LWZhbWlseTogJ2JlYmFzX25ldWVib29rJywnc2Fucy1zZXJpZic7XG4gICAgICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDAuOTsgfVxuICAgICAgICBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciAuY2F0ZWdvcnlEYXRlQ29udGFpbmVyIC5kYXRlQ29udGFpbmVyIC50aW1lOjpiZWZvcmUsIGJvZHkgI2dhbGxlcnlFdmVudHMgLm1haW4tZ3JpZCAuZXZlbnRSb3cgLmV2ZW50Q29udGFpbmVyIC5jYXRlZ29yeURhdGVDb250YWluZXIgLmRhdGVDb250YWluZXIgLnRpbWU6OmFmdGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICBjb250ZW50OiAnICc7XG4gICAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgICBvcmRlcjogMTsgfVxuICAgICAgICBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciAuY2F0ZWdvcnlEYXRlQ29udGFpbmVyIC5kYXRlQ29udGFpbmVyIC50aW1lOjphZnRlciB7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgYm9keSAjZ2FsbGVyeUV2ZW50cyAubWFpbi1ncmlkIC5ldmVudFJvdyAuZXZlbnRDb250YWluZXIgLmNhdGVnb3J5RGF0ZUNvbnRhaW5lciAuZGF0ZUNvbnRhaW5lciAudGltZSwgYm9keSAjZ2FsbGVyeUV2ZW50cyAubWFpbi1ncmlkIC5ldmVudFJvdyAuZXZlbnRDb250YWluZXIgLmNhdGVnb3J5RGF0ZUNvbnRhaW5lciAuZGF0ZUNvbnRhaW5lciAudGltZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciAuY2F0ZWdvcnlEYXRlQ29udGFpbmVyIC5kYXRlQ29udGFpbmVyIC50aW1lOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgICBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciAuY2F0ZWdvcnlEYXRlQ29udGFpbmVyIC5kYXRlQ29udGFpbmVyIC50aW1lLCBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciAuY2F0ZWdvcnlEYXRlQ29udGFpbmVyIC5kYXRlQ29udGFpbmVyIC50aW1lOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGZsb2F0OiBub25lOyB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgICAgICBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciAuY2F0ZWdvcnlEYXRlQ29udGFpbmVyIC5kYXRlQ29udGFpbmVyIC50aW1lIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfSB9XG4gICAgYm9keSAjZ2FsbGVyeUV2ZW50cyAubWFpbi1ncmlkIC5ldmVudFJvdyAuZXZlbnRDb250YWluZXIgLmV2ZW50VGl0bGVDb250YWluZXIge1xuICAgICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gICAgICBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciAuZXZlbnRUaXRsZUNvbnRhaW5lcjo6YmVmb3JlLCBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciAuZXZlbnRUaXRsZUNvbnRhaW5lcjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY29udGVudDogJyAnO1xuICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICBvcmRlcjogMTsgfVxuICAgICAgYm9keSAjZ2FsbGVyeUV2ZW50cyAubWFpbi1ncmlkIC5ldmVudFJvdyAuZXZlbnRDb250YWluZXIgLmV2ZW50VGl0bGVDb250YWluZXI6OmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIGJvZHkgI2dhbGxlcnlFdmVudHMgLm1haW4tZ3JpZCAuZXZlbnRSb3cgLmV2ZW50Q29udGFpbmVyIC5ldmVudFRpdGxlQ29udGFpbmVyIC5ldmVudFRpdGxlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAncm9ib3RvcmVndWxhcicsJ3NhbnMtc2VyaWYnO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAxLjc1cmVtOyB9XG4gICAgICAgIGJvZHkgI2dhbGxlcnlFdmVudHMgLm1haW4tZ3JpZCAuZXZlbnRSb3cgLmV2ZW50Q29udGFpbmVyIC5ldmVudFRpdGxlQ29udGFpbmVyIC5ldmVudFRpdGxlLCBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciAuZXZlbnRUaXRsZUNvbnRhaW5lciAuZXZlbnRUaXRsZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciAuZXZlbnRUaXRsZUNvbnRhaW5lciAuZXZlbnRUaXRsZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciAuZXZlbnREZXNjcmlwdGlvbkNvbnRhaW5lciB7XG4gICAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgICAgIGJvZHkgI2dhbGxlcnlFdmVudHMgLm1haW4tZ3JpZCAuZXZlbnRSb3cgLmV2ZW50Q29udGFpbmVyIC5ldmVudERlc2NyaXB0aW9uQ29udGFpbmVyOjpiZWZvcmUsIGJvZHkgI2dhbGxlcnlFdmVudHMgLm1haW4tZ3JpZCAuZXZlbnRSb3cgLmV2ZW50Q29udGFpbmVyIC5ldmVudERlc2NyaXB0aW9uQ29udGFpbmVyOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBjb250ZW50OiAnICc7XG4gICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgIG9yZGVyOiAxOyB9XG4gICAgICBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciAuZXZlbnREZXNjcmlwdGlvbkNvbnRhaW5lcjo6YWZ0ZXIge1xuICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgYm9keSAjZ2FsbGVyeUV2ZW50cyAubWFpbi1ncmlkIC5ldmVudFJvdyAuZXZlbnRDb250YWluZXIgLmV2ZW50RGVzY3JpcHRpb25Db250YWluZXIgLmV2ZW50RGVzY3JpcHRpb24ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAgICAgICBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciAuZXZlbnREZXNjcmlwdGlvbkNvbnRhaW5lciAuZXZlbnREZXNjcmlwdGlvbiwgYm9keSAjZ2FsbGVyeUV2ZW50cyAubWFpbi1ncmlkIC5ldmVudFJvdyAuZXZlbnRDb250YWluZXIgLmV2ZW50RGVzY3JpcHRpb25Db250YWluZXIgLmV2ZW50RGVzY3JpcHRpb246bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgYm9keSAjZ2FsbGVyeUV2ZW50cyAubWFpbi1ncmlkIC5ldmVudFJvdyAuZXZlbnRDb250YWluZXIgLmV2ZW50RGVzY3JpcHRpb25Db250YWluZXIgLmV2ZW50RGVzY3JpcHRpb246bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciAuZXZlbnREZXNjcmlwdGlvbkNvbnRhaW5lciAubW9yZUluZm8ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgICAgICBmb250LWZhbWlseTogJ3JvYm90b2JvbGQnLCdzYW5zLXNlcmlmJztcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgICAgICAgYm9keSAjZ2FsbGVyeUV2ZW50cyAubWFpbi1ncmlkIC5ldmVudFJvdyAuZXZlbnRDb250YWluZXIgLmV2ZW50RGVzY3JpcHRpb25Db250YWluZXIgLm1vcmVJbmZvLCBib2R5ICNnYWxsZXJ5RXZlbnRzIC5tYWluLWdyaWQgLmV2ZW50Um93IC5ldmVudENvbnRhaW5lciAuZXZlbnREZXNjcmlwdGlvbkNvbnRhaW5lciAubW9yZUluZm86bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgYm9keSAjZ2FsbGVyeUV2ZW50cyAubWFpbi1ncmlkIC5ldmVudFJvdyAuZXZlbnRDb250YWluZXIgLmV2ZW50RGVzY3JpcHRpb25Db250YWluZXIgLm1vcmVJbmZvOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfVxuICBib2R5ICNwdWJsaWNhdGlvbnMge1xuICAgIG1heC13aWR0aDogNzByZW07IH1cbiAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCB7XG4gICAgICBtYXJnaW4tdG9wOiAwcmVtO1xuICAgICAgcGFkZGluZy10b3A6IDJyZW07IH1cbiAgICAgIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0SW50cm9UZXh0Q29udGFpbmVyIHtcbiAgICAgICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdEludHJvVGV4dENvbnRhaW5lcjo6YmVmb3JlLCBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdEludHJvVGV4dENvbnRhaW5lcjo6YWZ0ZXIge1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICAgIG9yZGVyOiAxOyB9XG4gICAgICAgIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0SW50cm9UZXh0Q29udGFpbmVyOjphZnRlciB7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0SW50cm9UZXh0Q29udGFpbmVyIC5wdWJsaWNhdGlvbnNMaXN0SW50cm9UZXh0IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgICAgICAgICAgIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0SW50cm9UZXh0Q29udGFpbmVyIC5wdWJsaWNhdGlvbnNMaXN0SW50cm9UZXh0LCBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdEludHJvVGV4dENvbnRhaW5lciAucHVibGljYXRpb25zTGlzdEludHJvVGV4dDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdEludHJvVGV4dENvbnRhaW5lciAucHVibGljYXRpb25zTGlzdEludHJvVGV4dDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdEludHJvVGV4dENvbnRhaW5lciAucHVibGljYXRpb25zTGlzdEludHJvVGV4dCwgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3RJbnRyb1RleHRDb250YWluZXIgLnB1YmxpY2F0aW9uc0xpc3RJbnRyb1RleHQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdEludHJvVGV4dENvbnRhaW5lciAucHVibGljYXRpb25zTGlzdEludHJvVGV4dCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAgICAgICAgICAgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3RJbnRyb1RleHRDb250YWluZXIgLnB1YmxpY2F0aW9uc0xpc3RJbnRyb1RleHQsIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0SW50cm9UZXh0Q29udGFpbmVyIC5wdWJsaWNhdGlvbnNMaXN0SW50cm9UZXh0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAgIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0SW50cm9UZXh0Q29udGFpbmVyIC5wdWJsaWNhdGlvbnNMaXN0SW50cm9UZXh0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdEludHJvVGV4dENvbnRhaW5lciAucHVibGljYXRpb25zTGlzdEludHJvVGV4dCBoMiB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjc1cmVtOyB9XG4gICAgICAgIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0SW50cm9UZXh0Q29udGFpbmVyIC5wdWJsaWNhdGlvbnNMaXN0SW50cm9UZXh0IHAge1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7IH1cbiAgICAgIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IHtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkN2Q3ZDc7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzcmVtOyB9XG4gICAgICAgIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyB7XG4gICAgICAgICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3c6OmJlZm9yZSwgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93OjphZnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgICAgICBvcmRlcjogMTsgfVxuICAgICAgICAgIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdzo6YWZ0ZXIge1xuICAgICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cge1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9IH1cbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH1cbiAgICAgICAgICAgICAgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciwgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgICAgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciB7XG4gICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgICAgICAgICAgICAgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciwgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgICAgICAgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24ge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbjo6YmVmb3JlLCBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbjo6YWZ0ZXIge1xuICAgICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICAgICAgY29udGVudDogJyAnO1xuICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICAgICAgICBvcmRlcjogMTsgfVxuICAgICAgICAgICAgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb246OmFmdGVyIHtcbiAgICAgICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgICAgICAgICAgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLmltYWdlQ29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDI2MHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bzsgfSB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAuaW1hZ2VDb250YWluZXIge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMy4zMzMzMyU7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5pbWFnZUNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgICAgICAgICAgIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5pbWFnZUNvbnRhaW5lciwgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLmltYWdlQ29udGFpbmVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgICAgICAgIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5pbWFnZUNvbnRhaW5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgICAgIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5pbWFnZUNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAuaW1hZ2VDb250YWluZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgICAgICAgIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5pbWFnZUNvbnRhaW5lciwgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLmltYWdlQ29udGFpbmVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgICAgICAgIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5pbWFnZUNvbnRhaW5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAgICAgICAgIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5pbWFnZUNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwcHg7IH0gfVxuICAgICAgICAgICAgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLmltYWdlQ29udGFpbmVyIC5pbWFnZSB7XG4gICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDM2MHB4O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cbiAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICAgICAgICAgIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5pbWFnZUNvbnRhaW5lciAuaW1hZ2Uge1xuICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogMzUwcHg7IH0gfVxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAucHVibGljYXRpb25EZXRhaWxzQ29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAgICAgICAgICAgICAgIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5wdWJsaWNhdGlvbkRldGFpbHNDb250YWluZXIsIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5wdWJsaWNhdGlvbkRldGFpbHNDb250YWluZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgICAgICAgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLnB1YmxpY2F0aW9uRGV0YWlsc0NvbnRhaW5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAucHVibGljYXRpb25EZXRhaWxzQ29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNjYuNjY2NjclO1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAucHVibGljYXRpb25EZXRhaWxzQ29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAgICAgICAgICAgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLnB1YmxpY2F0aW9uRGV0YWlsc0NvbnRhaW5lciwgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLnB1YmxpY2F0aW9uRGV0YWlsc0NvbnRhaW5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAucHVibGljYXRpb25EZXRhaWxzQ29udGFpbmVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICAgICAgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLnB1YmxpY2F0aW9uRGV0YWlsc0NvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAucHVibGljYXRpb25EZXRhaWxzQ29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAucHVibGljYXRpb25EZXRhaWxzQ29udGFpbmVyLCBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAucHVibGljYXRpb25EZXRhaWxzQ29udGFpbmVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgICAgICAgIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5wdWJsaWNhdGlvbkRldGFpbHNDb250YWluZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgICAgICAgICAgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLnB1YmxpY2F0aW9uRGV0YWlsc0NvbnRhaW5lciAucHVibGljYXRpb25UaXRsZSB7XG4gICAgICAgICAgICAgIG1heC13aWR0aDogNzVyZW07XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAucHVibGljYXRpb25EZXRhaWxzQ29udGFpbmVyIC5wdWJsaWNhdGlvblRpdGxlIHtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEuNXJlbTsgfSB9XG4gICAgICAgICAgICAgIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5wdWJsaWNhdGlvbkRldGFpbHNDb250YWluZXIgLnB1YmxpY2F0aW9uVGl0bGU6OmJlZm9yZSwgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLnB1YmxpY2F0aW9uRGV0YWlsc0NvbnRhaW5lciAucHVibGljYXRpb25UaXRsZTo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICAgICAgICAgIG9yZGVyOiAxOyB9XG4gICAgICAgICAgICAgIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5wdWJsaWNhdGlvbkRldGFpbHNDb250YWluZXIgLnB1YmxpY2F0aW9uVGl0bGU6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAucHVibGljYXRpb25EZXRhaWxzQ29udGFpbmVyIC5wdWJsaWNhdGlvblRpdGxlLCBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAucHVibGljYXRpb25EZXRhaWxzQ29udGFpbmVyIC5wdWJsaWNhdGlvblRpdGxlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgICAgIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5wdWJsaWNhdGlvbkRldGFpbHNDb250YWluZXIgLnB1YmxpY2F0aW9uVGl0bGU6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICAgICAgICAgIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5wdWJsaWNhdGlvbkRldGFpbHNDb250YWluZXIgLnB1YmxpY2F0aW9uVGl0bGUsIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5wdWJsaWNhdGlvbkRldGFpbHNDb250YWluZXIgLnB1YmxpY2F0aW9uVGl0bGU6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7IH1cbiAgICAgICAgICAgICAgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLnB1YmxpY2F0aW9uRGV0YWlsc0NvbnRhaW5lciAucHVibGljYXRpb25UaXRsZSBoMiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjQ1cmVtO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwLjk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4ycmVtOyB9XG4gICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAucHVibGljYXRpb25EZXRhaWxzQ29udGFpbmVyIC5wdWJsaWNhdGlvblllYXIge1xuICAgICAgICAgICAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdiZWJhc19uZXVlcmVndWxhcicsJ3NhbnMtc2VyaWYnO1xuICAgICAgICAgICAgICBjb2xvcjogIzZhNmE2YTtcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gICAgICAgICAgICAgIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5wdWJsaWNhdGlvbkRldGFpbHNDb250YWluZXIgLnB1YmxpY2F0aW9uWWVhcjo6YmVmb3JlLCBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAucHVibGljYXRpb25EZXRhaWxzQ29udGFpbmVyIC5wdWJsaWNhdGlvblllYXI6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnICc7XG4gICAgICAgICAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgICAgICAgICBvcmRlcjogMTsgfVxuICAgICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAucHVibGljYXRpb25EZXRhaWxzQ29udGFpbmVyIC5wdWJsaWNhdGlvblllYXI6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAucHVibGljYXRpb25EZXRhaWxzQ29udGFpbmVyIC5wdWJsaWNhdGlvblllYXIsIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5wdWJsaWNhdGlvbkRldGFpbHNDb250YWluZXIgLnB1YmxpY2F0aW9uWWVhcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAucHVibGljYXRpb25EZXRhaWxzQ29udGFpbmVyIC5wdWJsaWNhdGlvblllYXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICAgICAgICAgIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5wdWJsaWNhdGlvbkRldGFpbHNDb250YWluZXIgLnB1YmxpY2F0aW9uWWVhciwgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLnB1YmxpY2F0aW9uRGV0YWlsc0NvbnRhaW5lciAucHVibGljYXRpb25ZZWFyOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lOyB9XG4gICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAucHVibGljYXRpb25EZXRhaWxzQ29udGFpbmVyIC5wdWJsaWNhdGlvbkF1dGhvciB7XG4gICAgICAgICAgICAgIG1heC13aWR0aDogNzVyZW07XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICBmb250LWZhbWlseTogJ2JlYmFzX25ldWVyZWd1bGFyJywnc2Fucy1zZXJpZic7XG4gICAgICAgICAgICAgIGNvbG9yOiAjNmE2YTZhO1xuICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgICAgICAgICAgICAgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLnB1YmxpY2F0aW9uRGV0YWlsc0NvbnRhaW5lciAucHVibGljYXRpb25BdXRob3I6OmJlZm9yZSwgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLnB1YmxpY2F0aW9uRGV0YWlsc0NvbnRhaW5lciAucHVibGljYXRpb25BdXRob3I6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnICc7XG4gICAgICAgICAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgICAgICAgICBvcmRlcjogMTsgfVxuICAgICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAucHVibGljYXRpb25EZXRhaWxzQ29udGFpbmVyIC5wdWJsaWNhdGlvbkF1dGhvcjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAgICAgICAgIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5wdWJsaWNhdGlvbkRldGFpbHNDb250YWluZXIgLnB1YmxpY2F0aW9uQXV0aG9yLCBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAucHVibGljYXRpb25EZXRhaWxzQ29udGFpbmVyIC5wdWJsaWNhdGlvbkF1dGhvcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAucHVibGljYXRpb25EZXRhaWxzQ29udGFpbmVyIC5wdWJsaWNhdGlvbkF1dGhvcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgICAgICAgICAgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLnB1YmxpY2F0aW9uRGV0YWlsc0NvbnRhaW5lciAucHVibGljYXRpb25BdXRob3IsIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5wdWJsaWNhdGlvbkRldGFpbHNDb250YWluZXIgLnB1YmxpY2F0aW9uQXV0aG9yOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lOyB9XG4gICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAucHVibGljYXRpb25EZXRhaWxzQ29udGFpbmVyIC5wdWJsaWNhdGlvbkxlbmd0aCB7XG4gICAgICAgICAgICAgIG1heC13aWR0aDogNzVyZW07XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICBmb250LWZhbWlseTogJ3JvYm90b2l0YWxpYycsJ3NhbnMtc2VyaWYnO1xuICAgICAgICAgICAgICBtYXJnaW46IDAuNzVyZW0gMDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjk1cmVtO1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMC45OyB9XG4gICAgICAgICAgICAgIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5wdWJsaWNhdGlvbkRldGFpbHNDb250YWluZXIgLnB1YmxpY2F0aW9uTGVuZ3RoOjpiZWZvcmUsIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5wdWJsaWNhdGlvbkRldGFpbHNDb250YWluZXIgLnB1YmxpY2F0aW9uTGVuZ3RoOjphZnRlciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyAnO1xuICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgICAgICAgICAgb3JkZXI6IDE7IH1cbiAgICAgICAgICAgICAgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLnB1YmxpY2F0aW9uRGV0YWlsc0NvbnRhaW5lciAucHVibGljYXRpb25MZW5ndGg6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAucHVibGljYXRpb25EZXRhaWxzQ29udGFpbmVyIC5wdWJsaWNhdGlvbkxlbmd0aCwgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLnB1YmxpY2F0aW9uRGV0YWlsc0NvbnRhaW5lciAucHVibGljYXRpb25MZW5ndGg6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAgICAgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLnB1YmxpY2F0aW9uRGV0YWlsc0NvbnRhaW5lciAucHVibGljYXRpb25MZW5ndGg6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICAgICAgICAgIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5wdWJsaWNhdGlvbkRldGFpbHNDb250YWluZXIgLnB1YmxpY2F0aW9uTGVuZ3RoLCBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAucHVibGljYXRpb25EZXRhaWxzQ29udGFpbmVyIC5wdWJsaWNhdGlvbkxlbmd0aDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTsgfVxuICAgICAgICAgICAgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLnB1YmxpY2F0aW9uRGV0YWlsc0NvbnRhaW5lciAucHVibGljYXRpb25EZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgIG1heC13aWR0aDogNzVyZW07XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjsgfVxuICAgICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAucHVibGljYXRpb25EZXRhaWxzQ29udGFpbmVyIC5wdWJsaWNhdGlvbkRlc2NyaXB0aW9uOjpiZWZvcmUsIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5wdWJsaWNhdGlvbkRldGFpbHNDb250YWluZXIgLnB1YmxpY2F0aW9uRGVzY3JpcHRpb246OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnICc7XG4gICAgICAgICAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgICAgICAgICBvcmRlcjogMTsgfVxuICAgICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAucHVibGljYXRpb25EZXRhaWxzQ29udGFpbmVyIC5wdWJsaWNhdGlvbkRlc2NyaXB0aW9uOjphZnRlciB7XG4gICAgICAgICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgICAgICAgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLnB1YmxpY2F0aW9uRGV0YWlsc0NvbnRhaW5lciAucHVibGljYXRpb25EZXNjcmlwdGlvbiwgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLnB1YmxpY2F0aW9uRGV0YWlsc0NvbnRhaW5lciAucHVibGljYXRpb25EZXNjcmlwdGlvbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAucHVibGljYXRpb25EZXRhaWxzQ29udGFpbmVyIC5wdWJsaWNhdGlvbkRlc2NyaXB0aW9uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAucHVibGljYXRpb25EZXRhaWxzQ29udGFpbmVyIC5wdWJsaWNhdGlvbkRlc2NyaXB0aW9uLCBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAucHVibGljYXRpb25EZXRhaWxzQ29udGFpbmVyIC5wdWJsaWNhdGlvbkRlc2NyaXB0aW9uOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lOyB9XG4gICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAucHVibGljYXRpb25EZXRhaWxzQ29udGFpbmVyIC5wdWJsaWNhdGlvblByaWNlIHtcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAncm9ib3RvYm9sZCcsJ3NhbnMtc2VyaWYnO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgICAgICAgICAgIG1hcmdpbjogMC41cmVtIDA7IH1cbiAgICAgICAgICAgICAgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLnB1YmxpY2F0aW9uRGV0YWlsc0NvbnRhaW5lciAucHVibGljYXRpb25QcmljZTo6YmVmb3JlLCBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAucHVibGljYXRpb25EZXRhaWxzQ29udGFpbmVyIC5wdWJsaWNhdGlvblByaWNlOjphZnRlciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyAnO1xuICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgICAgICAgICAgb3JkZXI6IDE7IH1cbiAgICAgICAgICAgICAgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLnB1YmxpY2F0aW9uRGV0YWlsc0NvbnRhaW5lciAucHVibGljYXRpb25QcmljZTo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAgICAgICAgIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5wdWJsaWNhdGlvbkRldGFpbHNDb250YWluZXIgLnB1YmxpY2F0aW9uUHJpY2UsIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5wdWJsaWNhdGlvbkRldGFpbHNDb250YWluZXIgLnB1YmxpY2F0aW9uUHJpY2U6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAgICAgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLnB1YmxpY2F0aW9uRGV0YWlsc0NvbnRhaW5lciAucHVibGljYXRpb25QcmljZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgICAgICAgICAgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLnB1YmxpY2F0aW9uRGV0YWlsc0NvbnRhaW5lciAucHVibGljYXRpb25QcmljZSwgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLnB1YmxpY2F0aW9uRGV0YWlsc0NvbnRhaW5lciAucHVibGljYXRpb25QcmljZTpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTsgfVxuICAgICAgICAgICAgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLmV2ZW50VGl0bGVDb250YWluZXIge1xuICAgICAgICAgICAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gICAgICAgICAgICAgIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5ldmVudFRpdGxlQ29udGFpbmVyOjpiZWZvcmUsIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5ldmVudFRpdGxlQ29udGFpbmVyOjphZnRlciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyAnO1xuICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgICAgICAgICAgb3JkZXI6IDE7IH1cbiAgICAgICAgICAgICAgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLmV2ZW50VGl0bGVDb250YWluZXI6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAuZXZlbnRUaXRsZUNvbnRhaW5lciAuZXZlbnRUaXRsZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdyb2JvdG9yZWd1bGFyJywnc2Fucy1zZXJpZic7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS43NXJlbTsgfVxuICAgICAgICAgICAgICAgIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5ldmVudFRpdGxlQ29udGFpbmVyIC5ldmVudFRpdGxlLCBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAuZXZlbnRUaXRsZUNvbnRhaW5lciAuZXZlbnRUaXRsZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAuZXZlbnRUaXRsZUNvbnRhaW5lciAuZXZlbnRUaXRsZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgICAgICAgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLmV2ZW50RGVzY3JpcHRpb25Db250YWluZXIge1xuICAgICAgICAgICAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gICAgICAgICAgICAgIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5ldmVudERlc2NyaXB0aW9uQ29udGFpbmVyOjpiZWZvcmUsIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5ldmVudERlc2NyaXB0aW9uQ29udGFpbmVyOjphZnRlciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyAnO1xuICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgICAgICAgICAgb3JkZXI6IDE7IH1cbiAgICAgICAgICAgICAgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLmV2ZW50RGVzY3JpcHRpb25Db250YWluZXI6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAuZXZlbnREZXNjcmlwdGlvbkNvbnRhaW5lciAuZXZlbnREZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgICAgICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAuZXZlbnREZXNjcmlwdGlvbkNvbnRhaW5lciAuZXZlbnREZXNjcmlwdGlvbiwgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLmV2ZW50RGVzY3JpcHRpb25Db250YWluZXIgLmV2ZW50RGVzY3JpcHRpb246bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgICAgICAgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLmV2ZW50RGVzY3JpcHRpb25Db250YWluZXIgLmV2ZW50RGVzY3JpcHRpb246bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgICAgICAgICAgYm9keSAjcHVibGljYXRpb25zIC5tYWluLWdyaWQgLnB1YmxpY2F0aW9uc0xpc3QgLnB1YmxpY2F0aW9uUm93IC5wdWJsaWNhdGlvbkNvbnRhaW5lciAucHVibGljYXRpb24gLmV2ZW50RGVzY3JpcHRpb25Db250YWluZXIgLm1vcmVJbmZvIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdyb2JvdG9ib2xkJywnc2Fucy1zZXJpZic7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgICAgICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAuZXZlbnREZXNjcmlwdGlvbkNvbnRhaW5lciAubW9yZUluZm8sIGJvZHkgI3B1YmxpY2F0aW9ucyAubWFpbi1ncmlkIC5wdWJsaWNhdGlvbnNMaXN0IC5wdWJsaWNhdGlvblJvdyAucHVibGljYXRpb25Db250YWluZXIgLnB1YmxpY2F0aW9uIC5ldmVudERlc2NyaXB0aW9uQ29udGFpbmVyIC5tb3JlSW5mbzpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyIC5wdWJsaWNhdGlvbiAuZXZlbnREZXNjcmlwdGlvbkNvbnRhaW5lciAubW9yZUluZm86bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgICAgICBib2R5ICNwdWJsaWNhdGlvbnMgLm1haW4tZ3JpZCAucHVibGljYXRpb25zTGlzdCAucHVibGljYXRpb25Sb3cgLnB1YmxpY2F0aW9uQ29udGFpbmVyOm50aC1jaGlsZChvZGQpIC5pbWFnZUNvbnRhaW5lciB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgYm9keSAucGFzdEV4aGliaXRpb24gLmZlYXR1cmVkLWhlcm8ge1xuICAgICAgbWluLWhlaWdodDogMjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgYm9keSAucGFzdEV4aGliaXRpb24gLmZlYXR1cmVkLWhlcm8ge1xuICAgICAgbWluLWhlaWdodDogMjByZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgYm9keSAucGFzdEV4aGliaXRpb24gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlIHtcbiAgICAgIGJvdHRvbTogMCAhaW1wb3J0YW50OyB9IH1cbiAgYm9keSAucGFzdEV4aGliaXRpb24gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlIC5lbnRyeVRpdGxlIHtcbiAgICBmb250LXNpemU6IDMuMjVyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIGJvZHkgLnBhc3RFeGhpYml0aW9uIC5wYXN0RXhoaWJpdGlvbnNCdXR0b24ge1xuICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogNHJlbTsgfVxuICBib2R5IC5wYXN0RXhoaWJpdGlvbiAuYm90dG9tSG91cnMge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgYm9keSAjcGFzdEV4aGliaXRpb25zIC5tYWluLWdyaWQgLmVudHJ5Um93IHtcbiAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgIGJvZHkgI3Bhc3RFeGhpYml0aW9ucyAubWFpbi1ncmlkIC5lbnRyeVJvdzo6YmVmb3JlLCBib2R5ICNwYXN0RXhoaWJpdGlvbnMgLm1haW4tZ3JpZCAuZW50cnlSb3c6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY29udGVudDogJyAnO1xuICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgIG9yZGVyOiAxOyB9XG4gICAgYm9keSAjcGFzdEV4aGliaXRpb25zIC5tYWluLWdyaWQgLmVudHJ5Um93OjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIGJvZHkgI3Bhc3RFeGhpYml0aW9ucyAubWFpbi1ncmlkIC5lbnRyeVJvdyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDRyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgIGJvZHkgI3Bhc3RFeGhpYml0aW9ucyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5ICNwYXN0RXhoaWJpdGlvbnMgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAgIGJvZHkgI3Bhc3RFeGhpYml0aW9ucyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIsIGJvZHkgI3Bhc3RFeGhpYml0aW9ucyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgYm9keSAjcGFzdEV4aGliaXRpb25zIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIGJvZHkgI3Bhc3RFeGhpYml0aW9ucyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIge1xuICAgICAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMS41NjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuNTYyNXJlbTsgfVxuICAgICAgICBib2R5ICNwYXN0RXhoaWJpdGlvbnMgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyLCBib2R5ICNwYXN0RXhoaWJpdGlvbnMgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgIGJvZHkgI3Bhc3RFeGhpYml0aW9ucyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICBib2R5ICNwYXN0RXhoaWJpdGlvbnMgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIC5pbWFnZUNvbnRhaW5lciB7XG4gICAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgICAgIGJvZHkgI3Bhc3RFeGhpYml0aW9ucyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLmltYWdlQ29udGFpbmVyOjpiZWZvcmUsIGJvZHkgI3Bhc3RFeGhpYml0aW9ucyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLmltYWdlQ29udGFpbmVyOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBjb250ZW50OiAnICc7XG4gICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgIG9yZGVyOiAxOyB9XG4gICAgICBib2R5ICNwYXN0RXhoaWJpdGlvbnMgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIC5pbWFnZUNvbnRhaW5lcjo6YWZ0ZXIge1xuICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgYm9keSAjcGFzdEV4aGliaXRpb25zIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAuaW1hZ2VDb250YWluZXIgLmltYWdlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgYm9keSAjcGFzdEV4aGliaXRpb25zIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAuaW1hZ2VDb250YWluZXIgLmltYWdlIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgICAgYm9keSAjcGFzdEV4aGliaXRpb25zIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAuaW1hZ2VDb250YWluZXIgLmltYWdlLCBib2R5ICNwYXN0RXhoaWJpdGlvbnMgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIC5pbWFnZUNvbnRhaW5lciAuaW1hZ2U6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgYm9keSAjcGFzdEV4aGliaXRpb25zIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAuaW1hZ2VDb250YWluZXIgLmltYWdlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgYm9keSAjcGFzdEV4aGliaXRpb25zIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAuaW1hZ2VDb250YWluZXIgLmltYWdlIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDIwMHB4OyB9IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgICAgIGJvZHkgI3Bhc3RFeGhpYml0aW9ucyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLmltYWdlQ29udGFpbmVyIC5pbWFnZSB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAyNTBweDsgfSB9XG4gICAgYm9keSAjcGFzdEV4aGliaXRpb25zIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAudGl0bGVDb250YWluZXIge1xuICAgICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gICAgICBib2R5ICNwYXN0RXhoaWJpdGlvbnMgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIC50aXRsZUNvbnRhaW5lcjo6YmVmb3JlLCBib2R5ICNwYXN0RXhoaWJpdGlvbnMgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIC50aXRsZUNvbnRhaW5lcjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY29udGVudDogJyAnO1xuICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICBvcmRlcjogMTsgfVxuICAgICAgYm9keSAjcGFzdEV4aGliaXRpb25zIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAudGl0bGVDb250YWluZXI6OmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIGJvZHkgI3Bhc3RFeGhpYml0aW9ucyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLnRpdGxlQ29udGFpbmVyIC50aXRsZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBmb250LWZhbWlseTogJ3JvYm90b3JlZ3VsYXInLCdzYW5zLXNlcmlmJztcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgbWFyZ2luLXRvcDogMC43NXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wMXJlbTsgfVxuICAgICAgICBib2R5ICNwYXN0RXhoaWJpdGlvbnMgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIC50aXRsZUNvbnRhaW5lciAudGl0bGUsIGJvZHkgI3Bhc3RFeGhpYml0aW9ucyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLnRpdGxlQ29udGFpbmVyIC50aXRsZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICBib2R5ICNwYXN0RXhoaWJpdGlvbnMgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIC50aXRsZUNvbnRhaW5lciAudGl0bGU6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgYm9keSAjcGFzdEV4aGliaXRpb25zIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAuZGF0ZUNvbnRhaW5lciB7XG4gICAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tdG9wOiAwLjI1cmVtOyB9XG4gICAgICBib2R5ICNwYXN0RXhoaWJpdGlvbnMgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIC5kYXRlQ29udGFpbmVyOjpiZWZvcmUsIGJvZHkgI3Bhc3RFeGhpYml0aW9ucyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLmRhdGVDb250YWluZXI6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgb3JkZXI6IDE7IH1cbiAgICAgIGJvZHkgI3Bhc3RFeGhpYml0aW9ucyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLmRhdGVDb250YWluZXI6OmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIGJvZHkgI3Bhc3RFeGhpYml0aW9ucyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLmRhdGVDb250YWluZXIgLmRhdGUge1xuICAgICAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAgICAgICBib2R5ICNwYXN0RXhoaWJpdGlvbnMgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIC5kYXRlQ29udGFpbmVyIC5kYXRlOjpiZWZvcmUsIGJvZHkgI3Bhc3RFeGhpYml0aW9ucyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLmRhdGVDb250YWluZXIgLmRhdGU6OmFmdGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICBjb250ZW50OiAnICc7XG4gICAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgICBvcmRlcjogMTsgfVxuICAgICAgICBib2R5ICNwYXN0RXhoaWJpdGlvbnMgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIC5kYXRlQ29udGFpbmVyIC5kYXRlOjphZnRlciB7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgYm9keSAjcGFzdEV4aGliaXRpb25zIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAuZGF0ZUNvbnRhaW5lciAuZGF0ZSwgYm9keSAjcGFzdEV4aGliaXRpb25zIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAuZGF0ZUNvbnRhaW5lciAuZGF0ZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICBib2R5ICNwYXN0RXhoaWJpdGlvbnMgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIC5kYXRlQ29udGFpbmVyIC5kYXRlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgICBib2R5ICNwYXN0RXhoaWJpdGlvbnMgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIC5kYXRlQ29udGFpbmVyIC5kYXRlLCBib2R5ICNwYXN0RXhoaWJpdGlvbnMgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIC5kYXRlQ29udGFpbmVyIC5kYXRlOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGZsb2F0OiBub25lOyB9XG4gICAgICAgIGJvZHkgI3Bhc3RFeGhpYml0aW9ucyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLmRhdGVDb250YWluZXIgLmRhdGUgaDMge1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAncm9ib3RvaXRhbGljJywnc2Fucy1zZXJpZic7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDAuOTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4xNXJlbTsgfVxuICAgIGJvZHkgI3Bhc3RFeGhpYml0aW9ucyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLmRlc2NyaXB0aW9uQ29udGFpbmVyIHtcbiAgICAgIG1heC13aWR0aDogNzVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgICAgYm9keSAjcGFzdEV4aGliaXRpb25zIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAuZGVzY3JpcHRpb25Db250YWluZXI6OmJlZm9yZSwgYm9keSAjcGFzdEV4aGliaXRpb25zIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAuZGVzY3JpcHRpb25Db250YWluZXI6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgb3JkZXI6IDE7IH1cbiAgICAgIGJvZHkgI3Bhc3RFeGhpYml0aW9ucyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLmRlc2NyaXB0aW9uQ29udGFpbmVyOjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICBib2R5ICNwYXN0RXhoaWJpdGlvbnMgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIC5kZXNjcmlwdGlvbkNvbnRhaW5lciAuZXZlbnREZXNjcmlwdGlvbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBmb250LXNpemU6IDAuOTJyZW07IH1cbiAgICAgICAgYm9keSAjcGFzdEV4aGliaXRpb25zIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAuZGVzY3JpcHRpb25Db250YWluZXIgLmV2ZW50RGVzY3JpcHRpb24sIGJvZHkgI3Bhc3RFeGhpYml0aW9ucyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLmRlc2NyaXB0aW9uQ29udGFpbmVyIC5ldmVudERlc2NyaXB0aW9uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgIGJvZHkgI3Bhc3RFeGhpYml0aW9ucyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLmRlc2NyaXB0aW9uQ29udGFpbmVyIC5ldmVudERlc2NyaXB0aW9uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIGJvZHkgI3Bhc3RFeGhpYml0aW9ucyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIuZW5kOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICBib2R5ICNwcmVzcyAubWFpbi1ncmlkIC5lbnRyeVJvdyB7XG4gICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgICBib2R5ICNwcmVzcyAubWFpbi1ncmlkIC5lbnRyeVJvdzo6YmVmb3JlLCBib2R5ICNwcmVzcyAubWFpbi1ncmlkIC5lbnRyeVJvdzo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjb250ZW50OiAnICc7XG4gICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgb3JkZXI6IDE7IH1cbiAgICBib2R5ICNwcmVzcyAubWFpbi1ncmlkIC5lbnRyeVJvdzo6YWZ0ZXIge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICBib2R5ICNwcmVzcyAubWFpbi1ncmlkIC5lbnRyeVJvdyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDRyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgIGJvZHkgI3ByZXNzIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkgI3ByZXNzIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgICBib2R5ICNwcmVzcyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIsIGJvZHkgI3ByZXNzIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICBib2R5ICNwcmVzcyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICBib2R5ICNwcmVzcyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIge1xuICAgICAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkgI3ByZXNzIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICBib2R5ICNwcmVzcyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIsIGJvZHkgI3ByZXNzIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICBib2R5ICNwcmVzcyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICBib2R5ICNwcmVzcyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLmltYWdlQ29udGFpbmVyIHtcbiAgICAgIG1heC13aWR0aDogNzVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgICAgYm9keSAjcHJlc3MgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIC5pbWFnZUNvbnRhaW5lcjo6YmVmb3JlLCBib2R5ICNwcmVzcyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLmltYWdlQ29udGFpbmVyOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBjb250ZW50OiAnICc7XG4gICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgIG9yZGVyOiAxOyB9XG4gICAgICBib2R5ICNwcmVzcyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLmltYWdlQ29udGFpbmVyOjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICBib2R5ICNwcmVzcyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLmltYWdlQ29udGFpbmVyIC5pbWFnZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIGJvZHkgI3ByZXNzIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAuaW1hZ2VDb250YWluZXIgLmltYWdlIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgICAgYm9keSAjcHJlc3MgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIC5pbWFnZUNvbnRhaW5lciAuaW1hZ2UsIGJvZHkgI3ByZXNzIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAuaW1hZ2VDb250YWluZXIgLmltYWdlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgIGJvZHkgI3ByZXNzIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAuaW1hZ2VDb250YWluZXIgLmltYWdlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgYm9keSAjcHJlc3MgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIC5pbWFnZUNvbnRhaW5lciAuaW1hZ2Uge1xuICAgICAgICAgICAgbWluLWhlaWdodDogMjAwcHg7IH0gfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAgICAgYm9keSAjcHJlc3MgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIC5pbWFnZUNvbnRhaW5lciAuaW1hZ2Uge1xuICAgICAgICAgICAgbWluLWhlaWdodDogMjUwcHg7IH0gfVxuICAgIGJvZHkgI3ByZXNzIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAub3JnQ29udGFpbmVyIHtcbiAgICAgIG1heC13aWR0aDogNzVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi10b3A6IDAuNzVyZW07IH1cbiAgICAgIGJvZHkgI3ByZXNzIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAub3JnQ29udGFpbmVyOjpiZWZvcmUsIGJvZHkgI3ByZXNzIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAub3JnQ29udGFpbmVyOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBjb250ZW50OiAnICc7XG4gICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgIG9yZGVyOiAxOyB9XG4gICAgICBib2R5ICNwcmVzcyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLm9yZ0NvbnRhaW5lcjo6YWZ0ZXIge1xuICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgYm9keSAjcHJlc3MgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIC5vcmdDb250YWluZXIgLm9yZyB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmUxMDA7IH1cbiAgICAgICAgYm9keSAjcHJlc3MgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIC5vcmdDb250YWluZXIgLm9yZyBoMyB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICdiZWJhc19uZXVlYm9sZCcsJ3NhbnMtc2VyaWYnO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwLjk7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMHJlbTtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4xcmVtO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICBjb2xvcjogIzFkMWQxZDtcbiAgICAgICAgICBwYWRkaW5nOiAwLjM1cmVtIDAuNXJlbTsgfVxuICAgIGJvZHkgI3ByZXNzIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAuZGF0ZUNvbnRhaW5lciB7XG4gICAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tdG9wOiAwLjI1cmVtOyB9XG4gICAgICBib2R5ICNwcmVzcyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLmRhdGVDb250YWluZXI6OmJlZm9yZSwgYm9keSAjcHJlc3MgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIC5kYXRlQ29udGFpbmVyOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBjb250ZW50OiAnICc7XG4gICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgIG9yZGVyOiAxOyB9XG4gICAgICBib2R5ICNwcmVzcyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLmRhdGVDb250YWluZXI6OmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIGJvZHkgI3ByZXNzIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAuZGF0ZUNvbnRhaW5lciAuZGF0ZSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlNWU1ZTU7IH1cbiAgICAgICAgYm9keSAjcHJlc3MgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIC5kYXRlQ29udGFpbmVyIC5kYXRlIGgzIHtcbiAgICAgICAgICBmb250LWZhbWlseTogJ2JlYmFzX25ldWVib2xkJywnc2Fucy1zZXJpZic7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDAuOTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwcmVtO1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjFyZW07XG4gICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgIGNvbG9yOiAjMWQxZDFkO1xuICAgICAgICAgIHBhZGRpbmc6IDAuMzVyZW0gMC41cmVtOyB9XG4gICAgYm9keSAjcHJlc3MgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIC50aXRsZUNvbnRhaW5lciB7XG4gICAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgICAgIGJvZHkgI3ByZXNzIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAudGl0bGVDb250YWluZXI6OmJlZm9yZSwgYm9keSAjcHJlc3MgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIC50aXRsZUNvbnRhaW5lcjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY29udGVudDogJyAnO1xuICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICBvcmRlcjogMTsgfVxuICAgICAgYm9keSAjcHJlc3MgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIC50aXRsZUNvbnRhaW5lcjo6YWZ0ZXIge1xuICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgYm9keSAjcHJlc3MgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIC50aXRsZUNvbnRhaW5lciAudGl0bGUge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdyb2JvdG9yZWd1bGFyJywnc2Fucy1zZXJpZic7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICBmb250LXNpemU6IDEuNDVyZW07XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAxcmVtOyB9XG4gICAgICAgIGJvZHkgI3ByZXNzIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAudGl0bGVDb250YWluZXIgLnRpdGxlLCBib2R5ICNwcmVzcyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLnRpdGxlQ29udGFpbmVyIC50aXRsZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICBib2R5ICNwcmVzcyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLnRpdGxlQ29udGFpbmVyIC50aXRsZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICBib2R5ICNwcmVzcyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLmRlc2NyaXB0aW9uQ29udGFpbmVyIHtcbiAgICAgIG1heC13aWR0aDogNzVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgICAgYm9keSAjcHJlc3MgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIC5kZXNjcmlwdGlvbkNvbnRhaW5lcjo6YmVmb3JlLCBib2R5ICNwcmVzcyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLmRlc2NyaXB0aW9uQ29udGFpbmVyOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBjb250ZW50OiAnICc7XG4gICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgIG9yZGVyOiAxOyB9XG4gICAgICBib2R5ICNwcmVzcyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLmRlc2NyaXB0aW9uQ29udGFpbmVyOjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICBib2R5ICNwcmVzcyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLmRlc2NyaXB0aW9uQ29udGFpbmVyIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBmb250LXNpemU6IDAuOTJyZW07IH1cbiAgICAgICAgYm9keSAjcHJlc3MgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIC5kZXNjcmlwdGlvbkNvbnRhaW5lciAuZGVzY3JpcHRpb24sIGJvZHkgI3ByZXNzIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAuZGVzY3JpcHRpb25Db250YWluZXIgLmRlc2NyaXB0aW9uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgIGJvZHkgI3ByZXNzIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAuZGVzY3JpcHRpb25Db250YWluZXIgLmRlc2NyaXB0aW9uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIGJvZHkgI3ByZXNzIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAucmVhZEFydGljbGVDb250YWluZXIge1xuICAgICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAgIGJvZHkgI3ByZXNzIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAucmVhZEFydGljbGVDb250YWluZXIge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDAuNXJlbTsgfSB9XG4gICAgICBib2R5ICNwcmVzcyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLnJlYWRBcnRpY2xlQ29udGFpbmVyOjpiZWZvcmUsIGJvZHkgI3ByZXNzIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAucmVhZEFydGljbGVDb250YWluZXI6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgb3JkZXI6IDE7IH1cbiAgICAgIGJvZHkgI3ByZXNzIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAucmVhZEFydGljbGVDb250YWluZXI6OmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIGJvZHkgI3ByZXNzIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAucmVhZEFydGljbGVDb250YWluZXIgLnJlYWRBcnRpY2xlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMXJlbTsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAgICAgYm9keSAjcHJlc3MgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIC5yZWFkQXJ0aWNsZUNvbnRhaW5lciAucmVhZEFydGljbGUge1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5ICNwcmVzcyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLnJlYWRBcnRpY2xlQ29udGFpbmVyIC5yZWFkQXJ0aWNsZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgICAgICAgIGJvZHkgI3ByZXNzIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAucmVhZEFydGljbGVDb250YWluZXIgLnJlYWRBcnRpY2xlLCBib2R5ICNwcmVzcyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLnJlYWRBcnRpY2xlQ29udGFpbmVyIC5yZWFkQXJ0aWNsZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgICBib2R5ICNwcmVzcyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLnJlYWRBcnRpY2xlQ29udGFpbmVyIC5yZWFkQXJ0aWNsZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgICAgICBib2R5ICNwcmVzcyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLnJlYWRBcnRpY2xlQ29udGFpbmVyIC5yZWFkQXJ0aWNsZSB7XG4gICAgICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5ICNwcmVzcyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLnJlYWRBcnRpY2xlQ29udGFpbmVyIC5yZWFkQXJ0aWNsZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAgICAgICBib2R5ICNwcmVzcyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLnJlYWRBcnRpY2xlQ29udGFpbmVyIC5yZWFkQXJ0aWNsZSwgYm9keSAjcHJlc3MgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIC5yZWFkQXJ0aWNsZUNvbnRhaW5lciAucmVhZEFydGljbGU6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgICAgYm9keSAjcHJlc3MgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIC5yZWFkQXJ0aWNsZUNvbnRhaW5lciAucmVhZEFydGljbGU6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICBib2R5ICNwcmVzcyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIgLnJlYWRBcnRpY2xlQ29udGFpbmVyIC5yZWFkQXJ0aWNsZSB7XG4gICAgICAgICAgICB3aWR0aDogNDEuNjY2NjclO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkgI3ByZXNzIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAucmVhZEFydGljbGVDb250YWluZXIgLnJlYWRBcnRpY2xlIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgICAgYm9keSAjcHJlc3MgLm1haW4tZ3JpZCAuZW50cnlSb3cgLmVudHJ5Q29udGFpbmVyIC5yZWFkQXJ0aWNsZUNvbnRhaW5lciAucmVhZEFydGljbGUsIGJvZHkgI3ByZXNzIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAucmVhZEFydGljbGVDb250YWluZXIgLnJlYWRBcnRpY2xlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAgIGJvZHkgI3ByZXNzIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAucmVhZEFydGljbGVDb250YWluZXIgLnJlYWRBcnRpY2xlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgICAgICAgIGJvZHkgI3ByZXNzIC5tYWluLWdyaWQgLmVudHJ5Um93IC5lbnRyeUNvbnRhaW5lciAucmVhZEFydGljbGVDb250YWluZXIgLnJlYWRBcnRpY2xlOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIGZsb2F0OiBsZWZ0OyB9IH1cbiAgICBib2R5ICNwcmVzcyAubWFpbi1ncmlkIC5lbnRyeVJvdyAuZW50cnlDb250YWluZXIuZW5kOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICBib2R5ICN2aXNpdG9ySW5mb3JtYXRpb24gcCB7XG4gICAgZm9udC1zaXplOiAwLjk1cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjAxcmVtOyB9XG4gIGJvZHkgI3Zpc2l0b3JJbmZvcm1hdGlvbiAuZW50cnlSb3cgLmVudHJ5IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDRyZW07XG4gICAgcGFkZGluZy1yaWdodDogNHJlbTtcbiAgICBtaW4taGVpZ2h0OiA1NzBweDsgfVxuICBib2R5ICN2aXNpdG9ySW5mb3JtYXRpb24gLmVudHJ5Um93OmZpcnN0LW9mLXR5cGUgLmVudHJ5IHtcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAgIGJvZHkgI3Zpc2l0b3JJbmZvcm1hdGlvbiAuZW50cnlSb3c6Zmlyc3Qtb2YtdHlwZSAuZW50cnkgLmhvdXJzQ29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gIGJvZHkgI3Zpc2l0b3JJbmZvcm1hdGlvbiAuaG91cnNDb250YWluZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmUxMDA7IH1cbiAgICBib2R5ICN2aXNpdG9ySW5mb3JtYXRpb24gLmhvdXJzQ29udGFpbmVyIC5ob3Vyc0ljb24ge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfVxuICAgIGJvZHkgI3Zpc2l0b3JJbmZvcm1hdGlvbiAuaG91cnNDb250YWluZXIgLmhvdXJzIHtcbiAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgIGJvZHkgI3Zpc2l0b3JJbmZvcm1hdGlvbiAuaG91cnNDb250YWluZXIgLmhvdXJzIC50aXRsZUJsb2NrIGgyIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdiZWJhc19uZXVlcmVndWxhcicsJ3NhbnMtc2VyaWYnOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgYm9keSAjdmlzaXRvckluZm9ybWF0aW9uIC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLnRpdGxlQmxvY2sgaDIge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgICBib2R5ICN2aXNpdG9ySW5mb3JtYXRpb24gLmhvdXJzQ29udGFpbmVyIC5ob3VycyAudGl0bGVCbG9jayBoMiwgYm9keSAjdmlzaXRvckluZm9ybWF0aW9uIC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLnRpdGxlQmxvY2sgaDI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgYm9keSAjdmlzaXRvckluZm9ybWF0aW9uIC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLnRpdGxlQmxvY2sgaDI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICBib2R5ICN2aXNpdG9ySW5mb3JtYXRpb24gLmhvdXJzQ29udGFpbmVyIC5ob3VycyAuaGVhZGluZ0Jsb2NrIGgzIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIGJvZHkgI3Zpc2l0b3JJbmZvcm1hdGlvbiAuaG91cnNDb250YWluZXIgLmhvdXJzIC5oZWFkaW5nQmxvY2sgaDMge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgICBib2R5ICN2aXNpdG9ySW5mb3JtYXRpb24gLmhvdXJzQ29udGFpbmVyIC5ob3VycyAuaGVhZGluZ0Jsb2NrIGgzLCBib2R5ICN2aXNpdG9ySW5mb3JtYXRpb24gLmhvdXJzQ29udGFpbmVyIC5ob3VycyAuaGVhZGluZ0Jsb2NrIGgzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgIGJvZHkgI3Zpc2l0b3JJbmZvcm1hdGlvbiAuaG91cnNDb250YWluZXIgLmhvdXJzIC5oZWFkaW5nQmxvY2sgaDM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICBib2R5ICN2aXNpdG9ySW5mb3JtYXRpb24gLmhvdXJzQ29udGFpbmVyIC5ob3VycyAucmVndWxhckhvdXJzIC5ob3VyQmxvY2sge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgYm9keSAjdmlzaXRvckluZm9ybWF0aW9uIC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLnJlZ3VsYXJIb3VycyAuaG91ckJsb2NrIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgICAgYm9keSAjdmlzaXRvckluZm9ybWF0aW9uIC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLnJlZ3VsYXJIb3VycyAuaG91ckJsb2NrLCBib2R5ICN2aXNpdG9ySW5mb3JtYXRpb24gLmhvdXJzQ29udGFpbmVyIC5ob3VycyAucmVndWxhckhvdXJzIC5ob3VyQmxvY2s6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgYm9keSAjdmlzaXRvckluZm9ybWF0aW9uIC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLnJlZ3VsYXJIb3VycyAuaG91ckJsb2NrOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgYm9keSAjdmlzaXRvckluZm9ybWF0aW9uIC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLnNwZWNpYWxIb3VycyB7XG4gICAgICAgIG1heC13aWR0aDogNzVyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgICAgICAgYm9keSAjdmlzaXRvckluZm9ybWF0aW9uIC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLnNwZWNpYWxIb3Vyczo6YmVmb3JlLCBib2R5ICN2aXNpdG9ySW5mb3JtYXRpb24gLmhvdXJzQ29udGFpbmVyIC5ob3VycyAuc3BlY2lhbEhvdXJzOjphZnRlciB7XG4gICAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgICAgY29udGVudDogJyAnO1xuICAgICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgICAgb3JkZXI6IDE7IH1cbiAgICAgICAgYm9keSAjdmlzaXRvckluZm9ybWF0aW9uIC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLnNwZWNpYWxIb3Vyczo6YWZ0ZXIge1xuICAgICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAgIGJvZHkgI3Zpc2l0b3JJbmZvcm1hdGlvbiAuaG91cnNDb250YWluZXIgLmhvdXJzIC5zcGVjaWFsSG91cnMgLnNwZWNpYWxXcmFwcGVyIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgICBib2R5ICN2aXNpdG9ySW5mb3JtYXRpb24gLmhvdXJzQ29udGFpbmVyIC5ob3VycyAuc3BlY2lhbEhvdXJzIC5zcGVjaWFsV3JhcHBlciB7XG4gICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgICAgIGJvZHkgI3Zpc2l0b3JJbmZvcm1hdGlvbiAuaG91cnNDb250YWluZXIgLmhvdXJzIC5zcGVjaWFsSG91cnMgLnNwZWNpYWxXcmFwcGVyLCBib2R5ICN2aXNpdG9ySW5mb3JtYXRpb24gLmhvdXJzQ29udGFpbmVyIC5ob3VycyAuc3BlY2lhbEhvdXJzIC5zcGVjaWFsV3JhcHBlcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICBib2R5ICN2aXNpdG9ySW5mb3JtYXRpb24gLmhvdXJzQ29udGFpbmVyIC5ob3VycyAuc3BlY2lhbEhvdXJzIC5zcGVjaWFsV3JhcHBlcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgICAgIGJvZHkgI3Zpc2l0b3JJbmZvcm1hdGlvbiAuaG91cnNDb250YWluZXIgLmhvdXJzIC5zcGVjaWFsSG91cnMgLnNwZWNpYWxXcmFwcGVyLCBib2R5ICN2aXNpdG9ySW5mb3JtYXRpb24gLmhvdXJzQ29udGFpbmVyIC5ob3VycyAuc3BlY2lhbEhvdXJzIC5zcGVjaWFsV3JhcHBlcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgICBib2R5ICN2aXNpdG9ySW5mb3JtYXRpb24gLmhvdXJzQ29udGFpbmVyIC5ob3VycyAuc3BlY2lhbEhvdXJzIC5zcGVjaWFsV3JhcHBlciAuZGV0YWlsV3JhcHBlciB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgICAgICAgICAgIGJvZHkgI3Zpc2l0b3JJbmZvcm1hdGlvbiAuaG91cnNDb250YWluZXIgLmhvdXJzIC5zcGVjaWFsSG91cnMgLnNwZWNpYWxXcmFwcGVyIC5kZXRhaWxXcmFwcGVyOjpiZWZvcmUsIGJvZHkgI3Zpc2l0b3JJbmZvcm1hdGlvbiAuaG91cnNDb250YWluZXIgLmhvdXJzIC5zcGVjaWFsSG91cnMgLnNwZWNpYWxXcmFwcGVyIC5kZXRhaWxXcmFwcGVyOjphZnRlciB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgICAgICBjb250ZW50OiAnICc7XG4gICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgICAgICAgIG9yZGVyOiAxOyB9XG4gICAgICAgICAgICBib2R5ICN2aXNpdG9ySW5mb3JtYXRpb24gLmhvdXJzQ29udGFpbmVyIC5ob3VycyAuc3BlY2lhbEhvdXJzIC5zcGVjaWFsV3JhcHBlciAuZGV0YWlsV3JhcHBlcjo6YWZ0ZXIge1xuICAgICAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICAgICAgYm9keSAjdmlzaXRvckluZm9ybWF0aW9uIC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLnNwZWNpYWxIb3VycyAuc3BlY2lhbFdyYXBwZXIgLmRldGFpbFdyYXBwZXIgLmhvdXJCbG9jayB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDByZW07IH1cbiAgICAgICAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAgICAgICBib2R5ICN2aXNpdG9ySW5mb3JtYXRpb24gLmhvdXJzQ29udGFpbmVyIC5ob3VycyAuc3BlY2lhbEhvdXJzIC5zcGVjaWFsV3JhcHBlciAuZGV0YWlsV3JhcHBlciAuaG91ckJsb2NrIHtcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgICAgICAgICAgYm9keSAjdmlzaXRvckluZm9ybWF0aW9uIC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLnNwZWNpYWxIb3VycyAuc3BlY2lhbFdyYXBwZXIgLmRldGFpbFdyYXBwZXIgLmhvdXJCbG9jaywgYm9keSAjdmlzaXRvckluZm9ybWF0aW9uIC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLnNwZWNpYWxIb3VycyAuc3BlY2lhbFdyYXBwZXIgLmRldGFpbFdyYXBwZXIgLmhvdXJCbG9jazpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgICAgICBib2R5ICN2aXNpdG9ySW5mb3JtYXRpb24gLmhvdXJzQ29udGFpbmVyIC5ob3VycyAuc3BlY2lhbEhvdXJzIC5zcGVjaWFsV3JhcHBlciAuZGV0YWlsV3JhcHBlciAuaG91ckJsb2NrOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfVxuICBib2R5ICN2aXNpdG9ySW5mb3JtYXRpb24gI2xvY2F0aW9uTWFwIHtcbiAgICBwYWRkaW5nOiAwcHggIWltcG9ydGFudDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIGJvZHkgI3Zpc2l0b3JJbmZvcm1hdGlvbiAjbG9jYXRpb25NYXAge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGxlZnQ6IDUwJTsgfSB9XG4gICAgYm9keSAjdmlzaXRvckluZm9ybWF0aW9uICNsb2NhdGlvbk1hcCAuZ29vZ2xlLW1hcHMge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZy1ib3R0b206IDEwMCU7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgYm9keSAjdmlzaXRvckluZm9ybWF0aW9uICNsb2NhdGlvbk1hcCAuZ29vZ2xlLW1hcHMgaWZyYW1lIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgYm9keSAjdmlzaXRvckluZm9ybWF0aW9uICNsb2NhdGlvbkRldGFpbHMge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIGJvZHkgI3Zpc2l0b3JJbmZvcm1hdGlvbiAjbG9jYXRpb25EZXRhaWxzIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBsZWZ0OiAtNTAlOyB9IH1cbiAgICBib2R5ICN2aXNpdG9ySW5mb3JtYXRpb24gI2xvY2F0aW9uRGV0YWlscyAuaWNvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gICAgYm9keSAjdmlzaXRvckluZm9ybWF0aW9uICNsb2NhdGlvbkRldGFpbHMgaDIge1xuICAgICAgZm9udC1mYW1pbHk6ICdiZWJhc19uZXVlcmVndWxhcicsJ3NhbnMtc2VyaWYnO1xuICAgICAgZm9udC1zaXplOiAzLjI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDAuOTtcbiAgICAgIG1hcmdpbjogMXJlbSAwOyB9XG4gICAgYm9keSAjdmlzaXRvckluZm9ybWF0aW9uICNsb2NhdGlvbkRldGFpbHMgLmFkZHJlc3Mge1xuICAgICAgZm9udC1mYW1pbHk6ICdiZWJhc19uZXVlYm9sZCcsJ3NhbnMtc2VyaWYnO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgICBmb250LXNpemU6IDEuMXJlbTsgfVxuICBib2R5ICN2aXNpdG9ySW5mb3JtYXRpb24gI2Fib3V0T1VBRyBwOmZpcnN0LW9mLXR5cGUge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgYm9keSAjcmVzZWFyY2hBbmRMZWFybiAuZW50cnlSb3c6bnRoLW9mLXR5cGUoZXZlbikgLmltYWdlIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGxlZnQ6IDUwJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5ICNyZXNlYXJjaEFuZExlYXJuIC5lbnRyeVJvdzpudGgtb2YtdHlwZShldmVuKSAuY29udGVudCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBsZWZ0OiAtNTAlOyB9IH1cbiAgYm9keSAjcmVzZWFyY2hBbmRMZWFybiAuZW50cnlSb3cgLmltYWdlIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIGJvZHkgI3Jlc2VhcmNoQW5kTGVhcm4gLmVudHJ5Um93IC5pbWFnZSB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgICAgbWluLWhlaWdodDogNTcwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkgI3Jlc2VhcmNoQW5kTGVhcm4gLmVudHJ5Um93IC5pbWFnZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICBib2R5ICNyZXNlYXJjaEFuZExlYXJuIC5lbnRyeVJvdyAuaW1hZ2UsIGJvZHkgI3Jlc2VhcmNoQW5kTGVhcm4gLmVudHJ5Um93IC5pbWFnZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICBib2R5ICNyZXNlYXJjaEFuZExlYXJuIC5lbnRyeVJvdyAuaW1hZ2U6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgYm9keSAjcmVzZWFyY2hBbmRMZWFybiAuZW50cnlSb3cgLmltYWdlIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgICBtaW4taGVpZ2h0OiA0NjVweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkgI3Jlc2VhcmNoQW5kTGVhcm4gLmVudHJ5Um93IC5pbWFnZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgICAgYm9keSAjcmVzZWFyY2hBbmRMZWFybiAuZW50cnlSb3cgLmltYWdlLCBib2R5ICNyZXNlYXJjaEFuZExlYXJuIC5lbnRyeVJvdyAuaW1hZ2U6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgYm9keSAjcmVzZWFyY2hBbmRMZWFybiAuZW50cnlSb3cgLmltYWdlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgYm9keSAjcmVzZWFyY2hBbmRMZWFybiAuZW50cnlSb3cgLmltYWdlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgICAgbWluLWhlaWdodDogMjAwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkgI3Jlc2VhcmNoQW5kTGVhcm4gLmVudHJ5Um93IC5pbWFnZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICBib2R5ICNyZXNlYXJjaEFuZExlYXJuIC5lbnRyeVJvdyAuaW1hZ2UsIGJvZHkgI3Jlc2VhcmNoQW5kTGVhcm4gLmVudHJ5Um93IC5pbWFnZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICBib2R5ICNyZXNlYXJjaEFuZExlYXJuIC5lbnRyeVJvdyAuaW1hZ2U6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgYm9keSAjcmVzZWFyY2hBbmRMZWFybiAuZW50cnlSb3cgLmVudHJ5LmNvbnRlbnQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIGJvZHkgI3Jlc2VhcmNoQW5kTGVhcm4gLmVudHJ5Um93IC5lbnRyeS5jb250ZW50IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNHJlbSAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDRyZW0gIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgICBtaW4taGVpZ2h0OiA1NzBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgYm9keSAjcmVzZWFyY2hBbmRMZWFybiAuZW50cnlSb3cgLmVudHJ5LmNvbnRlbnQge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgYm9keSAjcmVzZWFyY2hBbmRMZWFybiAuZW50cnlSb3cgLmVudHJ5LmNvbnRlbnQsIGJvZHkgI3Jlc2VhcmNoQW5kTGVhcm4gLmVudHJ5Um93IC5lbnRyeS5jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgIGJvZHkgI3Jlc2VhcmNoQW5kTGVhcm4gLmVudHJ5Um93IC5lbnRyeS5jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgIGJvZHkgI3Jlc2VhcmNoQW5kTGVhcm4gLmVudHJ5Um93IC5lbnRyeS5jb250ZW50IHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgICBtaW4taGVpZ2h0OiA0NjVweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkgI3Jlc2VhcmNoQW5kTGVhcm4gLmVudHJ5Um93IC5lbnRyeS5jb250ZW50IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgICBib2R5ICNyZXNlYXJjaEFuZExlYXJuIC5lbnRyeVJvdyAuZW50cnkuY29udGVudCwgYm9keSAjcmVzZWFyY2hBbmRMZWFybiAuZW50cnlSb3cgLmVudHJ5LmNvbnRlbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgYm9keSAjcmVzZWFyY2hBbmRMZWFybiAuZW50cnlSb3cgLmVudHJ5LmNvbnRlbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICBib2R5ICNyZXNlYXJjaEFuZExlYXJuIC5lbnRyeVJvdyAuZW50cnkuY29udGVudCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICAgIG1pbi1oZWlnaHQ6IDIwMHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5ICNyZXNlYXJjaEFuZExlYXJuIC5lbnRyeVJvdyAuZW50cnkuY29udGVudCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICBib2R5ICNyZXNlYXJjaEFuZExlYXJuIC5lbnRyeVJvdyAuZW50cnkuY29udGVudCwgYm9keSAjcmVzZWFyY2hBbmRMZWFybiAuZW50cnlSb3cgLmVudHJ5LmNvbnRlbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgYm9keSAjcmVzZWFyY2hBbmRMZWFybiAuZW50cnlSb3cgLmVudHJ5LmNvbnRlbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICBib2R5ICNyZXNlYXJjaEFuZExlYXJuIC5lbnRyeVJvdyAuZW50cnkuY29udGVudCBoMiB7XG4gICAgICBjb2xvcjogIzg3NzE0ODtcbiAgICAgIGZvbnQtZmFtaWx5OiAnYmViYXNfbmV1ZXJlZ3VsYXInLCdzYW5zLXNlcmlmJztcbiAgICAgIGZvbnQtc2l6ZTogMy4yNXJlbTsgfVxuICBib2R5ICNqb2luVXMgLmVudHJ5Um93IC5pbWFnZSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgbWluLWhlaWdodDogMjAwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICBib2R5ICNqb2luVXMgLmVudHJ5Um93IC5pbWFnZSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIGJvZHkgI2pvaW5VcyAuZW50cnlSb3cgLmltYWdlLCBib2R5ICNqb2luVXMgLmVudHJ5Um93IC5pbWFnZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICBib2R5ICNqb2luVXMgLmVudHJ5Um93IC5pbWFnZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICBib2R5ICNqb2luVXMgLmVudHJ5Um93IC5jb250ZW50IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nOiAycmVtIDRyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgYm9keSAjam9pblVzIC5lbnRyeVJvdyAuY29udGVudCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIGJvZHkgI2pvaW5VcyAuZW50cnlSb3cgLmNvbnRlbnQsIGJvZHkgI2pvaW5VcyAuZW50cnlSb3cgLmNvbnRlbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgYm9keSAjam9pblVzIC5lbnRyeVJvdyAuY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIGJvZHkgI2pvaW5VcyAuZW50cnlSb3cgLmNvbnRlbnQgaDIge1xuICAgICAgY29sb3I6ICMxZDFkMWQ7XG4gICAgICBmb250LWZhbWlseTogJ2JlYmFzX25ldWVyZWd1bGFyJywnc2Fucy1zZXJpZic7XG4gICAgICBmb250LXNpemU6IDMuMjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMC45O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgYm9keSAuY29sbGVjdGlvbiAuZmVhdHVyZWQtaGVybyB7XG4gICAgICBtaW4taGVpZ2h0OiAxOHJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgYm9keSAuY29sbGVjdGlvbiAuZmVhdHVyZWQtaGVybyB7XG4gICAgICBtaW4taGVpZ2h0OiAyMHJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICBib2R5IC5jb2xsZWN0aW9uIC5mZWF0dXJlZC1oZXJvIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDQwcmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIGJvZHkgLmNvbGxlY3Rpb24gLnBhZ2VUaXRsZUNvbnRhaW5lciAucGFnZVRpdGxlIHtcbiAgICAgIGJvdHRvbTogMCAhaW1wb3J0YW50OyB9IH1cbiAgYm9keSAuY29sbGVjdGlvbiAucGFnZVRpdGxlQ29udGFpbmVyIC5wYWdlVGl0bGUgLmVudHJ5VGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMy4yNXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgYm9keSAuY29sbGVjdGlvbiAubWFpbi1jb250YWluZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICBib2R5IC5jb2xsZWN0aW9uIC5tYWluLWNvbnRhaW5lciB7XG4gICAgICAgIG1hcmdpbi10b3A6IC02cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICBib2R5IC5jb2xsZWN0aW9uIC5tYWluLWNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAycmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICBib2R5IC5jb2xsZWN0aW9uIC5tYWluLWNvbnRhaW5lciAubWFpbi1ncmlkIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDJyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgIGJvZHkgLmNvbGxlY3Rpb24gLm1haW4tY29udGFpbmVyIC5tYWluLWdyaWQge1xuICAgICAgICBtYXJnaW4tdG9wOiAycmVtOyB9IH1cbiAgICBib2R5IC5jb2xsZWN0aW9uIC5tYWluLWNvbnRhaW5lciBhcnRpY2xlIC5hcnRpY2xlVG9wIHtcbiAgICAgIG1heC13aWR0aDogNzVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgICAgYm9keSAuY29sbGVjdGlvbiAubWFpbi1jb250YWluZXIgYXJ0aWNsZSAuYXJ0aWNsZVRvcDo6YmVmb3JlLCBib2R5IC5jb2xsZWN0aW9uIC5tYWluLWNvbnRhaW5lciBhcnRpY2xlIC5hcnRpY2xlVG9wOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBjb250ZW50OiAnICc7XG4gICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgIG9yZGVyOiAxOyB9XG4gICAgICBib2R5IC5jb2xsZWN0aW9uIC5tYWluLWNvbnRhaW5lciBhcnRpY2xlIC5hcnRpY2xlVG9wOjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAgIGJvZHkgLmNvbGxlY3Rpb24gLm1haW4tY29udGFpbmVyIGFydGljbGUgLmFydGljbGVUb3AgLmVudHJ5Q29udGVudFNwbGl0IHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5IC5jb2xsZWN0aW9uIC5tYWluLWNvbnRhaW5lciBhcnRpY2xlIC5hcnRpY2xlVG9wIC5lbnRyeUNvbnRlbnRTcGxpdCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAgICAgYm9keSAuY29sbGVjdGlvbiAubWFpbi1jb250YWluZXIgYXJ0aWNsZSAuYXJ0aWNsZVRvcCAuZW50cnlDb250ZW50U3BsaXQsIGJvZHkgLmNvbGxlY3Rpb24gLm1haW4tY29udGFpbmVyIGFydGljbGUgLmFydGljbGVUb3AgLmVudHJ5Q29udGVudFNwbGl0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgIGJvZHkgLmNvbGxlY3Rpb24gLm1haW4tY29udGFpbmVyIGFydGljbGUgLmFydGljbGVUb3AgLmVudHJ5Q29udGVudFNwbGl0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgYm9keSAuY29sbGVjdGlvbiAubWFpbi1jb250YWluZXIgYXJ0aWNsZSAuYXJ0aWNsZVRvcCAuZW50cnlDb250ZW50U3BsaXQge1xuICAgICAgICAgIHdpZHRoOiA4My4zMzMzMyU7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgYm9keSAuY29sbGVjdGlvbiAubWFpbi1jb250YWluZXIgYXJ0aWNsZSAuYXJ0aWNsZVRvcCAuZW50cnlDb250ZW50U3BsaXQge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgIGJvZHkgLmNvbGxlY3Rpb24gLm1haW4tY29udGFpbmVyIGFydGljbGUgLmFydGljbGVUb3AgLmVudHJ5Q29udGVudFNwbGl0LCBib2R5IC5jb2xsZWN0aW9uIC5tYWluLWNvbnRhaW5lciBhcnRpY2xlIC5hcnRpY2xlVG9wIC5lbnRyeUNvbnRlbnRTcGxpdDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICBib2R5IC5jb2xsZWN0aW9uIC5tYWluLWNvbnRhaW5lciBhcnRpY2xlIC5hcnRpY2xlVG9wIC5lbnRyeUNvbnRlbnRTcGxpdDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgICBib2R5IC5jb2xsZWN0aW9uIC5tYWluLWNvbnRhaW5lciBhcnRpY2xlIC5hcnRpY2xlVG9wIC5lbnRyeUNvbnRlbnRGdWxsIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIGJvZHkgLmNvbGxlY3Rpb24gLm1haW4tY29udGFpbmVyIGFydGljbGUgLmFydGljbGVUb3AgLmVudHJ5Q29udGVudEZ1bGwge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgICBib2R5IC5jb2xsZWN0aW9uIC5tYWluLWNvbnRhaW5lciBhcnRpY2xlIC5hcnRpY2xlVG9wIC5lbnRyeUNvbnRlbnRGdWxsLCBib2R5IC5jb2xsZWN0aW9uIC5tYWluLWNvbnRhaW5lciBhcnRpY2xlIC5hcnRpY2xlVG9wIC5lbnRyeUNvbnRlbnRGdWxsOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgIGJvZHkgLmNvbGxlY3Rpb24gLm1haW4tY29udGFpbmVyIGFydGljbGUgLmFydGljbGVUb3AgLmVudHJ5Q29udGVudEZ1bGw6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICBib2R5IC5jb2xsZWN0aW9uIC5tYWluLWNvbnRhaW5lciBhcnRpY2xlIC5hcnRpY2xlVG9wIC5lbnRyeS1jb250ZW50IHA6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAgIGJvZHkgLmNvbGxlY3Rpb24gLm1haW4tY29udGFpbmVyIGFydGljbGUgLmFydGljbGVUb3AgLmZhc3RGYWN0Q29udGFpbmVyIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYzNjM2MzO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDJyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkgLmNvbGxlY3Rpb24gLm1haW4tY29udGFpbmVyIGFydGljbGUgLmFydGljbGVUb3AgLmZhc3RGYWN0Q29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgICAgICBib2R5IC5jb2xsZWN0aW9uIC5tYWluLWNvbnRhaW5lciBhcnRpY2xlIC5hcnRpY2xlVG9wIC5mYXN0RmFjdENvbnRhaW5lciwgYm9keSAuY29sbGVjdGlvbiAubWFpbi1jb250YWluZXIgYXJ0aWNsZSAuYXJ0aWNsZVRvcCAuZmFzdEZhY3RDb250YWluZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgYm9keSAuY29sbGVjdGlvbiAubWFpbi1jb250YWluZXIgYXJ0aWNsZSAuYXJ0aWNsZVRvcCAuZmFzdEZhY3RDb250YWluZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICBib2R5IC5jb2xsZWN0aW9uIC5tYWluLWNvbnRhaW5lciBhcnRpY2xlIC5hcnRpY2xlVG9wIC5mYXN0RmFjdENvbnRhaW5lciB7XG4gICAgICAgICAgd2lkdGg6IDE2LjY2NjY3JTtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICBwYWRkaW5nOiAxLjFyZW0gMS43NXJlbSAwcmVtIDByZW07IH1cbiAgICAgICAgICBib2R5IC5jb2xsZWN0aW9uIC5tYWluLWNvbnRhaW5lciBhcnRpY2xlIC5hcnRpY2xlVG9wIC5mYXN0RmFjdENvbnRhaW5lciwgYm9keSAuY29sbGVjdGlvbiAubWFpbi1jb250YWluZXIgYXJ0aWNsZSAuYXJ0aWNsZVRvcCAuZmFzdEZhY3RDb250YWluZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgYm9keSAuY29sbGVjdGlvbiAubWFpbi1jb250YWluZXIgYXJ0aWNsZSAuYXJ0aWNsZVRvcCAuZmFzdEZhY3RDb250YWluZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgICAgYm9keSAuY29sbGVjdGlvbiAubWFpbi1jb250YWluZXIgYXJ0aWNsZSAuYXJ0aWNsZVRvcCAuZmFzdEZhY3RDb250YWluZXIgLmZhc3RGYWN0IHtcbiAgICAgICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICAgIGJvZHkgLmNvbGxlY3Rpb24gLm1haW4tY29udGFpbmVyIGFydGljbGUgLmFydGljbGVUb3AgLmZhc3RGYWN0Q29udGFpbmVyIC5mYXN0RmFjdDo6YmVmb3JlLCBib2R5IC5jb2xsZWN0aW9uIC5tYWluLWNvbnRhaW5lciBhcnRpY2xlIC5hcnRpY2xlVG9wIC5mYXN0RmFjdENvbnRhaW5lciAuZmFzdEZhY3Q6OmFmdGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICBjb250ZW50OiAnICc7XG4gICAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgICBvcmRlcjogMTsgfVxuICAgICAgICBib2R5IC5jb2xsZWN0aW9uIC5tYWluLWNvbnRhaW5lciBhcnRpY2xlIC5hcnRpY2xlVG9wIC5mYXN0RmFjdENvbnRhaW5lciAuZmFzdEZhY3Q6OmFmdGVyIHtcbiAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICBib2R5IC5jb2xsZWN0aW9uIC5tYWluLWNvbnRhaW5lciBhcnRpY2xlIC5hcnRpY2xlVG9wIC5mYXN0RmFjdENvbnRhaW5lciAuZmFzdEZhY3QgLm51bSB7XG4gICAgICAgICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjM3NXJlbTtcbiAgICAgICAgICBmb250LWZhbWlseTogJ2JlYmFzX25ldWVib2xkJywnc2Fucy1zZXJpZic7XG4gICAgICAgICAgZm9udC1zaXplOiA0cmVtO1xuICAgICAgICAgIGNvbG9yOiAjODc3MTQ4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gICAgICAgICAgYm9keSAuY29sbGVjdGlvbiAubWFpbi1jb250YWluZXIgYXJ0aWNsZSAuYXJ0aWNsZVRvcCAuZmFzdEZhY3RDb250YWluZXIgLmZhc3RGYWN0IC5udW06OmJlZm9yZSwgYm9keSAuY29sbGVjdGlvbiAubWFpbi1jb250YWluZXIgYXJ0aWNsZSAuYXJ0aWNsZVRvcCAuZmFzdEZhY3RDb250YWluZXIgLmZhc3RGYWN0IC5udW06OmFmdGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgICAgY29udGVudDogJyAnO1xuICAgICAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgICAgIG9yZGVyOiAxOyB9XG4gICAgICAgICAgYm9keSAuY29sbGVjdGlvbiAubWFpbi1jb250YWluZXIgYXJ0aWNsZSAuYXJ0aWNsZVRvcCAuZmFzdEZhY3RDb250YWluZXIgLmZhc3RGYWN0IC5udW06OmFmdGVyIHtcbiAgICAgICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAgICAgYm9keSAuY29sbGVjdGlvbiAubWFpbi1jb250YWluZXIgYXJ0aWNsZSAuYXJ0aWNsZVRvcCAuZmFzdEZhY3RDb250YWluZXIgLmZhc3RGYWN0IC5udW0sIGJvZHkgLmNvbGxlY3Rpb24gLm1haW4tY29udGFpbmVyIGFydGljbGUgLmFydGljbGVUb3AgLmZhc3RGYWN0Q29udGFpbmVyIC5mYXN0RmFjdCAubnVtOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgIGJvZHkgLmNvbGxlY3Rpb24gLm1haW4tY29udGFpbmVyIGFydGljbGUgLmFydGljbGVUb3AgLmZhc3RGYWN0Q29udGFpbmVyIC5mYXN0RmFjdCAubnVtOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICAgICAgYm9keSAuY29sbGVjdGlvbiAubWFpbi1jb250YWluZXIgYXJ0aWNsZSAuYXJ0aWNsZVRvcCAuZmFzdEZhY3RDb250YWluZXIgLmZhc3RGYWN0IC5udW0sIGJvZHkgLmNvbGxlY3Rpb24gLm1haW4tY29udGFpbmVyIGFydGljbGUgLmFydGljbGVUb3AgLmZhc3RGYWN0Q29udGFpbmVyIC5mYXN0RmFjdCAubnVtOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7IH1cbiAgICAgICAgYm9keSAuY29sbGVjdGlvbiAubWFpbi1jb250YWluZXIgYXJ0aWNsZSAuYXJ0aWNsZVRvcCAuZmFzdEZhY3RDb250YWluZXIgLmZhc3RGYWN0IC50ZXh0IHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjM3NXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgICAgICAgICBib2R5IC5jb2xsZWN0aW9uIC5tYWluLWNvbnRhaW5lciBhcnRpY2xlIC5hcnRpY2xlVG9wIC5mYXN0RmFjdENvbnRhaW5lciAuZmFzdEZhY3QgLnRleHQ6OmJlZm9yZSwgYm9keSAuY29sbGVjdGlvbiAubWFpbi1jb250YWluZXIgYXJ0aWNsZSAuYXJ0aWNsZVRvcCAuZmFzdEZhY3RDb250YWluZXIgLmZhc3RGYWN0IC50ZXh0OjphZnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgICAgICBvcmRlcjogMTsgfVxuICAgICAgICAgIGJvZHkgLmNvbGxlY3Rpb24gLm1haW4tY29udGFpbmVyIGFydGljbGUgLmFydGljbGVUb3AgLmZhc3RGYWN0Q29udGFpbmVyIC5mYXN0RmFjdCAudGV4dDo6YWZ0ZXIge1xuICAgICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgICBib2R5IC5jb2xsZWN0aW9uIC5tYWluLWNvbnRhaW5lciBhcnRpY2xlIC5hcnRpY2xlVG9wIC5mYXN0RmFjdENvbnRhaW5lciAuZmFzdEZhY3QgLnRleHQsIGJvZHkgLmNvbGxlY3Rpb24gLm1haW4tY29udGFpbmVyIGFydGljbGUgLmFydGljbGVUb3AgLmZhc3RGYWN0Q29udGFpbmVyIC5mYXN0RmFjdCAudGV4dDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICBib2R5IC5jb2xsZWN0aW9uIC5tYWluLWNvbnRhaW5lciBhcnRpY2xlIC5hcnRpY2xlVG9wIC5mYXN0RmFjdENvbnRhaW5lciAuZmFzdEZhY3QgLnRleHQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgICAgICBib2R5IC5jb2xsZWN0aW9uIC5tYWluLWNvbnRhaW5lciBhcnRpY2xlIC5hcnRpY2xlVG9wIC5mYXN0RmFjdENvbnRhaW5lciAuZmFzdEZhY3QgLnRleHQsIGJvZHkgLmNvbGxlY3Rpb24gLm1haW4tY29udGFpbmVyIGFydGljbGUgLmFydGljbGVUb3AgLmZhc3RGYWN0Q29udGFpbmVyIC5mYXN0RmFjdCAudGV4dDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lOyB9XG4gICAgICAgIGJvZHkgLmNvbGxlY3Rpb24gLm1haW4tY29udGFpbmVyIGFydGljbGUgLmFydGljbGVUb3AgLmZhc3RGYWN0Q29udGFpbmVyIC5mYXN0RmFjdDpudGgtb2YtdHlwZShldmVuKSAubnVtIHtcbiAgICAgICAgICBjb2xvcjogIzFkMWQxZDsgfVxuICAgICAgYm9keSAuY29sbGVjdGlvbiAubWFpbi1jb250YWluZXIgYXJ0aWNsZSAuYXJ0aWNsZVRvcCAuZmFzdEZhY3RDb250YWluZXIgaW1nIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDAuNzVyZW07IH1cbiAgICAgIGJvZHkgLmNvbGxlY3Rpb24gLm1haW4tY29udGFpbmVyIGFydGljbGUgLmFydGljbGVUb3AgLmZhc3RGYWN0Q29udGFpbmVyIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gICAgICBib2R5IC5jb2xsZWN0aW9uIC5tYWluLWNvbnRhaW5lciBhcnRpY2xlIC5hcnRpY2xlVG9wIC5mYXN0RmFjdENvbnRhaW5lciBwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgZm9udC1zaXplOiAwLjhyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7IH1cbiAgYm9keSAuY29sbGVjdGlvbiAuaW1hZ2VHYWxsZXJ5Q29udGFpbmVyIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDRyZW07XG4gICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gICAgYm9keSAuY29sbGVjdGlvbiAuaW1hZ2VHYWxsZXJ5Q29udGFpbmVyOjpiZWZvcmUsIGJvZHkgLmNvbGxlY3Rpb24gLmltYWdlR2FsbGVyeUNvbnRhaW5lcjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjb250ZW50OiAnICc7XG4gICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgb3JkZXI6IDE7IH1cbiAgICBib2R5IC5jb2xsZWN0aW9uIC5pbWFnZUdhbGxlcnlDb250YWluZXI6OmFmdGVyIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgYm9keSAuY29sbGVjdGlvbiAuaW1hZ2VHYWxsZXJ5Q29udGFpbmVyIC5pbWFnZUdhbGxlcnkge1xuICAgICAgd2lkdGg6IDkxLjY2NjY3JTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIGJvZHkgLmNvbGxlY3Rpb24gLmltYWdlR2FsbGVyeUNvbnRhaW5lciAuaW1hZ2VHYWxsZXJ5IHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgYm9keSAuY29sbGVjdGlvbiAuaW1hZ2VHYWxsZXJ5Q29udGFpbmVyIC5pbWFnZUdhbGxlcnksIGJvZHkgLmNvbGxlY3Rpb24gLmltYWdlR2FsbGVyeUNvbnRhaW5lciAuaW1hZ2VHYWxsZXJ5Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIGJvZHkgLmNvbGxlY3Rpb24gLmltYWdlR2FsbGVyeUNvbnRhaW5lciAuaW1hZ2VHYWxsZXJ5Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgIGJvZHkgLmNvbGxlY3Rpb24gLmltYWdlR2FsbGVyeUNvbnRhaW5lciAuaW1hZ2VHYWxsZXJ5LCBib2R5IC5jb2xsZWN0aW9uIC5pbWFnZUdhbGxlcnlDb250YWluZXIgLmltYWdlR2FsbGVyeTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAgIGJvZHkgLmNvbGxlY3Rpb24gLmltYWdlR2FsbGVyeUNvbnRhaW5lciAuaW1hZ2VHYWxsZXJ5IHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG4gIGJvZHkgI2NvbGxlY3Rpb24gLmxpc3RpbmdDb250YWluZXIge1xuICAgIG1heC13aWR0aDogNzVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gICAgYm9keSAjY29sbGVjdGlvbiAubGlzdGluZ0NvbnRhaW5lcjo6YmVmb3JlLCBib2R5ICNjb2xsZWN0aW9uIC5saXN0aW5nQ29udGFpbmVyOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICBvcmRlcjogMTsgfVxuICAgIGJvZHkgI2NvbGxlY3Rpb24gLmxpc3RpbmdDb250YWluZXI6OmFmdGVyIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgYm9keSAjY29sbGVjdGlvbiAubGlzdGluZ0NvbnRhaW5lciAuaW1hZ2Uge1xuICAgICAgbWluLWhlaWdodDogMjAwcHg7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAgIGJvZHkgI2NvbGxlY3Rpb24gLmxpc3RpbmdDb250YWluZXIgLmltYWdlIHtcbiAgICAgICAgICBtaW4taGVpZ2h0OiA0NDBweDsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIGJvZHkgI2NvbGxlY3Rpb24gLmxpc3RpbmdDb250YWluZXIgLmltYWdlIHtcbiAgICAgICAgICBtaW4taGVpZ2h0OiA1NzBweDsgfSB9XG4gICAgYm9keSAjY29sbGVjdGlvbiAubGlzdGluZ0NvbnRhaW5lciAuZGV0YWlscyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgZGlzcGxheTogdGFibGU7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgYm9keSAjY29sbGVjdGlvbiAubGlzdGluZ0NvbnRhaW5lciAuZGV0YWlscyB7XG4gICAgICAgICAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50OyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAgIGJvZHkgI2NvbGxlY3Rpb24gLmxpc3RpbmdDb250YWluZXIgLmRldGFpbHMge1xuICAgICAgICAgIHBhZGRpbmc6IDEuNXJlbSAhaW1wb3J0YW50OyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgICAgYm9keSAjY29sbGVjdGlvbiAubGlzdGluZ0NvbnRhaW5lciAuZGV0YWlscyB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAwLjI1cmVtO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW07IH0gfVxuICAgICAgYm9keSAjY29sbGVjdGlvbiAubGlzdGluZ0NvbnRhaW5lciAuZGV0YWlscyAudmFsaWduIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgICAgICBib2R5ICNjb2xsZWN0aW9uIC5saXN0aW5nQ29udGFpbmVyIC5kZXRhaWxzIC52YWxpZ24gLnRhZ0NvbnRhaW5lciB7XG4gICAgICAgICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgbWFyZ2luLXRvcDogMC43NXJlbTsgfVxuICAgICAgICAgIGJvZHkgI2NvbGxlY3Rpb24gLmxpc3RpbmdDb250YWluZXIgLmRldGFpbHMgLnZhbGlnbiAudGFnQ29udGFpbmVyOjpiZWZvcmUsIGJvZHkgI2NvbGxlY3Rpb24gLmxpc3RpbmdDb250YWluZXIgLmRldGFpbHMgLnZhbGlnbiAudGFnQ29udGFpbmVyOjphZnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgICAgICBvcmRlcjogMTsgfVxuICAgICAgICAgIGJvZHkgI2NvbGxlY3Rpb24gLmxpc3RpbmdDb250YWluZXIgLmRldGFpbHMgLnZhbGlnbiAudGFnQ29udGFpbmVyOjphZnRlciB7XG4gICAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICAgIGJvZHkgI2NvbGxlY3Rpb24gLmxpc3RpbmdDb250YWluZXIgLmRldGFpbHMgLnZhbGlnbiAudGFnQ29udGFpbmVyIC50YWcge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlMTAwO1xuICAgICAgICAgICAgY29sb3I6ICMxZDFkMWQ7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJ2JlYmFzX25ldWVib2xkJywnc2Fucy1zZXJpZic7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMC45O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMHJlbTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjFyZW07XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODVyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjM1cmVtIDAuNXJlbTsgfVxuICAgICAgICBib2R5ICNjb2xsZWN0aW9uIC5saXN0aW5nQ29udGFpbmVyIC5kZXRhaWxzIC52YWxpZ24gLnRpdGxlIHtcbiAgICAgICAgICBmb250LXNpemU6IDMuMjVyZW07XG4gICAgICAgICAgY29sb3I6ICM4NzcxNDg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDAuOTtcbiAgICAgICAgICBwYWRkaW5nOiAxcmVtIDByZW0gMC4yNXJlbSAwcmVtO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAnYmViYXNfbmV1ZXJlZ3VsYXInLCdzYW5zLXNlcmlmJzsgfVxuICAgICAgICBib2R5ICNjb2xsZWN0aW9uIC5saXN0aW5nQ29udGFpbmVyIC5kZXRhaWxzIC52YWxpZ24gLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS40OyB9XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgICAgICAgYm9keSAjY29sbGVjdGlvbiAubGlzdGluZ0NvbnRhaW5lciAuZGV0YWlscyAudmFsaWduIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC45cmVtOyB9IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICAgIGJvZHkgI2NvbGxlY3Rpb24gLmxpc3RpbmdDb250YWluZXIgLmRldGFpbHMgLnZhbGlnbiAuc2hvd01vcmVJbmZvIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgYm9keSAjY29sbGVjdGlvbiAuZXZlbiAuZGV0YWlscyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgLyptYXJnaW4tdG9wOiAtM3JlbTtcblx0XHRcdFx0XHRtYXJnaW4tbGVmdDogLTFyZW07XG5cdFx0XHRcdFx0ZmxvYXQ6bGVmdCFpbXBvcnRhbnQ7Ki8gfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgYm9keSAjY29sbGVjdGlvbiAuZXZlbiAuZGV0YWlscyB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIGJvZHkgI2NvbGxlY3Rpb24gLmV2ZW4gLmRldGFpbHMsIGJvZHkgI2NvbGxlY3Rpb24gLmV2ZW4gLmRldGFpbHM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgYm9keSAjY29sbGVjdGlvbiAuZXZlbiAuZGV0YWlsczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkgI2NvbGxlY3Rpb24gLmV2ZW4gLmRldGFpbHMge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbGVmdDogLTUwJTtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgYm9keSAjY29sbGVjdGlvbiAuZXZlbiAuZGV0YWlscyB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIGJvZHkgI2NvbGxlY3Rpb24gLmV2ZW4gLmRldGFpbHMsIGJvZHkgI2NvbGxlY3Rpb24gLmV2ZW4gLmRldGFpbHM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgYm9keSAjY29sbGVjdGlvbiAuZXZlbiAuZGV0YWlsczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIGJvZHkgI2NvbGxlY3Rpb24gLmV2ZW4gLmltYWdlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkgI2NvbGxlY3Rpb24gLmV2ZW4gLmltYWdlIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgYm9keSAjY29sbGVjdGlvbiAuZXZlbiAuaW1hZ2UsIGJvZHkgI2NvbGxlY3Rpb24gLmV2ZW4gLmltYWdlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIGJvZHkgI2NvbGxlY3Rpb24gLmV2ZW4gLmltYWdlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgYm9keSAjY29sbGVjdGlvbiAuZXZlbiAuaW1hZ2Uge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5ICNjb2xsZWN0aW9uIC5ldmVuIC5pbWFnZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIGJvZHkgI2NvbGxlY3Rpb24gLmV2ZW4gLmltYWdlLCBib2R5ICNjb2xsZWN0aW9uIC5ldmVuIC5pbWFnZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICBib2R5ICNjb2xsZWN0aW9uIC5ldmVuIC5pbWFnZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgYm9keSAjY29sbGVjdGlvbiAub2RkIC5kZXRhaWxzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIGJvZHkgI2NvbGxlY3Rpb24gLm9kZCAuZGV0YWlscyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIGJvZHkgI2NvbGxlY3Rpb24gLm9kZCAuZGV0YWlscywgYm9keSAjY29sbGVjdGlvbiAub2RkIC5kZXRhaWxzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIGJvZHkgI2NvbGxlY3Rpb24gLm9kZCAuZGV0YWlsczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIGJvZHkgI2NvbGxlY3Rpb24gLm9kZCAuZGV0YWlscyB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgYm9keSAjY29sbGVjdGlvbiAub2RkIC5kZXRhaWxzIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIGJvZHkgI2NvbGxlY3Rpb24gLm9kZCAuZGV0YWlscywgYm9keSAjY29sbGVjdGlvbiAub2RkIC5kZXRhaWxzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgIGJvZHkgI2NvbGxlY3Rpb24gLm9kZCAuZGV0YWlsczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIGJvZHkgI2NvbGxlY3Rpb24gLm9kZCAuZGV0YWlscyB7XG4gICAgICAgIC8qbWFyZ2luLXRvcDogLTNyZW07XG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAtMXJlbTsqLyB9IH1cbiAgYm9keSAjY29sbGVjdGlvbiAub2RkIC5pbWFnZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICBib2R5ICNjb2xsZWN0aW9uIC5vZGQgLmltYWdlIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgYm9keSAjY29sbGVjdGlvbiAub2RkIC5pbWFnZSwgYm9keSAjY29sbGVjdGlvbiAub2RkIC5pbWFnZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICBib2R5ICNjb2xsZWN0aW9uIC5vZGQgLmltYWdlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgYm9keSAjY29sbGVjdGlvbiAub2RkIC5pbWFnZSB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgYm9keSAjY29sbGVjdGlvbiAub2RkIC5pbWFnZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICBib2R5ICNjb2xsZWN0aW9uIC5vZGQgLmltYWdlLCBib2R5ICNjb2xsZWN0aW9uIC5vZGQgLmltYWdlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgIGJvZHkgI2NvbGxlY3Rpb24gLm9kZCAuaW1hZ2U6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgYm9keSAuZW50cnlSb3cge1xuICAgIG1heC13aWR0aDogNzVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gICAgYm9keSAuZW50cnlSb3c6OmJlZm9yZSwgYm9keSAuZW50cnlSb3c6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY29udGVudDogJyAnO1xuICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgIG9yZGVyOiAxOyB9XG4gICAgYm9keSAuZW50cnlSb3c6OmFmdGVyIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgYm9keSAuZW50cnlSb3cgLmVudHJ5IHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAgIGJvZHkgLmVudHJ5Um93IC5lbnRyeSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgICAgICBwYWRkaW5nOiAycmVtICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkgLmVudHJ5Um93IC5lbnRyeSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAgICAgYm9keSAuZW50cnlSb3cgLmVudHJ5LCBib2R5IC5lbnRyeVJvdyAuZW50cnk6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgYm9keSAuZW50cnlSb3cgLmVudHJ5Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgYm9keSAuZW50cnlSb3cgLmVudHJ5IHtcbiAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICAgICAgcGFkZGluZzogNHJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgYm9keSAuZW50cnlSb3cgLmVudHJ5IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICBib2R5IC5lbnRyeVJvdyAuZW50cnksIGJvZHkgLmVudHJ5Um93IC5lbnRyeTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICBib2R5IC5lbnRyeVJvdyAuZW50cnk6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgICAgYm9keSAuZW50cnlSb3cgLmVudHJ5LnllbGxvdyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmUxMDA7IH1cbiAgICAgIGJvZHkgLmVudHJ5Um93IC5lbnRyeSAuZW50cnlDb250ZW50IHtcbiAgICAgICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgICAgICBib2R5IC5lbnRyeVJvdyAuZW50cnkgLmVudHJ5Q29udGVudDo6YmVmb3JlLCBib2R5IC5lbnRyeVJvdyAuZW50cnkgLmVudHJ5Q29udGVudDo6YWZ0ZXIge1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICAgIG9yZGVyOiAxOyB9XG4gICAgICAgIGJvZHkgLmVudHJ5Um93IC5lbnRyeSAuZW50cnlDb250ZW50OjphZnRlciB7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgYm9keSAuZW50cnlSb3cgLmVudHJ5IC5lbnRyeUNvbnRlbnQgLnN1YkVudHJ5SXRlbSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgICAgYm9keSAuZW50cnlSb3cgLmVudHJ5IC5lbnRyeUNvbnRlbnQgLnN1YkVudHJ5SXRlbSB7XG4gICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgICAgIGJvZHkgLmVudHJ5Um93IC5lbnRyeSAuZW50cnlDb250ZW50IC5zdWJFbnRyeUl0ZW0sIGJvZHkgLmVudHJ5Um93IC5lbnRyeSAuZW50cnlDb250ZW50IC5zdWJFbnRyeUl0ZW06bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgYm9keSAuZW50cnlSb3cgLmVudHJ5IC5lbnRyeUNvbnRlbnQgLnN1YkVudHJ5SXRlbTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgICAgIGJvZHkgLmVudHJ5Um93IC5lbnRyeSAuZW50cnlDb250ZW50IC5zdWJFbnRyeUl0ZW0gLmhlYWRpbmcge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjM3NXJlbTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMy4yNXJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAjODc3MTQ4O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnYmViYXNfbmV1ZXJlZ3VsYXInLCdzYW5zLXNlcmlmJztcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwLjk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gICAgICAgICAgICBib2R5IC5lbnRyeVJvdyAuZW50cnkgLmVudHJ5Q29udGVudCAuc3ViRW50cnlJdGVtIC5oZWFkaW5nOjpiZWZvcmUsIGJvZHkgLmVudHJ5Um93IC5lbnRyeSAuZW50cnlDb250ZW50IC5zdWJFbnRyeUl0ZW0gLmhlYWRpbmc6OmFmdGVyIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgICAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgICAgICAgb3JkZXI6IDE7IH1cbiAgICAgICAgICAgIGJvZHkgLmVudHJ5Um93IC5lbnRyeSAuZW50cnlDb250ZW50IC5zdWJFbnRyeUl0ZW0gLmhlYWRpbmc6OmFmdGVyIHtcbiAgICAgICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgICAgIGJvZHkgLmVudHJ5Um93IC5lbnRyeSAuZW50cnlDb250ZW50IC5zdWJFbnRyeUl0ZW0gLmhlYWRpbmcsIGJvZHkgLmVudHJ5Um93IC5lbnRyeSAuZW50cnlDb250ZW50IC5zdWJFbnRyeUl0ZW0gLmhlYWRpbmc6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgICAgYm9keSAuZW50cnlSb3cgLmVudHJ5IC5lbnRyeUNvbnRlbnQgLnN1YkVudHJ5SXRlbSAuaGVhZGluZzpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICAgICAgICBib2R5IC5lbnRyeVJvdyAuZW50cnkgLmVudHJ5Q29udGVudCAuc3ViRW50cnlJdGVtIC5oZWFkaW5nLCBib2R5IC5lbnRyeVJvdyAuZW50cnkgLmVudHJ5Q29udGVudCAuc3ViRW50cnlJdGVtIC5oZWFkaW5nOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICBmbG9hdDogbm9uZTsgfVxuICAgICAgICAgIGJvZHkgLmVudHJ5Um93IC5lbnRyeSAuZW50cnlDb250ZW50IC5zdWJFbnRyeUl0ZW0gLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogNzVyZW07XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjM3NXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC4zNzVyZW07IH1cbiAgICAgICAgICAgIGJvZHkgLmVudHJ5Um93IC5lbnRyeSAuZW50cnlDb250ZW50IC5zdWJFbnRyeUl0ZW0gLmRlc2NyaXB0aW9uOjpiZWZvcmUsIGJvZHkgLmVudHJ5Um93IC5lbnRyeSAuZW50cnlDb250ZW50IC5zdWJFbnRyeUl0ZW0gLmRlc2NyaXB0aW9uOjphZnRlciB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgICAgICBjb250ZW50OiAnICc7XG4gICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgICAgICAgIG9yZGVyOiAxOyB9XG4gICAgICAgICAgICBib2R5IC5lbnRyeVJvdyAuZW50cnkgLmVudHJ5Q29udGVudCAuc3ViRW50cnlJdGVtIC5kZXNjcmlwdGlvbjo6YWZ0ZXIge1xuICAgICAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICAgICAgYm9keSAuZW50cnlSb3cgLmVudHJ5IC5lbnRyeUNvbnRlbnQgLnN1YkVudHJ5SXRlbSAuZGVzY3JpcHRpb24sIGJvZHkgLmVudHJ5Um93IC5lbnRyeSAuZW50cnlDb250ZW50IC5zdWJFbnRyeUl0ZW0gLmRlc2NyaXB0aW9uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAgIGJvZHkgLmVudHJ5Um93IC5lbnRyeSAuZW50cnlDb250ZW50IC5zdWJFbnRyeUl0ZW0gLmRlc2NyaXB0aW9uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgICAgICAgIGJvZHkgLmVudHJ5Um93IC5lbnRyeSAuZW50cnlDb250ZW50IC5zdWJFbnRyeUl0ZW0gLmRlc2NyaXB0aW9uLCBib2R5IC5lbnRyeVJvdyAuZW50cnkgLmVudHJ5Q29udGVudCAuc3ViRW50cnlJdGVtIC5kZXNjcmlwdGlvbjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7IH1cbiAgICAgICAgICBib2R5IC5lbnRyeVJvdyAuZW50cnkgLmVudHJ5Q29udGVudCAuc3ViRW50cnlJdGVtIC5idXR0b25Db250YWluZXIge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjM3NXJlbTsgfVxuICAgICAgICAgICAgYm9keSAuZW50cnlSb3cgLmVudHJ5IC5lbnRyeUNvbnRlbnQgLnN1YkVudHJ5SXRlbSAuYnV0dG9uQ29udGFpbmVyOjpiZWZvcmUsIGJvZHkgLmVudHJ5Um93IC5lbnRyeSAuZW50cnlDb250ZW50IC5zdWJFbnRyeUl0ZW0gLmJ1dHRvbkNvbnRhaW5lcjo6YWZ0ZXIge1xuICAgICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICAgICAgY29udGVudDogJyAnO1xuICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICAgICAgICBvcmRlcjogMTsgfVxuICAgICAgICAgICAgYm9keSAuZW50cnlSb3cgLmVudHJ5IC5lbnRyeUNvbnRlbnQgLnN1YkVudHJ5SXRlbSAuYnV0dG9uQ29udGFpbmVyOjphZnRlciB7XG4gICAgICAgICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAgICAgICBib2R5IC5lbnRyeVJvdyAuZW50cnkgLmVudHJ5Q29udGVudCAuc3ViRW50cnlJdGVtIC5idXR0b25Db250YWluZXIsIGJvZHkgLmVudHJ5Um93IC5lbnRyeSAuZW50cnlDb250ZW50IC5zdWJFbnRyeUl0ZW0gLmJ1dHRvbkNvbnRhaW5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgICBib2R5IC5lbnRyeVJvdyAuZW50cnkgLmVudHJ5Q29udGVudCAuc3ViRW50cnlJdGVtIC5idXR0b25Db250YWluZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgICAgICAgYm9keSAuZW50cnlSb3cgLmVudHJ5IC5lbnRyeUNvbnRlbnQgLnN1YkVudHJ5SXRlbSAuYnV0dG9uQ29udGFpbmVyLCBib2R5IC5lbnRyeVJvdyAuZW50cnkgLmVudHJ5Q29udGVudCAuc3ViRW50cnlJdGVtIC5idXR0b25Db250YWluZXI6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIGZsb2F0OiBub25lOyB9XG4gICAgICAgICAgYm9keSAuZW50cnlSb3cgLmVudHJ5IC5lbnRyeUNvbnRlbnQgLnN1YkVudHJ5SXRlbTpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDdkN2Q3O1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtOyB9XG4gIGJvZHkgLmhvdXJzQ29udGFpbmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlMTAwOyB9XG4gICAgYm9keSAuaG91cnNDb250YWluZXIgLmhvdXJzIHtcbiAgICAgIHBhZGRpbmc6IDNyZW0gMDsgfVxuICAgICAgYm9keSAuaG91cnNDb250YWluZXIgLmhvdXJzIGgyLCBib2R5IC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgaDMge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnYmViYXNfbmV1ZWJvbGQnLHNhbnMtc2VyaWY7XG4gICAgICAgIGNvbG9yOiAjMWQxZDFkOyB9XG4gICAgICBib2R5IC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLmRheSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAncm9ib3RvYm9sZCcsJ3NhbnMtc2VyaWYnO1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4zOyB9XG4gICAgICBib2R5IC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLmhvdXJzRGV0YWlsIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdyb2JvdG9saWdodCcsJ3NhbnMtc2VyaWYnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICAgICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgICAgIHBhZGRpbmctdG9wOiAwLjI1cmVtOyB9XG4gICAgICBib2R5IC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLmhvdXJCbG9jayB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAwLjVyZW0gMDsgfVxuICAgICAgYm9keSAuaG91cnNDb250YWluZXIgLmhvdXJzIC50aXRsZUJsb2NrIHtcbiAgICAgICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfVxuICAgICAgICBib2R5IC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLnRpdGxlQmxvY2s6OmJlZm9yZSwgYm9keSAuaG91cnNDb250YWluZXIgLmhvdXJzIC50aXRsZUJsb2NrOjphZnRlciB7XG4gICAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgICAgY29udGVudDogJyAnO1xuICAgICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgICAgb3JkZXI6IDE7IH1cbiAgICAgICAgYm9keSAuaG91cnNDb250YWluZXIgLmhvdXJzIC50aXRsZUJsb2NrOjphZnRlciB7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgYm9keSAuaG91cnNDb250YWluZXIgLmhvdXJzIC50aXRsZUJsb2NrIGgyIHtcbiAgICAgICAgICBmb250LXNpemU6IDMuMjVyZW07XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMC45OyB9XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgICAgYm9keSAuaG91cnNDb250YWluZXIgLmhvdXJzIC50aXRsZUJsb2NrIGgyIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5IC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLnRpdGxlQmxvY2sgaDIge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAgICAgYm9keSAuaG91cnNDb250YWluZXIgLmhvdXJzIC50aXRsZUJsb2NrIGgyLCBib2R5IC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLnRpdGxlQmxvY2sgaDI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAgICAgYm9keSAuaG91cnNDb250YWluZXIgLmhvdXJzIC50aXRsZUJsb2NrIGgyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgICAgICAgICBib2R5IC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLnRpdGxlQmxvY2sgaDIsIGJvZHkgLmhvdXJzQ29udGFpbmVyIC5ob3VycyAudGl0bGVCbG9jayBoMjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICAgICAgYm9keSAuaG91cnNDb250YWluZXIgLmhvdXJzIC50aXRsZUJsb2NrIGgyIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDgzLjMzMzMzJTtcbiAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5IC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLnRpdGxlQmxvY2sgaDIge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgICAgICAgICAgYm9keSAuaG91cnNDb250YWluZXIgLmhvdXJzIC50aXRsZUJsb2NrIGgyLCBib2R5IC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLnRpdGxlQmxvY2sgaDI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAgICAgYm9keSAuaG91cnNDb250YWluZXIgLmhvdXJzIC50aXRsZUJsb2NrIGgyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgICAgICAgICBib2R5IC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLnRpdGxlQmxvY2sgaDIsIGJvZHkgLmhvdXJzQ29udGFpbmVyIC5ob3VycyAudGl0bGVCbG9jayBoMjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gICAgICBib2R5IC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLmhlYWRpbmdCbG9jayB7XG4gICAgICAgIG1heC13aWR0aDogNzVyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi10b3A6IDEuNXJlbTsgfVxuICAgICAgICBib2R5IC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLmhlYWRpbmdCbG9jazo6YmVmb3JlLCBib2R5IC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLmhlYWRpbmdCbG9jazo6YWZ0ZXIge1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICAgIG9yZGVyOiAxOyB9XG4gICAgICAgIGJvZHkgLmhvdXJzQ29udGFpbmVyIC5ob3VycyAuaGVhZGluZ0Jsb2NrOjphZnRlciB7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgYm9keSAuaG91cnNDb250YWluZXIgLmhvdXJzIC5oZWFkaW5nQmxvY2sgaDMge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDAuOTsgfVxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAgIGJvZHkgLmhvdXJzQ29udGFpbmVyIC5ob3VycyAuaGVhZGluZ0Jsb2NrIGgzIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5IC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLmhlYWRpbmdCbG9jayBoMyB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgICAgICBib2R5IC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLmhlYWRpbmdCbG9jayBoMywgYm9keSAuaG91cnNDb250YWluZXIgLmhvdXJzIC5oZWFkaW5nQmxvY2sgaDM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAgICAgYm9keSAuaG91cnNDb250YWluZXIgLmhvdXJzIC5oZWFkaW5nQmxvY2sgaDM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICAgICAgICAgIGJvZHkgLmhvdXJzQ29udGFpbmVyIC5ob3VycyAuaGVhZGluZ0Jsb2NrIGgzLCBib2R5IC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLmhlYWRpbmdCbG9jayBoMzpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICAgICAgYm9keSAuaG91cnNDb250YWluZXIgLmhvdXJzIC5oZWFkaW5nQmxvY2sgaDMge1xuICAgICAgICAgICAgICB3aWR0aDogODMuMzMzMzMlO1xuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkgLmhvdXJzQ29udGFpbmVyIC5ob3VycyAuaGVhZGluZ0Jsb2NrIGgzIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAgICAgICAgIGJvZHkgLmhvdXJzQ29udGFpbmVyIC5ob3VycyAuaGVhZGluZ0Jsb2NrIGgzLCBib2R5IC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLmhlYWRpbmdCbG9jayBoMzpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgICAgICBib2R5IC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLmhlYWRpbmdCbG9jayBoMzpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgICAgICAgICAgYm9keSAuaG91cnNDb250YWluZXIgLmhvdXJzIC5oZWFkaW5nQmxvY2sgaDMsIGJvZHkgLmhvdXJzQ29udGFpbmVyIC5ob3VycyAuaGVhZGluZ0Jsb2NrIGgzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgICAgICAgYm9keSAuaG91cnNDb250YWluZXIgLmhvdXJzIC5oZWFkaW5nQmxvY2suc3BlY2lhbEhvdXJzIGgzIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07IH1cbiAgICAgIGJvZHkgLmhvdXJzQ29udGFpbmVyIC5ob3VycyAucmVndWxhckhvdXJzIHtcbiAgICAgICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgICAgICBib2R5IC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLnJlZ3VsYXJIb3Vyczo6YmVmb3JlLCBib2R5IC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLnJlZ3VsYXJIb3Vyczo6YWZ0ZXIge1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICAgIG9yZGVyOiAxOyB9XG4gICAgICAgIGJvZHkgLmhvdXJzQ29udGFpbmVyIC5ob3VycyAucmVndWxhckhvdXJzOjphZnRlciB7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIGJvZHkgLmhvdXJzQ29udGFpbmVyIC5ob3VycyAucmVndWxhckhvdXJzIC5ob3VyQmxvY2sge1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkgLmhvdXJzQ29udGFpbmVyIC5ob3VycyAucmVndWxhckhvdXJzIC5ob3VyQmxvY2sge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgICBib2R5IC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLnJlZ3VsYXJIb3VycyAuaG91ckJsb2NrLCBib2R5IC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLnJlZ3VsYXJIb3VycyAuaG91ckJsb2NrOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAgIGJvZHkgLmhvdXJzQ29udGFpbmVyIC5ob3VycyAucmVndWxhckhvdXJzIC5ob3VyQmxvY2s6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgICAgICAgYm9keSAuaG91cnNDb250YWluZXIgLmhvdXJzIC5yZWd1bGFySG91cnMgLmhvdXJCbG9jaywgYm9keSAuaG91cnNDb250YWluZXIgLmhvdXJzIC5yZWd1bGFySG91cnMgLmhvdXJCbG9jazpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICAgIGJvZHkgLmhvdXJzQ29udGFpbmVyIC5ob3VycyAucmVndWxhckhvdXJzIC5ob3VyQmxvY2sge1xuICAgICAgICAgICAgd2lkdGg6IDgzLjMzMzMzJTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkgLmhvdXJzQ29udGFpbmVyIC5ob3VycyAucmVndWxhckhvdXJzIC5ob3VyQmxvY2sge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAgICAgICBib2R5IC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLnJlZ3VsYXJIb3VycyAuaG91ckJsb2NrLCBib2R5IC5ob3Vyc0NvbnRhaW5lciAuaG91cnMgLnJlZ3VsYXJIb3VycyAuaG91ckJsb2NrOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAgIGJvZHkgLmhvdXJzQ29udGFpbmVyIC5ob3VycyAucmVndWxhckhvdXJzIC5ob3VyQmxvY2s6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgICAgICAgYm9keSAuaG91cnNDb250YWluZXIgLmhvdXJzIC5yZWd1bGFySG91cnMgLmhvdXJCbG9jaywgYm9keSAuaG91cnNDb250YWluZXIgLmhvdXJzIC5yZWd1bGFySG91cnMgLmhvdXJCbG9jazpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgYm9keSBzZWN0aW9uW3JvbGU9XCJtYWluXCJdIHtcbiAgICBwYWRkaW5nLXRvcDogNHJlbTtcbiAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAvKiBIb21lcGFnZSBDdXN0b20gV2lkZ2V0cyAqLyB9XG4gICAgYm9keSBzZWN0aW9uW3JvbGU9XCJtYWluXCJdOjpiZWZvcmUsIGJvZHkgc2VjdGlvbltyb2xlPVwibWFpblwiXTo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjb250ZW50OiAnICc7XG4gICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgb3JkZXI6IDE7IH1cbiAgICBib2R5IHNlY3Rpb25bcm9sZT1cIm1haW5cIl06OmFmdGVyIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgYm9keSBzZWN0aW9uW3JvbGU9XCJtYWluXCJdIGgxIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAnYmViYXNfbmV1ZXJlZ3VsYXInLHNhbnMtc2VyaWY7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzcmVtO1xuICAgICAgZm9udC1zaXplOiA0cmVtOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAgIGJvZHkgc2VjdGlvbltyb2xlPVwibWFpblwiXSBoMSB7XG4gICAgICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyLjVyZW07IH0gfVxuICAgIGJvZHkgc2VjdGlvbltyb2xlPVwibWFpblwiXSAuT1VBR19ob21lcGFnZV9saXN0aW5nIHtcbiAgICAgIHBhZGRpbmctdG9wOiA0cmVtO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgICAgYm9keSBzZWN0aW9uW3JvbGU9XCJtYWluXCJdIC5PVUFHX2hvbWVwYWdlX2xpc3RpbmcgaDIge1xuICAgICAgICBjb2xvcjogIzFkMWQxZDtcbiAgICAgICAgZm9udC1zaXplOiAzLjc1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMC45OyB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgICAgICBib2R5IHNlY3Rpb25bcm9sZT1cIm1haW5cIl0gLk9VQUdfaG9tZXBhZ2VfbGlzdGluZyBoMiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIuNzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgYm9keSBzZWN0aW9uW3JvbGU9XCJtYWluXCJdIC5PVUFHX2hvbWVwYWdlX2xpc3Rpbmcge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICBib2R5IHNlY3Rpb25bcm9sZT1cIm1haW5cIl0gLk9VQUdfaG9tZXBhZ2VfbGlzdGluZywgYm9keSBzZWN0aW9uW3JvbGU9XCJtYWluXCJdIC5PVUFHX2hvbWVwYWdlX2xpc3Rpbmc6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgYm9keSBzZWN0aW9uW3JvbGU9XCJtYWluXCJdIC5PVUFHX2hvbWVwYWdlX2xpc3Rpbmc6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgYm9keSBzZWN0aW9uW3JvbGU9XCJtYWluXCJdIC5PVUFHX2hvbWVwYWdlX2xpc3RpbmcgLmhvbWVwYWdlRXZlbnRMaXN0aW5nQ29udGFpbmVyIHtcbiAgICAgICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgICAgICBib2R5IHNlY3Rpb25bcm9sZT1cIm1haW5cIl0gLk9VQUdfaG9tZXBhZ2VfbGlzdGluZyAuaG9tZXBhZ2VFdmVudExpc3RpbmdDb250YWluZXI6OmJlZm9yZSwgYm9keSBzZWN0aW9uW3JvbGU9XCJtYWluXCJdIC5PVUFHX2hvbWVwYWdlX2xpc3RpbmcgLmhvbWVwYWdlRXZlbnRMaXN0aW5nQ29udGFpbmVyOjphZnRlciB7XG4gICAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgICAgY29udGVudDogJyAnO1xuICAgICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgICAgb3JkZXI6IDE7IH1cbiAgICAgICAgYm9keSBzZWN0aW9uW3JvbGU9XCJtYWluXCJdIC5PVUFHX2hvbWVwYWdlX2xpc3RpbmcgLmhvbWVwYWdlRXZlbnRMaXN0aW5nQ29udGFpbmVyOjphZnRlciB7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgYm9keSBzZWN0aW9uW3JvbGU9XCJtYWluXCJdIC5PVUFHX2hvbWVwYWdlX2xpc3RpbmcgLmhvbWVwYWdlRXZlbnRMaXN0aW5nQ29udGFpbmVyIC5pbWFnZSB7XG4gICAgICAgICAgbWluLWhlaWdodDogNDAwcHg7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsgfVxuICAgICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgICBib2R5IHNlY3Rpb25bcm9sZT1cIm1haW5cIl0gLk9VQUdfaG9tZXBhZ2VfbGlzdGluZyAuaG9tZXBhZ2VFdmVudExpc3RpbmdDb250YWluZXIgLmltYWdlIHtcbiAgICAgICAgICAgICAgbWluLWhlaWdodDogNDQwcHg7IH0gfVxuICAgICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgICBib2R5IHNlY3Rpb25bcm9sZT1cIm1haW5cIl0gLk9VQUdfaG9tZXBhZ2VfbGlzdGluZyAuaG9tZXBhZ2VFdmVudExpc3RpbmdDb250YWluZXIgLmltYWdlIHtcbiAgICAgICAgICAgICAgbWluLWhlaWdodDogNTYwcHg7IH0gfVxuICAgICAgICBib2R5IHNlY3Rpb25bcm9sZT1cIm1haW5cIl0gLk9VQUdfaG9tZXBhZ2VfbGlzdGluZyAuaG9tZXBhZ2VFdmVudExpc3RpbmdDb250YWluZXIgLmRldGFpbHMge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgZGlzcGxheTogdGFibGU7IH1cbiAgICAgICAgICBib2R5IHNlY3Rpb25bcm9sZT1cIm1haW5cIl0gLk9VQUdfaG9tZXBhZ2VfbGlzdGluZyAuaG9tZXBhZ2VFdmVudExpc3RpbmdDb250YWluZXIgLmRldGFpbHMgLnZhbGlnbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgICAgICAgICAgYm9keSBzZWN0aW9uW3JvbGU9XCJtYWluXCJdIC5PVUFHX2hvbWVwYWdlX2xpc3RpbmcgLmhvbWVwYWdlRXZlbnRMaXN0aW5nQ29udGFpbmVyIC5kZXRhaWxzIC52YWxpZ24gLmhvbWVwYWdlQ2F0ZWdvcnkge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIGNvbG9yOiAjMWQxZDFkO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlMTAwO1xuICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICBmb250LWZhbWlseTogJ2JlYmFzX25ldWVib2xkJyxzYW5zLXNlcmlmO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwLjZyZW07XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwLjVyZW07XG4gICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjFyZW07XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuOHJlbTsgfVxuICAgICAgICAgICAgYm9keSBzZWN0aW9uW3JvbGU9XCJtYWluXCJdIC5PVUFHX2hvbWVwYWdlX2xpc3RpbmcgLmhvbWVwYWdlRXZlbnRMaXN0aW5nQ29udGFpbmVyIC5kZXRhaWxzIC52YWxpZ24gYTpob3ZlciBoMiwgYm9keSBzZWN0aW9uW3JvbGU9XCJtYWluXCJdIC5PVUFHX2hvbWVwYWdlX2xpc3RpbmcgLmhvbWVwYWdlRXZlbnRMaXN0aW5nQ29udGFpbmVyIC5kZXRhaWxzIC52YWxpZ24gYTpmb2N1cyBoMiB7XG4gICAgICAgICAgICAgIGNvbG9yOiAjODc3MTQ4OyB9XG4gICAgICAgICAgICBib2R5IHNlY3Rpb25bcm9sZT1cIm1haW5cIl0gLk9VQUdfaG9tZXBhZ2VfbGlzdGluZyAuaG9tZXBhZ2VFdmVudExpc3RpbmdDb250YWluZXIgLmRldGFpbHMgLnZhbGlnbiAuZGF0ZUNvbnRhaW5lciAuaG9tZXBhZ2VEYXRlIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMC4zO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMi4ycmVtO1xuICAgICAgICAgICAgICB0ZXh0LWluZGVudDogLTIuMnJlbTtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgICAgICAgICAgIGJvZHkgc2VjdGlvbltyb2xlPVwibWFpblwiXSAuT1VBR19ob21lcGFnZV9saXN0aW5nIC5ob21lcGFnZUV2ZW50TGlzdGluZ0NvbnRhaW5lciAuZGV0YWlscyAudmFsaWduIC5kYXRlQ29udGFpbmVyIC5ob21lcGFnZURhdGUge1xuICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07IH0gfVxuICAgICAgICAgICAgICBib2R5IHNlY3Rpb25bcm9sZT1cIm1haW5cIl0gLk9VQUdfaG9tZXBhZ2VfbGlzdGluZyAuaG9tZXBhZ2VFdmVudExpc3RpbmdDb250YWluZXIgLmRldGFpbHMgLnZhbGlnbiAuZGF0ZUNvbnRhaW5lciAuaG9tZXBhZ2VEYXRlIC5jYWxlbmRhckljb24ge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMjdweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07IH1cbiAgICAgICAgICAgIGJvZHkgc2VjdGlvbltyb2xlPVwibWFpblwiXSAuT1VBR19ob21lcGFnZV9saXN0aW5nIC5ob21lcGFnZUV2ZW50TGlzdGluZ0NvbnRhaW5lciAuZGV0YWlscyAudmFsaWduIC5ob21lcGFnZURlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDsgfVxuICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAgICAgICAgICAgYm9keSBzZWN0aW9uW3JvbGU9XCJtYWluXCJdIC5PVUFHX2hvbWVwYWdlX2xpc3RpbmcgLmhvbWVwYWdlRXZlbnRMaXN0aW5nQ29udGFpbmVyIC5kZXRhaWxzIC52YWxpZ24gLmhvbWVwYWdlRGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjlyZW07IH0gfVxuICAgICAgYm9keSBzZWN0aW9uW3JvbGU9XCJtYWluXCJdIC5PVUFHX2hvbWVwYWdlX2xpc3RpbmcgLmV2ZW4gLmRldGFpbHMge1xuICAgICAgICBwYWRkaW5nOiAzcmVtIDNyZW0gM3JlbSAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICAgIGJvZHkgc2VjdGlvbltyb2xlPVwibWFpblwiXSAuT1VBR19ob21lcGFnZV9saXN0aW5nIC5ldmVuIC5kZXRhaWxzIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtM3JlbTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMXJlbTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjVyZW0gMXJlbSA0cmVtIDFyZW0gIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgYm9keSBzZWN0aW9uW3JvbGU9XCJtYWluXCJdIC5PVUFHX2hvbWVwYWdlX2xpc3RpbmcgLmV2ZW4gLmRldGFpbHMge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAgICAgICBib2R5IHNlY3Rpb25bcm9sZT1cIm1haW5cIl0gLk9VQUdfaG9tZXBhZ2VfbGlzdGluZyAuZXZlbiAuZGV0YWlscywgYm9keSBzZWN0aW9uW3JvbGU9XCJtYWluXCJdIC5PVUFHX2hvbWVwYWdlX2xpc3RpbmcgLmV2ZW4gLmRldGFpbHM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgICAgYm9keSBzZWN0aW9uW3JvbGU9XCJtYWluXCJdIC5PVUFHX2hvbWVwYWdlX2xpc3RpbmcgLmV2ZW4gLmRldGFpbHM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgYm9keSBzZWN0aW9uW3JvbGU9XCJtYWluXCJdIC5PVUFHX2hvbWVwYWdlX2xpc3RpbmcgLmV2ZW4gLmRldGFpbHMge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbGVmdDogLTUwJTtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkgc2VjdGlvbltyb2xlPVwibWFpblwiXSAuT1VBR19ob21lcGFnZV9saXN0aW5nIC5ldmVuIC5kZXRhaWxzIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAgIGJvZHkgc2VjdGlvbltyb2xlPVwibWFpblwiXSAuT1VBR19ob21lcGFnZV9saXN0aW5nIC5ldmVuIC5kZXRhaWxzLCBib2R5IHNlY3Rpb25bcm9sZT1cIm1haW5cIl0gLk9VQUdfaG9tZXBhZ2VfbGlzdGluZyAuZXZlbiAuZGV0YWlsczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgICBib2R5IHNlY3Rpb25bcm9sZT1cIm1haW5cIl0gLk9VQUdfaG9tZXBhZ2VfbGlzdGluZyAuZXZlbiAuZGV0YWlsczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgICAgYm9keSBzZWN0aW9uW3JvbGU9XCJtYWluXCJdIC5PVUFHX2hvbWVwYWdlX2xpc3RpbmcgLmV2ZW4gLmltYWdlIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5IHNlY3Rpb25bcm9sZT1cIm1haW5cIl0gLk9VQUdfaG9tZXBhZ2VfbGlzdGluZyAuZXZlbiAuaW1hZ2Uge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICAgIGJvZHkgc2VjdGlvbltyb2xlPVwibWFpblwiXSAuT1VBR19ob21lcGFnZV9saXN0aW5nIC5ldmVuIC5pbWFnZSwgYm9keSBzZWN0aW9uW3JvbGU9XCJtYWluXCJdIC5PVUFHX2hvbWVwYWdlX2xpc3RpbmcgLmV2ZW4gLmltYWdlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgIGJvZHkgc2VjdGlvbltyb2xlPVwibWFpblwiXSAuT1VBR19ob21lcGFnZV9saXN0aW5nIC5ldmVuIC5pbWFnZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICBib2R5IHNlY3Rpb25bcm9sZT1cIm1haW5cIl0gLk9VQUdfaG9tZXBhZ2VfbGlzdGluZyAuZXZlbiAuaW1hZ2Uge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgYm9keSBzZWN0aW9uW3JvbGU9XCJtYWluXCJdIC5PVUFHX2hvbWVwYWdlX2xpc3RpbmcgLmV2ZW4gLmltYWdlIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgYm9keSBzZWN0aW9uW3JvbGU9XCJtYWluXCJdIC5PVUFHX2hvbWVwYWdlX2xpc3RpbmcgLmV2ZW4gLmltYWdlLCBib2R5IHNlY3Rpb25bcm9sZT1cIm1haW5cIl0gLk9VQUdfaG9tZXBhZ2VfbGlzdGluZyAuZXZlbiAuaW1hZ2U6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgYm9keSBzZWN0aW9uW3JvbGU9XCJtYWluXCJdIC5PVUFHX2hvbWVwYWdlX2xpc3RpbmcgLmV2ZW4gLmltYWdlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICAgIGJvZHkgc2VjdGlvbltyb2xlPVwibWFpblwiXSAuT1VBR19ob21lcGFnZV9saXN0aW5nIC5vZGQgLmRldGFpbHMge1xuICAgICAgICBwYWRkaW5nOiAzcmVtIDFyZW0gM3JlbSAzcmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICBib2R5IHNlY3Rpb25bcm9sZT1cIm1haW5cIl0gLk9VQUdfaG9tZXBhZ2VfbGlzdGluZyAub2RkIC5kZXRhaWxzIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgICAgYm9keSBzZWN0aW9uW3JvbGU9XCJtYWluXCJdIC5PVUFHX2hvbWVwYWdlX2xpc3RpbmcgLm9kZCAuZGV0YWlscywgYm9keSBzZWN0aW9uW3JvbGU9XCJtYWluXCJdIC5PVUFHX2hvbWVwYWdlX2xpc3RpbmcgLm9kZCAuZGV0YWlsczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICBib2R5IHNlY3Rpb25bcm9sZT1cIm1haW5cIl0gLk9VQUdfaG9tZXBhZ2VfbGlzdGluZyAub2RkIC5kZXRhaWxzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIGJvZHkgc2VjdGlvbltyb2xlPVwibWFpblwiXSAuT1VBR19ob21lcGFnZV9saXN0aW5nIC5vZGQgLmRldGFpbHMge1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgYm9keSBzZWN0aW9uW3JvbGU9XCJtYWluXCJdIC5PVUFHX2hvbWVwYWdlX2xpc3RpbmcgLm9kZCAuZGV0YWlscyB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgICBib2R5IHNlY3Rpb25bcm9sZT1cIm1haW5cIl0gLk9VQUdfaG9tZXBhZ2VfbGlzdGluZyAub2RkIC5kZXRhaWxzLCBib2R5IHNlY3Rpb25bcm9sZT1cIm1haW5cIl0gLk9VQUdfaG9tZXBhZ2VfbGlzdGluZyAub2RkIC5kZXRhaWxzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAgIGJvZHkgc2VjdGlvbltyb2xlPVwibWFpblwiXSAuT1VBR19ob21lcGFnZV9saXN0aW5nIC5vZGQgLmRldGFpbHM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgICAgICBib2R5IHNlY3Rpb25bcm9sZT1cIm1haW5cIl0gLk9VQUdfaG9tZXBhZ2VfbGlzdGluZyAub2RkIC5kZXRhaWxzIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0zcmVtO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEuNXJlbSAxcmVtIDRyZW0gMXJlbSAhaW1wb3J0YW50OyB9IH1cbiAgICAgIGJvZHkgc2VjdGlvbltyb2xlPVwibWFpblwiXSAuT1VBR19ob21lcGFnZV9saXN0aW5nIC5vZGQgLmltYWdlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIGJvZHkgc2VjdGlvbltyb2xlPVwibWFpblwiXSAuT1VBR19ob21lcGFnZV9saXN0aW5nIC5vZGQgLmltYWdlIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgICAgYm9keSBzZWN0aW9uW3JvbGU9XCJtYWluXCJdIC5PVUFHX2hvbWVwYWdlX2xpc3RpbmcgLm9kZCAuaW1hZ2UsIGJvZHkgc2VjdGlvbltyb2xlPVwibWFpblwiXSAuT1VBR19ob21lcGFnZV9saXN0aW5nIC5vZGQgLmltYWdlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgIGJvZHkgc2VjdGlvbltyb2xlPVwibWFpblwiXSAuT1VBR19ob21lcGFnZV9saXN0aW5nIC5vZGQgLmltYWdlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIGJvZHkgc2VjdGlvbltyb2xlPVwibWFpblwiXSAuT1VBR19ob21lcGFnZV9saXN0aW5nIC5vZGQgLmltYWdlIHtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkgc2VjdGlvbltyb2xlPVwibWFpblwiXSAuT1VBR19ob21lcGFnZV9saXN0aW5nIC5vZGQgLmltYWdlIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAgIGJvZHkgc2VjdGlvbltyb2xlPVwibWFpblwiXSAuT1VBR19ob21lcGFnZV9saXN0aW5nIC5vZGQgLmltYWdlLCBib2R5IHNlY3Rpb25bcm9sZT1cIm1haW5cIl0gLk9VQUdfaG9tZXBhZ2VfbGlzdGluZyAub2RkIC5pbWFnZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgICBib2R5IHNlY3Rpb25bcm9sZT1cIm1haW5cIl0gLk9VQUdfaG9tZXBhZ2VfbGlzdGluZyAub2RkIC5pbWFnZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgYm9keSAuaG9tZXBhZ2VCb3R0b20ge1xuICAgIG1hcmdpbi10b3A6IDRyZW07IH1cbiAgICBib2R5IC5ob21lcGFnZUJvdHRvbSAuT1VBR19ob21lcGFnZV9mZWF0dXJlZF9jb2xsZWN0aW9uICNob21lcGFnZUNvbGxlY3Rpb25Db250YWluZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgbWluLWhlaWdodDogODAwcHg7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsgfVxuICAgICAgYm9keSAuaG9tZXBhZ2VCb3R0b20gLk9VQUdfaG9tZXBhZ2VfZmVhdHVyZWRfY29sbGVjdGlvbiAjaG9tZXBhZ2VDb2xsZWN0aW9uQ29udGFpbmVyOjpiZWZvcmUsIGJvZHkgLmhvbWVwYWdlQm90dG9tIC5PVUFHX2hvbWVwYWdlX2ZlYXR1cmVkX2NvbGxlY3Rpb24gI2hvbWVwYWdlQ29sbGVjdGlvbkNvbnRhaW5lcjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY29udGVudDogJyAnO1xuICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICBvcmRlcjogMTsgfVxuICAgICAgYm9keSAuaG9tZXBhZ2VCb3R0b20gLk9VQUdfaG9tZXBhZ2VfZmVhdHVyZWRfY29sbGVjdGlvbiAjaG9tZXBhZ2VDb2xsZWN0aW9uQ29udGFpbmVyOjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICBib2R5IC5ob21lcGFnZUJvdHRvbSAuT1VBR19ob21lcGFnZV9mZWF0dXJlZF9jb2xsZWN0aW9uICNob21lcGFnZUNvbGxlY3Rpb25Db250YWluZXIgI2NvbGxlY3Rpb25IZWFkaW5nIHtcbiAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyMjUsIDAsIDAuODUpO1xuICAgICAgICBmb250LWZhbWlseTogJ2JlYmFzX25ldWVib2xkJywgc2Fucy1zZXJpZjtcbiAgICAgICAgcGFkZGluZy10b3A6IDEuNXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEuNXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjJyZW07IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICBib2R5IC5ob21lcGFnZUJvdHRvbSAuT1VBR19ob21lcGFnZV9mZWF0dXJlZF9jb2xsZWN0aW9uICNob21lcGFnZUNvbGxlY3Rpb25Db250YWluZXIgI2NvbGxlY3Rpb25IZWFkaW5nIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgICAgYm9keSAuaG9tZXBhZ2VCb3R0b20gLk9VQUdfaG9tZXBhZ2VfZmVhdHVyZWRfY29sbGVjdGlvbiAjaG9tZXBhZ2VDb2xsZWN0aW9uQ29udGFpbmVyICNjb2xsZWN0aW9uSGVhZGluZywgYm9keSAuaG9tZXBhZ2VCb3R0b20gLk9VQUdfaG9tZXBhZ2VfZmVhdHVyZWRfY29sbGVjdGlvbiAjaG9tZXBhZ2VDb2xsZWN0aW9uQ29udGFpbmVyICNjb2xsZWN0aW9uSGVhZGluZzpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICBib2R5IC5ob21lcGFnZUJvdHRvbSAuT1VBR19ob21lcGFnZV9mZWF0dXJlZF9jb2xsZWN0aW9uICNob21lcGFnZUNvbGxlY3Rpb25Db250YWluZXIgI2NvbGxlY3Rpb25IZWFkaW5nOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgICBib2R5IC5ob21lcGFnZUJvdHRvbSAuT1VBR19ob21lcGFnZV9mZWF0dXJlZF9jb2xsZWN0aW9uICNob21lcGFnZUNvbGxlY3Rpb25Db250YWluZXIgI2NvbGxlY3Rpb25IZWFkaW5nLCBib2R5IC5ob21lcGFnZUJvdHRvbSAuT1VBR19ob21lcGFnZV9mZWF0dXJlZF9jb2xsZWN0aW9uICNob21lcGFnZUNvbGxlY3Rpb25Db250YWluZXIgI2NvbGxlY3Rpb25IZWFkaW5nOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgICAgICBib2R5IC5ob21lcGFnZUJvdHRvbSAuT1VBR19ob21lcGFnZV9mZWF0dXJlZF9jb2xsZWN0aW9uICNob21lcGFnZUNvbGxlY3Rpb25Db250YWluZXIgI2NvbGxlY3Rpb25IZWFkaW5nIHtcbiAgICAgICAgICAgIHdpZHRoOiA4My4zMzMzMyU7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5IC5ob21lcGFnZUJvdHRvbSAuT1VBR19ob21lcGFnZV9mZWF0dXJlZF9jb2xsZWN0aW9uICNob21lcGFnZUNvbGxlY3Rpb25Db250YWluZXIgI2NvbGxlY3Rpb25IZWFkaW5nIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICAgICAgYm9keSAuaG9tZXBhZ2VCb3R0b20gLk9VQUdfaG9tZXBhZ2VfZmVhdHVyZWRfY29sbGVjdGlvbiAjaG9tZXBhZ2VDb2xsZWN0aW9uQ29udGFpbmVyICNjb2xsZWN0aW9uSGVhZGluZywgYm9keSAuaG9tZXBhZ2VCb3R0b20gLk9VQUdfaG9tZXBhZ2VfZmVhdHVyZWRfY29sbGVjdGlvbiAjaG9tZXBhZ2VDb2xsZWN0aW9uQ29udGFpbmVyICNjb2xsZWN0aW9uSGVhZGluZzpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgICBib2R5IC5ob21lcGFnZUJvdHRvbSAuT1VBR19ob21lcGFnZV9mZWF0dXJlZF9jb2xsZWN0aW9uICNob21lcGFnZUNvbGxlY3Rpb25Db250YWluZXIgI2NvbGxlY3Rpb25IZWFkaW5nOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgICAgICAgIGJvZHkgLmhvbWVwYWdlQm90dG9tIC5PVUFHX2hvbWVwYWdlX2ZlYXR1cmVkX2NvbGxlY3Rpb24gI2hvbWVwYWdlQ29sbGVjdGlvbkNvbnRhaW5lciAjY29sbGVjdGlvbkhlYWRpbmcsIGJvZHkgLmhvbWVwYWdlQm90dG9tIC5PVUFHX2hvbWVwYWdlX2ZlYXR1cmVkX2NvbGxlY3Rpb24gI2hvbWVwYWdlQ29sbGVjdGlvbkNvbnRhaW5lciAjY29sbGVjdGlvbkhlYWRpbmc6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAgICAgYm9keSAuaG9tZXBhZ2VCb3R0b20gLk9VQUdfaG9tZXBhZ2VfZmVhdHVyZWRfY29sbGVjdGlvbiAjaG9tZXBhZ2VDb2xsZWN0aW9uQ29udGFpbmVyICNjb2xsZWN0aW9uSGVhZGluZyB7XG4gICAgICAgICAgICB3aWR0aDogNDEuNjY2NjclO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkgLmhvbWVwYWdlQm90dG9tIC5PVUFHX2hvbWVwYWdlX2ZlYXR1cmVkX2NvbGxlY3Rpb24gI2hvbWVwYWdlQ29sbGVjdGlvbkNvbnRhaW5lciAjY29sbGVjdGlvbkhlYWRpbmcge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgICAgICAgYm9keSAuaG9tZXBhZ2VCb3R0b20gLk9VQUdfaG9tZXBhZ2VfZmVhdHVyZWRfY29sbGVjdGlvbiAjaG9tZXBhZ2VDb2xsZWN0aW9uQ29udGFpbmVyICNjb2xsZWN0aW9uSGVhZGluZywgYm9keSAuaG9tZXBhZ2VCb3R0b20gLk9VQUdfaG9tZXBhZ2VfZmVhdHVyZWRfY29sbGVjdGlvbiAjaG9tZXBhZ2VDb2xsZWN0aW9uQ29udGFpbmVyICNjb2xsZWN0aW9uSGVhZGluZzpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgICBib2R5IC5ob21lcGFnZUJvdHRvbSAuT1VBR19ob21lcGFnZV9mZWF0dXJlZF9jb2xsZWN0aW9uICNob21lcGFnZUNvbGxlY3Rpb25Db250YWluZXIgI2NvbGxlY3Rpb25IZWFkaW5nOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgICAgICAgIGJvZHkgLmhvbWVwYWdlQm90dG9tIC5PVUFHX2hvbWVwYWdlX2ZlYXR1cmVkX2NvbGxlY3Rpb24gI2hvbWVwYWdlQ29sbGVjdGlvbkNvbnRhaW5lciAjY29sbGVjdGlvbkhlYWRpbmcsIGJvZHkgLmhvbWVwYWdlQm90dG9tIC5PVUFHX2hvbWVwYWdlX2ZlYXR1cmVkX2NvbGxlY3Rpb24gI2hvbWVwYWdlQ29sbGVjdGlvbkNvbnRhaW5lciAjY29sbGVjdGlvbkhlYWRpbmc6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gICAgICBib2R5IC5ob21lcGFnZUJvdHRvbSAuT1VBR19ob21lcGFnZV9mZWF0dXJlZF9jb2xsZWN0aW9uICNob21lcGFnZUNvbGxlY3Rpb25Db250YWluZXIgI2NvbGxlY3Rpb25EZXRhaWxzIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgYm9keSAuaG9tZXBhZ2VCb3R0b20gLk9VQUdfaG9tZXBhZ2VfZmVhdHVyZWRfY29sbGVjdGlvbiAjaG9tZXBhZ2VDb2xsZWN0aW9uQ29udGFpbmVyICNjb2xsZWN0aW9uRGV0YWlscyB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICAgIGJvZHkgLmhvbWVwYWdlQm90dG9tIC5PVUFHX2hvbWVwYWdlX2ZlYXR1cmVkX2NvbGxlY3Rpb24gI2hvbWVwYWdlQ29sbGVjdGlvbkNvbnRhaW5lciAjY29sbGVjdGlvbkRldGFpbHMsIGJvZHkgLmhvbWVwYWdlQm90dG9tIC5PVUFHX2hvbWVwYWdlX2ZlYXR1cmVkX2NvbGxlY3Rpb24gI2hvbWVwYWdlQ29sbGVjdGlvbkNvbnRhaW5lciAjY29sbGVjdGlvbkRldGFpbHM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgYm9keSAuaG9tZXBhZ2VCb3R0b20gLk9VQUdfaG9tZXBhZ2VfZmVhdHVyZWRfY29sbGVjdGlvbiAjaG9tZXBhZ2VDb2xsZWN0aW9uQ29udGFpbmVyICNjb2xsZWN0aW9uRGV0YWlsczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICAgIGJvZHkgLmhvbWVwYWdlQm90dG9tIC5PVUFHX2hvbWVwYWdlX2ZlYXR1cmVkX2NvbGxlY3Rpb24gI2hvbWVwYWdlQ29sbGVjdGlvbkNvbnRhaW5lciAjY29sbGVjdGlvbkRldGFpbHMge1xuICAgICAgICAgICAgd2lkdGg6IDgzLjMzMzMzJTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgICAgICAgbGVmdDogOCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkgLmhvbWVwYWdlQm90dG9tIC5PVUFHX2hvbWVwYWdlX2ZlYXR1cmVkX2NvbGxlY3Rpb24gI2hvbWVwYWdlQ29sbGVjdGlvbkNvbnRhaW5lciAjY29sbGVjdGlvbkRldGFpbHMge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAgICAgICBib2R5IC5ob21lcGFnZUJvdHRvbSAuT1VBR19ob21lcGFnZV9mZWF0dXJlZF9jb2xsZWN0aW9uICNob21lcGFnZUNvbGxlY3Rpb25Db250YWluZXIgI2NvbGxlY3Rpb25EZXRhaWxzLCBib2R5IC5ob21lcGFnZUJvdHRvbSAuT1VBR19ob21lcGFnZV9mZWF0dXJlZF9jb2xsZWN0aW9uICNob21lcGFnZUNvbGxlY3Rpb25Db250YWluZXIgI2NvbGxlY3Rpb25EZXRhaWxzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAgIGJvZHkgLmhvbWVwYWdlQm90dG9tIC5PVUFHX2hvbWVwYWdlX2ZlYXR1cmVkX2NvbGxlY3Rpb24gI2hvbWVwYWdlQ29sbGVjdGlvbkNvbnRhaW5lciAjY29sbGVjdGlvbkRldGFpbHM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAgICAgYm9keSAuaG9tZXBhZ2VCb3R0b20gLk9VQUdfaG9tZXBhZ2VfZmVhdHVyZWRfY29sbGVjdGlvbiAjaG9tZXBhZ2VDb2xsZWN0aW9uQ29udGFpbmVyICNjb2xsZWN0aW9uRGV0YWlscyB7XG4gICAgICAgICAgICBsZWZ0OiAyNSU7IH0gfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgIGJvZHkgLmhvbWVwYWdlQm90dG9tIC5PVUFHX2hvbWVwYWdlX2ZlYXR1cmVkX2NvbGxlY3Rpb24gI2hvbWVwYWdlQ29sbGVjdGlvbkNvbnRhaW5lciAjY29sbGVjdGlvbkRldGFpbHMge1xuICAgICAgICAgICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgICAgICAgbGVmdDogMzMuNSU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5IC5ob21lcGFnZUJvdHRvbSAuT1VBR19ob21lcGFnZV9mZWF0dXJlZF9jb2xsZWN0aW9uICNob21lcGFnZUNvbGxlY3Rpb25Db250YWluZXIgI2NvbGxlY3Rpb25EZXRhaWxzIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICAgIGJvZHkgLmhvbWVwYWdlQm90dG9tIC5PVUFHX2hvbWVwYWdlX2ZlYXR1cmVkX2NvbGxlY3Rpb24gI2hvbWVwYWdlQ29sbGVjdGlvbkNvbnRhaW5lciAjY29sbGVjdGlvbkRldGFpbHMsIGJvZHkgLmhvbWVwYWdlQm90dG9tIC5PVUFHX2hvbWVwYWdlX2ZlYXR1cmVkX2NvbGxlY3Rpb24gI2hvbWVwYWdlQ29sbGVjdGlvbkNvbnRhaW5lciAjY29sbGVjdGlvbkRldGFpbHM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgICAgYm9keSAuaG9tZXBhZ2VCb3R0b20gLk9VQUdfaG9tZXBhZ2VfZmVhdHVyZWRfY29sbGVjdGlvbiAjaG9tZXBhZ2VDb2xsZWN0aW9uQ29udGFpbmVyICNjb2xsZWN0aW9uRGV0YWlsczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICAgICAgYm9keSAuaG9tZXBhZ2VCb3R0b20gLk9VQUdfaG9tZXBhZ2VfZmVhdHVyZWRfY29sbGVjdGlvbiAjaG9tZXBhZ2VDb2xsZWN0aW9uQ29udGFpbmVyICNjb2xsZWN0aW9uRGV0YWlscyAjY29sbGVjdGlvblRpdGxlIHtcbiAgICAgICAgICBwYWRkaW5nOiAycmVtIDNyZW0gMC41cmVtIDNyZW07XG4gICAgICAgICAgY29sb3I6ICMxZDFkMWQ7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICdiZWJhc19uZXVlcmVndWxhcicsc2Fucy1zZXJpZjtcbiAgICAgICAgICBmb250LXNpemU6IDIuN3JlbTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMC45OyB9XG4gICAgICAgIGJvZHkgLmhvbWVwYWdlQm90dG9tIC5PVUFHX2hvbWVwYWdlX2ZlYXR1cmVkX2NvbGxlY3Rpb24gI2hvbWVwYWdlQ29sbGVjdGlvbkNvbnRhaW5lciAjY29sbGVjdGlvbkRldGFpbHMgI2NvbGxlY3Rpb25EZXNjcmlwdGlvbiB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICdyb2JvdG9pdGFsaWMnLCdzYW5zLXNlcmlmJztcbiAgICAgICAgICBmb250LXNpemU6IDAuODVyZW07XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICBwYWRkaW5nOiAwIDIuMnJlbTsgfVxuICBib2R5IC5mb290ZXItY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNDtcbiAgICBib3JkZXItdG9wOiBub25lO1xuICAgIHBhZGRpbmc6IDBweDtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgYm9keSAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWdyaWQge1xuICAgICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgcGFkZGluZy10b3A6IDIuMnJlbSAwcmVtOyB9XG4gICAgICBib2R5IC5mb290ZXItY29udGFpbmVyIC5mb290ZXItZ3JpZCBwIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdiZWJhc19uZXVlYm9sZCcsIHNhbnMtc2VyaWY7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGNvbG9yOiAjODc3MTQ4O1xuICAgICAgICBmb250LXNpemU6IDEuMjFyZW07IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgICAgYm9keSAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWdyaWQgI2Zvb3RlckNvbnRhY3RJbmZvIHtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTsgfSB9XG4gICAgICBib2R5IC5mb290ZXItY29udGFpbmVyIC5mb290ZXItZ3JpZCAjZm9vdGVyQ29udGFjdEluZm8gaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiAyODVweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgICAgICAgYm9keSAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWdyaWQgI2Zvb3RlckNvbnRhY3RJbmZvIGltZy5zb2NpYWwge1xuICAgICAgICAgIG1heC13aWR0aDogMzFweDtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7IH1cbiAgICAgICAgYm9keSAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWdyaWQgI2Zvb3RlckNvbnRhY3RJbmZvIGltZy5sZWZ0UGFkZGluZyB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDEycHg7IH1cbiAgICAgIGJvZHkgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci1ncmlkICNmb290ZXJDb250YWN0SW5mbyBwIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMXJlbTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgICBib2R5IC5mb290ZXItY29udGFpbmVyIC5mb290ZXItZ3JpZCAud3BjZjcge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICBib2R5IC5mb290ZXItY29udGFpbmVyIC5mb290ZXItZ3JpZCAud3BjZjcge1xuICAgICAgICAgIHBhZGRpbmc6IDByZW0gMi41cmVtOyB9IH1cbiAgICAgIGJvZHkgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci1ncmlkIC53cGNmNyBoMyB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjRyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMS45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtOyB9XG4gICAgICBib2R5IC5mb290ZXItY29udGFpbmVyIC5mb290ZXItZ3JpZCAud3BjZjcgZm9ybSBwIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICAgICAgZm9udC1zaXplOiAwLjg1cmVtO1xuICAgICAgICBmb250LWZhbWlseTogJ3JvYm90bycsJ3NhbnMtc2VyaWYnO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgY29sb3I6ICMxZDFkMWQ7IH1cbiAgICAgIGJvZHkgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci1ncmlkIC53cGNmNyBmb3JtIGlucHV0IHtcbiAgICAgICAgYm9yZGVyOiAwcHg7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIG1heC13aWR0aDogNDUwcHg7IH1cbiAgICAgIGJvZHkgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci1ncmlkIC53cGNmNyBmb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWQxZDFkO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LWZhbWlseTogJ2JlYmFzX25ldWVib2xkJywgc2Fucy1zZXJpZjtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4ycmVtOyB9XG4gICAgICAgIGJvZHkgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci1ncmlkIC53cGNmNyBmb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06aG92ZXIsIGJvZHkgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci1ncmlkIC53cGNmNyBmb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06Zm9jdXMge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmUxMDA7XG4gICAgICAgICAgY29sb3I6ICMxZDFkMWQ7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgICBib2R5IC5mb290ZXItY29udGFpbmVyIC5mb290ZXItZ3JpZCAud3BjZjcgZm9ybSBpbnB1dFt0eXBlPVwiZW1haWxcIl0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7IH1cbiAgICAgIGJvZHkgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci1ncmlkIC53cGNmNyBmb3JtIGJyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgICBib2R5IC5mb290ZXItY29udGFpbmVyIC5mb290ZXItZ3JpZCAjbWFkZVBvc3NpYmxlQnkge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDJyZW07IH0gfVxuICAgICAgYm9keSAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWdyaWQgI21hZGVQb3NzaWJsZUJ5IGg0IHtcbiAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgICAgIGJvZHkgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci1ncmlkICNtYWRlUG9zc2libGVCeSBoNCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cbiAgICAgIGJvZHkgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci1ncmlkICNtYWRlUG9zc2libGVCeSAjZm9vdGVyU3BvbnNvckNvbnRhaW5lciB7XG4gICAgICAgIG1heC13aWR0aDogNzVyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgICAgICAgYm9keSAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWdyaWQgI21hZGVQb3NzaWJsZUJ5ICNmb290ZXJTcG9uc29yQ29udGFpbmVyOjpiZWZvcmUsIGJvZHkgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci1ncmlkICNtYWRlUG9zc2libGVCeSAjZm9vdGVyU3BvbnNvckNvbnRhaW5lcjo6YWZ0ZXIge1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICAgIG9yZGVyOiAxOyB9XG4gICAgICAgIGJvZHkgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci1ncmlkICNtYWRlUG9zc2libGVCeSAjZm9vdGVyU3BvbnNvckNvbnRhaW5lcjo6YWZ0ZXIge1xuICAgICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAgIGJvZHkgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci1ncmlkICNtYWRlUG9zc2libGVCeSAjZm9vdGVyU3BvbnNvckNvbnRhaW5lciAuaW1hZ2VMZWZ0IHtcbiAgICAgICAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgICAgYm9keSAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWdyaWQgI21hZGVQb3NzaWJsZUJ5ICNmb290ZXJTcG9uc29yQ29udGFpbmVyIC5pbWFnZUxlZnQge1xuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgICAgICBib2R5IC5mb290ZXItY29udGFpbmVyIC5mb290ZXItZ3JpZCAjbWFkZVBvc3NpYmxlQnkgI2Zvb3RlclNwb25zb3JDb250YWluZXIgLmltYWdlTGVmdCwgYm9keSAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWdyaWQgI21hZGVQb3NzaWJsZUJ5ICNmb290ZXJTcG9uc29yQ29udGFpbmVyIC5pbWFnZUxlZnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgYm9keSAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWdyaWQgI21hZGVQb3NzaWJsZUJ5ICNmb290ZXJTcG9uc29yQ29udGFpbmVyIC5pbWFnZUxlZnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgICAgICAgYm9keSAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWdyaWQgI21hZGVQb3NzaWJsZUJ5ICNmb290ZXJTcG9uc29yQ29udGFpbmVyIC5pbWFnZUxlZnQge1xuICAgICAgICAgICAgICB3aWR0aDogMTYuNjY2NjclO1xuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5IC5mb290ZXItY29udGFpbmVyIC5mb290ZXItZ3JpZCAjbWFkZVBvc3NpYmxlQnkgI2Zvb3RlclNwb25zb3JDb250YWluZXIgLmltYWdlTGVmdCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgICAgICAgICAgYm9keSAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWdyaWQgI21hZGVQb3NzaWJsZUJ5ICNmb290ZXJTcG9uc29yQ29udGFpbmVyIC5pbWFnZUxlZnQsIGJvZHkgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci1ncmlkICNtYWRlUG9zc2libGVCeSAjZm9vdGVyU3BvbnNvckNvbnRhaW5lciAuaW1hZ2VMZWZ0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgICAgIGJvZHkgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci1ncmlkICNtYWRlUG9zc2libGVCeSAjZm9vdGVyU3BvbnNvckNvbnRhaW5lciAuaW1hZ2VMZWZ0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgICAgICAgYm9keSAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWdyaWQgI21hZGVQb3NzaWJsZUJ5ICNmb290ZXJTcG9uc29yQ29udGFpbmVyIC5pbWFnZUxlZnQgaW1nIHtcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiA5M3B4OyB9IH1cbiAgICAgICAgYm9keSAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWdyaWQgI21hZGVQb3NzaWJsZUJ5ICNmb290ZXJTcG9uc29yQ29udGFpbmVyIC5pbWFnZVJpZ2h0IHtcbiAgICAgICAgICB3aWR0aDogNjYuNjY2NjclO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgICAgYm9keSAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWdyaWQgI21hZGVQb3NzaWJsZUJ5ICNmb290ZXJTcG9uc29yQ29udGFpbmVyIC5pbWFnZVJpZ2h0IHtcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICAgICAgYm9keSAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWdyaWQgI21hZGVQb3NzaWJsZUJ5ICNmb290ZXJTcG9uc29yQ29udGFpbmVyIC5pbWFnZVJpZ2h0LCBib2R5IC5mb290ZXItY29udGFpbmVyIC5mb290ZXItZ3JpZCAjbWFkZVBvc3NpYmxlQnkgI2Zvb3RlclNwb25zb3JDb250YWluZXIgLmltYWdlUmlnaHQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgYm9keSAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWdyaWQgI21hZGVQb3NzaWJsZUJ5ICNmb290ZXJTcG9uc29yQ29udGFpbmVyIC5pbWFnZVJpZ2h0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgICAgICAgIGJvZHkgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci1ncmlkICNtYWRlUG9zc2libGVCeSAjZm9vdGVyU3BvbnNvckNvbnRhaW5lciAuaW1hZ2VSaWdodCB7XG4gICAgICAgICAgICAgIHdpZHRoOiA4My4zMzMzMyU7XG4gICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci1ncmlkICNtYWRlUG9zc2libGVCeSAjZm9vdGVyU3BvbnNvckNvbnRhaW5lciAuaW1hZ2VSaWdodCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgICAgICAgICAgYm9keSAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWdyaWQgI21hZGVQb3NzaWJsZUJ5ICNmb290ZXJTcG9uc29yQ29udGFpbmVyIC5pbWFnZVJpZ2h0LCBib2R5IC5mb290ZXItY29udGFpbmVyIC5mb290ZXItZ3JpZCAjbWFkZVBvc3NpYmxlQnkgI2Zvb3RlclNwb25zb3JDb250YWluZXIgLmltYWdlUmlnaHQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAgICAgYm9keSAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWdyaWQgI21hZGVQb3NzaWJsZUJ5ICNmb290ZXJTcG9uc29yQ29udGFpbmVyIC5pbWFnZVJpZ2h0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgICAgICAgYm9keSAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLWdyaWQgI21hZGVQb3NzaWJsZUJ5ICNmb290ZXJTcG9uc29yQ29udGFpbmVyIC5pbWFnZVJpZ2h0IGltZyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAgICAgICAgIGJvZHkgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci1ncmlkICNtYWRlUG9zc2libGVCeSAjZm9vdGVyU3BvbnNvckNvbnRhaW5lciAuaW1hZ2VSaWdodCBpbWcge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMjE2cHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgICBib2R5IC5mb290ZXItY29udGFpbmVyIC5mb290ZXItZ3JpZCAjY3VzdG9tX2h0bWwtMTEsIGJvZHkgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci1ncmlkICNjdXN0b21faHRtbC0xMiB7XG4gICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjM2MzYzM7IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgICBib2R5IC5mb290ZXItY29udGFpbmVyIC5mb290ZXItZ3JpZCAjY3VzdG9tX2h0bWwtNSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjM2MzYzM7IH0gfVxuICAgIGJvZHkgLmZvb3Rlci1jb250YWluZXIgLm91Rm9vdGVyLWNvbnRhaW5lciB7XG4gICAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWQxZDFkO1xuICAgICAgcGFkZGluZzogMnJlbSAwOyB9XG4gICAgICBib2R5IC5mb290ZXItY29udGFpbmVyIC5vdUZvb3Rlci1jb250YWluZXI6OmJlZm9yZSwgYm9keSAuZm9vdGVyLWNvbnRhaW5lciAub3VGb290ZXItY29udGFpbmVyOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBjb250ZW50OiAnICc7XG4gICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgIG9yZGVyOiAxOyB9XG4gICAgICBib2R5IC5mb290ZXItY29udGFpbmVyIC5vdUZvb3Rlci1jb250YWluZXI6OmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIGJvZHkgLmZvb3Rlci1jb250YWluZXIgLm91Rm9vdGVyLWNvbnRhaW5lciAub3VGb290ZXIge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6IDg2MHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgIGJvZHkgLmZvb3Rlci1jb250YWluZXIgLm91Rm9vdGVyLWNvbnRhaW5lciAub3VGb290ZXIge1xuICAgICAgICAgICAgd2lkdGg6IDgzLjMzMzMzJTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgYm9keSAuZm9vdGVyLWNvbnRhaW5lciAub3VGb290ZXItY29udGFpbmVyIC5vdUZvb3RlciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgICBib2R5IC5mb290ZXItY29udGFpbmVyIC5vdUZvb3Rlci1jb250YWluZXIgLm91Rm9vdGVyLCBib2R5IC5mb290ZXItY29udGFpbmVyIC5vdUZvb3Rlci1jb250YWluZXIgLm91Rm9vdGVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAgIGJvZHkgLmZvb3Rlci1jb250YWluZXIgLm91Rm9vdGVyLWNvbnRhaW5lciAub3VGb290ZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgICAgICBib2R5IC5mb290ZXItY29udGFpbmVyIC5vdUZvb3Rlci1jb250YWluZXIgLm91Rm9vdGVyIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkgLmZvb3Rlci1jb250YWluZXIgLm91Rm9vdGVyLWNvbnRhaW5lciAub3VGb290ZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAgICAgICBib2R5IC5mb290ZXItY29udGFpbmVyIC5vdUZvb3Rlci1jb250YWluZXIgLm91Rm9vdGVyLCBib2R5IC5mb290ZXItY29udGFpbmVyIC5vdUZvb3Rlci1jb250YWluZXIgLm91Rm9vdGVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAgIGJvZHkgLmZvb3Rlci1jb250YWluZXIgLm91Rm9vdGVyLWNvbnRhaW5lciAub3VGb290ZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgICAgIGJvZHkgLmZvb3Rlci1jb250YWluZXIgLm91Rm9vdGVyLWNvbnRhaW5lciAub3VGb290ZXIsIGJvZHkgLmZvb3Rlci1jb250YWluZXIgLm91Rm9vdGVyLWNvbnRhaW5lciAub3VGb290ZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgYm9keSAuZm9vdGVyLWNvbnRhaW5lciAub3VGb290ZXItY29udGFpbmVyIC5vdUZvb3RlciAuZm9vdGVySXRlbSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIHdpZHRoOiAzMy4zMzMzMyU7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgICBib2R5IC5mb290ZXItY29udGFpbmVyIC5vdUZvb3Rlci1jb250YWluZXIgLm91Rm9vdGVyIC5mb290ZXJJdGVtIHtcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICAgICAgYm9keSAuZm9vdGVyLWNvbnRhaW5lciAub3VGb290ZXItY29udGFpbmVyIC5vdUZvb3RlciAuZm9vdGVySXRlbSwgYm9keSAuZm9vdGVyLWNvbnRhaW5lciAub3VGb290ZXItY29udGFpbmVyIC5vdUZvb3RlciAuZm9vdGVySXRlbTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICBib2R5IC5mb290ZXItY29udGFpbmVyIC5vdUZvb3Rlci1jb250YWluZXIgLm91Rm9vdGVyIC5mb290ZXJJdGVtOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgICAgICAgYm9keSAuZm9vdGVyLWNvbnRhaW5lciAub3VGb290ZXItY29udGFpbmVyIC5vdUZvb3RlciAuZm9vdGVySXRlbSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5IC5mb290ZXItY29udGFpbmVyIC5vdUZvb3Rlci1jb250YWluZXIgLm91Rm9vdGVyIC5mb290ZXJJdGVtIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAgICAgICAgIGJvZHkgLmZvb3Rlci1jb250YWluZXIgLm91Rm9vdGVyLWNvbnRhaW5lciAub3VGb290ZXIgLmZvb3Rlckl0ZW0sIGJvZHkgLmZvb3Rlci1jb250YWluZXIgLm91Rm9vdGVyLWNvbnRhaW5lciAub3VGb290ZXIgLmZvb3Rlckl0ZW06bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAgICAgYm9keSAuZm9vdGVyLWNvbnRhaW5lciAub3VGb290ZXItY29udGFpbmVyIC5vdUZvb3RlciAuZm9vdGVySXRlbTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgICBib2R5IC5mb290ZXItY29udGFpbmVyIC5vdUZvb3Rlci1jb250YWluZXIgLm91Rm9vdGVyIC5mb290ZXJJdGVtIHtcbiAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzMwMzAzMDsgfSB9XG4gICAgICAgICAgYm9keSAuZm9vdGVyLWNvbnRhaW5lciAub3VGb290ZXItY29udGFpbmVyIC5vdUZvb3RlciAuZm9vdGVySXRlbSAjb3VGb290ZXJMb2dvIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMjMwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAgICAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICAgICAgYm9keSAuZm9vdGVyLWNvbnRhaW5lciAub3VGb290ZXItY29udGFpbmVyIC5vdUZvb3RlciAuZm9vdGVySXRlbSAjb3VGb290ZXJMb2dvIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMC4xcmVtOyB9IH1cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgICAgICAgICAgYm9keSAuZm9vdGVyLWNvbnRhaW5lciAub3VGb290ZXItY29udGFpbmVyIC5vdUZvb3RlciAuZm9vdGVySXRlbSAjb3VGb290ZXJMb2dvIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDMwMHB4OyB9IH1cbiAgICAgICAgICBib2R5IC5mb290ZXItY29udGFpbmVyIC5vdUZvb3Rlci1jb250YWluZXIgLm91Rm9vdGVyIC5mb290ZXJJdGVtIGEge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBjb2xvcjogI2NjYjU3YTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NXJlbTsgfVxuICAgICAgICAgIGJvZHkgLmZvb3Rlci1jb250YWluZXIgLm91Rm9vdGVyLWNvbnRhaW5lciAub3VGb290ZXIgLmZvb3Rlckl0ZW0gYTpob3ZlciB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAgICAgICBib2R5IC5mb290ZXItY29udGFpbmVyIC5vdUZvb3Rlci1jb250YWluZXIgLm91Rm9vdGVyIDpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgIGJvcmRlci1yaWdodDogbm9uZTsgfVxuICAgICAgICAgIGJvZHkgLmZvb3Rlci1jb250YWluZXIgLm91Rm9vdGVyLWNvbnRhaW5lciAub3VGb290ZXIgOmxhc3Qtb2YtdHlwZTpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7IH1cblxuLypcbkZyb250ZW5kIHN0eWxlcyBmb3IgZ3V0ZW5iZXJnIGJsb2Nrc1xuKi9cbi8qKiA9PT0gQmFzZSBDb2xvciBQYWxhdHRlID09PSAqL1xuLmhhcy1wcmltYXJ5LWJhY2tncm91bmQtY29sb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODc3MTQ4OyB9XG5cbi5oYXMtcHJpbWFyeS1jb2xvciB7XG4gIGNvbG9yOiAjODc3MTQ4OyB9XG5cbi5oYXMtc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzY3Njc2OyB9XG5cbi5oYXMtc2Vjb25kYXJ5LWNvbG9yIHtcbiAgY29sb3I6ICM3Njc2NzY7IH1cblxuLmhhcy1zdWNjZXNzLWJhY2tncm91bmQtY29sb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FkYjc2OyB9XG5cbi5oYXMtc3VjY2Vzcy1jb2xvciB7XG4gIGNvbG9yOiAjM2FkYjc2OyB9XG5cbi5oYXMtd2FybmluZy1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDsgfVxuXG4uaGFzLXdhcm5pbmctY29sb3Ige1xuICBjb2xvcjogI2ZmYWUwMDsgfVxuXG4uaGFzLWFsZXJ0LWJhY2tncm91bmQtY29sb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M0YjM3OyB9XG5cbi5oYXMtYWxlcnQtY29sb3Ige1xuICBjb2xvcjogI2NjNGIzNzsgfVxuXG4vKiogPT09IEJ1dHRvbiA9PT0gKi9cbi53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluay5oYXMtcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzg3NzE0ODsgfVxuXG4ud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmsuaGFzLXByaW1hcnktY29sb3Ige1xuICBjb2xvcjogIzg3NzE0ODsgfVxuXG4ud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmsuaGFzLXNlY29uZGFyeS1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc2NzY3NjsgfVxuXG4ud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmsuaGFzLXNlY29uZGFyeS1jb2xvciB7XG4gIGNvbG9yOiAjNzY3Njc2OyB9XG5cbi53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluay5oYXMtc3VjY2Vzcy1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNhZGI3NjsgfVxuXG4ud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmsuaGFzLXN1Y2Nlc3MtY29sb3Ige1xuICBjb2xvcjogIzNhZGI3NjsgfVxuXG4ud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmsuaGFzLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7IH1cblxuLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLmhhcy13YXJuaW5nLWNvbG9yIHtcbiAgY29sb3I6ICNmZmFlMDA7IH1cblxuLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLmhhcy1hbGVydC1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGIzNzsgfVxuXG4ud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmsuaGFzLWFsZXJ0LWNvbG9yIHtcbiAgY29sb3I6ICNjYzRiMzc7IH1cblxuLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1zcXVhcmVkIC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi8qKiA9PT0gRmlsZSA9PT0gKi9cbi53cC1ibG9jay1maWxlIC53cC1ibG9jay1maWxlX19idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgcGFkZGluZzogMC44NWVtIDFlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODc3MTQ4O1xuICBjb2xvcjogI2ZlZmVmZTsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLndwLWJsb2NrLWZpbGUgLndwLWJsb2NrLWZpbGVfX2J1dHRvbiB7XG4gICAgb3V0bGluZTogMDsgfVxuICAud3AtYmxvY2stZmlsZSAud3AtYmxvY2stZmlsZV9fYnV0dG9uOmhvdmVyLCAud3AtYmxvY2stZmlsZSAud3AtYmxvY2stZmlsZV9fYnV0dG9uOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlMTAwO1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ3JvYm90b2JvbGQnO1xuICBzcmM6IHVybChcIi93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLWJvbGQtd2ViLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by1ib2xkLXdlYi5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by1ib2xkLXdlYi53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tYm9sZC13ZWIud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by1ib2xkLXdlYi50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLWJvbGQtd2ViLnN2ZyNyb2JvdG9ib2xkXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ3JvYm90b2JvbGRfaXRhbGljJztcbiAgc3JjOiB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by1ib2xkaXRhbGljLXdlYi5lb3RcIik7XG4gIHNyYzogdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tYm9sZGl0YWxpYy13ZWIuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tYm9sZGl0YWxpYy13ZWIud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLWJvbGRpdGFsaWMtd2ViLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tYm9sZGl0YWxpYy13ZWIudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by1ib2xkaXRhbGljLXdlYi5zdmcjcm9ib3RvYm9sZF9pdGFsaWNcIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAncm9ib3RvcmVndWxhcic7XG4gIHNyYzogdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tcmVndWxhci13ZWIuZW90XCIpO1xuICBzcmM6IHVybChcIi93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLXJlZ3VsYXItd2ViLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLXJlZ3VsYXItd2ViLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by1yZWd1bGFyLXdlYi53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLXJlZ3VsYXItd2ViLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tcmVndWxhci13ZWIuc3ZnI3JvYm90b3JlZ3VsYXJcIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAncm9ib3RvaXRhbGljJztcbiAgc3JjOiB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by1yZWd1bGFyaXRhbGljLXdlYi5lb3RcIik7XG4gIHNyYzogdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tcmVndWxhcml0YWxpYy13ZWIuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tcmVndWxhcml0YWxpYy13ZWIud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLXJlZ3VsYXJpdGFsaWMtd2ViLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tcmVndWxhcml0YWxpYy13ZWIudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by1yZWd1bGFyaXRhbGljLXdlYi5zdmcjcm9ib3RvaXRhbGljXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ3JvYm90b2xpZ2h0JztcbiAgc3JjOiB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by1saWdodC13ZWIuZW90XCIpO1xuICBzcmM6IHVybChcIi93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLWxpZ2h0LXdlYi5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by1saWdodC13ZWIud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLWxpZ2h0LXdlYi53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLWxpZ2h0LXdlYi50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLWxpZ2h0LXdlYi5zdmcjcm9ib3RvbGlnaHRcIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAncm9ib3RvbGlnaHRfaXRhbGljJztcbiAgc3JjOiB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3Ivd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL29ib3RvLWxpZ2h0aXRhbGljLXdlYi5lb3RcIik7XG4gIHNyYzogdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tbGlnaHRpdGFsaWMtd2ViLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLWxpZ2h0aXRhbGljLXdlYi53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tbGlnaHRpdGFsaWMtd2ViLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tbGlnaHRpdGFsaWMtd2ViLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tbGlnaHRpdGFsaWMtd2ViLnN2ZyNyb2JvdG9saWdodF9pdGFsaWNcIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAncm9ib3RvbWVkaXVtJztcbiAgc3JjOiB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by1tZWRpdW0td2ViLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by1tZWRpdW0td2ViLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLW1lZGl1bS13ZWIud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLW1lZGl1bS13ZWIud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by1tZWRpdW0td2ViLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tbWVkaXVtLXdlYi5zdmcjcm9ib3RvbWVkaXVtXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ3JvYm90b21lZGl1bV9pdGFsaWMnO1xuICBzcmM6IHVybChcIi93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLW1lZGl1bWl0YWxpYy13ZWIuZW90XCIpO1xuICBzcmM6IHVybChcIi93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLW1lZGl1bWl0YWxpYy13ZWIuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tbWVkaXVtaXRhbGljLXdlYi53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tbWVkaXVtaXRhbGljLXdlYi53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLW1lZGl1bWl0YWxpYy13ZWIudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by1tZWRpdW1pdGFsaWMtd2ViLnN2ZyNyb2JvdG9tZWRpdW1faXRhbGljXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ3JvYm90b3RoaW4nO1xuICBzcmM6IHVybChcIi93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLXRoaW4td2ViLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by10aGluLXdlYi5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by10aGluLXdlYi53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tdGhpbi13ZWIud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by10aGluLXdlYi50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLXRoaW4td2ViLnN2ZyNyb2JvdG90aGluXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ3JvYm90b3RoaW5faXRhbGljJztcbiAgc3JjOiB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by10aGluaXRhbGljLXdlYi5lb3RcIik7XG4gIHNyYzogdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tdGhpbml0YWxpYy13ZWIuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tdGhpbml0YWxpYy13ZWIud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLXRoaW5pdGFsaWMtd2ViLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tdGhpbml0YWxpYy13ZWIudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by10aGluaXRhbGljLXdlYi5zdmcjcm9ib3RvdGhpbl9pdGFsaWNcIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnYmViYXNfbmV1ZWJvbGQnO1xuICBzcmM6IHVybChcIi93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvYmViYXNuZXVlLWJvbGQtd2ViLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL2JlYmFzbmV1ZS1ib2xkLXdlYi5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL2JlYmFzbmV1ZS1ib2xkLXdlYi53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9iZWJhc25ldWUtYm9sZC13ZWIud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL2JlYmFzbmV1ZS1ib2xkLXdlYi50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvYmViYXNuZXVlLWJvbGQtd2ViLnN2ZyNiZWJhc19uZXVlYm9sZFwiKSBmb3JtYXQoXCJzdmdcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdiZWJhc19uZXVlcmVndWxhcic7XG4gIHNyYzogdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9iZWJhc25ldWUtcmVndWxhci13ZWIuZW90XCIpO1xuICBzcmM6IHVybChcIi93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvYmViYXNuZXVlLXJlZ3VsYXItd2ViLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvYmViYXNuZXVlLXJlZ3VsYXItd2ViLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL2JlYmFzbmV1ZS1yZWd1bGFyLXdlYi53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvYmViYXNuZXVlLXJlZ3VsYXItd2ViLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9iZWJhc25ldWUtcmVndWxhci13ZWIuc3ZnI2JlYmFzX25ldWVyZWd1bGFyXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ2JlYmFzX25ldWVib29rJztcbiAgc3JjOiB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL2JlYmFzbmV1ZS1ib29rLXdlYi5lb3RcIik7XG4gIHNyYzogdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9iZWJhc25ldWUtYm9vay13ZWIuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9iZWJhc25ldWUtYm9vay13ZWIud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvYmViYXNuZXVlLWJvb2std2ViLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9iZWJhc25ldWUtYm9vay13ZWIudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL2JlYmFzbmV1ZS1ib29rLXdlYi5zdmcjYmViYXNfbmV1ZWJvb2tcIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnYmViYXNfbmV1ZWxpZ2h0JztcbiAgc3JjOiB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL2JlYmFzbmV1ZS1saWdodC13ZWIuZW90XCIpO1xuICBzcmM6IHVybChcIi93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvYmViYXNuZXVlLWxpZ2h0LXdlYi5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL2JlYmFzbmV1ZS1saWdodC13ZWIud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvYmViYXNuZXVlLWxpZ2h0LXdlYi53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvYmViYXNuZXVlLWxpZ2h0LXdlYi50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcImJlYmFzbmV1ZS1saWdodC13ZWIuc3ZnI2JlYmFzX25ldWVsaWdodFwiKSBmb3JtYXQoXCJzdmdcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdiZWJhc19uZXVldGhpbic7XG4gIHNyYzogdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9iZWJhc25ldWUtdGhpbi13ZWIuZW90XCIpO1xuICBzcmM6IHVybChcIi93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvYmViYXNuZXVlLXRoaW4td2ViLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvYmViYXNuZXVlLXRoaW4td2ViLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL2JlYmFzbmV1ZS10aGluLXdlYi53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvYmViYXNuZXVlLXRoaW4td2ViLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9iZWJhc25ldWUtdGhpbi13ZWIuc3ZnI2JlYmFzX25ldWV0aGluXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tb2JpbGUtbWVudSxcbiAgLnNpdGUtdGl0bGUtYmFyIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5kZXNrdG9wLW1lbnUsXG4gIC5zaXRlLW5hdmlnYXRpb24gLnRvcC1iYXItbGVmdCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLnNpdGUtZGVza3RvcC10aXRsZSBhIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLnBvc3QtbmF2aWdhdGlvbjo6YmVmb3JlLCAucG9zdC1uYXZpZ2F0aW9uOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiAnICc7XG4gIGZsZXgtYmFzaXM6IDA7XG4gIG9yZGVyOiAxOyB9XG5cbi5wb3N0LW5hdmlnYXRpb246OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7IH1cblxuLm5hdi1wcmV2aW91cyB7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi5uYXYtbmV4dCB7XG4gIGZsb2F0OiByaWdodDsgfVxuXG4ubWFpbi1jb250YWluZXIge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgbWFyZ2luOiAwIGF1dG87IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubWFpbi1jb250YWluZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuXG4ubWFpbi1ncmlkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgbWFyZ2luLXRvcDogMXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5tYWluLWdyaWQge1xuICAgICAgbWFyZ2luLXRvcDogM3JlbTsgfSB9XG4gIC5tYWluLWdyaWQuc2lkZWJhci1sZWZ0IC5tYWluLWNvbnRlbnQge1xuICAgIG9yZGVyOiAxOyB9XG4gIC5tYWluLWdyaWQuc2lkZWJhci1sZWZ0IC5zaWRlYmFyIHtcbiAgICBvcmRlcjogMjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5tYWluLWdyaWQuc2lkZWJhci1sZWZ0IC5tYWluLWNvbnRlbnQge1xuICAgICAgb3JkZXI6IDI7IH1cbiAgICAubWFpbi1ncmlkLnNpZGViYXItbGVmdCAuc2lkZWJhciB7XG4gICAgICBvcmRlcjogMTsgfSB9XG4gIC5tYWluLWdyaWQgLm1haW4tY29udGVudC1mdWxsLXdpZHRoIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07IH1cbiAgLm1haW4tZ3JpZCAubWFpbi1jb250ZW50IHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLm1haW4tZ3JpZCAubWFpbi1jb250ZW50IHtcbiAgICAgICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMS44NzVyZW0pO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5tYWluLWdyaWQgLnNpZGViYXIge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubWFpbi1ncmlkIC5zaWRlYmFyIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTsgfSB9XG5cbi5mb290ZXItY29udGFpbmVyIHtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gIG1heC13aWR0aDogNzVyZW07XG4gIG1hcmdpbjogMCBhdXRvO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2NhY2FjYTtcbiAgbWFyZ2luLXRvcDogMy43NXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mb290ZXItY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cblxuLmZvb3Rlci1ncmlkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgcGFkZGluZzogMS44NzVyZW0gMDsgfVxuICAuZm9vdGVyLWdyaWQgc2VjdGlvbiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgbWluLWhlaWdodDogMHB4O1xuICAgIG1pbi13aWR0aDogMHB4O1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZm9vdGVyLWdyaWQgc2VjdGlvbiB7XG4gICAgICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5mb290ZXItZ3JpZCB1bCB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwOyB9XG5cbmJvZHkjdGlueW1jZSB7XG4gIGhlaWdodDogYXV0bztcbiAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgcGFkZGluZzogMS4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaXRlcy1idXR0b24ge1xuICBiYWNrZ3JvdW5kOiAjODc3MTQ4O1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBib3gtc2hhZG93OiAwIC0ycHggMCByZ2JhKDAsIDAsIDAsIDAuMikgaW5zZXQ7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYm9yZGVyOiBub25lOyB9XG5cbi5jYXJkcy1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwOyB9XG4gIC5jYXJkcy1jb250YWluZXIgLmNhcmQge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIC5jYXJkcy1jb250YWluZXIgLmNhcmQgLmNhcmQtY29udGVudCB7XG4gICAgICBwYWRkaW5nOiAxcmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5jYXJkcy1jb250YWluZXIgLmNhcmQge1xuICAgICAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAwLjdyZW0pO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuMzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjM1cmVtOyB9IH1cblxuLmZlYXR1cmVkLWhlcm8ge1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGhlaWdodDogMTguNzVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZmVhdHVyZWQtaGVybyB7XG4gICAgICBoZWlnaHQ6IDI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5mZWF0dXJlZC1oZXJvIHtcbiAgICAgIGhlaWdodDogMjVyZW07IH0gfVxuXG4uZG90dGVkLCAuc2VjdGlvbi1kaXZpZGVyIGhyIHtcbiAgYm9yZGVyLXN0eWxlOiBkYXNoZWQ7XG4gIG1hcmdpbjogMnJlbSAwOyB9XG5cbltkYXRhLXdoYXRpbnB1dD1cIm1vdXNlXCJdIGE6Zm9jdXMsIGJ1dHRvbjpmb2N1cyBbZGF0YS13aGF0aW5wdXQ9XCJ0b3VjaFwiXSBhOmZvY3VzLCBidXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiBub25lOyB9XG5cbi5mcm9udC1oZXJvIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2RlbW8vaGVyby1iZy1mb3VuZGF0aW9uLTYtc21hbGwuc3ZnXCIpIGJvdHRvbSBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbTtcbiAgcGFkZGluZzogNC4wNjI1cmVtIDA7XG4gIG1hcmdpbjogMCAwIDJyZW07XG4gIGhlaWdodDogYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5mcm9udC1oZXJvIC5tYXJrZXRpbmcge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgbWF4LXdpZHRoOiA1NXJlbTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZyb250LWhlcm8gLm1hcmtldGluZyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mcm9udC1oZXJvIHtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9kZW1vL2hlcm8tYmctZm91bmRhdGlvbi02LWxhcmdlLnN2Z1wiKSBib3R0b20gY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgIGhlaWdodDogNDIuODEyNXJlbTtcbiAgICAgIG1hcmdpbjogMCAwIDQuNXJlbTsgfSB9XG4gIC5mcm9udC1oZXJvIC53YXRjaCB7XG4gICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZyb250LWhlcm8gLndhdGNoIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5mcm9udC1oZXJvIC53YXRjaCBhIHtcbiAgICAgIGNvbG9yOiAjQjRDOUQxO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMS4yNXJlbTsgfVxuICAgIC5mcm9udC1oZXJvIC53YXRjaCBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLmZyb250LWhlcm8gLndhdGNoICNzdGFyZ2F6ZXJzIDpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcXGYwOWJcIjtcbiAgICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gICAgICBjb2xvcjogI0I0QzlEMTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC41cmVtOyB9XG4gICAgLmZyb250LWhlcm8gLndhdGNoICN0d2l0dGVyIDpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcXGYwOTlcIjtcbiAgICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gICAgICBjb2xvcjogI0I0QzlEMTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC41cmVtOyB9XG4gIC5mcm9udC1oZXJvIC50YWdsaW5lIHtcbiAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZnJvbnQtaGVybyAudGFnbGluZSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctdG9wOiA2cmVtOyB9IH1cbiAgLmZyb250LWhlcm8gaDEge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zaXplOiAyLjJyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZyb250LWhlcm8gaDEge1xuICAgICAgICBmb250LXNpemU6IDIuODc1cmVtOyB9IH1cbiAgLmZyb250LWhlcm8gaDQge1xuICAgIGNvbG9yOiAjZmVmZWZlO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZm9udC1zaXplOiAxLjMxMjVyZW07IH1cbiAgLmZyb250LWhlcm8gLmRvd25sb2FkIHtcbiAgICBtYXJnaW4tdG9wOiAxLjI1cmVtOyB9XG5cbi5pbnRybyB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBtYXgtd2lkdGg6IDc1cmVtO1xuICBtYXJnaW46IDAgYXV0bztcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5pbnRybyB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5pbnRybyAuZnAtaW50cm8ge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuaW50cm8gLmZwLWludHJvIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gMS44NzVyZW0pO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoOC4zMzMzMyUgKyAwLjYyNXJlbSk7IH1cbiAgICAgICAgLmludHJvIC5mcC1pbnRybyBoMiB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cbiAgICAgICAgLmludHJvIC5mcC1pbnRybyBoNCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICAgIGNvbG9yOiAjNzc3O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH0gfVxuXG4uc2VjdGlvbi1kaXZpZGVyIHtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gIG1heC13aWR0aDogNzVyZW07XG4gIG1hcmdpbjogMCBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnNlY3Rpb24tZGl2aWRlciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5zZWN0aW9uLWRpdmlkZXIgaHIge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbi5iZW5lZml0cyB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBtYXgtd2lkdGg6IDc1cmVtO1xuICBtYXJnaW46IDAgYXV0bztcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmJlbmVmaXRzIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLmJlbmVmaXRzIGhlYWRlciB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pO1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgLmJlbmVmaXRzIGhlYWRlciBoMiB7XG4gICAgICBmb250LXdlaWdodDogMzAwOyB9XG4gICAgLmJlbmVmaXRzIGhlYWRlciBoNCB7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgIGNvbG9yOiAjNzc3OyB9XG4gIC5iZW5lZml0cyAuc2VtYW50aWMsXG4gIC5iZW5lZml0cyAucmVzcG9uc2l2ZSxcbiAgLmJlbmVmaXRzIC5jdXN0b21pemFibGUsXG4gIC5iZW5lZml0cyAucHJvZmVzc2lvbmFsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmJlbmVmaXRzIC5zZW1hbnRpYyxcbiAgICAgIC5iZW5lZml0cyAucmVzcG9uc2l2ZSxcbiAgICAgIC5iZW5lZml0cyAuY3VzdG9taXphYmxlLFxuICAgICAgLmJlbmVmaXRzIC5wcm9mZXNzaW9uYWwge1xuICAgICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAuYmVuZWZpdHMgLnNlbWFudGljIGltZyxcbiAgICAuYmVuZWZpdHMgLnJlc3BvbnNpdmUgaW1nLFxuICAgIC5iZW5lZml0cyAuY3VzdG9taXphYmxlIGltZyxcbiAgICAuYmVuZWZpdHMgLnByb2Zlc3Npb25hbCBpbWcge1xuICAgICAgcGFkZGluZzogMS4yNXJlbTtcbiAgICAgIG1hcmdpbjogMXJlbSBhdXRvIDAgYXV0bzsgfVxuICAgIC5iZW5lZml0cyAuc2VtYW50aWMgaDMsXG4gICAgLmJlbmVmaXRzIC5yZXNwb25zaXZlIGgzLFxuICAgIC5iZW5lZml0cyAuY3VzdG9taXphYmxlIGgzLFxuICAgIC5iZW5lZml0cyAucHJvZmVzc2lvbmFsIGgzIHtcbiAgICAgIGNvbG9yOiAjMGEwYTBhO1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGZvbnQtc2l6ZTogMS43NXJlbTsgfVxuICAgIC5iZW5lZml0cyAuc2VtYW50aWMgcCxcbiAgICAuYmVuZWZpdHMgLnJlc3BvbnNpdmUgcCxcbiAgICAuYmVuZWZpdHMgLmN1c3RvbWl6YWJsZSBwLFxuICAgIC5iZW5lZml0cyAucHJvZmVzc2lvbmFsIHAge1xuICAgICAgZm9udC1zaXplOiAwLjkzNzVyZW07IH1cbiAgLmJlbmVmaXRzIC53aHktZm91bmRhdGlvbiB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pO1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi10b3A6IDRyZW07IH1cblxuLmtpdGNoZW4tc2luay1oZWFkZXIge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfVxuXG4ua2l0Y2hlbi1zaW5rLWNvbXBvbmVudHMge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfVxuICAua2l0Y2hlbi1zaW5rLWNvbXBvbmVudHMgaHIge1xuICAgIG1hcmdpbjogM3JlbSAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmtpdGNoZW4tc2luay1jb21wb25lbnRzIHtcbiAgICAgIHdpZHRoOiBjYWxjKDc1JSAtIDEuODc1cmVtKTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG5cbi5raXRjaGVuLXNpbmstbmF2IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5raXRjaGVuLXNpbmstbmF2IHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICAua2l0Y2hlbi1zaW5rLW5hdiAuZG9jcy1zdWItbWVudSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTsgfVxuICAgICAgLmtpdGNoZW4tc2luay1uYXYgLmRvY3MtbWVudS10aXRsZSB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgICAgY29sb3I6ICM4YThhOGE7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjlyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjYWNhY2E7XG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgIHBhZGRpbmctdG9wOiAxLjVyZW07IH1cbiAgICAgIC5raXRjaGVuLXNpbmstbmF2IC5kb2NzLXRvYyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDRyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07IH1cbiAgICAgIC5raXRjaGVuLXNpbmstbmF2IC5kb2NzLXRvYyAuYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzIxOTllODtcbiAgICAgICAgY29sb3I6IHdoaXRlOyB9XG4gICAgICAua2l0Y2hlbi1zaW5rLW5hdiAuZG9jcy10b2MgLmRvY3Mtc3ViLW1lbnU6Zmlyc3QtY2hpbGQgLmRvY3MtbWVudS10aXRsZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwOyB9IH1cblxuLmtpdGNoZW4tc2luay1ncmlkIC5ncmlkLXgge1xuICBiYWNrZ3JvdW5kOiAjZDZlY2ZhO1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAycmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cbiAgLmtpdGNoZW4tc2luay1ncmlkIC5ncmlkLXggLmNlbGwsIC5raXRjaGVuLXNpbmstZ3JpZCAuZ3JpZC14IDpudGgtY2hpbGQob2RkKSB7XG4gICAgYmFja2dyb3VuZDogIzdiYzFlZjtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAua2l0Y2hlbi1zaW5rLWdyaWQgLmdyaWQteCAuY2VsbDpudGgtY2hpbGQoZXZlbikge1xuICAgIGJhY2tncm91bmQ6ICMxNzc5YmE7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cbiIsIi8vICBGb3VuZGF0aW9uUHJlc3Mgc2V0dGluZ3MuXG4vLyAgQmFzZWQgb24gRm91bmRhdGlvbiBmb3IgU2l0ZXMgdjYuNC4zXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vXG4vLyAgVGFibGUgb2YgQ29udGVudHM6XG4vL1xuLy8gICAxLiBHbG9iYWxcbi8vICAgMi4gQnJlYWtwb2ludHNcbi8vICAgMy4gVGhlIEdyaWRcbi8vICAgNC4gQmFzZSBUeXBvZ3JhcGh5XG4vLyAgIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xuLy8gICA2LiBBYmlkZVxuLy8gICA3LiBBY2NvcmRpb25cbi8vICAgOC4gQWNjb3JkaW9uIE1lbnVcbi8vICAgOS4gQmFkZ2Vcbi8vICAxMC4gQnJlYWRjcnVtYnNcbi8vICAxMS4gQnV0dG9uXG4vLyAgMTIuIEJ1dHRvbiBHcm91cFxuLy8gIDEzLiBDYWxsb3V0XG4vLyAgMTQuIENhcmRcbi8vICAxNS4gQ2xvc2UgQnV0dG9uXG4vLyAgMTYuIERyaWxsZG93blxuLy8gIDE3LiBEcm9wZG93blxuLy8gIDE4LiBEcm9wZG93biBNZW51XG4vLyAgMTkuIEZsZXhib3ggVXRpbGl0aWVzXG4vLyAgMjAuIEZvcm1zXG4vLyAgMjEuIExhYmVsXG4vLyAgMjIuIE1lZGlhIE9iamVjdFxuLy8gIDIzLiBNZW51XG4vLyAgMjQuIE1ldGVyXG4vLyAgMjUuIE9mZi1jYW52YXNcbi8vICAyNi4gT3JiaXRcbi8vICAyNy4gUGFnaW5hdGlvblxuLy8gIDI4LiBQcm9ncmVzcyBCYXJcbi8vICAyOS4gUHJvdG90eXBlIEFycm93XG4vLyAgMzAuIFByb3RvdHlwZSBCb3JkZXItQm94XG4vLyAgMzEuIFByb3RvdHlwZSBCb3JkZXItTm9uZVxuLy8gIDMyLiBQcm90b3R5cGUgQm9yZGVyZWRcbi8vICAzMy4gUHJvdG90eXBlIERpc3BsYXlcbi8vICAzNC4gUHJvdG90eXBlIEZvbnQtU3R5bGluZ1xuLy8gIDM1LiBQcm90b3R5cGUgTGlzdC1TdHlsZS1UeXBlXG4vLyAgMzYuIFByb3RvdHlwZSBPdmVyZmxvd1xuLy8gIDM3LiBQcm90b3R5cGUgUG9zaXRpb25cbi8vICAzOC4gUHJvdG90eXBlIFJvdW5kZWRcbi8vICAzOS4gUHJvdG90eXBlIFNlcGFyYXRvclxuLy8gIDQwLiBQcm90b3R5cGUgU2hhZG93XG4vLyAgNDEuIFByb3RvdHlwZSBTaXppbmdcbi8vICA0Mi4gUHJvdG90eXBlIFNwYWNpbmdcbi8vICA0My4gUHJvdG90eXBlIFRleHQtRGVjb3JhdGlvblxuLy8gIDQ0LiBQcm90b3R5cGUgVGV4dC1UcmFuc2Zvcm1hdGlvblxuLy8gIDQ1LiBQcm90b3R5cGUgVGV4dC1VdGlsaXRpZXNcbi8vICA0Ni4gUmVzcG9uc2l2ZSBFbWJlZFxuLy8gIDQ3LiBSZXZlYWxcbi8vICA0OC4gU2xpZGVyXG4vLyAgNDkuIFN3aXRjaFxuLy8gIDUwLiBUYWJsZVxuLy8gIDUxLiBUYWJzXG4vLyAgNTIuIFRodW1ibmFpbFxuLy8gIDUzLiBUaXRsZSBCYXJcbi8vICA1NC4gVG9vbHRpcFxuLy8gIDU1LiBUb3AgQmFyXG4vLyAgNTYuIFh5IEdyaWRcblxuQGltcG9ydCAndXRpbC91dGlsJztcbkBpbXBvcnQgJ2dsb2JhbC9jb2xvcnMnO1xuXG4vLyAxLiBHbG9iYWxcbi8vIC0tLS0tLS0tLVxuXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJTtcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDEyMDApO1xuJGdsb2JhbC1saW5laGVpZ2h0OiAxLjU7XG4kZm91bmRhdGlvbi1wYWxldHRlOiAoXG4gIHByaW1hcnk6ICM4NzcxNDgsXG4gIHNlY29uZGFyeTogIzc2NzY3NixcbiAgc3VjY2VzczogIzNhZGI3NixcbiAgd2FybmluZzogI2ZmYWUwMCxcbiAgYWxlcnQ6ICNjYzRiMzcsXG4pO1xuJGxpZ2h0LWdyYXk6ICNlNmU2ZTY7XG4kbWVkaXVtLWdyYXk6ICNjYWNhY2E7XG4kZGFyay1ncmF5OiAjOGE4YThhO1xuJGJsYWNrOiAjMGEwYTBhO1xuJHdoaXRlOiAjZmVmZWZlO1xuJGJvZHktYmFja2dyb3VuZDogJHdoaXRlO1xuJGJvZHktZm9udC1jb2xvcjogJGJsYWNrO1xuLyokYm9keS1mb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFwiUm9ib3RvXCIsIFwiT3h5Z2VuXCIsIFwiVWJ1bnR1XCIsIFwiQ2FudGFyZWxsXCIsIFwiRmlyYSBTYW5zXCIsIFwiRHJvaWQgU2Fuc1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIHNhbnMtc2VyaWY7Ki9cbiRib2R5LWZvbnQtZmFtaWx5OiAncm9ib3RvcmVndWxhcicsJ0hlbHZldGljYSBOZXVlJywgc2Fucy1zZXJpZjtcbiRib2R5LWFudGlhbGlhc2VkOiB0cnVlO1xuJGdsb2JhbC1tYXJnaW46IDFyZW07XG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW07XG4kZ2xvYmFsLXBvc2l0aW9uOiAxcmVtO1xuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWw7XG4kZ2xvYmFsLXdlaWdodC1ib2xkOiBib2xkO1xuJGdsb2JhbC1yYWRpdXM6IDA7XG4kZ2xvYmFsLW1lbnUtcGFkZGluZzogMC43cmVtIDFyZW07XG4kZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjogMXJlbTtcbiRnbG9iYWwtdGV4dC1kaXJlY3Rpb246IGx0cjtcbiRnbG9iYWwtZmxleGJveDogdHJ1ZTtcbiRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzOiBmYWxzZTtcbiRnbG9iYWwtYnV0dG9uLWN1cnNvcjogYXV0bztcbiRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2U6IDA7XG4kcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHM6IHRydWU7XG5cbkBpbmNsdWRlIGFkZC1mb3VuZGF0aW9uLWNvbG9ycztcblxuLy8gMi4gQnJlYWtwb2ludHNcbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRicmVha3BvaW50czogKFxuICBzbWFsbDogMCxcbiAgbWVkaXVtOiA2NDBweCxcbiAgbGFyZ2U6IDEwMjRweCxcbiAgeGxhcmdlOiAxMjAwcHgsXG4gIHh4bGFyZ2U6IDE0NDBweCxcbik7XG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2U7XG4kYnJlYWtwb2ludC1jbGFzc2VzOiAoc21hbGwgbWVkaXVtIGxhcmdlIHhsYXJnZSB4eGxhcmdlKTtcblxuLy8gMy4gVGhlIEdyaWRcbi8vIC0tLS0tLS0tLS0tXG5cbiRncmlkLXJvdy13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRncmlkLWNvbHVtbi1jb3VudDogMTI7XG4kZ3JpZC1jb2x1bW4tZ3V0dGVyOiAoXG4gIHNtYWxsOiAyMHB4LFxuICBtZWRpdW06IDMwcHgsXG4pO1xuJGdyaWQtY29sdW1uLWFsaWduLWVkZ2U6IHRydWU7XG4kZ3JpZC1jb2x1bW4tYWxpYXM6ICdjb2x1bW5zJztcbiRibG9jay1ncmlkLW1heDogODtcblxuLy8gNC4gQmFzZSBUeXBvZ3JhcGh5XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS1cblxuJGhlYWRlci1mb250LWZhbWlseTogJ2JlYmFzX25ldWVib2xkJywgc2Fucy1zZXJpZjtcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsO1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4kaGVhZGVyLWNvbG9yOiBpbmhlcml0O1xuJGhlYWRlci1saW5laGVpZ2h0OiAxLjQ7XG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiRoZWFkZXItc3R5bGVzOiAoXG4gIHNtYWxsOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAyNCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAxOSksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxOCksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAxNyksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4gIG1lZGl1bTogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogNDgpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogNDApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMzEpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMjUpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuKTtcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiRzbWFsbC1mb250LXNpemU6IDgwJTtcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5O1xuJHBhcmFncmFwaC1saW5laGVpZ2h0OiAxLjY7XG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IDFyZW07XG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4kY29kZS1jb2xvcjogJGJsYWNrO1xuJGNvZGUtZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4kY29kZS1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGNvZGUtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kY29kZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kY29kZS1wYWRkaW5nOiByZW0tY2FsYygyIDUgMSk7XG4kYW5jaG9yLWNvbG9yOiAkb3UtZ3JheTtcbi8qJGFuY2hvci1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGFuY2hvci1jb2xvciwgJGxpZ2h0bmVzczogLTE0JSk7Ki9cbiRhbmNob3ItY29sb3ItaG92ZXI6ICRvdS1nb2xkO1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmU7XG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZTtcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaHItbWFyZ2luOiByZW0tY2FsYygyMCkgYXV0bztcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW07XG4kZGVmbmxpc3QtdGVybS13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4kZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tOiAwLjNyZW07XG4kYmxvY2txdW90ZS1jb2xvcjogJGRhcmstZ3JheTtcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSk7XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5O1xuJGNpdGUtcHNldWRvLWNvbnRlbnQ6ICdcXDIwMTQgXFwwMDIwJztcbiRrZXlzdHJva2UtZm9udDogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiRrZXlzdHJva2UtY29sb3I6ICRibGFjaztcbiRrZXlzdHJva2UtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4ka2V5c3Ryb2tlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNCAwKTtcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2s7XG5cbi8vIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1O1xuJGxlYWQtbGluZWhlaWdodDogMS42O1xuJHN1YmhlYWRlci1saW5laGVpZ2h0OiAxLjQ7XG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5O1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJHN1YmhlYWRlci1tYXJnaW4tdG9wOiAwLjJyZW07XG4kc3ViaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiRzdGF0LWZvbnQtc2l6ZTogMi41cmVtO1xuXG4vLyA2LiBBYmlkZVxuLy8gLS0tLS0tLS1cblxuJGFiaWRlLWlucHV0czogdHJ1ZTtcbiRhYmlkZS1sYWJlbHM6IHRydWU7XG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpO1xuJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRpbnB1dC1lcnJvci1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiRpbnB1dC1lcnJvci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblxuLy8gNy4gQWNjb3JkaW9uXG4vLyAtLS0tLS0tLS0tLS1cblxuJGFjY29yZGlvbi1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kYWNjb3JkaW9uLXBsdXNtaW51czogdHJ1ZTtcbiRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kYWNjb3JkaW9uLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xuJGFjY29yZGlvbi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMXJlbTtcbiRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4kYWNjb3JkaW9uLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogMXJlbTtcblxuLy8gOC4gQWNjb3JkaW9uIE1lbnVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG5cbiRhY2NvcmRpb25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuJGFjY29yZGlvbm1lbnUtbmVzdGVkLW1hcmdpbjogJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW47XG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXBhZGRpbmc6ICRhY2NvcmRpb25tZW51LXBhZGRpbmc7XG4kYWNjb3JkaW9ubWVudS1hcnJvd3M6IHRydWU7XG4kYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvcjogJG91LWdvbGQ7XG4kYWNjb3JkaW9ubWVudS1pdGVtLWJhY2tncm91bmQ6IG51bGw7XG4kYWNjb3JkaW9ubWVudS1ib3JkZXI6IG51bGw7XG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1iYWNrZ3JvdW5kOiBudWxsO1xuJGFjY29yZGlvbi1zdWJtZW51LXRvZ2dsZS1ib3JkZXI6ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoOiA0MHB4O1xuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtaGVpZ2h0OiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aDtcbiRhY2NvcmRpb25tZW51LWFycm93LXNpemU6IDZweDtcblxuLy8gOS4gQmFkZ2Vcbi8vIC0tLS0tLS0tXG5cbiRiYWRnZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRiYWRnZS1jb2xvcjogJHdoaXRlO1xuJGJhZGdlLWNvbG9yLWFsdDogJGJsYWNrO1xuJGJhZGdlLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kYmFkZ2UtcGFkZGluZzogMC4zZW07XG4kYmFkZ2UtbWlud2lkdGg6IDIuMWVtO1xuJGJhZGdlLWZvbnQtc2l6ZTogMC42cmVtO1xuXG4vLyAxMC4gQnJlYWRjcnVtYnNcbi8vIC0tLS0tLS0tLS0tLS0tLVxuXG4kYnJlYWRjcnVtYnMtbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMDtcbiRicmVhZGNydW1icy1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItY3VycmVudDogJGJsYWNrO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcbiRicmVhZGNydW1icy1pdGVtLW1hcmdpbjogMC43NXJlbTtcbiRicmVhZGNydW1icy1pdGVtLXVwcGVyY2FzZTogdHJ1ZTtcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvcjogdHJ1ZTtcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtOiAnLyc7XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbS1ydGw6ICdcXFxcJztcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1jb2xvcjogJG1lZGl1bS1ncmF5O1xuXG4vLyAxMS4gQnV0dG9uXG4vLyAtLS0tLS0tLS0tXG5cbiRidXR0b24tZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4kYnV0dG9uLXBhZGRpbmc6IDAuODVlbSAxZW07XG4kYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDA7XG4kYnV0dG9uLWZpbGw6IHNvbGlkO1xuJGJ1dHRvbi1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbi8qJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpOyovXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6ICRvdWFnLXllbGxvdztcbiRidXR0b24tY29sb3I6ICR3aGl0ZTtcbiRidXR0b24tY29sb3ItYWx0OiAkYmxhY2s7XG4kYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGg6IDFweDtcbiRidXR0b24tc2l6ZXM6IChcbiAgdGlueTogMC42cmVtLFxuICBzbWFsbDogMC43NXJlbSxcbiAgZGVmYXVsdDogMC45cmVtLFxuICBsYXJnZTogMS4yNXJlbSxcbik7XG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAtMjAlO1xuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlO1xuJGJ1dHRvbi10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcblxuLy8gMTIuIEJ1dHRvbiBHcm91cFxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kYnV0dG9uZ3JvdXAtbWFyZ2luOiAxcmVtO1xuJGJ1dHRvbmdyb3VwLXNwYWNpbmc6IDFweDtcbiRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcjogJy5idXR0b24nO1xuJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXg6IDY7XG4kYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2g6IHRydWU7XG5cbi8vIDEzLiBDYWxsb3V0XG4vLyAtLS0tLS0tLS0tLVxuXG4kY2FsbG91dC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kY2FsbG91dC1iYWNrZ3JvdW5kLWZhZGU6IDg1JTtcbiRjYWxsb3V0LWJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGJsYWNrLCAwLjI1KTtcbiRjYWxsb3V0LW1hcmdpbjogMCAwIDFyZW0gMDtcbiRjYWxsb3V0LXBhZGRpbmc6IDFyZW07XG4kY2FsbG91dC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJGNhbGxvdXQtZm9udC1jb2xvci1hbHQ6ICRib2R5LWJhY2tncm91bmQ7XG4kY2FsbG91dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGNhbGxvdXQtbGluay10aW50OiAzMCU7XG5cbi8vIDE0LiBDYXJkXG4vLyAtLS0tLS0tLVxuXG4kY2FyZC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kY2FyZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJGNhcmQtZGl2aWRlci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRjYXJkLWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuJGNhcmQtc2hhZG93OiBub25lO1xuJGNhcmQtYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kY2FyZC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kY2FyZC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcblxuLy8gMTUuIENsb3NlIEJ1dHRvblxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kY2xvc2VidXR0b24tcG9zaXRpb246IHJpZ2h0IHRvcDtcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbDogKFxuICBzbWFsbDogMC42NnJlbSxcbiAgbWVkaXVtOiAxcmVtLFxuKTtcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWw6IChcbiAgc21hbGw6IDAuMzNlbSxcbiAgbWVkaXVtOiAwLjVyZW0sXG4pO1xuJGNsb3NlYnV0dG9uLXNpemU6IChcbiAgc21hbGw6IDEuNWVtLFxuICBtZWRpdW06IDJlbSxcbik7XG4kY2xvc2VidXR0b24tbGluZWhlaWdodDogMTtcbiRjbG9zZWJ1dHRvbi1jb2xvcjogJGRhcmstZ3JheTtcbiRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjogJGJsYWNrO1xuXG4vLyAxNi4gRHJpbGxkb3duXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiRkcmlsbGRvd24tdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhcjtcbiRkcmlsbGRvd24tYXJyb3dzOiB0cnVlO1xuJGRyaWxsZG93bi1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcbiRkcmlsbGRvd24tbmVzdGVkLW1hcmdpbjogMDtcbiRkcmlsbGRvd24tYmFja2dyb3VuZDogJHdoaXRlO1xuJGRyaWxsZG93bi1zdWJtZW51LXBhZGRpbmc6ICRkcmlsbGRvd24tcGFkZGluZztcbiRkcmlsbGRvd24tc3VibWVudS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kZHJpbGxkb3duLWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRkcmlsbGRvd24tYXJyb3ctc2l6ZTogNnB4O1xuXG4vLyAxNy4gRHJvcGRvd25cbi8vIC0tLS0tLS0tLS0tLVxuXG4kZHJvcGRvd24tcGFkZGluZzogMXJlbTtcbiRkcm9wZG93bi1iYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuJGRyb3Bkb3duLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRkcm9wZG93bi1mb250LXNpemU6IDFyZW07XG4kZHJvcGRvd24td2lkdGg6IDMwMHB4O1xuJGRyb3Bkb3duLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kZHJvcGRvd24tc2l6ZXM6IChcbiAgdGlueTogMTAwcHgsXG4gIHNtYWxsOiAyMDBweCxcbiAgbGFyZ2U6IDQwMHB4LFxuKTtcblxuLy8gMTguIERyb3Bkb3duIE1lbnVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG5cbiRkcm9wZG93bm1lbnUtYXJyb3dzOiB0cnVlO1xuJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvcjogJGFuY2hvci1jb2xvcjtcbiRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTogNnB4O1xuJGRyb3Bkb3dubWVudS1hcnJvdy1wYWRkaW5nOiAxLjVyZW07XG4kZHJvcGRvd25tZW51LW1pbi13aWR0aDogMjAwcHg7XG4kZHJvcGRvd25tZW51LWJhY2tncm91bmQ6IG51bGw7XG4kZHJvcGRvd25tZW51LXN1Ym1lbnUtYmFja2dyb3VuZDogJHdoaXRlO1xuJGRyb3Bkb3dubWVudS1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcbiRkcm9wZG93bm1lbnUtbmVzdGVkLW1hcmdpbjogMDtcbiRkcm9wZG93bm1lbnUtc3VibWVudS1wYWRkaW5nOiAkZHJvcGRvd25tZW51LXBhZGRpbmc7XG4kZHJvcGRvd25tZW51LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRkcm9wZG93bi1tZW51LWl0ZW0tY29sb3ItYWN0aXZlOiBnZXQtY29sb3IocHJpbWFyeSk7XG4kZHJvcGRvd24tbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiB0cmFuc3BhcmVudDtcblxuLy8gMTkuIEZsZXhib3ggVXRpbGl0aWVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGZsZXgtc291cmNlLW9yZGVyaW5nLWNvdW50OiA2O1xuJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50czogdHJ1ZTtcblxuLy8gMjAuIEZvcm1zXG4vLyAtLS0tLS0tLS1cblxuJGZpZWxkc2V0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRmaWVsZHNldC1wYWRkaW5nOiByZW0tY2FsYygyMCk7XG4kZmllbGRzZXQtbWFyZ2luOiByZW0tY2FsYygxOCAwKTtcbiRsZWdlbmQtcGFkZGluZzogcmVtLWNhbGMoMCAzKTtcbiRmb3JtLXNwYWNpbmc6IHJlbS1jYWxjKDE2KTtcbiRoZWxwdGV4dC1jb2xvcjogJGJsYWNrO1xuJGhlbHB0ZXh0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuJGhlbHB0ZXh0LWZvbnQtc3R5bGU6IGl0YWxpYztcbiRpbnB1dC1wcmVmaXgtY29sb3I6ICRibGFjaztcbiRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kaW5wdXQtcHJlZml4LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRpbnB1dC1wcmVmaXgtcGFkZGluZzogMXJlbTtcbiRmb3JtLWxhYmVsLWNvbG9yOiAkYmxhY2s7XG4kZm9ybS1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kZm9ybS1sYWJlbC1saW5lLWhlaWdodDogMS44O1xuJHNlbGVjdC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kc2VsZWN0LXRyaWFuZ2xlLWNvbG9yOiAkZGFyay1ncmF5O1xuJHNlbGVjdC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGlucHV0LWNvbG9yOiAkYmxhY2s7XG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICRtZWRpdW0tZ3JheTtcbiRpbnB1dC1mb250LWZhbWlseTogaW5oZXJpdDtcbiRpbnB1dC1mb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiRpbnB1dC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGlucHV0LWxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG4kaW5wdXQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGlucHV0LWJhY2tncm91bmQtZm9jdXM6ICR3aGl0ZTtcbiRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkOiAkbGlnaHQtZ3JheTtcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAxcHggc29saWQgJGRhcmstZ3JheTtcbiRpbnB1dC1wYWRkaW5nOiAkZm9ybS1zcGFjaW5nIC8gMjtcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgMC4xKTtcbiRpbnB1dC1zaGFkb3ctZm9jdXM6IDAgMCA1cHggJG1lZGl1bS1ncmF5O1xuJGlucHV0LWN1cnNvci1kaXNhYmxlZDogbm90LWFsbG93ZWQ7XG4kaW5wdXQtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4kaW5wdXQtbnVtYmVyLXNwaW5uZXJzOiB0cnVlO1xuJGlucHV0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kZm9ybS1idXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMjEuIExhYmVsXG4vLyAtLS0tLS0tLS1cblxuJGxhYmVsLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJGxhYmVsLWNvbG9yOiAkd2hpdGU7XG4kbGFiZWwtY29sb3ItYWx0OiAkYmxhY2s7XG4kbGFiZWwtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcbiRsYWJlbC1mb250LXNpemU6IDAuOHJlbTtcbiRsYWJlbC1wYWRkaW5nOiAwLjMzMzMzcmVtIDAuNXJlbTtcbiRsYWJlbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAyMi4gTWVkaWEgT2JqZWN0XG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRtZWRpYW9iamVjdC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcbiRtZWRpYW9iamVjdC1pbWFnZS13aWR0aC1zdGFja2VkOiAxMDAlO1xuXG4vLyAyMy4gTWVudVxuLy8gLS0tLS0tLS1cblxuJG1lbnUtbWFyZ2luOiAwO1xuJG1lbnUtbmVzdGVkLW1hcmdpbjogJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW47XG4kbWVudS1pdGVtcy1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcbiRtZW51LXNpbXBsZS1tYXJnaW46IDFyZW07XG4kbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogJHdoaXRlO1xuJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogZ2V0LWNvbG9yKHByaW1hcnkpO1xuJG1lbnUtaWNvbi1zcGFjaW5nOiAwLjI1cmVtO1xuJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheTtcbiRtZW51LXN0YXRlLWJhY2stY29tcGF0OiB0cnVlO1xuJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQ6IHRydWU7XG4kbWVudS1pY29ucy1iYWNrLWNvbXBhdDogdHJ1ZTtcblxuLy8gMjQuIE1ldGVyXG4vLyAtLS0tLS0tLS1cblxuJG1ldGVyLWhlaWdodDogMXJlbTtcbiRtZXRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJG1ldGVyLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRtZXRlci1maWxsLWdvb2Q6ICRzdWNjZXNzLWNvbG9yO1xuJG1ldGVyLWZpbGwtbWVkaXVtOiAkd2FybmluZy1jb2xvcjtcbiRtZXRlci1maWxsLWJhZDogJGFsZXJ0LWNvbG9yO1xuXG4vLyAyNS4gT2ZmLWNhbnZhc1xuLy8gLS0tLS0tLS0tLS0tLS1cblxuJG9mZmNhbnZhcy1zaXplczogKFxuICBzbWFsbDogMjUwcHgsXG4pO1xuJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplczogKFxuICBzbWFsbDogMjUwcHgsXG4pO1xuJG9mZmNhbnZhcy1iYWNrZ3JvdW5kOiAkZGFyay1uYXYtY29sb3I7XG4kb2ZmY2FudmFzLXNoYWRvdzogMCAwIDEwcHggcmdiYSgkYmxhY2ssIDAuNyk7XG4kb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplOiAyMHB4O1xuJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3I6IHJnYmEoJGJsYWNrLCAwLjI1KTtcbiRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXg6IDExO1xuJG9mZmNhbnZhcy1wdXNoLXppbmRleDogMTI7XG4kb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4OiAxMztcbiRvZmZjYW52YXMtcmV2ZWFsLXppbmRleDogMTI7XG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoOiAwLjVzO1xuJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZzogZWFzZTtcbiRvZmZjYW52YXMtZml4ZWQtcmV2ZWFsOiB0cnVlO1xuJG9mZmNhbnZhcy1leGl0LWJhY2tncm91bmQ6IHJnYmEoJHdoaXRlLCAwLjI1KTtcbiRtYWluY29udGVudC1jbGFzczogJ29mZi1jYW52YXMtY29udGVudCc7XG5cbi8vIDI2LiBPcmJpdFxuLy8gLS0tLS0tLS0tXG5cbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kLWFjdGl2ZTogJGRhcmstZ3JheTtcbiRvcmJpdC1idWxsZXQtZGlhbWV0ZXI6IDEuMnJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luOiAwLjFyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbi10b3A6IDAuOHJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luLWJvdHRvbTogMC44cmVtO1xuJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNSk7XG4kb3JiaXQtY2FwdGlvbi1wYWRkaW5nOiAxcmVtO1xuJG9yYml0LWNvbnRyb2wtYmFja2dyb3VuZC1ob3ZlcjogcmdiYSgkYmxhY2ssIDAuNSk7XG4kb3JiaXQtY29udHJvbC1wYWRkaW5nOiAxcmVtO1xuJG9yYml0LWNvbnRyb2wtemluZGV4OiAxMDtcblxuLy8gMjcuIFBhZ2luYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRwYWdpbmF0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuJHBhZ2luYXRpb24tbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yOiAkYmxhY2s7XG4kcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmc6IHJlbS1jYWxjKDMgMTApO1xuJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nOiByZW0tY2FsYygxKTtcbiRwYWdpbmF0aW9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwcmltYXJ5LWNvbG9yO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50OiAkd2hpdGU7XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXk7XG4kcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvcjogJGJsYWNrO1xuJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZTtcbiRwYWdpbmF0aW9uLW1vYmlsZS1jdXJyZW50LWl0ZW06IGZhbHNlO1xuJHBhZ2luYXRpb24tYXJyb3dzOiB0cnVlO1xuXG4vLyAyOC4gUHJvZ3Jlc3MgQmFyXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm9ncmVzcy1oZWlnaHQ6IDFyZW07XG4kcHJvZ3Jlc3MtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHByb2dyZXNzLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHByb2dyZXNzLW1ldGVyLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHByb2dyZXNzLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDI5LiBQcm90b3R5cGUgQXJyb3dcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1hcnJvdy1kaXJlY3Rpb25zOiAoXG4gIGRvd24sXG4gIHVwLFxuICByaWdodCxcbiAgbGVmdFxuKTtcbiRwcm90b3R5cGUtYXJyb3ctc2l6ZTogMC40Mzc1cmVtO1xuJHByb3RvdHlwZS1hcnJvdy1jb2xvcjogJGJsYWNrO1xuXG4vLyAzMC4gUHJvdG90eXBlIEJvcmRlci1Cb3hcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWJvcmRlci1ib3gtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuXG4vLyAzMS4gUHJvdG90eXBlIEJvcmRlci1Ob25lXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtYm9yZGVyLW5vbmUtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuXG4vLyAzMi4gUHJvdG90eXBlIEJvcmRlcmVkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtYm9yZGVyZWQtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1ib3JkZXItd2lkdGg6IHJlbS1jYWxjKDEpO1xuJHByb3RvdHlwZS1ib3JkZXItdHlwZTogc29saWQ7XG4kcHJvdG90eXBlLWJvcmRlci1jb2xvcjogJG1lZGl1bS1ncmF5O1xuXG4vLyAzMy4gUHJvdG90eXBlIERpc3BsYXlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWRpc3BsYXktYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1kaXNwbGF5OiAoXG4gIGlubGluZSxcbiAgaW5saW5lLWJsb2NrLFxuICBibG9jayxcbiAgdGFibGUsXG4gIHRhYmxlLWNlbGxcbik7XG5cbi8vIDM0LiBQcm90b3R5cGUgRm9udC1TdHlsaW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWZvbnQtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS13aWRlLWxldHRlci1zcGFjaW5nOiByZW0tY2FsYyg0KTtcbiRwcm90b3R5cGUtZm9udC1ub3JtYWw6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRwcm90b3R5cGUtZm9udC1ib2xkOiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuXG4vLyAzNS4gUHJvdG90eXBlIExpc3QtU3R5bGUtVHlwZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1saXN0LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc3R5bGUtdHlwZS11bm9yZGVyZWQ6IChcbiAgZGlzYyxcbiAgY2lyY2xlLFxuICBzcXVhcmVcbik7XG4kcHJvdG90eXBlLXN0eWxlLXR5cGUtb3JkZXJlZDogKFxuICBkZWNpbWFsLFxuICBsb3dlci1hbHBoYSxcbiAgbG93ZXItbGF0aW4sXG4gIGxvd2VyLXJvbWFuLFxuICB1cHBlci1hbHBoYSxcbiAgdXBwZXItbGF0aW4sXG4gIHVwcGVyLXJvbWFuXG4pO1xuXG4vLyAzNi4gUHJvdG90eXBlIE92ZXJmbG93XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtb3ZlcmZsb3ctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1vdmVyZmxvdzogKFxuICB2aXNpYmxlLFxuICBoaWRkZW4sXG4gIHNjcm9sbFxuKTtcblxuLy8gMzcuIFByb3RvdHlwZSBQb3NpdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXBvc2l0aW9uLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtcG9zaXRpb246IChcbiAgc3RhdGljLFxuICByZWxhdGl2ZSxcbiAgYWJzb2x1dGUsXG4gIGZpeGVkXG4pO1xuJHByb3RvdHlwZS1wb3NpdGlvbi16LWluZGV4OiA5NzU7XG5cbi8vIDM4LiBQcm90b3R5cGUgUm91bmRlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtcm91bmRlZC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLWJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDMpO1xuXG4vLyAzOS4gUHJvdG90eXBlIFNlcGFyYXRvclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1zZXBhcmF0b3ItYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1zZXBhcmF0b3ItYWxpZ246IGNlbnRlcjtcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWhlaWdodDogcmVtLWNhbGMoMik7XG4kcHJvdG90eXBlLXNlcGFyYXRvci13aWR0aDogM3JlbTtcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHByb3RvdHlwZS1zZXBhcmF0b3ItbWFyZ2luLXRvcDogJGdsb2JhbC1tYXJnaW47XG5cbi8vIDQwLiBQcm90b3R5cGUgU2hhZG93XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXNoYWRvdy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLWJveC1zaGFkb3c6IDAgMnB4IDVweCAwIHJnYmEoMCwwLDAsLjE2KSxcbiAgICAgICAgICAgICAgICAgICAgICAgMCAycHggMTBweCAwIHJnYmEoMCwwLDAsLjEyKTtcblxuLy8gNDEuIFByb3RvdHlwZSBTaXppbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtc2l6aW5nLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc2l6aW5nOiAoXG4gIHdpZHRoLFxuICBoZWlnaHRcbik7XG4kcHJvdG90eXBlLXNpemVzOiAoXG4gIDI1OiAyNSUsXG4gIDUwOiA1MCUsXG4gIDc1OiA3NSUsXG4gIDEwMDogMTAwJVxuKTtcblxuLy8gNDIuIFByb3RvdHlwZSBTcGFjaW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1zcGFjaW5nLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc3BhY2Vycy1jb3VudDogMztcblxuLy8gNDMuIFByb3RvdHlwZSBUZXh0LURlY29yYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtZGVjb3JhdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXRleHQtZGVjb3JhdGlvbjogKFxuICBvdmVybGluZSxcbiAgdW5kZXJsaW5lLFxuICBsaW5lLXRocm91Z2gsXG4pO1xuXG4vLyA0NC4gUHJvdG90eXBlIFRleHQtVHJhbnNmb3JtYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXRyYW5zZm9ybWF0aW9uLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtdGV4dC10cmFuc2Zvcm1hdGlvbjogKFxuICBsb3dlcmNhc2UsXG4gIHVwcGVyY2FzZSxcbiAgY2FwaXRhbGl6ZVxuKTtcblxuLy8gNDUuIFByb3RvdHlwZSBUZXh0LVV0aWxpdGllc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXV0aWxpdGllcy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuXG4vLyA0Ni4gUmVzcG9uc2l2ZSBFbWJlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpO1xuJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zOiAoXG4gIGRlZmF1bHQ6IDQgYnkgMyxcbiAgd2lkZXNjcmVlbjogMTYgYnkgOSxcbik7XG5cbi8vIDQ3LiBSZXZlYWxcbi8vIC0tLS0tLS0tLS1cblxuJHJldmVhbC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kcmV2ZWFsLXdpZHRoOiA2MDBweDtcbiRyZXZlYWwtbWF4LXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJHJldmVhbC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kcmV2ZWFsLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRyZXZlYWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRyZXZlYWwtemluZGV4OiAxMDA1O1xuJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjQ1KTtcblxuLy8gNDguIFNsaWRlclxuLy8gLS0tLS0tLS0tLVxuXG4kc2xpZGVyLXdpZHRoLXZlcnRpY2FsOiAwLjVyZW07XG4kc2xpZGVyLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuJHNsaWRlci1oZWlnaHQ6IDAuNXJlbTtcbiRzbGlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kc2xpZGVyLWZpbGwtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHNsaWRlci1oYW5kbGUtaGVpZ2h0OiAxLjRyZW07XG4kc2xpZGVyLWhhbmRsZS13aWR0aDogMS40cmVtO1xuJHNsaWRlci1oYW5kbGUtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kc2xpZGVyLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XG4kc2xpZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDQ5LiBTd2l0Y2hcbi8vIC0tLS0tLS0tLS1cblxuJHN3aXRjaC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kc3dpdGNoLWJhY2tncm91bmQtYWN0aXZlOiAkcHJpbWFyeS1jb2xvcjtcbiRzd2l0Y2gtaGVpZ2h0OiAycmVtO1xuJHN3aXRjaC1oZWlnaHQtdGlueTogMS41cmVtO1xuJHN3aXRjaC1oZWlnaHQtc21hbGw6IDEuNzVyZW07XG4kc3dpdGNoLWhlaWdodC1sYXJnZTogMi41cmVtO1xuJHN3aXRjaC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHN3aXRjaC1tYXJnaW46ICRnbG9iYWwtbWFyZ2luO1xuJHN3aXRjaC1wYWRkbGUtYmFja2dyb3VuZDogJHdoaXRlO1xuJHN3aXRjaC1wYWRkbGUtb2Zmc2V0OiAwLjI1cmVtO1xuJHN3aXRjaC1wYWRkbGUtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLW91dDtcblxuLy8gNTAuIFRhYmxlXG4vLyAtLS0tLS0tLS1cblxuJHRhYmxlLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiR0YWJsZS1jb2xvci1zY2FsZTogNSU7XG4kdGFibGUtYm9yZGVyOiAxcHggc29saWQgc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XG4kdGFibGUtcGFkZGluZzogcmVtLWNhbGMoOCAxMCAxMCk7XG4kdGFibGUtaG92ZXItc2NhbGU6IDIlO1xuJHRhYmxlLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlICsgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1pcy1zdHJpcGVkOiB0cnVlO1xuJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XG4kdGFibGUtc3RyaXBlOiBldmVuO1xuJHRhYmxlLWhlYWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSAvIDIpO1xuJHRhYmxlLWhlYWQtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWhlYWQtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1mb290LWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xuJHRhYmxlLWZvb3Qtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWZvb3QtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1oZWFkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kdGFibGUtZm9vdC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJHNob3ctaGVhZGVyLWZvci1zdGFja2VkOiBmYWxzZTtcbiR0YWJsZS1zdGFjay1icmVha3BvaW50OiBtZWRpdW07XG5cbi8vIDUxLiBUYWJzXG4vLyAtLS0tLS0tLVxuXG4kdGFiLW1hcmdpbjogMDtcbiR0YWItYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYi1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kdGFiLWJhY2tncm91bmQtYWN0aXZlOiAkbGlnaHQtZ3JheTtcbiR0YWItYWN0aXZlLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiR0YWItaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiR0YWItaXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkd2hpdGU7XG4kdGFiLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxLjVyZW07XG4kdGFiLWV4cGFuZC1tYXg6IDY7XG4kdGFiLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYi1jb250ZW50LWJvcmRlcjogJGxpZ2h0LWdyYXk7XG4kdGFiLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kdGFiLWNvbnRlbnQtcGFkZGluZzogMXJlbTtcblxuLy8gNTIuIFRodW1ibmFpbFxuLy8gLS0tLS0tLS0tLS0tLVxuXG4kdGh1bWJuYWlsLWJvcmRlcjogc29saWQgNHB4ICR3aGl0ZTtcbiR0aHVtYm5haWwtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kdGh1bWJuYWlsLXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoJGJsYWNrLCAwLjIpO1xuJHRodW1ibmFpbC1zaGFkb3ctaG92ZXI6IDAgMCA2cHggMXB4IHJnYmEoJHByaW1hcnktY29sb3IsIDAuNSk7XG4kdGh1bWJuYWlsLXRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQ7XG4kdGh1bWJuYWlsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDUzLiBUaXRsZSBCYXJcbi8vIC0tLS0tLS0tLS0tLS1cblxuJHRpdGxlYmFyLWJhY2tncm91bmQ6ICRkYXJrLW5hdi1jb2xvcjtcbiR0aXRsZWJhci1jb2xvcjogJHdoaXRlO1xuJHRpdGxlYmFyLXBhZGRpbmc6IDAuNXJlbTtcbiR0aXRsZWJhci10ZXh0LWZvbnQtd2VpZ2h0OiBib2xkO1xuJHRpdGxlYmFyLWljb24tY29sb3I6ICR3aGl0ZTtcbiR0aXRsZWJhci1pY29uLWNvbG9yLWhvdmVyOiAkb3UtZ29sZDtcbiR0aXRsZWJhci1pY29uLXNwYWNpbmc6IDAuMjVyZW07XG5cbi8vIDU0LiBUb29sdGlwXG4vLyAtLS0tLS0tLS0tLVxuXG4kaGFzLXRpcC1jdXJzb3I6IGhlbHA7XG4kaGFzLXRpcC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiRoYXMtdGlwLWJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggJGRhcmstZ3JheTtcbiR0b29sdGlwLWJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiR0b29sdGlwLWNvbG9yOiAkd2hpdGU7XG4kdG9vbHRpcC1wYWRkaW5nOiAwLjc1cmVtO1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAxMHJlbTtcbiR0b29sdGlwLWZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiR0b29sdGlwLXBpcC13aWR0aDogMC43NXJlbTtcbiR0b29sdGlwLXBpcC1oZWlnaHQ6ICR0b29sdGlwLXBpcC13aWR0aCAqIDAuODY2O1xuJHRvb2x0aXAtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gNTUuIFRvcCBCYXJcbi8vIC0tLS0tLS0tLS0tXG5cbiR0b3BiYXItcGFkZGluZzogMHJlbTtcbiR0b3BiYXItYmFja2dyb3VuZDogJHdoaXRlO1xuJHRvcGJhci1zdWJtZW51LWJhY2tncm91bmQ6ICR0b3BiYXItYmFja2dyb3VuZDtcbiR0b3BiYXItdGl0bGUtc3BhY2luZzogMC41cmVtIDFyZW07XG4kdG9wYmFyLWlucHV0LXdpZHRoOiAyMDBweDtcbiR0b3BiYXItdW5zdGFjay1icmVha3BvaW50OiBtZWRpdW07XG5cbi8vIDU2LiBYeSBHcmlkXG4vLyAtLS0tLS0tLS0tLVxuXG4keHktZ3JpZDogdHJ1ZTtcbiRncmlkLWNvbnRhaW5lcjogJGdsb2JhbC13aWR0aDtcbiRncmlkLWNvbHVtbnM6IDEyO1xuJGdyaWQtbWFyZ2luLWd1dHRlcnM6IChcbiAgc21hbGw6IDIwcHgsXG4gIG1lZGl1bTogMzBweFxuKTtcbiRncmlkLXBhZGRpbmctZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnM7XG4kZ3JpZC1jb250YWluZXItcGFkZGluZzogJGdyaWQtcGFkZGluZy1ndXR0ZXJzO1xuJGdyaWQtY29udGFpbmVyLW1heDogJGdsb2JhbC13aWR0aDtcbiR4eS1ibG9jay1ncmlkLW1heDogODtcbiIsIi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuICogVmVyc2lvbiA2LjUuMVxuICogZm91bmRhdGlvbi56dXJiLmNvbVxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cblxuLy8gRGVwZW5kZW5jaWVzXG5AaW1wb3J0ICd2ZW5kb3Ivbm9ybWFsaXplJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvaGVscGVycy9taXNzaW5nLWRlcGVuZGVuY2llcyc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2hlbHBlcnMvdHJ1ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9jb250YWluJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3B1cmdlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3JlbW92ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9yZXBsYWNlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3RvLWxpc3QnO1xuXG4vLyAtLS0gU2V0dGluZ3MgLS0tXG4vLyBpbXBvcnQgeW91ciBvd24gYHNldHRpbmdzYCBoZXJlIG9yXG4vLyBpbXBvcnQgYW5kIG1vZGlmeSB0aGUgZGVmYXVsdCBzZXR0aW5ncyB0aHJvdWdoXG4vLyBAaW1wb3J0ICdzZXR0aW5ncy9zZXR0aW5ncyc7XG5cbi8vIC0tLSBDb21wb25lbnRzIC0tLVxuLy8gVXRpbGl0aWVzXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xuLy8gR2xvYmFsIHN0eWxlc1xuQGltcG9ydCAnZ2xvYmFsJztcbkBpbXBvcnQgJ2Zvcm1zL2Zvcm1zJztcbkBpbXBvcnQgJ3R5cG9ncmFwaHkvdHlwb2dyYXBoeSc7XG5cbi8vIEdyaWRzXG5AaW1wb3J0ICdncmlkL2dyaWQnO1xuQGltcG9ydCAneHktZ3JpZC94eS1ncmlkJztcbi8vIEdlbmVyaWMgY29tcG9uZW50c1xuQGltcG9ydCAnY29tcG9uZW50cy9idXR0b24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9idXR0b24tZ3JvdXAnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jbG9zZS1idXR0b24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9sYWJlbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Byb2dyZXNzLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3NsaWRlcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N3aXRjaCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RhYmxlJztcbi8vIEJhc2ljIGNvbXBvbmVudHNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYmFkZ2UnO1xuQGltcG9ydCAnY29tcG9uZW50cy9icmVhZGNydW1icyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NhbGxvdXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jYXJkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJvcGRvd24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9wYWdpbmF0aW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdG9vbHRpcCc7XG5cbi8vIENvbnRhaW5lcnNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWNjb3JkaW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVkaWEtb2JqZWN0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvb3JiaXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9yZXNwb25zaXZlLWVtYmVkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFicyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RodW1ibmFpbCc7XG4vLyBNZW51LWJhc2VkIGNvbnRhaW5lcnNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVudSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL21lbnUtaWNvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2FjY29yZGlvbi1tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJpbGxkb3duJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJvcGRvd24tbWVudSc7XG5cbi8vIExheW91dCBjb21wb25lbnRzXG5AaW1wb3J0ICdjb21wb25lbnRzL29mZi1jYW52YXMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9yZXZlYWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy9zdGlja3knO1xuQGltcG9ydCAnY29tcG9uZW50cy90aXRsZS1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy90b3AtYmFyJztcblxuLy8gSGVscGVyc1xuQGltcG9ydCAnY29tcG9uZW50cy9mbG9hdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2ZsZXgnO1xuQGltcG9ydCAnY29tcG9uZW50cy92aXNpYmlsaXR5JztcbkBpbXBvcnQgJ3Byb3RvdHlwZS9wcm90b3R5cGUnO1xuXG5cbkBtaXhpbiBmb3VuZGF0aW9uLWV2ZXJ5dGhpbmcoXG4gICRmbGV4OiB0cnVlLFxuICAkcHJvdG90eXBlOiBmYWxzZVxuKSB7XG4gIEBpZiAkZmxleCB7XG4gICAgJGdsb2JhbC1mbGV4Ym94OiB0cnVlICFnbG9iYWw7XG4gIH1cblxuICAvLyBHbG9iYWwgc3R5bGVzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mb3JtcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10eXBvZ3JhcGh5O1xuXG4gIC8vIEdyaWRzXG4gIEBpZiBub3QgJGZsZXgge1xuICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tZ3JpZDtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGlmICR4eS1ncmlkIHtcbiAgICAgIEBpbmNsdWRlIGZvdW5kYXRpb24teHktZ3JpZC1jbGFzc2VzO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtZ3JpZDtcbiAgICB9XG4gIH1cblxuICAvLyBHZW5lcmljIGNvbXBvbmVudHNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uLWdyb3VwO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1sYWJlbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1wcm9ncmVzcy1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc2xpZGVyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXN3aXRjaDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJsZTtcbiAgLy8gQmFzaWMgY29tcG9uZW50c1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJhZGdlO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJyZWFkY3J1bWJzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNhbGxvdXQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2FyZDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1wYWdpbmF0aW9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRvb2x0aXA7XG5cbiAgLy8gQ29udGFpbmVyc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZWRpYS1vYmplY3Q7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tb3JiaXQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRodW1ibmFpbDtcbiAgLy8gTWVudS1iYXNlZCBjb250YWluZXJzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51LWljb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJpbGxkb3duLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudTtcblxuICAvLyBMYXlvdXQgY29tcG9uZW50c1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW9mZi1jYW52YXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmV2ZWFsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXN0aWNreTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10aXRsZS1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9wLWJhcjtcblxuICAvLyBIZWxwZXJzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxvYXQtY2xhc3NlcztcbiAgQGlmICRmbGV4IHsgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWNsYXNzZXM7IH1cbiAgQGluY2x1ZGUgZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXM7XG4gIEBpZiAkcHJvdG90eXBlIHsgQGluY2x1ZGUgZm91bmRhdGlvbi1wcm90b3R5cGUtY2xhc3NlczsgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnJlYWtwb2ludHNcbi8vLy9cblxuLy8vIEEgbGlzdCBvZiBuYW1lZCBicmVha3BvaW50cy4gWW91IGNhbiB1c2UgdGhlc2Ugd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gcXVpY2tseSBjcmVhdGUgbWVkaWEgcXVlcmllcy5cbi8vLyBAdHlwZSBNYXBcbiRicmVha3BvaW50czogKFxuICBzbWFsbDogMCxcbiAgbWVkaXVtOiA2NDBweCxcbiAgbGFyZ2U6IDEwMjRweCxcbiAgeGxhcmdlOiAxMjAwcHgsXG4gIHh4bGFyZ2U6IDE0NDBweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBUaGUgbGFyZ2VzdCBuYW1lZCBicmVha3BvaW50IGluIHdoaWNoIHRvIGluY2x1ZGUgcHJpbnQgYXMgYSBtZWRpYSB0eXBlXG4vLy8gQHR5cGUgS2V5d29yZFxuJHByaW50LWJyZWFrcG9pbnQ6IGxhcmdlICFkZWZhdWx0O1xuXG4kLXpmLXplcm8tYnJlYWtwb2ludDogc21hbGwgIWRlZmF1bHQ7XG5cbiQtemYtYnJlYWtwb2ludHMta2V5czogbWFwLXRvLWxpc3QoJGJyZWFrcG9pbnRzLCAna2V5cycpO1xuXG5AaWYgbnRoKG1hcC12YWx1ZXMoJGJyZWFrcG9pbnRzKSwgMSkgIT0gMCB7XG4gIEBlcnJvciAnVGhlIGZpcnN0IGtleSBpbiB0aGUgJGJyZWFrcG9pbnRzIG1hcCBtdXN0IGhhdmUgYSB2YWx1ZSBvZiBcIjBcIi4nO1xufVxuQGVsc2Uge1xuICAkLXpmLXplcm8tYnJlYWtwb2ludDogbnRoKG1hcC1rZXlzKCRicmVha3BvaW50cyksIDEpO1xufVxuXG4vLy8gQWxsIG9mIHRoZSBuYW1lcyBpbiB0aGlzIGxpc3Qgd2lsbCBiZSBvdXRwdXQgYXMgY2xhc3NlcyBpbiB5b3VyIENTUywgbGlrZSBgLnNtYWxsLTEyYCwgYC5tZWRpdW0tNmAsIGFuZCBzbyBvbi4gRWFjaCB2YWx1ZSBpbiB0aGlzIGxpc3QgbXVzdCBhbHNvIGJlIGluIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXAuXG4vLy8gQHR5cGUgTGlzdFxuJGJyZWFrcG9pbnQtY2xhc3NlczogKHNtYWxsIG1lZGl1bSBsYXJnZSkgIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgYSBtZWRpYSBxdWVyeSBzdHJpbmcgbWF0Y2hpbmcgdGhlIGlucHV0IHZhbHVlLiBSZWZlciB0byB0aGUgZG9jdW1lbnRhdGlvbiBmb3IgdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHNlZSB3aGF0IHRoZSBwb3NzaWJsZSBpbnB1dHMgYXJlLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbCBbc21hbGxdIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQoJHZhbDogJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgLy8gU2l6ZSBvciBrZXl3b3JkXG4gICRicDogbnRoKCR2YWwsIDEpO1xuICAvLyBWYWx1ZSBmb3IgbWF4LXdpZHRoIG1lZGlhIHF1ZXJpZXNcbiAgJGJwLW1heDogMDtcbiAgLy8gRGlyZWN0aW9uIG9mIG1lZGlhIHF1ZXJ5ICh1cCwgZG93biwgb3Igb25seSlcbiAgJGRpcjogaWYobGVuZ3RoKCR2YWwpID4gMSwgbnRoKCR2YWwsIDIpLCB1cCk7XG4gIC8vIEV2ZW50dWFsIG91dHB1dFxuICAkc3RyOiAnJztcbiAgLy8gSXMgaXQgYSBuYW1lZCBtZWRpYSBxdWVyeT9cbiAgJG5hbWVkOiBmYWxzZTtcblxuICAvLyBPcmllbnRhdGlvbiBtZWRpYSBxdWVyaWVzIGhhdmUgYSB1bmlxdWUgc3ludGF4XG4gIEBpZiAkYnAgPT0gJ2xhbmRzY2FwZScgb3IgJGJwID09ICdwb3J0cmFpdCcge1xuICAgIEByZXR1cm4gJyhvcmllbnRhdGlvbjogI3skYnB9KSc7XG4gIH1cbiAgQGVsc2UgaWYgJGJwID09ICdyZXRpbmEnIHtcbiAgICBAcmV0dXJuICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpJztcbiAgfVxuXG4gIC8vIFRyeSB0byBwdWxsIGEgbmFtZWQgYnJlYWtwb2ludCBvdXQgb2YgdGhlICRicmVha3BvaW50cyBtYXBcbiAgQGlmIHR5cGUtb2YoJGJwKSA9PSAnc3RyaW5nJyB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJGJwKSB7XG4gICAgICBAaWYgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgICAgICAkYnAtbWF4OiAtemYtbWFwLW5leHQoJGJyZWFrcG9pbnRzLCAkYnApO1xuICAgICAgfVxuXG4gICAgICAkYnA6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkYnApO1xuICAgICAgJG5hbWVkOiB0cnVlO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkYnA6IDA7XG4gICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBcIiN7JHZhbH1cIiBpcyBub3QgZGVmaW5lZCBpbiB5b3VyICRicmVha3BvaW50cyBzZXR0aW5nLic7XG4gICAgfVxuICB9XG5cbiAgLy8gQ29udmVydCBhbnkgcGl4ZWwsIHJlbSwgb3IgdW5pdGxlc3MgdmFsdWUgdG8gZW1cbiAgJGJwOiAtemYtYnAtdG8tZW0oJGJwKTtcbiAgLy8gTWF4IHZhbHVlIGlzIDAuMnB4IHVuZGVyIHRoZSBuZXh0IGJyZWFrcG9pbnQgKDAuMDIgLyAxNiA9IDAuMDAxMjUpLlxuICAvLyBVc2UgYSBwcmVjaXNpb24gdW5kZXIgMXB4IHRvIHN1cHBvcnQgYnJvd3NlciB6b29tLCBidXQgbm90IHRvIGxvdyB0byBhdm9pZCByb3VuZGluZy5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS96dXJiL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzExMzEzXG4gIEBpZiAkYnAtbWF4IHtcbiAgICAkYnAtbWF4OiAtemYtYnAtdG8tZW0oJGJwLW1heCkgLSAuMDAxMjU7XG4gIH1cblxuICAvLyBDb25kaXRpb25zIHRvIHNraXAgbWVkaWEgcXVlcnkgY3JlYXRpb25cbiAgLy8gLSBJdCdzIGEgbmFtZWQgYnJlYWtwb2ludCB0aGF0IHJlc29sdmVkIHRvIFwiMCBkb3duXCIgb3IgXCIwIHVwXCJcbiAgLy8gLSBJdCdzIGEgbnVtZXJpYyBicmVha3BvaW50IHRoYXQgcmVzb2x2ZWQgdG8gXCIwIFwiICsgYW55dGhpbmdcbiAgQGlmICRicCA+IDBlbSBvciAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICdkb3duJyB7XG4gICAgLy8gYG9ubHlgIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1pbi13aWR0aDogbikgYW5kIChtYXgtd2lkdGg6IG4pYFxuICAgIEBpZiAkZGlyID09ICdvbmx5JyB7XG4gICAgICAvLyBPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gXCJvbmx5XCIgcmFuZ2VcbiAgICAgIEBpZiAkbmFtZWQgPT0gdHJ1ZSB7XG4gICAgICAgIC8vIE9ubHkgdXNlIFwibWluLXdpZHRoXCIgaWYgdGhlIGZsb29yIGlzIGdyZWF0ZXIgdGhhbiAwXG4gICAgICAgIEBpZiAkYnAgPiAwZW0ge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1pbi13aWR0aDogI3skYnB9KSc7XG5cbiAgICAgICAgICAvLyBPbmx5IGFkZCBcImFuZFwiIHRvIHRoZSBtZWRpYSBxdWVyeSBpZiB0aGVyZSdzIGEgY2VpbGluZ1xuICAgICAgICAgIEBpZiAkYnAtbWF4ICE9IG51bGwge1xuICAgICAgICAgICAgJHN0cjogJHN0ciArICcgYW5kICc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gT25seSB1c2UgXCJtYXgtd2lkdGhcIiBpZiB0aGVyZSdzIGEgY2VpbGluZ1xuICAgICAgICBAaWYgJGJwLW1heCAhPSBudWxsIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtYXgtd2lkdGg6ICN7JGJwLW1heH0pJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gYG9ubHlgIHJhbmdlLic7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYGRvd25gIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1heC13aWR0aDogbilgXG4gICAgQGVsc2UgaWYgJGRpciA9PSAnZG93bicge1xuICAgICAgJG1heDogaWYoJG5hbWVkLCAkYnAtbWF4LCAkYnApO1xuXG4gICAgICAvLyBTa2lwIG1lZGlhIHF1ZXJ5IGNyZWF0aW9uIGlmIGlucHV0IHZhbHVlIGlzIGV4YWN0bHkgXCIwIGRvd25cIixcbiAgICAgIC8vIHVubGVzcyB0aGUgZnVuY3Rpb24gd2FzIGNhbGxlZCBhcyBcInNtYWxsIGRvd25cIiwgaW4gd2hpY2ggY2FzZSBpdCdzIGp1c3QgXCJzbWFsbCBvbmx5XCJcbiAgICAgIEBpZiAkbmFtZWQgb3IgJGJwID4gMGVtIHtcbiAgICAgICAgQGlmICRtYXggIT0gbnVsbCB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWF4LXdpZHRoOiAjeyRtYXh9KSc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBgdXBgIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1pbi13aWR0aDogbilgXG4gICAgQGVsc2UgaWYgJGJwID4gMGVtIHtcbiAgICAgICRzdHI6ICRzdHIgKyAnKG1pbi13aWR0aDogI3skYnB9KSc7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gV3JhcHMgYSBtZWRpYSBxdWVyeSBhcm91bmQgdGhlIGNvbnRlbnQgeW91IHB1dCBpbnNpZGUgdGhlIG1peGluLiBUaGlzIG1peGluIGFjY2VwdHMgYSBudW1iZXIgb2YgdmFsdWVzOlxuLy8vICAtIElmIGEgc3RyaW5nIGlzIHBhc3NlZCwgdGhlIG1peGluIHdpbGwgbG9vayBmb3IgaXQgaW4gdGhlIGAkYnJlYWtwb2ludHNgIG1hcCwgYW5kIHVzZSBhIG1lZGlhIHF1ZXJ5IHRoZXJlLlxuLy8vICAtIElmIGEgcGl4ZWwgdmFsdWUgaXMgcGFzc2VkLCBpdCB3aWxsIGJlIGNvbnZlcnRlZCB0byBhbiBlbSB2YWx1ZSB1c2luZyBgJGdsb2JhbC1mb250LXNpemVgIGFzIHRoZSBiYXNlLlxuLy8vICAtIElmIGEgcmVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHVuaXQgd2lsbCBiZSBjaGFuZ2VkIHRvIGVtLlxuLy8vICAtIElmIGFuIGVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHZhbHVlIHdpbGwgYmUgdXNlZCBhcy1pcy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSwgb3IgcHgsIHJlbSwgb3IgZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbi8vL1xuLy8vIEBvdXRwdXQgSWYgdGhlIGJyZWFrcG9pbnQgaXMgXCIwcHggYW5kIGxhcmdlclwiLCBvdXRwdXRzIHRoZSBjb250ZW50IGFzLWlzLiBPdGhlcndpc2UsIG91dHB1dHMgdGhlIGNvbnRlbnQgd3JhcHBlZCBpbiBhIG1lZGlhIHF1ZXJ5LlxuQG1peGluIGJyZWFrcG9pbnQoJHZhbHVlKSB7XG4gICRzdHI6IGJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgJGJwOiBpbmRleCgkLXpmLWJyZWFrcG9pbnRzLWtleXMsICR2YWx1ZSk7XG4gICRwYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgJHByaW50LWJyZWFrcG9pbnQpO1xuXG4gICRvbGQtemYtc2l6ZTogbnVsbDtcblxuICAvLyBNYWtlIGJyZWFrcG9pbnQgc2l6ZSBhdmFpbGFibGUgYXMgYSB2YXJpYWJsZVxuICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkge1xuICAgICRvbGQtemYtc2l6ZTogJC16Zi1zaXplO1xuICB9XG4gICQtemYtc2l6ZTogbnRoKCR2YWx1ZSwgMSkgIWdsb2JhbDsgLy8gZ2V0IHRoZSBmaXJzdCB2YWx1ZSB0byBhY2NvdW50IGZvciBgb25seWAgYW5kIGBkb3duYCBrZXl3b3Jkc1xuXG4gIC8vIElmICRzdHIgaXMgc3RpbGwgYW4gZW1wdHkgc3RyaW5nLCBubyBtZWRpYSBxdWVyeSBpcyBuZWVkZWRcbiAgQGlmICRzdHIgPT0gJycge1xuICAgIEBjb250ZW50O1xuICB9XG5cbiAgLy8gT3RoZXJ3aXNlLCB3cmFwIHRoZSBjb250ZW50IGluIGEgbWVkaWEgcXVlcnlcbiAgQGVsc2Uge1xuICAgIC8vIEZvciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJHByaW50LWJyZWFrcG9pbnQsIGFkZCBwcmludCB0byB0aGUgbWVkaWEgdHlwZXNcbiAgICBAaWYgJGJwICE9IG51bGwgYW5kICRicCA8PSAkcGJwIHtcbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJC16Zi1zaXplOiAkb2xkLXpmLXNpemUgIWdsb2JhbDtcbn1cblxuLy8vIENvbnZlcnRzIHRoZSBicmVha3BvaW50cyBtYXAgdG8gYSBVUkwtZW5jb2RlZCBzdHJpbmcsIGxpa2UgdGhpczogYGtleTE9dmFsdWUxJmtleTI9dmFsdWUyYC4gVGhlIHZhbHVlIGlzIHRoZW4gZHJvcHBlZCBpbnRvIHRoZSBDU1MgZm9yIGEgc3BlY2lhbCBgPG1ldGE+YCB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdC4gVGhpcyBpcyBob3cgd2UgdHJhbnNmZXIgdmFsdWVzIGZyb20gU2FzcyB0byBKYXZhU2NyaXB0LCBzbyB0aGV5IGNhbiBiZSBkZWZpbmVkIGluIG9uZSBwbGFjZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIGNvbnZlcnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7U3RyaW5nfSBBIHN0cmluZyBjb250YWluaW5nIHRoZSBtYXAncyBjb250ZW50cy5cbkBmdW5jdGlvbiAtemYtYnAtc2VyaWFsaXplKCRtYXApIHtcbiAgJHN0cjogJyc7XG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICAkc3RyOiAkc3RyICsgJGtleSArICc9JyArIC16Zi1icC10by1lbSgkdmFsdWUpICsgJyYnO1xuICB9XG4gICRzdHI6IHN0ci1zbGljZSgkc3RyLCAxLCAtMik7XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gRmluZCB0aGUgbmV4dCBrZXkgaW4gYSBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byB0cmF2ZXJzZS5cbi8vLyBAcGFyYW0ge01peGVkfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBhIHN0YXJ0aW5nIHBvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge01peGVkfSBUaGUgdmFsdWUgZm9yIHRoZSBrZXkgYWZ0ZXIgYCRrZXlgLCBpZiBgJGtleWAgd2FzIGZvdW5kLiBJZiBgJGtleWAgd2FzIG5vdCBmb3VuZCwgb3IgYCRrZXlgIHdhcyB0aGUgbGFzdCB2YWx1ZSBpbiB0aGUgbWFwLCByZXR1cm5zIGBudWxsYC5cbkBmdW5jdGlvbiAtemYtbWFwLW5leHQoJG1hcCwgJGtleSkge1xuXG4gIC8vIFN0b3JlIHRoZSBrZXlzIG9mIHRoZSBtYXAgYXMgYSBsaXN0XG4gICR2YWx1ZXM6IG1hcC1rZXlzKCRtYXApO1xuXG4gICRpOiAwO1xuXG4gIC8vIElmIHRoZSBLZXkgRXhpc3RzLCBHZXQgdGhlIGluZGV4IG9mIHRoZSBrZXkgd2l0aGluIHRoZSBtYXAgYW5kIGFkZCAxIHRvIGl0IGZvciB0aGUgbmV4dCBicmVha3BvaW50IGluIHRoZSBtYXBcbiAgQGlmIChtYXAtaGFzLWtleSgkbWFwLCAka2V5KSkge1xuICAgICRpOiBpbmRleCgkdmFsdWVzLCAka2V5KSArIDE7XG4gIH1cblxuICAvLyBJZiB0aGUga2V5IGRvZXNuJ3QgZXhpc3QsIG9yIGl0J3MgdGhlIGxhc3Qga2V5IGluIHRoZSBtYXAsIHJldHVybiBudWxsXG4gIEBpZiAoJGkgPiBsZW5ndGgoJG1hcCkgb3IgJGkgPT0gMCkge1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuICAvLyBPdGhlcndpc2UsIHJldHVybiB0aGUgdmFsdWVcbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCBudGgoJHZhbHVlcywgJGkpKTtcbiAgfVxuXG59XG5cbi8vLyBSZXR1cm4gYSBsaXN0IG9mIG91ciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gJGtleS4gVXNlZnVsIGZvciBkZWFsaW5nIHdpdGhcbi8vLyByZXNwb25zaXZlIGd1dHRlcnMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGxhc3QgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtBcnJheX0gVGhlIGxpc3Qgb2YgYnJlYWtwb2ludHMgdXAgdG8gYW5kLiBJZiAka2V5IGlzIGF1dG8sIHJldHVybnMgYnJlYWtwb2ludHMgYWJvdmUgdGhlIHplcm9cbkBmdW5jdGlvbiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCRrZXkpIHtcbiAgJGxpc3Q6ICgpO1xuICAkZm91bmRfa2V5OiBmYWxzZTtcblxuICBAZWFjaCAkbmFtZSBpbiAkLXpmLWJyZWFrcG9pbnRzLWtleXMge1xuICAgIEBpZiAoJG5hbWUgPT0gJGtleSkge1xuICAgICAgJGZvdW5kX2tleTogdHJ1ZTtcbiAgICB9XG4gICAgQGlmIG5vdCAkZm91bmRfa2V5IHtcbiAgICAgICRsaXN0OiBhcHBlbmQoJGxpc3QsICRuYW1lKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkbGlzdDtcbn1cblxuLy8vIFJldHVybiBhIGxpc3Qgb2Ygb3VyIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiAka2V5LiBVc2VmdWwgZm9yIGRlYWxpbmcgd2l0aFxuLy8vIHJlc3BvbnNpdmUgZ3V0dGVycyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgLSBhIG5hbWVkIG9yIG5vbi1uYW1lZCBicmVha3BvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge0FycmF5fSBUaGUgbGlzdCBvZiBicmVha3BvaW50cyB1cCB0byBhbmQuIElmICRrZXkgaXMgYXV0bywgcmV0dXJucyBicmVha3BvaW50cyBhYm92ZSB0aGUgemVyb1xuQGZ1bmN0aW9uIC16Zi1jbG9zZXN0LW5hbWVkLWJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpIHtcbiAgJGxhc3Q6ICQtemYtemVyby1icmVha3BvaW50O1xuICAkZm91bmQ6IGZhbHNlO1xuXG4gICR2YWx1ZTogdW5pdGxlc3MtY2FsYygkYnJlYWtwb2ludCwgMXB4KTtcbiAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnJlYWtwb2ludHMge1xuICAgIEBpZiBub3QgJGZvdW5kIHtcbiAgICAgIEBpZiB1bml0bGVzcy1jYWxjKCR2YWwpID4gJHZhbHVlIHtcbiAgICAgICAgJGZvdW5kOiB0cnVlO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRsYXN0OiAka2V5O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJGxhc3Q7XG59XG5cbi8vLyBHZXQgYSB2YWx1ZSBmb3IgYSBicmVha3BvaW50IGZyb20gYSByZXNwb25zaXZlIGNvbmZpZyBtYXAgb3Igc2luZ2xlIHZhbHVlLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0IHJlZ2FyZGxlc3Mgb2YgYCR2YWx1ZWAuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgbWFwIGFuZCBoYXMgdGhlIGtleSBgJHZhbHVlYCwgdGhlIGV4YWN0IGJyZWFrcG9pbnQgdmFsdWUgaXMgcmV0dXJuZWQuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgbWFwIGFuZCBkb2VzICpub3QqIGhhdmUgdGhlIGJyZWFrcG9pbnQsIHRoZSB2YWx1ZSBtYXRjaGluZyB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBpbiB0aGUgY29uZmlnIG1hcCBpcyByZXR1cm5lZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIFJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdmFsdWUgLSBCcmVha3BvaW50IG5hbWUgdG8gdXNlLlxuLy8vXG4vLy8gQHJldHVybiB7TWl4ZWR9IFRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUuXG5AZnVuY3Rpb24gLXpmLWdldC1icC12YWwoJG1hcCwgJHZhbHVlKSB7XG4gIC8vIElmIHRoZSBnaXZlbiBtYXAgaXMgYSBzaW5nbGUgdmFsdWUsIHJldHVybiBpdFxuICBAaWYgdHlwZS1vZigkbWFwKSA9PSAnbnVtYmVyJyB7XG4gICAgQHJldHVybiAkbWFwO1xuICB9XG5cblxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBnbG9iYWxseVxuICBAaWYgbm90IG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJHZhbHVlKSB7XG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyB7XG4gICAgICAkdmFsdWU6IC16Zi1jbG9zZXN0LW5hbWVkLWJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIEByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgaW4gdGhlIGxvY2FsIGNvbmZpZyBtYXBcbiAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJG1hcCwgJHZhbHVlKSB7XG4gICAgLy8gSWYgaXQgZG9lcywganVzdCByZXR1cm4gdGhlIHZhbHVlXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICR2YWx1ZSk7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCBmaW5kIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGFuZCByZXR1cm4gdGhhdCB2YWx1ZVxuICBAZWxzZSB7XG4gICAgJGFuY2hvcjogbnVsbDtcbiAgICAkZm91bmQ6IGZhbHNlO1xuXG4gICAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnJlYWtwb2ludHMge1xuICAgICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJG1hcCwgJGtleSkge1xuICAgICAgICAgICRhbmNob3I6ICRrZXk7XG4gICAgICAgIH1cbiAgICAgICAgQGlmICRrZXkgPT0gJHZhbHVlIHtcbiAgICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJGFuY2hvcik7XG4gIH1cbn1cblxuJHNtYWxsLXVwOiAnJztcbiRzbWFsbC1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgc21hbGwpIHtcbiAgJHNtYWxsLXVwOiBzY3JlZW47XG4gICRzbWFsbC1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChzbWFsbCBvbmx5KX0nKTtcbn1cblxuJG1lZGl1bS11cDogJyc7XG4kbWVkaXVtLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBtZWRpdW0pIHtcbiAgJG1lZGl1bS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtKX0nKTtcbiAgJG1lZGl1bS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0gb25seSl9Jyk7XG59XG5cbiRsYXJnZS11cDogJyc7XG4kbGFyZ2Utb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIGxhcmdlKSB7XG4gICRsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UpfScpO1xuICAkbGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2Ugb25seSl9Jyk7XG59XG5cbiR4bGFyZ2UtdXA6ICcnO1xuJHhsYXJnZS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeGxhcmdlKSB7XG4gICR4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSl9Jyk7XG4gICR4bGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlIG9ubHkpfScpO1xufVxuXG4keHhsYXJnZS11cDogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHh4bGFyZ2UpIHtcbiAgJHh4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHh4bGFyZ2UpfScpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcmV2ZWFsXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgYSBtb2RhbC5cbi8vLyBAdHlwZSBDb2xvclxuJHJldmVhbC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHdpZHRoIG9mIGEgbW9kYWwsIHdpdGggbm8gY2xhc3MgYXBwbGllZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtd2lkdGg6IDYwMHB4ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXhpbXVtIHdpZHRoIG9mIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLW1heC13aWR0aDogJGdsb2JhbC13aWR0aCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYXJvdW5kIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIHotaW5kZXggZm9yIG1vZGFscy4gVGhlIG92ZXJsYXkgdXNlcyB0aGlzIHZhbHVlLCB3aGlsZSB0aGUgbW9kYWwgaXRzZWxmIHVzZXMgdGhpcyB2YWx1ZSBwbHVzIG9uZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtemluZGV4OiAxMDA1ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBtb2RhbCBvdmVybGF5cy5cbi8vLyBAdHlwZSBDb2xvclxuJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjQ1KSAhZGVmYXVsdDtcblxuXG4vLyBQbGFjZWhvbGRlciBzZWxlY3RvciBmb3IgbWVkaXVtLWFuZC11cCBtb2RhbHNcbi8vIFByZXZlbnRzIGR1cGxpY2F0ZSBDU1Mgd2hlbiBkZWZpbmluZyBtdWx0aXBsZSBSZXZlYWwgc2l6ZXNcbi8vIFRoaXMgc2hvdWxkIGJlIGluIHRoZSBzYW1lIGJyZWFrcG9pbnQgdGhlbiBgQG1peGluIHJldmVhbC1tb2RhbC13aWR0aGBcbkBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICVyZXZlYWwtY2VudGVyZWQge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cblxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgbW9kYWwgb3ZlcmxheS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgb3ZlcmxheS5cbkBtaXhpbiByZXZlYWwtb3ZlcmxheSgkYmFja2dyb3VuZDogJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQpIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICRyZXZlYWwtemluZGV4O1xuXG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4vLy8gQWRkcyBiYXNlIHN0eWxlcyBmb3IgYSBtb2RhbC5cbkBtaXhpbiByZXZlYWwtbW9kYWwtYmFzZSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgei1pbmRleDogJHJldmVhbC16aW5kZXggKyAxO1xuICAvLyBXb3JrYXJvdW5kIGFuZHJvaWQgYnJvd3NlciB6LWluZGV4IGJ1Z1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogJHJldmVhbC1wYWRkaW5nO1xuXG4gIGJvcmRlcjogJHJldmVhbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRyZXZlYWwtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmV2ZWFsLWJhY2tncm91bmQ7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHJvd3MgZG9uJ3QgaGF2ZSBhIG1pbi13aWR0aCBvbiB0aGVtXG4gIC5jb2x1bW4ge1xuICAgIG1pbi13aWR0aDogMDtcbiAgfVxuXG4gIC8vIFN0cmlwIG1hcmdpbnMgZnJvbSB0aGUgbGFzdCBpdGVtIGluIHRoZSBtb2RhbFxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBBZGp1c3RzIHRoZSB3aWR0aCBvZiBhIG1vZGFsLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggLSBXaWR0aCBvZiB0aGUgbW9kYWwuIEdlbmVyYWxseSBhIHBlcmNlbnRhZ2UuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXgtd2lkdGggWyRyZXZlYWwtbWF4LXdpZHRoXSAtIE1heGltdW0gd2lkdGggb2YgdGhlIG1vZGFsLlxuQG1peGluIHJldmVhbC1tb2RhbC13aWR0aChcbiAgJHdpZHRoOiAkcmV2ZWFsLXdpZHRoLFxuICAkbWF4LXdpZHRoOiAkcmV2ZWFsLW1heC13aWR0aFxuKSB7XG4gIC8vIEV4dGVuZHMgbXVzdCBiZSBtYWRlIG91dHNpZGUgb2YgYnJlYWtwb2ludHMgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBuZXdlciBTYXNzIHZlcnNpb25zIChsaWJzYXNzIHYzLjUpXG4gIEBleHRlbmQgJXJldmVhbC1jZW50ZXJlZDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICB3aWR0aDogJHdpZHRoO1xuICAgIG1heC13aWR0aDogJG1heC13aWR0aDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGZ1bGwtc2NyZWVuIG1vZGFsLCB3aGljaCBzdHJldGNoZXMgdGhlIGZ1bGwgd2lkdGggYW5kIGhlaWdodCBvZiB0aGUgd2luZG93LlxuQG1peGluIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuIHtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuXG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1yZXZlYWwge1xuXG4gIC8vLyBEaXNhYmxlcyB0aGUgc2Nyb2xsIHdoZW4gUmV2ZWFsIGlzIHNob3duIHRvIHByZXZlbnQgdGhlIGJhY2tncm91bmQgZnJvbSBzaGlmdGluZ1xuICBodG1sLmlzLXJldmVhbC1vcGVuIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuXG4gICAgJi56Zi1oYXMtc2Nyb2xsIHtcbiAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICB9XG5cbiAgICBib2R5IHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgfVxuICB9XG5cbiAgLy8gT3ZlcmxheVxuICAucmV2ZWFsLW92ZXJsYXkge1xuICAgIEBpbmNsdWRlIHJldmVhbC1vdmVybGF5O1xuICB9XG5cbiAgLy8gTW9kYWwgY29udGFpbmVyXG4gIC5yZXZlYWwge1xuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlO1xuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCgkcmV2ZWFsLXdpZHRoKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAxMDBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgIC8vIFJlbW92ZSBwYWRkaW5nXG4gICAgJi5jb2xsYXBzZSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC8vIFNpemluZyBjbGFzc2VzXG4gICAgJi50aW55ICB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCgzMCUpOyB9XG4gICAgJi5zbWFsbCB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCg1MCUpOyB9XG4gICAgJi5sYXJnZSB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCg5MCUpOyB9XG5cbiAgICAvLyBGdWxsLXNjcmVlbiBtb2RlXG4gICAgJi5mdWxsIHtcbiAgICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi16ZXJvLWJyZWFrcG9pbnQgb25seSkge1xuICAgICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWZ1bGxzY3JlZW47XG4gICAgfVxuXG4gICAgJi53aXRob3V0LW92ZXJsYXkge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgIH1cbiAgfVxufVxuIiwiQG1peGluIGZvdW5kYXRpb24tbm9ybWFsaXplKCkge1xuICAvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbiAgLy8gRG9jdW1lbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuXG4gIGh0bWwge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAxXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG4gIH1cblxuICAvLyBTZWN0aW9uc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cblxuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gIC8vIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG5cbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIG1hcmdpbjogMC42N2VtIDA7XG4gIH1cblxuICAvLyBHcm91cGluZyBjb250ZW50XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgLy8gMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG5cbiAgaHIge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLyAxXG4gICAgaGVpZ2h0OiAwOyAvLyAxXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIDJcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cblxuICBwcmUge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMWVtOyAvLyAyXG4gIH1cblxuICAvLyBUZXh0LWxldmVsIHNlbWFudGljc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cblxuICBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC8vIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gIC8vIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG5cbiAgYWJiclt0aXRsZV0ge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7IC8vIDFcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLy8gMlxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMlxuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cblxuICBiLFxuICBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgY29kZSxcbiAga2JkLFxuICBzYW1wIHtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8vIDFcbiAgICBmb250LXNpemU6IDFlbTsgLy8gMlxuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogODAlO1xuICB9XG5cbiAgLy8gUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gIC8vIGFsbCBicm93c2Vycy5cblxuICBzdWIsXG4gIHN1cCB7XG4gICAgZm9udC1zaXplOiA3NSU7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgfVxuXG4gIHN1YiB7XG4gICAgYm90dG9tOiAtMC4yNWVtO1xuICB9XG5cbiAgc3VwIHtcbiAgICB0b3A6IC0wLjVlbTtcbiAgfVxuXG4gIC8vIEVtYmVkZGVkIGNvbnRlbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuXG4gIGltZyB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICB9XG5cbiAgLy8gRm9ybXNcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuXG4gIGJ1dHRvbixcbiAgaW5wdXQsXG4gIG9wdGdyb3VwLFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMTAwJTsgLy8gMVxuICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAxXG4gICAgbWFyZ2luOiAwOyAvLyAyXG4gIH1cblxuICAvLyBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgLy8gMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cblxuICBidXR0b24sXG4gIGlucHV0IHsgLy8gMVxuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gIC8vIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cblxuICBidXR0b24sXG4gIHNlbGVjdCB7IC8vIDFcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG5cbiAgYnV0dG9uLFxuICBbdHlwZT1cImJ1dHRvblwiXSxcbiAgW3R5cGU9XCJyZXNldFwiXSxcbiAgW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cblxuICBidXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvLyBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG5cbiAgYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cblxuICBmaWVsZHNldCB7XG4gICAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICAvLyAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gIC8vICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIGxlZ2VuZCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxuICAgIGNvbG9yOiBpbmhlcml0OyAvLyAyXG4gICAgZGlzcGxheTogdGFibGU7IC8vIDFcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIDFcbiAgICBwYWRkaW5nOiAwOyAvLyAzXG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLy8gMVxuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cblxuICBwcm9ncmVzcyB7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG5cbiAgdGV4dGFyZWEge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICB9XG5cbiAgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gIC8vIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cblxuICBbdHlwZT1cImNoZWNrYm94XCJdLFxuICBbdHlwZT1cInJhZGlvXCJdIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG4gICAgcGFkZGluZzogMDsgLy8gMlxuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuXG4gIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuXG4gIFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gMVxuICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvLyAyXG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG5cbiAgW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gIC8vIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cblxuICA6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMVxuICAgIGZvbnQ6IGluaGVyaXQ7IC8vIDJcbiAgfVxuXG4gIC8vIEludGVyYWN0aXZlXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cblxuICBkZXRhaWxzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cblxuICBzdW1tYXJ5IHtcbiAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gIH1cblxuICAvLyBNaXNjXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTArLlxuXG4gIHRlbXBsYXRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG5cbiAgW2hpZGRlbl0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZSBuby1jb2xvci1saXRlcmFscywgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuXG4vLy8vXG4vLy8gQGdyb3VwIGdsb2JhbFxuLy8vL1xuXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xuXG4vLy8gRm9udCBzaXplIGF0dHJpYnV0ZSBhcHBsaWVkIHRvIGA8aHRtbD5gIGFuZCBgPGJvZHk+YC4gV2UgdXNlIDEwMCUgYnkgZGVmYXVsdCBzbyB0aGUgdmFsdWUgaXMgaW5oZXJpdGVkIGZyb20gdGhlIHVzZXIncyBicm93c2VyIHNldHRpbmdzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgd2lkdGggb2YgeW91ciBzaXRlLiBVc2VkIGJ5IHRoZSBncmlkIHRvIGRldGVybWluZSByb3cgd2lkdGguXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxMjAwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIGFsbCB0eXBlLiBgJGdsb2JhbC1saW5laGVpZ2h0YCBpcyAyNHB4IHdoaWxlIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgaXMgMTZweFxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1saW5laGVpZ2h0OiAxLjUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcnMgdXNlZCBmb3IgYnV0dG9ucywgY2FsbG91dHMsIGxpbmtzLCBldGMuIFRoZXJlIG11c3QgYWx3YXlzIGJlIGEgY29sb3IgY2FsbGVkIGBwcmltYXJ5YC5cbi8vLyBAdHlwZSBNYXBcbiRmb3VuZGF0aW9uLXBhbGV0dGU6IChcbiAgcHJpbWFyeTogIzE3NzliYSxcbiAgc2Vjb25kYXJ5OiAjNzY3Njc2LFxuICBzdWNjZXNzOiAjM2FkYjc2LFxuICB3YXJuaW5nOiAjZmZhZTAwLFxuICBhbGVydDogI2NjNGIzNyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBsaWdodCBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbGlnaHQtZ3JheTogI2U2ZTZlNiAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIG1lZGl1bSBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVkaXVtLWdyYXk6ICNjYWNhY2EgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBkYXJrIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkYXJrLWdyYXk6ICM4YThhOGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBibGFjayB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsYWNrOiAjMGEwYTBhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3Igd2hpdGUgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiR3aGl0ZTogI2ZlZmVmZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgTGlzdFxuJGJvZHktZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuLy8vIFNldCB0byBgdHJ1ZWAgdG8gZW5hYmxlIGFudGlhbGlhc2VkIHR5cGUsIHVzaW5nIHRoZSBgLXdlYmtpdC1mb250LXNtb290aGluZ2AgYW5kIGAtbW96LW9zeC1mb250LXNtb290aGluZ2AgQ1NTIHByb3BlcnRpZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJvZHktYW50aWFsaWFzZWQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgbWFyZ2luIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwYWRkaW5nIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgcG9zaXRpb25pbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcG9zaXRpb246IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3Igbm9ybWFsIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3IgYm9sZCB0eXBlLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIGVsZW1lbnRzIHRoYXQgaGF2ZSBhIGJvcmRlciByYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXJhZGl1czogMCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgbWVudSBzdHlsZXMuIENhbiBiZSBvdmVyd3JpdHRlbiBhdCBpbmRpdmlkdWFsIG1lbnUgY29tcG9uZW50IGxldmVsLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1tZW51LXBhZGRpbmc6IDAuN3JlbSAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBtZW51IHN0eWxlcy4gTmVzdGVkIG1hcmdpbiBmb3Igc3VibWVudS5cbiRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gU2V0cyB0aGUgdGV4dCBkaXJlY3Rpb24gb2YgdGhlIENTUy4gQ2FuIGJlIGVpdGhlciBgbHRyYCBvciBgcnRsYC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHIgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVzIGZsZXhib3ggZm9yIGNvbXBvbmVudHMgdGhhdCBzdXBwb3J0IGl0LlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRnbG9iYWwtZmxleGJveDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZWQgcmVzcG9uc2l2ZSBicmVha3BvaW50cyBmb3IgcHJvdG90eXBlcyBpZiBhcHBsaWNhYmxlXG4vLy8gQHR5cGUgQm9vbGVhblxuJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gQnV0dG9uIGN1cnNvcidzIHZhbHVlLCBgYXV0b2AgYnkgZGVmYXVsdFxuLy8vIEB0eXBlIEtleXdvcmRcbiRnbG9iYWwtYnV0dG9uLWN1cnNvcjogYXV0byAhZGVmYXVsdDtcblxuQGlmIG5vdCBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSB7XG4gIEBlcnJvciAnSW4gJGZvdW5kYXRpb24tcGFsZXR0ZSwgeW91IG11c3QgaGF2ZSBhIGNvbG9yIG5hbWVkIFwicHJpbWFyeVwiLic7XG59XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciB0ZXh0IGRpcmVjdGlvblxuJGdsb2JhbC1sZWZ0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgcmlnaHQsIGxlZnQpO1xuJGdsb2JhbC1yaWdodDogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGxlZnQsIHJpZ2h0KTtcblxuLy8gSW50ZXJuYWwgdmFyaWFibGUgdGhhdCBjb250YWlucyB0aGUgZmxleCBqdXN0aWZ5aW5nIG9wdGlvbnNcbiQtemYtZmxleC1qdXN0aWZ5OiAtemYtZmxleC1qdXN0aWZ5KCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24pO1xuXG4vLy8gR2xvYmFsIHRvbGVyYW5jZSBmb3IgY29sb3IgcGljayBjb250cmFzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2U6IDAgIWRlZmF1bHQ7XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciBjb2xvcnNcbkBpbmNsdWRlIGFkZC1mb3VuZGF0aW9uLWNvbG9ycztcblxuQG1peGluIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcyB7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbm9ybWFsaXplO1xuXG4gIC8vIFRoZXNlIHN0eWxlcyBhcmUgYXBwbGllZCB0byBhIDxtZXRhPiB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdFxuICAuZm91bmRhdGlvbi1tcSB7XG4gICAgZm9udC1mYW1pbHk6ICcjey16Zi1icC1zZXJpYWxpemUoJGJyZWFrcG9pbnRzKX0nO1xuICB9XG5cbiAgaHRtbCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gU2V0IGJveC1zaXppbmcgZ2xvYmFsbHkgdG8gaGFuZGxlIHBhZGRpbmcgYW5kIGJvcmRlciB3aWR0aHNcbiAgKixcbiAgKjo6YmVmb3JlLFxuICAqOjphZnRlciB7XG4gICAgYm94LXNpemluZzogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIERlZmF1bHQgYm9keSBzdHlsZXNcbiAgYm9keSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBiYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodDtcbiAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcblxuICAgIEBpZiAoJGJvZHktYW50aWFsaWFzZWQpIHtcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgICB9XG4gIH1cblxuICBpbWcge1xuICAgIC8vIEdldCByaWQgb2YgZ2FwIHVuZGVyIGltYWdlcyBieSBtYWtpbmcgdGhlbSBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGJ5IGRlZmF1bHRcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgIC8vIEdyaWQgZGVmYXVsdHMgdG8gZ2V0IGltYWdlcyBhbmQgZW1iZWRzIHRvIHdvcmsgcHJvcGVybHlcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7XG4gIH1cblxuICAvLyBNYWtlIHN1cmUgdGV4dGFyZWEgdGFrZXMgb24gaGVpZ2h0IGF1dG9tYXRpY2FsbHlcbiAgdGV4dGFyZWEge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gTWFrZSBzZWxlY3QgZWxlbWVudHMgYXJlIDEwMCUgd2lkdGggYnkgZGVmYXVsdFxuICBzZWxlY3Qge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAvLyBTdHlsZXMgR29vZ2xlIE1hcHMgYW5kIE1hcFF1ZXN0IGVtYmVkcyBwcm9wZXJseVxuICAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLWlkc1xuICAubWFwX2NhbnZhcyxcbiAgLm1xYS1kaXNwbGF5IHtcbiAgICBpbWcsXG4gICAgZW1iZWQsXG4gICAgb2JqZWN0IHtcbiAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IDxidXR0b24+IHN0eWxlcyBjcmVhdGVkIGJ5IG1vc3QgYnJvd3NlcnNcbiAgYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjdXJzb3I6ICRnbG9iYWwtYnV0dG9uLWN1cnNvcjtcbiAgfVxuXG4gIC8vIFByZXZlbnQgdGV4dCBvdmVyZmxvdyBvbiBwcmVcbiAgcHJlIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuXG4gIC8vIE1ha2UgcmVzZXQgaW5oZXJpdCBmb250LWZhbWlseSBpbnN0ZWFkIG9mIHNldHRpbmdzIHNhbnMtc2VyaWZcbiAgYnV0dG9uLFxuICBpbnB1dCxcbiAgb3B0Z3JvdXAsXG4gIHNlbGVjdCxcbiAgdGV4dGFyZWEge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gSW50ZXJuYWwgY2xhc3NlcyB0byBzaG93L2hpZGUgZWxlbWVudHMgaW4gSmF2YVNjcmlwdFxuICAuaXMtdmlzaWJsZSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5pcy1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBDcmVhdGVzIGFuIGlubmVyIGJveC1zaGFkb3cgZm9yIG9ubHkgb25lIHNpZGVcbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpZGUgLSBTaWRlIHRoZSBzaGFkb3cgaXMgc3VwcG9zZWQgdG8gYXBwZWFyLiBDYW4gYmUgYHRvcGAsIGBsZWZ0YCwgYHJpZ2h0YCBvciBgYm90dG9tYC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNpemUgLSBXaWR0aCBmb3IgdGhlIHRhcmdldCBzaWRlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIG9mIHRoZSBzaGFkb3cuXG5AbWl4aW4gaW5uZXItc2lkZS1zaGFkb3coXG4gICRzaWRlOiBib3R0b20sXG4gICRzaXplOiAyMHB4LFxuICAkY29sb3I6IHJnYmEoJGJsYWNrLCAwLjI1KVxuKSB7XG5cbiAgJGhlbHBlcjogcm91bmQoJHNpemUgKiAwLjY1KTtcblxuICBAaWYgKCRzaWRlID09IHRvcCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgJGhlbHBlciAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSBsZWZ0KSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgJGhlbHBlciAwICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IHJpZ2h0KSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgKC0xKSokaGVscGVyIDAgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gYm90dG9tKSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAoLTEpKiRoZWxwZXIgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIENTUyB0cmlhbmdsZSwgd2hpY2ggY2FuIGJlIHVzZWQgZm9yIGRyb3Bkb3duIGFycm93cywgZHJvcGRvd24gcGlwcywgYW5kIG1vcmUuIFVzZSB0aGlzIG1peGluIGluc2lkZSBhIGAmOjpiZWZvcmVgIG9yIGAmOjphZnRlcmAgc2VsZWN0b3IsIHRvIGF0dGFjaCB0aGUgdHJpYW5nbGUgdG8gYW4gZXhpc3RpbmcgZWxlbWVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdHJpYW5nbGUtc2l6ZSAtIFdpZHRoIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkdHJpYW5nbGUtY29sb3IgLSBDb2xvciBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdHJpYW5nbGUtZGlyZWN0aW9uIC0gRGlyZWN0aW9uIHRoZSB0cmlhbmdsZSBwb2ludHMuIENhbiBiZSBgdXBgLCBgcmlnaHRgLCBgZG93bmAsIG9yIGBsZWZ0YC5cbkBtaXhpbiBjc3MtdHJpYW5nbGUoXG4gICR0cmlhbmdsZS1zaXplLFxuICAkdHJpYW5nbGUtY29sb3IsXG4gICR0cmlhbmdsZS1kaXJlY3Rpb25cbikge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcblxuICBib3JkZXI6IGluc2V0ICR0cmlhbmdsZS1zaXplO1xuXG4gIGNvbnRlbnQ6ICcnO1xuXG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBkb3duKSB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gdXApIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSByaWdodCkge1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGxlZnQpIHtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgbWVudSBpY29uIHdpdGggYSBzZXQgd2lkdGgsIGhlaWdodCwgbnVtYmVyIG9mIGJhcnMsIGFuZCBjb2xvcnMuIFRoZSBtaXhpbiB1c2VzIHRoZSBoZWlnaHQgb2YgdGhlIGljb24gYW5kIHRoZSB3ZWlnaHQgb2YgdGhlIGJhcnMgdG8gZGV0ZXJtaW5lIHNwYWNpbmcuIDxkaXYgY2xhc3M9XCJkb2NzLWV4YW1wbGUtYnVyZ2VyXCI+PC9kaXY+XG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvci1ob3ZlciBbJGRhcmstZ3JheV0gLSBDb2xvciB0byB1c2Ugd2hlbiB0aGUgaWNvbiBpcyBob3ZlcmVkIG92ZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCBbMjBweF0gLSBXaWR0aCBvZiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGhlaWdodCBbMTZweF0gLSBIZWlnaHQgb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3ZWlnaHQgWzJweF0gLSBIZWlnaHQgb2YgaW5kaXZpZHVhbCBiYXJzIGluIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFycyBbM10gLSBOdW1iZXIgb2YgYmFycyBpbiB0aGUgaWNvbi5cbkBtaXhpbiBoYW1idXJnZXIoXG4gICRjb2xvcjogJGJsYWNrLFxuICAkY29sb3ItaG92ZXI6ICRkYXJrLWdyYXksXG4gICR3aWR0aDogMjBweCxcbiAgJGhlaWdodDogMTZweCxcbiAgJHdlaWdodDogMnB4LFxuICAkYmFyczogM1xuKSB7XG4gIC8vIGJveC1zaGFkb3cgQ1NTIG91dHB1dFxuICAkc2hhZG93OiAoKTtcbiAgJGhvdmVyLXNoYWRvdzogKCk7XG5cbiAgLy8gU3BhY2luZyBiZXR3ZWVuIGJhcnMgaXMgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgdG90YWwgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIGVhY2ggYmFyXG4gICRzcGFjaW5nOiAoJGhlaWdodCAtICgkd2VpZ2h0ICogJGJhcnMpKSAvICgkYmFycyAtIDEpO1xuXG4gIEBpZiB1bml0KCRzcGFjaW5nKSA9PSAncHgnIHtcbiAgICAkc3BhY2luZzogZmxvb3IoJHNwYWNpbmcpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAkc2hhZG93OiBhcHBlbmQoJHNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLCBjb21tYSk7XG4gIH1cblxuICAvLyBJY29uIGNvbnRhaW5lclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgLy8gSWNvbiBiYXJzXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICR3ZWlnaHQ7XG5cbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgYm94LXNoYWRvdzogJHNoYWRvdztcblxuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgQGlmICRjb2xvci1ob3ZlciB7XG4gICAgLy8gR2VuZXJhdGUgQ1NTXG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICAgJGhvdmVyLXNoYWRvdzogYXBwZW5kKCRob3Zlci1zaGFkb3csIDAgJG9mZnNldCAwICRjb2xvci1ob3ZlciwgY29tbWEpO1xuICAgIH1cblxuICAgICY6aG92ZXI6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ob3ZlcjtcbiAgICAgIGJveC1zaGFkb3c6ICRob3Zlci1zaGFkb3c7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGEgZG93bndhcmQtZmFjaW5nIHRyaWFuZ2xlIGFzIGEgYmFja2dyb3VuZCBpbWFnZSB0byBhbiBlbGVtZW50LiBUaGUgaW1hZ2UgaXMgZm9ybWF0dGVkIGFzIGFuIFNWRywgbWFraW5nIGl0IGVhc3kgdG8gY2hhbmdlIHRoZSBjb2xvci4gQmVjYXVzZSBJbnRlcm5ldCBFeHBsb3JlciBkb2Vzbid0IHN1cHBvcnQgZW5jb2RlZCBTVkdzIGFzIGJhY2tncm91bmQgaW1hZ2VzLCBhIFBORyBmYWxsYmFjayBpcyBhbHNvIGluY2x1ZGVkLlxuLy8vIFRoZXJlIGFyZSB0d28gUE5HIGZhbGxiYWNrczogYSBibGFjayB0cmlhbmdsZSBhbmQgYSB3aGl0ZSB0cmlhbmdsZS4gVGhlIG9uZSB1c2VkIGRlcGVuZHMgb24gdGhlIGxpZ2h0bmVzcyBvZiB0aGUgaW5wdXQgY29sb3IuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSB0cmlhbmdsZS5cbkBtaXhpbiBiYWNrZ3JvdW5kLXRyaWFuZ2xlKCRjb2xvcjogJGJsYWNrKSB7XG4gICRyZ2I6ICdyZ2IlMjgje3JvdW5kKHJlZCgkY29sb3IpKX0sICN7cm91bmQoZ3JlZW4oJGNvbG9yKSl9LCAje3JvdW5kKGJsdWUoJGNvbG9yKSl9JTI5JztcblxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgdmVyc2lvbj0nMS4xJyB3aWR0aD0nMzInIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAzMiAyNCc+PHBvbHlnb24gcG9pbnRzPScwLDAgMzIsMCAxNiwyNCcgc3R5bGU9J2ZpbGw6ICN7JHJnYn0nPjwvcG9seWdvbj48L3N2Zz5cIik7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDowXFwwKSB7XG4gICAgQGlmIGxpZ2h0bmVzcygkY29sb3IpIDwgNjAlIHtcbiAgICAgIC8vIFdoaXRlIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBSXBKUkVGVWVOckVrY2tOZ0RBTUJCZlJrRXQwT2JSQkJkc0dYVURnbVFmSzRYaEgybThjelFBQXkyN1IzdHN3NFFmZTJ4OHVPTzZvWUxiNkdsT29yM0dGK3N3VVJBT21VSitSd3RFSnM5V3ZUR0VZeEJYcUkxTVFBWmhDZlVRS1J6RE1WaitUd3JBSVY2anZTVUVrWUFyMUxTa2N5VEJiL1YrS1lmWDd4QWV1c3Ezc0xEdEdIM2tFR0FDUFdJZmxOWmZoUlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gQmxhY2sgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFNQkpSRUZVZU5yRWxsc09oQ0FNUlZzekM5SWx6VTdLQ21WSFRKc29NV1lNVXRweXY5QmdidVhRQjVaU2RnQllZWTR5Y2dCaXZrOEtZRnNRTWZNaVRUQlA0bzNuVXpDS3pPYWJMSmJMeTIvZzMxZXZHa0FnaW5SNC9aZWdLSDVxWDNiSkNzY0EzdDB4M2tnTzV0UUZ5aGhGZjUweFJxRkxieU1VTkpRemd5akdTL3dnQ3B2S3FrUkJwdVdyRTRWOWQrMUU0ZFBVWHFJZzEwN1NRT0UvMkRSUXhNd1REeWdJSW5WREVUOVQzbENvai82ai9WQ21HalpPbDJsS3BaOEFBd0RRUDd6SWltREdGUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQXBwbGllcyB0aGUgbWljcm8gY2xlYXJmaXggaGFjayBwb3B1bGFyaXplZCBieSBOaWNvbGFzIEdhbGxhZ2hlci4gSW5jbHVkZSB0aGlzIG1peGluIG9uIGEgY29udGFpbmVyIGlmIGl0cyBjaGlsZHJlbiBhcmUgYWxsIGZsb2F0ZWQsIHRvIGdpdmUgdGhlIGNvbnRhaW5lciBhIHByb3BlciBoZWlnaHQuXG4vLy8gVGhlIGNsZWFyZml4IGlzIGF1Z21lbnRlZCB3aXRoIHNwZWNpZmljIHN0eWxlcyB0byBwcmV2ZW50IGJvcmRlcnMgaW4gZmxleGJveCBlbnZpcm9ubWVudHNcbi8vLyBAbGluayBodHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vbWljcm8tY2xlYXJmaXgtaGFjay8gTWljcm8gQ2xlYXJmaXggSGFja1xuLy8vIEBsaW5rIGh0dHA6Ly9kYW5pc2FkZXNpZ25lci5jb20vYmxvZy9mbGV4Ym94LWNsZWFyLWZpeC1wc2V1ZG8tZWxlbWVudHMvIEZsZXhib3ggZml4XG5AbWl4aW4gY2xlYXJmaXgge1xuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICBvcmRlcjogMTtcbiAgICB9XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuLy8vIEFkZHMgQ1NTIGZvciBhIFwicXVhbnRpdHkgcXVlcnlcIiBzZWxlY3RvciB0aGF0IGF1dG9tYXRpY2FsbHkgc2l6ZXMgZWxlbWVudHMgYmFzZWQgb24gaG93IG1hbnkgdGhlcmUgYXJlIGluc2lkZSBhIGNvbnRhaW5lci5cbi8vLyBAbGluayBodHRwOi8vYWxpc3RhcGFydC5jb20vYXJ0aWNsZS9xdWFudGl0eS1xdWVyaWVzLWZvci1jc3MgUXVhbnRpdHkgUXVlcmllcyBmb3IgQ1NTXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heCAtIE1heGltdW0gbnVtYmVyIG9mIGl0ZW1zIHRvIGRldGVjdC4gVGhlIGhpZ2hlciB0aGlzIG51bWJlciBpcywgdGhlIG1vcmUgQ1NTIHRoYXQncyByZXF1aXJlZCB0byBjb3ZlciBlYWNoIG51bWJlciBvZiBpdGVtcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRlbGVtIFtsaV0gLSBUYWcgdG8gdXNlIGZvciBzaWJsaW5nIHNlbGVjdG9ycy5cbkBtaXhpbiBhdXRvLXdpZHRoKCRtYXgsICRlbGVtOiBsaSkge1xuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRtYXgge1xuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkLFxuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkIH4gI3skZWxlbX0ge1xuICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoMSAvICRpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFJlbW92ZXMgdGhlIGZvY3VzIHJpbmcgYXJvdW5kIGFuIGVsZW1lbnQgd2hlbiBhIG1vdXNlIGlucHV0IGlzIGRldGVjdGVkLlxuQG1peGluIGRpc2FibGUtbW91c2Utb3V0bGluZSB7XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAmIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG59XG5cbi8vLyBNYWtlcyBhbiBlbGVtZW50IHZpc3VhbGx5IGhpZGRlbiwgYnV0IHN0aWxsIGFjY2Vzc2libGUgdG8ga2V5Ym9hcmRzIGFuZCBhc3Npc3RpdmUgZGV2aWNlcy5cbi8vLyBAbGluayBodHRwOi8vc25vb2suY2EvYXJjaGl2ZXMvaHRtbF9hbmRfY3NzL2hpZGluZy1jb250ZW50LWZvci1hY2Nlc3NpYmlsaXR5IEhpZGluZyBDb250ZW50IGZvciBBY2Nlc3NpYmlsaXR5XG4vLy8gQGxpbmsgaHR0cDovL2h1Z29naXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLDAsMCwwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLy8gUmV2ZXJzZXMgdGhlIENTUyBvdXRwdXQgY3JlYXRlZCBieSB0aGUgYGVsZW1lbnQtaW52aXNpYmxlKClgIG1peGluLlxuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlLW9mZiB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGNsaXA6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG5cbi8vLyBWZXJ0aWNhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIHZlcnRpY2FsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLy8vIEhvcml6b250YWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBob3Jpem9udGFsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbi8vLyBBYnNvbHV0ZWx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGFic29sdXRlLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi8vLyBJdGVyYXRlcyB0aHJvdWdoIGJyZWFrcG9pbnRzIGRlZmluZWQgaW4gYCRicmVha3BvaW50LWNsYXNzZXNgIGFuZCBwcmludHMgdGhlIENTUyBpbnNpZGUgdGhlIG1peGluIGF0IGVhY2ggYnJlYWtwb2ludCdzIG1lZGlhIHF1ZXJ5LiBVc2UgdGhpcyB3aXRoIHRoZSBncmlkLCBvciBhbnkgb3RoZXIgY29tcG9uZW50IHRoYXQgaGFzIHJlc3BvbnNpdmUgY2xhc3Nlcy5cbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHNtYWxsIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIHNraXAgdGhlIGBzbWFsbGAgYnJlYWtwb2ludC4gVXNlIHRoaXMgd2l0aCBjb21wb25lbnRzIHRoYXQgZG9uJ3QgcHJlZml4IGNsYXNzZXMgd2l0aCBgc21hbGwtYCwgb25seSBgbWVkaXVtLWAgYW5kIHVwLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIGl0ZXJhdGUgb3ZlciBicmVha3BvaW50cyB3aXRob3V0IGRvaW5nIHRoZSBtZWRpYSBxdWVyeSBpdHNlbGYuIFVzZWZ1bCBmb3IgbW9yZSBjb21wbGV4IG1lZGlhIHF1ZXJ5IGdlbmVyYXRpb24gYXMgaW4gdGhlIG1hcmdpbiBncmlkLlxuQG1peGluIC16Zi1lYWNoLWJyZWFrcG9pbnQoJHNtYWxsOiB0cnVlLCAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHM6IHRydWUpIHtcbiAgJGxpc3Q6ICRicmVha3BvaW50LWNsYXNzZXM7XG5cbiAgQGlmIG5vdCAkc21hbGwge1xuICAgICRsaXN0OiBzbC1yZW1vdmUoJGxpc3QsICQtemYtemVyby1icmVha3BvaW50KTtcbiAgfVxuXG4gIEBlYWNoICRuYW1lIGluICRsaXN0IHtcbiAgICAkb2xkLXpmLXNpemU6IG51bGw7XG4gICAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIHtcbiAgICAgICRvbGQtemYtc2l6ZTogJC16Zi1zaXplO1xuICAgIH1cbiAgICAkLXpmLXNpemU6ICRuYW1lICFnbG9iYWw7XG5cbiAgICBAaWYgJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgICQtemYtc2l6ZTogJG9sZC16Zi1zaXplICFnbG9iYWw7XG4gIH1cbn1cblxuLy8vIEdlbmVyYXRlIHRoZSBgQGNvbnRlbnRgIHBhc3NlZCB0byB0aGUgbWl4aW4gd2l0aCBhIHZhbHVlIGAkLXpmLWJwLXZhbHVlYCByZWxhdGVkIHRvIGEgYnJlYWtwb2ludCwgZGVwZW5kaW5nIG9uIHRoZSBgJG5hbWVgIHBhcmFtZXRlcjpcbi8vLyAtIEZvciBhIHNpbmdsZSB2YWx1ZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoaXMgdmFsdWUuXG4vLy8gLSBGb3IgYSBicmVha3BvaW50IG5hbWUsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlIGluIGAkbWFwYC5cbi8vLyAtIEZvciBcImF1dG9cIiwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgIGFuZCBpcyBwYXNzZWQgdG8gYEBjb250ZW50YCwgd2hpY2ggaXMgbWFkZSByZXNwb25zaXZlIGZvciBlYWNoIGJyZWFrcG9pbnQgb2YgYCRtYXBgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfEFycmF5fEtleXdvcmR9ICRuYW1lIFthdXRvXSAtIFNpbmdsZSB2YWx1ZSwgYnJlYWtwb2ludCBuYW1lLCBvciBsaXN0IG9mIGJyZWFrcG9pbnQgbmFtZXMgdG8gdXNlLiBcImF1dG9cIiBieSBkZWZhdWx0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIE1hcCBvZiBicmVha3BvaW50cyBhbmQgdmFsdWVzIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuXG5AbWl4aW4gLXpmLWJyZWFrcG9pbnQtdmFsdWUoXG4gICRuYW1lOiBhdXRvLFxuICAkbWFwOiBudWxsXG4pIHtcbiAgQGlmICRuYW1lID09IGF1dG8gYW5kIHR5cGUtb2YoJG1hcCkgPT0gJ21hcCcge1xuICAgIC8vIFwiYXV0b1wiXG4gICAgQGVhY2ggJGssICR2IGluICRtYXAge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkaykge1xuICAgICAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkdiwgJG1hcCkge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBicmVha3BvaW50IG5hbWVcbiAgICBAaWYgdHlwZS1vZigkbmFtZSkgPT0gJ3N0cmluZycge1xuICAgICAgJG5hbWU6IC16Zi1nZXQtYnAtdmFsKCRtYXAsICRuYW1lKTtcbiAgICB9XG5cbiAgICAvLyBicmVha3BvaW50IHZhbHVlXG4gICAgJC16Zi1icC12YWx1ZTogJG5hbWUgIWdsb2JhbDtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLyBNYXJnaW4gR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktYmFzZS1ncmlkLWNsYXNzZXMge1xuXG4gIC8vIEdyaWQgQ29udGFpbmVyXG4gIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXI7XG5cbiAgICAmLmZsdWlkIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyKDEwMCUpO1xuICAgIH1cblxuICAgICYuZnVsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcigxMDAlLCAwKTtcbiAgICB9XG4gIH1cblxuICAvLyBCYXNlIGdyaWQgc3R5bGVzXG4gIC5ncmlkLXgge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQ7XG4gIH1cblxuICAuY2VsbCB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKCk7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoJGdyaWQtY29sdW1ucywgZmFsc2UsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG5cbiAgICAmLmF1dG8ge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKGF1dG8pO1xuICAgIH1cblxuICAgICYuc2hyaW5rIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShzaHJpbmspO1xuICAgIH1cblxuICB9XG4gIC5ncmlkLXgge1xuICAgID4gLmF1dG8ge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoYXV0bywgZmFsc2UpO1xuICAgIH1cblxuICAgID4gLnNocmluayB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhzaHJpbmssIGZhbHNlKTtcbiAgICB9XG4gIH1cblxuICAvLyBBdXRvIHdpZHRoXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgLy8gVGhpcyBpcyBhIGJpdCBvZiBhIGhhY2svd29ya2Fyb3VuZCwgc2VlIHRoZXNlIGlzc3VlcyAmIFBScyBmb3IgdGhlIGJhY2tzdG9yeTpcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMDI0NFxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS96dXJiL2ZvdW5kYXRpb24tc2l0ZXMvcHVsbC8xMDIyMiBhbmRcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL3B1bGwvMTAxNjRcbiAgICAuZ3JpZC14IHtcbiAgICAgICRzdHI6IFwiPiAuI3skLXpmLXNpemV9LXNocmluaywgPiAuI3skLXpmLXNpemV9LWZ1bGxcIjtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgICRzdHI6ICRzdHIgKyBcIiwgPiAuI3skLXpmLXNpemV9LSN7JGl9XCJcbiAgICAgIH1cbiAgICAgICN7JHN0cn0ge1xuICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgLy8gUmVzcG9uc2l2ZSBcImF1dG9cIiBtb2RpZmllclxuICAgIEBpZiBub3QoJC16Zi1zaXplID09IHNtYWxsKSB7XG4gICAgICAuZ3JpZC14ID4gLiN7JC16Zi1zaXplfS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKGF1dG8pO1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJS14eS1jZWxsLWJhc2Utc2hyaW5rLWhvcml6b250YWwtI3skLXpmLXNpemV9IHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShzaHJpbmspO1xuICAgIH1cblxuICAgIC8vIFJlc3BvbnNpdmUgXCJzaHJpbmtcIiBtb2RpZmllclxuICAgIEBpZiBub3QoJC16Zi1zaXplID09IHNtYWxsKSB7XG4gICAgICAuZ3JpZC14ID4gLiN7JC16Zi1zaXplfS1zaHJpbmsge1xuICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay1ob3Jpem9udGFsLSN7JC16Zi1zaXplfTtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoc2hyaW5rLCBmYWxzZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSB3aWR0aCBtb2RpZmllcnNcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgLmdyaWQteCA+IC4jeyQtemYtc2l6ZX0tI3skaX0ge1xuICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay1ob3Jpem9udGFsLSN7JC16Zi1zaXplfTtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoJGksIGZhbHNlLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IHdpZHRoIHdoZW4gdXNpbmcgYC5ncmlkLW1hcmdpbi14YCBub3Qgb24gYC5ncmlkLXhgXG4gIC5ncmlkLW1hcmdpbi14Om5vdCguZ3JpZC14KSA+IC5jZWxsIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gIC8vIFJlc2V0IGhlaWdodCB3aGVuIHVzaW5nIGAuZ3JpZC1tYXJnaW4teWAgbm90IG9uIGAuZ3JpZC15YFxuICAuZ3JpZC1tYXJnaW4teTpub3QoLmdyaWQteSkgPiAuY2VsbCB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5cbkBtaXhpbiAteHktYnJlYWtwb2ludC1jZWxsLWNsYXNzZXMoJGNsYXNzLWJyZWFrcG9pbnQsICRndXR0ZXItYnJlYWtwb2ludCwgJHZlcnRpY2FsKSB7XG4gICRwcmVmaXg6IGlmKCRjbGFzcy1icmVha3BvaW50ID09ICQtemYtemVyby1icmVha3BvaW50LCAnJywgJyN7JGNsYXNzLWJyZWFrcG9pbnR9LScpO1xuICA+IC4jeyRwcmVmaXh9YXV0byB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoYXV0bywgZmFsc2UsICRicmVha3BvaW50OiAkZ3V0dGVyLWJyZWFrcG9pbnQsICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgfVxuXG4gID4gLiN7JHByZWZpeH1zaHJpbmsge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKHNocmluaywgZmFsc2UsICRicmVha3BvaW50OiAkZ3V0dGVyLWJyZWFrcG9pbnQsICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICRjbGFzc25hbWU6IGlmKCR2ZXJ0aWNhbCwgJy4jeyRjbGFzcy1icmVha3BvaW50fS0jeyRpfScsICcuI3skY2xhc3MtYnJlYWtwb2ludH0tI3skaX0nKTtcblxuICAgID4gI3skY2xhc3NuYW1lfSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkaSwgZmFsc2UsICRicmVha3BvaW50OiAkZ3V0dGVyLWJyZWFrcG9pbnQsICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWFyZ2luIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LW1hcmdpbi1ncmlkLWNsYXNzZXMoXG4gICRndXR0ZXItcG9zaXRpb246IGxlZnQgcmlnaHQsXG4gICR2ZXJ0aWNhbDogZmFsc2UsXG4gICR3cmFwcGluZy1zZWxlY3RvcjogJy5ncmlkLW1hcmdpbi14J1xuKXtcbiAgI3skd3JhcHBpbmctc2VsZWN0b3J9IHtcbiAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRuZWdhdGl2ZTogdHJ1ZSwgJGd1dHRlci1wb3NpdGlvbjogJGd1dHRlci1wb3NpdGlvbik7XG5cbiAgICAvLyBCYXNlIGNlbGwgc3R5bGVzXG4gICAgPiAuY2VsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkdmVydGljYWw6ICR2ZXJ0aWNhbCk7XG4gICAgfVxuXG4gICAgLy8gYmFzZSBzdHlsZXMgbmVlZCB0byBhbGwgYmUgYmVmb3JlIHRoZSBhdXRvIGFuZCBzaHJpbmsgc3R5bGVzXG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAgIEBpZih0eXBlLW9mKCRncmlkLW1hcmdpbi1ndXR0ZXJzKSA9PSAnbWFwJyBhbmQgbWFwLWhhcy1rZXkoJGdyaWQtbWFyZ2luLWd1dHRlcnMsICQtemYtc2l6ZSkgYW5kICQtemYtc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAgICAgICA+IC5jZWxsIHtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkYnJlYWtwb2ludDogJC16Zi1zaXplLCAkdmVydGljYWw6ICR2ZXJ0aWNhbCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuXG4gICAgICAvLyBUaGlzIGlzIHB1cmVseSBmb3IgcmVzcG9uc2l2ZSBndXR0ZXJzIC0gdGhlIG1hcmdpbiBncmlkIGhhcyB0byBnbyBiYWNrIGFuZCBhZGp1c3Qgd2lkdGhzIChvciBoZWlnaHRzKVxuICAgICAgLy8gZm9yIGFsbCBwcmlvciBicmVha3BvaW50cy5cbiAgICAgIC8vIEFzIHRoZWlyIGd1dHRlciBpcyBkZWZpbmVkIHdpdGggdGhlaXIgd2lkdGgvaGVpZ2h0LCBldmVuIGJyZWFrcG9pbnQgd2l0aG91dCBhIG5ldyBtYXJnaW4gbXVzdCBiZVxuICAgICAgLy8gZ2VuZXJhdGVkIHRvIG5vdCBoYXZpbmcgdGhlaXIgd2lkdGgvaGVpZ2h0IG92ZXJyaWRlZCBieSByZS1hZGp1c3RlZCBzbWFsbGVyIGJyZWFrcG9pbnRzLlxuICAgICAgQGlmKHR5cGUtb2YoJGdyaWQtbWFyZ2luLWd1dHRlcnMpID09ICdtYXAnIGFuZCBtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplKSkge1xuICAgICAgICBAZWFjaCAkYnAgaW4gLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigkLXpmLXNpemUpIHtcbiAgICAgICAgICBAaW5jbHVkZSAteHktYnJlYWtwb2ludC1jZWxsLWNsYXNzZXMoJGJwLCAkLXpmLXNpemUsICR2ZXJ0aWNhbCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgLXh5LWJyZWFrcG9pbnQtY2VsbC1jbGFzc2VzKCQtemYtc2l6ZSwgJC16Zi1zaXplLCAkdmVydGljYWwpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBQYWRkaW5nIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LXBhZGRpbmctZ3JpZC1jbGFzc2VzIHtcbiAgLmdyaWQtcGFkZGluZy14IHtcblxuICAgIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3IgbmVzdGVkIGdyaWRzXG4gICAgLmdyaWQtcGFkZGluZy14IHtcbiAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlKTtcbiAgICB9XG5cbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW4gZm9yIGdyaWRzIHdpdGhpbiBgZ3JpZC1jb250YWluZXIvZ3JpZC1jb250YWluZXIuZmx1aWRgXG4gICAgLy8gVGhpcyBhbGxvd3MgbWFyZ2luIGFuZCBwYWRkaW5nIGdyaWRzIHRvIGxpbmUgdXAgd2l0aCBlYWNob3RoZXJcbiAgICAuZ3JpZC1jb250YWluZXI6bm90KC5mdWxsKSA+ICYge1xuICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkbmVnYXRpdmU6IHRydWUpO1xuICAgIH1cblxuICAgIC8vIEJhc2UgY2VsbCBzdHlsZXNcbiAgICA+IC5jZWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlcnM6ICRncmlkLXBhZGRpbmctZ3V0dGVycywgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQmxvY2sgR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktYmxvY2stZ3JpZC1jbGFzc2VzKCRtYXJnaW4tZ3JpZDogdHJ1ZSwgJHBhZGRpbmctZ3JpZDogdHJ1ZSkge1xuICBAaWYgJHBhZGRpbmctZ3JpZCB7XG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICR4eS1ibG9jay1ncmlkLW1heCB7XG4gICAgICAgIC4jeyQtemYtc2l6ZX0tdXAtI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtbGF5b3V0KCRuOiAkaSwgJHNlbGVjdG9yOiAnLmNlbGwnLCAkZ3V0dGVyLW91dHB1dDogZmFsc2UsICRndXR0ZXItdHlwZTogcGFkZGluZywgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJHh5LWJsb2NrLWdyaWQtbWF4IHtcbiAgICAgICAgLy8gVGhpcyBpcyBwdXJlbHkgZm9yIHJlc3BvbnNpdmUgZ3V0dGVycyAtIHRoZSBtYXJnaW4gZ3JpZCBoYXMgdG8gZ28gYmFjayBhbmQgYWRqdXN0IHdpZHRocyAob3IgaGVpZ2h0cylcbiAgICAgICAgLy8gZm9yIHByaW9yIGJyZWFrcG9pbnRzIGJhc2VkIG9uIHRoZSByZXNwb25zaXZlIGd1dHRlci5cbiAgICAgICAgQGlmKHR5cGUtb2YoJGdyaWQtbWFyZ2luLWd1dHRlcnMpID09ICdtYXAnIGFuZCBtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplKSkge1xuICAgICAgICAgIEBlYWNoICRicCBpbiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCQtemYtc2l6ZSkge1xuICAgICAgICAgICAgQGlmKG1hcC1oYXMta2V5KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkYnApKSB7XG4gICAgICAgICAgICAgIC5ncmlkLW1hcmdpbi14LiN7JGJwfS11cC0jeyRpfSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoJG46ICRpLCAkc2VsZWN0b3I6ICcuY2VsbCcsICRndXR0ZXItb3V0cHV0OiBmYWxzZSwgJGd1dHRlci10eXBlOiBtYXJnaW4sICRicmVha3BvaW50OiAkLXpmLXNpemUpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICR4eS1ibG9jay1ncmlkLW1heCB7XG4gICAgICAgIC5ncmlkLW1hcmdpbi14LiN7JC16Zi1zaXplfS11cC0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoJG46ICRpLCAkc2VsZWN0b3I6ICcuY2VsbCcsICRndXR0ZXItb3V0cHV0OiBmYWxzZSwgJGd1dHRlci10eXBlOiBtYXJnaW4sICRicmVha3BvaW50OiAkLXpmLXNpemUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIENvbGxhcHNlIGNsYXNzZXNcbkBtaXhpbiB4eS1jb2xsYXBzZS1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkOiB0cnVlLCAkcGFkZGluZy1ncmlkOiB0cnVlKSB7XG4gIEBlYWNoICRicCBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICAgIC4jeyRicH0tbWFyZ2luLWNvbGxhcHNlIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb2xsYXBzZSgkZ3V0dGVyLXR5cGU6IG1hcmdpbiwgJG1pbi1icmVha3BvaW50OiAkYnApO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkcGFkZGluZy1ncmlkIHtcbiAgICAgIC4jeyRicH0tcGFkZGluZy1jb2xsYXBzZSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29sbGFwc2UoJGd1dHRlci10eXBlOiBwYWRkaW5nLCAkbWluLWJyZWFrcG9pbnQ6ICRicCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIE9mZnNldCBjbGFzc2VzXG5AbWl4aW4geHktb2Zmc2V0LWNlbGwtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAvLyBPZmZzZXRzXG4gICAgICAkbzogJGkgLSAxO1xuXG4gICAgICAuI3skLXpmLXNpemV9LW9mZnNldC0jeyRvfSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtb2Zmc2V0KCRvLCAkZ3V0dGVyczogJGdyaWQtcGFkZGluZy1ndXR0ZXJzLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcsICRicmVha3BvaW50OiAkLXpmLXNpemUpO1xuICAgICAgfVxuXG4gICAgICAuZ3JpZC1tYXJnaW4teCA+IC4jeyQtemYtc2l6ZX0tb2Zmc2V0LSN7JG99IHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1vZmZzZXQoJG8sICRicmVha3BvaW50OiAkLXpmLXNpemUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBWZXJ0aWNhbCBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS12ZXJ0aWNhbC1ncmlkLWNsYXNzZXMoXG4gICRtYXJnaW4tZ3JpZDogdHJ1ZSxcbiAgJHBhZGRpbmctZ3JpZDogdHJ1ZVxuKSB7XG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICBAaWYgbm90KCQtemYtc2l6ZSA9PSBzbWFsbCkge1xuICAgIH1cbiAgfVxuXG4gIC5ncmlkLXkge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQodmVydGljYWwsIGZhbHNlKTtcblxuXG4gICAgPiAuY2VsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXJlc2V0KCk7XG4gICAgfVxuXG4gICAgPiAuYXV0byB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICB9XG5cbiAgICA+IC5zaHJpbmsge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoc2hyaW5rLCBmYWxzZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICB9XG5cblxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgICAvLyBUaGlzIGlzIGEgYml0IG9mIGEgaGFjay93b3JrYXJvdW5kLCBzZWUgdGhlc2UgaXNzdWVzIGFuZCBQUnMgZm9yIHRoZSBiYWNrc3Rvcnk6XG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMDI0NFxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMjIyIGFuZFxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMTY0XG4gICAgICAkc3RyOiBcIj4gLiN7JC16Zi1zaXplfS1zaHJpbmssID4gLiN7JC16Zi1zaXplfS1mdWxsXCI7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAkc3RyOiAkc3RyICsgXCIsID4gLiN7JC16Zi1zaXplfS0jeyRpfVwiXG4gICAgICB9XG4gICAgICAjeyRzdHJ9IHtcbiAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgLy8gUmVzcG9uc2l2ZSBcImF1dG9cIiBtb2RpZmllclxuICAgICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gc21hbGwpIHtcbiAgICAgICAgPiAuI3skLXpmLXNpemV9LWF1dG8ge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShhdXRvKTtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAlLXh5LWNlbGwtYmFzZS1zaHJpbmstdmVydGljYWwtI3skLXpmLXNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKHNocmluayk7XG4gICAgICB9XG5cbiAgICAgIC8vIFJlc3BvbnNpdmUgXCJzaHJpbmtcIiBtb2RpZmllclxuICAgICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gc21hbGwpIHtcbiAgICAgICAgPiAuI3skLXpmLXNpemV9LXNocmluayB7XG4gICAgICAgICAgQGV4dGVuZCAlLXh5LWNlbGwtYmFzZS1zaHJpbmstdmVydGljYWwtI3skLXpmLXNpemV9O1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKHNocmluaywgZmFsc2UsICRicmVha3BvaW50OiAkLXpmLXNpemUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gUmVzcG9uc2l2ZSB3aWR0aCBtb2RpZmllcnNcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgICAgPiAuI3skLXpmLXNpemV9LSN7JGl9IHtcbiAgICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay12ZXJ0aWNhbC0jeyQtemYtc2l6ZX07XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoJGksIGZhbHNlLCAkdmVydGljYWw6IHRydWUsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cbiAgfVxuXG4gIEBpZiAkcGFkZGluZy1ncmlkIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXkge1xuICAgICAgLy8gTmVnYXRpdmUgbWFyZ2luIGZvciBuZXN0ZWQgZ3JpZHNcbiAgICAgIC5ncmlkLXBhZGRpbmcteSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlLCAkZ3V0dGVyLXBvc2l0aW9uOiB0b3AgYm90dG9tKTtcbiAgICAgIH1cblxuICAgICAgLy8gQmFzZSBjZWxsIHN0eWxlc1xuICAgICAgPiAuY2VsbCB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlcnM6ICRncmlkLXBhZGRpbmctZ3V0dGVycywgJGd1dHRlci10eXBlOiBwYWRkaW5nLCAkZ3V0dGVyLXBvc2l0aW9uOiB0b3AgYm90dG9tKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICBAaW5jbHVkZSB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKHRvcCBib3R0b20sIHRydWUsICcuZ3JpZC1tYXJnaW4teScpO1xuICB9XG5cbn1cblxuQG1peGluIHh5LWZyYW1lLWdyaWQtY2xhc3NlcygkdmVydGljYWwtZ3JpZDogdHJ1ZSwgJG1hcmdpbi1ncmlkOiB0cnVlKSB7XG4gIC8vIEZyYW1lZCBncmlkIHN0eWxlc1xuICAuZ3JpZC1mcmFtZSB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZTtcbiAgfVxuXG4gIC5jZWxsIC5ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgfVxuXG4gIC5jZWxsLWJsb2NrIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKCk7XG4gIH1cblxuICAuY2VsbC1ibG9jay15IHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKHRydWUpO1xuICB9XG5cblxuICAuY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2stY29udGFpbmVyKCk7XG4gIH1cblxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcblxuICAgIC4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lO1xuICAgIH1cblxuICAgIC5jZWxsIC4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICB3aWR0aDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LWNlbGwtYmxvY2sge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jaygpO1xuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jay1jb250YWluZXIoKTtcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LWNlbGwtYmxvY2steSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkdmVydGljYWwtZ3JpZCB7XG4gICAgLmdyaWQteSB7XG4gICAgICAmLmdyaWQtZnJhbWUge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlKTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuICAgICAgICAmLiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKHRydWUpO1xuICAgICAgICB9XG5cbiAgICAgIH1cbiAgICB9XG4gICAgLmNlbGwge1xuICAgICAgLmdyaWQteS5ncmlkLWZyYW1lIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlOyAvLyBTYW1lIGFzIGluY2x1ZGUgd2l0aCAkbmVzdGVkLCBidXQgd2l0aCBsZXNzIGNzc1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuICAgICAgICAuZ3JpZC15LiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7IC8vIFNhbWUgYXMgaW5jbHVkZSB3aXRoICRuZXN0ZWQsIGJ1dCB3aXRoIGxlc3MgY3NzXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGlmICRtYXJnaW4tZ3JpZCB7XG4gICAgQGluY2x1ZGUgeHktbWFyZ2luLWdyaWQtY2xhc3Nlcyh0b3AgYm90dG9tLCB0cnVlLCAnLmdyaWQtbWFyZ2luLXknKTtcbiAgICAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUodHJ1ZSwgZmFsc2UsICRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkaW5jbHVkZS1iYXNlOiBmYWxzZSk7XG4gICAgfVxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcbiAgICAgIC5ncmlkLW1hcmdpbi15LiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlLCBmYWxzZSwgJGdyaWQtbWFyZ2luLWd1dHRlcnMsICQtemYtc2l6ZSwgZmFsc2UpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBGaW5hbCBjbGFzc2VzXG5AbWl4aW4gZm91bmRhdGlvbi14eS1ncmlkLWNsYXNzZXMoXG4gICRiYXNlLWdyaWQ6IHRydWUsXG4gICRtYXJnaW4tZ3JpZDogdHJ1ZSxcbiAgJHBhZGRpbmctZ3JpZDogdHJ1ZSxcbiAgJGJsb2NrLWdyaWQ6IHRydWUsXG4gICRjb2xsYXBzZTogdHJ1ZSxcbiAgJG9mZnNldDogdHJ1ZSxcbiAgJHZlcnRpY2FsLWdyaWQ6IHRydWUsXG4gICRmcmFtZS1ncmlkOiB0cnVlXG4pIHtcblxuICAvLyBCYXNlIGdyaWQgc3R5bGVzXG4gIEBpZigkYmFzZS1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktYmFzZS1ncmlkLWNsYXNzZXMoKTtcbiAgfVxuXG4gIC8vIE1hcmdpbiBncmlkXG4gIEBpZigkbWFyZ2luLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBQYWRkaW5nIGdyaWRcbiAgQGlmKCRwYWRkaW5nLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1wYWRkaW5nLWdyaWQtY2xhc3NlcygpO1xuICB9XG5cbiAgLy8gQmxvY2sgZ3JpZFxuICBAaWYoJGJsb2NrLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1ibG9jay1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkLCAkcGFkZGluZy1ncmlkKTtcbiAgfVxuXG4gIC8vIENvbGxhcHNlIGd1dHRlcnNcbiAgQGlmKCRjb2xsYXBzZSkge1xuICAgIEBpbmNsdWRlIHh5LWNvbGxhcHNlLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQsICRwYWRkaW5nLWdyaWQpO1xuICB9XG5cbiAgLy8gT2Zmc2V0IGd1dHRlcnNcbiAgQGlmKCRvZmZzZXQpIHtcbiAgICBAaW5jbHVkZSB4eS1vZmZzZXQtY2VsbC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBWZXJ0aWNhbCBncmlkXG4gIEBpZigkdmVydGljYWwtZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LXZlcnRpY2FsLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQsICRwYWRkaW5nLWdyaWQpO1xuICB9XG5cbiAgQGlmICgkZnJhbWUtZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LWZyYW1lLWdyaWQtY2xhc3NlcygkdmVydGljYWwtZ3JpZCwgJG1hcmdpbi1ncmlkKVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBDcmVhdGUgZ3V0dGVycyBmb3IgYSBjZWxsL2NvbnRhaW5lci5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgZWl0aGVyIG1hcmdpbiBvciBwYWRkaW5nLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbcmlnaHQgbGVmdF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkbmVnYXRpdmUgW2ZhbHNlXSAtIFdoZXRoZXIgdG8gYXBwbHkgdGhlIGd1dHRlciBhcyBhIG5lZ2F0aXZlIHZhbHVlLiBDb21tb25seSB1c2VkIGZvciBuZXN0ZWQgZ3JpZHMuXG5AbWl4aW4geHktZ3V0dGVycyhcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogcmlnaHQgbGVmdCxcbiAgJG5lZ2F0aXZlOiBmYWxzZVxuKSB7XG4gICRvcGVyYXRvcjogaWYoJG5lZ2F0aXZlLCAnLScsICcnKTtcblxuICAvLyBJZiB3ZSBoYXZlIGRlY2xhcmVkIG5lZ2F0aXZlIGd1dHRlcnMsIGZvcmNlIHR5cGUgdG8gYG1hcmdpbi5cbiAgJGd1dHRlci10eXBlOiBpZigkbmVnYXRpdmUsICdtYXJnaW4nLCAkZ3V0dGVyLXR5cGUpO1xuXG4gIC8vIE91dHB1dCBvdXIgbWFyZ2luIGd1dHRlcnMuXG4gIEBpZiAodHlwZS1vZigkZ3V0dGVycykgPT0gJ21hcCcpIHtcbiAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZShhdXRvLCAkZ3V0dGVycykge1xuICAgICAgJGd1dHRlcjogcmVtLWNhbGMoJC16Zi1icC12YWx1ZSkgLyAyO1xuXG4gICAgICAvLyBMb29wIHRocm91Z2ggZWFjaCBndXR0ZXIgcG9zaXRpb25cbiAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgI3skZ3V0dGVyLXR5cGV9LSN7JHZhbHVlfTogdW5xdW90ZShcIiN7JG9wZXJhdG9yfSN7JGd1dHRlcn1cIik7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICh0eXBlLW9mKCRndXR0ZXJzKSA9PSAnbnVtYmVyJykge1xuICAgICRndXR0ZXI6IHJlbS1jYWxjKCRndXR0ZXJzKSAvIDI7XG5cbiAgICAvLyBMb29wIHRocm91Z2ggZWFjaCBndXR0ZXIgcG9zaXRpb25cbiAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAjeyRndXR0ZXItdHlwZX0tI3skdmFsdWV9OiB1bnF1b3RlKFwiI3skb3BlcmF0b3J9I3skZ3V0dGVyfVwiKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIENyZWF0ZXMgYSBtYXggd2lkdGggY29udGFpbmVyLCBkZXNpZ25lZCB0byBob3VzZSB5b3VyIGdyaWQgY29udGVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWyRncmlkLWNvbnRhaW5lcl0gLSBhIHdpZHRoIHRvIGxpbWl0IHRoZSBjb250YWluZXIgdG8uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwYWRkaW5nIFskZ3JpZC1jb250YWluZXItcGFkZGluZ10gLSBwYWRkaW5ncyBvZiB0aGUgY29udGFpbmVyLlxuQG1peGluIHh5LWdyaWQtY29udGFpbmVyKFxuICAkd2lkdGg6ICRncmlkLWNvbnRhaW5lcixcbiAgJHBhZGRpbmc6ICRncmlkLWNvbnRhaW5lci1wYWRkaW5nXG4pIHtcbiAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyczogJHBhZGRpbmcsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG5cbiAgbWF4LXdpZHRoOiAkd2lkdGg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4vLy8gQ3JlYXRlcyBhIGNvbnRhaW5lciBmb3IgeW91ciBmbGV4IGNlbGxzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyZWN0aW9uIFtob3Jpem9udGFsXSAtIEVpdGhlciBob3Jpem9udGFsIG9yIHZlcnRpY2FsIGRpcmVjdGlvbiBvZiBjZWxscyB3aXRoaW4uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkd3JhcCBbdHJ1ZV0gLSBJZiB0aGUgY2VsbHMgd2l0aGluIHNob3VsZCB3cmFwIG9yIG5vdC5cbkBtaXhpbiB4eS1ncmlkKFxuICAkZGlyZWN0aW9uOiBob3Jpem9udGFsLFxuICAkd3JhcDogdHJ1ZVxuKSB7XG4gICRkaXJlY3Rpb246IGlmKCRkaXJlY3Rpb24gPT0gJ2hvcml6b250YWwnLCByb3csIGNvbHVtbik7XG4gICR3cmFwOiBpZigkd3JhcCwgd3JhcCwgbm93cmFwKTtcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6ICRkaXJlY3Rpb24gJHdyYXA7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuJGdsb2JhbC1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBSZW1vdmVzIHRoZSB1bml0IChlLmcuIHB4LCBlbSwgcmVtKSBmcm9tIGEgdmFsdWUsIHJldHVybmluZyB0aGUgbnVtYmVyIG9ubHkuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG51bSAtIE51bWJlciB0byBzdHJpcCB1bml0IGZyb20uXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgc2FtZSBudW1iZXIsIHNhbnMgdW5pdC5cbkBmdW5jdGlvbiBzdHJpcC11bml0KCRudW0pIHtcbiAgQHJldHVybiAkbnVtIC8gKCRudW0gKiAwICsgMSk7XG59XG5cbi8vLyBDb252ZXJ0cyBvbmUgb3IgbW9yZSBwaXhlbCB2YWx1ZXMgaW50byBtYXRjaGluZyByZW0gdmFsdWVzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHZhbHVlcyAtIE9uZSBvciBtb3JlIHZhbHVlcyB0byBjb252ZXJ0LiBCZSBzdXJlIHRvIHNlcGFyYXRlIHRoZW0gd2l0aCBzcGFjZXMgYW5kIG5vdCBjb21tYXMuIElmIHlvdSBuZWVkIHRvIGNvbnZlcnQgYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCwgd3JhcCB0aGUgbGlzdCBpbiBwYXJlbnRoZXNlcy5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgW251bGxdIC0gVGhlIGJhc2UgdmFsdWUgdG8gdXNlIHdoZW4gY2FsY3VsYXRpbmcgdGhlIGByZW1gLiBJZiB5b3UncmUgdXNpbmcgRm91bmRhdGlvbiBvdXQgb2YgdGhlIGJveCwgdGhpcyBpcyAxNnB4LiBJZiB0aGlzIHBhcmFtZXRlciBpcyBgbnVsbGAsIHRoZSBmdW5jdGlvbiB3aWxsIHJlZmVyZW5jZSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZSBhcyB0aGUgYmFzZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtMaXN0fSBBIGxpc3Qgb2YgY29udmVydGVkIHZhbHVlcy5cbkBmdW5jdGlvbiByZW0tY2FsYygkdmFsdWVzLCAkYmFzZTogbnVsbCkge1xuICAkcmVtLXZhbHVlczogKCk7XG4gICRjb3VudDogbGVuZ3RoKCR2YWx1ZXMpO1xuXG4gIC8vIElmIG5vIGJhc2UgaXMgZGVmaW5lZCwgZGVmZXIgdG8gdGhlIGdsb2JhbCBmb250IHNpemVcbiAgQGlmICRiYXNlID09IG51bGwge1xuICAgICRiYXNlOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIElmIHRoZSBiYXNlIGZvbnQgc2l6ZSBpcyBhICUsIHRoZW4gbXVsdGlwbHkgaXQgYnkgMTZweFxuICAvLyBUaGlzIGlzIGJlY2F1c2UgMTAwJSBmb250IHNpemUgPSAxNnB4IGluIG1vc3QgYWxsIGJyb3dzZXJzXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICAvLyBVc2luZyByZW0gYXMgYmFzZSBhbGxvd3MgY29ycmVjdCBzY2FsaW5nXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiAkY291bnQgPT0gMSB7XG4gICAgQHJldHVybiAtemYtdG8tcmVtKCR2YWx1ZXMsICRiYXNlKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvdW50IHtcbiAgICAkcmVtLXZhbHVlczogYXBwZW5kKCRyZW0tdmFsdWVzLCAtemYtdG8tcmVtKG50aCgkdmFsdWVzLCAkaSksICRiYXNlKSk7XG4gIH1cblxuICBAcmV0dXJuICRyZW0tdmFsdWVzO1xufVxuXG4vLyBDb252ZXJ0cyBhIHVuaXRsZXNzLCBwaXhlbCwgb3IgcmVtIHZhbHVlIHRvIGVtLCBmb3IgdXNlIGluIGJyZWFrcG9pbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC10by1lbSgkdmFsdWUpIHtcbiAgLy8gUGl4ZWwgYW5kIHVuaXRsZXNzIHZhbHVlcyBhcmUgY29udmVydGVkIHRvIHJlbXNcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIG9yIHVuaXRsZXNzKCR2YWx1ZSkge1xuICAgICR2YWx1ZTogcmVtLWNhbGMoJHZhbHVlLCAkYmFzZTogMTZweCk7XG4gIH1cblxuICAvLyBUaGVuIHRoZSB2YWx1ZSBpcyBjb252ZXJ0ZWQgdG8gZW1zXG4gIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpICogMWVtO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCB2YWx1ZSB0byBtYXRjaGluZyByZW0gdmFsdWUuICpBbnkqIHZhbHVlIHBhc3NlZCwgcmVnYXJkbGVzcyBvZiB1bml0LCBpcyBhc3N1bWVkIHRvIGJlIGEgcGl4ZWwgdmFsdWUuIEJ5IGRlZmF1bHQsIHRoZSBiYXNlIHBpeGVsIHZhbHVlIHVzZWQgdG8gY2FsY3VsYXRlIHRoZSByZW0gdmFsdWUgaXMgdGFrZW4gZnJvbSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBQaXhlbCB2YWx1ZSB0byBjb252ZXJ0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBCYXNlIGZvciBwaXhlbCBjb252ZXJzaW9uLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBudW1iZXIgaW4gcmVtcywgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgZ2l2ZW4gdmFsdWUgYW5kIHRoZSBiYXNlIHBpeGVsIHZhbHVlLiByZW0gdmFsdWVzIGFyZSBwYXNzZWQgdGhyb3VnaCBhcyBpcy5cbkBmdW5jdGlvbiAtemYtdG8tcmVtKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgIT0gJ251bWJlcicge1xuICAgIEB3YXJuIGluc3BlY3QoJHZhbHVlKSArICcgd2FzIHBhc3NlZCB0byByZW0tY2FsYygpLCB3aGljaCBpcyBub3QgYSBudW1iZXIuJztcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuXG4gIC8vIFRyYW5zZm9ybSBlbSBpbnRvIHJlbSBpZiBzb21lb25lIGhhbmRzIG92ZXIgJ2VtJ3NcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqIDFyZW07XG4gIH1cblxuICAvLyBDYWxjdWxhdGUgcmVtIGlmIHVuaXRzIGZvciAkdmFsdWUgaXMgbm90IHJlbSBvciBlbVxuICBAaWYgdW5pdCgkdmFsdWUpICE9ICdyZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UpICogMXJlbTtcbiAgfVxuXG4gIC8vIFR1cm4gMHJlbSBpbnRvIDBcbiAgQGlmICR2YWx1ZSA9PSAwcmVtIHtcbiAgICAkdmFsdWU6IDA7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuLy8vIENvbnZlcnRzIGEgcGl4ZWwsIHBlcmNlbnRhZ2UsIHJlbSBvciBlbSB2YWx1ZSB0byBhIHVuaXRsZXNzIHZhbHVlIGJhc2VkIG9uIGEgZ2l2ZW4gZm9udCBzaXplLiBJZGVhbCBmb3Igd29ya2luZyBvdXQgdW5pdGxlc3MgbGluZSBoZWlnaHRzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGNvbnZlcnQgdG8gYSB1bml0bGVzcyBsaW5lIGhlaWdodFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBmb250IHNpemUgdG8gdXNlIHRvIHdvcmsgb3V0IHRoZSBsaW5lIGhlaWdodCAtIGRlZmF1bHRzIHRvICRnbG9iYWwtZm9udC1zaXplXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gVW5pdGxlc3MgbnVtYmVyXG5AZnVuY3Rpb24gdW5pdGxlc3MtY2FsYygkdmFsdWUsICRiYXNlOiBudWxsKSB7XG5cbiAgLy8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgJGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gRmlyc3QsIGxldHMgY29udmVydCBvdXIgJGJhc2UgdG8gcGl4ZWxzXG5cbiAgLy8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ3JlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ2VtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIC8vIE5vdyBsZXQncyBjb252ZXJ0IG91ciB2YWx1ZSB0byBwaXhlbHMgdG9vXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJyUnIHtcbiAgICAkdmFsdWU6ICgkdmFsdWUgLyAxMDAlKSAqICRiYXNlO1xuICB9XG5cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncmVtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAkYmFzZTtcbiAgfVxuXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ2VtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAkYmFzZTtcbiAgfVxuXG4gIC8vICdweCdcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIHtcbiAgICBAcmV0dXJuIHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UpO1xuICB9XG5cbiAgLy8gYXNzdW1lIHRoYXQgbGluZS1oZWlnaHRzIGdyZWF0ZXIgdGhhbiAxMCBhcmUgbWVhbnQgdG8gYmUgYWJzb2x1dGUgaW4gJ3B4J1xuICBAaWYgdW5pdGxlc3MoJHZhbHVlKSBhbmQgKCR2YWx1ZSA+IDEwKSB7XG4gICAgQHJldHVybiAkdmFsdWUgLyBzdHJpcC11bml0KCRiYXNlKTtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gQ2FsY3VsYXRlIHRoZSBwZXJjZW50YWdlIHNpemUgb2YgYSBjZWxsLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHNpemUgWyRncmlkLWNvbHVtbnNdIC0gU2l6ZSB0byBtYWtlIHRoZSBjZWxsLiBZb3UgY2FuIHBhc3MgYSB2YWx1ZSBpbiBtdWx0aXBsZSBmb3JtYXRzLCBzdWNoIGFzIGA2YCwgYDUwJWAsIGAxIG9mIDJgIG9yIGAxLzNgLlxuQGZ1bmN0aW9uIHh5LWNlbGwtc2l6ZShcbiAgJHNpemU6ICRncmlkLWNvbHVtbnNcbikge1xuICAvLyBQYXJzaW5nIHBlcmNlbnRzLCBkZWNpbWFscywgbiBvZiBuIGFuZCBudW1iZXIgY291bnRzXG4gIEBpZiB0eXBlLW9mKCRzaXplKSA9PSAnbnVtYmVyJyB7XG4gICAgQGlmIHVuaXQoJHNpemUpID09ICclJyB7XG4gICAgICAkc2l6ZTogJHNpemU7XG4gICAgfVxuICAgIEBlbHNlIGlmICRzaXplIDwgMSB7XG4gICAgICAkc2l6ZTogcGVyY2VudGFnZSgkc2l6ZSk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRzaXplOiBwZXJjZW50YWdlKCRzaXplIC8gJGdyaWQtY29sdW1ucyk7XG4gICAgfVxuICB9XG5cbiAgLy8gUGFyc2luZyBcIm4gb2YgblwiIG9yIFwibi9uXCIgZXhwcmVzc2lvbnNcbiAgQGVsc2UgaWYgdHlwZS1vZigkc2l6ZSkgPT0gJ2xpc3QnIHtcbiAgICBAaWYgbGVuZ3RoKCRzaXplKSAhPSAzIHtcbiAgICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciB4eS1jZWxsLXNpemUoKS4gVXNlIHRoZSBmb3JtYXQgXCJuIG9mIG5cIiBvciBcIm4vblwiLic7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRzaXplOiBwZXJjZW50YWdlKG50aCgkc2l6ZSwgMSkgLyBudGgoJHNpemUsIDMpKTtcbiAgICB9XG4gIH1cbiAgLy8gQW55dGhpbmcgZWxzZSBpcyBpbmNvcnJlY3RcbiAgQGVsc2Uge1xuICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciB4eS1jZWxsLXNpemUoKS4gVXNlIGEgbnVtYmVyLCBkZWNpbWFsLCBwZXJjZW50YWdlLCBvciBcIm4gb2YgblwiIC8gXCJuL25cIi4nO1xuICB9XG5cbiAgQHJldHVybiAkc2l6ZTtcbn1cblxuLy8vIFNldHMgYmFzZSBmbGV4IHByb3BlcnRpZXMgZm9yIGNlbGxzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIEFjY2VwdHMgYGZ1bGxgLCBgYXV0b2AsIGBzaHJpbmtgIG9yIGBncm93YC5cbkBtaXhpbiB4eS1jZWxsLWJhc2UoJHNpemU6IGZ1bGwpIHtcbiAgQGlmKCRzaXplID09ICdmdWxsJykge1xuICAgIC8vIFRoaXMgaXMgdGhlIGJhc2Ugc3R5bGUsIGFsbCBvdGhlcnMgaW5oZXJpdCBmcm9tIGl0XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgbWluLWhlaWdodDogMHB4O1xuICAgIG1pbi13aWR0aDogMHB4O1xuICB9XG4gIEBlbHNlIGlmICgkc2l6ZSA9PSAnYXV0bycpIHtcbiAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICB9XG4gIEBlbHNlIGlmICgkc2l6ZSA9PSAnc2hyaW5rJykge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICB9XG4gIEBlbHNlIGlmICgkc2l6ZSA9PSAnZ3JvdycpIHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxufVxuXG4vLy8gUmVzZXRzIGEgY2VsbHMgd2lkdGggKG9yIGhlaWdodCBpZiB2ZXJ0aWNhbCBpcyB0cnVlKSBhcyB3ZWxsIGFzIHN0cmlwcyBpdHMgZ3V0dGVycy5cbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbkBtaXhpbiB4eS1jZWxsLXJlc2V0KCR2ZXJ0aWNhbDogdHJ1ZSkge1xuICAkZGlyZWN0aW9uOiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgd2lkdGgsIGhlaWdodCk7XG4gICN7JGRpcmVjdGlvbn06IGF1dG87XG4gIG1heC0jeyRkaXJlY3Rpb259OiBub25lO1xufVxuXG4vLyBTZXRzIG91ciBjZWxsIHdpZHRocyBvciBoZWlnaHRzIGRlcGVuZGluZyBvbiBndXR0ZXIgdHlwZS5cbkBtaXhpbiAteHktY2VsbC1wcm9wZXJ0aWVzKCRzaXplLCAkbWFyZ2luLWd1dHRlciwgJHZlcnRpY2FsKSB7XG4gICRkaXJlY3Rpb246IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCBoZWlnaHQsIHdpZHRoKTtcbiAgQGlmKCRzaXplID09ICdmdWxsJykge1xuICAgICR2YWw6IGlmKCRtYXJnaW4tZ3V0dGVyID09IDAsIDEwMCUsIGNhbGMoMTAwJSAtICN7cmVtLWNhbGMoJG1hcmdpbi1ndXR0ZXIpfSkpO1xuICAgICN7JGRpcmVjdGlvbn06ICR2YWw7XG4gIH1cbiAgQGVsc2UgaWYgKCRzaXplID09ICdhdXRvJykge1xuICAgICN7JGRpcmVjdGlvbn06IGF1dG87XG4gICAgJHZhbDogaWYoJG1hcmdpbi1ndXR0ZXIgPT0gMCwgMTAwJSwgY2FsYygxMDAlIC0gI3tyZW0tY2FsYygkbWFyZ2luLWd1dHRlcil9KSk7XG4gIH1cbiAgQGVsc2UgaWYgKCRzaXplID09ICdzaHJpbmsnKSB7XG4gICAgI3skZGlyZWN0aW9ufTogYXV0bztcbiAgfVxuICBAZWxzZSB7XG4gICAgJHZhbDogaWYoJG1hcmdpbi1ndXR0ZXIgPT0gMCwgI3t4eS1jZWxsLXNpemUoJHNpemUpfSwgY2FsYygje3h5LWNlbGwtc2l6ZSgkc2l6ZSl9IC0gI3tyZW0tY2FsYygkbWFyZ2luLWd1dHRlcil9KSk7XG4gICAgI3skZGlyZWN0aW9ufTogJHZhbDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGNlbGwgZm9yIHlvdXIgZ3JpZC5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQ2FuIGJlIGBmdWxsYCAoZGVmYXVsdCkgZm9yIDEwMCUgd2lkdGgsIGBhdXRvYCB0byB1c2UgdXAgYXZhaWxhYmxlIHNwYWNlIGFuZCBgc2hyaW5rYCB0byB1c2UgdXAgb25seSByZXF1aXJlZCBzcGFjZS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRndXR0ZXItb3V0cHV0IFt0cnVlXSAtIFdoZXRoZXIgb3Igbm90IHRvIG91dHB1dCBndXR0ZXJzXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtyaWdodCBsZWZ0XSAtIFRoZSBwb3NpdGlvbiB0byBhcHBseSBndXR0ZXJzIHRvLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuQG1peGluIHh5LWNlbGwoXG4gICRzaXplOiBmdWxsLFxuICAkZ3V0dGVyLW91dHB1dDogdHJ1ZSxcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogcmlnaHQgbGVmdCxcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICAkYnAtaXMtZmFsbGJhY2s6IGZhbHNlO1xuXG4gIEBpZigkYnJlYWtwb2ludCA9PSBudWxsKSB7XG4gICAgLy8gSWYgYCRicC1zaXplYCBpcyBhdmFpbGFibGUgdGhlbiB1c2UgdGhpcywgb3RoZXJ3aXNlIHJldmVydCB0byB0aGUgc21hbGxlc3QgYnAuXG4gICAgQGlmKHZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkgYW5kIHR5cGUtb2YoJC16Zi1zaXplKSAhPSAnbnVtYmVyJykgYW5kICQtemYtc2l6ZSAhPSBudWxsIHtcbiAgICAgICRicmVha3BvaW50OiAkLXpmLXNpemU7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRicmVha3BvaW50OiAkLXpmLXplcm8tYnJlYWtwb2ludDtcbiAgICAgICRicC1pcy1mYWxsYmFjazogdHJ1ZTtcbiAgICB9XG4gIH1cblxuICAvLyBHZXQgdGhlIGd1dHRlciBmb3IgdGhlIGdpdmVuIGJyZWFrcG9pbnQvdmFsdWUuXG4gICRndXR0ZXI6IC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG4gIC8vIElmIHRoZSBicmVha3BvaW50IGlzIGEgZmFsbGJhY2ssIHVzZSBhIGZhbGxiYWNrIGd1dHRlciBhcyB3ZWxsXG4gIEBpZiAoJGJwLWlzLWZhbGxiYWNrID09IHRydWUgYW5kICRndXR0ZXIgPT0gbnVsbCkge1xuICAgICRndXR0ZXI6IDA7XG4gIH1cblxuICBAaWYoJGd1dHRlciAhPSBudWxsKSB7XG4gICAgLy8gQmFzZSBmbGV4IHByb3BlcnRpZXNcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2UoJHNpemUpO1xuXG4gICAgQGlmKCRndXR0ZXItdHlwZSA9PSAnbWFyZ2luJykge1xuICAgICAgQGluY2x1ZGUgLXh5LWNlbGwtcHJvcGVydGllcygkc2l6ZSwgJGd1dHRlciwgJHZlcnRpY2FsKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgLXh5LWNlbGwtcHJvcGVydGllcygkc2l6ZSwgMCwgJHZlcnRpY2FsKTtcbiAgICB9XG5cbiAgICBAaWYgJGd1dHRlci1vdXRwdXQge1xuICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24pO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ3h5LWNlbGw6IG5vIGd1dHRlcnMgd2VyZSBmb3VuZCBpbiBgJGd1dHRlcnNgIGZvciBcIiRicmVha3BvaW50OiAjeyRicmVha3BvaW50fVwiLCBjZWxsIHdhcyBub3QgZ2VuZXJhdGVkYCdcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHNpbmdsZSBicmVha3BvaW50IHNpemVkIGdyaWQuIFVzZWQgdG8gZ2VuZXJhdGUgb3VyIGdyaWQgY2xhc3Nlcy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQ2FuIGJlIGBmdWxsYCAoZGVmYXVsdCkgZm9yIDEwMCUgd2lkdGgsIGBhdXRvYCB0byB1c2UgdXAgYXZhaWxhYmxlIHNwYWNlIGFuZCBgc2hyaW5rYCB0byB1c2UgdXAgb25seSByZXF1aXJlZCBzcGFjZS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRndXR0ZXItb3V0cHV0IFt0cnVlXSAtIFdoZXRoZXIgb3Igbm90IHRvIG91dHB1dCBndXR0ZXJzXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbkBtaXhpbiB4eS1jZWxsLXN0YXRpYyhcbiAgJHNpemU6IGZ1bGwsXG4gICRndXR0ZXItb3V0cHV0OiB0cnVlLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkYnJlYWtwb2ludDogJC16Zi16ZXJvLWJyZWFrcG9pbnQsXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuXG4gICRndXR0ZXI6IC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG4gICRndXR0ZXItcG9zaXRpb246IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCB0b3AgYm90dG9tLCBsZWZ0IHJpZ2h0KTtcblxuICBAaWYoJGd1dHRlci10eXBlID09ICdtYXJnaW4nKSB7XG4gICAgQGluY2x1ZGUgLXh5LWNlbGwtcHJvcGVydGllcygkc2l6ZSwgJGd1dHRlciwgJHZlcnRpY2FsKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGluY2x1ZGUgLXh5LWNlbGwtcHJvcGVydGllcygkc2l6ZSwgMCwgJHZlcnRpY2FsKTtcbiAgfVxuXG4gIC8vIElmIHdlIHdhbnQgdG8gb3V0cHV0IHRoZSBndXR0ZXJzXG4gIEBpZigkZ3V0dGVyLW91dHB1dCkge1xuICAgIC8vIFRPRE86IEZpZ3VyZSBvdXQgaWYgd2UgbmVlZCB0byBwYXNzIGJyZWFrcG9pbnQgaW4gaGVyZSB0b28uXG4gICAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24pO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBTaXplcyBjaGlsZCBlbGVtZW50cyBzbyB0aGF0IGAkbmAgbnVtYmVyIG9mIGl0ZW1zIGFwcGVhciBvbiBlYWNoIHJvdy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbiAtIE51bWJlciBvZiBlbGVtZW50cyB0byBkaXNwbGF5IHBlciByb3cuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJy5jZWxsJ10gLSBTZWxlY3RvcihzKSB0byB1c2UgZm9yIGNoaWxkIGVsZW1lbnRzLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGd1dHRlci1vdXRwdXQgW3RydWVdIC0gV2hldGhlciBvciBub3QgdG8gb3V0cHV0IGd1dHRlcnNcbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVHlwZSBvZiBndXR0ZXIgdG8gb3V0cHV0LiBBY2NlcHRzIGBtYXJnaW5gIG9yIGBwYWRkaW5nYC5cbi8vLyBAcGFyYW0ge0xpc3R9ICRndXR0ZXItcG9zaXRpb24gW3JpZ2h0IGxlZnRdIC0gVGhlIHBvc2l0aW9uIHRvIGFwcGx5IGd1dHRlcnMgdG8uIEFjY2VwdHMgYHRvcGAsIGBib3R0b21gLCBgbGVmdGAsIGByaWdodGAgaW4gYW55IGNvbWJpbmF0aW9uLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgYnJlYWtwb2ludCB0byB1c2UgZm9yIHRoZSBjZWxsIGdlbmVyYXRpb24uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuQG1peGluIHh5LWdyaWQtbGF5b3V0KFxuICAkbixcbiAgJHNlbGVjdG9yOiAnLmNlbGwnLFxuICAkZ3V0dGVyLW91dHB1dDogdHJ1ZSxcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogcmlnaHQgbGVmdCxcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICAkc2l6ZTogcGVyY2VudGFnZSgxLyRuKTtcblxuICAmID4gI3skc2VsZWN0b3J9IHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsKCRzaXplLCAkZ3V0dGVyLW91dHB1dCwgJGd1dHRlcnMsICRndXR0ZXItdHlwZSwgJGd1dHRlci1wb3NpdGlvbiwgJGJyZWFrcG9pbnQsICR2ZXJ0aWNhbCk7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIENvbGxhcHNlcyB0aGUgZ3JpZCBhIGNlbGxzIHdpdGhpbiBpdC5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWy5jZWxsXSAtIFRoZSBjaGlsZCBlbGVtZW50IHRvIHJlbW92ZSB0aGUgZ3V0dGVyIGZyb20uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUaGUgdHlwZSBvZiBndXR0ZXIgdG8gcmVtb3ZlLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbcmlnaHQgbGVmdF0gLSBUaGUgcG9zaXRpb25zIHRvIHJlbW92ZSBndXR0ZXJzIGZyb20uIEFjY2VwdHMgYHRvcGAsIGBib3R0b21gLCBgbGVmdGAsIGByaWdodGAgaW4gYW55IGNvbWJpbmF0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJG1pbi1icmVha3BvaW50IFskLXpmLXplcm8tYnJlYWtwb2ludF0gLSBNaW5pbXVtIGJyZWFrcG9pbnQgaW4gYCRicmVha3BvaW50LWNsYXNzZXNgIGZvciB3aGljaCB0byBjb2xsYXBzZSB0aGUgZ3V0dGVyLlxuQG1peGluIHh5LWdyaWQtY29sbGFwc2UoXG4gICRzZWxlY3RvcjogJy5jZWxsJyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IHJpZ2h0IGxlZnQsXG4gICRtaW4tYnJlYWtwb2ludDogJC16Zi16ZXJvLWJyZWFrcG9pbnRcbikge1xuICAvLyBGaXJzdCwgbGV0cyBuZWdhdGUgYW55IG1hcmdpbnMgb24gdGhlIHRvcCBsZXZlbFxuICBAaWYgKCRndXR0ZXItdHlwZSA9PSAnbWFyZ2luJykge1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluLWJyZWFrcG9pbnQpIHtcbiAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgbWFyZ2luLSN7JHZhbHVlfTogMDtcbiAgICAgIH1cblxuICAgICAgPiAjeyRzZWxlY3Rvcn0ge1xuICAgICAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAgICAgbWFyZ2luLSN7JHZhbHVlfTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICRleGNsdWRlZC1icHM6IC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJG1pbi1icmVha3BvaW50KTtcblxuICAgIC8vIE91dHB1dCBuZXcgd2lkdGhzIHRvIG5vdCBpbmNsdWRlIGd1dHRlcnNcbiAgICBAZWFjaCAkYnAgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaWYoc2wtY29udGFpbigkZXhjbHVkZWQtYnBzLCAkYnApKSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1pbi1icmVha3BvaW50KSB7XG4gICAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgICAgICAgID4gLiN7JGJwfS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKCRpLCAkZ3V0dGVyLW91dHB1dDogZmFsc2UsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnApIHtcbiAgICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgICAgICAgPiAuI3skYnB9LSN7JGl9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoJGksICRndXR0ZXItb3V0cHV0OiBmYWxzZSwgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluLWJyZWFrcG9pbnQpIHtcbiAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgbWFyZ2luLSN7JHZhbHVlfTogMDtcbiAgICAgIH1cblxuICAgICAgPiAjeyRzZWxlY3Rvcn0ge1xuICAgICAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAgICAgcGFkZGluZy0jeyR2YWx1ZX06IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIE9mZnNldHMgYSBjb2x1bW4gdG8gdGhlIHJpZ2h0L2JvdHRvbSBieSBgJG5gIGNvbHVtbnMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkbiAtIFNpemUgdG8gb2Zmc2V0IGJ5LiBZb3UgY2FuIHBhc3MgaW4gYW55IHZhbHVlIGFjY2VwdGVkIGJ5IHRoZSBgemYtY2VsbCgpYCBtaXhpbiwgc3VjaCBhcyBgNmAsIGA1MCVgLCBvciBgMSBvZiAyYC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gTWFwIG9mIGd1dHRlcnMgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZSBmb3IgcmVzcG9uc2l2ZSBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIFRoZSB0eXBlIG9mIGd1dHRlciB0byB1c2UuIENhbiBiZSBgbWFyZ2luYCBvciBgcGFkZGluZ2Bcbi8vLyBAcGFyYW0ge051bWJlcnxBcnJheXxLZXl3b3JkfSAkYnJlYWtwb2ludCBbJC16Zi16ZXJvLWJyZWFrcG9pbnRdIC0gU2luZ2xlIHZhbHVlLCBicmVha3BvaW50IG5hbWUsIG9yIGxpc3Qgb2YgYnJlYWtwb2ludCBuYW1lcyB0byB1c2UgZm9yIGAkZ3V0dGVyc2AuIFNlZSBgLXpmLWJyZWFrcG9pbnQtdmFsdWUoKWAuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSBTZXRzIHRoZSBkaXJlY3Rpb24gb2YgdGhlIG9mZnNldC4gSWYgc2V0IHRvIHRydWUgd2lsbCBhcHBseSBtYXJnaW4tdG9wIGluc3RlYWQuXG5AbWl4aW4geHktY2VsbC1vZmZzZXQoXG4gJG4sXG4gJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICRicmVha3BvaW50OiAkLXpmLXplcm8tYnJlYWtwb2ludCxcbiAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgJGRpcmVjdGlvbjogaWYoJHZlcnRpY2FsLCAndG9wJywgJGdsb2JhbC1sZWZ0KTtcblxuICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkYnJlYWtwb2ludCwgJGd1dHRlcnMpIHtcbiAgICAkZ3V0dGVyOiByZW0tY2FsYygkLXpmLWJwLXZhbHVlKSAvIDI7XG4gICAgJGd1dHRlci1tYXJnaW46IGlmKCRndXR0ZXItdHlwZSA9PSAnbWFyZ2luJywgJGd1dHRlciwgMCk7XG4gICAgJHNpemU6IGlmKCRndXR0ZXItbWFyZ2luID09IDAsICN7eHktY2VsbC1zaXplKCRuKX0sIGNhbGMoI3t4eS1jZWxsLXNpemUoJG4pfSArICN7JGd1dHRlci1tYXJnaW59KSk7XG5cbiAgICBtYXJnaW4tI3skZGlyZWN0aW9ufTogI3skc2l6ZX07XG4gIH1cbn1cbiIsIi8vLyBNb2RpZmllcyBhIGdyaWQgdG8gZ2l2ZSBpdCBcImZyYW1lXCIgYmVoYXZpb3IgKG5vIG92ZXJmbG93LCBubyB3cmFwLCBzdHJldGNoIGJlaGF2aW9yKVxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIElzIGdyaWQgdmVydGljYWwgb3IgaG9yaXpvbnRhbC4gU2hvdWxkIG1hdGNoIGdyaWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkbmVzdGVkIFtmYWxzZV0gLSBJcyBncmlkIG5lc3RlZCBvciBub3QuIElmIG5lc3RlZCBpcyB0cnVlIHRoaXMgc2V0cyB0aGUgZnJhbWUgdG8gMTAwJSBoZWlnaHQsIG90aGVyd2lzZSB3aWxsIGJlIDEwMHZoLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgW251bGxdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGluY2x1ZGUtYmFzZSBbdHJ1ZV0gLSBJbmNsdWRlIHRoZSBiYXNlIHN0eWxlcyB0aGF0IGRvbid0IHZhcnkgcGVyIGJyZWFrcG9pbnQuXG5AbWl4aW4geHktZ3JpZC1mcmFtZShcbiAgJHZlcnRpY2FsOiBmYWxzZSxcbiAgJG5lc3RlZDogZmFsc2UsXG4gICRndXR0ZXJzOiBudWxsLFxuICAkYnJlYWtwb2ludDogbnVsbCxcbiAgJGluY2x1ZGUtYmFzZTogdHJ1ZVxuKSB7XG5cbiAgQGlmICRpbmNsdWRlLWJhc2Uge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB9XG5cbiAgQGlmICRicmVha3BvaW50ID09IG51bGwgYW5kIHR5cGUtb2YoJGd1dHRlcnMpID09ICdtYXAnIHtcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSgkdmVydGljYWwsICRuZXN0ZWQsICRndXR0ZXJzLCAkLXpmLXNpemUsIGZhbHNlKTtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIC8vIEdldCBvdXIgZ3V0dGVycyBpZiBhcHBsaWNhYmxlXG4gICAgJGd1dHRlcjogLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICRicmVha3BvaW50KTtcblxuICAgIC8vIElmIHdlIGhhdmUgYSBndXR0ZXIsIGFkZCBpdCB0byB0aGUgd2lkdGgvaGVpZ2h0XG4gICAgQGlmICRndXR0ZXIge1xuICAgICAgQGlmICR2ZXJ0aWNhbCA9PSB0cnVlIHtcbiAgICAgICAgJHVuaXQ6IGlmKCRuZXN0ZWQgPT0gdHJ1ZSwgMTAwJSwgMTAwdmgpO1xuICAgICAgICAkZ3V0dGVyOiByZW0tY2FsYygkZ3V0dGVyKTtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKCN7JHVuaXR9ICsgI3skZ3V0dGVyfSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJHVuaXQ6IGlmKCRuZXN0ZWQgPT0gdHJ1ZSwgMTAwJSwgMTAwdncpO1xuICAgICAgICAkZ3V0dGVyOiByZW0tY2FsYygkZ3V0dGVyKTtcbiAgICAgICAgd2lkdGg6IGNhbGMoI3skdW5pdH0gKyAjeyRndXR0ZXJ9KTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGlmICR2ZXJ0aWNhbCA9PSB0cnVlIHtcbiAgICAgICAgaGVpZ2h0OiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZoKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICB3aWR0aDogaWYoJG5lc3RlZCA9PSB0cnVlLCAxMDAlLCAxMDB2dyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBNb2RpZmllcyBhIGNlbGwgdG8gZ2l2ZSBpdCBcImJsb2NrXCIgYmVoYXZpb3IgKG92ZXJmbG93IGF1dG8sIGluZXJ0aWFsIHNjcm9sbGluZylcbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBJcyBncmlkIHZlcnRpY2FsIG9yIGhvcml6b250YWwuIFNob3VsZCBtYXRjaCBncmlkLlxuQG1peGluIHh5LWNlbGwtYmxvY2soXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICAkcHJvcGVydHk6IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCAnb3ZlcmZsb3cteScsICdvdmVyZmxvdy14Jyk7XG5cbiAgQGlmICR2ZXJ0aWNhbCA9PSB0cnVlIHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgfSBAZWxzZSB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xufVxuXG4vLy8gQ29udGFpbmVyIGZvciBpbnNpZGUgYSBncmlkIGZyYW1lIGNvbnRhaW5pbmcgbXVsdGlwbGUgYmxvY2tzLiBUeXBpY2FsbHkgdXNlZFxuLy8vIGFzIGEgbW9kaWZpZXIgZm9yIGEgYC5jZWxsYCB0byBhbGxvdyB0aGUgY2VsbCB0byBwYXNzIGFsb25nIGZsZXggc2l6aW5nXG4vLy8gY29uc3RyYWludHMgLyBmcm9tIHBhcmVudHMgdG8gY2hpbGRyZW4uXG5AbWl4aW4geHktY2VsbC1ibG9jay1jb250YWluZXIoKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG5cbiAgPiAuZ3JpZC14IHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0eXBvZ3JhcGh5LWJhc2Vcbi8vLy9cblxuLy8gQmFzZSBUeXBvZ3JhcGh5XG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuLy8gVGhlc2UgYXJlIHN0eWxlcyBhcHBsaWVkIHRvIGJhc2ljIEhUTUwgdGFncywgaW5jbHVkaW5nOlxuLy8gICAtIFBhcmFncmFwaHMgPHA+XG4vLyAgIC0gQm9sZC9pdGFsaWNzIDxiPiA8c3Ryb25nPiA8aT4gPGVtPlxuLy8gICAtIFNtYWxsIHRleHQgPHNtYWxsPlxuLy8gICAtIEhlYWRpbmdzIDxoMT4tPGg2PlxuLy8gICAtIEFuY2hvcnMgPGE+XG4vLyAgIC0gRGl2aWRlcnMgPGhyPlxuLy8gICAtIExpc3RzIDx1bD4gPG9sPiA8ZGw+XG4vLyAgIC0gQmxvY2txdW90ZXMgPGJsb2NrcXVvdGU+XG4vLyAgIC0gQ29kZSBibG9ja3MgPGNvZGU+XG4vLyAgIC0gQWJicmV2aWF0aW9ucyA8YWJicj5cbi8vICAgLSBDaXRhdGlvbnMgPGNpdGU+XG4vLyAgIC0gS2V5c3Ryb2tlcyA8a2JkPlxuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGhlYWRlciBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0eWxlIChlLmcuIGl0YWxpY2l6ZWQpIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLWZvbnQtc3R5bGU6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgdXNlZCBmb3IgZWxlbWVudHMgdGhhdCB1c2UgbW9ub3NwYWNlZCB0eXBlLCBzdWNoIGFzIGNvZGUgc2FtcGxlc1xuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRmb250LWZhbWlseS1tb25vc3BhY2U6IENvbnNvbGFzLCAnTGliZXJhdGlvbiBNb25vJywgQ291cmllciwgbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJGhlYWRlci1jb2xvcjokb3UtZ29sZDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNCAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gU3R5bGVzIGZvciBoZWFkaW5ncyBhdCB2YXJpb3VzIHNjcmVlbiBzaXplcy4gRWFjaCBrZXkgaXMgYSBicmVha3BvaW50LCBhbmQgZWFjaCB2YWx1ZSBpcyBhIG1hcCBvZiBoZWFkaW5nIHN0eWxlcy5cbi8vLyBAdHlwZSBNYXBcbiRoZWFkZXItc3R5bGVzOiAoXG4gIHNtYWxsOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAyNCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAxOSksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxOCksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAxNyksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4gIG1lZGl1bTogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogNDgpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogNDApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMzEpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMjUpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuKSAhZGVmYXVsdDtcblxuLy8gJGhlYWRlci1zdHlsZXMgbWFwIGlzIGJ1aWx0IGZyb20gJGhlYWRlci1zaXplcyBpbiBvcmRlciB0byBlbnN1cmUgZG93bndhcmQgY29tcGF0aWJpbGl0eVxuLy8gd2hlbiAkaGVhZGVyLXNpemVzIGlzIGRlcHJlY2lhdGVkLCAkaGVhZGVyLXN0eWxlcyBuZWVkcyB0byBnZXQgIWRlZmF1bHQgdmFsdWVzIGxpa2Ugc2V0dGluZ3Muc2Nzc1xuQGZ1bmN0aW9uIGJ1aWxkX2Zyb21faGVhZGVyLXNpemVzKCRoZWFkZXItc2l6ZXMpIHtcbiAgQHdhcm4gJ05vdGUsIHRoYXQgJGhlYWRlci1zaXplcyBoYXMgYmVlbiByZXBsYWNlZCB3aXRoICRoZWFkZXItc3R5bGVzLiAkaGVhZGVyLXNpemVzIHN0aWxsIHdvcmtzLCBidXQgaXQgaXMgZ29pbmcgdG8gYmUgZGVwcmVjaWF0ZWQuJztcbiAgJGhlYWRlci1zdHlsZXM6ICgpO1xuICBAZWFjaCAkc2l6ZSwgJGhlYWRlcnMgaW4gJGhlYWRlci1zaXplcyB7XG4gICAgJGhlYWRlci1tYXA6ICgpO1xuICAgIEBlYWNoICRoZWFkZXIsICRmb250LXNpemUgaW4gJGhlYWRlcnMge1xuICAgICAgJGhlYWRlci1tYXA6IG1hcC1tZXJnZSgkaGVhZGVyLW1hcCwgKCRoZWFkZXI6ICgnZm9udC1zaXplJzogJGZvbnQtc2l6ZSkpKTtcbiAgICB9XG4gICAgJGhlYWRlci1zdHlsZXM6IG1hcC1tZXJnZSgkaGVhZGVyLXN0eWxlcywgKCRzaXplOiAkaGVhZGVyLW1hcCkpO1xuICB9XG4gIEByZXR1cm4gJGhlYWRlci1zdHlsZXM7XG59XG5cbi8vIElmIGl0IGV4aXN0cyAkaGVhZGVycy1zaXplcyBpcyB1c2VkIHRvIGJ1aWxkICRoZWFkZXItc3R5bGVzLiBTZWUgdGhlIGRvY3VtZW50YXRpb24uXG5AaWYgdmFyaWFibGUtZXhpc3RzKGhlYWRlci1zaXplcykge1xuICAkaGVhZGVyLXN0eWxlczogYnVpbGRfZnJvbV9oZWFkZXItc2l6ZXMoJGhlYWRlci1zaXplcyk7XG59XG5cbi8vLyBUZXh0IHJlbmRlcmluZyBtZXRob2Qgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBgPHNtYWxsPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc21hbGwtZm9udC1zaXplOiA4MCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBgPHNtYWxsPmAgZWxlbWVudHMgd2hlbiBwbGFjZWQgaW5zaWRlIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnNpZGUgYDxwPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgcmVuZGVyaW5nIG1ldGhvZCBmb3IgcGFyYWdyYXBoIHRleHQuXG4vLy8gQHR5cGUgU3RyaW5nXG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGNvZGUtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kY29kZS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW4gY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIENvbG9yXG4kY29kZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIExpc3RcbiRjb2RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgYXJvdW5kIHRleHQgb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRjb2RlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNSAxKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZWNvcmF0aW9uIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGRlY29yYXRpb24gZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI6IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIHdpZHRoIG9mIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTGlzdFxuJGhyLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG8gIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbGluZWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tICFkZWZhdWx0O1xuXG4vLy8gQnVsbGV0IHR5cGUgdG8gdXNlIGZvciB1bm9yZGVyZWQgbGlzdHMgKGUuZy4sIGBzcXVhcmVgLCBgY2lyY2xlYCwgYGRpc2NgKS5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2MgIWRlZmF1bHQ7XG5cbi8vLyBQb3NpdGlvbmluZyBmb3IgYnVsbGV0cyBvbiB1bm9yZGVyZWQgbGlzdCBpdGVtcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlICFkZWZhdWx0O1xuXG4vLy8gTGVmdCAob3IgcmlnaHQpIG1hcmdpbiBmb3IgbGlzdHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGEgbGlzdCBpbnNpZGUgYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgYDxkbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgYDxkdD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIGA8ZHQ+YCBhbmQgYDxkZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogMC4zcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBhIGA8YmxvY2txdW90ZT5gIGVsZW1lbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoOSAyMCAwIDE5KSAhZGVmYXVsdDtcblxuLy8vIFNpZGUgYm9yZGVyIGZvciBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNpdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQc2V1ZG8gY29udGVudCBmb3IgYDxjaXRlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGtleXN0cm9rZS1mb250OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBib3JkZXIgc3R5bGUgZm9yIGA8YWJicj5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2sgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktYmFzZSB7XG4gIC8vIFR5cG9ncmFwaHkgcmVzZXRzXG4gIGRpdixcbiAgZGwsXG4gIGR0LFxuICBkZCxcbiAgdWwsXG4gIG9sLFxuICBsaSxcbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNixcbiAgcHJlLFxuICBmb3JtLFxuICBwLFxuICBibG9ja3F1b3RlLFxuICB0aCxcbiAgdGQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUGFyYWdyYXBoc1xuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICB0ZXh0LXJlbmRlcmluZzogJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZztcbiAgfVxuXG4gIC8vIEVtcGhhc2l6ZWQgdGV4dFxuICBlbSxcbiAgaSB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gU3Ryb25nIHRleHRcbiAgc3Ryb25nLFxuICBiIHtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFNtYWxsIHRleHRcbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEhlYWRpbmdzXG4gIGgxLCAuaDEsXG4gIGgyLCAuaDIsXG4gIGgzLCAuaDMsXG4gIGg0LCAuaDQsXG4gIGg1LCAuaDUsXG4gIGg2LCAuaDYge1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc3R5bGU6ICRoZWFkZXItZm9udC1zdHlsZTtcbiAgICBmb250LXdlaWdodDogJGhlYWRlci1mb250LXdlaWdodDtcbiAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcbiAgICB0ZXh0LXJlbmRlcmluZzogJGhlYWRlci10ZXh0LXJlbmRlcmluZztcblxuICAgIHNtYWxsIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgY29sb3I6ICRoZWFkZXItc21hbGwtZm9udC1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBIZWFkaW5nIHN0eWxlc1xuICBAZWFjaCAkc2l6ZSwgJGhlYWRlcnMgaW4gJGhlYWRlci1zdHlsZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRoZWFkZXIsICRoZWFkZXItZGVmcyBpbiAkaGVhZGVycyB7XG4gICAgICAgICRmb250LXNpemUtdGVtcDogMXJlbTtcbiAgICAgICAgI3skaGVhZGVyfSwgLiN7JGhlYWRlcn0ge1xuXG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgZm9udC1zaXplKSB7XG4gICAgICAgICAgICAkZm9udC1zaXplLXRlbXA6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBmb250LXNpemUpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBmcykge1xuICAgICAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgZnMpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGxpbmUtaGVpZ2h0KSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbGluZS1oZWlnaHQpLCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBsaCkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGxoKSwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKCRoZWFkZXItbGluZWhlaWdodCwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tdG9wKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLXRvcCkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtdCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG10KSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tYm90dG9tKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLWJvdHRvbSkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYikge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1iKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkaGVhZGVyLW1hcmdpbi1ib3R0b20pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIExpbmtzXG4gIGEge1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb247XG5cbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRhbmNob3ItY29sb3ItaG92ZXI7XG4gICAgICBAaWYgJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXIgIT0gJGFuY2hvci10ZXh0LWRlY29yYXRpb24ge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gSG9yaXpvbnRhbCBydWxlXG4gIGhyIHtcbiAgICBjbGVhcjogYm90aDtcblxuICAgIG1heC13aWR0aDogJGhyLXdpZHRoO1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW46ICRoci1tYXJnaW47XG5cbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItYm90dG9tOiAkaHItYm9yZGVyO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICB9XG5cbiAgLy8gTGlzdHNcbiAgdWwsXG4gIG9sLFxuICBkbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGxpc3QtbWFyZ2luLWJvdHRvbTtcbiAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiAkbGlzdC1zdHlsZS1wb3NpdGlvbjtcbiAgICBsaW5lLWhlaWdodDogJGxpc3QtbGluZWhlaWdodDtcbiAgfVxuXG4gIC8vIExpc3QgaXRlbXNcbiAgbGkge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFVub3JkZXJlZCBsaXN0c1xuICB1bCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gICAgbGlzdC1zdHlsZS10eXBlOiAkbGlzdC1zdHlsZS10eXBlO1xuICB9XG5cbiAgLy8gT3JkZXJlZCBsaXN0c1xuICBvbCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gIH1cblxuICAvLyBOZXN0ZWQgdW5vcmRlcmVkL29yZGVyZWQgbGlzdHNcbiAgdWwsIG9sIHtcbiAgICAmICYge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAvLyBEZWZpbml0aW9uIGxpc3RzXG4gIGRsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTtcblxuICAgIGR0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b207XG4gICAgICBmb250LXdlaWdodDogJGRlZm5saXN0LXRlcm0td2VpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC8vIEJsb2NrcXVvdGVzXG4gIGJsb2NrcXVvdGUge1xuICAgIG1hcmdpbjogMCAwICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiAgICBwYWRkaW5nOiAkYmxvY2txdW90ZS1wYWRkaW5nO1xuICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06ICRibG9ja3F1b3RlLWJvcmRlcjtcblxuICAgICYsIHAge1xuICAgICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICAgIGNvbG9yOiAkYmxvY2txdW90ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBDaXRhdGlvbnNcbiAgY2l0ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAkY2l0ZS1mb250LXNpemU7XG4gICAgY29sb3I6ICRjaXRlLWNvbG9yO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJGNpdGUtcHNldWRvLWNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gQWJicmV2aWF0aW9uc1xuICBhYmJyLCBhYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGFiYnItdW5kZXJsaW5lO1xuICAgIGN1cnNvcjogaGVscDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAvLyBGaWd1cmVzXG4gIGZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLy8gQ29kZVxuICBjb2RlIHtcbiAgICBwYWRkaW5nOiAkY29kZS1wYWRkaW5nO1xuXG4gICAgYm9yZGVyOiAkY29kZS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvZGUtYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAkY29kZS1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGNvZGUtZm9udC13ZWlnaHQ7XG4gICAgY29sb3I6ICRjb2RlLWNvbG9yO1xuICB9XG5cbiAgLy8gS2V5c3Ryb2tlc1xuICBrYmQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAka2V5c3Ryb2tlLXBhZGRpbmc7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAka2V5c3Ryb2tlLWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGtleXN0cm9rZS1mb250O1xuICAgIGNvbG9yOiAka2V5c3Ryb2tlLWNvbG9yO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgka2V5c3Ryb2tlLXJhZGl1cykge1xuICAgICAgYm9yZGVyLXJhZGl1czogJGtleXN0cm9rZS1yYWRpdXM7XG4gICAgfVxuICB9XG59XG4iLCIkZGFyay1uYXYtY29sb3I6ICNmZmZmZmY7XG4kb3UtZ29sZDogIzg3NzE0ODtcbiRvdS1saWdodC1ncmF5OiAjZDdkN2Q3O1xuJG91LWdyYXk6ICMyZjJmMmY7XG4kb3UtbWVkaXVtLWdyYXk6ICNlNWU1ZTU7XG4kb3UtbWVkaXVtLWdyYXkyOiAjNmE2YTZhO1xuJG91LWRhcmtHcmF5OiAjMWQxZDFkO1xuJG91YWcteWVsbG93OiAjZmZlMTAwO1xuJG91YWctcmVkOiAjZTcxNzE3O1xuJG91YWctYmx1ZTogIzBmOTlkODsgIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeS1oZWxwZXJzXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgbGVhZCBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxlYWQtZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZSAqIDEuMjUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBsZWFkIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGVhZC1saW5laGVpZ2h0OiAxLjYgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzdWJoZWFkZXItY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0b3AgbWFyZ2luIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1tYXJnaW4tdG9wOiAwLjJyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBzdGF0aXN0aWMgbnVtYmVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdGF0LWZvbnQtc2l6ZTogMi41cmVtICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi10eXBvZ3JhcGh5LWhlbHBlcnMge1xuICAvLyBVc2UgdG8gY3JlYXRlIGEgc3ViaGVhZGluZyB1bmRlciBhIG1haW4gaGVhZGVyXG4gIC8vIE1ha2Ugc3VyZSB5b3UgcGFpciB0aGUgdHdvIGVsZW1lbnRzIGluIGEgPGhlYWRlcj4gZWxlbWVudCwgbGlrZSB0aGlzOlxuICAvLyA8aGVhZGVyPlxuICAvLyAgIDxoMT5IZWFkaW5nPC9oMT5cbiAgLy8gICA8aDI+U3ViaGVhZGluZzwvaDI+XG4gIC8vIDwvaGVhZGVyPlxuICAuc3ViaGVhZGVyIHtcbiAgICBtYXJnaW4tdG9wOiAkc3ViaGVhZGVyLW1hcmdpbi10b3A7XG4gICAgbWFyZ2luLWJvdHRvbTogJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tO1xuXG4gICAgZm9udC13ZWlnaHQ6ICRzdWJoZWFkZXItZm9udC13ZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRzdWJoZWFkZXItbGluZWhlaWdodDtcbiAgICBjb2xvcjogJHN1YmhlYWRlci1jb2xvcjtcbiAgfVxuXG4gIC8vIFVzZSB0byBzdHlsZSBhbiBpbnRyb2R1Y3RvcnkgbGVhZCwgZGVjaywgYmx1cmIsIGV0Yy5cbiAgLmxlYWQge1xuICAgIGZvbnQtc2l6ZTogJGxlYWQtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGVhZC1saW5laGVpZ2h0O1xuICB9XG5cbiAgLy8gVXNlIHRvIHN0eWxlIGEgbGFyZ2UgbnVtYmVyIHRvIGRpc3BsYXkgYSBzdGF0aXN0aWNcbiAgLnN0YXQge1xuICAgIGZvbnQtc2l6ZTogJHN0YXQtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgcCArICYge1xuICAgICAgbWFyZ2luLXRvcDogLTFyZW07XG4gICAgfVxuICB9XG5cbiAgdWwsIG9sIHtcbiAgICAvLyBVc2UgdG8gcmVtb3ZlIG51bWJlcnMgZnJvbSBvcmRlcmVkIGxpc3QgJiBidWxsZXRzIGZyb20gdW5vcmRlcmVkIGxpc3RcbiAgICAmLm5vLWJ1bGxldCB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AbWl4aW4gZm91bmRhdGlvbi10ZXh0LWFsaWdubWVudCB7XG4gIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRhbGlnbiBpbiAobGVmdCwgcmlnaHQsIGNlbnRlciwganVzdGlmeSkge1xuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIC4jeyRzaXplfS10ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAudGV4dC0jeyRhbGlnbn0ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogJGFsaWduO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBJZiBgdHJ1ZWAsIGFsbCBlbGVtZW50cyB3aWxsIGhhdmUgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMgd2hlbiBwcmludGVkLCB0byBzYXZlIG9uIGluay5cbi8vLyBAdHlwZSBCb29sZWFuXG4vLy8gQGdyb3VwIGdsb2JhbFxuJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBkaXNwbGF5cyBuZXh0IHRvIGFsbCBsaW5rcyB0aGVpciBcImhyZWZcIiB3aGVuIHByaW50ZWQuXG4vLy8gQHR5cGUgQm9vbGVhblxuLy8vIEBncm91cCBnbG9iYWxcbiRwcmludC1ocmVmczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gc2Fzcy1saW50OmRpc2FibGUtYWxsXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXByaW50LXN0eWxlcyB7XG4gIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgKiB7XG4gICAgICBAaWYgJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlcjogaDVicC5jb20vc1xuICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gICAgLmhpZGUtZm9yLXByaW50IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiAgICB0YWJsZS5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgICB0aGVhZC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgdGJvZHkuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxuICAgIHRyLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgICB0ZC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICAgIHRoLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG5cbiAgICAvLyBEaXNwbGF5IHRoZSBVUkwgb2YgYSBsaW5rIGFmdGVyIHRoZSB0ZXh0XG4gICAgYSxcbiAgICBhOnZpc2l0ZWQgeyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTt9XG4gICAgQGlmICRwcmludC1ocmVmcyB7XG4gICAgICBhW2hyZWZdOmFmdGVyIHsgY29udGVudDogJyAoJyBhdHRyKGhyZWYpICcpJzsgfVxuICAgIH1cblxuICAgIC8vIERvbid0IGRpc3BsYXkgdGhlIFVSTCBmb3IgaW1hZ2VzIG9yIEphdmFTY3JpcHQvaW50ZXJuYWwgbGlua3NcbiAgICAuaXIgYTphZnRlcixcbiAgICBhW2hyZWZePSdqYXZhc2NyaXB0OiddOmFmdGVyLFxuICAgIGFbaHJlZl49JyMnXTphZnRlciB7IGNvbnRlbnQ6ICcnOyB9XG5cbiAgICAvLyBEaXNwbGF5IHdoYXQgYW4gYWJicmV2aWF0aW9uIHN0YW5kcyBmb3IgYWZ0ZXIgdGhlIHRleHRcbiAgICBhYmJyW3RpdGxlXTphZnRlciB7IGNvbnRlbnQ6ICcgKCcgYXR0cih0aXRsZSkgJyknOyB9XG5cbiAgICAvLyBQcmV2ZW50IHBhZ2UgYnJlYWtzIGluIHRoZSBtaWRkbGUgb2YgYSBibG9ja3F1b3RlIG9yIHByZWZvcm1hdHRlZCB0ZXh0IGJsb2NrXG4gICAgcHJlLFxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGRhcmstZ3JheTtcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvLyBoNWJwLmNvbS90XG4gICAgdGhlYWQgeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7IH1cblxuICAgIHRyLFxuICAgIGltZyB7IHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuXG4gICAgaW1nIHsgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cblxuICAgIEBwYWdlIHsgbWFyZ2luOiAwLjVjbTsgfVxuXG4gICAgcCxcbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBvcnBoYW5zOiAzO1xuICAgICAgd2lkb3dzOiAzO1xuICAgIH1cblxuICAgIC8vIEF2b2lkIHBhZ2UgYnJlYWtzIGFmdGVyIGEgaGVhZGluZ1xuICAgIGgyLFxuICAgIGgzIHsgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7IH1cblxuICAgIC8vIEhlbHBlciB0byByZS1hbGxvdyBwYWdlIGJyZWFrcyBpbiB0aGUgbWlkZGxlIG9mIGNlcnRhaW4gZWxlbWVudHMgKGUuZy4gcHJlLCBibG9ja3F1b3RlLCB0cilcbiAgICAucHJpbnQtYnJlYWstaW5zaWRlIHtcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdXRvO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnV0dG9uXG4vLy8vXG5cbi8vLyBGb250IGZhbWlseSBmb3IgYnV0dG9uIGVsZW1lbnRzLlxuLy8vIEB0eXBlIEZvbnRcbiRidXR0b24tZm9udC1mYW1pbHk6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tcGFkZGluZzogMC44NWVtIDFlbSAhZGVmYXVsdDtcblxuLy8vIE1hcmdpbiBhcm91bmQgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZpbGwgZm9yIGJ1dHRvbnMuIENhbiBlaXRoZXIgYmUgYHNvbGlkYCBvciBgaG9sbG93YC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kYnV0dG9uLWZpbGw6IHNvbGlkICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIENvbG9yXG4kYnV0dG9uLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvbiBob3ZlciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBDb2xvclxuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpICFkZWZhdWx0O1xuXG4vLy8gRm9udCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBBbHRlcm5hdGl2ZSBmb250IGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tY29sb3ItYWx0OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBidXR0b25zLCBkZWZhdWx0ZWQgdG8gZ2xvYmFsLXJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciB3aWR0aCBmb3IgaG9sbG93IG91dGxpbmUgYnV0dG9uc1xuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoOiAxcHggIWRlZmF1bHQ7XG5cbi8vLyBTaXplcyBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBNYXBcbiRidXR0b24tc2l6ZXM6IChcbiAgdGlueTogMC42cmVtLFxuICBzbWFsbDogMC43NXJlbSxcbiAgZGVmYXVsdDogMC45cmVtLFxuICBsYXJnZTogMS4yNXJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcmluZyBjbGFzc2VzLiBBIG1hcCBvZiBjbGFzc2VzIHRvIG91dHB1dCBpbiB5b3VyIENTUywgbGlrZSBgLnNlY29uZGFyeWAsIGAuc3VjY2Vzc2AsIGFuZCBzbyBvbi5cbi8vLyBAdHlwZSBNYXBcbiRidXR0b24tcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZSAhZGVmYXVsdDtcblxuLy8vIG9wYWNpdHkgZm9yIGEgZGlzYWJsZWQgYnV0dG9uLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDogMC4yNSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgbGlnaHRuZXNzIG9uIGhvdmVyIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzczogLTIwJSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIGxpZ2h0bmVzcyBvbiBob3ZlciBmb3IgaG9sbG93IGJ1dHRvbnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3M6IC01MCUgIWRlZmF1bHQ7XG5cbi8vIEludGVybmFsOiBmbGlwIGZyb20gbWFyZ2luLXJpZ2h0IHRvIG1hcmdpbi1sZWZ0IGZvciBkZWZhdWx0c1xuQGlmICRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gJ3J0bCcge1xuICAkYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xufVxuXG4vLy8gdHJhbnNpdGlvbnMgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dCAhZGVmYXVsdDtcblxuLy8vIEFkZGl0aW9uYWwgcmVzcG9uc2l2ZSBjbGFzc2VzIGZvciAuZXhwYW5kZWRcbi8vLyBAdHlwZSBCb29sZWFuXG4kYnV0dG9uLXJlc3BvbnNpdmUtZXhwYW5kZWQ6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBUT0RPOiBEb2N1bWVudCBidXR0b24tYmFzZSgpIG1peGluXG5AbWl4aW4gYnV0dG9uLWJhc2Uge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcblxuICBAaWYgKHR5cGUtb2YoJGJ1dHRvbi1wYWRkaW5nKSA9PSAnbWFwJykge1xuICAgIEBlYWNoICRzaXplLCAkcGFkZGluZyBpbiAkYnV0dG9uLXBhZGRpbmcge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHBhZGRpbmc6ICRidXR0b24tcGFkZGluZztcbiAgfVxuXG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgdHJhbnNpdGlvbjogJGJ1dHRvbi10cmFuc2l0aW9uO1xuICBmb250LWZhbWlseTogJGJ1dHRvbi1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiBtYXAtZ2V0KCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLy8vIEV4cGFuZHMgYSBidXR0b24gdG8gbWFrZSBpdCBmdWxsLXdpZHRoLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbdHJ1ZV0gLSBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSB0aGUgZXhwYW5kIGJlaGF2aW9yLiBTZXQgdG8gYGZhbHNlYCB0byByZXZlcnNlIHRoaXMgYmVoYXZpb3IuXG5AbWl4aW4gYnV0dG9uLWV4cGFuZCgkZXhwYW5kOiB0cnVlKSB7XG4gIEBpZiAkZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW46ICRidXR0b24tbWFyZ2luO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSB2aXN1YWwgc3R5bGUgb2YgYSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRidXR0b24tYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQtaG92ZXIgWyRidXR0b24tYmFja2dyb3VuZC1ob3Zlcl0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24gb24gaG92ZXIuIFNldCB0byBgYXV0b2AgdG8gaGF2ZSB0aGUgbWl4aW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGhvdmVyIGNvbG9yLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBidXR0b24uIFNldCB0byBgYXV0b2AgdG8gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGNvbG9yIGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGJ1dHRvbi1zdHlsZShcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRidXR0b24tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yLFxuICAkYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6ICRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3Ncbikge1xuICBAaWYgJGNvbG9yID09IGF1dG8ge1xuICAgICRjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkYmFja2dyb3VuZCwgKCRidXR0b24tY29sb3IsICRidXR0b24tY29sb3ItYWx0KSk7XG4gIH1cblxuICBAaWYgJGJhY2tncm91bmQtaG92ZXIgPT0gYXV0byB7XG4gICAgJGJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAkYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3MpO1xuICB9XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gUmVtb3ZlcyBiYWNrZ3JvdW5kIGZpbGwgb24gaG92ZXIgYW5kIGZvY3VzIGZvciBob2xsb3cgYnV0dG9ucy5cbkBtaXhpbiBidXR0b24taG9sbG93IHtcbiAgJixcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmW2Rpc2FibGVkXSB7XG4gICAgJixcbiAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uLWhvbGxvdy1zdHlsZShcbiAgJGNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRob3Zlci1saWdodG5lc3M6ICRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzcyxcbiAgJGJvcmRlci13aWR0aDogJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoXG4pIHtcbiAgJGNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRob3Zlci1saWdodG5lc3MpO1xuXG4gIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkY29sb3I7XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICAmLmRpc2FibGVkLFxuICAgICZbZGlzYWJsZWRdIHtcbiAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkY29sb3I7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBkaXNhYmxlZCBzdHlsZXMgdG8gYSBidXR0b24gYnkgZmFkaW5nIHRoZSBlbGVtZW50LCByZXNldGluZyB0aGUgY3Vyc29yLCBhbmQgZGlzYWJsaW5nIHBvaW50ZXIgZXZlbnRzLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgZGlzYWJsZWQgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBkaXNhYmxlZCBidXR0b24uIFNldCB0byBgYXV0b2AgdG8gaGF2ZSB0aGUgbWl4aW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGNvbG9yIGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGJ1dHRvbi1kaXNhYmxlZChcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yXG4pIHtcbiAgQGlmICRjb2xvciA9PSBhdXRvIHtcbiAgICAkY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkYnV0dG9uLWNvbG9yLCAkYnV0dG9uLWNvbG9yLWFsdCkpO1xuICB9XG5cbiAgb3BhY2l0eTogJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXG4gICYsICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8vIEFkZHMgYSBkcm9wZG93biBhcnJvdyB0byBhIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNpemUgWzAuNGVtXSAtIFNpemUgb2YgdGhlIGFycm93LiBXZSByZWNvbW1lbmQgdXNpbmcgYW4gYGVtYCB2YWx1ZSBzbyB0aGUgdHJpYW5nbGUgc2NhbGVzIHdoZW4gdXNlZCBpbnNpZGUgZGlmZmVyZW50IHNpemVzIG9mIGJ1dHRvbnMuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFt3aGl0ZV0gLSBDb2xvciBvZiB0aGUgYXJyb3cuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRvZmZzZXQgWyRidXR0b24tcGFkZGluZ10gLSBEaXN0YW5jZSBiZXR3ZWVuIHRoZSBhcnJvdyBhbmQgdGhlIHRleHQgb2YgdGhlIGJ1dHRvbi4gRGVmYXVsdHMgdG8gd2hhdGV2ZXIgdGhlIHJpZ2h0IHBhZGRpbmcgb2YgYSBidXR0b24gaXMuXG5AbWl4aW4gYnV0dG9uLWRyb3Bkb3duKFxuICAkc2l6ZTogMC40ZW0sXG4gICRjb2xvcjogJHdoaXRlLFxuICAkb2Zmc2V0OiBnZXQtc2lkZSgkYnV0dG9uLXBhZGRpbmcsIHJpZ2h0KVxuKSB7XG4gICY6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHNpemUsICRjb2xvciwgZG93bik7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMC40ZW07IC8vIEFsaWducyB0aGUgYXJyb3cgd2l0aCB0aGUgdGV4dCBvZiB0aGUgYnV0dG9uXG5cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6ICN7JGdsb2JhbC1yaWdodH07XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJG9mZnNldDtcbiAgfVxufVxuXG4vLy8gQWRkcyBhbGwgc3R5bGVzIGZvciBhIGJ1dHRvbi4gRm9yIG1vcmUgZ3JhbnVsYXIgY29udHJvbCBvdmVyIHN0eWxlcywgdXNlIHRoZSBpbmRpdmlkdWFsIGJ1dHRvbiBtaXhpbnMuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZXhwYW5kIFtmYWxzZV0gLSBTZXQgdG8gYHRydWVgIHRvIG1ha2UgdGhlIGJ1dHRvbiBmdWxsLXdpZHRoLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uIG9uIGhvdmVyLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBob3ZlciBjb2xvci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdHlsZSBbc29saWRdIC0gU2V0IHRvIGBob2xsb3dgIHRvIGNyZWF0ZSBhIGhvbGxvdyBidXR0b24uIFRoZSBjb2xvciBkZWZpbmVkIGluIGAkYmFja2dyb3VuZGAgd2lsbCBiZSB1c2VkIGFzIHRoZSBwcmltYXJ5IGNvbG9yIG9mIHRoZSBidXR0b24uXG5AbWl4aW4gYnV0dG9uKFxuICAkZXhwYW5kOiBmYWxzZSxcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRidXR0b24tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yLFxuICAkc3R5bGU6ICRidXR0b24tZmlsbFxuKSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1iYXNlO1xuXG4gIEBpZiAkc3R5bGUgPT0gc29saWQge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmFja2dyb3VuZCwgJGJhY2tncm91bmQtaG92ZXIsICRjb2xvcik7XG4gIH1cbiAgQGVsc2UgaWYgJHN0eWxlID09IGhvbGxvdyB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdztcbiAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRiYWNrZ3JvdW5kKTtcbiAgfVxuXG4gIEBpZiAkZXhwYW5kIHtcbiAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWJ1dHRvbiB7XG4gIC5idXR0b24ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbjtcblxuICAgIC8vIFNpemVzXG4gICAgQGVhY2ggJHNpemUsICR2YWx1ZSBpbiBtYXAtcmVtb3ZlKCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpIHtcbiAgICAgICYuI3skc2l6ZX0ge1xuICAgICAgICBmb250LXNpemU6ICR2YWx1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmV4cGFuZGVkIHsgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDsgfVxuXG4gICAgQGlmICRidXR0b24tcmVzcG9uc2l2ZS1leHBhbmRlZCB7XG4gICAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgjeyRzaXplfSBvbmx5KSB7XG4gICAgICAgICAgJi4jeyRzaXplfS1vbmx5LWV4cGFuZGVkIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgjeyRzaXplfSBkb3duKSB7XG4gICAgICAgICAgICAmLiN7JHNpemV9LWRvd24tZXhwYW5kZWQge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoI3skc2l6ZX0pIHtcbiAgICAgICAgICAgICYuI3skc2l6ZX0tZXhwYW5kZWQge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIENvbG9yc1xuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gaG9sbG93IHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRjb2xvciwgYXV0bywgYXV0byk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi4jeyRuYW1lfS5kcm9wZG93bjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERpc2FibGVkIHN0eWxlXG4gICAgJi5kaXNhYmxlZCxcbiAgICAmW2Rpc2FibGVkXSB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZGlzYWJsZWQ7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWRpc2FibGVkKCRjb2xvciwgYXV0byk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBIb2xsb3cgc3R5bGVcbiAgICBAaWYgJGJ1dHRvbi1maWxsICE9IGhvbGxvdyB7XG4gICAgICAmLmhvbGxvdyB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGU7XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIENsZWFyIHN0eWxlXG4gICAgQGlmICRidXR0b24tZmlsbCAhPSBjbGVhciB7XG4gICAgICAmLmNsZWFyIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdztcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZTtcblxuICAgICAgICAmLCAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAmLCAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGNvbG9yKTtcblxuICAgICAgICAgICAgJiwgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAmLFxuICAgICAgICAgICAgICAmLmRpc2FibGVkLFxuICAgICAgICAgICAgICAmW2Rpc2FibGVkXSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERyb3Bkb3duIGFycm93XG4gICAgJi5kcm9wZG93biB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZHJvcGRvd247XG5cbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgPT0gaG9sbG93IHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRidXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmhvbGxvdywgJi5jbGVhciB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCdXR0b24gd2l0aCBkcm9wZG93biBhcnJvdyBvbmx5XG4gICAgJi5hcnJvdy1vbmx5OjphZnRlciB7XG4gICAgICB0b3A6IC0wLjFlbTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICB9XG4gIH1cblxuICBhLmJ1dHRvbiB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRm9udCBjb2xvciBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIG9mIHBsYWNlaG9sZGVyIHRleHQgd2l0aGluIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICM4NzcxNDggIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBGb250XG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1saW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgZm9jdXNlZCBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtZm9jdXM6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgZGlzYWJsZWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBmb2N1c2VkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAxcHggc29saWQgJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wYWRkaW5nOiAkZm9ybS1zcGFjaW5nIC8gMiAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgaW5zaWRlIHRleHQgaW5wdXRzIHdoZW4gbm90IGZvY3VzZWQuXG4vLy8gQHR5cGUgU2hhZG93XG4kaW5wdXQtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIDAuMSkgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IG91dHNpZGUgdGV4dCBpbnB1dHMgd2hlbiBmb2N1c2VkLlxuLy8vIEB0eXBlIFNoYWRvd1xuJGlucHV0LXNoYWRvdy1mb2N1czogMCAwIDVweCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBDdXJzb3IgdG8gdXNlIHdoZW4gaG92ZXJpbmcgb3ZlciBhIGRpc2FibGVkIHRleHQgaW5wdXQuXG4vLy8gQHR5cGUgQ3Vyc29yXG4kaW5wdXQtY3Vyc29yLWRpc2FibGVkOiBub3QtYWxsb3dlZCAhZGVmYXVsdDtcblxuLy8vIFByb3BlcnRpZXMgdG8gdHJhbnNpdGlvbiBvbiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBUcmFuc2l0aW9uXG4kaW5wdXQtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVzIHRoZSB1cC9kb3duIGJ1dHRvbnMgdGhhdCBDaHJvbWUgYW5kIEZpcmVmb3ggYWRkIHRvIGA8aW5wdXQgdHlwZT0nbnVtYmVyJz5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRpbnB1dC1udW1iZXItc3Bpbm5lcnM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBSYWRpdXMgZm9yIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBmb3JtIGJ1dHRvbnMsIGRlZmF1bHRlZCB0byBnbG9iYWwtcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLWVsZW1lbnQge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSAqIHVuaXRsZXNzLWNhbGMoJGlucHV0LWxpbmUtaGVpZ2h0KSkgKyAoZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICd0b3AnKSArIGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAnYm90dG9tJykpIC0gcmVtLWNhbGMoMSk7XG5cbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nO1xuXG4gIGJvcmRlcjogJGlucHV0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGlucHV0LXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQ7XG4gIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3c7XG5cbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuXG4gIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgfVxuXG4gIC8vIEZvY3VzIHN0YXRlXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLWZvY3VzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzO1xuICAgIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3ctZm9jdXM7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS10ZXh0IHtcbiAgLy8gVGV4dCBpbnB1dHNcbiAgI3t0ZXh0LWlucHV0cygpfSxcbiAgdGV4dGFyZWEge1xuICAgIEBpbmNsdWRlIGZvcm0tZWxlbWVudDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICB9XG5cbiAgLy8gVGV4dCBhcmVhc1xuICB0ZXh0YXJlYSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgJltyb3dzXSB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgaW5wdXQsXG4gIHRleHRhcmVhIHtcbiAgICAvLyBEaXNhYmxlZC9yZWFkb25seSBzdGF0ZVxuICAgICY6ZGlzYWJsZWQsXG4gICAgJltyZWFkb25seV0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ7XG4gICAgICBjdXJzb3I6ICRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgc3R5bGVzIG9uIGJ1dHRvbi1saWtlIGlucHV0c1xuICBbdHlwZT0nc3VibWl0J10sXG4gIFt0eXBlPSdidXR0b24nXSB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAkZm9ybS1idXR0b24tcmFkaXVzO1xuICB9XG5cbiAgLy8gUmVzZXQgTm9ybWFsaXplIHNldHRpbmcgY29udGVudC1ib3ggdG8gc2VhcmNoIGVsZW1lbnRzXG4gIGlucHV0W3R5cGU9J3NlYXJjaCddIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuXG4gIC8vIE51bWJlciBpbnB1dCBzdHlsZXNcbiAgW3R5cGU9J251bWJlciddIHtcbiAgICBAaWYgbm90ICRpbnB1dC1udW1iZXItc3Bpbm5lcnMge1xuICAgICAgLW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG5cbiAgICAgICY6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gICAgICAmOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUGxhY2Vob2xkZXIgdGV4dFxuICA6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogIzg3NzE0ODtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtZmFtaWx5OiAnYmViYXNfbmV1ZWJvbGQnLCBzYW5zLXNlcmlmO1xuICAgIG9wYWNpdHk6IDEwMDsgXG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tY2hlY2tib3gge1xuICBbdHlwZT0nZmlsZSddLFxuICBbdHlwZT0nY2hlY2tib3gnXSxcbiAgW3R5cGU9J3JhZGlvJ10ge1xuICAgIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIH1cblxuICAvLyBTdHlsZXMgZm9yIGlucHV0L2xhYmVsIHNpYmxpbmdzXG4gIFt0eXBlPSdjaGVja2JveCddICsgbGFiZWwsXG4gIFt0eXBlPSdyYWRpbyddICsgbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG5cbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkZm9ybS1zcGFjaW5nICogMC41O1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkZm9ybS1zcGFjaW5nO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAmW2Zvcl0ge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxuXG4gIC8vIFN0eWxlcyBmb3IgaW5wdXRzIGluc2lkZSBsYWJlbHNcbiAgbGFiZWwgPiBbdHlwZT0nY2hlY2tib3gnXSxcbiAgbGFiZWwgPiBbdHlwZT0ncmFkaW8nXSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gIH1cblxuICAvLyBOb3JtYWxpemUgZmlsZSBpbnB1dCB3aWR0aFxuICBbdHlwZT0nZmlsZSddIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIENvbG9yIGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGZvcm0tbGFiZWwtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgZm9yIGZvcm0gbGFiZWxzLiBUaGUgaGlnaGVyIHRoZSBudW1iZXIsIHRoZSBtb3JlIHNwYWNlIGJldHdlZW4gdGhlIGxhYmVsIGFuZCBpdHMgaW5wdXQgZmllbGQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1sYWJlbC1saW5lLWhlaWdodDogMS44ICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG5cbiAgZm9udC1zaXplOiAkZm9ybS1sYWJlbC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS1sYWJlbC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG59XG5cbkBtaXhpbiBmb3JtLWxhYmVsLW1pZGRsZSB7XG4gICRpbnB1dC1ib3JkZXItd2lkdGg6IGdldC1ib3JkZXItdmFsdWUoJGlucHV0LWJvcmRlciwgd2lkdGgpO1xuXG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIHBhZGRpbmc6ICgkZm9ybS1zcGFjaW5nIC8gMiArIHJlbS1jYWxjKCRpbnB1dC1ib3JkZXItd2lkdGgpKSAwO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWxhYmVsIHtcbiAgbGFiZWwge1xuICAgIEBpbmNsdWRlIGZvcm0tbGFiZWw7XG5cbiAgICAmLm1pZGRsZSB7XG4gICAgICBAaW5jbHVkZSBmb3JtLWxhYmVsLW1pZGRsZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWxwdGV4dC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWxwdGV4dC1mb250LXNpemU6IHJlbS1jYWxjKDEzKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzdHlsZSBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIEtleXdvcmRcbiRoZWxwdGV4dC1mb250LXN0eWxlOiBpdGFsaWMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0taGVscHRleHQge1xuICAuaGVscC10ZXh0IHtcbiAgICAkbWFyZ2luLXRvcDogKCRmb3JtLXNwYWNpbmcgKiAwLjUpICogLTE7XG5cbiAgICBtYXJnaW4tdG9wOiAkbWFyZ2luLXRvcDtcbiAgICBmb250LXNpemU6ICRoZWxwdGV4dC1mb250LXNpemU7XG4gICAgZm9udC1zdHlsZTogJGhlbHB0ZXh0LWZvbnQtc3R5bGU7XG4gICAgY29sb3I6ICRoZWxwdGV4dC1jb2xvcjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIENvbG9yIG9mIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXByZWZpeC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1wcmVmaXgtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTGVmdC9yaWdodCBwYWRkaW5nIG9mIGFuIHByZS9wb3N0Zml4ZWQgaW5wdXQgbGFiZWxcbiRpbnB1dC1wcmVmaXgtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1wcmVwb3N0Zml4IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKiAkaW5wdXQtbGluZS1oZWlnaHQpICsgKGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAndG9wJykgKyBnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ2JvdHRvbScpKSAtIHJlbS1jYWxjKDEpO1xuXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgZGlzcGxheTogaWYoJGdsb2JhbC1mbGV4Ym94LCBmbGV4LCB0YWJsZSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgfVxuXG4gICAgPiA6Zmlyc3QtY2hpbGQge1xuICAgICAgJiwgJi5pbnB1dC1ncm91cC1idXR0b24gPiAqIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIDAgJGlucHV0LXJhZGl1cyAkaW5wdXQtcmFkaXVzIDAsICRpbnB1dC1yYWRpdXMgMCAwICRpbnB1dC1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cblxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgJiwgJi5pbnB1dC1ncm91cC1idXR0b24gPiAqIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsICRpbnB1dC1yYWRpdXMgMCAwICRpbnB1dC1yYWRpdXMsIDAgJGlucHV0LXJhZGl1cyAkaW5wdXQtcmFkaXVzIDApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICVpbnB1dC1ncm91cC1jaGlsZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtbGFiZWwge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIHBhZGRpbmc6IDAgJGlucHV0LXByZWZpeC1wYWRkaW5nO1xuICAgIGJvcmRlcjogJGlucHV0LXByZWZpeC1ib3JkZXI7XG4gICAgYmFja2dyb3VuZDogJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kO1xuXG4gICAgY29sb3I6ICRpbnB1dC1wcmVmaXgtY29sb3I7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC1wcmVmaXgtYm9yZGVyKSB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgICAgbWluLXdpZHRoOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogMSU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgYSxcbiAgICBpbnB1dCxcbiAgICBidXR0b24sXG4gICAgbGFiZWwge1xuICAgICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG5cbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGhlaWdodDogJGhlaWdodDtcbiAgICAgIH1cbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gICAgfVxuICB9XG5cbiAgLy8gU3BlY2lmaWNpdHkgYnVtcCBuZWVkZWQgdG8gcHJldmVudCBvdmVycmlkZSBieSBidXR0b25zXG4gIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYXJvdW5kIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kZmllbGRzZXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZpZWxkc2V0LXBhZGRpbmc6IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGFyb3VuZCBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgYmV0d2VlbiB0aGUgbGVnZW5kIHRleHQgYW5kIGZpZWxkc2V0IGJvcmRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsZWdlbmQtcGFkZGluZzogcmVtLWNhbGMoMCAzKSAhZGVmYXVsdDtcblxuQG1peGluIGZpZWxkc2V0IHtcbiAgbWFyZ2luOiAkZmllbGRzZXQtbWFyZ2luO1xuICBwYWRkaW5nOiAkZmllbGRzZXQtcGFkZGluZztcbiAgYm9yZGVyOiAkZmllbGRzZXQtYm9yZGVyO1xuXG4gIGxlZ2VuZCB7XG4gICAgLy8gQ292ZXJzIHVwIHRoZSBmaWVsZHNldCdzIGJvcmRlciB0byBjcmVhdGUgYXJ0aWZpY2lhbCBwYWRkaW5nXG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IHJlbS1jYWxjKC0zKTtcbiAgICBwYWRkaW5nOiAkbGVnZW5kLXBhZGRpbmc7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1maWVsZHNldCB7XG4gIGZpZWxkc2V0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICBsZWdlbmQge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nICogMC41O1xuICB9XG5cbiAgLmZpZWxkc2V0IHtcbiAgICBAaW5jbHVkZSBmaWVsZHNldDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHNlbGVjdCBtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiB0aGUgZHJvcGRvd24gdHJpYW5nbGUgaW5zaWRlIHNlbGVjdCBtZW51cy4gU2V0IHRvIGB0cmFuc3BhcmVudGAgdG8gcmVtb3ZlIGl0IGVudGlyZWx5LlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LXRyaWFuZ2xlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIHNlbGVjdCBtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1zZWxlY3Qge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSAqIHVuaXRsZXNzLWNhbGMoJGlucHV0LWxpbmUtaGVpZ2h0KSkgKyAoZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICd0b3AnKSArIGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAnYm90dG9tJykpIC0gcmVtLWNhbGMoMSk7XG5cbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZztcblxuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRzZWxlY3QtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0LWJhY2tncm91bmQ7XG5cbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuXG4gIEBpZiAkc2VsZWN0LXRyaWFuZ2xlLWNvbG9yICE9IHRyYW5zcGFyZW50IHtcbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLXRyaWFuZ2xlKCRzZWxlY3QtdHJpYW5nbGUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtb3JpZ2luOiBjb250ZW50LWJveDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZ2xvYmFsLXJpZ2h0ICgtJGZvcm0tc3BhY2luZykgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuXG4gICAgcGFkZGluZy0jeyRnbG9iYWwtcmlnaHR9OiAoJGZvcm0tc3BhY2luZyAqIDEuNSk7XG4gIH1cblxuICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gIH1cblxuICAvLyBGb2N1cyBzdGF0ZVxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci1mb2N1cztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1mb2N1cztcbiAgICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93LWZvY3VzO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gICAgfVxuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgJjpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ7XG4gICAgY3Vyc29yOiAkaW5wdXQtY3Vyc29yLWRpc2FibGVkO1xuICB9XG5cbiAgLy8gSGlkZSB0aGUgZHJvcGRvd24gYXJyb3cgc2hvd24gaW4gbmV3ZXIgSUUgdmVyc2lvbnNcbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICZbbXVsdGlwbGVdIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXNlbGVjdCB7XG4gIHNlbGVjdCB7XG4gICAgQGluY2x1ZGUgZm9ybS1zZWxlY3Q7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGFiaWRlXG4vLy8vXG5cbi8vLyBTZXRzIGlmIGVycm9yIHN0eWxlcyBzaG91bGQgYmUgYWRkZWQgdG8gaW5wdXRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhYmlkZS1pbnB1dHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGlmIGVycm9yIHN0eWxlcyBzaG91bGQgYmUgYWRkZWQgdG8gbGFiZWxzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhYmlkZS1sYWJlbHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIHRvIHVzZSBmb3IgaW52YWxpZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHRvIHVzZSBmb3IgbGFiZWxzIG9mIGludmFsaWQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1lcnJvci1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaW5wdXQtZXJyb3ItZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3R5bGVzIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgb2YgYW4gaW5wdXQgZmllbGQgdG8gaGF2ZSBhbiBlcnJvciBzdGF0ZS5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYWxlcnQtY29sb3JdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgYmFja2dyb3VuZCBhbmQgYm9yZGVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFja2dyb3VuZC1saWdodGVuIFsxMCVdIC0gTGlnaHRuZXNzIGxldmVsIG9mIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGZvcm0taW5wdXQtZXJyb3IoXG4gICRiYWNrZ3JvdW5kOiAkaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkLFxuICAkYmFja2dyb3VuZC1saWdodGVuOiAxMCVcbikge1xuICAmOm5vdCg6Zm9jdXMpIHtcbiAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1peCgkYmFja2dyb3VuZCwgJHdoaXRlLCAkYmFja2dyb3VuZC1saWdodGVuKTtcblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZXJyb3Igc3R5bGVzIHRvIGEgZm9ybSBlbGVtZW50LCB1c2luZyB0aGUgdmFsdWVzIGluIHRoZSBzZXR0aW5ncyBmaWxlLlxuQG1peGluIGZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAkZm9ybS1zcGFjaW5nICogLTAuNTtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcblxuICBmb250LXNpemU6ICRpbnB1dC1lcnJvci1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZXJyb3ItY29sb3I7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tZXJyb3Ige1xuICBAaWYgJGFiaWRlLWlucHV0cyB7XG4gICAgLy8gRXJyb3IgY2xhc3MgZm9yIGludmFsaWQgaW5wdXRzXG4gICAgLmlzLWludmFsaWQtaW5wdXQge1xuICAgICAgQGluY2x1ZGUgZm9ybS1pbnB1dC1lcnJvcjtcbiAgICB9XG4gIH1cblxuICBAaWYgJGFiaWRlLWxhYmVscyB7XG4gICAgLy8gRXJyb3IgY2xhc3MgZm9yIGxhYmVscyBvZiBpbnZhbGlkIG91dHB1dHNcbiAgICAuaXMtaW52YWxpZC1sYWJlbCB7XG4gICAgICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDtcbiAgICB9XG4gIH1cblxuICAvLyBGb3JtIGVycm9yIGVsZW1lbnRcbiAgLmZvcm0tZXJyb3Ige1xuICAgIEBpbmNsdWRlIGZvcm0tZXJyb3I7XG5cbiAgICAmLmlzLXZpc2libGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBhY2NvcmRpb25cbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiBhbiBhY2NvcmRpb24gZ3JvdXAuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhZGRzIHBsdXMgYW5kIG1pbnVzIGljb25zIHRvIHRoZSBzaWRlIG9mIGVhY2ggYWNjb3JkaW9uIHRpdGxlLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhY2NvcmRpb24tcGx1c21pbnVzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIGFjY29yZGlvbiB0aXRsZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9uLXRpdGxlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIGZvciBpdGVtcyBpbiBhIE1lbnUuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24taXRlbS1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb24gaG92ZXIgZm9yIGl0ZW1zIGluIGEgTWVudS5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIG9mIGFuIGFjY29yZGlvbiBpdGVtLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRhY2NvcmRpb24taXRlbS1wYWRkaW5nOiAxLjI1cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFuIGFjY29yZGlvbiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gdGhlIHNhbWUgZWxlbWVudCB0aGF0IGdldHMgYGRhdGEtYWNjb3JkaW9uYC5cbkBtaXhpbiBhY2NvcmRpb24tY29udGFpbmVyIChcbiAgJGJhY2tncm91bmQ6ICRhY2NvcmRpb24tYmFja2dyb3VuZFxuKSB7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgJltkaXNhYmxlZF0ge1xuICAgIC5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgYWNjb3JkaW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gdGhlIGxpc3QgaXRlbSB3aXRoaW4gYW4gYWNjb3JkaW9uIHVsLlxuQG1peGluIGFjY29yZGlvbi1pdGVtIHtcbiAgJjpmaXJzdC1jaGlsZCA+IDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgJGdsb2JhbC1yYWRpdXMgMCAwO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkID4gOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAkZ2xvYmFsLXJhZGl1cyAkZ2xvYmFsLXJhZGl1cztcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSB0aXRsZSBvZiBhbiBhY2NvcmRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byB0aGUgbGluayB3aXRoaW4gYW4gYWNjb3JkaW9uIGl0ZW0uXG5AbWl4aW4gYWNjb3JkaW9uLXRpdGxlIChcbiAgJHBhZGRpbmc6ICRhY2NvcmRpb24taXRlbS1wYWRkaW5nLFxuICAkZm9udC1zaXplOiAkYWNjb3JkaW9uLXRpdGxlLWZvbnQtc2l6ZSxcbiAgJGNvbG9yOiAkYWNjb3JkaW9uLWl0ZW0tY29sb3IsXG4gICRib3JkZXI6ICRhY2NvcmRpb24tY29udGVudC1ib3JkZXIsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlclxuKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gIGJvcmRlcjogJGJvcmRlcjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcblxuICBmb250LXNpemU6ICRmb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gIDpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKSA+ICYge1xuICAgIGJvcmRlci1ib3R0b206ICRib3JkZXI7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtaG92ZXI7XG4gIH1cblxuICBAaWYgJGFjY29yZGlvbi1wbHVzbWludXMge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgICN7JGdsb2JhbC1yaWdodH06IDFyZW07XG4gICAgICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICAgICAgY29udGVudDogJysnO1xuICAgIH1cblxuICAgIC5pcy1hY3RpdmUgPiAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcMjAxMyc7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYWNjb3JkaW9uIGNvbnRlbnQuIEFwcGx5IHRoaXMgdG8gdGhlIGNvbnRlbnQgcGFuZSBiZWxvdyBhbiBhY2NvcmRpb24gaXRlbSdzIHRpdGxlLlxuQG1peGluIGFjY29yZGlvbi1jb250ZW50IChcbiAgJHBhZGRpbmc6ICRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nLFxuICAkYm9yZGVyOiAkYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyLFxuICAkYmFja2dyb3VuZDogJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQsXG4gICRjb2xvcjogJGFjY29yZGlvbi1jb250ZW50LWNvbG9yXG4pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBib3JkZXItYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcblxuICBjb2xvcjogJGNvbG9yO1xuXG4gIDpsYXN0LWNoaWxkID4gJjpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWFjY29yZGlvbiB7XG4gIC5hY2NvcmRpb24ge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi1jb250YWluZXI7XG4gIH1cblxuICAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi1pdGVtO1xuICB9XG5cbiAgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLXRpdGxlO1xuICB9XG5cbiAgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24tY29udGVudDtcbiAgfVxufVxuIiwiLy8vL1xuLy8vIEBncm91cCBhY2NvcmRpb24tbWVudVxuLy8vL1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBwYWRkaW5nLlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbm1lbnUtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IG5lc3RlZCBtYXJnaW5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb25tZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBzdWJtZW51IHBhZGRpbmcuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXBhZGRpbmc6ICRhY2NvcmRpb25tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGlmIGFjY29yZGlvbiBtZW51cyBoYXZlIHRoZSBkZWZhdWx0IGFycm93IHN0eWxlcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWNjb3JkaW9ubWVudS1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IGFycm93IGNvbG9yIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb25tZW51LWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgaXRlbSBwYWRkaW5nLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9ubWVudS1pdGVtLWJhY2tncm91bmQ6IG51bGwgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IGl0ZW0gYm9yZGVyLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9ubWVudS1ib3JkZXI6IG51bGwgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IGl0ZW0gcGFkZGluZy5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtYmFja2dyb3VuZDogbnVsbCAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgaXRlbSBwYWRkaW5nLlxuLy8vIEB0eXBlIExpc3RcbiRhY2NvcmRpb24tc3VibWVudS10b2dnbGUtYm9yZGVyOiAkYWNjb3JkaW9ubWVudS1ib3JkZXIgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IHN1Ym1lbnUgdG9nZ2xlIGJhY2tncm91bmQgd2lkdGguXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aDogNDBweCAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgc3VibWVudSB0b2dnbGUgYmFja2dyb3VuZCBoZWlnaHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1oZWlnaHQ6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBhcnJvdyBzaXplIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kYWNjb3JkaW9ubWVudS1hcnJvdy1zaXplOiA2cHggIWRlZmF1bHQ7XG5cbkBtaXhpbiB6Zi1hY2NvcmRpb24tbWVudS1sZWZ0LXJpZ2h0LWFycm93cyB7XG4gIC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQ6bm90KC5oYXMtc3VibWVudS10b2dnbGUpID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRhY2NvcmRpb25tZW51LWFycm93LXNpemUsICRhY2NvcmRpb25tZW51LWFycm93LWNvbG9yLCBkb3duKTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbWFyZ2luLXRvcDogLTEgKiAoJGFjY29yZGlvbm1lbnUtYXJyb3ctc2l6ZSAvIDIpO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgICB9XG4gIH1cblxuICAmLmFsaWduLWxlZnQgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMXJlbTtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG5cbiAgJi5hbGlnbi1yaWdodCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDFyZW07XG4gIH1cbn1cbkBtaXhpbiBmb3VuZGF0aW9uLWFjY29yZGlvbi1tZW51IHtcblxuICAuYWNjb3JkaW9uLW1lbnUge1xuICAgIEBpZiAkYWNjb3JkaW9ubWVudS1ib3JkZXIge1xuICAgICAgYm9yZGVyLWJvdHRvbTogJGFjY29yZGlvbm1lbnUtYm9yZGVyO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgIEBpZiAkYWNjb3JkaW9ubWVudS1ib3JkZXIge1xuICAgICAgICBib3JkZXItdG9wOiAkYWNjb3JkaW9ubWVudS1ib3JkZXI7XG4gICAgICAgIGJvcmRlci1yaWdodDogJGFjY29yZGlvbm1lbnUtYm9yZGVyO1xuICAgICAgICBib3JkZXItbGVmdDogJGFjY29yZGlvbm1lbnUtYm9yZGVyO1xuICAgICAgfVxuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBAaWYgJGFjY29yZGlvbm1lbnUtaXRlbS1iYWNrZ3JvdW5kIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGFjY29yZGlvbm1lbnUtaXRlbS1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgICAgcGFkZGluZzogJGFjY29yZGlvbm1lbnUtcGFkZGluZztcbiAgICB9XG5cbiAgICAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUgYSB7XG4gICAgICBwYWRkaW5nOiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLm5lc3RlZC5pcy1hY2NvcmRpb24tc3VibWVudSB7XG4gICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkYWNjb3JkaW9ubWVudS1uZXN0ZWQtbWFyZ2luKTtcbiAgICB9XG5cbiAgICAmLmFsaWduLSN7JGdsb2JhbC1yaWdodH0ge1xuICAgICAgLm5lc3RlZC5pcy1hY2NvcmRpb24tc3VibWVudSB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkKCRhY2NvcmRpb25tZW51LW5lc3RlZC1tYXJnaW4sIHJpZ2h0KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGFjY29yZGlvbm1lbnUtYXJyb3dzIHtcbiAgICAgIEBpbmNsdWRlIHpmLWFjY29yZGlvbi1tZW51LWxlZnQtcmlnaHQtYXJyb3dzO1xuXG4gICAgICAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50W2FyaWEtZXhwYW5kZWQ9J3RydWUnXSA+IGE6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUgbGkge1xuICAgIEBpZiAkYWNjb3JkaW9ubWVudS1ib3JkZXIge1xuICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgfVxuICB9XG5cbiAgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLmhhcy1zdWJtZW51LXRvZ2dsZSA+IGEge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aDtcbiAgfVxuXG4gIC8vIFN1Ym1lbnUgdG9nZ2xlXG4gIC5zdWJtZW51LXRvZ2dsZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAjeyRnbG9iYWwtcmlnaHR9OiAwO1xuXG4gICAgd2lkdGg6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoO1xuICAgIGhlaWdodDogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtaGVpZ2h0O1xuXG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogJGFjY29yZGlvbi1zdWJtZW51LXRvZ2dsZS1ib3JkZXI7XG5cbiAgICBAaWYgJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtYmFja2dyb3VuZCB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1iYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgIC8vIEFkZCB0aGUgYXJyb3cgdG8gdGhlIHRvZ2dsZVxuICAgICY6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSg2cHgsICRhY2NvcmRpb25tZW51LWFycm93LWNvbG9yLCBkb3duKTtcblxuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIC8vIFJvdGF0ZSB0aGUgYXJyb3cgd2hlbiBtZW51IGlzIG9wZW5cbiAgLnN1Ym1lbnUtdG9nZ2xlW2FyaWEtZXhwYW5kZWQ9J3RydWUnXTo6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKC0xKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xuICB9XG5cbiAgLnN1Ym1lbnUtdG9nZ2xlLXRleHQge1xuICAgIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBtZW51XG4vLy8vXG5cbi8vLyBNYXJnaW4gb2YgYSBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLy8gTGVmdC1oYW5kIG1hcmdpbiBvZiBhIG5lc3RlZCBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtbmVzdGVkLW1hcmdpbjogJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciBpdGVtcyBpbiBhIHBpbGwgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LWl0ZW1zLXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gbWFyZ2luIGZvciBpdGVtcyBpbiBhIHNpbXBsZSBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtc2ltcGxlLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgYW4gYWN0aXZlIG1lbnUgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYW4gYWN0aXZlIG1lbnUgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogZ2V0LWNvbG9yKHByaW1hcnkpICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIGFuIGljb24gYW5kIHRleHQgaW4gYSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1pY29uLXNwYWNpbmc6IDAuMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCYWNrd2FyZCBjb21wYXRpYmlsaXR5IGZvciBtZW51IHN0YXRlLiBJZiB0cnVlLCB0aGlzIGR1cGxpY2F0ZSBgYWN0aXZlYCB3aXRoIGBpcy1hY3RpdmVgLiBcbi8vLyBCdXQgcGxlYXNlIG5vdGUgdGhhdCBgYWN0aXZlYCB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgdmVyc2lvbnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJG1lbnUtc3RhdGUtYmFjay1jb21wYXQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrd2FyZCBjb21wYXRpYmlsaXR5IGZvciBtZW51IGNlbnRlcmVkLiBJZiB0cnVlLCB0aGlzIGR1cGxpY2F0ZSBgLm1lbnUtY2VudGVyZWQgPiAubWVudWAgd2l0aCBgLm1lbnUuYWxpZ24tY2VudGVyYC4gXG4vLy8gQnV0IHBsZWFzZSBub3RlIHRoYXQgYG1lbnUtY2VudGVyZWRgIHdpbGwgYmUgcmVtb3ZlZCBpbiB1cGNvbWluZyB2ZXJzaW9ucy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kbWVudS1jZW50ZXJlZC1iYWNrLWNvbXBhdDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2t3YXJkIGNvbXBhdGliaWxpdHkgZm9yIHVzaW5nIGBpY29uLSpgIGNsYXNzZXMgd2l0aG91dCBgLmljb25zYCBjbGFzc2VzXG4vLy8gQnV0IHBsZWFzZSBub3RlIHRoYXQgdGhpcyBiYWNrd2FyZCBjb21wYXRpYmlsaXR5IHdpbGwgYmUgcmVtb3ZlZCBpbiB1cGNvbWluZyB2ZXJzaW9ucy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kbWVudS1pY29ucy1iYWNrLWNvbXBhdDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIENyZWF0ZXMgdGhlIGJhc2Ugc3R5bGVzIGZvciBhIE1lbnUuXG5AbWl4aW4gbWVudS1iYXNlIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cblxuICBsaSB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICB9XG5cbiAgYSxcbiAgLmJ1dHRvbiB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6ICRtZW51LWl0ZW1zLXBhZGRpbmc7XG4gIH1cblxuICAvLyBSZXNldCBzdHlsZXMgb2YgaW5uZXIgZWxlbWVudHNcbiAgaW5wdXQsXG4gIHNlbGVjdCxcbiAgYSxcbiAgYnV0dG9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgaW5wdXQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuXG4vLy8gRXhwYW5kcyB0aGUgaXRlbXMgb2YgYSBNZW51LCBzbyBlYWNoIGl0ZW0gaXMgdGhlIHNhbWUgd2lkdGguXG5AbWl4aW4gbWVudS1leHBhbmQge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBsaSB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWxpZ24gbWVudSBpdGVtcy5cbkBtaXhpbiBtZW51LWFsaWduKCRhbGlnbm1lbnQpIHtcbiAgQGlmICRhbGlnbm1lbnQgPT0gbGVmdCB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtbGVmdDtcbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGFsaWdubWVudCA9PSByaWdodCB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cbiAgICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLnZlcnRpY2FsIGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG5cbiAgICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1yaWdodDtcblxuICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLWxlZnQ7XG4gICAgICB9XG5cbiAgICAgICYudmVydGljYWwge1xuICAgICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1yaWdodDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkYWxpZ25tZW50ID09IGNlbnRlciB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtbGVmdDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIGRpcmVjdGlvbiBvZiBhIE1lbnUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyIFtob3Jpem9udGFsXSAtIERpcmVjdGlvbiBvZiB0aGUgTWVudS4gQ2FuIGJlIGBob3Jpem9udGFsYCBvciBgdmVydGljYWxgLlxuQG1peGluIG1lbnUtZGlyZWN0aW9uKCRkaXI6IGhvcml6b250YWwpIHtcbiAgQGlmICRkaXIgPT0gaG9yaXpvbnRhbCB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGRpciA9PSB2ZXJ0aWNhbCB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAd2FybiAnVGhlIGRpcmVjdGlvbiB1c2VkIGZvciBtZW51LWRpcmVjdGlvbigpIG11c3QgYmUgaG9yaXpvbnRhbCBvciB2ZXJ0aWNhbC4nO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgc2ltcGxlIE1lbnUsIHdoaWNoIGhhcyBubyBwYWRkaW5nIG9yIGhvdmVyIHN0YXRlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciBbJGdsb2JhbC1sZWZ0XSAtIERpcmVjdGlvbiBvZiB0aGUgbWVudS4gVGhpcyBlZmZlY3RzIHRoZSBzaWRlIG9mIHRoZSBgPGxpPmAgdGhhdCByZWNlaXZlcyB0aGUgbWFyZ2luLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWFyZ2luIFskbWVudS1zaW1wbGUtbWFyZ2luXSAtIFRoZSBtYXJnaW4gdG8gYXBwbHkgdG8gZWFjaCBgPGxpPmAuXG5AbWl4aW4gbWVudS1zaW1wbGUoJGRpcjogJGdsb2JhbC1sZWZ0LCAkbWFyZ2luOiAkbWVudS1zaW1wbGUtbWFyZ2luKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICBsaSArIGxpIHtcbiAgICBtYXJnaW4tI3skZGlyfTogJG1hcmdpbjtcbiAgfVxuXG4gIGEge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIG5lc3RlZCBNZW51LCBieSBhZGRpbmcgYG1hcmdpbi1sZWZ0YCB0byB0aGUgbWVudS5cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkbWFyZ2luIFskbWVudS1uZXN0ZWQtbWFyZ2luXSAtIExlbmd0aCBvZiB0aGUgbWFyZ2luLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJG5lc3RlZC1hbGlnbm1lbnQgW2xlZnRdIC0gQWxpZ25tZW50IG9mIHRoZSBuZXN0ZWQgY2xhc3NcbkBtaXhpbiBtZW51LW5lc3RlZChcbiAgJG1hcmdpbjogJG1lbnUtbmVzdGVkLW1hcmdpbixcbiAgJG5lc3RlZC1hbGlnbm1lbnQ6IGxlZnRcbikge1xuICBAaWYgJG5lc3RlZC1hbGlnbm1lbnQgPT0gcmlnaHQge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkbWFyZ2luO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gIH1cbiAgQGVsc2Uge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRtYXJnaW47XG4gIH1cblxufVxuXG4vLy8gQWRkcyBiYXNpYyBzdHlsZXMgZm9yIGljb25zIGluIG1lbnVzLlxuQG1peGluIG1lbnUtaWNvbnMoKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGEge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIGltZyxcbiAgICBpLFxuICAgIHN2ZyB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICArIHNwYW4ge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBwb3NpdGlvbiBjbGFzc2VzIGZvciBpY29ucyB3aXRoaW4gYSBtZW51LlxuQG1peGluIG1lbnUtaWNvbi1wb3NpdGlvbigkcG9zaXRpb246IGxlZnQsICRzcGFjaW5nOiAkbWVudS1pY29uLXNwYWNpbmcpIHtcbiAgQGlmICRwb3NpdGlvbiA9PSBsZWZ0IHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmc7XG5cbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gcmlnaHQge1xuICAgIGxpIGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRzcGFjaW5nO1xuXG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHRvcCB7XG4gICAgbGkgYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG8gJHNwYWNpbmc7XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmc7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSBib3R0b20ge1xuICAgIGxpIGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogJHNwYWNpbmcgYXV0byAwO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWVudS10ZXh0IHtcbiAgcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG5cbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuQG1peGluIG1lbnUtc3RhdGUtYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgY29sb3I6ICRtZW51LWl0ZW0tY29sb3ItYWN0aXZlO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1tZW51IHtcbiAgLm1lbnUge1xuICAgIEBpbmNsdWRlIG1lbnUtYmFzZTtcblxuICAgIC8vIERlZmF1bHQgb3JpZW50YXRpb246IGhvcml6b250YWxcbiAgICAmLCAmLmhvcml6b250YWwge1xuICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG4gICAgfVxuXG4gICAgLy8gVmVydGljYWwgb3JpZW50YXRpb24gbW9kaWZpZXJcbiAgICAmLnZlcnRpY2FsIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgfVxuXG4gICAgLy8gRXZlbi13aWR0aCBtb2RpZmllciBmb3IgaG9yaXpvbnRhbCBvcmllbnRhdGlvblxuICAgICYuZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgfVxuXG4gICAgLy8gU2ltcGxlXG4gICAgJi5zaW1wbGUge1xuICAgICAgQGluY2x1ZGUgbWVudS1zaW1wbGU7XG4gICAgfVxuXG4gICAgLy8gQnJlYWtwb2ludCBzcGVjaWZpYyB2ZXJzaW9uc1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoJHNtYWxsOiBmYWxzZSkge1xuICAgICAgJi4jeyQtemYtc2l6ZX0taG9yaXpvbnRhbCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgICAgfVxuXG4gICAgICAmLiN7JC16Zi1zaXplfS12ZXJ0aWNhbCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tZXhwYW5kZWQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWV4cGFuZDtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tc2ltcGxlIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVzdGluZ1xuICAgICYubmVzdGVkIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkO1xuICAgIH1cblxuICAgIC8vIEljb24gQmFzZSBTdHlsZXNcbiAgICAmLmljb25zIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbnM7XG4gICAgfVxuXG4gICAgLy8gQmFja3dhcmQgQ29tcGF0aWJpbGl0eSBmb3IgYWN0aXZlIHN0YXRlXG4gICAgQGlmICRtZW51LWljb25zLWJhY2stY29tcGF0IHtcbiAgICAgICYuaWNvbi10b3AsXG4gICAgICAmLmljb24tcmlnaHQsXG4gICAgICAmLmljb24tYm90dG9tLFxuICAgICAgJi5pY29uLWxlZnQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWljb25zO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEljb24gTGVmdFxuICAgICYuaWNvbi1sZWZ0IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbihsZWZ0KTtcbiAgICB9XG5cbiAgICAvLyBJY29uIFJpZ2h0XG4gICAgJi5pY29uLXJpZ2h0IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbihyaWdodCk7XG4gICAgfVxuXG4gICAgLy8gSWNvbiBUb3BcbiAgICAmLmljb24tdG9wIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbih0b3ApO1xuICAgIH1cblxuICAgIC8vIEljb24gQm90dG9tXG4gICAgJi5pY29uLWJvdHRvbSB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24oYm90dG9tKTtcbiAgICB9XG5cbiAgICAvLyBBY3RpdmUgc3RhdGVcbiAgICAuaXMtYWN0aXZlID4gYSB7XG4gICAgICBAaW5jbHVkZSBtZW51LXN0YXRlLWFjdGl2ZTtcbiAgICB9XG4gICAgXG4gICAgLy8gQmFja3dhcmQgQ29tcGF0aWJpbGl0eSBmb3IgYWN0aXZlIHN0YXRlXG4gICAgQGlmICRtZW51LXN0YXRlLWJhY2stY29tcGF0IHtcbiAgICAgIC5hY3RpdmUgPiBhIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1zdGF0ZS1hY3RpdmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gbGVmdFxuICAgICYuYWxpZ24tI3skZ2xvYmFsLWxlZnR9IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24obGVmdCk7XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gcmlnaHRcbiAgICAmLmFsaWduLSN7JGdsb2JhbC1yaWdodH0ge1xuICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihyaWdodCk7XG5cbiAgICAgIC5uZXN0ZWQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkbmVzdGVkLWFsaWdubWVudDogcmlnaHQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFsaWduIGNlbnRlclxuICAgICYuYWxpZ24tY2VudGVyIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24oY2VudGVyKTtcbiAgICB9XG5cbiAgICAubWVudS10ZXh0IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtdGV4dDtcbiAgICB9XG4gIH1cblxuICBAaWYgJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQge1xuICAgIC5tZW51LWNlbnRlcmVkIHtcbiAgICAgID4gLm1lbnUge1xuICAgICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihjZW50ZXIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFByZXZlbnQgRk9VQyB3aGVuIHVzaW5nIHRoZSBSZXNwb25zaXZlIE1lbnUgcGx1Z2luXG4gIC5uby1qcyBbZGF0YS1yZXNwb25zaXZlLW1lbnVdIHVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBiYWRnZVxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBiYWRnZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRiYWRnZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBmb3IgYmFkZ2VzLlxuLy8vIEB0eXBlIENvbG9yXG4kYmFkZ2UtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdGVybmF0ZSB0ZXh0IGNvbG9yIGZvciBiYWRnZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRiYWRnZS1jb2xvci1hbHQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIENvbG9yaW5nIGNsYXNzZXMuIEEgbWFwIG9mIGNsYXNzZXMgdG8gb3V0cHV0IGluIHlvdXIgQ1NTLCBsaWtlIGAuc2Vjb25kYXJ5YCwgYC5zdWNjZXNzYCwgYW5kIHNvIG9uLlxuLy8vIEB0eXBlIE1hcFxuJGJhZGdlLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGJhZGdlcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRiYWRnZS1wYWRkaW5nOiAwLjNlbSAhZGVmYXVsdDtcblxuLy8vIE1pbmltdW0gd2lkdGggb2YgYSBiYWRnZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRiYWRnZS1taW53aWR0aDogMi4xZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgYmFkZ2VzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJhZGdlLWZvbnQtc2l6ZTogMC42cmVtICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGVzIHRoZSBiYXNlIHN0eWxlcyBmb3IgYSBiYWRnZS5cbkBtaXhpbiBiYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLXdpZHRoOiAkYmFkZ2UtbWlud2lkdGg7XG4gIHBhZGRpbmc6ICRiYWRnZS1wYWRkaW5nO1xuXG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICBmb250LXNpemU6ICRiYWRnZS1mb250LXNpemU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tYmFkZ2Uge1xuICAuYmFkZ2Uge1xuICAgIEBpbmNsdWRlIGJhZGdlO1xuXG4gICAgYmFja2dyb3VuZDogJGJhZGdlLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRiYWRnZS1jb2xvcjtcblxuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJhZGdlLXBhbGV0dGUge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICAgICAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGNvbG9yLCAoJGJhZGdlLWNvbG9yLCAkYmFkZ2UtY29sb3ItYWx0KSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVhZGNydW1ic1xuLy8vL1xuXG4vLy8gTWFyZ2luIGFyb3VuZCBhIGJyZWFkY3J1bWJzIGNvbnRhaW5lci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYnMtaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDExKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgQ29sb3JcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBhY3RpdmUgYnJlYWRjcnVtYiBsaW5rLlxuLy8vIEB0eXBlIENvbG9yXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBPcGFjaXR5IG9mIGRpc2FibGVkIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGJldHdlZW4gYnJlYWRjcnVtYiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1pdGVtLW1hcmdpbjogMC43NXJlbSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgbWFrZXMgYnJlYWRjcnVtYiBsaW5rcyB1cHBlcmNhc2UuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhZGRzIGEgc2VwZXJhdG9yIGJldHdlZW4gYnJlYWRjcnVtYiBsaW5rcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3I6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIElmIGl0IGV4aXN0cyAkYnJlYWRjcnVtYnMtaXRlbS1zbGFzaCBpcyB1c2VkIHRvIGJ1aWxkICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci4gU2VlIHRoZSBkb2N1bWVudGF0aW9uLlxuQGlmIHZhcmlhYmxlLWV4aXN0cyhicmVhZGNydW1icy1pdGVtLXNsYXNoKSB7XG4gICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvcjogJGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2g7XG59XG5cbi8vLyBVc2VkIGNoYXJhY3RlciBmb3IgdGhlIGJyZWFkY3J1bWIgc2VwYXJhdG9yLlxuLy8vIEB0eXBlIENvbnRlbnRcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtOiAnLycgIWRlZmF1bHQ7XG5cbi8vLyBVc2VkIGNoYXJhY3RlciBmb3IgdGhlIGJyZWFkY3J1bWIgc2VwYXJhdG9yIGluIHJ0bCBtb2RlLlxuLy8vIEB0eXBlIENvbnRlbnRcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtLXJ0bDogJ1xcXFwnICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgYnJlYWRjcnVtYiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8gSWYgaXQgZXhpc3RzICRicmVhZGNydW1icy1pdGVtLXNsYXNoLWNvbG9yIGlzIHVzZWQgdG8gYnVpbGQgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yLiBTZWUgdGhlIGRvY3VtZW50YXRpb24uXG5AaWYgdmFyaWFibGUtZXhpc3RzKGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2gtY29sb3IpIHtcbiAgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1zbGFzaC1jb2xvcjtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGJyZWFkY3J1bWJzIGNvbnRhaW5lciwgYWxvbmcgd2l0aCB0aGUgc3R5bGVzIGZvciB0aGUgYDxsaT5gIGFuZCBgPGE+YCBlbGVtZW50cyBpbnNpZGUgb2YgaXQuXG5AbWl4aW4gYnJlYWRjcnVtYnMtY29udGFpbmVyIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbjogJGJyZWFkY3J1bWJzLW1hcmdpbjtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAvLyBJdGVtIHdyYXBwZXJcbiAgbGkge1xuICAgIGZsb2F0OiAjeyRnbG9iYWwtbGVmdH07XG5cbiAgICBmb250LXNpemU6ICRicmVhZGNydW1icy1pdGVtLWZvbnQtc2l6ZTtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItY3VycmVudDtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG5cbiAgICBAaWYgJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuXG4gICAgQGlmICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvciB7XG4gICAgICAvLyBOZWVkIHRvIGVzY2FwZSB0aGUgYmFja3NsYXNoXG4gICAgICAkc2VwYXJhdG9yOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdsdHInLCAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbSwgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWl0ZW0tcnRsKTtcblxuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBtYXJnaW46IDAgJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luO1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgY29udGVudDogJHNlcGFyYXRvcjtcbiAgICAgICAgICBjb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkYnJlYWRjcnVtYnMtaXRlbS1tYXJnaW47XG4gICAgfVxuICB9XG5cbiAgLy8gUGFnZSBsaW5rc1xuICBhIHtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1icmVhZGNydW1icyB7XG4gIC5icmVhZGNydW1icyB7XG4gICAgQGluY2x1ZGUgYnJlYWRjcnVtYnMtY29udGFpbmVyO1xuXG4gICAgLmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBidXR0b24tZ3JvdXBcbi8vLy9cblxuLy8vIE1hcmdpbiBmb3IgYnV0dG9uIGdyb3Vwcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b25ncm91cC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBNYXJnaW4gYmV0d2VlbiBidXR0b25zIGluIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbmdyb3VwLXNwYWNpbmc6IDFweCAhZGVmYXVsdDtcblxuLy8vIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgYSBidXR0b24gZ3JvdXAuXG4vLy8gQHR5cGUgU3RyaW5nXG4kYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3I6ICcuYnV0dG9uJyAhZGVmYXVsdDtcblxuLy8vIE1heGltdW0gbnVtYmVyIG9mIGJ1dHRvbnMgdGhhdCBjYW4gYmUgaW4gYW4gZXZlbi13aWR0aCBidXR0b24gZ3JvdXAuIChPbmx5IG5lZWRlZCB3aGVuICRnbG9iYWwtZmxleGJveDogZmFsc2U7KVxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXg6IDYgIWRlZmF1bHQ7XG5cbi8vLyBEZXRlcm1pbmVzIGlmICRidXR0b24tcmFkaXVzIGlzIGFwcGxpZWQgdG8gZWFjaCBidXR0b24gb3IgdGhlIGJ1dHRvbiBncm91cCBhcyBhIHdob2xlLiBVc2UgJGdsb2JhbC1yYWRpdXMgaW4gX3NldHRpbmdzLnNjc3MgdG8gY2hhbmdlIHJhZGl1cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2g6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBBZGQgc3R5bGVzIGZvciBhIGJ1dHRvbiBncm91cCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRjaGlsZC1zZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgYSBidXR0b24gZ3JvdXAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzcGFjaW5nIFskYnV0dG9uZ3JvdXAtc3BhY2luZ10gLSBTcGFjaW5nIGJldHdlZW4gYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAoXG4gICRjaGlsZC1zZWxlY3RvcjogJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yLFxuICAkc3BhY2luZzogJGJ1dHRvbmdyb3VwLXNwYWNpbmdcbikge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgbWFyZ2luLWJvdHRvbTogJGJ1dHRvbmdyb3VwLW1hcmdpbjtcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB9XG4gIEBlbHNlIHtcbiAgICBmb250LXNpemU6IDA7XG4gIH1cblxuICAjeyRjaGlsZC1zZWxlY3Rvcn0ge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmc7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmc7XG4gICAgZm9udC1zaXplOiBtYXAtZ2V0KCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgfVxuXG4gICAgQGlmIG5vdCAkYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2gge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGZ1bGwtd2lkdGggYnV0dG9uIGdyb3VwLCBtYWtpbmcgZWFjaCBidXR0b24gZXF1YWwgd2lkdGguXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgYSBidXR0b24gZ3JvdXAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzcGFjaW5nIFskYnV0dG9uZ3JvdXAtc3BhY2luZ10gLSBTcGFjaW5nIGJldHdlZW4gYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAtZXhwYW5kKFxuICAkc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcixcbiAgJHNwYWNpbmc6ICRidXR0b25ncm91cC1zcGFjaW5nLFxuICAkY291bnQ6IG51bGxcbikge1xuICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IC0kc3BhY2luZztcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gICN7JHNlbGVjdG9yfSB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAvLyBPbmUgY2hpbGRcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAjeyRzcGFjaW5nfSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gVHdvIG9yIG1vcmUgY2hpbGRyZWVuXG4gICAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRidXR0b25ncm91cC1leHBhbmQtbWF4IHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgjeyRpfSkge1xuICAgICAgICAgICYsICY6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoI3skaX0pIH4gI3skc2VsZWN0b3J9IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKCN7cGVyY2VudGFnZSgxIC8gJGkpfSAtICN7JHNwYWNpbmd9KTtcbiAgICAgICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkc3BhY2luZztcblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nICogLSRidXR0b25ncm91cC1leHBhbmQtbWF4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gU3RhY2tzIHRoZSBidXR0b25zIGluIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcl0gLSBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIHRoZSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwLXN0YWNrKFxuICAkc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvclxuKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuXG4gICN7JHNlbGVjdG9yfSB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG5cbiAgICBAaWYgbm90ICRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaCB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgfVxuICAgIH1cblxuICB9XG59XG5cbi8vLyBVbi1zdGFja3MgdGhlIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgdGhlIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAtdW5zdGFjayhcbiAgJHNlbGVjdG9yOiAkYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3Jcbikge1xuICAjeyRzZWxlY3Rvcn0ge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgQGlmIG5vdCAkYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2gge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAwO1xuICAgICAgfVxuICAgIH1cblxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWJ1dHRvbi1ncm91cCB7XG4gIC5idXR0b24tZ3JvdXAge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cDtcblxuICAgIC8vIFNpemVzXG4gICAgQGVhY2ggJHNpemUsICR2YWx1ZSBpbiBtYXAtcmVtb3ZlKCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpIHtcbiAgICAgICYuI3skc2l6ZX0gI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICAgICAgZm9udC1zaXplOiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRXZlbi13aWR0aCBHcm91cFxuICAgICYuZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLWV4cGFuZDtcbiAgICB9XG5cbiAgICAvLyBDb2xvcnNcbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICBAaWYgJGJ1dHRvbi1maWxsICE9IGhvbGxvdyB7XG4gICAgICAgICYuI3skbmFtZX0gI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGNvbG9yLCBhdXRvLCBhdXRvKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAmLiN7JG5hbWV9ICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdztcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRjb2xvcik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0YWNrZWQsXG4gICAgJi5zdGFja2VkLWZvci1zbWFsbCxcbiAgICAmLnN0YWNrZWQtZm9yLW1lZGl1bSB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXAtc3RhY2s7XG5cbiAgICAgICYuZXhwYW5kZWQge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXAtZXhwYW5kO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuc3RhY2tlZC1mb3Itc21hbGwge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXVuc3RhY2s7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGFja2VkLWZvci1tZWRpdW0ge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXAtdW5zdGFjaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBjYWxsb3V0XG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZmFkZSB2YWx1ZSBmb3IgY2FsbG91dCBiYWNrZ3JvdW5kcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYWxsb3V0LWJhY2tncm91bmQtZmFkZTogODUlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgc3R5bGUgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIExpc3RcbiRjYWxsb3V0LWJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGJsYWNrLCAwLjI1KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2FsbG91dC1tYXJnaW46IDAgMCAxcmVtIDAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGlubmVyIHBhZGRpbmcgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNhbGxvdXQtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGNhbGxvdXRzLCBpZiB0aGUgY2FsbG91dCBoYXMgYSBkYXJrIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LWZvbnQtY29sb3ItYWx0OiAkYm9keS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgcmFkaXVzIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEFtb3VudCB0byB0aW50IGxpbmtzIHVzZWQgd2l0aGluIGNvbG9yZWQgcGFuZWxzLiBTZXQgdG8gYGZhbHNlYCB0byBkaXNhYmxlIHRoaXMgZmVhdHVyZS5cbi8vLyBAdHlwZSBOdW1iZXIgfCBCb29sZWFuXG4kY2FsbG91dC1saW5rLXRpbnQ6IDMwJSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBhIGNhbGxvdXQsIGluY2x1ZGluZyBwYWRkaW5nIGFuZCBtYXJnaW4uXG5AbWl4aW4gY2FsbG91dC1iYXNlKCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogJGNhbGxvdXQtbWFyZ2luO1xuICBwYWRkaW5nOiAkY2FsbG91dC1wYWRkaW5nO1xuXG4gIGJvcmRlcjogJGNhbGxvdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkY2FsbG91dC1yYWRpdXM7XG5cbiAgLy8gUmVzcGVjdCB0aGUgcGFkZGluZywgZm9vbC5cbiAgPiA6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBHZW5lcmF0ZSBxdWljayBzdHlsZXMgZm9yIGEgY2FsbG91dCB1c2luZyBhIHNpbmdsZSBjb2xvciBhcyBhIGJhc2VsaW5lLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGNhbGxvdXQtYmFja2dyb3VuZF0gLSBDb2xvciB0byB1c2UuXG5AbWl4aW4gY2FsbG91dC1zdHlsZSgkY29sb3I6ICRjYWxsb3V0LWJhY2tncm91bmQpIHtcbiAgJGJhY2tncm91bmQ6IHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlKTtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkY2FsbG91dC1mb250LWNvbG9yLCAkY2FsbG91dC1mb250LWNvbG9yLWFsdCkpO1xufVxuXG5AbWl4aW4gY2FsbG91dC1zaXplKCRwYWRkaW5nKSB7XG4gIHBhZGRpbmctdG9wOiAkcGFkZGluZztcbiAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gIHBhZGRpbmctYm90dG9tOiAkcGFkZGluZztcbiAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbn1cblxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FsbG91dC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRjYWxsb3V0LWJhY2tncm91bmRdIC0gQ29sb3IgdG8gdXNlLlxuQG1peGluIGNhbGxvdXQoJGNvbG9yOiAkY2FsbG91dC1iYWNrZ3JvdW5kKSB7XG4gIEBpbmNsdWRlIGNhbGxvdXQtYmFzZTtcbiAgQGluY2x1ZGUgY2FsbG91dC1zdHlsZSgkY29sb3IpO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1jYWxsb3V0IHtcbiAgLmNhbGxvdXQge1xuICAgIEBpbmNsdWRlIGNhbGxvdXQ7XG5cbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRmb3VuZGF0aW9uLXBhbGV0dGUge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIEBpbmNsdWRlIGNhbGxvdXQtc3R5bGUoJGNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNtYWxsIHtcbiAgICAgIEBpbmNsdWRlIGNhbGxvdXQtc2l6ZSgwLjVyZW0pO1xuICAgIH1cblxuICAgICYubGFyZ2Uge1xuICAgICAgQGluY2x1ZGUgY2FsbG91dC1zaXplKDNyZW0pO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgY2FyZFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FyZC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGNhcmRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FyZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FyZC1kaXZpZGVyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgc3R5bGUuXG4vLy8gQHR5cGUgTGlzdFxuJGNhcmQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNhcmQgc2hhZG93LlxuLy8vIEB0eXBlIExpc3RcbiRjYXJkLXNoYWRvdzogbm9uZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIHJhZGl1cy5cbi8vLyBAdHlwZSBMaXN0XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYXJkLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbi5cbi8vLyBAdHlwZSBudW1iZXJcbiRjYXJkLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FyZCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBjYXJkLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIGZvbnQgY29sb3Igb2YgdGhlIGNhcmQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXJnaW4gLSBCb3R0b20gbWFyZ2luIG9mIHRoZSBjYXJkLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGJvcmRlciAtIEJvcmRlciBhcm91bmQgdGhlIGNhcmQuXG4vLy8gQHBhcmFtIHtMaXN0fSAkcmFkaXVzIC0gYm9yZGVyIHJhZGl1cyBvZiB0aGUgY2FyZC5cbi8vLyBAcGFyYW0ge0xpc3R9ICRzaGFkb3cgLSBib3ggc2hhZG93IG9mIHRoZSBjYXJkLlxuQG1peGluIGNhcmQtY29udGFpbmVyKFxuICAkYmFja2dyb3VuZDogJGNhcmQtYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkY2FyZC1mb250LWNvbG9yLFxuICAkbWFyZ2luOiAkY2FyZC1tYXJnaW4tYm90dG9tLFxuICAkYm9yZGVyOiAkY2FyZC1ib3JkZXIsXG4gICRyYWRpdXM6ICRjYXJkLWJvcmRlci1yYWRpdXMsXG4gICRzaGFkb3c6ICRjYXJkLXNoYWRvd1xuKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBmbGV4LWdyb3c6IDE7XG4gIH1cblxuICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luO1xuXG4gIGJvcmRlcjogJGJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcblxuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogJHNoYWRvdztcblxuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICYgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FyZCBkaXZpZGVyLlxuQG1peGluIGNhcmQtZGl2aWRlcihcbiAgJGJhY2tncm91bmQ6ICRjYXJkLWRpdmlkZXItYmFja2dyb3VuZCxcbiAgJHBhZGRpbmc6ICRjYXJkLXBhZGRpbmdcbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG5cbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuXG4gICYgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FyZCBzZWN0aW9uLlxuQG1peGluIGNhcmQtc2VjdGlvbihcbiAgJHBhZGRpbmc6ICRjYXJkLXBhZGRpbmdcbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxuXG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gICYgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1jYXJkIHtcbiAgLmNhcmQge1xuICAgIEBpbmNsdWRlIGNhcmQtY29udGFpbmVyO1xuICB9XG5cbiAgLmNhcmQtZGl2aWRlciB7XG4gICAgQGluY2x1ZGUgY2FyZC1kaXZpZGVyO1xuICB9XG5cbiAgLmNhcmQtc2VjdGlvbiB7XG4gICAgQGluY2x1ZGUgY2FyZC1zZWN0aW9uO1xuICB9XG5cbiAgLy8gRm9yIElFIDExIC0gRmxleGJ1Z1xuICAvLyBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzL2lzc3Vlcy83NVxuICAuY2FyZC1pbWFnZSB7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBjbG9zZS1idXR0b25cbi8vLy9cblxuLy8vIERlZmF1bHQgcG9zaXRpb24gb2YgdGhlIGNsb3NlIGJ1dHRvbi4gVGhlIGZpcnN0IHZhbHVlIHNob3VsZCBiZSBgcmlnaHRgIG9yIGBsZWZ0YCwgYW5kIHRoZSBzZWNvbmQgdmFsdWUgc2hvdWxkIGJlIGB0b3BgIG9yIGBib3R0b21gLlxuLy8vIEB0eXBlIExpc3RcbiRjbG9zZWJ1dHRvbi1wb3NpdGlvbjogcmlnaHQgdG9wICFkZWZhdWx0O1xuXG4vLy8gUmlnaHQgKG9yIGxlZnQpIG9mZnNldChzKSBmb3IgYSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgTnVtYmVyfE1hcFxuJGNsb3NlYnV0dG9uLW9mZnNldC1ob3Jpem9udGFsOiAoXG4gIHNtYWxsOiAwLjY2cmVtLFxuICBtZWRpdW06IDFyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gVG9wIChvciBib3R0b20pIG9mZnNldChzKSBmb3IgYSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgTnVtYmVyfE1hcFxuJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbDogKFxuICBzbWFsbDogMC4zM2VtLFxuICBtZWRpdW06IDAuNXJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZShzKSBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlcnxNYXBcbiRjbG9zZWJ1dHRvbi1zaXplOiAoXG4gIHNtYWxsOiAxLjVlbSxcbiAgbWVkaXVtOiAyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gVGhlIGxpbmUtaGVpZ2h0IG9mIHRoZSBjbG9zZSBidXR0b24uIEl0IGFmZmVjdHMgdGhlIHNwYWNpbmcgb2YgdGhlIGVsZW1lbnQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2xvc2VidXR0b24tbGluZWhlaWdodDogMSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBDb2xvclxuJGNsb3NlYnV0dG9uLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiB0aGUgY2xvc2UgYnV0dG9uIHdoZW4gYmVpbmcgaG92ZXJlZCBvbi5cbi8vLyBAdHlwZSBDb2xvclxuJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyOiAkYmxhY2sgIWRlZmF1bHQ7XG5cblxuLy8vIEdldCB0aGUgc2l6ZSBhbmQgcG9zaXRpb24gZm9yIGEgY2xvc2UgYnV0dG9uLiBJZiB0aGUgaW5wdXQgdmFsdWUgaXMgYSBudW1iZXIsIHRoZSBudW1iZXIgaXMgcmV0dXJuZWQuIElmIHRoZSBpbnB1dCB2YWx1ZSBpcyBhIGNvbmZpZyBtYXAgYW5kIHRoZSBtYXAgaGFzIHRoZSBrZXkgYCRzaXplYCwgdGhlIHZhbHVlIGlzIHJldHVybmVkLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkdmFsdWUgLSBBIG51bWJlciBvciBtYXAgdGhhdCByZXByZXNlbnRzIHRoZSBzaXplIG9yIHBvc2l0aW9uIHZhbHVlKHMpIG9mIHRoZSBjbG9zZSBidXR0b24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIFRoZSBzaXplIG9mIHRoZSBjbG9zZSBidXR0b24gdG8gdXNlLlxuLy8vXG4vLy8gQHJldHVybiB7TnVtYmVyfSBUaGUgZ2l2ZW4gbnVtYmVyIG9yIHRoZSB2YWx1ZSBmb3VuZCBpbiB0aGUgbWFwLlxuQGZ1bmN0aW9uIC16Zi1nZXQtc2l6ZS12YWwoJHZhbHVlLCAkc2l6ZSkge1xuICAvLyBDaGVjayBpZiB0aGUgdmFsdWUgaXMgYSBudW1iZXJcbiAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyB7XG4gICAgLy8gSWYgaXQgaXMsIGp1c3QgcmV0dXJuIHRoZSBudW1iZXJcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuXG4gIC8vIENoZWNrIGlmIHRoZSBzaXplIG5hbWUgZXhpc3RzIGluIHRoZSB2YWx1ZSBtYXBcbiAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJHZhbHVlLCAkc2l6ZSkge1xuICAgIC8vIElmIGl0IGRvZXMsIHJldHVybiB0aGUgdmFsdWVcbiAgICBAcmV0dXJuIG1hcC1nZXQoJHZhbHVlLCAkc2l6ZSk7XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIHNpemUgYW5kIHBvc2l0aW9uIG9mIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgW21lZGl1bV0gLSBUaGUgc2l6ZSB0byB1c2UuIFNldCB0byBgc21hbGxgIHRvIGNyZWF0ZSBhIHNtYWxsIGNsb3NlIGJ1dHRvbi4gVGhlICdtZWRpdW0nIHZhbHVlcyBkZWZpbmVkIGluIGAkY2xvc2VidXR0b24tKmAgdmFyaWFibGVzIHdpbGwgYmUgdXNlZCBhcyB0aGUgZGVmYXVsdCBzaXplIGFuZCBwb3NpdGlvbiBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuQG1peGluIGNsb3NlLWJ1dHRvbi1zaXplKCRzaXplKSB7XG4gICR4OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAxKTtcbiAgJHk6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDIpO1xuXG4gICN7JHh9OiAtemYtZ2V0LXNpemUtdmFsKCRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbCwgJHNpemUpO1xuICAjeyR5fTogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsLCAkc2l6ZSk7XG4gIGZvbnQtc2l6ZTogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tc2l6ZSwgJHNpemUpO1xuICBsaW5lLWhlaWdodDogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tbGluZWhlaWdodCwgJHNpemUpO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2xvc2UgYnV0dG9uLCB1c2luZyB0aGUgc3R5bGVzIGluIHRoZSBzZXR0aW5ncyB2YXJpYWJsZXMuXG5AbWl4aW4gY2xvc2UtYnV0dG9uIHtcbiAgJHg6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDEpO1xuICAkeTogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMik7XG5cbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbG9yOiAkY2xvc2VidXR0b24tY29sb3I7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbiB7XG4gIC5jbG9zZS1idXR0b24ge1xuICAgIEBpbmNsdWRlIGNsb3NlLWJ1dHRvbjtcblxuICAgICYuc21hbGwgeyBAaW5jbHVkZSBjbG9zZS1idXR0b24tc2l6ZShzbWFsbCkgfVxuICAgICYsICYubWVkaXVtIHsgQGluY2x1ZGUgY2xvc2UtYnV0dG9uLXNpemUobWVkaXVtKSB9XG4gIH1cbn1cbiIsIkBtaXhpbiBmb3VuZGF0aW9uLW1lbnUtaWNvbiB7XG4gIC5tZW51LWljb24ge1xuICAgIEBpbmNsdWRlIGhhbWJ1cmdlcigkY29sb3I6ICR0aXRsZWJhci1pY29uLWNvbG9yLCAkY29sb3ItaG92ZXI6ICR0aXRsZWJhci1pY29uLWNvbG9yLWhvdmVyKTtcbiAgfVxuXG4gIC5tZW51LWljb24uZGFyayB7XG4gICAgQGluY2x1ZGUgaGFtYnVyZ2VyO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcmlsbGRvd25cbi8vLy9cblxuLy8vIFRyYW5zaXRpb24gcHJvcGVydHkgdG8gdXNlIGZvciBhbmltYXRpbmcgbWVudXMuXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJGRyaWxsZG93bi10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgbGluZWFyICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBhcnJvd3MgdG8gZHJpbGxkb3duIGl0ZW1zIHdpdGggc3VibWVudXMsIGFzIHdlbGwgYXMgdGhlIGJhY2sgYnV0dG9uLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRkcmlsbGRvd24tYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gbWVudSBpdGVtIHBhZGRpbmcuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJpbGxkb3duLXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gbWVudSBuZXN0ZWQgbWFyZ2luXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJpbGxkb3duLW5lc3RlZC1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBkcmlsbGRvd24gdG9wIGxldmVsIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJpbGxkb3duLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJpbGxkb3duIG1lbnUgaXRlbSBwYWRkaW5nIGluIHRoZSBzdWJtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJGRyaWxsZG93bi1zdWJtZW51LXBhZGRpbmc6ICRkcmlsbGRvd24tcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGRyaWxsZG93biBzdWJtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyaWxsZG93bi1zdWJtZW51LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJpbGxkb3duIGFycm93IGNvbG9yIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcmlsbGRvd24tYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gYXJyb3cgc2l6ZSBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyaWxsZG93bi1hcnJvdy1zaXplOiA2cHggIWRlZmF1bHQ7XG5cbkBtaXhpbiB6Zi1kcmlsbGRvd24tbGVmdC1yaWdodC1hcnJvd3Mge1xuICAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcmlsbGRvd24tYXJyb3ctc2l6ZSwgJGRyaWxsZG93bi1hcnJvdy1jb2xvciwgJGdsb2JhbC1yaWdodCk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIG1hcmdpbi10b3A6IC0xICogJGRyaWxsZG93bi1hcnJvdy1zaXplO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgICB9XG4gIH1cblxuICAmLmFsaWduLWxlZnQgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCByaWdodCk7XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgbGVmdDogYXV0bztcbiAgfVxuXG4gICYuYWxpZ24tcmlnaHQgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCBsZWZ0KTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxcmVtO1xuICB9XG5cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZHJpbGxkb3duLW1lbnUge1xuICAvLyBBcHBsaWVkIHRvIHRoZSBNZW51IGNvbnRhaW5lclxuICAuaXMtZHJpbGxkb3duIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIGxpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgICYuYW5pbWF0ZS1oZWlnaHQge1xuICAgICAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuNXM7XG4gICAgfVxuICB9XG5cbiAgLy8gVGhlIHRvcCBsZXZlbCA8dWw+XG4gIC5kcmlsbGRvd24ge1xuICAgIGEge1xuICAgICAgcGFkZGluZzogJGRyaWxsZG93bi1wYWRkaW5nO1xuICAgICAgYmFja2dyb3VuZDogJGRyaWxsZG93bi1iYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgIC8vIEFwcGxpZWQgdG8gc3VibWVudSA8dWw+c1xuICAgIC5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICAjeyRnbG9iYWwtbGVmdH06IDEwMCU7XG4gICAgICB6LWluZGV4OiAtMTtcblxuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiAkZHJpbGxkb3duLXN1Ym1lbnUtYmFja2dyb3VuZDtcbiAgICAgIHRyYW5zaXRpb246ICRkcmlsbGRvd24tdHJhbnNpdGlvbjtcblxuICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gbHRyLCAtMTAwJSwgMTAwJSkpO1xuICAgICAgfVxuXG4gICAgICAmLmlzLWNsb3Npbmcge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBsdHIsIDEwMCUsIC0xMDAlKSk7XG4gICAgICB9XG5cbiAgICAgIC8vIFN1Ym1lbnUgaXRlbSBwYWRkaW5nXG4gICAgICBhIHtcbiAgICAgICAgcGFkZGluZzogJGRyaWxsZG93bi1zdWJtZW51LXBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm5lc3RlZC5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkZHJpbGxkb3duLW5lc3RlZC1tYXJnaW4pO1xuICAgIH1cblxuICAgIC5kcmlsbGRvd24tc3VibWVudS1jb3Zlci1wcmV2aW91cyB7XG4gICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIEBpZiAkZHJpbGxkb3duLWFycm93cyB7XG4gICAgICBAaW5jbHVkZSB6Zi1kcmlsbGRvd24tbGVmdC1yaWdodC1hcnJvd3M7XG5cbiAgICAgIC5qcy1kcmlsbGRvd24tYmFjayA+IGE6OmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJpbGxkb3duLWFycm93LXNpemUsICRkcmlsbGRvd24tYXJyb3ctY29sb3IsICRnbG9iYWwtbGVmdCk7XG4gICAgICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH0td2lkdGg6IDA7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDAuNzVyZW07IC8vIENyZWF0ZXMgc3BhY2UgYmV0d2VlbiB0aGUgYXJyb3cgYW5kIHRoZSB0ZXh0XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcm9wZG93blxuLy8vL1xuXG4vLy8gUGFkZGluZyBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3duLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3duLWJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bi1mb250LXNpemU6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBXaWR0aCBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd24td2lkdGg6IDMwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIGRyb3Bkb3duIHBhbmVzLiBFYWNoIHNpemUgaXMgYSBDU1MgY2xhc3MgeW91IGNhbiBhcHBseS5cbi8vLyBAdHlwZSBNYXBcbiRkcm9wZG93bi1zaXplczogKFxuICB0aW55OiAxMDBweCxcbiAgc21hbGw6IDIwMHB4LFxuICBsYXJnZTogNDAwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQXBwbGllcyBzdHlsZXMgZm9yIGEgYmFzaWMgZHJvcGRvd24uXG5AbWl4aW4gZHJvcGRvd24tY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcblxuICBkaXNwbGF5OiBub25lO1xuXG4gIHdpZHRoOiAkZHJvcGRvd24td2lkdGg7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nO1xuXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYm9yZGVyOiAkZHJvcGRvd24tYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkZHJvcGRvd24tcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmFja2dyb3VuZDtcblxuICBmb250LXNpemU6ICRkcm9wZG93bi1mb250LXNpemU7XG5cblxuICAvLyBBbGxvdyBhbiBpbnRlcm1pdHRlbnQgc3RhdGUgdG8gZG8gcG9zaXRpb25pbmcgYmVmb3JlIG1ha2luZyB2aXNpYmxlLlxuICAmLmlzLW9wZW5pbmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgJi5pcy1vcGVuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWRyb3Bkb3duIHtcbiAgLmRyb3Bkb3duLXBhbmUge1xuICAgIEBpbmNsdWRlIGRyb3Bkb3duLWNvbnRhaW5lcjtcbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkZHJvcGRvd24tc2l6ZXMge1xuICAgIC5kcm9wZG93bi1wYW5lIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICB3aWR0aDogJHNpemU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcm9wZG93bi1tZW51XG4vLy8vXG5cbi8vLyBFbmFibGVzIGFycm93cyBmb3IgaXRlbXMgd2l0aCBkcm9wZG93biBtZW51cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZHJvcGRvd25tZW51LWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBjb2xvciBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LWFycm93LWNvbG9yOiAkYW5jaG9yLWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IGFycm93IHNpemUgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTogNnB4ICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IGFycm93IHBhZGRpbmcgZm9yIGFsaWduaW5nIHRoZSBhcnJvdyBjb3JyZWN0bHkuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWFycm93LXBhZGRpbmc6IDEuNXJlbSAhZGVmYXVsdDtcblxuLy8vIE1pbmltdW0gd2lkdGggb2YgZHJvcGRvd24gc3ViLW1lbnVzLlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1taW4td2lkdGg6IDIwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgdG9wIGxldmVsIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LWJhY2tncm91bmQ6IG51bGwgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBkcm9wZG93bnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bm1lbnUtc3VibWVudS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciB0b3AgbGV2ZWwgaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IG5lc3RlZCBtYXJnaW5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bm1lbnUtbmVzdGVkLW1hcmdpbjogMCAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIHN1Yi1tZW51IGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3dubWVudS1zdWJtZW51LXBhZGRpbmc6ICRkcm9wZG93bm1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBmb3IgZHJvcGRvd24gc3ViLW1lbnVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bm1lbnUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLyBCb3JkZXIgd2lkdGggZm9yIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vIFVzZWQgdG8gYWRqdXN0IHRvcCBtYXJnaW4gb2YgYSBzdWItbWVudSBpZiBhIGJvcmRlciBpcyB1c2VkLlxuLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWJvcmRlci13aWR0aDogbnRoKCRkcm9wZG93bm1lbnUtYm9yZGVyLCAxKTtcblxuLy8vIFRleHQgY29sb3Igb2YgYW4gYWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbS4gRXhwbGljaXQgb3ZlcnJpZGUgZm9yIG1lbnUgZGVmYXVsdHNcbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3duLW1lbnUtaXRlbS1jb2xvci1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYW4gYWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbS4gRXhwbGljaXQgb3ZlcnJpZGUgZm9yIG1lbnUgZGVmYXVsdHNcbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3duLW1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbkBtaXhpbiB6Zi1kcm9wZG93bi1sZWZ0LXJpZ2h0LWFycm93cyB7XG4gID4gYTo6YWZ0ZXIge1xuICAgICN7JGdsb2JhbC1yaWdodH06IDE0cHg7XG4gIH1cblxuICAmLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgLypAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCBsZWZ0KTsqL1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDVweDtcbiAgfVxuXG4gICYub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgLypAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCByaWdodCk7Ki9cbiAgfVxufVxuXG5AbWl4aW4gZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oJGRpcjogaG9yaXpvbnRhbCkge1xuICBAaWYgJGRpciA9PSBob3Jpem9udGFsIHtcbiAgICA+IGxpLm9wZW5zLWxlZnQgeyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgID4gbGkub3BlbnMtcmlnaHQgeyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkZHJvcGRvd25tZW51LWFycm93cyB7XG4gICAgICA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctI3skZ2xvYmFsLXJpZ2h0fTogJGRyb3Bkb3dubWVudS1hcnJvdy1wYWRkaW5nO1xuICAgICAgfVxuXG4gICAgICA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIgeyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICAgICAgLypAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCBkb3duKTsqL1xuICAgICAgICAjeyRnbG9iYWwtcmlnaHR9OiA1cHg7XG4gICAgICAgICN7JGdsb2JhbC1sZWZ0fTogYXV0bztcbiAgICAgICAgbWFyZ2luLXRvcDogLTEgKiAoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplIC8gMik7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRkaXIgPT0gdmVydGljYWwge1xuICAgID4gbGkge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAncm9ib3RvcmVndWxhcicsIHNhbnMtc2VyaWY7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICAgIH1cblxuICAgICAgJi5vcGVucy1sZWZ0IHtcbiAgICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYub3BlbnMtcmlnaHQge1xuICAgICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaWYgJGRyb3Bkb3dubWVudS1hcnJvd3Mge1xuICAgICAgICBAaW5jbHVkZSB6Zi1kcm9wZG93bi1sZWZ0LXJpZ2h0LWFycm93cztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEB3YXJuICdUaGUgZGlyZWN0aW9uIHVzZWQgZm9yIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKCkgbXVzdCBiZSBob3Jpem9udGFsIG9yIHZlcnRpY2FsLic7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudSB7XG4gIC5kcm9wZG93bi5tZW51IHtcbiAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcblxuICAgIGEge1xuICAgICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICAgIH1cblxuICAgIC8vIFRvcC1sZXZlbCBpdGVtXG4gICAgPiBsaSA+IGEge1xuICAgICAgYmFja2dyb3VuZDogJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kO1xuICAgICAgcGFkZGluZzogJGRyb3Bkb3dubWVudS1wYWRkaW5nO1xuICAgIH1cblxuICAgIC8vIFRvcC1sZXZlbCBpdGVtIGFjdGl2ZSBzdGF0ZVxuICAgID4gbGkuaXMtYWN0aXZlID4gYSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkZHJvcGRvd24tbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlO1xuICAgICAgY29sb3I6ICRkcm9wZG93bi1tZW51LWl0ZW0tY29sb3ItYWN0aXZlO1xuICAgIH1cblxuICAgIC5uby1qcyAmIHVsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLm5lc3RlZC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkKCRkcm9wZG93bm1lbnUtbmVzdGVkLW1hcmdpbik7XG4gICAgfVxuXG4gICAgJi52ZXJ0aWNhbCB7XG4gICAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgfVxuXG4gICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgICAgJi4jeyRzaXplfS1ob3Jpem9udGFsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuI3skc2l6ZX0tdmVydGljYWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuYWxpZ24tcmlnaHQge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUuZmlyc3Qtc3ViIHtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaXMtZHJvcGRvd24tbWVudS52ZXJ0aWNhbCB7XG4gICAgd2lkdGg6IDEwMHB4O1xuXG4gICAgJi5hbGlnbi1yaWdodCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBhOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgICN7JGdsb2JhbC1yaWdodH06IDVweDtcbiAgICAgICN7JGdsb2JhbC1sZWZ0fTogYXV0bztcbiAgICAgIG1hcmdpbi10b3A6IC0xICogJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplO1xuICAgIH1cblxuICAgICYub3BlbnMtaW5uZXIgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG5cbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIEBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdydGwnIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cblxuICAgICYub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAxMDAlO1xuICAgIHotaW5kZXg6IDE7XG5cbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1pbi13aWR0aDogJGRyb3Bkb3dubWVudS1taW4td2lkdGg7XG5cbiAgICBib3JkZXI6ICRkcm9wZG93bm1lbnUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQ6ICRkcm9wZG93bm1lbnUtc3VibWVudS1iYWNrZ3JvdW5kO1xuXG4gICAgLmRyb3Bkb3duICYgYSB7XG4gICAgICBwYWRkaW5nOiAkZHJvcGRvd25tZW51LXN1Ym1lbnUtcGFkZGluZztcbiAgICB9XG5cbiAgICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICAgICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgICAgQGluY2x1ZGUgemYtZHJvcGRvd24tbGVmdC1yaWdodC1hcnJvd3M7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICh0eXBlLW9mKCRkcm9wZG93bm1lbnUtYm9yZGVyLXdpZHRoKSA9PSAnbnVtYmVyJykge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICBtYXJnaW4tdG9wOiAoLSRkcm9wZG93bm1lbnUtYm9yZGVyLXdpZHRoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IGxpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC8vIFtUT0RPXSBDdXQgYmFjayBzcGVjaWZpY2l0eVxuICAgIC8vJjpub3QoLmpzLWRyb3Bkb3duLW5vaG92ZXIpID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50OmhvdmVyID4gJiwgLy8gd2h5IGlzIHRoaXMgbGluZSBuZWVkZWQ/IE9wZW5pbmcgaXMgaGFuZGxlZCBieSBKUyBhbmQgdGhpcyBjYXVzZXMgc29tZSB1Z2x5IGZsaWNrZXJpbmcgd2hlbiB0aGUgc3ViIGlzIHJlLXBvc2l0aW9uZWQgYXV0b21hdGljYWxseS4uLlxuICAgICYuanMtZHJvcGRvd24tYWN0aXZlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcmVzcG9uc2l2ZS1lbWJlZFxuLy8vL1xuXG4vLy8gTWFyZ2luIGJlbG93IGEgcmVzcG9uc2l2ZSBlbWJlZCBjb250YWluZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmVzcG9uc2l2ZS1lbWJlZC1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG5cbi8vLyBBc3BlY3QgcmF0aW9zIHVzZWQgdG8gZGV0ZXJtaW5lIHBhZGRpbmctYm90dG9tIG9mIHJlc3BvbnNpdmUgZW1iZWQgY29udGFpbmVycy5cbi8vLyBAdHlwZSBNYXBcbiRyZXNwb25zaXZlLWVtYmVkLXJhdGlvczogKFxuICBkZWZhdWx0OiA0IGJ5IDMsXG4gIHdpZGVzY3JlZW46IDE2IGJ5IDksXG4pICFkZWZhdWx0O1xuXG4vLy8gQ3JlYXRlcyBhIHJlc3BvbnNpdmUgZW1iZWQgY29udGFpbmVyLlxuLy8vIEBwYXJhbSB7U3RyaW5nfExpc3R9ICRyYXRpbyBbZGVmYXVsdF0gLSBSYXRpbyBvZiB0aGUgY29udGFpbmVyLiBDYW4gYmUgYSBrZXkgZnJvbSB0aGUgYCRyZXNwb25zaXZlLWVtYmVkLXJhdGlvc2AgbWFwIG9yIGEgbGlzdCBmb3JtYXR0ZWQgYXMgYHggYnkgeWAuXG5AbWl4aW4gcmVzcG9uc2l2ZS1lbWJlZCgkcmF0aW86IGRlZmF1bHQpIHtcbiAgQGlmIHR5cGUtb2YoJHJhdGlvKSA9PSAnc3RyaW5nJyB7XG4gICAgJHJhdGlvOiBtYXAtZ2V0KCRyZXNwb25zaXZlLWVtYmVkLXJhdGlvcywgJHJhdGlvKTtcbiAgfVxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTtcbiAgcGFkZGluZy1ib3R0b206IHJhdGlvLXRvLXBlcmNlbnRhZ2UoJHJhdGlvKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBpZnJhbWUsXG4gIG9iamVjdCxcbiAgZW1iZWQsXG4gIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgICN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZCB7XG4gIC5yZXNwb25zaXZlLWVtYmVkLFxuICAuZmxleC12aWRlbyB7XG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1lbWJlZCgkcmF0aW86IGRlZmF1bHQpO1xuXG4gICAgJHJhdGlvczogbWFwLXJlbW92ZSgkcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3MsZGVmYXVsdCk7XG5cbiAgICBAZWFjaCAkbmFtZSwgJHJhdGlvIGluICRyYXRpb3Mge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByYXRpby10by1wZXJjZW50YWdlKCRyYXRpbyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuLy8vIEZpbmRzIHRoZSBncmVhdGVzdCBjb21tb24gZGl2aXNvciBvZiB0d28gaW50ZWdlcnMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGEgLSBGaXJzdCBudW1iZXIgdG8gY29tcGFyZS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGIgLSBTZWNvbmQgbnVtYmVyIHRvIGNvbXBhcmUuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgZ3JlYXRlc3QgY29tbW9uIGRpdmlzb3IuXG5AZnVuY3Rpb24gZ2NkKCRhLCAkYikge1xuICAvLyBGcm9tOiBodHRwOi8vcm9zZXR0YWNvZGUub3JnL3dpa2kvR3JlYXRlc3RfY29tbW9uX2Rpdmlzb3IjSmF2YVNjcmlwdFxuICBAaWYgKCRiICE9IDApIHtcbiAgICBAcmV0dXJuIGdjZCgkYiwgJGEgJSAkYik7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gYWJzKCRhKTtcbiAgfVxufVxuXG4vLy8gSGFuZGxlcyBkZWNpbWFsIGV4cG9uZW50cyBieSB0cnlpbmcgdG8gY29udmVydCB0aGVtIGludG8gYSBmcmFjdGlvbiBhbmQgdGhlbiB1c2UgYSBudGgtcm9vdC1hbGdvcml0aG0gZm9yIHBhcnRzIG9mIHRoZSBjYWxjdWxhdGlvblxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIC0gVGhlIGJhc2UgbnVtYmVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZXhwb25lbnQgLSBUaGUgZXhwb25lbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgcHJvZHVjdCBvZiB0aGUgZXhwb25lbnRpYXRpb24uXG5AZnVuY3Rpb24gcG93KCRiYXNlLCAkZXhwb25lbnQsICRwcmVjOiAxNikge1xuICBAaWYgKGZsb29yKCRleHBvbmVudCkgIT0gJGV4cG9uZW50KSB7XG4gICAgJHByZWMyIDogcG93KDEwLCAkcHJlYyk7XG4gICAgJGV4cG9uZW50OiByb3VuZCgkZXhwb25lbnQgKiAkcHJlYzIpO1xuICAgICRkZW5vbWluYXRvcjogZ2NkKCRleHBvbmVudCwgJHByZWMyKTtcbiAgICBAcmV0dXJuIG50aC1yb290KHBvdygkYmFzZSwgJGV4cG9uZW50IC8gJGRlbm9taW5hdG9yKSwgJHByZWMyIC8gJGRlbm9taW5hdG9yLCAkcHJlYyk7XG4gIH1cblxuICAkdmFsdWU6ICRiYXNlO1xuICBAaWYgJGV4cG9uZW50ID4gMSB7XG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkZXhwb25lbnQge1xuICAgICAgJHZhbHVlOiAkdmFsdWUgKiAkYmFzZTtcbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGV4cG9uZW50IDwgMSB7XG4gICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAtJGV4cG9uZW50IHtcbiAgICAgICR2YWx1ZTogJHZhbHVlIC8gJGJhc2U7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkdmFsdWU7XG59XG5cbkBmdW5jdGlvbiBudGgtcm9vdCgkbnVtLCAkbjogMiwgJHByZWM6IDEyKSB7XG4gIC8vIEZyb206IGh0dHA6Ly9yb3NldHRhY29kZS5vcmcvd2lraS9OdGhfcm9vdCNKYXZhU2NyaXB0XG4gICR4OiAxO1xuXG4gIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJHByZWMge1xuICAgICR4OiAxIC8gJG4gKiAoKCRuIC0gMSkgKiAkeCArICgkbnVtIC8gcG93KCR4LCAkbiAtIDEpKSk7XG4gIH1cblxuICBAcmV0dXJuICR4O1xufVxuXG4vLy8gQ2FsY3VsYXRlcyB0aGUgaGVpZ2h0IGFzIGEgcGVyY2VudGFnZSBvZiB0aGUgd2lkdGggZm9yIGEgZ2l2ZW4gcmF0aW8uXG4vLy8gQHBhcmFtIHtMaXN0fSAkcmF0aW8gLSBSYXRpbyB0byB1c2UgdG8gY2FsY3VsYXRlIHRoZSBoZWlnaHQsIGZvcm1hdHRlZCBhcyBgeCBieSB5YC5cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IEEgcGVyY2VudGFnZSB2YWx1ZSBmb3IgdGhlIGhlaWdodCByZWxhdGl2ZSB0byB0aGUgd2lkdGggb2YgYSByZXNwb25zaXZlIGNvbnRhaW5lci5cbkBmdW5jdGlvbiByYXRpby10by1wZXJjZW50YWdlKCRyYXRpbykge1xuICAkdzogbnRoKCRyYXRpbywgMSk7XG4gICRoOiBudGgoJHJhdGlvLCAzKTtcbiAgQHJldHVybiAkaCAvICR3ICogMTAwJTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGxhYmVsXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGxhYmVsLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsYWJlbC1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQWx0ZXJuYXRlIHRleHQgY29sb3IgZm9yIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGxhYmVsLWNvbG9yLWFsdDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JpbmcgY2xhc3Nlcy4gQSBtYXAgb2YgY2xhc3NlcyB0byBvdXRwdXQgaW4geW91ciBDU1MsIGxpa2UgYC5zZWNvbmRhcnlgLCBgLnN1Y2Nlc3NgLCBhbmQgc28gb24uXG4vLy8gQHR5cGUgTWFwXG4kbGFiZWwtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGFiZWwtZm9udC1zaXplOiAwLjhyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsYWJlbC1wYWRkaW5nOiAwLjMzMzMzcmVtIDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIG9mIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsYWJlbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGVzIGJhc2Ugc3R5bGVzIGZvciBhIGxhYmVsLlxuQG1peGluIGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAkbGFiZWwtcGFkZGluZztcblxuICBib3JkZXItcmFkaXVzOiAkbGFiZWwtcmFkaXVzO1xuXG4gIGZvbnQtc2l6ZTogJGxhYmVsLWZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tbGFiZWwge1xuICAubGFiZWwge1xuICAgIEBpbmNsdWRlIGxhYmVsO1xuXG4gICAgYmFja2dyb3VuZDogJGxhYmVsLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRsYWJlbC1jb2xvcjtcblxuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGxhYmVsLXBhbGV0dGUge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICAgICAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGNvbG9yLCAoJGxhYmVsLWNvbG9yLCAkbGFiZWwtY29sb3ItYWx0KSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBtZWRpYS1vYmplY3Rcbi8vLy9cblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgYSBtZWRpYSBvYmplY3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0IGFuZCByaWdodCBwYWRkaW5nIG9uIHNlY3Rpb25zIHdpdGhpbiBhIG1lZGlhIG9iamVjdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIFdpZHRoIG9mIGltYWdlcyB3aXRoaW4gYSBtZWRpYSBvYmplY3QsIHdoZW4gdGhlIG9iamVjdCBpcyBzdGFja2VkIHZlcnRpY2FsbHkuIFNldCB0byAnYXV0bycgdG8gdXNlIHRoZSBpbWFnZSdzIG5hdHVyYWwgd2lkdGguXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDogMTAwJSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIG1lZGlhIG9iamVjdCBjb250YWluZXIuXG5AbWl4aW4gbWVkaWEtb2JqZWN0LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGlmKCRnbG9iYWwtZmxleGJveCwgZmxleCwgYmxvY2spO1xuICBtYXJnaW4tYm90dG9tOiAkbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTtcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxuXG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgJi5zdGFjay1mb3ItI3skLXpmLXplcm8tYnJlYWtwb2ludH0ge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkLXpmLXplcm8tYnJlYWtwb2ludCBvbmx5KSB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBzZWN0aW9ucyB3aXRoaW4gYSBtZWRpYSBvYmplY3QuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwYWRkaW5nIFskbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nXSAtIFBhZGRpbmcgYmV0d2VlbiBzZWN0aW9ucy5cbkBtaXhpbiBtZWRpYS1vYmplY3Qtc2VjdGlvbigkcGFkZGluZzogJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZykge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgfVxuICBAZWxzZSB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB9XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy0jeyRnbG9iYWwtcmlnaHR9OiAkcGFkZGluZztcbiAgfVxuXG4gICY6bGFzdC1jaGlsZDpub3QoOm50aC1jaGlsZCgyKSkge1xuICAgIHBhZGRpbmctI3skZ2xvYmFsLWxlZnR9OiAkcGFkZGluZztcbiAgfVxuXG4gID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAuc3RhY2stZm9yLSN7JC16Zi16ZXJvLWJyZWFrcG9pbnR9ICYge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi16ZXJvLWJyZWFrcG9pbnQgb25seSkge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtb2JqZWN0LXN0YWNrO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICYubWFpbi1zZWN0aW9uIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAmLm1pZGRsZSB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgICYuYm90dG9tIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyB0byBzdGFjayBzZWN0aW9ucyBvZiBhIG1lZGlhIG9iamVjdC4gQXBwbHkgdGhpcyB0byB0aGUgc2VjdGlvbiBlbGVtZW50cywgbm90IHRoZSBjb250YWluZXIuXG5AbWl4aW4gbWVkaWEtb2JqZWN0LXN0YWNrIHtcbiAgcGFkZGluZzogMDtcbiAgcGFkZGluZy1ib3R0b206ICRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmc7XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgaW1nIHtcbiAgICB3aWR0aDogJG1lZGlhb2JqZWN0LWltYWdlLXdpZHRoLXN0YWNrZWQ7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tbWVkaWEtb2JqZWN0IHtcbiAgLm1lZGlhLW9iamVjdCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtb2JqZWN0LWNvbnRhaW5lcjtcbiAgfVxuXG4gIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiB7XG4gICAgQGluY2x1ZGUgbWVkaWEtb2JqZWN0LXNlY3Rpb247XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIG9mZi1jYW52YXNcbi8vLy9cblxuLy8vIFdpZHRoIG1hcCBvZiBhIGxlZnQvcmlnaHQgb2ZmLWNhbnZhcyBwYW5lbC5cbi8vLyBAdHlwZSBNYXBcbiRvZmZjYW52YXMtc2l6ZXM6IChcbiAgc21hbGw6IDI1MHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIEhlaWdodCBtYXAgb2YgYSB0b3AvYm90dG9tIG9mZi1jYW52YXMgcGFuZWwuXG4vLy8gQHR5cGUgTWFwXG4kb2ZmY2FudmFzLXZlcnRpY2FsLXNpemVzOiAoXG4gIHNtYWxsOiAyNTBweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIG9mZi1jYW52YXMgcGFuZWwuXG4vLy8gQHR5cGUgQ29sb3JcbiRvZmZjYW52YXMtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IGZvciB0aGUgb2ZmLWNhbnZhcyBvdmVybGFwIHBhbmVsLlxuLy8vIEB0eXBlIFNoYWRvd1xuJG9mZmNhbnZhcy1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoJGJsYWNrLCAwLjcpICFkZWZhdWx0O1xuXG4vLy8gSW5uZXIgYm94IHNoYWRvdyBzaXplIGZvciB0aGUgb2ZmLWNhbnZhcyBwdXNoIHBhbmVsLlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZTogMjBweCAhZGVmYXVsdDtcblxuLy8vIElubmVyIGJveCBzaGFkb3cgY29sb3IgZm9yIHRoZSBvZmYtY2FudmFzIHB1c2ggcGFuZWwuXG4vLy8gQHR5cGUgQ29sb3JcbiRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yOiByZ2JhKCRibGFjaywgMC4yNSkgIWRlZmF1bHQ7XG5cbi8vLyBaLWluZGV4IG9mIGFuIG9mZi1jYW52YXMgY29udGVudCBvdmVybGF5LlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleDogMTEgIWRlZmF1bHQ7XG5cbi8vLyBaLWluZGV4IG9mIGFuIG9mZi1jYW52YXMgcGFuZWwgd2l0aCB0aGUgYHB1c2hgIHRyYW5zaXRpb24uXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLXB1c2gtemluZGV4OiAxMiAhZGVmYXVsdDtcblxuLy8vIFotaW5kZXggb2YgYW4gb2ZmLWNhbnZhcyBwYW5lbCB3aXRoIHRoZSBgb3ZlcmxhcGAgdHJhbnNpdGlvbi5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtb3ZlcmxhcC16aW5kZXg6IDEzICFkZWZhdWx0O1xuXG4vLy8gWi1pbmRleCBvZiBhbiBvZmYtY2FudmFzIHBhbmVsIHVzaW5nIHRoZSBgcmV2ZWFsLWZvci0qYCBjbGFzc2VzIG9yIG1peGluLlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4OiAxMiAhZGVmYXVsdDtcblxuLy8vIExlbmd0aCBvZiB0aGUgYW5pbWF0aW9uIG9uIGFuIG9mZi1jYW52YXMgcGFuZWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoOiAwLjVzICFkZWZhdWx0O1xuXG4vLy8gVGltaW5nIGZ1bmN0aW9uIG9mIHRoZSBhbmltYXRpb24gb24gYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nOiBlYXNlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhIHJldmVhbGVkIG9mZi1jYW52YXMgd2lsbCBiZSBmaXhlZC1wb3NpdGlvbiwgYW5kIHNjcm9sbCB3aXRoIHRoZSBzY3JlZW4uXG4vLy8gQHR5cGUgQm9vbFxuJG9mZmNhbnZhcy1maXhlZC1yZXZlYWw6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgb3ZlcmxheSB0aGF0IGFwcGVhcnMgd2hlbiBhbiBvZmYtY2FudmFzIHBhbmVsIGlzIG9wZW4uXG4vLy8gQHR5cGUgQ29sb3JcbiRvZmZjYW52YXMtZXhpdC1iYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMC4yNSkgIWRlZmF1bHQ7XG5cbi8vLyBDU1MgY2xhc3MgdXNlZCBmb3IgdGhlIG1haW4gY29udGVudCBhcmVhLiBUaGUgb2ZmLWNhbnZhcyBtaXhpbnMgdXNlIHRoaXMgdG8gdGFyZ2V0IHRoZSBwYWdlIGNvbnRlbnQuXG4kbWFpbmNvbnRlbnQtY2xhc3M6ICdvZmYtY2FudmFzLWNvbnRlbnQnICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBiYXNlbGluZSBzdHlsZXMgZm9yIG9mZi1jYW52YXMuIFRoaXMgQ1NTIGlzIHJlcXVpcmVkIHRvIG1ha2UgdGhlIG90aGVyIHBpZWNlcyB3b3JrLlxuQG1peGluIG9mZi1jYW52YXMtYmFzaWNzIHtcblxuICAvLy8gVHJhbnNmb3JtIGRlcHJlY2F0ZWQgc2l6ZSBzZXR0aW5ncyBpbnRvIG1hcCAmIHNob3cgd2FybmluZ1xuICBAaWYgdmFyaWFibGUtZXhpc3RzKG9mZmNhbnZhcy1zaXplKSB7XG4gICAgJG9mZmNhbnZhcy1zaXplczogKHNtYWxsOiAkb2ZmY2FudmFzLXNpemUsIG1lZGl1bTogJG9mZmNhbnZhcy1zaXplKSAhZ2xvYmFsO1xuICAgIEB3YXJuICckb2ZmY2FudmFzLXNpemUgaXMgZGVwcmVjYXRlZCBhbmQgbm90IHVzZWQgYW55bW9yZSEgUGxlYXNlIHVwZGF0ZSB5b3VyIHNldHRpbmdzIGFuZCB1c2UgdGhlIG1hcCAkb2ZmY2FudmFzLXNpemVzIGluc3RlYWQnO1xuICB9XG4gIEBpZiB2YXJpYWJsZS1leGlzdHMob2ZmY2FudmFzLXZlcnRpY2FsLXNpemUpIHtcbiAgICAkb2ZmY2FudmFzLXZlcnRpY2FsLXNpemVzOiAoc21hbGw6ICRvZmZjYW52YXMtdmVydGljYWwtc2l6ZSwgbWVkaXVtOiAkb2ZmY2FudmFzLXZlcnRpY2FsLXNpemUpICFnbG9iYWw7XG4gICAgQHdhcm4gJyRvZmZjYW52YXMtdmVydGljYWwtc2l6ZSBpcyBkZXByZWNhdGVkIGFuZCBub3QgdXNlZCBhbnltb3JlISBQbGVhc2UgdXBkYXRlIHlvdXIgc2V0dGluZ3MgYW5kIHVzZSB0aGUgbWFwICRvZmZjYW52YXMtdmVydGljYWwtc2l6ZXMgaW5zdGVhZCc7XG4gIH1cblxuICAvLyBDaGVja3MgdGhlIHotaW5kZXhlcyBhbmQgaW5jcmVhc2UgdGhlbSBkdWUgdG8gYmFja3dhcmRzIGNvbXBhdGliaWxpdHkuXG4gIC8vIFRoaXMgaXMgbmVjZXNzYXJ5IGJlY2F1c2UgdGhlIG92ZXJsYXkncyB6LWluZGV4IGlzIG5ldyBzaW5jZSB2Ni40IGFuZCBtYXkgYmUgaWRlbnRpY2FsIHRvIHRoZSB1c2VyIGN1c3RvbSBzZXR0aW5ncyBvZiB0aGUgcHVzaCB6LWluZGV4LlxuICBAaWYgJG9mZmNhbnZhcy1wdXNoLXppbmRleCA8PSAkb2ZmY2FudmFzLW92ZXJsYXktemluZGV4IHsgJG9mZmNhbnZhcy1wdXNoLXppbmRleDogJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleCArIDEgIWdsb2JhbDsgfVxuICBAaWYgJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleCA8PSAkb2ZmY2FudmFzLXB1c2gtemluZGV4IHsgJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDogJG9mZmNhbnZhcy1wdXNoLXppbmRleCArIDEgIWdsb2JhbDsgfVxuICBAaWYgJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4IDw9ICRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXggeyAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXg6ICRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXggKyAxICFnbG9iYWw7IH1cblxuICAvLyBIaWRlcyBvdmVyZmxvdyBvbiBib2R5IHdoZW4gYW4gb2ZmLWNhbnZhcyBwYW5lbCBpcyBvcGVuLlxuICAuaXMtb2ZmLWNhbnZhcy1vcGVuIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLy8gT2ZmLWNhbnZhcyBvdmVybGF5IChnZW5lcmF0ZWQgYnkgSmF2YVNjcmlwdClcbiAgLmpzLW9mZi1jYW52YXMtb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6ICRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXg7XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGggJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZywgdmlzaWJpbGl0eSAkb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoICRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc7XG5cbiAgICBiYWNrZ3JvdW5kOiAkb2ZmY2FudmFzLWV4aXQtYmFja2dyb3VuZDtcblxuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICYuaXMtdmlzaWJsZSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAmLmlzLWNsb3NhYmxlIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAmLmlzLW92ZXJsYXktYWJzb2x1dGUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIH1cblxuICAgICYuaXMtb3ZlcmxheS1maXhlZCB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgfVxuICB9XG59XG5cbi8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBhbiBvZmYtY2FudmFzIHdyYXBwZXIuXG5AbWl4aW4gb2ZmLWNhbnZhcy13cmFwcGVyKCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8vLyBBZGRzIGJhc2ljIHN0eWxlcyBmb3IgYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbkBtaXhpbiBvZmYtY2FudmFzLWJhc2UoXG4gICRiYWNrZ3JvdW5kOiAkb2ZmY2FudmFzLWJhY2tncm91bmQsXG4gICR0cmFuc2l0aW9uOiAkb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoICRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmcsXG4gICRmaXhlZDogdHJ1ZVxuKSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcblxuICBAaWYgJGZpeGVkID09IHRydWUge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgfVxuICBAZWxzZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG5cbiAgLy8gU2V0IHRoZSBvZmYtY2FudmFzIHotaW5kZXguXG4gIHotaW5kZXg6ICRvZmZjYW52YXMtcHVzaC16aW5kZXg7XG5cbiAgLy8gSW5jcmVhc2UgQ1NTIHNwZWNpZmljaXR5XG4gICYuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB6LWluZGV4OiAkb2ZmY2FudmFzLXB1c2gtemluZGV4O1xuICB9XG5cbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG5cbiAgLy8gSGlkZSBpbmFjdGl2ZSBvZmYtY2FudmFzIHdpdGhpbiB0aGUgY29udGVudCB0aGF0IGhhdmUgdGhlIHNhbWUgcG9zaXRpb25cbiAgJi5pcy1jbG9zZWQge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIC8vIE92ZXJsYXAgb25seSBzdHlsZXMuXG4gICYuaXMtdHJhbnNpdGlvbi1vdmVybGFwIHtcbiAgICB6LWluZGV4OiAkb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4O1xuXG4gICAgJi5pcy1vcGVuIHtcbiAgICAgIGJveC1zaGFkb3c6ICRvZmZjYW52YXMtc2hhZG93O1xuICAgIH1cbiAgfVxuXG4gIC8vIFNldHMgdHJhbnNmb3JtIHRvIDAgdG8gc2hvdyBhbiBvZmYtY2FudmFzIHBhbmVsLlxuICAmLmlzLW9wZW4ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyB0byBwb3NpdGlvbiBhbiBvZmYtY2FudmFzIHBhbmVsIHRvIHRoZSBsZWZ0L3JpZ2h0L3RvcC9ib3R0b20uXG5AbWl4aW4gb2ZmLWNhbnZhcy1wb3NpdGlvbihcbiAgJHBvc2l0aW9uOiBsZWZ0LFxuICAkb3JpZW50YXRpb246IGhvcml6b250YWwsXG4gICRzaXplczogaWYoJG9yaWVudGF0aW9uID09IGhvcml6b250YWwsICRvZmZjYW52YXMtc2l6ZXMsICRvZmZjYW52YXMtdmVydGljYWwtc2l6ZXMpXG4pIHtcbiAgQGlmICRwb3NpdGlvbiA9PSBsZWZ0IHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICB3aWR0aDogJHNpemU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtJHNpemUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIHBvc2l0aW9uIGZvciBuZXN0ZWQgb2ZmLWNhbnZhcyBlbGVtZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfSAub2ZmLWNhbnZhcy5wb3NpdGlvbi0jeyRwb3NpdGlvbn0ge1xuXG4gICAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtJHNpemUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgb3BlbiBwb3NpdGlvbiBmb3IgdGhlIGNvbnRlbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9LmlzLW9wZW4tI3skcG9zaXRpb259IHtcbiAgICAgICYuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkc2l6ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSByaWdodCB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIHdpZHRoOiAkc2l6ZTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCRzaXplKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBwb3NpdGlvbiBmb3IgbmVzdGVkIG9mZi1jYW52YXMgZWxlbWVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30gLm9mZi1jYW52YXMucG9zaXRpb24tI3skcG9zaXRpb259IHtcblxuICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJHNpemUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgb3BlbiBwb3NpdGlvbiBmb3IgdGhlIGNvbnRlbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9LmlzLW9wZW4tI3skcG9zaXRpb259IHtcbiAgICAgICYuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtJHNpemUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gdG9wIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuXG4gICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIGhlaWdodDogJHNpemU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtJHNpemUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIHBvc2l0aW9uIGZvciBuZXN0ZWQgb2ZmLWNhbnZhcyBlbGVtZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfSAub2ZmLWNhbnZhcy5wb3NpdGlvbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLSRzaXplKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIG9wZW4gcG9zaXRpb24gZm9yIHRoZSBjb250ZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfS5pcy1vcGVuLSN7JHBvc2l0aW9ufSB7XG4gICAgICAmLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgICAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJHNpemUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gYm90dG9tIHtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuXG4gICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIGhlaWdodDogJHNpemU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgkc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgcG9zaXRpb24gZm9yIG5lc3RlZCBvZmYtY2FudmFzIGVsZW1lbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9IC5vZmYtY2FudmFzLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7XG4gICAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgkc2l6ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBvcGVuIHBvc2l0aW9uIGZvciB0aGUgY29udGVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30uaXMtb3Blbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgJi5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0kc2l6ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gSWYgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZSBpcyBzZXQsIGFkZCBpbm5lciBib3gtc2hhZG93LlxuICAvLyBUaGlzIG1pbWljcyB0aGUgb2ZmLWNhbnZhcyBwYW5lbCBoYXZpbmcgYSBsb3dlciB6LWluZGV4LCB3aXRob3V0IGhhdmluZyB0byBoYXZlIG9uZS5cbiAgQGlmICRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemUge1xuICAgICYuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAgIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgICAgIEBpbmNsdWRlIGlubmVyLXNpZGUtc2hhZG93KHJpZ2h0LCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplLCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcik7XG4gICAgICB9XG4gICAgICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gcmlnaHQge1xuICAgICAgICBAaW5jbHVkZSBpbm5lci1zaWRlLXNoYWRvdyhsZWZ0LCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplLCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcik7XG4gICAgICB9XG4gICAgICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gdG9wIHtcbiAgICAgICAgQGluY2x1ZGUgaW5uZXItc2lkZS1zaGFkb3coYm90dG9tLCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplLCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcik7XG4gICAgICB9XG4gICAgICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gYm90dG9tIHtcbiAgICAgICAgQGluY2x1ZGUgaW5uZXItc2lkZS1zaGFkb3codG9wLCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplLCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cblxuLy8vIFNldHMgdGhlIHN0eWxlcyBmb3IgdGhlIGNvbnRlbnQgY29udGFpbmVyLlxuQG1peGluIG9mZi1jYW52YXMtY29udGVudCgpIHtcbiAgdHJhbnNmb3JtOiBub25lO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aCAkb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgLy8gVHJhbnNmb3JtIHNjb3BlIHVudGlsIHRoZSBlbGVtZW50IGlzIGNsb3NlZCAobWFrZXMgc3VyZSB0cmFuc2l0aW9uZW5kIGdldHMgdHJpZ2dlcmVkKVxuICAmLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB9XG5cbiAgLy8gQ29uc2lkZXIgZWxlbWVudCAmIGNvbnRlbnQsIG5lc3RlZCBpbiBhbm90aGVyIGNvbnRlbnRcbiAgLm9mZi1jYW52YXMuaXMtb3BlbiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIHRoYXQgcmV2ZWFsIGFuIG9mZi1jYW52YXMgcGFuZWwuXG5AbWl4aW4gb2ZmLWNhbnZhcy1yZXZlYWwoXG4kcG9zaXRpb246IGxlZnQsXG4kemluZGV4OiAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXgsXG4kY29udGVudDogJG1haW5jb250ZW50LWNsYXNzLFxuJGJyZWFrcG9pbnQ6IHNtYWxsXG4pIHtcbiAgdHJhbnNmb3JtOiBub25lO1xuICB6LWluZGV4OiAkemluZGV4O1xuICB0cmFuc2l0aW9uOiBub25lO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXG4gIEBpZiBub3QgJG9mZmNhbnZhcy1maXhlZC1yZXZlYWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuXG4gIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBDb25zaWRlciByZXZlYWxlZCBlbGVtZW50IGlzIG5lc3RlZCBpbiBjb250ZW50XG4gIC4jeyRtYWluY29udGVudC1jbGFzc30gJiB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgQGF0LXJvb3QgLiN7JGNvbnRlbnR9Lmhhcy1yZXZlYWwtI3skcG9zaXRpb259IHtcbiAgICBtYXJnaW4tI3skcG9zaXRpb259OiAtemYtZ2V0LWJwLXZhbCgkb2ZmY2FudmFzLXNpemVzLCAkYnJlYWtwb2ludCk7XG4gIH1cblxuICAvLyBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSAocHJpb3IgdG8gdjYuNClcbiAgJiB+IC4jeyRjb250ZW50fSB7XG4gICAgbWFyZ2luLSN7JHBvc2l0aW9ufTogLXpmLWdldC1icC12YWwoJG9mZmNhbnZhcy1zaXplcywgJGJyZWFrcG9pbnQpO1xuICB9XG59XG5cbi8vLyBPdmVycmlkZXMgdGhlIG9mZi1jYW52YXMgc3R5bGVzXG5AbWl4aW4gaW4tY2FudmFzKCkge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBoZWlnaHQ6IGF1dG87XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHdpZHRoOiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgdHJhbnNpdGlvbjogbm9uZTtcblxuICAvLyBJbmNyZWFzZSBDU1Mgc3BlY2lmaWNpdHlcbiAgJi5wb3NpdGlvbi1sZWZ0LFxuICAmLnBvc2l0aW9uLXJpZ2h0LFxuICAmLnBvc2l0aW9uLXRvcCxcbiAgJi5wb3NpdGlvbi1ib3R0b20ge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1vZmYtY2FudmFzIHtcbiAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1iYXNpY3M7XG5cbiAgLy8gT2ZmLWNhbnZhcyB3cmFwcGVyXG4gIC5vZmYtY2FudmFzLXdyYXBwZXIge1xuICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtd3JhcHBlcjtcbiAgfVxuXG4gIC8vIE9mZi1jYW52YXMgY29udGFpbmVyXG4gIC5vZmYtY2FudmFzIHtcbiAgICBAaW5jbHVkZSBvZmYtY2FudmFzLWJhc2U7XG5cbiAgICAvLyBGb3JjZSBwb3NpdGlvbiBhYnNvbHV0ZSBmb3IgbmVzdGVkIG9mZi1jYW52YXMgYmVjYXVzZSBmaXhlZCBkb2Vzbid0IHdvcmsgZm9yIHB1c2ggdHJhbnNpdGlvbiB3aXRoaW4gdGhlIHRyYW5zZm9ybSBzY29wZS5cbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9ICYge1xuICAgICAgLy8gTk9URTogc2luY2Ugb3ZlcmxhcCB0cmFuc2l0aW9uIGlzIGN1cnJlbnRseSBmb3JjZWQgaWYgbmVzdGVkLCB0aGVyZSdzIG5vIG5lZWQgdG8gZm9yY2UgcG9zaXRpb24gYWJzb2x1dGUgdW50aWwgbmVzdGVkIHB1c2ggdHJhbnNpdGlvbiBpcyBzdXBwb3J0ZWQuXG4gICAgICAvLyBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgfVxuICB9XG5cbiAgLy8gT2ZmLWNhbnZhcyBjb250YWluZXIgd2l0aCBhYnNvbHV0ZSBwb3NpdGlvblxuICAub2ZmLWNhbnZhcy1hYnNvbHV0ZSB7XG4gICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1iYXNlKCRmaXhlZDogZmFsc2UpO1xuICB9XG5cbiAgLy8gT2ZmLWNhbnZhcyBwb3NpdGlvbiBjbGFzc2VzXG4gIC5wb3NpdGlvbi1sZWZ0ICAgIHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1wb3NpdGlvbihsZWZ0LCAgIGhvcml6b250YWwpOyB9XG4gIC5wb3NpdGlvbi1yaWdodCAgIHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1wb3NpdGlvbihyaWdodCwgIGhvcml6b250YWwpOyB9XG4gIC5wb3NpdGlvbi10b3AgICAgIHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1wb3NpdGlvbih0b3AsICAgIHZlcnRpY2FsKTsgfVxuICAucG9zaXRpb24tYm90dG9tICB7IEBpbmNsdWRlIG9mZi1jYW52YXMtcG9zaXRpb24oYm90dG9tLCB2ZXJ0aWNhbCk7IH1cblxuICAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBvZmYtY2FudmFzLWNvbnRlbnQ7XG4gIH1cblxuICAvLyBSZXZlYWwgb2ZmLWNhbnZhcyBwYW5lbCBvbiBsYXJnZXIgc2NyZWVuc1xuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpZiAkbmFtZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtcmV2ZWFsKGxlZnQsICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleCwgJG1haW5jb250ZW50LWNsYXNzLCAkbmFtZSk7XG4gICAgICAgIH1cblxuICAgICAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1yZXZlYWwocmlnaHQsICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleCwgJG1haW5jb250ZW50LWNsYXNzLCAkbmFtZSk7XG4gICAgICAgIH1cblxuICAgICAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtcmV2ZWFsKHRvcCwgJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4LCAkbWFpbmNvbnRlbnQtY2xhc3MsICRuYW1lKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1yZXZlYWwoYm90dG9tLCAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXgsICRtYWluY29udGVudC1jbGFzcywgJG5hbWUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gTW92ZSBpbi1jYW52YXMgZm9yIGxhcmdlciBzY3JlZW5zXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGlmICRuYW1lICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgaW4tY2FudmFzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIG9yYml0XG4vLy8vXG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBPcmJpdCdzIGJ1bGxldHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBhY3RpdmUgY29sb3IgZm9yIE9yYml0J3MgYnVsbGV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kLWFjdGl2ZTogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZGlhbWV0ZXIgZm9yIE9yYml0J3MgYnVsbGV0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1idWxsZXQtZGlhbWV0ZXI6IDEuMnJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGJldHdlZW4gT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWJ1bGxldC1tYXJnaW46IDAuMXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZGlzdGFuY2UgZnJvbSBzbGlkZSByZWdpb24gZm9yIE9yYml0J3MgYnVsbGV0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1idWxsZXQtbWFyZ2luLXRvcDogMC44cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIGZyb20gT3JiaXQncyBidWxsZXRzIHRvIHdoYXRldmVyIGNvbnRlbnQgbWF5IGx1cmsgYmVsb3cgaXQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtYnVsbGV0LW1hcmdpbi1ib3R0b206IDAuOHJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgT3JiaXQncyBjYXB0aW9uLlxuLy8vIEB0eXBlIENvbG9yXG4kb3JiaXQtY2FwdGlvbi1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC41KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgT3JiaXQncyBjYXB0aW9uLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWNhcHRpb24tcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgT3JiaXQncyBjb250cm9scyB3aGVuIGhvdmVyZWQuXG4vLy8gQHR5cGUgQ29sb3JcbiRvcmJpdC1jb250cm9sLWJhY2tncm91bmQtaG92ZXI6IHJnYmEoJGJsYWNrLCAwLjUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciBPcmJpdCdzIGNvbnRyb2xzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWNvbnRyb2wtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgei1pbmRleCBmb3IgT3JiaXQncyBjb250cm9scy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1jb250cm9sLXppbmRleDogMTAgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIG91dGVyIE9yYml0IHdyYXBwZXIuIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdGAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgaW5uZXIgT3JiaXQgc2xpZGUgY29udGFpbmVyLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtY29udGFpbmVyYCBjbGFzcy5cbkBtaXhpbiBvcmJpdC1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDsgLy8gUHJldmVudCBGT1VDIGJ5IG5vdCBzaG93aW5nIHVudGlsIEpTIHNldHMgaGVpZ2h0XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgaW5kaXZpZHVhbCBzbGlkZXMgb2YgYW4gT3JiaXQgc2xpZGVyLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtc2xpZGVgIGNsYXNzLlxuQG1peGluIG9yYml0LXNsaWRlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuICAmLm5vLW1vdGlvbnVpIHtcbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gb3JiaXQtZmlndXJlIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc2xpZGUgY29udGFpbmluZyBhbiBpbWFnZS4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LWltYWdlYCBjbGFzcy5cbkBtaXhpbiBvcmJpdC1pbWFnZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBvcmJpdCBzbGlkZSBjYXB0aW9uLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtY2FwdGlvbmAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogJG9yYml0LWNhcHRpb24tcGFkZGluZztcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtY2FwdGlvbi1iYWNrZ3JvdW5kO1xuICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkb3JiaXQtY2FwdGlvbi1iYWNrZ3JvdW5kKTtcbn1cblxuLy8vIEFkZHMgYmFzZSBzdHlsZXMgZm9yIHRoZSBuZXh0L3ByZXZpb3VzIGJ1dHRvbnMgaW4gYW4gT3JiaXQgc2xpZGVyLiBUaGVzZSBzdHlsZXMgYXJlIHNoYXJlZCBiZXR3ZWVuIHRoZSBgLm9yYml0LW5leHRgIGFuZCBgLm9yYml0LXByZXZpb3VzYCBjbGFzc2VzIGluIHRoZSBkZWZhdWx0IENTUy5cbkBtaXhpbiBvcmJpdC1jb250cm9sIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBAaW5jbHVkZSB2ZXJ0aWNhbC1jZW50ZXI7XG4gIHotaW5kZXg6ICRvcmJpdC1jb250cm9sLXppbmRleDtcbiAgcGFkZGluZzogJG9yYml0LWNvbnRyb2wtcGFkZGluZztcbiAgY29sb3I6ICR3aGl0ZTtcblxuICAmOmhvdmVyLFxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWNvbnRyb2wtYmFja2dyb3VuZC1ob3ZlcjtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBPcmJpdCBwcmV2aW91cyBidXR0b24uIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1wcmV2aW91c2AgY2xhc3MuXG5AbWl4aW4gb3JiaXQtcHJldmlvdXMge1xuICAjeyRnbG9iYWwtbGVmdH06IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIE9yYml0IG5leHQgYnV0dG9uLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtbmV4dGAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtbmV4dCB7XG4gICN7JGdsb2JhbC1sZWZ0fTogYXV0bztcbiAgI3skZ2xvYmFsLXJpZ2h0fTogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNvbnRhaW5lciBvZiBPcmJpdCBidWxsZXRzLiAvLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBPcmJpdCBwcmV2aW91cyBidXR0b24uIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1idWxsZXRzYCBjbGFzcy5cbkBtaXhpbiBvcmJpdC1idWxsZXRzIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6ICRvcmJpdC1idWxsZXQtbWFyZ2luLXRvcDtcbiAgbWFyZ2luLWJvdHRvbTogJG9yYml0LWJ1bGxldC1tYXJnaW4tYm90dG9tO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgYnV0dG9uIHtcbiAgICB3aWR0aDogJG9yYml0LWJ1bGxldC1kaWFtZXRlcjtcbiAgICBoZWlnaHQ6ICRvcmJpdC1idWxsZXQtZGlhbWV0ZXI7XG4gICAgbWFyZ2luOiAkb3JiaXQtYnVsbGV0LW1hcmdpbjtcblxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtYnVsbGV0LWJhY2tncm91bmQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmJpdC1idWxsZXQtYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tb3JiaXQge1xuICAub3JiaXQge1xuICAgIEBpbmNsdWRlIG9yYml0LXdyYXBwZXI7XG4gIH1cblxuICAub3JiaXQtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1jb250YWluZXI7XG4gIH1cblxuICAub3JiaXQtc2xpZGUge1xuICAgIEBpbmNsdWRlIG9yYml0LXNsaWRlO1xuICB9XG5cbiAgLm9yYml0LWZpZ3VyZSB7XG4gICAgQGluY2x1ZGUgb3JiaXQtZmlndXJlO1xuICB9XG5cbiAgLm9yYml0LWltYWdlIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1pbWFnZTtcbiAgfVxuXG4gIC5vcmJpdC1jYXB0aW9uIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1jYXB0aW9uO1xuICB9XG5cbiAgJW9yYml0LWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIG9yYml0LWNvbnRyb2w7XG4gIH1cblxuICAub3JiaXQtcHJldmlvdXMge1xuICAgIEBleHRlbmQgJW9yYml0LWNvbnRyb2w7XG4gICAgQGluY2x1ZGUgb3JiaXQtcHJldmlvdXM7XG4gIH1cblxuICAub3JiaXQtbmV4dCB7XG4gICAgQGV4dGVuZCAlb3JiaXQtY29udHJvbDtcbiAgICBAaW5jbHVkZSBvcmJpdC1uZXh0O1xuICB9XG5cbiAgLm9yYml0LWJ1bGxldHMge1xuICAgIEBpbmNsdWRlIG9yYml0LWJ1bGxldHM7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHBhZ2luYXRpb25cbi8vLy9cblxuLy8vIEZvbnQgc2l6ZSBvZiBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gb2YgdGhlIHBhZ2luYXRpb24gb2JqZWN0LlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24tbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIG9mIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmc6IHJlbS1jYWxjKDMgMTApICFkZWZhdWx0O1xuXG4vLy8gUmlnaHQgbWFyZ2luIHRvIHNlcGFyYXRlIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmc6IHJlbS1jYWxjKDEpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBwYWdpbmF0aW9uIGl0ZW1zIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBwYWdpbmF0aW9uIGl0ZW0gZm9yIHRoZSBjdXJyZW50IHBhZ2UuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50OiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgdGhlIHBhZ2luYXRpb24gaXRlbSBmb3IgdGhlIGN1cnJlbnQgcGFnZS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50OiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGEgZGlzYWJsZWQgcGFnaW5hdGlvbiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiB0aGUgZWxsaXBzaXMgaW4gYSBwYWdpbmF0aW9uIG1lbnUuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgZmFsc2VgLCBkb24ndCBkaXNwbGF5IHBhZ2UgbnVtYmVyIGxpbmtzIG9uIG1vYmlsZSwgb25seSBuZXh0L3ByZXZpb3VzIGxpbmtzXG4vLy8gYW5kIG9wdGlvbmFsbHkgY3VycmVudCBwYWdlIG51bWJlci5cbi8vLyBAdHlwZSBCb29sZWFuXG4kcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXM6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBkaXNwbGF5IHRoZSBjdXJyZW50IHBhZ2UgbnVtYmVyIG9uIG1vYmlsZSBldmVuIGlmIGAkcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXNgIGlzIHNldCB0byBgZmFsc2VgLlxuLy8vIFRoaXMgcGFyYW1ldGVyIHdpbGwgb25seSBvdmVycmlkZSB0aGUgdmlzaWJpbGl0eSBzZXR0aW5nIG9mIHRoZSBjdXJyZW50IGl0ZW0gZm9yIGAkcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXM6IGZhbHNlO2AsXG4vLy8gaXQgd2lsbCBub3QgYWZmZWN0IHRoZSBjdXJyZW50IHBhZ2UgbnVtYmVyIHZpc2liaWxpdHkgd2hlbiBgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zYCBpcyBzZXQgdG8gYHRydWVgLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRwYWdpbmF0aW9uLW1vYmlsZS1jdXJyZW50LWl0ZW06IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhcnJvd3MgYXJlIGFkZGVkIHRvIHRoZSBuZXh0IGFuZCBwcmV2aW91cyBsaW5rcyBvZiBwYWdpbmF0aW9uLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRwYWdpbmF0aW9uLWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHBhZ2luYXRpb24gY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIGEgYDx1bD5gLlxuQG1peGluIHBhZ2luYXRpb24tY29udGFpbmVyIChcbiAgJG1hcmdpbi1ib3R0b206ICRwYWdpbmF0aW9uLW1hcmdpbi1ib3R0b20sXG4gICRmb250LXNpemU6ICRwYWdpbmF0aW9uLWZvbnQtc2l6ZSxcbiAgJHNwYWNpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tc3BhY2luZyxcbiAgJHJhZGl1czogJHBhZ2luYXRpb24tcmFkaXVzLFxuICAkY29sb3I6ICRwYWdpbmF0aW9uLWl0ZW0tY29sb3IsXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXJcbikge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbi1ib3R0b207XG5cbiAgLy8gTGlzdCBpdGVtXG4gIGxpIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmc7XG4gICAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG5cbiAgICBAaWYgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgJjpsYXN0LWNoaWxkLFxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cblxuICAgICAgQGlmICRwYWdpbmF0aW9uLW1vYmlsZS1jdXJyZW50LWl0ZW0ge1xuICAgICAgICAmLmN1cnJlbnQge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUGFnZSBsaW5rc1xuICBhLFxuICBidXR0b24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xuICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gICAgY29sb3I6ICRjb2xvcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGN1cnJlbnQgcGFnaW5hdGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIGFuIGA8YT5gLlxuQG1peGluIHBhZ2luYXRpb24taXRlbS1jdXJyZW50IChcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGJhY2tncm91bmQtY3VycmVudDogJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWN1cnJlbnQsXG4gICRjb2xvci1jdXJyZW50OiAkcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWN1cnJlbnRcbikge1xuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtY3VycmVudDtcbiAgY29sb3I6ICRjb2xvci1jdXJyZW50O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBkaXNhYmxlZCBwYWdpbmF0aW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gYW4gYDxhPmAuXG5AbWl4aW4gcGFnaW5hdGlvbi1pdGVtLWRpc2FibGVkIChcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGNvbG9yOiAkcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWRpc2FibGVkXG4pIHtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBlbGxpcHNpcyBmb3IgdXNlIGluIGEgcGFnaW5hdGlvbiBsaXN0LlxuQG1peGluIHBhZ2luYXRpb24tZWxsaXBzaXMgKFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkY29sb3I6ICRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yXG4pIHtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGNvbnRlbnQ6ICdcXDIwMjYnO1xuICBjb2xvcjogJGNvbG9yO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1wYWdpbmF0aW9uIHtcbiAgLnBhZ2luYXRpb24ge1xuICAgIEBpbmNsdWRlIHBhZ2luYXRpb24tY29udGFpbmVyO1xuXG4gICAgLmN1cnJlbnQge1xuICAgICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1pdGVtLWN1cnJlbnQ7XG4gICAgfVxuXG4gICAgLmRpc2FibGVkIHtcbiAgICAgIEBpbmNsdWRlIHBhZ2luYXRpb24taXRlbS1kaXNhYmxlZDtcbiAgICB9XG5cbiAgICAuZWxsaXBzaXM6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIHBhZ2luYXRpb24tZWxsaXBzaXM7XG4gICAgfVxuICB9XG5cbiAgQGlmICRwYWdpbmF0aW9uLWFycm93cyB7XG4gICAgLnBhZ2luYXRpb24tcHJldmlvdXMgYTo6YmVmb3JlLFxuICAgIC5wYWdpbmF0aW9uLXByZXZpb3VzLmRpc2FibGVkOjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDAuNXJlbTtcbiAgICAgIGNvbnRlbnQ6ICdcXDAwYWInO1xuICAgIH1cblxuICAgIC5wYWdpbmF0aW9uLW5leHQgYTo6YWZ0ZXIsXG4gICAgLnBhZ2luYXRpb24tbmV4dC5kaXNhYmxlZDo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMC41cmVtO1xuICAgICAgY29udGVudDogJ1xcMDBiYic7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHByb2dyZXNzIGJhciBjb250YWluZXIuXG5AbWl4aW4gcHJvZ3Jlc3MtY29udGFpbmVyIHtcbiAgaGVpZ2h0OiAkcHJvZ3Jlc3MtaGVpZ2h0O1xuICBtYXJnaW4tYm90dG9tOiAkcHJvZ3Jlc3MtbWFyZ2luLWJvdHRvbTtcbiAgYm9yZGVyLXJhZGl1czogJHByb2dyZXNzLXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJhY2tncm91bmQ7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGlubmVyIG1ldGVyIG9mIGEgcHJvZ3Jlc3MgYmFyLlxuQG1peGluIHByb2dyZXNzLW1ldGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1tZXRlci1iYWNrZ3JvdW5kO1xuXG4gIEBpZiBoYXMtdmFsdWUoJHByb2dyZXNzLXJhZGl1cykge1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGV4dCBpbiB0aGUgcHJvZ3Jlc3MgbWV0ZXIuXG5AbWl4aW4gcHJvZ3Jlc3MtbWV0ZXItdGV4dCB7XG4gIEBpbmNsdWRlIGFic29sdXRlLWNlbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgQGlmIGhhcy12YWx1ZSgkcHJvZ3Jlc3MtcmFkaXVzKSB7XG4gICAgYm9yZGVyLXJhZGl1czogJHByb2dyZXNzLXJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1wcm9ncmVzcy1iYXIge1xuICAvLyBQcm9ncmVzcyBiYXJcbiAgLnByb2dyZXNzIHtcbiAgICBAaW5jbHVkZSBwcm9ncmVzcy1jb250YWluZXI7XG5cbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRmb3VuZGF0aW9uLXBhbGV0dGUge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIC5wcm9ncmVzcy1tZXRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gSW5uZXIgbWV0ZXJcbiAgLnByb2dyZXNzLW1ldGVyIHtcbiAgICBAaW5jbHVkZSBwcm9ncmVzcy1tZXRlcjtcbiAgfVxuXG4gIC8vIElubmVyIG1ldGVyIHRleHRcbiAgLnByb2dyZXNzLW1ldGVyLXRleHQge1xuICAgIEBpbmNsdWRlIHByb2dyZXNzLW1ldGVyLXRleHQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBbVE9ET10gQ2hlY2sgaG93IHBsdWdpbiBjb25maXJtcyBkaXNhYmxlZCBvciB2ZXJ0aWNhbCBzdGF0dXNcbi8vIFtUT0RPXSBDaGVjayBpZiB0cmFuc2l0aW9uOiBhbGw7IGlzIG5lY2Vzc2FyeVxuXG4vLy8vXG4vLy8gQGdyb3VwIHNsaWRlclxuLy8vL1xuXG4vLy8gRGVmYXVsdCBzbGlkZXIgd2lkdGggb2YgYSB2ZXJ0aWNhbCBzbGlkZXIuIChEb2Vzbid0IGFwcGx5IHRvIHRoZSBuYXRpdmUgc2xpZGVyLilcbi8vLyBAdHlwZSBOdW1iZXJcbiRzbGlkZXItd2lkdGgtdmVydGljYWw6IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIFRyYW5zaXRpb24gcHJvcGVydGllcyB0byBhcHBseSB0byB0aGUgc2xpZGVyIGhhbmRsZSBhbmQgZmlsbC4gKERvZXNuJ3QgYXBwbHkgdG8gdGhlIG5hdGl2ZSBzbGlkZXIuKVxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiRzbGlkZXItdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHRoZSBnZW5lcmFsIHN0eWxlcyBmb3Igc2xpZGVycy5cbkBtaXhpbiBzbGlkZXItY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6ICRzbGlkZXItaGVpZ2h0O1xuICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAyLjI1cmVtO1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRzbGlkZXItYmFja2dyb3VuZDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgdG91Y2gtYWN0aW9uOiBub25lO1xufVxuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIGFjdGl2ZSBmaWxsIGZvciBzbGlkZXJzLlxuQG1peGluIHNsaWRlci1maWxsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJHNsaWRlci1oZWlnaHQ7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJHNsaWRlci1maWxsLWJhY2tncm91bmQ7XG4gIHRyYW5zaXRpb246ICRzbGlkZXItdHJhbnNpdGlvbjtcblxuICAmLmlzLWRyYWdnaW5nIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMHMgbGluZWFyO1xuICB9XG59XG5cbi8vLyBBZGRzIHRoZSBnZW5lcmFsIHN0eWxlcyBmb3IgdGhlIHNsaWRlciBoYW5kbGVzLlxuQG1peGluIHNsaWRlci1oYW5kbGUge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIEBpbmNsdWRlIHZlcnRpY2FsLWNlbnRlcjtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTtcblxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkc2xpZGVyLWhhbmRsZS13aWR0aDtcbiAgaGVpZ2h0OiAkc2xpZGVyLWhhbmRsZS1oZWlnaHQ7XG5cbiAgYm9yZGVyLXJhZGl1czogJHNsaWRlci1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzbGlkZXItaGFuZGxlLWJhY2tncm91bmQ7XG4gIHRyYW5zaXRpb246ICRzbGlkZXItdHJhbnNpdGlvbjtcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogc2NhbGUtY29sb3IoJHNsaWRlci1oYW5kbGUtYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTE1JSk7XG4gIH1cblxuICAmLmlzLWRyYWdnaW5nIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMHMgbGluZWFyO1xuICB9XG59XG5cbkBtaXhpbiBzbGlkZXItZGlzYWJsZWQge1xuICBvcGFjaXR5OiAkc2xpZGVyLW9wYWNpdHktZGlzYWJsZWQ7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbkBtaXhpbiBzbGlkZXItdmVydGljYWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkc2xpZGVyLXdpZHRoLXZlcnRpY2FsO1xuICBoZWlnaHQ6IDEyLjVyZW07XG4gIG1hcmdpbjogMCAxLjI1cmVtO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEsIC0xKTtcblxuICAuc2xpZGVyLWZpbGwge1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogJHNsaWRlci13aWR0aC12ZXJ0aWNhbDtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgLnNsaWRlci1oYW5kbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIHdpZHRoOiAkc2xpZGVyLWhhbmRsZS1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkc2xpZGVyLWhhbmRsZS13aWR0aDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tc2xpZGVyIHtcbiAgLy8gQ29udGFpbmVyXG4gIC5zbGlkZXIge1xuICAgIEBpbmNsdWRlIHNsaWRlci1jb250YWluZXI7XG4gIH1cblxuICAvLyBGaWxsIGFyZWFcbiAgLnNsaWRlci1maWxsIHtcbiAgICBAaW5jbHVkZSBzbGlkZXItZmlsbDtcbiAgfVxuXG4gIC8vIERyYWdnYWJsZSBoYW5kbGVcbiAgLnNsaWRlci1oYW5kbGUge1xuICAgIEBpbmNsdWRlIHNsaWRlci1oYW5kbGU7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAuc2xpZGVyLmRpc2FibGVkLFxuICAuc2xpZGVyW2Rpc2FibGVkXSB7XG4gICAgQGluY2x1ZGUgc2xpZGVyLWRpc2FibGVkO1xuICB9XG5cbiAgLy8gVmVydGljYWwgc2xpZGVyXG4gIC5zbGlkZXIudmVydGljYWwge1xuICAgIEBpbmNsdWRlIHNsaWRlci12ZXJ0aWNhbDtcbiAgfVxuXG4gIC8vIFJUTCBzdXBwb3J0XG4gIEBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCB7XG4gICAgLnNsaWRlcjpub3QoLnZlcnRpY2FsKSB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKC0xLCAxKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AbWl4aW4gZm91bmRhdGlvbi1zdGlja3kge1xuICAuc3RpY2t5LWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLnN0aWNreSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuXG4gIC5zdGlja3kuaXMtc3R1Y2sge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB6LWluZGV4OiA1O1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgJi5pcy1hdC10b3Age1xuICAgICAgdG9wOiAwO1xuICAgIH1cblxuICAgICYuaXMtYXQtYm90dG9tIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAuc3RpY2t5LmlzLWFuY2hvcmVkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogYXV0bztcblxuICAgICYuaXMtYXQtYm90dG9tIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHN3aXRjaFxuLy8vL1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhIHN3aXRjaC5cbi8vLyBAdHlwZSBDb2xvclxuJHN3aXRjaC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGFjdGl2ZSBjb2xvciBvZiBhIHN3aXRjaC5cbi8vLyBAdHlwZSBDb2xvclxuJHN3aXRjaC1iYWNrZ3JvdW5kLWFjdGl2ZTogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBIZWlnaHQgb2YgYSBzd2l0Y2gsIHdpdGggbm8gY2xhc3MgYXBwbGllZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtaGVpZ2h0OiAycmVtICFkZWZhdWx0O1xuXG4vLy8gSGVpZ2h0IG9mIGEgc3dpdGNoIHdpdGggLnRpbnkgY2xhc3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLWhlaWdodC10aW55OiAxLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBIZWlnaHQgb2YgYSBzd2l0Y2ggd2l0aCAuc21hbGwgY2xhc3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLWhlaWdodC1zbWFsbDogMS43NXJlbSAhZGVmYXVsdDtcblxuLy8vIEhlaWdodCBvZiBhIHN3aXRjaCB3aXRoIC5sYXJnZSBjbGFzcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtaGVpZ2h0LWxhcmdlOiAyLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIG9mIHRoZSBzd2l0Y2hcbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIGJvcmRlciBhcm91bmQgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHRoZSBzd2l0Y2ggY29udGFpbmVyIGFuZCBwYWRkbGUuXG4vLy8gQHR5cGUgQ29sb3JcbiRzd2l0Y2gtcGFkZGxlLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBhIHN3aXRjaCBwYWRkbGUgYW5kIHRoZSBlZGdlIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1wYWRkbGUtb2Zmc2V0OiAwLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gYm9yZGVyIHJhZGl1cyBvZiB0aGUgc3dpdGNoIHBhZGRsZVxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1wYWRkbGUtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIHN3aXRjaCB0cmFuc2l0aW9uLlxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2Utb3V0ICFkZWZhdWx0O1xuXG4vLyBtYWtlIHRoZW0gdmFyaWFibGVzXG4vLyBhc2sgYWJvdXQgYWNjZXNzaWJpbGl0eSBvbiBsYWJlbFxuLy8gY2hhbmdlIGNsYXNzIG5hbWUgZm9yIHRleHRcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHN3aXRjaCBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gYSBjb250YWluZXIgY2xhc3MuXG5AbWl4aW4gc3dpdGNoLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogJHN3aXRjaC1tYXJnaW47XG4gIG91dGxpbmU6IDA7XG5cbiAgLy8gVGhlc2UgcHJvcGVydGllcyBjYXNjYWRlIGRvd24gdG8gdGhlIHN3aXRjaCB0ZXh0XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICR3aGl0ZTtcblxuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHN3aXRjaCBpbnB1dC4gQXBwbHkgdGhpcyB0byBhbiBgPGlucHV0PmAgd2l0aGluIGEgc3dpdGNoLlxuQG1peGluIHN3aXRjaC1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgb3BhY2l0eTogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgYmFja2dyb3VuZCBhbmQgcGFkZGxlIG9mIGEgc3dpdGNoLiBBcHBseSB0aGlzIHRvIGEgYDxsYWJlbD5gIHdpdGhpbiBhIHN3aXRjaC5cbkBtaXhpbiBzd2l0Y2gtcGFkZGxlIHtcbiAgJHN3aXRjaC13aWR0aDogJHN3aXRjaC1oZWlnaHQgKiAyO1xuICAkcGFkZGxlLWhlaWdodDogJHN3aXRjaC1oZWlnaHQgLSAoJHN3aXRjaC1wYWRkbGUtb2Zmc2V0ICogMik7XG4gICRwYWRkbGUtd2lkdGg6ICRzd2l0Y2gtaGVpZ2h0IC0gKCRzd2l0Y2gtcGFkZGxlLW9mZnNldCAqIDIpO1xuICAkcGFkZGxlLWFjdGl2ZS1vZmZlc3Q6ICRzd2l0Y2gtd2lkdGggLSAkcGFkZGxlLXdpZHRoIC0gJHN3aXRjaC1wYWRkbGUtb2Zmc2V0O1xuXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAkc3dpdGNoLXdpZHRoO1xuICBoZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0O1xuXG4gIGJvcmRlci1yYWRpdXM6ICRzd2l0Y2gtcmFkaXVzO1xuICBiYWNrZ3JvdW5kOiAkc3dpdGNoLWJhY2tncm91bmQ7XG4gIHRyYW5zaXRpb246ICRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb247XG5cbiAgLy8gUmVzZXR0aW5nIHRoZXNlIDxsYWJlbD4gcHJlc2V0cyBzbyB0eXBlIHN0eWxlcyBjYXNjYWRlIGRvd25cbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuXG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAvLyBOZWVkZWQgdG8gb3ZlcnJpZGUgc3BlY2lmaWNpdHlcbiAgaW5wdXQgKyAmIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAvLyBUaGUgcGFkZGxlIGl0c2VsZlxuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogJHN3aXRjaC1wYWRkbGUtb2Zmc2V0O1xuICAgICN7JGdsb2JhbC1sZWZ0fTogJHN3aXRjaC1wYWRkbGUtb2Zmc2V0O1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRwYWRkbGUtd2lkdGg7XG4gICAgaGVpZ2h0OiAkcGFkZGxlLWhlaWdodDtcblxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgYm9yZGVyLXJhZGl1czogJHN3aXRjaC1wYWRkbGUtcmFkaXVzO1xuICAgIGJhY2tncm91bmQ6ICRzd2l0Y2gtcGFkZGxlLWJhY2tncm91bmQ7XG4gICAgdHJhbnNpdGlvbjogJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbjtcbiAgICBjb250ZW50OiAnJztcbiAgfVxuXG4gIC8vIENoYW5nZSB0aGUgdmlzdWFsIHN0eWxlIHdoZW4gdGhlIHN3aXRjaCBpcyBhY3RpdmVcbiAgaW5wdXQ6Y2hlY2tlZCB+ICYge1xuICAgIGJhY2tncm91bmQ6ICRzd2l0Y2gtYmFja2dyb3VuZC1hY3RpdmU7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAjeyRnbG9iYWwtbGVmdH06ICRwYWRkbGUtYWN0aXZlLW9mZmVzdDtcbiAgICB9XG4gIH1cblxuICBpbnB1dDpmb2N1cyB+ICYge1xuICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgfVxufVxuXG4vLy8gQWRkcyBiYXNlIHN0eWxlcyBmb3IgYWN0aXZlL2luYWN0aXZlIHRleHQgaW5zaWRlIGEgc3dpdGNoLiBBcHBseSB0aGlzIHRvIHRleHQgZWxlbWVudHMgaW5zaWRlIHRoZSBzd2l0Y2ggYDxsYWJlbD5gLlxuQG1peGluIHN3aXRjaC10ZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBhY3RpdmUgc3RhdGUgdGV4dCB3aXRoaW4gYSBzd2l0Y2guXG5AbWl4aW4gc3dpdGNoLXRleHQtYWN0aXZlIHtcbiAgI3skZ2xvYmFsLWxlZnR9OiA4JTtcbiAgZGlzcGxheTogbm9uZTtcblxuICBpbnB1dDpjaGVja2VkICsgbGFiZWwgPiAmIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBpbmFjdGl2ZSBzdGF0ZSB0ZXh0IHdpdGhpbiBhIHN3aXRjaC5cbkBtaXhpbiBzd2l0Y2gtdGV4dC1pbmFjdGl2ZSB7XG4gICN7JGdsb2JhbC1yaWdodH06IDE1JTtcblxuICBpbnB1dDpjaGVja2VkICsgbGFiZWwgPiAmIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vLyBDaGFuZ2VzIHRoZSBzaXplIG9mIGEgc3dpdGNoIGJ5IG1vZGlmeWluZyB0aGUgc2l6ZSBvZiB0aGUgYm9keSBhbmQgcGFkZGxlLiBBcHBseSB0aGlzIHRvIGEgc3dpdGNoIGNvbnRhaW5lci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGZvbnQtc2l6ZSBbMXJlbV0gLSBGb250IHNpemUgb2YgbGFiZWwgdGV4dCB3aXRoaW4gdGhlIHN3aXRjaC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHN3aXRjaC1oZWlnaHQgWzJyZW1dIC0gSGVpZ2h0IG9mIHRoZSBzd2l0Y2ggYm9keS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHBhZGRsZS1vZmZzZXQgWzAuMjVyZW1dIC0gU3BhY2luZyBiZXR3ZWVuIHRoZSBzd2l0Y2ggcGFkZGxlIGFuZCB0aGUgZWRnZSBvZiB0aGUgc3dpdGNoIGJvZHkuXG5AbWl4aW4gc3dpdGNoLXNpemUoXG4gICRmb250LXNpemU6IDFyZW0sXG4gICRzd2l0Y2gtaGVpZ2h0OiAycmVtLFxuICAkcGFkZGxlLW9mZnNldDogMC4yNXJlbVxuKSB7XG5cbiAgJHN3aXRjaC13aWR0aDogJHN3aXRjaC1oZWlnaHQgKiAyO1xuICAkcGFkZGxlLXdpZHRoOiAkc3dpdGNoLWhlaWdodCAtICgkcGFkZGxlLW9mZnNldCAqIDIpO1xuICAkcGFkZGxlLWhlaWdodDogJHN3aXRjaC1oZWlnaHQgLSAoJHBhZGRsZS1vZmZzZXQgKiAyKTtcbiAgJHBhZGRsZS1hY3RpdmUtb2ZmZXN0OiAkc3dpdGNoLXdpZHRoIC0gJHBhZGRsZS13aWR0aCAtICRwYWRkbGUtb2Zmc2V0O1xuXG4gIGhlaWdodDogJHN3aXRjaC1oZWlnaHQ7XG5cbiAgLnN3aXRjaC1wYWRkbGUge1xuICAgIHdpZHRoOiAkc3dpdGNoLXdpZHRoO1xuICAgIGhlaWdodDogJHN3aXRjaC1oZWlnaHQ7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICB9XG5cbiAgLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICB0b3A6ICRwYWRkbGUtb2Zmc2V0O1xuICAgICN7JGdsb2JhbC1sZWZ0fTogJHBhZGRsZS1vZmZzZXQ7XG4gICAgd2lkdGg6ICRwYWRkbGUtd2lkdGg7XG4gICAgaGVpZ2h0OiAkcGFkZGxlLWhlaWdodDtcbiAgfVxuXG4gIGlucHV0OmNoZWNrZWQgfiAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICAgICN7JGdsb2JhbC1sZWZ0fTogJHBhZGRsZS1hY3RpdmUtb2ZmZXN0O1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXN3aXRjaCB7XG4gIC8vIENvbnRhaW5lciBjbGFzc1xuICAuc3dpdGNoIHtcbiAgICBoZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0O1xuICAgIEBpbmNsdWRlIHN3aXRjaC1jb250YWluZXI7XG4gIH1cblxuICAvLyA8aW5wdXQ+IGVsZW1lbnRcbiAgLnN3aXRjaC1pbnB1dCB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLWlucHV0O1xuICB9XG5cbiAgLy8gPGxhYmVsPiBlbGVtZW50XG4gIC5zd2l0Y2gtcGFkZGxlIHtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtcGFkZGxlO1xuICB9XG5cbiAgLy8gQmFzZSBsYWJlbCB0ZXh0IHN0eWxlc1xuICAlc3dpdGNoLXRleHQge1xuICAgIEBpbmNsdWRlIHN3aXRjaC10ZXh0O1xuICB9XG5cbiAgLy8gQWN0aXZlIGxhYmVsIHRleHQgc3R5bGVzXG4gIC5zd2l0Y2gtYWN0aXZlIHtcbiAgICBAZXh0ZW5kICVzd2l0Y2gtdGV4dDtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtdGV4dC1hY3RpdmU7XG4gIH1cblxuICAvLyBJbmFjdGl2ZSBsYWJlbCB0ZXh0IHN0eWxlc1xuICAuc3dpdGNoLWluYWN0aXZlIHtcbiAgICBAZXh0ZW5kICVzd2l0Y2gtdGV4dDtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtdGV4dC1pbmFjdGl2ZTtcbiAgfVxuXG4gIC8vIFN3aXRjaCBzaXplc1xuICAuc3dpdGNoLnRpbnkge1xuICAgIEBpbmNsdWRlIHN3aXRjaC1zaXplKHJlbS1jYWxjKDEwKSwgJHN3aXRjaC1oZWlnaHQtdGlueSwgJHN3aXRjaC1wYWRkbGUtb2Zmc2V0KTtcbiAgfVxuXG4gIC5zd2l0Y2guc21hbGwge1xuICAgIEBpbmNsdWRlIHN3aXRjaC1zaXplKHJlbS1jYWxjKDEyKSwgJHN3aXRjaC1oZWlnaHQtc21hbGwsICRzd2l0Y2gtcGFkZGxlLW9mZnNldCk7XG4gIH1cblxuICAuc3dpdGNoLmxhcmdlIHtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtc2l6ZShyZW0tY2FsYygxNiksICRzd2l0Y2gtaGVpZ2h0LWxhcmdlLCAkc3dpdGNoLXBhZGRsZS1vZmZzZXQpO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gc2Fzcy1saW50OmRpc2FibGUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuXG4vLy8vXG4vLy8gQGdyb3VwIHRhYmxlXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciB0YWJsZSBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtYmFja2dyb3VuZDogJHdoaXRlICAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc2NhbGUgZm9yIGRhcmtlbmluZyB0aGUgc3RyaXBlZCB0YWJsZSByb3dzIGFuZCB0aGUgdGFibGUgYm9yZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLWNvbG9yLXNjYWxlOiA1JSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc3R5bGUgZm9yIHRhYmxlIGJvcmRlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtYm9yZGVyOiAxcHggc29saWQgc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIHRhYmxlLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLXBhZGRpbmc6IHJlbS1jYWxjKDggMTAgMTApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzY2FsZSBmb3IgZGFya2VuaW5nIHRoZSB0YWJsZSByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLWhvdmVyLXNjYWxlOiAyJSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2Ygc3RhbmRhcmQgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHN0cmlwZWQgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtcm93LXN0cmlwZS1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgKyAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCB0YWJsZXMgYXJlIHN0cmlwZWQgYnkgZGVmYXVsdCBhbmQgYW4gLnVuc3RyaXBlZCBjbGFzcyBpcyBjcmVhdGVkLiBJZiBgZmFsc2VgLCBhIC5zdHJpcGVkIGNsYXNzIGlzIGNyZWF0ZWQuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHRhYmxlLWlzLXN0cmlwZWQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIHN0cmlwZWQgcm93cy5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciBzaG93aW5nIHRoZSBzdHJpcGUgb24gcm93cyBvZiB0aGUgdGFibGVzLCBleGNsdWRpbmcgdGhlIGhlYWRlciBhbmQgZm9vdGVyLiBJZiBldmVuLCB0aGUgZXZlbiByb3dzIHdpbGwgaGF2ZSBhIGJhY2tncm91bmQgY29sb3IuIElmIG9kZCwgdGhlIG9kZCByb3dzIHdpbGwgaGF2ZSBhIGJhY2tncm91bmQgY29sb3IuIElmIGVtcHR5LCBvciBhbnkgb3RoZXIgdmFsdWUsIHRoZSB0YWJsZSByb3dzIHdpbGwgaGF2ZSBubyBzdHJpcGluZy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kdGFibGUtc3RyaXBlOiBldmVuICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgaGVhZGVyIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1oZWFkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgLyAyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgaGVhZGVyIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLWhlYWQtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWhlYWQtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGZvb3RlciBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtZm9vdC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgZm9vdGVyIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLWZvb3Qtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWZvb3QtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgaGVhZGVyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtaGVhZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBmb290ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1mb290LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciBzaG93aW5nIHRoZSBoZWFkZXIgd2hlbiB1c2luZyBzdGFja2VkIHRhYmxlcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQ6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gQnJlYWtwb2ludCBhdCB3aGljaCBzdGFja2VkIHRhYmxlIHN3aXRjaGVzIGZyb20gbW9iaWxlIHRvIGRlc2t0b3Agdmlldy5cbi8vLyBAdHlwZSBCcmVha3BvaW50XG4kdGFibGUtc3RhY2stYnJlYWtwb2ludDogbWVkaXVtICFkZWZhdWx0O1xuXG5AbWl4aW4gLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlOiAkdGFibGUtc3RyaXBlKSB7XG4gIHRyIHtcbiAgICAvLyBJZiBzdHJpcGUgaXMgc2V0IHRvIGV2ZW4sIGRhcmtlbiB0aGUgZXZlbiByb3dzLlxuICAgIEBpZiAkc3RyaXBlID09IGV2ZW4ge1xuICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIElmIHN0cmlwZSBpcyBzZXQgdG8gb2RkLCBkYXJrZW4gdGhlIG9kZCByb3dzLlxuICAgIEBlbHNlIGlmICRzdHJpcGUgPT0gb2RkIHtcbiAgICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gLXpmLXRhYmxlLXVuc3RyaXBlKCkge1xuICB0ciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICBib3JkZXItYm90dG9tOiAkdGFibGUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuICB9XG59XG5cbkBtaXhpbiAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGU6ICR0YWJsZS1zdHJpcGUsICRpcy1zdHJpcGVkOiAkdGFibGUtaXMtc3RyaXBlZCkge1xuICB0aGVhZCxcbiAgdGJvZHksXG4gIHRmb290IHtcbiAgICBib3JkZXI6ICR0YWJsZS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gIH1cblxuICAvLyBDYXB0aW9uXG4gIGNhcHRpb24ge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICB9XG5cbiAgLy8gVGFibGUgaGVhZFxuICB0aGVhZCB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWhlYWQtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRhYmxlLWhlYWQtZm9udC1jb2xvcjtcbiAgfVxuXG4gIC8vIFRhYmxlIGZvb3RcbiAgdGZvb3Qge1xuICAgIGJhY2tncm91bmQ6ICR0YWJsZS1mb290LWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICR0YWJsZS1mb290LWZvbnQtY29sb3I7XG4gIH1cblxuICAvLyBUYWJsZSBoZWFkIGFuZCBmb290XG4gIHRoZWFkLFxuICB0Zm9vdCB7XG4gICAgLy8gUm93cyB3aXRoaW4gaGVhZCBhbmQgZm9vdFxuICAgIHRyIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgIC8vIENlbGxzIHdpdGhpbiBoZWFkIGFuZCBmb290XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICAgIHRleHQtYWxpZ246ICN7JGdsb2JhbC1sZWZ0fTtcbiAgICB9XG4gIH1cblxuICAvLyBUYWJsZSByb3dzXG4gIHRib2R5IHtcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICB9XG4gIH1cblxuICAvLyBJZiB0YWJsZXMgYXJlIHN0cmlwZWRcbiAgQGlmICRpcy1zdHJpcGVkID09IHRydWUge1xuICAgIHRib2R5IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1zdHJpcGUoJHN0cmlwZSk7XG4gICAgfVxuXG4gICAgJi51bnN0cmlwZWQge1xuICAgICAgdGJvZHkge1xuICAgICAgICBAaW5jbHVkZSAtemYtdGFibGUtdW5zdHJpcGUoKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gSWYgdGFibGVzIGFyZSBub3Qgc3RyaXBlZFxuICBAZWxzZSBpZiAkaXMtc3RyaXBlZCA9PSBmYWxzZSB7XG4gICAgdGJvZHkge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXVuc3RyaXBlKCk7XG4gICAgfVxuXG4gICAgJi5zdHJpcGVkIHtcbiAgICAgIHRib2R5IHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgdGhlIGdlbmVyYWwgc3R5bGVzIGZvciB0YWJsZXMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RyaXBlIFskdGFibGUtc3RyaXBlXSAtIFVzZXMga2V5d29yZHMgZXZlbiwgb2RkLCBvciBub25lIHRvIGRhcmtlbiByb3dzIG9mIHRoZSB0YWJsZS4gVGhlIGRlZmF1bHQgdmFsdWUgaXMgZXZlbi5cbkBtaXhpbiB0YWJsZShcbiAgJHN0cmlwZTogJHRhYmxlLXN0cmlwZSxcbiAgJG5lc3Q6IGZhbHNlXG4pIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuICBAaWYgJG5lc3Qge1xuICAgIEBpbmNsdWRlIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZSk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBhdC1yb290IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZSk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHRoZSBhYmlsaXR5IHRvIGhvcml6b250YWxseSBzY3JvbGwgdGhlIHRhYmxlIHdoZW4gdGhlIGNvbnRlbnQgb3ZlcmZsb3dzIGhvcml6b250YWxseS5cbkBtaXhpbiB0YWJsZS1zY3JvbGwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG5cbi8vLyBTbGlnaHRseSBkYXJrZW5zIHRoZSB0YWJsZSByb3dzIG9uIGhvdmVyLlxuQG1peGluIHRhYmxlLWhvdmVyIHtcbiAgdGhlYWQgdHIge1xuICAgIC8vRGFya2VucyB0aGUgdGFibGUgaGVhZGVyIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaGVhZC1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgdGZvb3QgdHIge1xuICAgIC8vRGFya2VucyB0aGUgdGFibGUgZm9vdGVyIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZm9vdC1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgdGJvZHkgdHIge1xuICAgIC8vRGFya2VucyB0aGUgbm9uLXN0cmlwZWQgdGFibGUgcm93cyBvbiBob3Zlci5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgQGlmICR0YWJsZS1pcy1zdHJpcGVkID09IHRydWUge1xuICAgIC8vIERhcmtlbnMgdGhlIGV2ZW4gc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBpZigkdGFibGUtc3RyaXBlID09IGV2ZW4pIHtcbiAgICAgICY6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGFya2VucyB0aGUgb2RkIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAZWxzZSBpZigkdGFibGUtc3RyaXBlID09IG9kZCkge1xuICAgICAgJjpub3QoLnVuc3RyaXBlZCkgdHI6bnRoLW9mLXR5cGUob2RkKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBlbHNlIGlmICR0YWJsZS1pcy1zdHJpcGVkID09IGZhbHNlIHtcbiAgICAvLyBEYXJrZW5zIHRoZSBldmVuIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAaWYoJHRhYmxlLXN0cmlwZSA9PSBldmVuKSB7XG4gICAgICAmLnN0cmlwZWQgdHI6bnRoLW9mLXR5cGUoZXZlbik6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEYXJrZW5zIHRoZSBvZGQgc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBlbHNlIGlmKCR0YWJsZS1zdHJpcGUgPT0gb2RkKSB7XG4gICAgICAmLnN0cmlwZWQgdHI6bnRoLW9mLXR5cGUob2RkKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3RhY2tlZCB0YWJsZS4gVXNlZnVsIGZvciBzbWFsbC1zY3JlZW4gbGF5b3V0cy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRoZWFkZXIgWyRzaG93LWhlYWRlci1mb3Itc3RhY2tlZF0gLSBTaG93IHRoZSBmaXJzdCB0aCBvZiBoZWFkZXIgd2hlbiBzdGFja2VkLlxuQG1peGluIHRhYmxlLXN0YWNrKCRoZWFkZXI6ICRzaG93LWhlYWRlci1mb3Itc3RhY2tlZCkge1xuICBAaWYgJGhlYWRlciB7XG4gICAgdGhlYWQge1xuICAgICAgdGgge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHRoZWFkIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgdGZvb3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICB0cixcbiAgdGgsXG4gIHRkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIHRkIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRhYmxlKCRuZXN0OiBmYWxzZSkge1xuICB0YWJsZSB7XG4gICAgQGluY2x1ZGUgdGFibGUoJG5lc3Q6ICRuZXN0KTtcbiAgfVxuXG4gIHRhYmxlLnN0YWNrIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZS1zdGFjay1icmVha3BvaW50IGRvd24pIHtcbiAgICAgIEBpbmNsdWRlIHRhYmxlLXN0YWNrO1xuICAgIH1cbiAgfVxuXG4gIHRhYmxlLnNjcm9sbCB7XG4gICAgQGluY2x1ZGUgdGFibGUtc2Nyb2xsO1xuICB9XG5cbiAgdGFibGUuaG92ZXIge1xuICAgIEBpbmNsdWRlIHRhYmxlLWhvdmVyO1xuICB9XG5cbiAgLnRhYmxlLXNjcm9sbCB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcblxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnbWF0aCc7XG5cbiRjb250cmFzdC13YXJuaW5nczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuLy8vIENoZWNrcyB0aGUgbHVtaW5hbmNlIG9mIGAkY29sb3JgLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3IgdG8gY2hlY2sgdGhlIGx1bWluYW5jZSBvZi5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBsdW1pbmFuY2Ugb2YgYCRjb2xvcmAuXG5AZnVuY3Rpb24gY29sb3ItbHVtaW5hbmNlKCRjb2xvcikge1xuICAvLyBBZGFwdGVkIGZyb206IGh0dHBzOi8vZ2l0aHViLmNvbS9MZWFWZXJvdS9jb250cmFzdC1yYXRpby9ibG9iL2doLXBhZ2VzL2NvbG9yLmpzXG4gIC8vIEZvcm11bGE6IGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDgvUkVDLVdDQUcyMC0yMDA4MTIxMS8jcmVsYXRpdmVsdW1pbmFuY2VkZWZcbiAgJHJnYmE6IHJlZCgkY29sb3IpLCBncmVlbigkY29sb3IpLCBibHVlKCRjb2xvcik7XG4gICRyZ2JhMjogKCk7XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAzIHtcbiAgICAkcmdiOiBudGgoJHJnYmEsICRpKTtcbiAgICAkcmdiOiAkcmdiIC8gMjU1O1xuXG4gICAgJHJnYjogaWYoJHJnYiA8IDAuMDM5MjgsICRyZ2IgLyAxMi45MiwgcG93KCgkcmdiICsgMC4wNTUpIC8gMS4wNTUsIDIuNCkpO1xuXG4gICAgJHJnYmEyOiBhcHBlbmQoJHJnYmEyLCAkcmdiKTtcbiAgfVxuXG4gIEByZXR1cm4gMC4yMTI2ICogbnRoKCRyZ2JhMiwgMSkgKyAwLjcxNTIgKiBudGgoJHJnYmEyLCAyKSArIDAuMDcyMiAqIG50aCgkcmdiYTIsIDMpO1xufVxuXG4vLy8gQ2hlY2tzIHRoZSBjb250cmFzdCByYXRpbyBvZiB0d28gY29sb3JzLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yMSAtIEZpcnN0IGNvbG9yIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yMiAtIFNlY29uZCBjb2xvciB0byBjb21wYXJlLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGNvbnRyYXN0IHJhdGlvIG9mIHRoZSBjb21wYXJlZCBjb2xvcnMuXG5AZnVuY3Rpb24gY29sb3ItY29udHJhc3QoJGNvbG9yMSwgJGNvbG9yMikge1xuICAvLyBBZGFwdGVkIGZyb206IGh0dHBzOi8vZ2l0aHViLmNvbS9MZWFWZXJvdS9jb250cmFzdC1yYXRpby9ibG9iL2doLXBhZ2VzL2NvbG9yLmpzXG4gIC8vIEZvcm11bGE6IGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDgvUkVDLVdDQUcyMC0yMDA4MTIxMS8jY29udHJhc3QtcmF0aW9kZWZcbiAgJGx1bWluYW5jZTE6IGNvbG9yLWx1bWluYW5jZSgkY29sb3IxKSArIDAuMDU7XG4gICRsdW1pbmFuY2UyOiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yMikgKyAwLjA1O1xuICAkcmF0aW86ICRsdW1pbmFuY2UxIC8gJGx1bWluYW5jZTI7XG5cbiAgQGlmICRsdW1pbmFuY2UyID4gJGx1bWluYW5jZTEge1xuICAgICRyYXRpbzogMSAvICRyYXRpbztcbiAgfVxuXG4gICRyYXRpbzogcm91bmQoJHJhdGlvICogMTApIC8gMTA7XG5cbiAgQHJldHVybiAkcmF0aW87XG59XG5cbi8vLyBDaGVja3MgdGhlIGx1bWluYW5jZSBvZiBgJGJhc2VgLCBhbmQgcmV0dXJucyB0aGUgY29sb3IgZnJvbSBgJGNvbG9yc2AgKGxpc3Qgb2YgY29sb3JzKSB0aGF0IGhhcyB0aGUgbW9zdCBjb250cmFzdC5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYXNlIC0gQ29sb3IgdG8gY2hlY2sgbHVtaW5hbmNlLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGNvbG9ycyBbKCR3aGl0ZSwgJGJsYWNrKV0gLSBDb2xvcnMgdG8gY29tcGFyZS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRvbGVyYW5jZSBbJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZV0gLSBDb250cmFzdCB0b2xlcmFuY2UuXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IHRoZSBjb2xvciBmcm9tIGAkY29sb3JzYCAobGlzdCBvZiBjb2xvcnMpIHRoYXQgaGFzIHRoZSBtb3N0IGNvbnRyYXN0LlxuQGZ1bmN0aW9uIGNvbG9yLXBpY2stY29udHJhc3QoJGJhc2UsICRjb2xvcnM6ICgkd2hpdGUsICRibGFjayksICR0b2xlcmFuY2U6ICRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2UpIHtcbiAgJGNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsIDEpKTtcbiAgJGJlc3Q6IG50aCgkY29sb3JzLCAxKTtcblxuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoIGxlbmd0aCgkY29sb3JzKSB7XG4gICAgJGN1cnJlbnQtY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgJGkpKTtcbiAgICBAaWYgKCRjdXJyZW50LWNvbnRyYXN0IC0gJGNvbnRyYXN0ID4gJHRvbGVyYW5jZSkge1xuICAgICAgJGNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsICRpKSk7XG4gICAgICAkYmVzdDogbnRoKCRjb2xvcnMsICRpKTtcbiAgICB9XG4gIH1cblxuICBAaWYgKCRjb250cmFzdC13YXJuaW5ncyBhbmQgJGNvbnRyYXN0IDwgMykge1xuICAgIEB3YXJuIFwiQ29udHJhc3QgcmF0aW8gb2YgI3skYmVzdH0gb24gI3skYmFzZX0gaXMgcHJldHR5IGJhZCwganVzdCAjeyRjb250cmFzdH1cIjtcbiAgfVxuXG4gIEByZXR1cm4gJGJlc3Q7XG59XG5cbi8vLyBTY2FsZXMgYSBjb2xvciB0byBiZSBkYXJrZXIgaWYgaXQncyBsaWdodCwgb3IgbGlnaHRlciBpZiBpdCdzIGRhcmsuIFVzZSB0aGlzIGZ1bmN0aW9uIHRvIHRpbnQgYSBjb2xvciBhcHByb3ByaWF0ZSB0byBpdHMgbGlnaHRuZXNzLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3IgdG8gc2NhbGUuXG4vLy8gQHBhcmFtIHtQZXJjZW50YWdlfSAkc2NhbGUgWzUlXSAtIEFtb3VudCB0byBzY2FsZSB1cCBvciBkb3duLlxuLy8vIEBwYXJhbSB7UGVyY2VudGFnZX0gJHRocmVzaG9sZCBbNDAlXSAtIFRocmVzaG9sZCBvZiBsaWdodG5lc3MgdG8gY2hlY2sgYWdhaW5zdC5cbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gQSBzY2FsZWQgY29sb3IuXG5AZnVuY3Rpb24gc21hcnQtc2NhbGUoJGNvbG9yLCAkc2NhbGU6IDUlLCAkdGhyZXNob2xkOiA0MCUpIHtcbiAgQGlmIGxpZ2h0bmVzcygkY29sb3IpID4gJHRocmVzaG9sZCB7XG4gICAgJHNjYWxlOiAtJHNjYWxlO1xuICB9XG4gIEByZXR1cm4gc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkc2NhbGUpO1xufVxuXG4vLy8gR2V0IGNvbG9yIGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG4vLy9cbi8vLyBAcGFyYW0ge2tleX0gY29sb3Iga2V5IGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IGNvbG9yIGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG5AZnVuY3Rpb24gZ2V0LWNvbG9yKCRrZXkpIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsICRrZXkpIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgJGtleSk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBlcnJvciAnZ2l2ZW4gJGtleSBpcyBub3QgYXZhaWxhYmxlIGluICRmb3VuZGF0aW9uLXBhbGV0dGUnO1xuICB9XG59XG5cbi8vLyBUcmFuc2ZlcnMgdGhlIGNvbG9ycyBpbiB0aGUgYCRmb3VuZGF0aW9uLXBhbGV0dGVgIG1hcCBpbnRvIHZhcmlhYmxlcywgc3VjaCBhcyBgJHByaW1hcnktY29sb3JgIGFuZCBgJHNlY29uZGFyeS1jb2xvcmAuIENhbGwgdGhpcyBtaXhpbiBiZWxvdyB0aGUgR2xvYmFsIHNlY3Rpb24gb2YgeW91ciBzZXR0aW5ncyBmaWxlIHRvIHByb3Blcmx5IG1pZ3JhdGUgeW91ciBjb2RlYmFzZS5cbkBtaXhpbiBhZGQtZm91bmRhdGlvbi1jb2xvcnMoKSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSB7XG4gICAgJHByaW1hcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJHByaW1hcnktY29sb3I6ICMxNzc5YmEgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KSB7XG4gICAgJHNlY29uZGFyeS1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzZWNvbmRhcnkpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRzZWNvbmRhcnktY29sb3I6ICM3Njc2NzYgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc3VjY2Vzcykge1xuICAgICRzdWNjZXNzLWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHN1Y2Nlc3MpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRzdWNjZXNzLWNvbG9yOiAjM2FkYjc2ICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHdhcm5pbmcpIHtcbiAgICAkd2FybmluZy1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCB3YXJuaW5nKSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkd2FybmluZy1jb2xvcjogI2ZmYWUwMCAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBhbGVydCkge1xuICAgICRhbGVydC1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBhbGVydCkgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJGFsZXJ0LWNvbG9yOiAjY2M0YjM3ICFnbG9iYWw7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRhYnNcbi8vLy9cblxuLy8vIERlZmF1bHQgbWFyZ2luIG9mIHRoZSB0YWIgYmFyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgYSB0YWIgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3Igb2YgdGFiIGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gQWN0aXZlIGJhY2tncm91bmQgY29sb3Igb2YgYSB0YWIgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWJhY2tncm91bmQtYWN0aXZlOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEFjdGl2ZSBmb250IGNvbG9yIG9mIHRhYiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWFjdGl2ZS1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgdGFiIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBpdGVtcyBpbiBhIE1lbnUuXG4kdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIG9mIGEgdGFiIGl0ZW0uXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFiLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb250ZW50LWJvcmRlcjogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJHRhYi1jb250ZW50LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSB0YWIgY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIGEgYDx1bD5gLlxuQG1peGluIHRhYnMtY29udGFpbmVyIChcbiAgJG1hcmdpbjogJHRhYi1tYXJnaW4sXG4gICRiYWNrZ3JvdW5kOiAkdGFiLWJhY2tncm91bmQsXG4gICRib3JkZXItY29sb3I6ICR0YWItY29udGVudC1ib3JkZXJcbikge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgbWFyZ2luOiAkbWFyZ2luO1xuICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG4vLy8gQXVnbWVudHMgYSB0YWIgY29udGFpbmVyIHRvIGhhdmUgdmVydGljYWwgdGFicy4gVXNlIHRoaXMgaW4gY29uanVuY3Rpb24gd2l0aCBgdGFicy1jb250YWluZXIoKWAuXG5AbWl4aW4gdGFicy1jb250YWluZXItdmVydGljYWwge1xuICA+IGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbm9uZTtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBsaW5rcyB3aXRoaW4gYSB0YWIgY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIHRoZSBgPGxpPmAgZWxlbWVudHMgaW5zaWRlIGEgdGFiIGNvbnRhaW5lci5cbkBtaXhpbiB0YWJzLXRpdGxlIChcbiAgJHBhZGRpbmc6ICR0YWItaXRlbS1wYWRkaW5nLFxuICAkZm9udC1zaXplOiAkdGFiLWl0ZW0tZm9udC1zaXplLFxuICAkY29sb3I6ICR0YWItY29sb3IsXG4gICRjb2xvci1hY3RpdmU6ICR0YWItYWN0aXZlLWNvbG9yLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJHRhYi1pdGVtLWJhY2tncm91bmQtaG92ZXIsXG4gICRiYWNrZ3JvdW5kLWFjdGl2ZTogJHRhYi1iYWNrZ3JvdW5kLWFjdGl2ZVxuKSB7XG4gIGZsb2F0OiAjeyRnbG9iYWwtbGVmdH07XG5cbiAgPiBhIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgICAgY29sb3I6IHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogLTE0JSk7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgICBjb2xvcjogJGNvbG9yLWFjdGl2ZTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgd3JhcHBlciB0aGF0IHN1cnJvdW5kcyBhIHRhYiBncm91cCdzIGNvbnRlbnQgcGFuZXMuXG5AbWl4aW4gdGFicy1jb250ZW50IChcbiAgJGJhY2tncm91bmQ6ICR0YWItY29udGVudC1iYWNrZ3JvdW5kLFxuICAkY29sb3I6ICR0YWItY29udGVudC1jb2xvcixcbiAgJGJvcmRlci1jb2xvcjogJHRhYi1jb250ZW50LWJvcmRlclxuKSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBjb2xvcjogJGNvbG9yO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xufVxuXG4vLy8gQXVnbWVudHMgYSB0YWIgY29udGVudCBjb250YWluZXIgdG8gaGF2ZSBhIHZlcnRpY2FsIHN0eWxlLCBieSBzaGlmdGluZyB0aGUgYm9yZGVyIGFyb3VuZC4gVXNlIHRoaXMgaW4gY29uanVuY3Rpb24gd2l0aCBgdGFicy1jb250ZW50KClgLlxuQG1peGluIHRhYnMtY29udGVudC12ZXJ0aWNhbCAoXG4gICRib3JkZXItY29sb3I6ICR0YWItY29udGVudC1ib3JkZXJcbikge1xuICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFuIGluZGl2aWR1YWwgdGFiIGNvbnRlbnQgcGFuZWwgd2l0aGluIHRoZSB0YWIgY29udGVudCBjb250YWluZXIuXG5AbWl4aW4gdGFicy1wYW5lbCAoXG4gICRwYWRkaW5nOiAkdGFiLWNvbnRlbnQtcGFkZGluZ1xuKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gICYuaXMtYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10YWJzIHtcbiAgLnRhYnMge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGFpbmVyO1xuICB9XG5cbiAgLy8gVmVydGljYWxcbiAgLnRhYnMudmVydGljYWwge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGFpbmVyLXZlcnRpY2FsO1xuICB9XG5cbiAgLy8gU2ltcGxlXG4gIC50YWJzLnNpbXBsZSB7XG4gICAgPiBsaSA+IGEge1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFByaW1hcnkgY29sb3JcbiAgLnRhYnMucHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG5cbiAgICA+IGxpID4gYSB7XG4gICAgICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkcHJpbWFyeS1jb2xvcik7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHByaW1hcnktY29sb3IpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC50YWJzLXRpdGxlIHtcbiAgICBAaW5jbHVkZSB0YWJzLXRpdGxlO1xuICB9XG5cbiAgLnRhYnMtY29udGVudCB7XG4gICAgQGluY2x1ZGUgdGFicy1jb250ZW50O1xuICB9XG5cbiAgLnRhYnMtY29udGVudC52ZXJ0aWNhbCB7XG4gICAgQGluY2x1ZGUgdGFicy1jb250ZW50LXZlcnRpY2FsO1xuICB9XG5cbiAgLnRhYnMtcGFuZWwge1xuICAgIEBpbmNsdWRlIHRhYnMtcGFuZWw7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRodW1ibmFpbFxuLy8vL1xuXG4vLy8gQm9yZGVyIGFyb3VuZCB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIEJvcmRlclxuJHRodW1ibmFpbC1ib3JkZXI6IDRweCBzb2xpZCAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIGZvciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIExlbmd0aFxuJHRodW1ibmFpbC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgdW5kZXIgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBTaGFkb3dcbiR0aHVtYm5haWwtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgkYmxhY2ssIDAuMikgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IHVuZGVyIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgU2hhZG93XG4kdGh1bWJuYWlsLXNoYWRvdy1ob3ZlcjogMCAwIDZweCAxcHggcmdiYSgkcHJpbWFyeS1jb2xvciwgMC41KSAhZGVmYXVsdDtcblxuLy8vIFRyYW5zaXRpb24gcHJvcHJ0aWVzIGZvciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiR0aHVtYm5haWwtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIE51bWJlclxuJHRodW1ibmFpbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQWRkcyB0aHVtYm5haWwgc3R5bGVzIHRvIGFuIGVsZW1lbnQuXG5AbWl4aW4gdGh1bWJuYWlsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICR0aHVtYm5haWwtbWFyZ2luLWJvdHRvbTtcblxuICBib3JkZXI6ICR0aHVtYm5haWwtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkdGh1bWJuYWlsLXJhZGl1cztcbiAgYm94LXNoYWRvdzogJHRodW1ibmFpbC1zaGFkb3c7XG5cbiAgbGluZS1oZWlnaHQ6IDA7XG59XG5cbkBtaXhpbiB0aHVtYm5haWwtbGluayB7XG4gIHRyYW5zaXRpb246ICR0aHVtYm5haWwtdHJhbnNpdGlvbjtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAkdGh1bWJuYWlsLXNoYWRvdy1ob3ZlcjtcbiAgfVxuXG4gIGltYWdlIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRodW1ibmFpbCB7XG4gIC50aHVtYm5haWwge1xuICAgIEBpbmNsdWRlIHRodW1ibmFpbDtcbiAgfVxuXG4gIGEudGh1bWJuYWlsIHtcbiAgICBAaW5jbHVkZSB0aHVtYm5haWwtbGluaztcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGl0bGUtYmFyXG4vLy8vXG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGl0bGViYXItYmFja2dyb3VuZDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGV4dCBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0aXRsZWJhci1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kdGl0bGViYXItcGFkZGluZzogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgdGV4dCBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgV2VpZ2h0XG4kdGl0bGViYXItdGV4dC1mb250LXdlaWdodDogYm9sZCAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIG1lbnUgaWNvbnMgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGl0bGViYXItaWNvbi1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgbWVudSBpY29ucyBpbnNpZGUgYSB0aXRsZSBiYXIgb24gaG92ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0aXRsZWJhci1pY29uLWNvbG9yLWhvdmVyOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGJldHdlZW4gdGhlIG1lbnUgaWNvbiBhbmQgdGV4dCBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kdGl0bGViYXItaWNvbi1zcGFjaW5nOiAwLjI1cmVtICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi10aXRsZS1iYXIge1xuICAudGl0bGUtYmFyIHtcbiAgICAvKiBwYWRkaW5nOiAkdGl0bGViYXItcGFkZGluZzsqL1xuICAgIGJhY2tncm91bmQ6ICR0aXRsZWJhci1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkdGl0bGViYXItY29sb3I7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICB9XG5cbiAgICAubWVudS1pY29uIHtcbiAgICAgIC8qbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJHRpdGxlYmFyLWljb24tc3BhY2luZztcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkdGl0bGViYXItaWNvbi1zcGFjaW5nO1xuICAgICAgbWFyZ2luOjFyZW07Ki9cbiAgICB9XG4gIH1cblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAudGl0bGUtYmFyLWxlZnQsXG4gICAgLnRpdGxlLWJhci1yaWdodCB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgIH1cblxuICAgIC50aXRsZS1iYXItcmlnaHQge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAudGl0bGUtYmFyLWxlZnQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuXG4gICAgLnRpdGxlLWJhci1yaWdodCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cblxuICAudGl0bGUtYmFyLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBmb250LXdlaWdodDogJHRpdGxlYmFyLXRleHQtZm9udC13ZWlnaHQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRvb2x0aXBcbi8vLy9cblxuLy8vIERlZmF1bHQgY3Vyc29yIG9mIHRoZSBkZWZpbmVkIHRlcm0uXG4vLy8gQHR5cGUgS2V5d29yZFxuJGhhcy10aXAtY3Vyc29yOiBoZWxwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBvZiB0aGUgZGVmaW5lZCB0ZXJtLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRoYXMtdGlwLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYm90dG9tIG9mIHRoZSBkZWZpbmVkIHRlcm0uXG4vLy8gQHR5cGUgTGlzdFxuJGhhcy10aXAtYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiB0aGUgdG9vbHRpcCBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHRoZSB0b29sdGlwIGZvbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0b29sdGlwLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgb2YgdGhlIHRvb2x0aXAgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLXBhZGRpbmc6IDAuNzVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1heCB3aWR0aCBmb3IgdG9vbHRpcHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1tYXgtd2lkdGg6IDEwcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgb2YgdGhlIHRvb2x0aXAgdGV4dC4gQnkgZGVmYXVsdCwgd2UgcmVjb21tZW5kIGEgc21hbGxlciBmb250IHNpemUgdGhhbiB0aGUgYm9keSBjb3B5LlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwaXAgd2lkdGggZm9yIHRvb2x0aXBzLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtcGlwLXdpZHRoOiAwLjc1cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwaXAgaGVpZ2h0IGZvciB0b29sdGlwcy4gVGhpcyBpcyBoZWxwZnVsIGZvciBjYWxjdWxhdGluZyB0aGUgZGlzdGFuY2Ugb2YgdGhlIHRvb2x0aXAgZnJvbSB0aGUgdG9vbHRpcCB3b3JkLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtcGlwLWhlaWdodDogJHRvb2x0aXAtcGlwLXdpZHRoICogMC44NjYgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3IgdG9vbHRpcHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG5AbWl4aW4gaGFzLXRpcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gIGJvcmRlci1ib3R0b206ICRoYXMtdGlwLWJvcmRlci1ib3R0b207XG4gIGZvbnQtd2VpZ2h0OiAkaGFzLXRpcC1mb250LXdlaWdodDtcbiAgY3Vyc29yOiAkaGFzLXRpcC1jdXJzb3I7XG59XG5cbkBtaXhpbiB0b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoMTAwJSArICN7JHRvb2x0aXAtcGlwLWhlaWdodH0pO1xuICB6LWluZGV4OiAxMjAwO1xuXG4gIG1heC13aWR0aDogJHRvb2x0aXAtbWF4LXdpZHRoO1xuICBwYWRkaW5nOiAkdG9vbHRpcC1wYWRkaW5nO1xuXG4gIGJvcmRlci1yYWRpdXM6ICR0b29sdGlwLXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvcjtcbiAgZm9udC1zaXplOiAkdG9vbHRpcC1mb250LXNpemU7XG4gIGNvbG9yOiAkdG9vbHRpcC1jb2xvcjtcblxuICAmOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuXG4gICYuYm90dG9tIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b29sdGlwLXBpcC13aWR0aCwgJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvciwgdXApO1xuICAgICAgYm90dG9tOiAxMDAlO1xuICAgIH1cblxuICAgICYuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIH1cbiAgfVxuXG4gICYudG9wIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b29sdGlwLXBpcC13aWR0aCwgJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvciwgZG93bik7XG4gICAgICB0b3A6IDEwMCU7XG4gICAgICBib3R0b206IGF1dG87XG4gICAgfVxuXG4gICAgJi5hbGlnbi1jZW50ZXI6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgfVxuICB9XG5cbiAgJi5sZWZ0IHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b29sdGlwLXBpcC13aWR0aCwgJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvciwgcmlnaHQpO1xuICAgICAgbGVmdDogMTAwJTtcbiAgICB9XG5cbiAgICAmLmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIH1cbiAgfVxuXG4gICYucmlnaHQge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHRvb2x0aXAtcGlwLXdpZHRoLCAkdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yLCBsZWZ0KTtcbiAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG5cbiAgICAmLmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIH1cbiAgfVxuXG4gICYuYWxpZ24tdG9wOjpiZWZvcmUge1xuICAgIGJvdHRvbTogYXV0bztcbiAgICB0b3A6IDEwJTtcbiAgfVxuXG4gICYuYWxpZ24tYm90dG9tOjpiZWZvcmUge1xuICAgIGJvdHRvbTogMTAlO1xuICAgIHRvcDogYXV0bztcbiAgfVxuXG4gICYuYWxpZ24tbGVmdDo6YmVmb3JlIHtcbiAgICBsZWZ0OiAxMCU7XG4gICAgcmlnaHQ6IGF1dG87XG4gIH1cblxuICAmLmFsaWduLXJpZ2h0OjpiZWZvcmUge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDEwJTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10b29sdGlwIHtcbiAgLmhhcy10aXAge1xuICAgIEBpbmNsdWRlIGhhcy10aXA7XG4gIH1cblxuICAudG9vbHRpcCB7XG4gICAgQGluY2x1ZGUgdG9vbHRpcDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdG9wLWJhclxuLy8vL1xuXG4vLy8gUGFkZGluZyBmb3IgdGhlIHRvcCBiYXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9wYmFyLXBhZGRpbmc6IDByZW0gIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgdG9wIGJhci4gVGhpcyBjb2xvciBhbHNvIGNhc2NhZGVzIHRvIG1lbnVzIHdpdGhpbiB0aGUgdG9wIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRvcGJhci1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIHN1Ym1lbnVzIHdpdGhpbiB0aGUgdG9wIGJhci4gVXNlZnVsbCBpZiAkdG9wYmFyLWJhY2tncm91bmQgaXMgdHJhbnNwYXJlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kOiAkdG9wYmFyLWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGZvciB0aGUgdG9wIGJhciB0aXRsZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b3BiYXItdGl0bGUtc3BhY2luZzogMHJlbSAhZGVmYXVsdDtcblxuLy8vIE1heGltdW0gd2lkdGggb2YgYDxpbnB1dD5gIGVsZW1lbnRzIGluc2lkZSB0aGUgdG9wIGJhci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b3BiYXItaW5wdXQtd2lkdGg6IDIwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQnJlYWtwb2ludCBhdCB3aGljaCB0b3AgYmFyIHN3aXRjaGVzIGZyb20gbW9iaWxlIHRvIGRlc2t0b3Agdmlldy5cbi8vLyBAdHlwZSBCcmVha3BvaW50XG4kdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludDogbWVkaXVtICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgdG9wIGJhciBjb250YWluZXIuXG5AbWl4aW4gdG9wLWJhci1jb250YWluZXIge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1heC13aWR0aDpub25lO1xuICAgIG1hcmdpbjowIGF1dG87XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICB9XG5cbiAgcGFkZGluZzogJHRvcGJhci1wYWRkaW5nO1xuXG4gICYsXG4gIHVsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9wYmFyLWJhY2tncm91bmQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgfVxuXG4gIC8vIENoZWNrIGlmICR0b3BiYXItYmFja2dyb3VuZCBpcyBkaWZmZXJudCBmcm9tICR0b3BiYXItYmFja2dyb3VuZC1zdWJtZW51XG4gIEBpZiAoJHRvcGJhci1iYWNrZ3JvdW5kICE9ICR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kKSB7XG4gICAgdWwgdWwge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRvcGJhci1zdWJtZW51LWJhY2tncm91bmQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzdHJhaW4gd2lkdGggb2YgaW5wdXRzIGJ5IGRlZmF1bHQgdG8gbWFrZSB0aGVtIGVhc2llciB0byBhcnJhbmdlXG4gIGlucHV0IHtcbiAgICBtYXgtd2lkdGg6ICR0b3BiYXItaW5wdXQtd2lkdGg7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDFyZW07XG4gIH1cblxuICAvLyBUaGUgYWJvdmUgc3R5bGVzIHNob3VsZG4ndCBhcHBseSB0byBpbnB1dCBncm91cCBmaWVsZHNcbiAgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgfVxuXG4gIGlucHV0LmJ1dHRvbiB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi8vLyBNYWtlcyBzZWN0aW9ucyBvZiBhIHRvcCBiYXIgc3RhY2sgb24gdG9wIG9mIGVhY2ggb3RoZXIuXG5AbWl4aW4gdG9wLWJhci1zdGFja2VkIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgLy8gU3ViLXNlY3Rpb25zXG4gICAgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIFN1Yi1zZWN0aW9uc1xuICAgIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG59XG5cbi8vLyBVbmRvZXMgdGhlIENTUyBhcHBsaWVkIGJ5IHRoZSBgdG9wLWJhci1zdGFja2VkKClgIG1peGluLlxuQG1peGluIHRvcC1iYXItdW5zdGFjayB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuXG4gICAgLnRvcC1iYXItbGVmdCB7XG4gICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdG9wLWJhciB7XG4gIC8vIFRvcCBiYXIgY29udGFpbmVyXG4gIC50b3AtYmFyIHtcbiAgICBAaW5jbHVkZSB0b3AtYmFyLWNvbnRhaW5lcjtcblxuICAgIC8vIFN0YWNrIG9uIHNtYWxsIHNjcmVlbnMgYnkgZGVmYXVsdFxuICAgIEBpbmNsdWRlIHRvcC1iYXItc3RhY2tlZDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRvcGJhci11bnN0YWNrLWJyZWFrcG9pbnQpIHtcbiAgICAgIEBpbmNsdWRlIHRvcC1iYXItdW5zdGFjaztcbiAgICB9XG5cbiAgICAvLyBHZW5lcmF0ZSBjbGFzc2VzIGZvciBzdGFja2luZyBvbiBlYWNoIHNjcmVlbiBzaXplIChkZWZpbmVkIGluICRicmVha3BvaW50LWNsYXNzZXMpXG4gICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAmLnN0YWNrZWQtZm9yLSN7JHNpemV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIGRvd24pIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRvcC1iYXItc3RhY2tlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBTdWItc2VjdGlvbnNcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgLnRvcC1iYXItdGl0bGUge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBwYWRkaW5nOiAkdG9wYmFyLXRpdGxlLXNwYWNpbmc7XG4gICAgfVxuXG4gICAgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC50b3AtYmFyLXRpdGxlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZzogJHRvcGJhci10aXRsZS1zcGFjaW5nO1xuXG4gICAgICAubWVudS1pY29uIHtcbiAgICAgICAgYm90dG9tOiAycHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRvcC1iYXItbGVmdCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG5cbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3IoJHNpemUpIHtcbiAgJHNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG4gIC8vIE1heCB2YWx1ZSBpcyAwLjJweCB1bmRlciB0aGUgbmV4dCBicmVha3BvaW50ICgwLjAyIC8gMTYgPSAwLjAwMTI1KS5cbiAgLy8gVXNlIGEgcHJlY2lzaW9uIHVuZGVyIDFweCB0byBzdXBwb3J0IGJyb3dzZXIgem9vbSwgYnV0IG5vdCB0byBsb3cgdG8gYXZvaWQgcm91bmRpbmcuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMTMxM1xuICAkc2l6ZTogLXpmLWJwLXRvLWVtKCRzaXplKSAtIC4wMDEyNTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIGRvd24pIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgd2l0aGluIGEgY2VydGFpbiBicmVha3BvaW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3Itb25seSgkc2l6ZSkge1xuICAkbG93ZXItYm91bmQtc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgJHVwcGVyLWJvdW5kLXNpemU6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRzaXplKTtcblxuICAvLyBtb3JlIG9mdGVuIHRoYW4gbm90IHRoaXMgd2lsbCBiZSBjb3JyZWN0LCBqdXN0IG9uZSB0aW1lIHJvdW5kIHRoZSBsb29wIGl0IHdvbid0IHNvIHNldCBpbiBzY29wZSBoZXJlXG4gICRsb3dlci1ib3VuZDogLXpmLWJwLXRvLWVtKCRsb3dlci1ib3VuZC1zaXplKSAtIC4wMDEyNTtcbiAgLy8gdGVzdCBhY3R1YWwgbG93ZXItYm91bmQtc2l6ZSwgaWYgMCBzZXQgaXQgdG8gMGVtXG4gIEBpZiBzdHJpcC11bml0KCRsb3dlci1ib3VuZC1zaXplKSA9PSAwIHtcbiAgICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSk7XG4gIH1cblxuICBAaWYgJHVwcGVyLWJvdW5kLXNpemUgPT0gbnVsbCB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAkdXBwZXItYm91bmQ6IC16Zi1icC10by1lbSgkdXBwZXItYm91bmQtc2l6ZSk7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR1cHBlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3IoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yLW9ubHkoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBvbmx5KSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcyB7XG4gIC8vIEJhc2ljIGhpZGluZyBjbGFzc2VzXG4gIC5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaW52aXNpYmxlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIHZpc2liaWxpdHkgY2xhc3Nlc1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgLmhpZGUtZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgaGlkZS1mb3IoJHNpemUpO1xuICAgICAgfVxuXG4gICAgICAuc2hvdy1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBzaG93LWZvcigkc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhpZGUtZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgaGlkZS1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgc2hvdy1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gU2NyZWVuIHJlYWRlciB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgLy8gTmVlZCBhIFwiaGlkZS1mb3Itc3JcIiBjbGFzcz8gQWRkIGFyaWEtaGlkZGVuPSd0cnVlJyB0byB0aGUgZWxlbWVudFxuICAuc2hvdy1mb3Itc3IsXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxuXG4gIC8vIE9ubHkgZGlzcGxheSB0aGUgZWxlbWVudCB3aGVuIGl0J3MgZm9jdXNlZFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZS1vZmY7XG4gICAgfVxuICB9XG5cbiAgLy8gTGFuZHNjYXBlIGFuZCBwb3J0cmFpdCB2aXNpYmlsaXR5XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIEZsZXhib3ggVXRpbGl0aWVzXG4vLy8vXG4vL1xuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHRoZSBjb3VudCBvZiBzb3VyY2Ugb3JkZXJpbmdgXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmxleC1zb3VyY2Utb3JkZXJpbmctY291bnQ6IDYgIWRlZmF1bHQ7XG5cbi8vLyBRdWlja2x5IGRpc2FibGUvZW5hYmxlIFJlc3BvbnNpdmUgYnJlYWtwb2ludHMgZm9yIFZhbmlsbGEgRmxleCBIZWxwZXJzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRmbGV4Ym94LXJlc3BvbnNpdmUtYnJlYWtwb2ludHM6IHRydWUgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmbGV4LWhlbHBlcnMge1xuICAuZmxleC1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIGZsZXg7XG4gIH1cblxuICAuZmxleC1jaGlsZC1hdXRvIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLWdyb3cge1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgfVxuXG4gIEBlYWNoICRkaXIsICRwcm9wIGluICQtemYtZmxleC1kaXJlY3Rpb24ge1xuICAgIC5mbGV4LWRpci0jeyRkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtZGlyZWN0aW9uKCRwcm9wKTtcbiAgICB9XG4gIH1cblxuICBAaWYgKCRmbGV4Ym94LXJlc3BvbnNpdmUtYnJlYWtwb2ludHMpIHtcbiAgICAvLyBMb29wIHRocm91Z2ggUmVzcG9uc2l2ZSBCcmVha3BvaW50c1xuICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNvbnRhaW5lciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNoaWxkLWF1dG8ge1xuICAgICAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgICAgICAgICBmbGV4OiAxIDAgYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jaGlsZC1zaHJpbmsge1xuICAgICAgICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGVhY2ggJGRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWRpcmVjdGlvbiB7XG4gICAgICAgICAgICAuI3skc2l6ZX0tZmxleC1kaXItI3skZGlyfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgtZGlyZWN0aW9uKCRwcm9wKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZmxleC1jbGFzc2VzIHtcbiAgLy8gSG9yaXpvbnRhbCBhbGlnbm1lbnQgdXNpbmcganVzdGlmeS1jb250ZW50XG4gIEBlYWNoICRoZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtanVzdGlmeSB7XG4gICAgLmFsaWduLSN7JGhkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHg6ICRoZGlyKTtcbiAgICB9XG4gIH1cbiAgXG4gIC8vIEhvcml6b250YWwgYWxpZ25tZW50IFNwZWNpZmljYWxseSBmb3IgVmVydGljYWwgTWVudVxuICBAZWFjaCAkaGRpciwgJHByb3AgaW4gbWFwLXJlbW92ZSgkLXpmLWZsZXgtanVzdGlmeSwgJ2p1c3RpZnknLCAnc3BhY2VkJykge1xuICAgIC5hbGlnbi0jeyRoZGlyfSB7XG4gICAgICAmLnZlcnRpY2FsIHtcbiAgICAgICAgJi5tZW51ID4gbGkgPiBhIHtcbiAgICAgICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiAkaGRpcik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBWZXJ0aWNhbCBhbGlnbm1lbnQgdXNpbmcgYWxpZ24taXRlbXMgYW5kIGFsaWduLXNlbGZcbiAgQGVhY2ggJHZkaXIsICRwcm9wIGluICQtemYtZmxleC1hbGlnbiB7XG4gICAgLmFsaWduLSN7JHZkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHk6ICR2ZGlyKTtcbiAgICB9XG5cbiAgICAuYWxpZ24tc2VsZi0jeyR2ZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduLXNlbGYoJHk6ICR2ZGlyKTtcbiAgICB9XG4gIH1cblxuICAvLyBDZW50cmFsIGFsaWdubWVudCBvZiBjb250ZW50XG4gIC5hbGlnbi1jZW50ZXItbWlkZGxlIHtcbiAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiBjZW50ZXIsICR5OiBtaWRkbGUpO1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuXG4gIC8vIFNvdXJjZSBvcmRlcmluZ1xuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRmbGV4LXNvdXJjZS1vcmRlcmluZy1jb3VudCB7XG4gICAgICAuI3skLXpmLXNpemV9LW9yZGVyLSN7JGl9IHtcbiAgICAgICAgQGluY2x1ZGUgZmxleC1vcmRlcigkaSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVmFuaWxsYSBGbGV4Ym94IEhlbHBlcnNcbiAgQGluY2x1ZGUgZmxleC1oZWxwZXJzO1xufVxuIiwiQGZ1bmN0aW9uIC16Zi1mbGV4LWp1c3RpZnkoJHRleHQtZGlyZWN0aW9uKXtcbiAgJC16Zi1mbGV4LWp1c3RpZnk6IChcbiAgICAnbGVmdCc6IGlmKCR0ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGZsZXgtZW5kLCBmbGV4LXN0YXJ0KSxcbiAgICAncmlnaHQnOiBpZigkdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBmbGV4LXN0YXJ0LCBmbGV4LWVuZCksXG4gICAgJ2NlbnRlcic6IGNlbnRlcixcbiAgICAnanVzdGlmeSc6IHNwYWNlLWJldHdlZW4sXG4gICAgJ3NwYWNlZCc6IHNwYWNlLWFyb3VuZCxcbiAgKTtcblxuICBAcmV0dXJuICQtemYtZmxleC1qdXN0aWZ5O1xufVxuXG5cbiQtemYtZmxleC1hbGlnbjogKFxuICAndG9wJzogZmxleC1zdGFydCxcbiAgJ2JvdHRvbSc6IGZsZXgtZW5kLFxuICAnbWlkZGxlJzogY2VudGVyLFxuICAnc3RyZXRjaCc6IHN0cmV0Y2gsXG4pO1xuXG4kLXpmLWZsZXgtZGlyZWN0aW9uOiAoXG4gICdyb3cnOiByb3csXG4gICdyb3ctcmV2ZXJzZSc6IHJvdy1yZXZlcnNlLFxuICAnY29sdW1uJzogY29sdW1uLFxuICAnY29sdW1uLXJldmVyc2UnOiBjb2x1bW4tcmV2ZXJzZSxcbik7XG5cbi8vLyBFbmFibGVzIGZsZXhib3ggYnkgYWRkaW5nIGBkaXNwbGF5OiBmbGV4YCB0byB0aGUgZWxlbWVudC5cbkBtaXhpbiBmbGV4IHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLy8vIEhvcml6b250YWxseSBvciB2ZXJ0aWNhbGx5IGFsaWducyB0aGUgaXRlbXMgd2l0aGluIGEgZmxleCBjb250YWluZXIuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR4IFtudWxsXSAtIEhvcml6b250YWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGBsZWZ0YCwgYHJpZ2h0YCwgYGNlbnRlcmAsIGBqdXN0aWZ5YCwgb3IgYHNwYWNlZGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCBob3Jpem9udGFsIGFsaWdubWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR5IFtudWxsXSAtIFZlcnRpY2FsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgdG9wYCwgYGJvdHRvbWAsIGBtaWRkbGVgLCBvciBgc3RyZXRjaGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCB2ZXJ0aWNhbCBhbGlnbm1lbnQuXG5AbWl4aW4gZmxleC1hbGlnbigkeDogbnVsbCwgJHk6IG51bGwpIHtcbiAgQGlmICR4IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWp1c3RpZnksICR4KSB7XG4gICAgICAkeDogbWFwLWdldCgkLXpmLWZsZXgtanVzdGlmeSwgJHgpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLXJvdy1hbGlnbigpOiAjeyR4fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgaG9yaXpvbnRhbCBhbGlnbm1lbnQuIFVzZSBsZWZ0LCByaWdodCwgY2VudGVyLCBqdXN0aWZ5LCBvciBzcGFjZWQuJztcbiAgICB9XG4gIH1cblxuICBAaWYgJHkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtYWxpZ24sICR5KSB7XG4gICAgICAkeTogbWFwLWdldCgkLXpmLWZsZXgtYWxpZ24sICR5KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1yb3ctYWxpZ24oKTogI3skeX0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIHZlcnRpY2FsIGFsaWdubWVudC4gVXNlIHRvcCwgYm90dG9tLCBtaWRkbGUsIG9yIHN0cmV0Y2guJztcbiAgICB9XG4gIH1cblxuICBqdXN0aWZ5LWNvbnRlbnQ6ICR4O1xuICBhbGlnbi1pdGVtczogJHk7XG59XG5cbi8vLyBWZXJ0aWNhbGx5IGFsaWduIGEgc2luZ2xlIGNvbHVtbiB3aXRoaW4gYSBmbGV4IHJvdy4gQXBwbHkgdGhpcyBtaXhpbiB0byBhIGZsZXggY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeSBbbnVsbF0gLSBWZXJ0aWNhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYHRvcGAsIGBib3R0b21gLCBgbWlkZGxlYCwgb3IgYHN0cmV0Y2hgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgdmVydGljYWwgYWxpZ25tZW50LlxuQG1peGluIGZsZXgtYWxpZ24tc2VsZigkeTogbnVsbCkge1xuICBAaWYgJHkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtYWxpZ24sICR5KSB7XG4gICAgICAkeTogbWFwLWdldCgkLXpmLWZsZXgtYWxpZ24sICR5KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1jb2x1bW4tYWxpZ24oKTogI3skeX0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIGFsaWdubWVudC4gVXNlIHRvcCwgYm90dG9tLCBtaWRkbGUsIG9yIHN0cmV0Y2guJztcbiAgICB9XG4gIH1cblxuICBhbGlnbi1zZWxmOiAkeTtcbn1cblxuLy8vIENoYW5nZXMgdGhlIHNvdXJjZSBvcmRlciBvZiBhIGZsZXggY2hpbGQuIENoaWxkcmVuIHdpdGggbG93ZXIgbnVtYmVycyBhcHBlYXIgZmlyc3QgaW4gdGhlIGxheW91dC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG9yZGVyIFswXSAtIE9yZGVyIG51bWJlciB0byBhcHBseS5cbkBtaXhpbiBmbGV4LW9yZGVyKCRvcmRlcjogMCkge1xuICBvcmRlcjogJG9yZGVyO1xufVxuXG4vLy8gQ2hhbmdlIGZsZXgtZGlyZWN0aW9uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyZWN0aW9uIFtyb3ddIC0gRmxleCBkaXJlY3Rpb24gdG8gdXNlLiBDYW4gYmVcbi8vLyAgIC0gcm93IChkZWZhdWx0KTogc2FtZSBhcyB0ZXh0IGRpcmVjdGlvblxuLy8vICAgLSByb3ctcmV2ZXJzZTogb3Bwb3NpdGUgdG8gdGV4dCBkaXJlY3Rpb25cbi8vLyAgIC0gY29sdW1uOiBzYW1lIGFzIHJvdyBidXQgdG9wIHRvIGJvdHRvbVxuLy8vICAgLSBjb2x1bW4tcmV2ZXJzZTogc2FtZSBhcyByb3ctcmV2ZXJzZSB0b3AgdG8gYm90dG9tXG5AbWl4aW4gZmxleC1kaXJlY3Rpb24oJGRpcmVjdGlvbjogcm93KSB7XG4gIGZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xufVxuIiwiLy8vIEFwcGxpZXMgYmFzaWMgdHJhbnNpdGlvbiBzZXR0aW5ncyB0byBhbiBlbGVtZW50LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIHRyYW5zaXRpb24tYmFzaWNzKFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gIEBpbmNsdWRlIC1tb3Rpb24tdWktZGVmYXVsdHM7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmc7XG4gIHRyYW5zaXRpb24tZGVsYXk6ICRkZWxheTtcbn1cblxuLy8vIFdyYXBzIHRoZSBjb250ZW50IGluIHRoZSBzZXR1cCBjbGFzcyBmb3IgYSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciAtIFN0YXRlIHRvIHNldHVwIGZvciB0cmFuc2l0aW9uLlxuQG1peGluIHRyYW5zaXRpb24tc3RhcnQoJGRpcikge1xuICAkc2VsZWN0b3I6IC1tdWktYnVpbGQtc2VsZWN0b3IobWFwLWdldCgkbW90aW9uLXVpLXN0YXRlcywgJGRpcikpO1xuXG4gIEBhdC1yb290IHtcbiAgICAjeyRzZWxlY3Rvcn0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBXcmFwcyB0aGUgY29udGVudCBpbiB0aGUgYWN0aXZlIGNsYXNzIGZvciBhIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyIC0gU3RhdGUgdG8gYWN0aXZhdGUgYSB0cmFuc2l0aW9uIG9uLlxuQG1peGluIHRyYW5zaXRpb24tZW5kKCRkaXIpIHtcbiAgJHNlbGVjdG9yOiAtbXVpLWJ1aWxkLXNlbGVjdG9yKG1hcC1nZXQoJG1vdGlvbi11aS1zdGF0ZXMsICRkaXIpLCB0cnVlKTtcblxuICBAYXQtcm9vdCB7XG4gICAgI3skc2VsZWN0b3J9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3RhZ2dlciBhbmltYXRpb24sIHdoaWNoIGNhbiBiZSB1c2VkIHdpdGggQW5ndWxhcidzIGBuZy1yZXBlYXRgLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheS1hbW91bnQgLSBBbW91bnQgb2YgdGltZSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyB0byBhZGQgYmV0d2VlbiBlYWNoIGl0ZW0ncyBhbmltYXRpb24uXG5AbWl4aW4gc3RhZ2dlcigkZGVsYXktYW1vdW50KSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6ICRkZWxheS1hbW91bnQ7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDA7IC8vIFByZXZlbnQgYWNjaWRlbnRhbCBDU1MgaW5oZXJpdGFuY2Vcbn1cbiIsIi8vIHNjc3MtbGludDpkaXNhYmxlIEltcG9ydGFudFJ1bGUsIFNwYWNlQWZ0ZXJDb21tYSwgU2luZ2xlTGluZVBlclByb3BlcnR5XG5cbkBtaXhpbiAtbW90aW9uLXVpLWRlZmF1bHRzIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogbWFwLWdldCgkbW90aW9uLXVpLXNwZWVkcywgZGVmYXVsdCk7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBtYXAtZ2V0KCRtb3Rpb24tdWktZWFzaW5ncywgZGVmYXVsdCk7XG59XG5cbi8vIFRyYW5zaXRpb25zXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuQG1peGluIG1vdGlvbi11aS10cmFuc2l0aW9ucyB7XG4gIC8vIFNsaWRlXG4gIC5zbGlkZS1pbi1kb3duICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgZG93bik7IH1cbiAgLnNsaWRlLWluLWxlZnQgICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICByaWdodCk7IH1cbiAgLnNsaWRlLWluLXVwICAgICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICB1cCk7IH1cbiAgLnNsaWRlLWluLXJpZ2h0ICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICBsZWZ0KTsgfVxuICAuc2xpZGUtb3V0LWRvd24gICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIGRvd24pOyB9XG4gIC5zbGlkZS1vdXQtcmlnaHQgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgcmlnaHQpOyB9XG4gIC5zbGlkZS1vdXQtdXAgICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgdXApOyB9XG4gIC5zbGlkZS1vdXQtbGVmdCAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgbGVmdCk7IH1cblxuICAvLyBGYWRlXG4gIC5mYWRlLWluICB7IEBpbmNsdWRlIG11aS1mYWRlKGluLCAgMCwgMSk7IH1cbiAgLmZhZGUtb3V0IHsgQGluY2x1ZGUgbXVpLWZhZGUob3V0LCAxLCAwKTsgfVxuXG4gIC8vIEhpbmdlXG4gIC5oaW5nZS1pbi1mcm9tLXRvcCAgICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgdG9wKTsgfVxuICAuaGluZ2UtaW4tZnJvbS1yaWdodCAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIHJpZ2h0KTsgfVxuICAuaGluZ2UtaW4tZnJvbS1ib3R0b20gICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIGJvdHRvbSk7IH1cbiAgLmhpbmdlLWluLWZyb20tbGVmdCAgICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICBsZWZ0KTsgfVxuICAuaGluZ2UtaW4tZnJvbS1taWRkbGUteCAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICB0b3AsICAgY2VudGVyKTsgfVxuICAuaGluZ2UtaW4tZnJvbS1taWRkbGUteSAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICByaWdodCwgY2VudGVyKTsgfVxuICAuaGluZ2Utb3V0LWZyb20tdG9wICAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHRvcCk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLXJpZ2h0ICAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCByaWdodCk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLWJvdHRvbSAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCBib3R0b20pOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1sZWZ0ICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgbGVmdCk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLW1pZGRsZS14IHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgdG9wLCAgIGNlbnRlcik7IH1cbiAgLmhpbmdlLW91dC1mcm9tLW1pZGRsZS15IHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgcmlnaHQsIGNlbnRlcik7IH1cblxuICAvLyBTY2FsZVxuICAuc2NhbGUtaW4tdXAgICAgeyBAaW5jbHVkZSBtdWktem9vbShpbiwgIDAuNSwgMSk7IH1cbiAgLnNjYWxlLWluLWRvd24gIHsgQGluY2x1ZGUgbXVpLXpvb20oaW4sICAxLjUsIDEpOyB9XG4gIC5zY2FsZS1vdXQtdXAgICB7IEBpbmNsdWRlIG11aS16b29tKG91dCwgMSwgMS41KTsgfVxuICAuc2NhbGUtb3V0LWRvd24geyBAaW5jbHVkZSBtdWktem9vbShvdXQsIDEsIDAuNSk7IH1cblxuICAvLyBTcGluXG4gIC5zcGluLWluICAgICB7IEBpbmNsdWRlIG11aS1zcGluKGluLCAgY3cpOyB9XG4gIC5zcGluLW91dCAgICB7IEBpbmNsdWRlIG11aS1zcGluKG91dCwgY3cpOyB9XG4gIC5zcGluLWluLWNjdyAgeyBAaW5jbHVkZSBtdWktc3BpbihpbiwgIGNjdyk7IH1cbiAgLnNwaW4tb3V0LWNjdyB7IEBpbmNsdWRlIG11aS1zcGluKG91dCwgY2N3KTsgfVxuXG4gIC8vIFRyYW5zaXRpb24gTW9kaWZpZXJzXG4gIC8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLXNwZWVkcyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtb3Rpb24tdWktZWFzaW5ncyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWRlbGF5cyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9LWRlbGF5IHsgdHJhbnNpdGlvbi1kZWxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQW5pbWF0aW9uc1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbkBtaXhpbiBtb3Rpb24tdWktYW5pbWF0aW9ucyB7XG4gIC5zaGFrZSAgICB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24oc2hha2UpOyB9XG4gIC5zcGluLWN3ICB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24oc3Bpbik7IH1cbiAgLnNwaW4tY2N3IHsgQGluY2x1ZGUgbXVpLWFuaW1hdGlvbihzcGluKGNjdykpOyB9XG4gIC53aWdnbGUgICB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24od2lnZ2xlKTsgfVxuXG4gIC5zaGFrZSxcbiAgLnNwaW4tY3csXG4gIC5zcGluLWNjdyxcbiAgLndpZ2dsZSB7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiBtYXAtZ2V0KCRtb3Rpb24tdWktc3BlZWRzLCBkZWZhdWx0KTtcbiAgfVxuXG4gIC8vIEFuaW1hdGlvbiBNb2RpZmllcnNcbiAgLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbiAgLmluZmluaXRlIHsgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7IH1cblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtb3Rpb24tdWktc3BlZWRzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0geyBhbmltYXRpb24tZHVyYXRpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWVhc2luZ3Mge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWRlbGF5cyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9LWRlbGF5IHsgYW5pbWF0aW9uLWRlbGF5OiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8vIEZvcm1hdCBmb3IgQ1NTIGNsYXNzZXMgY3JlYXRlZCB3aXRoIE1vdGlvbiBVSS5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAcHJvcCB7Qm9vbGVhbn0gYXBwZW5kIFt0cnVlXSAtIERlZmluZXMgaWYgc2VsZWN0b3JzIGFyZSBjaGFpbmVkIHRvIHRoZSBzZWxlY3RvciAoYC5jbGFzcy5lbnRlcmApLCBvciBhcHBlbmRlZCBhcyBhIG5ldyBjbGFzcyAoYC5jbGFzcy1lbnRlcmApLlxuLy8vIEBwcm9wIHtTdHJpbmd9IHByZWZpeCBbJ211aS0nXSAtIFByZWZpeCB0byBhZGQgYmVmb3JlIHRoZSBzdGF0ZSBvZiBhIGNsYXNzLiBFbnRlciBhbiBlbXB0eSBzdHJpbmcgdG8gdXNlIG5vIHByZWZpeC5cbi8vLyBAcHJvcCB7U3RyaW5nfSBwcmVmaXggWyctYWN0aXZlJ10gLSBTdWZmaXggdG8gYWRkIHRvIHRoZSBhY3RpdmUgc3RhdGUgY2xhc3MuXG4kbW90aW9uLXVpLWNsYXNzZXM6IChcbiAgY2hhaW46IHRydWUsXG4gIHByZWZpeDogJ211aS0nLFxuICBhY3RpdmU6ICctYWN0aXZlJyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBTdGF0ZSBuYW1lcyB0byByZWZlcmVuY2Ugd2hlbiB3cml0aW5nIG1vdGlvbiBjbGFzc2VzLiBUbyB1c2UgbXVsdGlwbGUgY2xhc3MgbmFtZXMgZm9yIG9uZSBzdGF0ZSwgZW50ZXIgYSBsaXN0IG9mIHN0cmluZ3MgaW5zdGVhZCBvZiBvbmUgc3RyaW5nLlxuLy8vIEB0eXBlIE1hcFxuJG1vdGlvbi11aS1zdGF0ZXM6IChcbiAgaW46ICdlbnRlcicsXG4gIG91dDogJ2xlYXZlJyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHNwZWVkIHRoYXQgdHJhbnNpdGlvbnMgYW5kIGFuaW1hdGlvbnMgcGxheSBhdCwgYWxvbmcgd2l0aCB2YWx1ZXMgZm9yIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRoZSBzcGVlZC5cbi8vLyBAdHlwZSBNYXBcbiRtb3Rpb24tdWktc3BlZWRzOiAoXG4gIGRlZmF1bHQ6IDUwMG1zLFxuICBzbG93OiA3NTBtcyxcbiAgZmFzdDogMjUwbXMsXG4pICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBkZWxheSB0byBhZGQgYmVmb3JlIG1vdGlvbiwgYWxvbmcgd2l0aCB2YWx1ZXMgZm9yIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRoZSBkZWxheS5cbi8vLyBAdHlwZSBNYXBcbiRtb3Rpb24tdWktZGVsYXlzOiAoXG4gIGRlZmF1bHQ6IDAsXG4gIHNob3J0OiAzMDBtcyxcbiAgbG9uZzogNzAwbXMsXG4pICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBlYXNpbmcgZm9yIHRyYW5zaXRpb25zIGFuZCBhbmltYXRpb25zLCBhbG9uZyB3aXRoIHZhbHVlcyBmb3IgbW9kaWZpZXIgY2xhc3NlcyB0byBjaGFuZ2UgdGhlIGVhc2luZy5cbi8vLyBAdHlwZSBNYXBcbiRtb3Rpb24tdWktZWFzaW5nczogKFxuICBkZWZhdWx0OiBsaW5lYXIsXG4gIGxpbmVhcjogbGluZWFyLFxuICBlYXNlOiBlYXNlLFxuICBlYXNlLWluOiBlYXNlLWluLFxuICBlYXNlLW91dDogZWFzZS1vdXQsXG4gIGVhc2UtaW4tb3V0OiBlYXNlLWluLW91dCxcbiAgYm91bmNlLWluOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjI0LCAxLjI0NSksXG4gIGJvdW5jZS1vdXQ6IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuNTE1LCAwLjg0NSksXG4gIGJvdW5jZS1pbi1vdXQ6IGN1YmljLWJlemllcigwLjc2LCAtMC4yNDUsIDAuMjQsIDEuMjQ1KSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBNaXNjZWxsYW5lb3VzIHNldHRpbmdzIHJlbGF0ZWQgdG8gTW90aW9uIFVJLlxuLy8vIEB0eXBlIE1hcFxuLy8vIEBwcm9wIHtCb29sZWFufSBzbGlkZS1hbmQtZmFkZSBbZmFsc2VdIC0gRGVmaW5lcyBpZiBzbGlkZSBtb3Rpb25zIHNob3VsZCBhbHNvIGZhZGUgaW4vb3V0LlxuLy8vIEBwcm9wIHtCb29sZWFufSBzbGlkZS1hbmQtZmFkZSBbdHJ1ZV0gLSBEZWZpbmVzIGlmIGhpbmdlIG1vdGlvbnMgc2hvdWxkIGFsc28gZmFkZSBpbi9vdXQuXG4vLy8gQHByb3Age0Jvb2xlYW59IHNsaWRlLWFuZC1mYWRlIFt0cnVlXSAtIERlZmluZXMgaWYgc2NhbGUgbW90aW9ucyBzaG91bGQgYWxzbyBmYWRlIGluL291dC5cbi8vLyBAcHJvcCB7Qm9vbGVhbn0gc2xpZGUtYW5kLWZhZGUgW3RydWVdIC0gRGVmaW5lcyBpZiBzcGluIG1vdGlvbnMgc2hvdWxkIGFsc28gZmFkZSBpbi9vdXQuXG4kbW90aW9uLXVpLXNldHRpbmdzOiAoXG4gIHNsaWRlLWFuZC1mYWRlOiBmYWxzZSxcbiAgaGluZ2UtYW5kLWZhZGU6IHRydWUsXG4gIHNjYWxlLWFuZC1mYWRlOiB0cnVlLFxuICBzcGluLWFuZC1mYWRlOiB0cnVlLFxuICBwYXVzZS1xdWV1ZS1jbGFzczogJ2lzLXBhdXNlZCcsXG4gIGFjdGl2YXRlLXF1ZXVlLWNsYXNzOiAnaXMtYW5pbWF0aW5nJyxcbikgIWRlZmF1bHQ7XG4iLCIvLyBJbnRlcm5hbCBjb3VudGVyIGZvciBjcmVhdGluZyB1bmlxdWUga2V5ZnJhbWUgbmFtZXNcbiQtbXVpLWN1c3RvbTogMDtcblxuLy8vIENyZWF0ZXMgYSBrZXlmcmFtZSBmcm9tIG9uZSBvciBtb3JlIGVmZmVjdCBmdW5jdGlvbnMuIFVzZSB0aGlzIGZ1bmN0aW9uIGluc3RlYWQgb2YgYG11aS1hbmltYXRpb25gIGlmIHlvdSB3YW50IHRvIGNyZWF0ZSBhIGtleWZyYW1lIGFuaW1hdGlvbiAqd2l0aG91dCogYXV0b21hdGljYWxseSBhc3NpZ25pbmcgaXQgdG8gdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRuYW1lIC0gTmFtZSBvZiB0aGUga2V5ZnJhbWUuXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAkZWZmZWN0cy4uLiAtIE9uZSBvciBtb3JlIGVmZmVjdCBmdW5jdGlvbnMgdG8gYnVpbGQgdGhlIGtleWZyYW1lIHdpdGguXG5AbWl4aW4gbXVpLWtleWZyYW1lcygkbmFtZSwgJGVmZmVjdHMuLi4pIHtcbiAgJG9iajogLW11aS1wcm9jZXNzLWFyZ3MoJGVmZmVjdHMuLi4pO1xuICAkb2JqOiBtYXAtcmVtb3ZlKCRvYmosIG5hbWUpO1xuXG4gIEBrZXlmcmFtZXMgI3skbmFtZX0ge1xuICAgIC8vIE5vdyBpdGVyYXRlIHRocm91Z2ggZWFjaCBrZXlmcmFtZSBwZXJjZW50YWdlXG4gICAgQGVhY2ggJHBjdCwgJHByb3BzIGluICRvYmoge1xuICAgICAgI3stbXVpLWtleWZyYW1lLXBjdCgkcGN0KX0ge1xuICAgICAgICAvLyBMYXN0bHksIGl0ZXJhdGUgdGhyb3VnaCBlYWNoIENTUyBwcm9wZXJ0eSB3aXRoaW4gYSBwZXJjZW50YWdlIGFuZCBwcmludCBpdCBvdXRcbiAgICAgICAgQGVhY2ggJHByb3AsICR2YWx1ZSBpbiAkcHJvcHMge1xuICAgICAgICAgICN7JHByb3B9OiAjeyR2YWx1ZX07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBzdHJpbmcgZm9yIGEgQ1NTIGtleWZyYW1lLCBieSBjb252ZXJ0aW5nIGEgbGlzdCBvZiBudW1iZXJzIHRvIGEgY29tbWEtc2VwYXJhdGVkIGxpc3Qgb2YgcGVyY2VudGFnZSB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJGlucHV0IC0gTGlzdCBvZiBudW1iZXJzIHRvIHVzZS5cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IEEgc2V0IG9mIGNvbW1hLXNlcGFyYXRlZCBwZXJjZW50YWdlIHZhbHVlcy5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBmdW5jdGlvbiAtbXVpLWtleWZyYW1lLXBjdCgkaW5wdXQpIHtcbiAgJG91dHB1dDogKCk7XG5cbiAgQGlmIHR5cGUtb2YoJGlucHV0KSA9PSAnbnVtYmVyJyB7XG4gICAgJG91dHB1dDogKCRpbnB1dCAqIDElKTtcbiAgfSBAZWxzZSBpZiB0eXBlLW9mKCRpbnB1dCkgPT0gJ2xpc3QnIHtcbiAgICBAZWFjaCAkaSBpbiAkaW5wdXQge1xuICAgICAgJG91dHB1dDogYXBwZW5kKCRvdXRwdXQsICgkaSAqIDElKSwgY29tbWEpO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gXCIjeyRvdXRwdXR9XCI7XG59XG5cbi8vLyBQcmludHMgdGhlIENTUyBwcm9wZXJ0aWVzIGZyb20gYSBzcGVjaWZpYyBrZXkgaW4gYSBrZXlmcmFtZXMgbWFwLiBVc2VkIHRvIGJvcnJvdyBDU1MgZnJvbSBrZXlmcmFtZSBmdW5jdGlvbnMgZm9yIHVzZSBpbiB0cmFuc2l0aW9ucy5cbi8vLyBAcGFyYW0ge01hcH0gJGtmIC0gS2V5ZnJhbWUgbWFwIHRvIGV4dHJhY3QgZnJvbS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGtleSAtIEtleSBpbiB0aGUgbWFwIHRvIHByaW50IHRoZSBDU1Mgb2YuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gLW11aS1rZXlmcmFtZS1nZXQoJGtmLCAka2V5KSB7XG4gICRtYXA6IG1hcC1nZXQoJGtmLCAka2V5KTtcblxuICBAZWFjaCAkcHJvcCwgJHZhbHVlIGluICRtYXAgb3IgKCkge1xuICAgIC8vIFNvbWUga2V5ZnJhbWUgbWFwcyBzdG9yZSB0cmFuc2Zvcm1zIGFzIHF1b3RlZCBzdHJpbmdzXG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnc3RyaW5nJyB7XG4gICAgICAkdmFsdWU6IHVucXVvdGUoJHZhbHVlKTtcbiAgICB9XG4gICAgI3skcHJvcH06ICR2YWx1ZTtcbiAgfVxufVxuXG4vLy8gUmVmb3JtYXRzIGEgbWFwIGNvbnRhaW5pbmcga2V5cyB3aXRoIGEgbGlzdCBvZiB2YWx1ZXMsIHNvIHRoYXQgZWFjaCBrZXkgaXMgYSBzaW5nbGUgdmFsdWUuXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gc3BsaXQgdXAuXG4vLy8gQHJldHVybiB7TWFwfSBBIHJlZm9ybWF0dGVkIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBmdW5jdGlvbiAtbXVpLWtleWZyYW1lLXNwbGl0KCRtYXApIHtcbiAgJG5ldy1tYXA6ICgpO1xuXG4gIC8vIFNwbGl0IGtleXMgd2l0aCBtdWx0aXBsZSB2YWx1ZXMgaW50byBpbmRpdmlkdWFsIGtleXNcbiAgQGVhY2ggJGtleSwgJGl0ZW0gaW4gJG1hcCB7XG4gICAgJGtleS10eXBlOiB0eXBlLW9mKCRrZXkpO1xuXG4gICAgQGlmICRrZXktdHlwZSA9PSAnbnVtYmVyJyB7XG4gICAgICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAoJGtleTogJGl0ZW0pKTtcbiAgICB9IEBlbHNlIGlmICRrZXktdHlwZSA9PSAnbGlzdCcge1xuICAgICAgQGVhY2ggJGsgaW4gJGtleSB7XG4gICAgICAgICRuZXctbWFwOiBtYXAtbWVyZ2UoJG5ldy1tYXAsICgkazogJGl0ZW0pKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRuZXctbWFwO1xufVxuXG4vLy8gQ29tYmluZXMgYSBzZXJpZXMgb2Yga2V5ZnJhbWUgb2JqZWN0cyBpbnRvIG9uZS5cbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICRtYXBzLi4uIC0gQSBzZXJpZXMgb2YgbWFwcyB0byBtZXJnZSwgYXMgaW5kaXZpZHVhbCBwYXJhbWV0ZXJzLlxuLy8vIEByZXR1cm4ge01hcH0gQSBjb21iaW5lZCBrZXlmcmFtZSBvYmplY3QuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1rZXlmcmFtZS1jb21iaW5lKCRtYXBzLi4uKSB7XG4gICRuZXctbWFwOiAoKTtcblxuICAvLyBJdGVyYXRlIHRocm91Z2ggZWFjaCBtYXAgcGFzc2VkIGluXG4gIEBlYWNoICRtYXAgaW4gJG1hcHMge1xuICAgIEBpZiAtbXVpLWlzLWZ1bmN0aW9uKCRtYXApIHtcbiAgICAgICRtYXA6IC1tdWktc2FmZS1jYWxsKCRtYXApO1xuICAgIH1cblxuICAgICRtYXA6IC1tdWkta2V5ZnJhbWUtc3BsaXQoJG1hcCk7XG5cbiAgICAvLyBJdGVyYXRlIHRocm91Z2ggZWFjaCBrZXlmcmFtZSBpbiB0aGUgbWFwXG4gICAgLy8gJGtleSBpcyB0aGUga2V5ZnJhbWUgcGVyY2VudGFnZVxuICAgIC8vICR2YWx1ZSBpcyBhIG1hcCBvZiBDU1MgcHJvcGVydGllc1xuICAgIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICAgICRuZXctdmFsdWU6ICgpO1xuXG4gICAgICBAaWYgbWFwLWhhcy1rZXkoJG5ldy1tYXAsICRrZXkpIHtcbiAgICAgICAgLy8gSWYgdGhlIG1hcCBhbHJlYWR5IGhhcyB0aGUga2V5ZnJhbWUgJSwgYXBwZW5kIHRoZSBuZXcgcHJvcGVydHlcbiAgICAgICAgJG5ldy12YWx1ZTogLW11aS1tZXJnZS1wcm9wZXJ0aWVzKG1hcC1nZXQoJG5ldy1tYXAsICRrZXkpLCAkdmFsdWUpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC8vIE90aGVyd2lzZSwgY3JlYXRlIGEgbmV3IG1hcCB3aXRoIHRoZSBuZXcgcHJvcGVydHlcbiAgICAgICAgJG5ldy12YWx1ZTogJHZhbHVlO1xuICAgICAgfVxuXG4gICAgICAvLyBGaW5hbGx5LCBtZXJnZSB0aGUgbW9kaWZpZWQga2V5ZnJhbWUgdmFsdWUgaW50byB0aGUgb3V0cHV0IG1hcFxuICAgICAgJG5ldy1tYXA6IG1hcC1tZXJnZSgkbmV3LW1hcCwgKCRrZXk6ICRuZXctdmFsdWUpKTtcbiAgICB9XG4gIH1cblxuICAvLyBNYWtlIGEgbmFtZSBmb3IgdGhlIGtleWZyYW1lc1xuICAkLW11aS1jdXN0b206ICQtbXVpLWN1c3RvbSArIDEgIWdsb2JhbDtcbiAgJG1hcC1uYW1lOiAobmFtZTogJ2N1c3RvbS0jeyQtbXVpLWN1c3RvbX0nKTtcbiAgJG5ldy1tYXA6IG1hcC1tZXJnZSgkbmV3LW1hcCwgJG1hcC1uYW1lKTtcblxuICBAcmV0dXJuICRuZXctbWFwO1xufVxuXG4vLy8gQ29tYmluZXMgdHdvIG1hcHMgb2YgQ1NTIHByb3BlcnRpZXMgaW50byBvbmUgbWFwLiBJZiBib3RoIG1hcHMgaGF2ZSBhIHRyYW5zZm9ybSBwcm9wZXJ0eSwgdGhlIHZhbHVlcyBmcm9tIGVhY2ggd2lsbCBiZSBjb21iaW5lZCBpbnRvIG9uZSBwcm9wZXJ0eS5cbi8vLyBAcGFyYW0ge01hcH0gJG9uZSAtIEZpcnN0IG1hcCB0byBtZXJnZS5cbi8vLyBAcGFyYW0ge01hcH0gJHR3byAtIFNlY29uZCBtYXAgdG8gbWVyZ2UuXG4vLy8gQHJldHVybiB7TWFwfSBBIGNvbWJpbmVkIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBmdW5jdGlvbiAtbXVpLW1lcmdlLXByb3BlcnRpZXMoJG9uZSwgJHR3bykge1xuICBAaWYgbWFwLWhhcy1rZXkoJG9uZSwgdHJhbnNmb3JtKSBhbmQgbWFwLWhhcy1rZXkoJHR3bywgdHJhbnNmb3JtKSB7XG4gICAgJHRyYW5zZm9ybTogam9pbihtYXAtZ2V0KCRvbmUsIHRyYW5zZm9ybSksIG1hcC1nZXQoJHR3bywgdHJhbnNmb3JtKSk7XG4gICAgJG9uZTogbWFwLW1lcmdlKCRvbmUsICh0cmFuc2Zvcm06ICR0cmFuc2Zvcm0pKTtcbiAgICAkdHdvOiBtYXAtcmVtb3ZlKCR0d28sIHRyYW5zZm9ybSk7XG4gIH1cblxuICBAcmV0dXJuIG1hcC1tZXJnZSgkb25lLCAkdHdvKTtcbn1cbiIsIi8vLyBDcmVhdGVzIGEgc2xpZGluZyB0cmFuc2l0aW9uIGJ5IHRyYW5zbGF0aW5nIHRoZSBlbGVtZW50IGhvcml6b250YWxseSBvciB2ZXJ0aWNhbGx5LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpcmVjdGlvbiBbbnVsbF0gLSBEaXJlY3Rpb24gdG8gc2xpZGUgdG8uIENhbiBiZSBgdXBgLCBgcmlnaHRgLCBgZG93bmAsIG9yIGBsZWZ0YC4gQnkgZGVmYXVsdCBgbGVmdGAgYW5kIGByaWdodGAgZm9yIGBpbmAgYW5kIGBvdXRgIHN0YXRlcyByZXNwZWN0aXZlbHkuXG4vLy8gQHBhcmFtIHtMZW5ndGh9ICRhbW91bnQgWzEwMCVdIC0gTGVuZ3RoIG9mIHRoZSBzbGlkZSBhcyBhIHBlcmNlbnRhZ2UgdmFsdWUuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmFkZSBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBmYWRlIHRoZSBlbGVtZW50IGluIG9yIG91dCBzaW11bHRhbmVvdXNseS5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktc2xpZGUgKFxuICAkc3RhdGU6IGluLFxuICAkZGlyZWN0aW9uOiBudWxsLFxuICAkYW1vdW50OiAxMDAlLFxuICAkZmFkZTogbWFwLWdldCgkbW90aW9uLXVpLXNldHRpbmdzLCBzbGlkZS1hbmQtZmFkZSksXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJGRpcmVjdGlvbjogaWYoJGRpcmVjdGlvbiAhPSBudWxsLCAkZGlyZWN0aW9uLCBpZigkc3RhdGUgPT0gaW4sIGxlZnQsIHJpZ2h0KSk7XG4gICRzbGlkZTogc2xpZGUoJHN0YXRlLCAkZGlyZWN0aW9uLCAkYW1vdW50KTtcblxuICAvLyBDU1MgT3V0cHV0XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzbGlkZSwgMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAwLCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB9XG5cbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2xpZGUsIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgZmFkZSB0cmFuc2l0aW9uIGJ5IGFkanVzdGluZyB0aGUgb3BhY2l0eSBvZiB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGZyb20gW251bGxdIC0gT3BhY2l0eSB0byBzdGFydCBhdC4gTXVzdCBiZSBhIG51bWJlciBiZXR3ZWVuIDAgYW5kIDEuIEJ5IGRlZmF1bHQgYDBgIGFuZCBgMWAgZm9yIGBpbmAgYW5kIGBvdXRgIHN0YXRlcyByZXNwZWN0aXZlbHkuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0byBbbnVsbF0gLSBPcGFjaXR5IHRvIGVuZCBvbi4gQnkgZGVmYXVsdCBgMWAgYW5kIGAwYCBmb3IgYGluYCBhbmQgYG91dGAgc3RhdGVzIHJlc3BlY3RpdmVseS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1mYWRlKFxuICAkc3RhdGU6IGluLFxuICAkZnJvbTogbnVsbCxcbiAgJHRvOiBudWxsLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRmcm9tOiBpZigkZnJvbSAhPSBudWxsLCAkZnJvbSwgaWYoJHN0YXRlID09IGluLCAwLCAxKSk7XG4gICR0bzogaWYoJHRvICE9IG51bGwsICR0bywgaWYoJHN0YXRlID09IGluLCAxLCAwKSk7XG4gICRmYWRlOiBmYWRlKCRmcm9tLCAkdG8pO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRmYWRlLCAwKTtcblxuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkZmFkZSwgMTAwKTtcbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBoaW5nZSBlZmZlY3QgYnkgcm90YXRpbmcgdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZnJvbSBbbGVmdF0gLSBFZGdlIG9mIHRoZSBlbGVtZW50IHRvIHJvdGF0ZSBmcm9tLiBDYW4gYmUgYHRvcGAsIGByaWdodGAsIGBib3R0b21gLCBvciBgbGVmdGAuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkYXhpcyBbZWRnZV0gLSBBeGlzIG9mIHRoZSBlbGVtZW50IHRvIHJvdGF0ZSBvbi4gQ2FuIGJlIGBlZGdlYCBvciBgY2VudGVyYC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHBlcnNwZWN0aXZlIFsyMDAwcHhdIC0gUGVyY2VpdmVkIGRpc3RhbmNlIGJldHdlZW4gdGhlIHZpZXdlciBhbmQgdGhlIGVsZW1lbnQuIEEgaGlnaGVyIG51bWJlciB3aWxsIG1ha2UgdGhlIHJvdGF0aW9uIGVmZmVjdCBtb3JlIHByb25vdW5jZWQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdHVybi1vcmlnaW4gW251bGxdIC0gU2lkZSBvZiB0aGUgZWxlbWVudCB0byBzdGFydCB0aGUgcm90YXRpb24gZnJvbS4gQ2FuIGJlIGBmcm9tLWJhY2tgIG9yIGBmcm9tLWZyb250YC4gQnkgZGVmYXVsdCBgZnJvbS1iYWNrYCBhbmQgYGZyb20tZnJvbnRgIGZvciBgaW5gIGFuZCBgb3V0YCBzdGF0ZXMgcmVzcGVjdGl2ZWx5LlxuQGZ1bmN0aW9uIGhpbmdlIChcbiAgJHN0YXRlOiBpbixcbiAgJGZyb206IGxlZnQsXG4gICRheGlzOiBlZGdlLFxuICAkcGVyc3BlY3RpdmU6IDIwMDBweCxcbiAgJHR1cm4tb3JpZ2luOiBudWxsXG4pIHtcbiAgLy8gUm90YXRpb24gZGlyZWN0aW9ucyB3aGVuIGhpbmdpbmcgZnJvbSBiYWNrIHZzLiBmcm9udFxuICAkcm90YXRpb24tYW1vdW50OiA5MGRlZztcbiAgJHJvdGF0aW9ucy1iYWNrOiAoXG4gICAgdG9wOiByb3RhdGVYKCRyb3RhdGlvbi1hbW91bnQgKiAtMSksXG4gICAgcmlnaHQ6IHJvdGF0ZVkoJHJvdGF0aW9uLWFtb3VudCAqIC0xKSxcbiAgICBib3R0b206IHJvdGF0ZVgoJHJvdGF0aW9uLWFtb3VudCksXG4gICAgbGVmdDogcm90YXRlWSgkcm90YXRpb24tYW1vdW50KSxcbiAgKTtcbiAgJHJvdGF0aW9ucy1mcm9tOiAoXG4gICAgdG9wOiByb3RhdGVYKCRyb3RhdGlvbi1hbW91bnQpLFxuICAgIHJpZ2h0OiByb3RhdGVZKCRyb3RhdGlvbi1hbW91bnQpLFxuICAgIGJvdHRvbTogcm90YXRlWCgkcm90YXRpb24tYW1vdW50ICogLTEpLFxuICAgIGxlZnQ6IHJvdGF0ZVkoJHJvdGF0aW9uLWFtb3VudCAqIC0xKSxcbiAgKTtcblxuICAvLyBSb3RhdGlvbiBvcmlnaW5cbiAgJHR1cm4tb3JpZ2luOiBpZigkdHVybi1vcmlnaW4gIT0gbnVsbCwgJHR1cm4tb3JpZ2luLCBpZigkc3RhdGUgPT0gaW4sIGZyb20tYmFjaywgZnJvbS1mcm9udCkpO1xuICAkcm90YXRpb246ICcnO1xuICBAaWYgJHR1cm4tb3JpZ2luID09IGZyb20tZnJvbnQge1xuICAgICRyb3RhdGlvbjogbWFwLWdldCgkcm90YXRpb25zLWZyb20sICRmcm9tKTtcbiAgfSBAZWxzZSBpZiAkdHVybi1vcmlnaW4gPT0gZnJvbS1iYWNrIHtcbiAgICAkcm90YXRpb246IG1hcC1nZXQoJHJvdGF0aW9ucy1iYWNrLCAkZnJvbSk7XG4gIH0gQGVsc2Uge1xuICAgIEB3YXJuICckdHVybi1vcmlnaW4gbXVzdCBiZSBlaXRoZXIgXCJmcm9tLWJhY2tcIiBvciBcImZyb20tZnJvbnRcIic7XG4gIH1cblxuICAvLyBTdGFydCBhbmQgZW5kIHN0YXRlXG4gICRzdGFydDogJyc7XG4gICRlbmQ6ICcnO1xuICBAaWYgJHN0YXRlID09IGluIHtcbiAgICAkc3RhcnQ6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgJHJvdGF0aW9uO1xuICAgICRlbmQ6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgcm90YXRlKDBkZWcpO1xuICB9IEBlbHNlIHtcbiAgICAkc3RhcnQ6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgcm90YXRlKDBkZWcpO1xuICAgICRlbmQ6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgJHJvdGF0aW9uO1xuICB9XG5cbiAgLy8gVHVybiBheGlzXG4gICRvcmlnaW46ICcnO1xuICBAaWYgJGF4aXMgPT0gZWRnZSB7XG4gICAgJG9yaWdpbjogJGZyb207XG4gIH0gQGVsc2Uge1xuICAgICRvcmlnaW46IGNlbnRlcjtcbiAgfVxuXG4gICRrZXlmcmFtZXM6IChcbiAgICBuYW1lOiAtbXVpLXN0cmluZy1zYWZlKCdoaW5nZS0jeyRzdGF0ZX0tI3skZnJvbX0tI3skYXhpc30tI3skdHVybi1vcmlnaW59JyksXG4gICAgMDogKHRyYW5zZm9ybTogJHN0YXJ0LCB0cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luKSxcbiAgICAxMDA6ICh0cmFuc2Zvcm06ICRlbmQpLFxuICApO1xuXG4gIEByZXR1cm4gJGtleWZyYW1lcztcbn1cbiIsIi8vLyBDcmVhdGVzIGEgaGluZ2UgdHJhbnNpdGlvbiBieSByb3RhdGluZyB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRmcm9tIFtsZWZ0XSAtIEVkZ2Ugb2YgdGhlIGVsZW1lbnQgdG8gcm90YXRlIGZyb20uIENhbiBiZSBgdG9wYCwgYHJpZ2h0YCwgYGJvdHRvbWAsIG9yIGBsZWZ0YC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRheGlzIFtlZGdlXSAtIEF4aXMgb2YgdGhlIGVsZW1lbnQgdG8gcm90YXRlIG9uLiBDYW4gYmUgYGVkZ2VgIG9yIGBjZW50ZXJgLlxuLy8vIEBwYXJhbSB7TGVuZ3RofSAkcGVyc3BlY3RpdmUgWzIwMDBweF0gLSBQZXJjZWl2ZWQgZGlzdGFuY2UgYmV0d2VlbiB0aGUgdmlld2VyIGFuZCB0aGUgZWxlbWVudC4gQSBoaWdoZXIgbnVtYmVyIHdpbGwgbWFrZSB0aGUgcm90YXRpb24gZWZmZWN0IG1vcmUgcHJvbm91bmNlZC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR0dXJuLW9yaWdpbiBbbnVsbF0gLSBTaWRlIG9mIHRoZSBlbGVtZW50IHRvIHN0YXJ0IHRoZSByb3RhdGlvbiBmcm9tLiBDYW4gYmUgYGZyb20tYmFja2Agb3IgYGZyb20tZnJvbnRgLiBCeSBkZWZhdWx0IGBmcm9tLWJhY2tgIGFuZCBgZnJvbS1mcm9udGAgZm9yIGBpbmAgYW5kIGBvdXRgIHN0YXRlcyByZXNwZWN0aXZlbHkuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmFkZSBbdHJ1ZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1oaW5nZSAoXG4gICRzdGF0ZTogaW4sXG4gICRmcm9tOiBsZWZ0LFxuICAkYXhpczogZWRnZSxcbiAgJHBlcnNwZWN0aXZlOiAyMDAwcHgsXG4gICR0dXJuLW9yaWdpbjogbnVsbCxcbiAgJGZhZGU6IG1hcC1nZXQoJG1vdGlvbi11aS1zZXR0aW5ncywgaGluZ2UtYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICR0dXJuLW9yaWdpbjogaWYoJHR1cm4tb3JpZ2luICE9IG51bGwsICR0dXJuLW9yaWdpbiwgaWYoJHN0YXRlID09IGluLCBmcm9tLWJhY2ssIGZyb20tZnJvbnQpKTtcbiAgJGhpbmdlOiBoaW5nZSgkc3RhdGUsICRmcm9tLCAkYXhpcywgJHBlcnNwZWN0aXZlLCAkdHVybi1vcmlnaW4pO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRoaW5nZSwgMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAwLCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkaGluZ2UsIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgc2NhbGluZyB0cmFuc2l0aW9uLiBBIHNjYWxlIG9mIGAxYCBtZWFucyB0aGUgZWxlbWVudCBpcyB0aGUgc2FtZSBzaXplLiBMYXJnZXIgbnVtYmVycyBtYWtlIHRoZSBlbGVtZW50IGJpZ2dlciwgd2hpbGUgbnVtYmVycyBsZXNzIHRoYW4gMSBtYWtlIHRoZSBlbGVtZW50IHNtYWxsZXIuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRmcm9tIFtudWxsXSAtIFNpemUgdG8gc3RhcnQgYXQuIEJ5IGRlZmF1bHQgYDBgIGFuZCBgMWAgZm9yIGBpbmAgYW5kIGBvdXRgIHN0YXRlcyByZXNwZWN0aXZlbHkuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0byBbbnVsbF0gLSBTaXplIHRvIGVuZCBhdC4gQnkgZGVmYXVsdCBgMWAgYW5kIGAwYCBmb3IgYGluYCBhbmQgYG91dGAgc3RhdGVzIHJlc3BlY3RpdmVseS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFt0cnVlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLXpvb20oXG4gICRzdGF0ZTogaW4sXG4gICRmcm9tOiBudWxsLFxuICAkdG86IG51bGwsXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIHNjYWxlLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkZnJvbTogaWYoJGZyb20gIT0gbnVsbCwgJGZyb20sIGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSkpO1xuICAkdG86IGlmKCR0byAhPSBudWxsLCAkdG8sIGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCkpO1xuICAkc2NhbGU6IHpvb20oJGZyb20sICR0byk7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNjYWxlLCAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDAsIDEpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzY2FsZSwgMTAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDEsIDApO1xuICAgIH1cbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBzcGlubmluZyB0cmFuc2l0aW9uIGJ5IHJvdGF0aW5nIHRoZSBlbGVtZW50LiBUaGUgYHR1cm5gIHVuaXQgaXMgdXNlZCB0byBzcGVjaWZ5IGhvdyBmYXIgdG8gcm90YXRlLiBgMXR1cm5gIGlzIGVxdWFsIHRvIGEgMzYwLWRlZ3JlZSBzcGluLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpcmVjdGlvbiBbbnVsbF0gLSBEaXJlY3Rpb24gdG8gc3Bpbi4gU2hvdWxkIGJlIGBjd2AgKGNsb2Nrd2lzZSkgb3IgYGNjd2AgKGNvdW50ZXJjbG9ja3dpc2UpLiBCeSBkZWZhdWx0IGBjd2AgYW5kIGBjY3dgIGZvciBgaW5gIGFuZCBgb3V0YCBzdGF0ZXMgcmVzcGVjdGl2ZWx5LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYW1vdW50IFswLjc1dHVybl0gLSBBbW91bnQgdG8gZWxlbWVudCB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFtmYWxzZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1zcGluKFxuICAkc3RhdGU6IGluLFxuICAkZGlyZWN0aW9uOiBjdyxcbiAgJGFtb3VudDogMC43NXR1cm4sXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIHNwaW4tYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRkaXJlY3Rpb246IGlmKCRkaXJlY3Rpb24gIT0gbnVsbCwgJGRpcmVjdGlvbiwgaWYoJHN0YXRlID09IGluLCBjdywgY2N3KSk7XG4gICRzcGluOiBzcGluKCRzdGF0ZSwgJGRpcmVjdGlvbiwgJGFtb3VudCk7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNwaW4sIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNwaW4sIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEga2V5ZnJhbWUgZnJvbSBvbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zIGFuZCBhc3NpZ25zIGl0IHRvIHRoZSBlbGVtZW50IGJ5IGFkZGluZyB0aGUgYGFuaW1hdGlvbi1uYW1lYCBwcm9wZXJ0eS5cbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICRlZmZlY3RzLi4uIC0gT25lIG9yIG1vcmUgZWZmZWN0IGZ1bmN0aW9ucyB0byBidWlsZCB0aGUga2V5ZnJhbWUgd2l0aC5cbkBtaXhpbiBtdWktYW5pbWF0aW9uKCRhcmdzLi4uKSB7XG4gICRuYW1lOiBtYXAtZ2V0KC1tdWktcHJvY2Vzcy1hcmdzKCRhcmdzLi4uKSwgbmFtZSk7XG4gIEBpbmNsdWRlIG11aS1rZXlmcmFtZXMoJG5hbWUsICRhcmdzLi4uKTtcbiAgYW5pbWF0aW9uLW5hbWU6IHVucXVvdGUoJG5hbWUpO1xufVxuIiwiQGNoYXJzZXQgJ3V0Zi04JztcblxuXG5AaW1wb3J0ICdzZXR0aW5ncyc7XG5AaW1wb3J0ICdmb3VuZGF0aW9uJztcbkBpbXBvcnQgJ21vdGlvbi11aSc7XG5cbkBpbmNsdWRlIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcztcbi8vQGluY2x1ZGUgZm91bmRhdGlvbi1ncmlkO1xuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtZ3JpZDtcblxuQGluY2x1ZGUgZm91bmRhdGlvbi14eS1ncmlkLWNsYXNzZXM7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXR5cG9ncmFwaHk7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbjtcbkBpbmNsdWRlIGZvdW5kYXRpb24tZm9ybXM7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXJhbmdlLWlucHV0O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb247XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbi1tZW51O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1iYWRnZTtcbkBpbmNsdWRlIGZvdW5kYXRpb24tYnJlYWRjcnVtYnM7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbi1ncm91cDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tY2FsbG91dDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tY2FyZDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tY2xvc2UtYnV0dG9uO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51LWljb247XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWRyaWxsZG93bi1tZW51O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bjtcbkBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudTtcbkBpbmNsdWRlIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tbGFiZWw7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tb2ZmLWNhbnZhcztcbkBpbmNsdWRlIGZvdW5kYXRpb24tb3JiaXQ7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXBhZ2luYXRpb247XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXByb2dyZXNzLWJhcjtcbkBpbmNsdWRlIGZvdW5kYXRpb24tc2xpZGVyO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1zdGlja3k7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXJldmVhbDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tc3dpdGNoO1xuQGluY2x1ZGUgZm91bmRhdGlvbi10YWJsZTtcbkBpbmNsdWRlIGZvdW5kYXRpb24tdGFicztcbkBpbmNsdWRlIGZvdW5kYXRpb24tdGh1bWJuYWlsO1xuQGluY2x1ZGUgZm91bmRhdGlvbi10aXRsZS1iYXI7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXRvb2x0aXA7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXRvcC1iYXI7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3Nlcztcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxvYXQtY2xhc3NlcztcbkBpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1jbGFzc2VzO1xuXG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXByb3RvdHlwZS1jbGFzc2VzO1xuXG5AaW5jbHVkZSBtb3Rpb24tdWktdHJhbnNpdGlvbnM7XG5AaW5jbHVkZSBtb3Rpb24tdWktYW5pbWF0aW9ucztcblxuLypcbiAgTXkgY3VzdG9tIHN0eWxlczpcbiAgQWRkIHlvdXIgc2NzcyBmaWxlcyBiZWxvdyB0byBzdHJ1Y3R1cmUgeW91ciBwcm9qZWN0IHN0eWxlc1xuKi9cblxuLy8gR2xvYmFsXG5AaW1wb3J0IFwiZ2xvYmFsL2FjY2Vzc2liaWxpdHlcIjtcbkBpbXBvcnQgXCJnbG9iYWwvY29sb3JzXCI7XG5AaW1wb3J0IFwiZ2xvYmFsL3dwLWFkbWluXCI7XG5AaW1wb3J0IFwiZ2xvYmFsL3dwLW92ZXJyaWRlc1wiO1xuQGltcG9ydCBcImdsb2JhbC9ndXRlbmJlcmdcIjtcbkBpbXBvcnQgXCJnbG9iYWwvZm9udHNcIjtcblxuXG4vLyBNb2R1bGVzXG5AaW1wb3J0IFwibW9kdWxlcy9uYXZpZ2F0aW9uXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9jb250ZW50XCI7XG5AaW1wb3J0IFwibW9kdWxlcy9mb290ZXJcIjtcbkBpbXBvcnQgXCJtb2R1bGVzL2VkaXRvci1zdHlsZVwiO1xuXG4vLyBDb21wb25lbnRzXG5AaW1wb3J0IFwiY29tcG9uZW50cy9idXR0b25zXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9jYXJkc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvZmVhdHVyZWQtaW1hZ2VcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2RpdmlkZXJzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9saW5rc1wiO1xuXG4vLyBUZW1wbGF0ZXNcbkBpbXBvcnQgXCJ0ZW1wbGF0ZXMvZnJvbnRcIjtcbkBpbXBvcnQgXCJ0ZW1wbGF0ZXMva2l0Y2hlbi1zaW5rXCI7XG4iLCIvLyBUZXh0IG1lYW50IG9ubHkgZm9yIHNjcmVlbiByZWFkZXJzLiBBZGRyZXNzZXMgcGFydCBvZiB0aGVtZS1jaGVjayBpc3N1ZSAjODQwLlxuLy8gaHR0cHM6Ly9naXRodWIuY29tL0F1dG9tYXR0aWMvX3MvYmxvYi9tYXN0ZXIvc3R5bGUuY3NzXG4uc2NyZWVuLXJlYWRlci10ZXh0IHtcbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHdpZHRoOiAxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5zY3JlZW4tcmVhZGVyLXRleHQ6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmMWYxO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJveC1zaGFkb3c6IDAgMCAycHggMnB4IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgY2xpcDogYXV0byAhaW1wb3J0YW50O1xuICBjb2xvcjogIzIxNzU5YjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGhlaWdodDogYXV0bztcbiAgbGVmdDogNXB4O1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAxNXB4IDIzcHggMTRweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0b3A6IDVweDtcbiAgd2lkdGg6IGF1dG87XG4gIHotaW5kZXg6IDEwMDAwMDsgLy8gQWJvdmUgV1AgdG9vbGJhci5cbn1cbiIsIi8vIEZpeCB0aGUgaXNzdWUgd2hlcmUgdGhlIFdQIGFkbWluLWJhciBvdmVybGFwcyB0aGUgbW9iaWxlIG1lbnVcbiN3cGFkbWluYmFyIHtcbiAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7XG59XG5cbi8vIE1ha2Ugc3VyZSB0aGF0IHRoZSBXUCBhZG1pbi1iYXIgZG9lcyBub3Qgb3ZlcmxhcCBGb3VuZGF0aW9uIGNvbXBvbmVudHNcbmJvZHkuYWRtaW4tYmFyIHtcbiAgLy8gT2Zmc2V0IHN0aWNreSB0b3AgYmFyXG4gICYuZi10b3BiYXItZml4ZWQge1xuICAgIC5zdGlja3kuZml4ZWQge1xuICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzIpO1xuICAgIH1cbiAgfVxuICAvLyBPZmZzZXQgbW9iaWxlIG9mZi1jYW52YXMgbWVudVxuICAmLm9mZmNhbnZhcyB7XG4gICAgLm9mZi1jYW52YXMuaXMtb3BlbiB7XG4gICAgICB0b3A6IHJlbS1jYWxjKDQ2KTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzgzKSB7XG4gICAgICAgIHRvcDogcmVtLWNhbGMoMzIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiXG5ib2R5IHtcblx0Y29sb3I6JG91LWRhcmtHcmF5O1xuXG5cblx0LmJ1dHRvbiB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJG91LWRhcmtHcmF5O1xuXHRcdG1hcmdpbi10b3A6MXJlbTtcblx0XHRwYWRkaW5nOiAwLjVyZW0gMXJlbTtcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdGZvbnQtZmFtaWx5OiAnYmViYXNfbmV1ZWJvbGQnLCBzYW5zLXNlcmlmO1xuXHRcdGZvbnQtc2l6ZTogMS4ycmVtO1xuXHRcdGNvbG9yOiAjZmZmO1xuXHRcdGxldHRlci1zcGFjaW5nOiAwLjJyZW07XG5cdFx0Ji55ZWxsb3cge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJG91YWcteWVsbG93O1xuXHRcdFx0Y29sb3I6JG91LWRhcmtHcmF5O1xuXHRcdFx0Jjpob3ZlciwgJjpmb2N1cyB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRvdS1kYXJrR3JheTtcblx0XHRcdFx0Y29sb3I6I2ZmZjtcblx0XHRcdH1cblx0XHR9XG5cdFx0Jjpob3Zlcntcblx0XHRcdGNvbG9yOiRvdS1kYXJrR3JheTtcblx0XHR9XG5cdH1cblxuXHRsZXR0ZXItc3BhY2luZzowcmVtO1xuXG5cdC53cC1jYXB0aW9uID4gZmlnY2FwdGlvbiB7XG5cdCAgbWF4LXdpZHRoOiAxMDAlO1xuXHQgIGZvbnQtc2l6ZTogMC44cmVtO1xuXHQgIGNvbG9yOiAjOTk5O1xuXHQgIHBhZGRpbmc6IDAuMjVyZW0gMDtcblx0fSBcblxuXHRwLndwLWNhcHRpb24tdGV4dHtcblx0ICBmb250LXNpemU6OTAlO1xuXHQgIGNvbG9yOiAjNjY2O1xuXHQgIHBhZGRpbmc6cmVtLWNhbGMoMTApIDA7XG5cdH1cblxuXHQuYWxpZ25sZWZ0IHtcblx0ICBmbG9hdDogbGVmdDtcblx0ICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuXHQgIG1hcmdpbjogMDtcblx0fVxuXG5cdC5hbGlnbnJpZ2h0IHtcblx0ICBmbG9hdDogcmlnaHQ7XG5cdCAgcGFkZGluZy1sZWZ0OiAxcmVtOyBcblx0ICBtYXJnaW46IDA7XG5cdH1cblxuXHQuYWxpZ25jZW50ZXIge1xuXHQgIGRpc3BsYXk6IGJsb2NrO1xuXHQgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHQgIG1hcmdpbi1yaWdodDogYXV0bztcblx0fSBcblxuXHQuZ2FsbGVyeSB7XG5cdCAgQGluY2x1ZGUgeHktZ3JpZDtcblx0ICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRuZWdhdGl2ZTogdHJ1ZSk7XG5cdCAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCA5IHtcblx0ICAgICYuZ2FsbGVyeS1jb2x1bW5zLSN7JGl9IHtcblx0ICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoMiwgJy5nYWxsZXJ5LWl0ZW0nLCB0cnVlKTtcblx0ICAgIH1cblx0ICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcblx0ICAgICAgJi5nYWxsZXJ5LWNvbHVtbnMtI3skaX0ge1xuXHQgICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtbGF5b3V0KDQsICcuZ2FsbGVyeS1pdGVtJywgdHJ1ZSwgKHNtYWxsOiAzMHB4KSk7XG5cdCAgICAgIH1cblx0ICAgIH1cblx0ICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0ICAgICAgJi5nYWxsZXJ5LWNvbHVtbnMtI3skaX0ge1xuXHQgICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtbGF5b3V0KCRpLCAnLmdhbGxlcnktaXRlbScsIHRydWUsIChzbWFsbDogMzBweCkpO1xuXHQgICAgICB9XG5cdCAgICB9XG5cdCAgfVxuXHQgIC5nYWxsZXJ5LWljb24gPiBhIHtcblx0ICAgIEBpbmNsdWRlIHRodW1ibmFpbDtcblx0ICAgIEBpbmNsdWRlIHRodW1ibmFpbC1saW5rO1xuXHQgIH1cblx0ICAuZ2FsbGVyeS1pY29uID4gaW1nIHtcblx0ICAgIEBpbmNsdWRlIHRodW1ibmFpbDtcblx0ICB9XG5cdH0gXG5cblxuXG5cdC5zaXRlLWRlc2t0b3AtdGl0bGUge1xuXHQgIGEge1xuXHQgICAgI2Rlc2t0b3BMb2dvIHtcblx0ICAgICAgbWF4LXdpZHRoOjI1MHB4O1xuXHQgICAgICBtYXJnaW4tcmlnaHQ6MXJlbTtcblx0ICAgIH1cblx0ICB9XG5cdH1cblxuXG5cdCN0b3AtYmFyLXJpZ2h0LWNvbnRlbnQge1xuXHQgIGRpc3BsYXk6IGZsZXg7XG5cdCAgZmxleC13cmFwOiBub3dyYXA7XG5cdCAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgIFxuXHQgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdCAgYWxpZ24tY29udGVudDogY2VudGVyO1xuXHQgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0ICBsaS5pcy1hY3RpdmUge1xuXHQgIFx0LnN1Ym1lbnUtdG9nZ2xlIHtcblx0ICBcdFx0YmFja2dyb3VuZC1jb2xvcjojODc3MTQ4O1xuXHQgIFx0XHRcblx0ICBcdH1cblx0ICBcdCYgOjphZnRlciB7XG5cdCAgXHRcdFx0Ym9yZGVyLWNvbG9yOiAjZmZmIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuXHQgIFx0XHR9XG5cdCAgXHRcdGxpLmlzLWFjdGl2ZSB7XG5cdCAgXHRcdFx0YSB7XG5cdFx0ICBcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuXHQgIFx0XHRcdFx0Y29sb3I6JG91LWdvbGQ7XG5cdCAgXHRcdFx0fVxuXHQgIFx0XHR9ICBcblx0XHR9XG5cdH1cblxuXG5cdC5zaXRlLWhlYWRlciB7XG5cdCAgZm9udC1mYW1pbHk6J2JlYmFzX25ldWVib2xkJywgc2Fucy1zZXJpZjtcblx0ICBcdC5zaXRlLXRpdGxlLWJhciB7XG5cdFx0ICBcdCNtb2JpbGVUb3BSb3cge1xuXHRcdCAgXHRcdEBpbmNsdWRlIGdyaWQtcm93O1xuXHRcdFx0ICBcdC5tZW51SWNvbldyYXBwZXIge1xuXHRcdFx0ICBcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMik7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJG91LWdyYXk7XG5cdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0ICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdFx0XHQgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdFx0XHQubWVudS1pY29uIHsgXG5cdFx0XHQgIFx0XHRcdGJhY2tncm91bmQtY29sb3I6JG91LWdyYXk7XG5cdFx0XHQgIFx0XHR9XG5cdFx0XHQgIFx0fVxuXG5cdFx0XHQgIFx0I2hlYWRlci13aWRnZXRzLW1vYmlsZSB7XG5cdFx0XHQgIFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMCk7XG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6YXV0bzsgXG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjojZmZlMTAwO1xuXHRcdFx0XHRcdHRleHQtYWxpZ246Y2VudGVyO1xuXHRcdFx0XHRcdGNvbG9yOiRvdS1ncmF5O1xuXHRcdFx0XHRcdGZvbnQtc2l6ZToxLjJyZW07XG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6bm9uZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0LndpZGdldF9jdXN0b21faHRtbCB7XG5cdFx0XHRcdFx0XHRwYWRkaW5nOjFyZW0gMHJlbTtcblx0XHRcdFx0XHRcdCNidXNpbmVzc0hvdXJzIHtcblx0XHRcdFx0XHRcdFx0aW1nIHtcblx0XHRcdFx0XHRcdFx0XHRtYXgtd2lkdGg6MzBweDtcblx0XHRcdFx0XHRcdFx0XHRoZWlnaHQ6YXV0bztcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRzcGFuIHtcblx0XHRcdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6MXJlbTtcblx0XHRcdFx0XHRcdFx0XHRkaXNwbGF5OmlubGluZS1ibG9jaztcblx0XHRcdFx0XHRcdFx0XHRsaW5lLWhlaWdodDoxLjFyZW07XG5cdFx0XHRcdFx0XHRcdFx0bWFyZ2luLXRvcDowLjI1cmVtO1xuXHRcdFx0XHRcdFx0XHRcdGJyIHtcblx0XHRcdFx0XHRcdFx0XHRcdGRpc3BsYXk6bm9uZTtcblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdCNtb2JpbGVCb3R0b21Sb3cge1xuXHRcdFx0XHQudGl0bGUtYmFyLXRpdGxlIHtcblx0XHRcdFx0XHR3aWR0aDoxMDAlO1xuXHRcdFx0XHRcdHRleHQtYWxpZ246Y2VudGVyO1xuXHRcdFx0XHRcdCNtb2JpbGVMb2dvIHtcblx0XHRcdFx0XHRcdG1heC13aWR0aDozMDBweDtcblx0XHRcdFx0XHRcdHBhZGRpbmc6IDEuNXJlbTtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XG5cdFx0XHRcdFx0XHRcdG1heC13aWR0aDoyNTBweDtcblx0XHRcdFx0XHRcdFx0cGFkZGluZzogMXJlbTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH0gXG5cdCAgXHR9XG5cdCAgLnRvcC1iYXIge1xuXHQgIFx0LnRvcC1iYXItbGVmdHtcblx0ICBcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlIHVwKXtcblx0ICBcdFx0XHRtYXJnaW4tbGVmdDoxMHJlbTtcblx0ICBcdFx0fVxuXHQgIFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSBvbmx5KSB7XG5cdCAgXHRcdFx0bWFyZ2luLWxlZnQ6MXJlbTsgXG5cdCAgXHRcdH1cblx0ICBcdH1cblx0ICBcdCNtZW51LW1haW4tbWVudSB7XG5cdCAgXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApe1xuXHQgIFx0XHRcdG1hcmdpbi1sZWZ0OjJyZW07XG5cdCAgXHRcdH1cblx0ICBcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSl7XG5cdCAgXHRcdFx0bWFyZ2luLWxlZnQ6MXJlbTtcblx0ICBcdFx0fVxuXHQgIFx0XHQuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnR7XG5cdCAgXHRcdFx0LmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuXHRcdFx0XHRcdGZvbnQtZmFtaWx5Oidyb2JvdG9yZWd1bGFyJyxzYW5zLXNlcmlmO1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTowLjlyZW07XG5cdFx0XHRcdFx0dGV4dC10cmFuc2Zvcm06bm9uZTtcblx0ICBcdFx0XHR9XG5cdCAgXHRcdH1cblx0ICBcdH0gXG5cdCAgXHQjaGVhZGVyLXdpZGdldHMtZGVza3RvcCB7XG5cdFx0XHRtYXJnaW4tbGVmdDphdXRvOyBcblx0XHRcdGNvbG9yOiRvdS1ncmF5O1xuXHRcdFx0cGFkZGluZzowIDFyZW07XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiNmZmUxMDA7XG5cdFx0XHR0ZXh0LWFsaWduOmNlbnRlcjtcblx0XHRcdGRpc3BsYXk6bm9uZTtcblx0XHRcdGZvbnQtc2l6ZToxcmVtO1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cdFx0XHR9XG5cdFx0XHQud2lkZ2V0X2N1c3RvbV9odG1sIHtcblx0XHRcdFx0cGFkZGluZzoxcmVtIDByZW07XG5cdFx0XHRcdCNidXNpbmVzc0hvdXJzIHtcblx0XHRcdFx0XHRpbWcge1xuXHRcdFx0XHRcdFx0bWF4LXdpZHRoOjM2cHg7XG5cdFx0XHRcdFx0XHRoZWlnaHQ6YXV0bztcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0c3BhbiB7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6MS4xcmVtO1xuXHRcdFx0XHRcdFx0bWFyZ2luLXRvcDowLjI1cmVtO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0ICB9XG5cdH1cblxuXHQvKiBDb21tb24gRmVhdHVyZWQgSGVhZGVyIFN0eWxlcyAqL1xuXHQuZmVhdHVyZWQtaGVybyB7XG5cdFx0LmZlYXR1cmVkLWhlcm8ge1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KXtcblx0XHRcdFx0bWluLWhlaWdodDoyNXJlbTtcblx0XHRcdH1cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKXtcblx0XHRcdFx0bWluLWhlaWdodDoyMHJlbTtcblx0XHRcdH1cblx0XHR9XG5cdFx0LnBhZ2VUaXRsZUNvbnRhaW5lciB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpe1xuXHRcdFx0XHRwb3NpdGlvbjpyZWxhdGl2ZTtcblx0XHRcdH1cblx0XHRcdGRpc3BsYXk6dGFibGU7XG5cdFx0XHR3aWR0aDoxMDAlO1xuXHRcdFx0aGVpZ2h0OjEwMCU7XG5cdFx0XHQucGFnZVRpdGxlIHtcblx0XHRcdFx0LypAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpe1xuXHRcdFx0XHRcdHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdFx0XHRcdGJvdHRvbTowJTtcblx0XHRcdFx0XHR3aWR0aDoxMDAlO1xuXHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtcm93O1xuXHRcdFx0XHR9XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKXsqL1xuXHRcdFx0XHRcdGRpc3BsYXk6dGFibGUtY2VsbDtcblx0XHRcdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtcm93O1xuXG5cdFx0XHRcdC8qfSovXG5cdFx0XHRcdC50aXRsZUNvbnRhaW5lciB7XG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCl7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbig2KTtcdFxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbig4KTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKGNlbnRlcik7XG5cdFx0XHRcdFx0dGV4dC1hbGlnbjpjZW50ZXI7XG5cdFx0XHRcdFx0LmVudHJ5Q2F0ZWdvcnlDb250YWluZXIge1xuXHRcdFx0XHRcdFx0d2lkdGg6MTAwJTtcblx0XHRcdFx0XHRcdHRleHQtYWxpZ246bGVmdDtcblxuXHRcdFx0XHRcdFx0LmNhdGVnb3J5e1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiRvdWFnLXllbGxvdztcblx0XHRcdFx0XHRcdFx0dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xuXHRcdFx0XHRcdFx0XHRmb250LWZhbWlseTonYmViYXNfbmV1ZWJvbGQnLCdzYW5zLXNlcmlmJztcblx0XHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6MTtcblx0XHRcdFx0XHRcdFx0cGFkZGluZzowLjI1cmVtIDAuNXJlbTtcblx0XHRcdFx0XHRcdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdC5lbnRyeVRpdGxlIHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjojZmZmO1xuXHRcdFx0XHRcdFx0bWFyZ2luOjAgYXV0bztcblx0XHRcdFx0XHRcdGNvbG9yOiRvdS1kYXJrR3JheTtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTo0cmVtO1xuXHRcdFx0XHRcdFx0d29yZC13cmFwOiBhbnl3aGVyZTtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcblx0XHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OjAuNXJlbTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OjAuODtcblx0XHRcdFx0XHRcdHBhZGRpbmc6MXJlbTtcblxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQuZW50cnlEYXRlIHtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6I2ZmZjtcblx0XHRcdFx0XHRcdHRleHQtYWxpZ246Y2VudGVyO1xuXHRcdFx0XHRcdFx0cGFkZGluZy1ib3R0b206MXJlbTtcblx0XHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcblx0XHRcdFx0XHRcdGZvbnQtZmFtaWx5OidiZWJhc19uZXVlYm9sZCcsJ3NhbnMtc2VyaWYnO1xuXHRcdFx0XHRcdFx0Y29sb3I6JG91LWdvbGQ7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6MnJlbTtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSBkb3duKXtcblx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOjEuNXJlbTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpe1xuXHRcdFx0XHRcdFx0XHR0ZXh0LWFsaWduOmxlZnQ7XG5cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OjAuOTtcblx0XHRcdFx0XHRcdHBhZGRpbmctdG9wOjAuMjVyZW07XG5cdFx0XHRcdFx0XHRwYWRkaW5nLWJvdHRvbTowLjI1cmVtO1xuXHRcdFx0XHRcdFx0c3BhbiB7XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XG5cdFx0XHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAzcmVtO1xuXHRcdFx0XHRcdFx0XHRcdHRleHQtaW5kZW50OiAtM3JlbTtcblx0XHRcdFx0XHRcdFx0XHRjb2xvcjokb3UtZGFya0dyYXk7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdFx0XHRsaW5lLWhlaWdodDowLjU7XG5cdFx0XHRcdFx0XHRcdHdpZHRoOjEwMCU7XG5cdFx0XHRcdFx0XHRcdGltZyB7XG5cdFx0XHRcdFx0XHRcdFx0bWF4LXdpZHRoOjM4cHg7XG5cdFx0XHRcdFx0XHRcdFx0aGVpZ2h0OmF1dG87XG5cdFx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApe1xuXHRcdFx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVx0XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdH1cblxuXHRcdCYjbWFpblBhZ2VIZWFkZXIge1xuXHRcdFx0aDEuZW50cnlUaXRsZSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTozcmVtO1xuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpe1xuXHRcdFx0XHRcdGZvbnQtc2l6ZToycmVtO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblxuXHQvKiBHZW5lcmFsIFN0eWxlcyBmb3IgTWFpbiBDb250YWluZXIgKi9cblx0Lm1haW4tY29udGFpbmVyIHtcblx0XHRtYXgtd2lkdGg6NzVyZW07XG5cdFx0cGFkZGluZy1ib3R0b206NHJlbTtcblx0XHQubWFpbi1ncmlkIHtcblx0XHRcdG1hcmdpbi10b3A6MnJlbTtcblx0XHRcdC5tYWluLWNvbnRlbnQge1xuXHRcdFx0XHR3aWR0aDoxMDAlO1xuXHRcdFx0XHQud3AtYmxvY2stZ2FsbGVyeSB7XG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6MHB4O1xuXHRcdFx0XHR9XG5cdFx0XHRcdC8qIEludHJvIHRleHQgZm9yIHBhZ2VzICovXG5cdFx0XHRcdC5pbnRyb1RleHRDb250YWluZXJ7XG5cdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1yb3c7XG5cdFx0XHRcdFx0cGFkZGluZy1ib3R0b206My41cmVtO1xuXHRcdFx0XHRcdC5pbnRyb1RleHQge1xuXHRcdFx0XHRcdFx0Zm9udC1zaXplOjEuMXJlbTtcblx0XHRcdFx0XHRcdHRleHQtYWxpZ246Y2VudGVyO1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApe1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbig4LDApO1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbi1wb3NpdGlvbihjZW50ZXIpO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KXtcblx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIsMCk7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRwIHtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTowcmVtO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC8qR2VuZXJhbCBTdHlsZXMgZm9yIEV4aGliaXRpb25zICovXG5cdC5leGhpYml0aW9uIHtcblxuXHRcdC5tYWluLWNvbnRlbnQge1xuXHRcdFx0d2lkdGg6MTAwJTtcblx0XHRcdG1hcmdpbjowO1xuXG5cdFx0XHRoMiB7XG5cdFx0XHRcdGZvbnQtc2l6ZToxLjVyZW07XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OjAuOTtcblx0XHRcdFx0bWFyZ2luLXRvcDoycmVtO1xuXHRcdFx0fVxuXG5cdFx0XHRoMjpmaXJzdC1vZi10eXBlIHtcblx0XHRcdFx0bWFyZ2luLXRvcDowcmVtO1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOjAuMjVyZW07XG5cdFx0XHR9XG5cblx0XHRcdGFydGljbGUge1xuXHRcdFx0XHQuYXJ0aWNsZVRvcHtcblx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLXJvdztcblx0XHRcdFx0XHQuZW50cnlDb250ZW50U3BsaXQge1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bil7XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcblx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTApO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdC5lbnRyeUNvbnRlbnRGdWxsIHtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0LnB1YmxpY2F0aW9uQ29udGVudCB7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKXtcblx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuXHRcdFx0XHRcdFx0XHRwYWRkaW5nLXRvcDogM3JlbTtcblx0XHRcdFx0XHRcdFx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkICNjM2MzYzM7XG5cdFx0XHRcdFx0XHRcdG1hcmdpbi10b3A6IDJyZW07XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDIsMCk7XG5cdFx0XHRcdFx0XHRcdHBhZGRpbmc6IDAuNzVyZW0gMXJlbSAwcmVtIDEuNXJlbTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0aW1nIHtcblx0XHRcdFx0XHRcdFx0cGFkZGluZy1ib3R0b206MC43NXJlbTtcblx0XHRcdFx0XHRcdFx0bWF4LXdpZHRoOjEyNXB4O1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0aDMge1xuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6IDEuMnJlbTtcblx0XHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRwIHtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTowO1xuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6MC44cmVtO1xuXHRcdFx0XHRcdFx0XHRsaW5lLWhlaWdodDoxLjI7XG5cdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdC5wdWJsaWNhdGlvblByaWNlIHtcblx0XHRcdFx0XHRcdFx0Zm9udC1mYW1pbHk6J2JlYmFzX25ldWVib2xkJywnc2Fucy1zZXJpZic7XG5cdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZToxcmVtO1xuXHRcdFx0XHRcdFx0XHRtYXJnaW4tdG9wOjAuNXJlbTtcblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0LmJ1dHRvbiB7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRvdWFnLXllbGxvdztcblx0XHRcdFx0XHRcdFx0Y29sb3I6JG91LWRhcmtHcmF5O1xuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6MC45cmVtO1xuXHRcdFx0XHRcdFx0XHRsZXR0ZXItc3BhY2luZzogMC4xcmVtO1xuXHRcdFx0XHRcdFx0XHRwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcblx0XHRcdFx0XHRcdFx0Jjpob3ZlciwgJjpmb2N1cyB7XG5cdFx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJG91LWRhcmtHcmF5O1xuXHRcdFx0XHRcdFx0XHRcdGNvbG9yOiNmZmY7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0LmltYWdlR2FsbGVyeUNvbnRhaW5lcntcblx0XHRcdFx0XHRtYXJnaW4tdG9wOjFyZW07XG5cdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1yb3c7XG5cdFx0XHRcdFx0LmltYWdlR2FsbGVyeSB7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpe1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbi1jb2xsYXBzZTtcblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHR9XG5cdFx0XHRcdC5wcmVzc0NvbnRhaW5lciB7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDo0cmVtO1x0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdC5wcmVzc1NlY3Rpb25UaXRsZSB7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLXJvdztcblx0XHRcdFx0XHRcdC50aXRsZUNvbnRhaW5lciB7XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcblx0XHRcdFx0XHRcdFx0aDIge1x0XHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0XHRcdFx0dGV4dC1hbGlnbjpsZWZ0O1xuXHRcdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTozcmVtO1xuXHRcdFx0XHRcdFx0XHRcdGZvbnQtZmFtaWx5OidiZWJhc19uZXVlcmVndWxhcicsJ3NhbnMtc2VyaWYnO1xuXHRcdFx0XHRcdFx0XHRcdGxldHRlci1zcGFjaW5nOjAuMDVyZW07XG5cdFx0XHRcdFx0XHRcdFx0Y29sb3I6JG91LWRhcmtHcmF5O1xuXHRcdFx0XHRcdFx0XHRcdGJvcmRlci1ib3R0b206MnB4IHNvbGlkICRvdS1kYXJrR3JheTtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0LnByZXNzSXRlbSB7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLXJvdztcblx0XHRcdFx0XHRcdC5wcmVzc0l0ZW1XcmFwcGVyIHtcblx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCk7XG5cdFx0XHRcdFx0XHRcdHBhZGRpbmctdG9wOjFyZW07XG5cdFx0XHRcdFx0XHRcdHBhZGRpbmctYm90dG9tOjFyZW07XG5cdFx0XHRcdFx0XHRcdC5wcmVzc0ltYWdlQ29udGFpbmVyIHtcblx0XHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCl7XG5cdFx0XHRcdFx0XHRcdFx0XHRib3JkZXItYm90dG9tOjFweCBzb2xpZCAkb3UtbGlnaHQtZ3JheTtcblx0XHRcdFx0XHRcdFx0XHRcdHBhZGRpbmc6MHJlbSAxcmVtIDJyZW0gMHJlbSFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApe1xuXHRcdFx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oNCk7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpe1xuXHRcdFx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oNSk7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XG5cdFx0XHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMiwwKTtcblx0XHRcdFx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206MXJlbTtcblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdFx0LnByZXNzSW1hZ2Uge1xuXHRcdFx0XHRcdFx0XHRcdFx0bWluLWhlaWdodDoyMDBweDtcblx0XHRcdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlIHVwKXtcblx0XHRcdFx0XHRcdFx0XHRcdFx0bWluLWhlaWdodDoyNzBweDtcblx0XHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcblx0XHRcdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cdFx0XHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHQucHJlc3NEZXRhaWxzIHtcblx0XHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCl7XG5cdFx0XHRcdFx0XHRcdFx0XHRib3JkZXItYm90dG9tOjFweCBzb2xpZCAkb3UtbGlnaHQtZ3JheTtcblx0XHRcdFx0XHRcdFx0XHRcdHBhZGRpbmctYm90dG9tOjJyZW07XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApe1xuXHRcdFx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oOCk7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpe1xuXHRcdFx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oNyk7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XG5cdFx0XHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG5cdFx0XHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbi1jb2xsYXBzZTtcblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdFx0LnByZXNzT3JnRGF0ZUNvbnRhaW5lciB7XG5cdFx0XHRcdFx0XHRcdFx0XHRmb250LWZhbWlseTonYmViYXNfbmV1ZWJvbGQnLCdzYW5zLXNlcmlmJztcblx0XHRcdFx0XHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcblx0XHRcdFx0XHRcdFx0XHRcdGxldHRlci1zcGFjaW5nOjAuMXJlbTtcblx0XHRcdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtcm93O1xuXHRcdFx0XHRcdFx0XHRcdFx0LnByZXNzT3JnIHtcblx0XHRcdFx0XHRcdFx0XHRcdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdHRleHQtYWxpZ246Y2VudGVyO1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiRvdWFnLXllbGxvdztcblx0XHRcdFx0XHRcdFx0XHRcdFx0cGFkZGluZzowLjE1cmVtIDFyZW07XG5cdFx0XHRcdFx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDowLjVyZW07XG5cdFx0XHRcdFx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206MC40NXJlbTtcblxuXHRcdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRcdFx0LnByZXNzRGF0ZSB7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiRvdS1tZWRpdW0tZ3JheTtcblx0XHRcdFx0XHRcdFx0XHRcdFx0dGV4dC1hbGlnbjpjZW50ZXI7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdHBhZGRpbmc6MC4xNXJlbSAxcmVtO1xuXHRcdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0XHRcdC5wcmVzc1RpdGxlIHtcblx0XHRcdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtcm93O1xuXHRcdFx0XHRcdFx0XHRcdFx0bWFyZ2luOjAuNXJlbSAwO1xuXHRcdFx0XHRcdFx0XHRcdFx0aDMge1xuXHRcdFx0XHRcdFx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblx0XHRcdFx0XHRcdFx0XHRcdFx0Y29sb3I6JG91LWRhcmtHcmF5O1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRmb250LWZhbWlseToncm9ib3RvcmVndWxhcicsJ3NhbnMtc2VyaWYnO1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRmb250LXNpemU6MS4yNXJlbTtcblx0XHRcdFx0XHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6MS4yO1xuXHRcdFx0XHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRcdC5wcmVzc0Rlc2NyaXB0aW9uIHtcblx0XHRcdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtcm93O1xuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHQucHJlc3NMaW5rIHtcblx0XHRcdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtcm93O1xuXHRcdFx0XHRcdFx0XHRcdFx0LmJ1dHRvbntcblx0XHRcdFx0XHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbToycmVtO1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbCBvbmx5KXtcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOjFyZW07XG5cdFx0XHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQucHJlc3NJdGVtMntcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XG5cdFx0XHRcdFx0XHRcdGJvcmRlci10b3A6MXB4IHNvbGlkICNjM2MzYzM7XG5cdFx0XHRcdFx0XHRcdGJvcmRlci1ib3R0b206MXB4IHNvbGlkICNjM2MzYzM7XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fSAvKiBFbmQgTWFpbiBFeGhpYml0aW9uIFN0eWxlcyAqL1xuXG5cdC8qIFN0eWxlcyBmb3IgT05MWSB0aGUgQ3VycmVudCBFeGhpYml0aW9uICovXG5cdCNjdXJyZW50RXhoaWJpdGlvbiB7XG5cdFx0LmZlYXR1cmVkLWhlcm8ge1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCl7XG5cdFx0XHRcdG1pbi1oZWlnaHQ6NDByZW07XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdC8qIFN0eWxlcyBmb3IgQ3VycmVudC9VcGNvbWluZyBFeGhpYml0aW9uIFBhZ2UgKi9cblx0LmN1cnJlbnRVcGNvbWluZ0V4aGliaXRpb24ge1xuXHRcdC5mZWF0dXJlZC1oZXJvIHtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XG5cdFx0XHRcdG1pbi1oZWlnaHQ6MThyZW07XG5cdFx0XHR9XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCl7XG5cdFx0XHRcdG1pbi1oZWlnaHQ6MjByZW07XG5cdFx0XHR9XG5cdFx0XHQucGFnZVRpdGxlQ29udGFpbmVyIHtcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KXtcblx0XHRcdFx0XHRwb3NpdGlvbjpyZWxhdGl2ZTtcblx0XHRcdFx0fVxuXHRcdFx0XHRkaXNwbGF5OnRhYmxlO1xuXHRcdFx0XHR3aWR0aDoxMDAlO1xuXHRcdFx0XHRoZWlnaHQ6MTAwJTtcblx0XHRcdFx0LnBhZ2VUaXRsZSB7XG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KXtcblx0XHRcdFx0XHRcdHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdFx0XHRcdFx0Ym90dG9tOjAlO1xuXHRcdFx0XHRcdFx0d2lkdGg6MTAwJTtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtcm93O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCl7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OnRhYmxlLWNlbGw7XG5cdFx0XHRcdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1yb3c7XG5cblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0LnRpdGxlQ29udGFpbmVyIHtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApe1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbig2KTtcdFxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbig4KTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbi1wb3NpdGlvbihjZW50ZXIpO1xuXHRcdFx0XHRcdFx0dGV4dC1hbGlnbjpsZWZ0O1xuXG5cdFx0XHRcdFx0XHQuZW50cnlDYXRlZ29yeUNvbnRhaW5lciB7XG5cdFx0XHRcdFx0XHRcdHdpZHRoOjEwMCU7XG5cblx0XHRcdFx0XHRcdFx0LmNhdGVnb3J5e1xuXG5cdFx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiRvdWFnLXllbGxvdztcblx0XHRcdFx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG5cdFx0XHRcdFx0XHRcdFx0Zm9udC1mYW1pbHk6J2JlYmFzX25ldWVib2xkJywnc2Fucy1zZXJpZic7XG5cdFx0XHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6MTtcblx0XHRcdFx0XHRcdFx0XHRwYWRkaW5nOjAuMjVyZW0gMXJlbTtcblx0XHRcdFx0XHRcdFx0XHRkaXNwbGF5OmlubGluZS1ibG9jaztcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0LmVudHJ5VGl0bGUge1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6I2ZmZjtcblx0XHRcdFx0XHRcdFx0dGV4dC1hbGlnbjpjZW50ZXI7XG5cdFx0XHRcdFx0XHRcdG1hcmdpbjowIGF1dG87XG5cdFx0XHRcdFx0XHRcdGNvbG9yOiRvdS1kYXJrR3JheTtcblx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOjRyZW07XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcblx0XHRcdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6MC41cmVtO1xuXHRcdFx0XHRcdFx0XHRcdHRleHQtYWxpZ246bGVmdDtcblx0XHRcdFx0XHRcdFx0XHRmb250LXNpemU6Mi4yNXJlbTtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRsaW5lLWhlaWdodDowLjg7XG5cdFx0XHRcdFx0XHRcdHBhZGRpbmc6MC41cmVtIDFyZW0gMC4yNXJlbSAxcmVtO1xuXG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHQuZW50cnlEYXRlIHtcblx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7XG5cdFx0XHRcdFx0XHRcdHRleHQtYWxpZ246Y2VudGVyO1xuXHRcdFx0XHRcdFx0XHRwYWRkaW5nLWJvdHRvbTowLjc1cmVtO1xuXHRcdFx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG5cdFx0XHRcdFx0XHRcdGZvbnQtZmFtaWx5OidiZWJhc19uZXVlYm9sZCcsJ3NhbnMtc2VyaWYnO1xuXHRcdFx0XHRcdFx0XHRjb2xvcjokb3UtZ29sZDtcblx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOjJyZW07XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSBkb3duKXtcblx0XHRcdFx0XHRcdFx0XHRmb250LXNpemU6MS41cmVtO1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpe1xuXHRcdFx0XHRcdFx0XHRcdHRleHQtYWxpZ246bGVmdDtcblxuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OjAuOTtcblx0XHRcdFx0XHRcdFx0cGFkZGluZy10b3A6MC4yNXJlbTtcblx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSl7XG5cdFx0XHRcdFx0XHRcdFx0cGFkZGluZy1ib3R0b206MC4yNXJlbTtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRzcGFuIHtcblx0XHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpe1xuXHRcdFx0XHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAycmVtO1xuXHRcdFx0XHRcdFx0XHRcdFx0dGV4dC1pbmRlbnQ6IC0xLjhyZW07XG5cdFx0XHRcdFx0XHRcdFx0XHRsaW5lLWhlaWdodDowLjk7XG5cdFx0XHRcdFx0XHRcdFx0XHRjb2xvcjokb3UtZGFya0dyYXk7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHRcdFx0XHRsaW5lLWhlaWdodDowLjU7XG5cdFx0XHRcdFx0XHRcdFx0aW1nIHtcblx0XHRcdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpe1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRtYXgtd2lkdGg6MjZweDtcblx0XHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpe1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRtYXgtd2lkdGg6MjlweDtcblx0XHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApe1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRtYXgtd2lkdGg6MzNweDtcblx0XHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHRcdGhlaWdodDphdXRvO1xuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVx0XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdH1cblxuXHRcdFx0JiNtYWluUGFnZUhlYWRlciB7XG5cdFx0XHRcdGgxLmVudHJ5VGl0bGUge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTozcmVtO1xuXHRcdFx0XHRcdHBhZGRpbmctdG9wOjAuNXJlbTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5tYWluLWNvbnRhaW5lciB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gdXApe1xuXHRcdFx0XHRtYXJnaW4tdG9wOi02cmVtO1xuXHRcdFx0fVxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjojZmZmO1xuXHRcdFx0Lm1haW4tZ3JpZCB7XG5cdFx0XHRcdHBhZGRpbmctdG9wOjJyZW07XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XG5cdFx0XHRcdFx0cGFkZGluZy10b3A6MXJlbTtcblx0XHRcdFx0XHRtYXJnaW4tdG9wOjFyZW07XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblx0XG5cblx0LyogVVBDT01JTkcgRVhISUJJVElPTlMgUEFHRSAqL1xuXHQjdXBjb21pbmdFeGhpYml0aW9ucyB7XG5cdFx0Lm1haW4tZ3JpZCB7XG5cdFx0XHRtYXJnaW4tdG9wOjRyZW07XG5cdFx0fVxuXG5cdFx0Lm1haW4tY29udGVudCB7XG5cdFx0XHR3aWR0aDoxMDAlO1xuXHRcdFx0bWF4LXdpZHRoOjcwcmVtO1xuXHRcdFx0Lmxpc3RpbmdDb250YWluZXIge1xuXHRcdFx0IFx0QGluY2x1ZGUgZ3JpZC1yb3c7XG5cdFx0XHRcdC5pbWFnZSB7XG5cdFx0XHRcdFx0bWluLWhlaWdodDoyMDBweDtcblx0XHRcdFx0XHR3aWR0aDphdXRvO1xuXHRcdFx0XHRcdGJhY2tncm91bmQtc2l6ZTpjb3Zlcjtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlcjtcblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG5cdFx0XHRcdFx0XHRtaW4taGVpZ2h0OjQ3MHB4O1xuXHRcdFx0XHRcdH0gXHRcdFx0XHRcdFxuXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuXHRcdFx0XHRcdFx0bWluLWhlaWdodDo1NjBweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0LmRldGFpbHMge1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCl7XG5cdFx0XHRcdFx0XHRwYWRkaW5nOjNyZW0haW1wb3J0YW50O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KXtcblx0XHRcdFx0XHRcdHBhZGRpbmc6MS41cmVtIWltcG9ydGFudDtcblx0XHRcdFx0XHR9XHRcblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcblx0XHRcdFx0XHRcdHBhZGRpbmctbGVmdDppbmhlcml0IWltcG9ydGFudDtcblx0XHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6aW5oZXJpdCFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0XHRwYWRkaW5nLXRvcDoxLjVyZW07XG5cdFx0XHRcdFx0XHRwYWRkaW5nLWJvdHRvbToxLjVyZW07XHRcdFxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRkaXNwbGF5OnRhYmxlO1xuXHRcdFx0XHRcdC52YWxpZ24ge1xuXHRcdFx0XHRcdFx0ZGlzcGxheTp0YWJsZS1jZWxsO1xuXHRcdFx0XHRcdFx0dmVydGljYWwtYWxpZ246bWlkZGxlO1xuXHRcdCBcdFx0XHRcdC5kYXRlQ29udGFpbmVye1xuXHRcdCBcdFx0XHRcdFx0d2lkdGg6MTAwJTtcblx0XHRcdCBcdFx0XHRcdC5kYXRle1xuXHRcdFx0IFx0XHRcdFx0XHRmb250LXNpemU6MS41cmVtO1xuXHRcdFx0XHRcdCBcdFx0XHRsaW5lLWhlaWdodDowLjg7XG5cdFx0XHRcdFx0IFx0XHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdCBcdFx0XHRwYWRkaW5nLWxlZnQ6IDIuMnJlbTtcblx0XHRcdFx0XHRcdFx0XHR0ZXh0LWluZGVudDogLTEuOXJlbTtcblx0XHRcdFx0XHRcdFx0XHR3aWR0aDoxMDAlO1xuXHRcdFx0XHRcdCBcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKXtcblx0XHRcdFx0XHQgXHRcdFx0XHRmb250LXNpemU6MS40cmVtO1xuXHRcdFx0XHRcdCBcdFx0XHR9XG5cdFx0XHRcdCBcdFx0XHRcdC5jYWxlbmRhckljb24ge1xuXHRcdFx0IFx0XHRcdFx0XHRcdG1heC13aWR0aDoyM3B4O1xuXHRcdFx0IFx0XHRcdFx0XHRcdGhlaWdodDphdXRvO1xuXHRcdFx0IFx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDowLjVyZW07XG5cdFx0XHRcdCBcdFx0XHRcdH1cblx0XHRcdCBcdFx0XHRcdH1cblx0XHQgXHRcdFx0XHR9XG5cblx0XHQgXHRcdFx0XHRhIHtcblx0XHQgXHRcdFx0XHRcdC50aXRsZSB7XG5cdFx0IFx0XHRcdFx0XHRcdCY6aG92ZXIsICY6Zm9jdXMge1xuXHRcdCBcdFx0XHRcdFx0XHRcdGNvbG9yOiRvdS1nb2xkO1xuXHRcdCBcdFx0XHRcdFx0XHR9XG5cdFx0IFx0XHRcdFx0XHR9XG5cdFx0IFx0XHRcdFx0fVxuXHRcdCBcdFx0XHRcdC50aXRsZSB7XG5cdFx0IFx0XHRcdFx0XHRmb250LXNpemU6M3JlbTtcblx0XHQgXHRcdFx0XHRcdGNvbG9yOiRvdS1kYXJrR3JheTtcblx0XHQgXHRcdFx0XHRcdGxpbmUtaGVpZ2h0OjAuODtcblx0XHQgXHRcdFx0XHRcdHBhZGRpbmc6MC4xNXJlbSAwcmVtIDAuNXJlbSAwcmVtO1xuXHRcdCBcdFx0XHRcdH1cblx0XHQgXHRcdFx0XHQuZGVzY3JpcHRpb24ge1xuXHRcdCBcdFx0XHRcdFx0bGluZS1oZWlnaHQ6MS40O1xuXHRcdCBcdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuXHRcdCBcdFx0XHRcdFx0XHRmb250LXNpemU6MC45cmVtO1xuXHRcdCBcdFx0XHRcdFx0fVxuXHRcdCBcdFx0XHRcdH1cblx0XHQgXHRcdFx0XHQuc2hvd01vcmVJbmZve1xuXHRcdCBcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjokb3VhZy15ZWxsb3c7XG5cdFx0IFx0XHRcdFx0XHRjb2xvcjokb3UtZGFya0dyYXk7XG5cdFx0IFx0XHRcdFx0XHQmOmhvdmVyLCAmOmZvY3VzIHtcblx0XHRcdCBcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjokb3UtZGFya0dyYXk7XG5cdFx0XHQgXHRcdFx0XHRcdGNvbG9yOiNmZmY7XG5cdFx0XHQgXHRcdFx0XHR9XG5cdFx0IFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQmIC5ldmVuIHtcblx0XHRcdFx0LmRldGFpbHMge1xuXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuXHRcdFx0XHRcdFx0LyptYXJnaW4tdG9wOiAtM3JlbTtcblx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAtMXJlbTtcblx0XHRcdFx0XHRcdGZsb2F0OmxlZnQhaW1wb3J0YW50OyovXG5cblx0XHRcdFx0XHR9XHQgXHRcdFx0XHRcblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4tcG9zaXRpb24oLTYpO1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oNik7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdC5pbWFnZSB7XG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KXtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKDYpO1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oNik7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdH1cblx0XHRcdCYgLm9kZCB7XG5cdFx0XHRcdC5kZXRhaWxzIHtcblx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDYpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpe1xuXHRcdFx0XHRcdFx0LyptYXJnaW4tdG9wOiAtM3JlbTtcblx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDogLTFyZW07Ki9cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0LmltYWdle1xuXHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oNik7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdH1cblx0XHR9XG5cdH0vKiBFbmQgVXBjb21pbmcgRXhoaWJpdGlvbnMgKi9cblxuXHQvKiBHQUxMRVJZIEVWRU5UUyBDQVRFR09SWSBQQUdFICovXG5cdCNnYWxsZXJ5RXZlbnRzIHtcblx0XHQubWFpbi1ncmlkIHtcblx0XHRcdC5ldmVudFJvdyB7XG5cdFx0XHRcdEBpbmNsdWRlIGdyaWQtcm93O1xuXHRcdFx0XHRtYXgtd2lkdGg6NjByZW07XG5cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApe1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206NHJlbTtcblx0XHRcdFx0fVxuXHRcdFx0XHQuZXZlbnRDb250YWluZXIge1xuXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG5cdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOjJyZW07XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKXtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDYsIDcwKTtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQuaW1hZ2VDb250YWluZXIge1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1yb3c7XG5cdFx0XHRcdFx0XHQuaW1hZ2Uge1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG5cdFx0XHRcdFx0XHRcdG1pbi1oZWlnaHQ6IDIwMHB4O1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0LmNhdGVnb3J5RGF0ZUNvbnRhaW5lciB7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLXJvdztcblx0XHRcdFx0XHRcdG1hcmdpbi10b3A6MXJlbTtcblx0XHRcdFx0XHRcdC5jYXRlZ29yeSB7XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApe1xuXHRcdFx0XHRcdFx0XHQgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMywgMCk7XHRcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG5cdFx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oNCwgMCk7XHRcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdFx0cG9zaXRpb246cmVsYXRpdmU7XG5cdFx0XHRcdFx0XHRcdHNwYW4ge1xuXHRcdFx0XHRcdFx0XHRcdHBhZGRpbmc6MC41cmVtIDAuNzVyZW07XG5cdFx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSl7XG5cdFx0XHRcdFx0XHRcdFx0XHRwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0XHRcdFx0cG9zaXRpb246YWJzb2x1dGU7XG5cdFx0XHRcdFx0XHRcdFx0Ym90dG9tOjA7XG5cdFx0XHRcdFx0XHRcdFx0bGVmdDowO1xuXHRcdFx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OjAuOTtcblx0XHRcdFx0XHRcdFx0XHRmb250LWZhbWlseTonYmViYXNfbmV1ZWJvbGQnLCdzYW5zLXNlcmlmJztcblx0XHRcdFx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XG5cdFx0XHRcdFx0XHRcdFx0XHRmb250LXNpemU6MC45cmVtO1xuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0JiAuYXJ0aXN0TGVjdHVyZSB7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6JG91YWcteWVsbG93O1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0JiAuZmlsbVNjcmVlbmluZyB7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6JG91YWctcmVkO1xuXHRcdFx0XHRcdFx0XHRjb2xvcjojZmZmO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0JiAub3BlbmluZ1JlY2VwdGlvbiB7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6JG91YWctYmx1ZTtcblx0XHRcdFx0XHRcdFx0Y29sb3I6I2ZmZjtcblx0XHRcdFx0XHRcdH1cdFxuXHRcdFx0XHRcdFx0LmRhdGVDb250YWluZXIge1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKXtcblx0XHRcdFx0XHRcdFx0IEBpbmNsdWRlIGdyaWQtY29sdW1uKDkpO1x0XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuXHRcdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDgpO1x0XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0LmRhdGUge1xuXHRcdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygwKTtcblx0XHRcdFx0XHRcdFx0XHRoMyB7XG5cdFx0XHRcdFx0XHRcdFx0XHRsaW5lLWhlaWdodDogMC45O1xuXHRcdFx0XHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTowcHg7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdC50aW1lIHtcblx0XHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coMCk7XG5cdFx0XHRcdFx0XHRcdFx0Y29sb3I6JG91LWdvbGQ7XG5cdFx0XHRcdFx0XHRcdFx0dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xuXHRcdFx0XHRcdFx0XHRcdGZvbnQtZmFtaWx5OidiZWJhc19uZXVlYm9vaycsJ3NhbnMtc2VyaWYnO1xuXHRcdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMS43NXJlbTtcblx0XHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpe1xuXHRcdFx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOjEuMjVyZW07XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiAwLjk7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQuZXZlbnRUaXRsZUNvbnRhaW5lciB7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLXJvdyhuZXN0KTtcblx0XHRcdFx0XHRcdC5ldmVudFRpdGxlIHtcblx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIsIDApO1xuXHRcdFx0XHRcdFx0XHRmb250LWZhbWlseToncm9ib3RvcmVndWxhcicsJ3NhbnMtc2VyaWYnO1xuXHRcdFx0XHRcdFx0XHRsaW5lLWhlaWdodDoxLjE7XG5cdFx0XHRcdFx0XHRcdGNvbG9yOiMwMDA7XG5cdFx0XHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOm5vbmU7XG5cdFx0XHRcdFx0XHRcdG1hcmdpbi10b3A6IDEuNXJlbTtcblx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOiAxLjc1cmVtO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdC5ldmVudERlc2NyaXB0aW9uQ29udGFpbmVyIHtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtcm93O1xuXG5cdFx0XHRcdFx0XHQuZXZlbnREZXNjcmlwdGlvbiB7XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyLDApO1xuXHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHQubW9yZUluZm8ge1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMiwwKTtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLXRvcDowLjVyZW07XG5cdFx0XHRcdFx0XHRcdGZvbnQtZmFtaWx5Oidyb2JvdG9ib2xkJywnc2Fucy1zZXJpZic7XG5cdFx0XHRcdFx0XHRcdHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9LyogZW5kIGdhbGxlcnkgZXZlbnRzIGNhdGVnb3J5IHBhZ2UgKi9cblxuXHQvKiBTVEFSVCBQVUJMSUNBVElPTlMgUEFHRSAqL1xuXHQjcHVibGljYXRpb25zIHtcblx0XHRtYXgtd2lkdGg6NzByZW07XG5cdFx0Lm1haW4tZ3JpZCB7XG5cdFx0XHRtYXJnaW4tdG9wOjByZW07XG5cdFx0XHRwYWRkaW5nLXRvcDoycmVtO1xuXG5cdFx0XHQucHVibGljYXRpb25zTGlzdEludHJvVGV4dENvbnRhaW5lcntcblx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1yb3c7XG5cdFx0XHRcdC5wdWJsaWNhdGlvbnNMaXN0SW50cm9UZXh0IHtcblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCl7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMiwwKTtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKGNlbnRlcik7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMiwwKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0aDIge1xuXHRcdFx0XHRcdFx0Zm9udC1zaXplOjEuNzVyZW07XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdHAge1xuXHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6MS4zO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQucHVibGljYXRpb25zTGlzdHtcblx0XHRcdFx0Ym9yZGVyLXRvcDoxcHggc29saWQgJG91LWxpZ2h0LWdyYXk7XG5cdFx0XHRcdHBhZGRpbmctdG9wOjNyZW07XG5cdFx0XHRcdC5wdWJsaWNhdGlvblJvdyB7XG5cdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1yb3c7XG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCl7XG5cdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOjJyZW07XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdC5wdWJsaWNhdGlvbkNvbnRhaW5lciB7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKXtcblx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIsMCk7XG5cdFx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206MnJlbTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApe1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbig2LCAwKTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdC5wdWJsaWNhdGlvbiB7XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtcm93O1xuXHRcdFx0XHRcdFx0XHQuaW1hZ2VDb250YWluZXIge1xuXHRcdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XG5cdFx0XHRcdFx0XHRcdFx0XHRtYXgtd2lkdGg6MjYwcHg7XG5cdFx0XHRcdFx0XHRcdFx0XHRoZWlnaHQ6YXV0bztcblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSl7XG5cdFx0XHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbig0KTtcblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCl7XG5cdFx0XHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbig2KTtcblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pe1xuXHRcdFx0XHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OjBweDtcblx0XHRcdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdFx0XHQuaW1hZ2Uge1xuXHRcdFx0XHRcdFx0XHRcdFx0bWluLWhlaWdodDogMzYwcHg7XG5cdFx0XHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpe1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRtaW4taGVpZ2h0OjM1MHB4O1xuXHRcdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuXHRcdFx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcblx0XHRcdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdFx0LnB1YmxpY2F0aW9uRGV0YWlsc0NvbnRhaW5lciB7XG5cdFx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KXtcblx0XHRcdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyLDApO1xuXHRcdFx0XHRcdFx0XHRcdH1cdFx0XHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSl7XG5cdFx0XHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbig4KTtcblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCl7XG5cdFx0XHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbig2KTtcblx0XHRcdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdFx0XHQucHVibGljYXRpb25UaXRsZSB7XG5cdFx0XHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpe1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRtYXJnaW4tdG9wOjEuNXJlbTtcblx0XHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygwKTtcblx0XHRcdFx0XHRcdFx0XHRcdGgyIHtcblx0XHRcdFx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOjEuNDVyZW07XG5cdFx0XHRcdFx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OjAuOTtcblx0XHRcdFx0XHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTowLjJyZW07XG5cdFx0XHRcdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdFx0LnB1YmxpY2F0aW9uWWVhciB7XG5cdFx0XHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coMCk7XG5cdFx0XHRcdFx0XHRcdFx0XHRmb250LWZhbWlseTonYmViYXNfbmV1ZXJlZ3VsYXInLCdzYW5zLXNlcmlmJztcblx0XHRcdFx0XHRcdFx0XHRcdGNvbG9yOiRvdS1tZWRpdW0tZ3JheTI7XG5cdFx0XHRcdFx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG5cdFx0XHRcdFx0XHRcdFx0XHRmb250LXNpemU6MS4ycmVtO1xuXHRcdFx0XHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6MTtcblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdFx0LnB1YmxpY2F0aW9uQXV0aG9yIHtcblx0XHRcdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygwKTtcblx0XHRcdFx0XHRcdFx0XHRcdGZvbnQtZmFtaWx5OidiZWJhc19uZXVlcmVndWxhcicsJ3NhbnMtc2VyaWYnO1xuXHRcdFx0XHRcdFx0XHRcdFx0Y29sb3I6JG91LW1lZGl1bS1ncmF5Mjtcblx0XHRcdFx0XHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcblx0XHRcdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZToxLjJyZW07XG5cdFx0XHRcdFx0XHRcdFx0XHRsaW5lLWhlaWdodDoxO1xuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHQucHVibGljYXRpb25MZW5ndGgge1xuXHRcdFx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KDApO1xuXHRcdFx0XHRcdFx0XHRcdFx0Zm9udC1mYW1pbHk6J3JvYm90b2l0YWxpYycsJ3NhbnMtc2VyaWYnO1xuXHRcdFx0XHRcdFx0XHRcdFx0bWFyZ2luOjAuNzVyZW0gMDtcblx0XHRcdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTowLjk1cmVtO1xuXHRcdFx0XHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6MC45O1xuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHQucHVibGljYXRpb25EZXNjcmlwdGlvbiB7XG5cdFx0XHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coMCk7XG5cdFx0XHRcdFx0XHRcdFx0XHRmb250LXNpemU6MC45cmVtO1xuXHRcdFx0XHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6MS4yO1xuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHQucHVibGljYXRpb25QcmljZSB7XG5cdFx0XHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coMCk7XG5cdFx0XHRcdFx0XHRcdFx0XHRmb250LWZhbWlseToncm9ib3RvYm9sZCcsJ3NhbnMtc2VyaWYnO1xuXHRcdFx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOjFyZW07XG5cdFx0XHRcdFx0XHRcdFx0XHRsaW5lLWhlaWdodDoxLjE7XG5cdFx0XHRcdFx0XHRcdFx0XHRtYXJnaW46MC41cmVtIDA7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0XHQuZXZlbnRUaXRsZUNvbnRhaW5lciB7XG5cdFx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1yb3cobmVzdCk7XG5cdFx0XHRcdFx0XHRcdFx0LmV2ZW50VGl0bGUge1xuXHRcdFx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIsIDApO1xuXHRcdFx0XHRcdFx0XHRcdFx0Zm9udC1mYW1pbHk6J3JvYm90b3JlZ3VsYXInLCdzYW5zLXNlcmlmJztcblx0XHRcdFx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OjE7XG5cdFx0XHRcdFx0XHRcdFx0XHRjb2xvcjojMDAwO1xuXHRcdFx0XHRcdFx0XHRcdFx0dGV4dC10cmFuc2Zvcm06bm9uZTtcblx0XHRcdFx0XHRcdFx0XHRcdG1hcmdpbi10b3A6IDEuNXJlbTtcblx0XHRcdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMS43NXJlbTtcblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0XHQuZXZlbnREZXNjcmlwdGlvbkNvbnRhaW5lciB7XG5cdFx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1yb3c7XG5cblx0XHRcdFx0XHRcdFx0XHQuZXZlbnREZXNjcmlwdGlvbiB7XG5cdFx0XHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMiwwKTtcblx0XHRcdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdFx0XHQubW9yZUluZm8ge1xuXHRcdFx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIsMCk7XG5cdFx0XHRcdFx0XHRcdFx0XHRtYXJnaW4tdG9wOjAuNXJlbTtcblx0XHRcdFx0XHRcdFx0XHRcdGZvbnQtZmFtaWx5Oidyb2JvdG9ib2xkJywnc2Fucy1zZXJpZic7XG5cdFx0XHRcdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO1xuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQucHVibGljYXRpb25Db250YWluZXI6bnRoLWNoaWxkKG9kZCkge1xuXHRcdFx0XHRcdFx0LmltYWdlQ29udGFpbmVyIHtcblx0XHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OjBweDtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH0vKiBlbmQgcHVibGljYXRpb25zIGxpc3QqL1xuXG5cblx0LyogUEFTVCBFWEhJQklUSU9OIFNJTkdMRSBQQUdFIFRFTVBMQVRFICovXG5cdC5wYXN0RXhoaWJpdGlvbiB7XG5cdFx0LmZlYXR1cmVkLWhlcm8ge1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KXtcblx0XHRcdFx0bWluLWhlaWdodDoyNXJlbTtcblx0XHRcdH1cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKXtcblx0XHRcdFx0bWluLWhlaWdodDoyMHJlbTtcblx0XHRcdH1cblx0XHR9XG5cdFx0LnBhZ2VUaXRsZUNvbnRhaW5lciB7IFxuXHRcdFx0LnBhZ2VUaXRsZSB7XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XG5cdFx0XHRcdFx0Ym90dG9tOjAhaW1wb3J0YW50O1xuXHRcdFx0XHR9XG5cdFx0XHRcdC5lbnRyeVRpdGxlIHtcblx0XHRcdFx0XHRmb250LXNpemU6My4yNXJlbSFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0cGFkZGluZy1ib3R0b206MXJlbTtcblx0XHRcdFx0XHRkaXNwbGF5OmJsb2NrIWltcG9ydGFudDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHQucGFzdEV4aGliaXRpb25zQnV0dG9uIHtcblx0XHRcdG1pbi13aWR0aDoxMDAlO1xuXHRcdFx0dGV4dC1hbGlnbjpjZW50ZXI7XG5cdFx0XHRtYXJnaW4tdG9wOjRyZW07XG5cdFx0XHQuYnV0dG9uIHtcblx0XHRcdH1cblx0XHR9XG5cdFx0LmJvdHRvbUhvdXJzIHtcblx0XHRcdGRpc3BsYXk6bm9uZTtcblx0XHR9XG5cdH0gLyogZW5kIHBhc3QgZXhoaWJpdGlvbiBzaW5nbGUgcGFnZSAqL1xuXG5cdC8qIFBBU1QgRVhISUJJVElPTiBDQVRFR09SWSBMSVNUSU5HIFBBR0UgKi9cblx0I3Bhc3RFeGhpYml0aW9ucyB7XG5cdFx0Lm1haW4tZ3JpZCB7XG5cdFx0XHQuZW50cnlSb3cge1xuXHRcdFx0XHRAaW5jbHVkZSBncmlkLXJvdztcblxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCl7XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTo0cmVtO1xuXHRcdFx0XHR9XG5cdFx0XHRcdC5lbnRyeUNvbnRhaW5lciB7XG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bil7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG5cdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOjRyZW07XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApe1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oNCwgNTApO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdC5pbWFnZUNvbnRhaW5lciB7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLXJvdztcblx0XHRcdFx0XHRcdC5pbWFnZSB7XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcblxuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKXtcblx0XHRcdFx0XHRcdFx0XHRtaW4taGVpZ2h0OiAyMDBweDtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKXtcdFx0XHRcblx0XHRcdFx0XHRcdFx0XHRtaW4taGVpZ2h0OjI1MHB4O1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQudGl0bGVDb250YWluZXIge1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1yb3cobmVzdCk7XG5cdFx0XHRcdFx0XHQudGl0bGUge1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMiwgMCk7XG5cdFx0XHRcdFx0XHRcdGZvbnQtZmFtaWx5Oidyb2JvdG9yZWd1bGFyJywnc2Fucy1zZXJpZic7XG5cdFx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OjE7XG5cdFx0XHRcdFx0XHRcdGNvbG9yOiMwMDA7XG5cdFx0XHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOm5vbmU7XG5cdFx0XHRcdFx0XHRcdG1hcmdpbi10b3A6IDAuNzVyZW07XG5cdFx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206MC4yNXJlbTtcblx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOiAxLjc1cmVtO1xuXHRcdFx0XHRcdFx0XHRsZXR0ZXItc3BhY2luZzogMC4wMXJlbTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQuZGF0ZUNvbnRhaW5lciB7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLXJvdztcblx0XHRcdFx0XHRcdG1hcmdpbi10b3A6MC4yNXJlbTtcblxuXHRcdFx0XHRcdFx0LmRhdGUge1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coMCk7XG5cdFx0XHRcdFx0XHRcdGgzIHtcblx0XHRcdFx0XHRcdFx0XHRmb250LWZhbWlseToncm9ib3RvaXRhbGljJywnc2Fucy1zZXJpZic7XG5cdFx0XHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDAuOTtcblx0XHRcdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOjFyZW07XG5cdFx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOjEuMTVyZW07XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdC5kZXNjcmlwdGlvbkNvbnRhaW5lciB7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLXJvdztcblxuXHRcdFx0XHRcdFx0LmV2ZW50RGVzY3JpcHRpb24ge1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMiwwKTtcblx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOjAuOTJyZW07XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdCYuZW5kIHtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uLWVuZDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdH1cblx0fSAvKiBlbmQgcGFzdCBleGhpYml0aW9ucyBjYXRlZ29yeSBwYWdlICovXG5cblxuXHQvKiBQUkVTUyBDQVRFR09SWSBQQUdFICovXG5cdCNwcmVzcyB7XG5cdFx0Lm1haW4tZ3JpZCB7XG5cdFx0XHQuZW50cnlSb3cge1xuXHRcdFx0XHRAaW5jbHVkZSBncmlkLXJvdztcblxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKXtcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOjRyZW07XG5cdFx0XHRcdH1cblx0XHRcdFx0LmVudHJ5Q29udGFpbmVyIHtcblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKXtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcblx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206MnJlbTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCl7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbig0KTtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQuaW1hZ2VDb250YWluZXIge1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1yb3c7XG5cdFx0XHRcdFx0XHQuaW1hZ2Uge1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApe1xuXHRcdFx0XHRcdFx0XHRcdG1pbi1oZWlnaHQ6IDIwMHB4O1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pe1xuXHRcdFx0XHRcdFx0XHRcdG1pbi1oZWlnaHQ6MjUwcHg7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdC5vcmdDb250YWluZXIge1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1yb3c7XG5cdFx0XHRcdFx0XHRtYXJnaW4tdG9wOjAuNzVyZW07XG5cdFx0XHRcdFx0XHQub3JnIHtcblx0XHRcdFx0XHRcdFx0d2lkdGg6YXV0bztcblx0XHRcdFx0XHRcdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6JG91YWcteWVsbG93O1xuXG5cdFx0XHRcdFx0XHRcdGgzIHtcblx0XHRcdFx0XHRcdFx0XHRmb250LWZhbWlseTonYmViYXNfbmV1ZWJvbGQnLCdzYW5zLXNlcmlmJztcblx0XHRcdFx0XHRcdFx0XHRsaW5lLWhlaWdodDogMC45O1xuXHRcdFx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206MHJlbTtcblx0XHRcdFx0XHRcdFx0XHRsZXR0ZXItc3BhY2luZzowLjFyZW07XG5cdFx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOjFyZW07XG5cdFx0XHRcdFx0XHRcdFx0Y29sb3I6JG91LWRhcmtHcmF5O1xuXHRcdFx0XHRcdFx0XHRcdHBhZGRpbmc6MC4zNXJlbSAwLjVyZW07XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdC5kYXRlQ29udGFpbmVyIHtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtcm93O1xuXHRcdFx0XHRcdFx0bWFyZ2luLXRvcDowLjI1cmVtO1xuXG5cdFx0XHRcdFx0XHQuZGF0ZSB7XG5cdFx0XHRcdFx0XHRcdHdpZHRoOmF1dG87XG5cdFx0XHRcdFx0XHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiRvdS1tZWRpdW0tZ3JheTtcblx0XHRcdFx0XHRcdFx0aDMge1xuXHRcdFx0XHRcdFx0XHRcdGZvbnQtZmFtaWx5OidiZWJhc19uZXVlYm9sZCcsJ3NhbnMtc2VyaWYnO1xuXHRcdFx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiAwLjk7XG5cdFx0XHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTowcmVtO1xuXHRcdFx0XHRcdFx0XHRcdGxldHRlci1zcGFjaW5nOjAuMXJlbTtcblx0XHRcdFx0XHRcdFx0XHRmb250LXNpemU6MXJlbTtcblx0XHRcdFx0XHRcdFx0XHRjb2xvcjokb3UtZGFya0dyYXk7XG5cdFx0XHRcdFx0XHRcdFx0cGFkZGluZzowLjM1cmVtIDAuNXJlbTtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0LnRpdGxlQ29udGFpbmVyIHtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtcm93KG5lc3QpO1xuXHRcdFx0XHRcdFx0LnRpdGxlIHtcblx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIsIDApO1xuXHRcdFx0XHRcdFx0XHRmb250LWZhbWlseToncm9ib3RvcmVndWxhcicsJ3NhbnMtc2VyaWYnO1xuXHRcdFx0XHRcdFx0XHRsaW5lLWhlaWdodDoxLjI7XG5cdFx0XHRcdFx0XHRcdGNvbG9yOiMwMDA7XG5cdFx0XHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOm5vbmU7XG5cdFx0XHRcdFx0XHRcdG1hcmdpbi10b3A6IDAuNXJlbTtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbToxcmVtO1xuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6IDEuNDVyZW07XG5cdFx0XHRcdFx0XHRcdGxldHRlci1zcGFjaW5nOiAwLjAxcmVtO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdC5kZXNjcmlwdGlvbkNvbnRhaW5lciB7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLXJvdyhuZXN0KTtcblxuXHRcdFx0XHRcdFx0LmRlc2NyaXB0aW9uIHtcblx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIsMCk7XG5cdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTowLjkycmVtO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQucmVhZEFydGljbGVDb250YWluZXJ7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKXtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLXRvcDowLjVyZW07XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLXJvdygpO1xuXHRcdFx0XHRcdFx0LnJlYWRBcnRpY2xlIHtcblx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KXtcblx0XHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbig2KTtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG5cdFx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMyk7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCl7XG5cdFx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oNSk7XHRcdFx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uLWVuZDtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6MC44NXJlbTtcblx0XHRcdFx0XHRcdFx0bGV0dGVyLXNwYWNpbmc6MC4xcmVtO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQmLmVuZCB7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbi1lbmQ7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9IC8qIEVuZCBwcmVzcyBjYXRlZ29yeSBwYWdlICovXG5cblx0LyogU1RBUlQgVklTSVRPUiBJTkZPUk1BVElPTiBQQUdFICovXG5cdCN2aXNpdG9ySW5mb3JtYXRpb24ge1xuXHRcdHAge1xuXHRcdFx0Zm9udC1zaXplOiAwLjk1cmVtO1xuXHRcdFx0bGV0dGVyLXNwYWNpbmc6IDAuMDFyZW07XG5cdFx0fVxuXG5cdFx0LmVudHJ5Um93IHtcblx0XHRcdC5lbnRyeSB7XG5cdFx0XHRcdHBhZGRpbmctbGVmdDogNHJlbTtcblx0XHRcdFx0cGFkZGluZy1yaWdodDo0cmVtO1xuXHRcdFx0XHRtaW4taGVpZ2h0OjU3MHB4O1xuXHRcdFx0fVxuXHRcdFx0JjpmaXJzdC1vZi10eXBlIHtcblx0XHRcdFx0LmVudHJ5IHtcblx0XHRcdFx0XHRkaXNwbGF5OnRhYmxlO1xuXHRcdFx0XHRcdC5ob3Vyc0NvbnRhaW5lciB7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OnRhYmxlLWNlbGw7XG5cdFx0XHRcdFx0XHR2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmhvdXJzQ29udGFpbmVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6JG91YWcteWVsbG93O1xuXHRcdFx0LmhvdXJzSWNvbiB7XG5cdFx0XHRcdHRleHQtYWxpZ246Y2VudGVyO1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOjJyZW07XG5cdFx0XHR9XG5cdFx0XHQuaG91cnMge1xuXHRcdFx0XHRwYWRkaW5nOjA7XG5cdFx0XHRcdC50aXRsZUJsb2NrIHtcblx0XHRcdFx0XHRoMiB7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG5cdFx0XHRcdFx0XHRmb250LWZhbWlseTonYmViYXNfbmV1ZXJlZ3VsYXInLCdzYW5zLXNlcmlmJztcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0LmhlYWRpbmdCbG9jayB7XG5cdFx0XHRcdFx0aDMge1xuXG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0LnJlZ3VsYXJIb3VycyB7XG5cdFx0XHRcdFx0LmhvdXJCbG9jayB7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdC5zcGVjaWFsSG91cnMge1xuXHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtcm93KCk7XG5cdFx0XHRcdFx0LnNwZWNpYWxXcmFwcGVyIHtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKGNlbnRlcik7XG5cdFx0XHRcdFx0XHQuZGV0YWlsV3JhcHBlciB7XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtcm93KCk7XG5cdFx0XHRcdFx0XHRcdC5ob3VyQmxvY2sge1x0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcblx0XHRcdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOjByZW07XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0I2xvY2F0aW9uTWFwIHtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApe1xuXHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbi1wb3NpdGlvbig2KTtcblx0XHRcdH1cblx0XHRcdHBhZGRpbmc6MHB4IWltcG9ydGFudDtcblx0XHRcdC5nb29nbGUtbWFwcyB7XG5cdFx0ICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0ICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTsgLy8gVGhpcyBpcyB0aGUgYXNwZWN0IHJhdGlvXG5cdFx0ICAgICAgICBoZWlnaHQ6IDA7XG5cdFx0ICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXHRcdCAgICB9XG5cdFx0ICAgIC5nb29nbGUtbWFwcyBpZnJhbWUge1xuXHRcdCAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuXHRcdCAgICAgICAgdG9wOiAwO1xuXHRcdCAgICAgICAgbGVmdDogMDtcblx0XHQgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cdFx0ICAgICAgICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcblx0XHQgICAgfVxuXHRcdH1cblxuXHRcdCNsb2NhdGlvbkRldGFpbHMge1xuXHRcdFx0dGV4dC1hbGlnbjpjZW50ZXI7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKXtcblx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4tcG9zaXRpb24oLTYpO1xuXHRcdFx0fVxuXHRcdFx0Lmljb24ge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOjFyZW07XG5cdFx0XHR9XG5cdFx0XHRoMiB7XG5cdFx0XHRcdGZvbnQtZmFtaWx5OidiZWJhc19uZXVlcmVndWxhcicsJ3NhbnMtc2VyaWYnO1xuXHRcdFx0XHRmb250LXNpemU6My4yNXJlbTtcblx0XHRcdFx0bGluZS1oZWlnaHQ6MC45O1xuXHRcdFx0XHRtYXJnaW46MXJlbSAwO1xuXHRcdFx0fVxuXHRcdFx0LmFkZHJlc3Mge1xuXHRcdFx0XHRmb250LWZhbWlseTonYmViYXNfbmV1ZWJvbGQnLCdzYW5zLXNlcmlmJztcblx0XHRcdFx0dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMS4xO1xuXHRcdFx0XHRmb250LXNpemU6IDEuMXJlbTtcblx0XHRcdH1cblx0XHRcdHAge1xuXG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0I2Fib3V0T1VBRyB7XG5cdFx0XHRwOmZpcnN0LW9mLXR5cGUge1xuXHRcdFx0XHRmb250LXNpemU6MS4yNXJlbTtcblx0XHRcdH1cblx0XHR9XG5cdH0gLyogRW5kIFZpc2l0b3IgSW5mb3JtYXRpb24gcGFnZSAqL1xuXG5cdC8qIFNUQVJUIFJFU0VBUkNIIEFORCBMRUFSTiBQQUdFICovIFxuXG5cdCNyZXNlYXJjaEFuZExlYXJuIHtcblx0XHQuZW50cnlSb3c6bnRoLW9mLXR5cGUoZXZlbikge1xuXHRcdFx0LmltYWdlIHtcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApe1xuXHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKDYpO1x0XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0XHQuY29udGVudCB7XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKXtcblx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbi1wb3NpdGlvbigtNik7XHRcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5lbnRyeVJvdyB7XG5cdFx0XHQuaW1hZ2Uge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6Y292ZXI7XG5cdFx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246Y2VudGVyO1xuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oNik7XG5cdFx0XHRcdFx0bWluLWhlaWdodDo1NzBweDtcblx0XHRcdFx0fVxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KXtcblx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbig2KTtcblx0XHRcdFx0XHRtaW4taGVpZ2h0OjQ2NXB4O1xuXHRcdFx0XHR9XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XG5cdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuXHRcdFx0XHRcdG1pbi1oZWlnaHQ6MjAwcHg7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC5lbnRyeS5jb250ZW50IHtcblx0XHRcdFx0dGV4dC1hbGlnbjpjZW50ZXI7XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcblx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiA0cmVtIWltcG9ydGFudDtcblx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6NHJlbSFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oNik7XG5cdFx0XHRcdFx0bWluLWhlaWdodDo1NzBweDtcblx0XHRcdFx0fVxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KXtcblx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbig2KTtcblx0XHRcdFx0XHRtaW4taGVpZ2h0OjQ2NXB4O1xuXHRcdFx0XHR9XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XG5cdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuXHRcdFx0XHRcdG1pbi1oZWlnaHQ6MjAwcHg7XG5cdFx0XHRcdH1cblx0XHRcdFx0aDIge1xuXHRcdFx0XHRcdGNvbG9yOiRvdS1nb2xkO1xuXHRcdFx0XHRcdGZvbnQtZmFtaWx5OidiZWJhc19uZXVlcmVndWxhcicsJ3NhbnMtc2VyaWYnO1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTozLjI1cmVtO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LyogU1RBUlQgSk9JTiBVUyAqL1xuXHQjam9pblVzIHtcblx0XHQuZW50cnlSb3cge1xuXHRcdFx0LmltYWdlIHtcblx0XHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjpjZW50ZXI7XG5cdFx0XHRcdGJhY2tncm91bmQtc2l6ZTpjb3Zlcjtcblx0XHRcdFx0bWluLWhlaWdodDoyMDBweDtcblx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuXHRcdFx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdFx0fVxuXHRcdFx0LmNvbnRlbnQge1xuXHRcdFx0XHR0ZXh0LWFsaWduOmNlbnRlcjtcblx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuXHRcdFx0XHRwYWRkaW5nOjJyZW0gNHJlbTtcblx0XHRcdFx0XG5cdFx0XHRcdGgyIHtcblx0XHRcdFx0XHRjb2xvcjokb3UtZGFya0dyYXk7XG5cdFx0XHRcdFx0Zm9udC1mYW1pbHk6J2JlYmFzX25ldWVyZWd1bGFyJywnc2Fucy1zZXJpZic7XG5cdFx0XHRcdFx0Zm9udC1zaXplOjMuMjVyZW07XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6MC45O1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206MXJlbTtcblx0XHRcdFx0fVxuXHRcdFx0XHRwIHtcblxuXHRcdFx0XHR9XG5cdFx0XHRcdC5idXR0b24ge1xuXG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH0gLyogZW5kIGpvaW4gdXMgcGFnZSAqL1xuXG5cdC8qIFNUQVJUIFNJTkdMRSBDT0xMRUNUSU9OIFBBR0UgKi9cblx0LmNvbGxlY3Rpb24ge1xuXHRcdC5mZWF0dXJlZC1oZXJvIHtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XG5cdFx0XHRcdG1pbi1oZWlnaHQ6MThyZW07XG5cdFx0XHR9XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KXtcblx0XHRcdFx0bWluLWhlaWdodDoyMHJlbTtcblx0XHRcdH1cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApe1xuXHRcdFx0XHRtaW4taGVpZ2h0OjQwcmVtO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQucGFnZVRpdGxlQ29udGFpbmVyIHsgXG5cdFx0XHQucGFnZVRpdGxlIHtcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KXtcblx0XHRcdFx0XHRib3R0b206MCFpbXBvcnRhbnQ7XG5cdFx0XHRcdH1cblx0XHRcdFx0LmVudHJ5VGl0bGUge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTozLjI1cmVtIWltcG9ydGFudDtcblx0XHRcdFx0XHRwYWRkaW5nLWJvdHRvbToxcmVtO1xuXHRcdFx0XHRcdGRpc3BsYXk6YmxvY2shaW1wb3J0YW50O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Lm1haW4tY29udGFpbmVyIHtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlIHVwKXtcblx0XHRcdFx0bWFyZ2luLXRvcDotNnJlbTtcblx0XHRcdH1cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSBkb3duKXtcblx0XHRcdFx0cGFkZGluZy1ib3R0b206MnJlbTtcblx0XHRcdH1cblxuXHRcdFx0Lm1haW4tZ3JpZCB7XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApe1xuXHRcdFx0XHRcdHBhZGRpbmctdG9wOjJyZW07XG5cdFx0XHRcdH1cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bil7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDoycmVtO1xuXHRcdFx0XHR9XG5cblx0XHRcdH1cblx0XHRcdGJhY2tncm91bmQtY29sb3I6I2ZmZjtcblxuXHRcdFx0YXJ0aWNsZSB7XG5cdFx0XHRcdC5hcnRpY2xlVG9we1xuXHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtcm93O1xuXHRcdFx0XHRcdC5lbnRyeUNvbnRlbnRTcGxpdCB7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKXtcblx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMCk7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0LmVudHJ5Q29udGVudEZ1bGwge1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdC5lbnRyeS1jb250ZW50IHtcblx0XHRcdFx0XHRcdHA6Zmlyc3Qtb2YtdHlwZXtcblx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOjEuMnJlbTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0LmZhc3RGYWN0Q29udGFpbmVyIHtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pe1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG5cdFx0XHRcdFx0XHRcdHBhZGRpbmctdG9wOiAzcmVtO1xuXHRcdFx0XHRcdFx0XHRib3JkZXItdG9wOiAxcHggc29saWQgI2MzYzNjMztcblx0XHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogMnJlbTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcblx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMiwwKTtcblx0XHRcdFx0XHRcdFx0cGFkZGluZzogMS4xcmVtIDEuNzVyZW0gMHJlbSAwcmVtO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0LmZhc3RGYWN0IHtcblx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1yb3c7XG5cdFx0XHRcdFx0XHRcdHRleHQtYWxpZ246Y2VudGVyO1xuXHRcdFx0XHRcdFx0XHQubnVtIHtcblx0XHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coMTIpO1xuXHRcdFx0XHRcdFx0XHRcdGZvbnQtZmFtaWx5OidiZWJhc19uZXVlYm9sZCcsJ3NhbnMtc2VyaWYnO1xuXHRcdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTo0cmVtO1xuXHRcdFx0XHRcdFx0XHRcdGNvbG9yOiRvdS1nb2xkO1xuXHRcdFx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OjE7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0LnRleHQge1xuXHRcdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygxMik7XG5cdFx0XHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbToxcmVtO1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdCY6bnRoLW9mLXR5cGUoZXZlbil7XG5cdFx0XHRcdFx0XHRcdFx0Lm51bSB7XG5cdFx0XHRcdFx0XHRcdFx0XHRjb2xvcjokb3UtZGFya0dyYXk7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRcdC50ZXh0IHtcblxuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0XHRpbWcge1xuXHRcdFx0XHRcdFx0XHRwYWRkaW5nLWJvdHRvbTowLjc1cmVtO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0aDMge1xuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6IDEuMnJlbTtcblx0XHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRwIHtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTowO1xuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6MC44cmVtO1xuXHRcdFx0XHRcdFx0XHRsaW5lLWhlaWdodDoxLjI7XG5cdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0LmltYWdlR2FsbGVyeUNvbnRhaW5lcntcblx0XHRcdG1hcmdpbi10b3A6MXJlbTtcblx0XHRcdG1hcmdpbi1ib3R0b206NHJlbTtcblx0XHRcdEBpbmNsdWRlIGdyaWQtcm93O1xuXHRcdFx0bWF4LXdpZHRoOm5vbmU7XG5cdFx0XHQuaW1hZ2VHYWxsZXJ5IHtcblx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTEpO1xuXHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbi1wb3NpdGlvbihjZW50ZXIpO1xuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpe1xuXHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uLWNvbGxhcHNlO1xuXHRcdFx0XHR9XG5cblx0XHRcdH1cblxuXHRcdH1cblx0fSAvKiBFbmQgc2luZ2xlIGNvbGxlY3Rpb24gcGFnZSAqL1xuXG5cdC8qIFNUQVJUIENPTExFQ1RJT04gQ0FURUdPUlkgUEFHRSAqL1x0XG5cdCNjb2xsZWN0aW9uIHtcblx0XHQubGlzdGluZ0NvbnRhaW5lciB7XG5cdFx0IFx0QGluY2x1ZGUgZ3JpZC1yb3c7XG5cdFx0XHQuaW1hZ2Uge1xuXHRcdFx0XHRtaW4taGVpZ2h0OjIwMHB4O1xuXHRcdFx0XHR3aWR0aDphdXRvO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6Y292ZXI7XG5cdFx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246Y2VudGVyO1xuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KXtcblx0XHRcdFx0XHRtaW4taGVpZ2h0OjQ0MHB4O1xuXHRcdFx0XHR9IFx0XHRcdFx0XHRcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCl7XG5cdFx0XHRcdFx0bWluLWhlaWdodDo1NzBweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0LmRldGFpbHMge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKXtcblx0XHRcdFx0XHRwYWRkaW5nOjNyZW0haW1wb3J0YW50O1xuXHRcdFx0XHR9XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpe1xuXHRcdFx0XHRcdHBhZGRpbmc6MS41cmVtIWltcG9ydGFudDtcblx0XHRcdFx0fVx0XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdFx0XHRcdHBhZGRpbmctbGVmdDppbmhlcml0IWltcG9ydGFudDtcblx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OmluaGVyaXQhaW1wb3J0YW50O1xuXHRcdFx0XHRcdHBhZGRpbmctdG9wOjAuMjVyZW07XG5cdFx0XHRcdFx0cGFkZGluZy1ib3R0b206MS41cmVtO1x0XHRcblx0XHRcdFx0fVxuXHRcdFx0XHRkaXNwbGF5OnRhYmxlO1xuXHRcdFx0XHQudmFsaWduIHtcblx0XHRcdFx0XHRkaXNwbGF5OnRhYmxlLWNlbGw7XG5cdFx0XHRcdFx0dmVydGljYWwtYWxpZ246bWlkZGxlO1xuXHRcdFx0XHRcdC50YWdDb250YWluZXIge1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1yb3c7XG5cdFx0XHRcdFx0XHRtYXJnaW4tdG9wOjAuNzVyZW07XG5cdFx0XHRcdFx0XHQudGFnIHtcblx0XHRcdFx0XHRcdFx0d2lkdGg6YXV0bztcblx0XHRcdFx0XHRcdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6JG91YWcteWVsbG93O1xuXHRcdFx0XHRcdFx0XHRjb2xvcjokb3UtZGFya0dyYXk7XG5cdFx0XHRcdFx0XHRcdGZvbnQtZmFtaWx5OidiZWJhc19uZXVlYm9sZCcsJ3NhbnMtc2VyaWYnO1xuXHRcdFx0XHRcdFx0XHRsaW5lLWhlaWdodDogMC45O1xuXHRcdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOjByZW07XG5cdFx0XHRcdFx0XHRcdGxldHRlci1zcGFjaW5nOjAuMXJlbTtcblx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOjAuODVyZW07XG5cdFx0XHRcdFx0XHRcdHBhZGRpbmc6MC4zNXJlbSAwLjVyZW07XG5cdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHR9XG5cdCBcdFx0XHRcdC50aXRsZSB7XG5cdCBcdFx0XHRcdFx0Zm9udC1zaXplOjMuMjVyZW07XG5cdCBcdFx0XHRcdFx0Y29sb3I6JG91LWdvbGQ7XG5cdCBcdFx0XHRcdFx0bGluZS1oZWlnaHQ6MC45O1xuXHQgXHRcdFx0XHRcdHBhZGRpbmc6MXJlbSAwcmVtIDAuMjVyZW0gMHJlbTtcblx0IFx0XHRcdFx0XHRmb250LWZhbWlseTonYmViYXNfbmV1ZXJlZ3VsYXInLCdzYW5zLXNlcmlmJztcblx0IFx0XHRcdFx0fVxuXHQgXHRcdFx0XHQuZGVzY3JpcHRpb24ge1xuXHQgXHRcdFx0XHRcdGxpbmUtaGVpZ2h0OjEuNDtcblx0IFx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG5cdCBcdFx0XHRcdFx0XHRmb250LXNpemU6MC45cmVtO1xuXHQgXHRcdFx0XHRcdH1cblx0IFx0XHRcdFx0fVxuXHQgXHRcdFx0XHQuc2hvd01vcmVJbmZve1xuXHQgXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XG5cdCBcdFx0XHRcdFx0XHRtYXJnaW4tdG9wOjFyZW07XG5cdCBcdFx0XHRcdFx0fVxuXHQgXHRcdFx0XHR9XG5cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHQmIC5ldmVuIHtcblx0XHRcdC5kZXRhaWxzIHtcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG5cdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuXHRcdFx0XHRcdC8qbWFyZ2luLXRvcDogLTNyZW07XG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IC0xcmVtO1xuXHRcdFx0XHRcdGZsb2F0OmxlZnQhaW1wb3J0YW50OyovXG5cblx0XHRcdFx0fVx0IFx0XHRcdFx0XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG5cdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4tcG9zaXRpb24oLTYpO1xuXHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDYpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQuaW1hZ2Uge1xuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpe1xuXHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuXHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKDYpO1xuXHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDYpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHR9XG5cdFx0JiAub2RkIHtcblx0XHRcdC5kZXRhaWxzIHtcblx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuXHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDYpO1xuXHRcdFx0XHR9XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XG5cdFx0XHRcdFx0LyptYXJnaW4tdG9wOiAtM3JlbTtcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IC0xcmVtOyovXG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC5pbWFnZXtcblx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuXHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDYpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHR9XG5cdH1cblx0XG5cblxuXHQvKiBHcmlkIGZvciAxIG9mZiBwYWdlcyAqL1xuXHQuZW50cnlSb3cge1xuXHRcdEBpbmNsdWRlIGdyaWQtcm93O1xuXHRcdC5lbnRyeSB7XG5cdFx0XHRkaXNwbGF5OnRhYmxlO1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bil7XG5cdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcblx0XHRcdFx0cGFkZGluZzogMnJlbSFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKXtcblx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oNik7XG5cdFx0XHRcdHBhZGRpbmc6IDRyZW07XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdCYueWVsbG93IHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjokb3VhZy15ZWxsb3c7XG5cdFx0XHR9XG5cblx0XHRcdC5lbnRyeUNvbnRlbnQge1xuXHRcdFx0XHRAaW5jbHVkZSBncmlkLXJvdztcblx0XHRcdFx0ZGlzcGxheTp0YWJsZS1jZWxsO1xuXHRcdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdFx0XHQuc3ViRW50cnlJdGVtIHtcblx0XHRcdFx0XHR0ZXh0LWFsaWduOmNlbnRlcjtcblx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG5cdFx0XHRcdFx0LmhlYWRpbmcge1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KDEyKTtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTozLjI1cmVtO1xuXHRcdFx0XHRcdFx0Y29sb3I6JG91LWdvbGQ7XG5cdFx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHRcdFx0Zm9udC1mYW1pbHk6J2JlYmFzX25ldWVyZWd1bGFyJywnc2Fucy1zZXJpZic7XG5cdFx0XHRcdFx0XHRsaW5lLWhlaWdodDowLjk7XG5cdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOjFyZW07XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdC5kZXNjcmlwdGlvbntcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygxMik7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdC5idXR0b25Db250YWluZXIge1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KDEyKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0JjpmaXJzdC1vZi10eXBle1xuXHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbToxcHggc29saWQgJG91LWxpZ2h0LWdyYXk7XG5cdFx0XHRcdFx0XHRwYWRkaW5nLWJvdHRvbToycmVtO1xuXHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTozcmVtO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHR9IC8qIEVuZCBHcmlkIGZvciAxIE9mZiBQYWdlcyAqL1xuXG5cdC5ob3Vyc0NvbnRhaW5lciB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjokb3VhZy15ZWxsb3c7XG5cdFx0LmhvdXJzIHtcblx0XHRcdHBhZGRpbmc6M3JlbSAwO1xuXG5cdFx0XHRoMiwgaDMge1xuXHRcdFx0XHR0ZXh0LWFsaWduOmNlbnRlcjtcblx0XHRcdFx0Zm9udC1mYW1pbHk6J2JlYmFzX25ldWVib2xkJyxzYW5zLXNlcmlmO1xuXHRcdFx0XHRjb2xvcjokb3UtZGFya0dyYXk7XG5cdFx0XHR9XG5cblx0XHRcdC5kYXkge1xuXHRcdFx0XHRmb250LWZhbWlseToncm9ib3RvYm9sZCcsJ3NhbnMtc2VyaWYnO1xuXHRcdFx0XHRmb250LXNpemU6MXJlbTtcblx0XHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdFx0bGluZS1oZWlnaHQ6MS4zO1xuXHRcdFx0fVxuXHRcdFx0LmhvdXJzRGV0YWlsIHtcblx0XHRcdFx0Zm9udC1mYW1pbHk6J3JvYm90b2xpZ2h0Jywnc2Fucy1zZXJpZic7XG5cdFx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OjEuMztcblx0XHRcdFx0Zm9udC1zaXplOjAuOXJlbTtcblx0XHRcdFx0cGFkZGluZy10b3A6MC4yNXJlbTtcblx0XHRcdH1cblxuXHRcdFx0LmhvdXJCbG9jayB7XG5cdFx0XHRcdHRleHQtYWxpZ246Y2VudGVyO1xuXHRcdFx0XHRtYXJnaW46MC41cmVtIDA7XG5cdFx0XHR9XG5cblxuXHRcdFx0LnRpdGxlQmxvY2sge1xuXHRcdFx0XHRAaW5jbHVkZSBncmlkLXJvdztcblx0XHRcdFx0bWFyZ2luLWJvdHRvbToycmVtO1xuXHRcdFx0XHRoMiB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOjMuMjVyZW07XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTowO1xuXHRcdFx0XHRcdGxpbmUtaGVpZ2h0OjAuOTtcblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oNik7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbi1wb3NpdGlvbihjZW50ZXIpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDEwKTtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKGNlbnRlcik7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQuaGVhZGluZ0Jsb2NrIHtcblx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1yb3c7XG5cdFx0XHRcdG1hcmdpbi10b3A6MS41cmVtO1xuXHRcdFx0XHRoMyB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOjEuOHJlbTtcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOjA7XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6MC45O1xuXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbig2KTtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKGNlbnRlcik7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTApO1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4tcG9zaXRpb24oY2VudGVyKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0Ji5zcGVjaWFsSG91cnMge1xuXHRcdFx0XHRcdGgze1xuXHRcdFx0XHRcdFx0Zm9udC1zaXplOjEuMjVyZW07XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC5yZWd1bGFySG91cnMge1xuXHRcdFx0XHRAaW5jbHVkZSBncmlkLXJvdygpO1xuXHRcdFx0XHQuaG91ckJsb2NrIHtcblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oNik7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbi1wb3NpdGlvbihjZW50ZXIpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDEwKTtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKGNlbnRlcik7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblxuXHQvKiBIT01FIFBBR0UgU1RZTEVTICovXG5cdHNlY3Rpb25bcm9sZT1cIm1haW5cIl17XG5cdFx0cGFkZGluZy10b3A6NHJlbTtcblx0XHRAaW5jbHVkZSBncmlkLXJvdztcblx0XHRoMSB7IFxuXHRcdFx0Zm9udC1mYW1pbHk6J2JlYmFzX25ldWVyZWd1bGFyJyxzYW5zLXNlcmlmO1xuXHRcdFx0dGV4dC1hbGlnbjpjZW50ZXI7XG5cdFx0XHR3aWR0aDoxMDAlO1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTozcmVtO1xuXHRcdFx0XHRsaW5lLWhlaWdodDoyLjVyZW07XG5cdFx0XHR9XHRcdFx0XG5cdFx0XHRsaW5lLWhlaWdodDozcmVtO1xuXHRcdFx0Zm9udC1zaXplOjRyZW07XG5cdFx0IH1cblxuXHRcdCAvKiBIb21lcGFnZSBDdXN0b20gV2lkZ2V0cyAqL1xuXHRcdCAuT1VBR19ob21lcGFnZV9saXN0aW5nIHtcblxuXHQgXHRcdGgyIHtcblx0IFx0XHRcdGNvbG9yOiRvdS1kYXJrR3JheTtcblx0IFx0XHRcdGZvbnQtc2l6ZTozLjc1cmVtO1xuXHQgXHRcdFx0bGluZS1oZWlnaHQ6MC45O1xuXHQgXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bil7XG5cdCBcdFx0XHRcdGZvbnQtc2l6ZToyLjc1cmVtO1xuXHQgXHRcdFx0fVxuXHQgXHRcdH1cblxuXHRcdCBcdHBhZGRpbmctdG9wOjRyZW07XG5cdFx0IFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuXHQgXHRcdC5ob21lcGFnZUV2ZW50TGlzdGluZ0NvbnRhaW5lciB7XG5cdFx0XHQgXHRAaW5jbHVkZSBncmlkLXJvdztcblx0IFx0XHRcdC5pbWFnZSB7XG5cdCBcdFx0XHRcdG1pbi1oZWlnaHQ6NDAwcHg7XG4gXHRcdFx0XHRcdHdpZHRoOjEwMCU7XG4gXHRcdFx0XHRcdGJhY2tncm91bmQtc2l6ZTpjb3ZlcjtcbiBcdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuXHQgXHRcdFx0XHRcdG1pbi1oZWlnaHQ6NDQwcHg7XG5cdCBcdFx0XHRcdH0gXHRcdFx0XHRcdFxuXHQgXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcblx0IFx0XHRcdFx0XHRtaW4taGVpZ2h0OjU2MHB4O1xuXHQgXHRcdFx0XHR9XG5cdCBcdFx0XHR9XG5cdCBcdFx0XHQuZGV0YWlscyB7XG5cdCBcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHRcblx0IFx0XHRcdFx0ZGlzcGxheTp0YWJsZTtcblx0IFx0XHRcdFx0LnZhbGlnbiB7XG5cdCBcdFx0XHRcdFx0ZGlzcGxheTp0YWJsZS1jZWxsO1xuXHQgXHRcdFx0XHRcdHZlcnRpY2FsLWFsaWduOm1pZGRsZTtcblx0XHQgXHRcdFx0XHQuaG9tZXBhZ2VDYXRlZ29yeSB7XG5cdFx0IFx0XHRcdFx0XHRkaXNwbGF5OmlubGluZS1ibG9jaztcblx0XHQgXHRcdFx0XHRcdGNvbG9yOiRvdS1kYXJrR3JheTtcblx0XHQgXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6JG91YWcteWVsbG93O1xuXHRcdCBcdFx0XHRcdFx0dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xuXHRcdCBcdFx0XHRcdFx0Zm9udC1mYW1pbHk6J2JlYmFzX25ldWVib2xkJyxzYW5zLXNlcmlmO1xuXHRcdCBcdFx0XHRcdFx0cGFkZGluZzowLjZyZW07XG5cdFx0IFx0XHRcdFx0XHRsaW5lLWhlaWdodDowLjVyZW07XG5cdFx0IFx0XHRcdFx0XHRsZXR0ZXItc3BhY2luZzogMC4xcmVtO1xuXHRcdCBcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTowLjhyZW07XG5cdFx0IFx0XHRcdFx0fVxuXHRcdCBcdFx0XHRcdGE6aG92ZXIsIGE6Zm9jdXMge1xuXHQgXHRcdFx0XHRcdFx0aDIge1xuXHRcdFx0XHRcdFx0XHRcdGNvbG9yOiRvdS1nb2xkO1xuXHQgXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVx0XHRcblx0XHQgXHRcdFx0XHQuZGF0ZUNvbnRhaW5lcntcblx0XHRcdCBcdFx0XHRcdC5ob21lcGFnZURhdGV7XG5cdFx0XHQgXHRcdFx0XHRcdGZvbnQtc2l6ZToxLjc1cmVtO1xuXHRcdFx0XHRcdCBcdFx0XHRsaW5lLWhlaWdodDowLjM7XG5cdFx0XHRcdFx0IFx0XHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdCBcdFx0XHRwYWRkaW5nLWxlZnQ6IDIuMnJlbTtcblx0XHRcdFx0XHRcdFx0XHR0ZXh0LWluZGVudDogLTIuMnJlbTtcblx0XHRcdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOjFyZW07XG5cdFx0XHRcdFx0XHRcdFx0d2lkdGg6MTAwJTtcblx0XHRcdFx0XHQgXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bil7XG5cdFx0XHRcdFx0IFx0XHRcdFx0Zm9udC1zaXplOjEuNHJlbTtcblx0XHRcdFx0XHQgXHRcdFx0fVxuXHRcdFx0XHQgXHRcdFx0XHQuY2FsZW5kYXJJY29uIHtcblx0XHRcdCBcdFx0XHRcdFx0XHRtYXgtd2lkdGg6MjdweDtcblx0XHRcdCBcdFx0XHRcdFx0XHRoZWlnaHQ6YXV0bztcblx0XHRcdCBcdFx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6MC41cmVtO1xuXHRcdFx0XHQgXHRcdFx0XHR9XG5cdFx0XHQgXHRcdFx0XHR9XG5cdFx0IFx0XHRcdFx0fVxuXHRcdCBcdFx0XHRcdC5ob21lcGFnZURlc2NyaXB0aW9uIHtcblx0XHQgXHRcdFx0XHRcdGxpbmUtaGVpZ2h0OjEuNDtcblx0XHQgXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcblx0XHQgXHRcdFx0XHRcdFx0Zm9udC1zaXplOjAuOXJlbTtcblx0XHQgXHRcdFx0XHRcdH1cblx0XHQgXHRcdFx0XHR9XG5cdFx0IFx0XHRcdFx0LmhvbWVwYWdlU2hvd01vcmVJbmZve1xuXG5cdFx0IFx0XHRcdFx0fVxuXHQgXHRcdFx0XHR9XG5cdCBcdFx0XHR9XG5cdCBcdFx0fVxuXHQgXHRcdCYgLmV2ZW4ge1xuXHQgXHRcdFx0LmRldGFpbHMge1xuXHQgXHRcdFx0XHRwYWRkaW5nOjNyZW0gM3JlbSAzcmVtIDFyZW0haW1wb3J0YW50O1xuXHQgXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcblx0IFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG5cdCBcdFx0XHRcdFx0bWFyZ2luLXRvcDogLTNyZW07XG5cdCBcdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IC0xcmVtO1xuXHQgXHRcdFx0XHRcdGZsb2F0OmxlZnQhaW1wb3J0YW50O1xuXHQgXHRcdFx0XHRcdHBhZGRpbmc6MS41cmVtIDFyZW0gNHJlbSAxcmVtICFpbXBvcnRhbnQ7XG5cblx0IFx0XHRcdFx0fVx0IFx0XHRcdFx0XG5cdCBcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdCBcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4tcG9zaXRpb24oLTYpO1xuXHQgXHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDYpO1xuXHQgXHRcdFx0XHR9XG5cdCBcdFx0XHR9XG5cdCBcdFx0XHQuaW1hZ2Uge1xuXHQgXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpe1xuXHQgXHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcblx0IFx0XHRcdFx0fVxuXHQgXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHQgXHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKDYpO1xuXHQgXHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDYpO1xuXHQgXHRcdFx0XHR9XG5cdCBcdFx0XHR9XG5cblx0IFx0XHR9XG5cdCBcdFx0JiAub2RkIHtcblx0IFx0XHRcdC5kZXRhaWxzIHtcblx0IFx0XHRcdFx0cGFkZGluZzozcmVtIDFyZW0gM3JlbSAzcmVtIWltcG9ydGFudDtcblx0IFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuXHQgXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHQgXHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDYpO1xuXHQgXHRcdFx0XHR9XG5cdCBcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XG5cdCBcdFx0XHRcdFx0bWFyZ2luLXRvcDogLTNyZW07XG5cdCBcdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAtMXJlbTtcblx0IFx0XHRcdFx0XHRwYWRkaW5nOjEuNXJlbSAxcmVtIDRyZW0gMXJlbSFpbXBvcnRhbnQ7XG5cdCBcdFx0XHRcdH1cblx0IFx0XHRcdH1cblx0IFx0XHRcdC5pbWFnZXtcblx0IFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuXHQgXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHQgXHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDYpO1xuXHQgXHRcdFx0XHR9XG5cdCBcdFx0XHR9XG5cblx0IFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LmhvbWVwYWdlQm90dG9tIHtcblx0XHRtYXJnaW4tdG9wOjRyZW07XG5cdFx0Lk9VQUdfaG9tZXBhZ2VfZmVhdHVyZWRfY29sbGVjdGlvbiB7XG5cdFx0XHQjaG9tZXBhZ2VDb2xsZWN0aW9uQ29udGFpbmVyIHtcblx0XHRcdFx0cG9zaXRpb246cmVsYXRpdmU7XG5cdFx0XHRcdEBpbmNsdWRlIGdyaWQtcm93O1xuXHRcdFx0XHRtYXgtd2lkdGg6bm9uZTtcblx0XHRcdFx0bWluLWhlaWdodDo4MDBweDtcblx0XHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O1xuXHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6Y292ZXI7XG5cdFx0XHRcdCNjb2xsZWN0aW9uSGVhZGluZyB7XG5cdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMyk7XG5cdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4tcG9zaXRpb24oY2VudGVyKTtcblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpe1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTApO1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4tcG9zaXRpb24oY2VudGVyKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSl7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbig1KTtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKGNlbnRlcik7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0dGV4dC1hbGlnbjpjZW50ZXI7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDIyNSwgMCwgMC44NSk7XG5cdFx0XHRcdFx0Zm9udC1mYW1pbHk6J2JlYmFzX25ldWVib2xkJywgc2Fucy1zZXJpZjtcblx0XHRcdFx0XHRwYWRkaW5nLXRvcDoxLjVyZW07XG5cdFx0XHRcdFx0cGFkZGluZy1ib3R0b206MS41cmVtO1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMS4ycmVtO1xuXHRcdFx0XHRcdGxldHRlci1zcGFjaW5nOiAwLjJyZW07XG5cdFx0XHRcdH1cblx0XHRcdFx0I2NvbGxlY3Rpb25EZXRhaWxzIHtcblx0XHRcdFx0XHRwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHRcdFx0XHRib3R0b206MDtcblx0XHRcdFx0XHR0ZXh0LWFsaWduOmNlbnRlcjtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7XG5cdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oNik7XG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KXtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDEwKTtcblx0XHRcdFx0XHRcdGxlZnQ6OCU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcblx0XHRcdFx0XHRcdGxlZnQ6MjUlO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oNCk7XG5cdFx0XHRcdFx0XHRsZWZ0OjMzLjUlO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcblx0XHRcdFx0XHRcblx0XHRcdFx0XHQjY29sbGVjdGlvblRpdGxlIHtcblx0XHRcdFx0XHRcdHBhZGRpbmc6MnJlbSAzcmVtIDAuNXJlbSAzcmVtO1xuXHRcdFx0XHRcdFx0Y29sb3I6JG91LWRhcmtHcmF5O1xuXHRcdFx0XHRcdFx0Zm9udC1mYW1pbHk6J2JlYmFzX25ldWVyZWd1bGFyJyxzYW5zLXNlcmlmO1xuXHRcdFx0XHRcdFx0Zm9udC1zaXplOjIuN3JlbTtcblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OjAuOTtcblxuXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdCNjb2xsZWN0aW9uRGVzY3JpcHRpb24ge1xuXHRcdFx0XHRcdFx0Zm9udC1mYW1pbHk6J3JvYm90b2l0YWxpYycsJ3NhbnMtc2VyaWYnO1xuXHRcdFx0XHRcdFx0Zm9udC1zaXplOjAuODVyZW07XG5cdFx0XHRcdFx0XHRsaW5lLWhlaWdodDoxLjU7XG5cdFx0XHRcdFx0XHRwYWRkaW5nOjAgMi4ycmVtO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5mb290ZXItY29udGFpbmVyIHtcblx0XHRtYXgtd2lkdGg6bm9uZTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiNmNGY0ZjQ7XG5cdFx0Ym9yZGVyLXRvcDpub25lO1xuXHRcdHBhZGRpbmc6MHB4O1xuXHRcdG1hcmdpbi10b3A6MDtcblx0XHQuZm9vdGVyLWdyaWQge1xuXHRcdFx0bWF4LXdpZHRoOjc1cmVtO1xuXHRcdFx0bWFyZ2luOjAgYXV0bztcblx0XHRcdHBhZGRpbmctdG9wOiAyLjJyZW0gMHJlbTtcblx0XHQgXHRwIHsgXG5cdFx0IFx0XHRmb250LWZhbWlseTonYmViYXNfbmV1ZWJvbGQnLCBzYW5zLXNlcmlmO1xuXHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG5cdFx0XHRcdGNvbG9yOiRvdS1nb2xkO1xuXHRcdFx0XHRmb250LXNpemU6MS4yMXJlbTtcblx0XHRcdH1cblx0XHRcdCNmb290ZXJDb250YWN0SW5mbyB7XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pe1xuXHRcdFx0XHRcdHBhZGRpbmctYm90dG9tOjFyZW07XG5cdFx0XHRcdH1cblx0XHRcdFx0aW1nIHtcblx0XHRcdFx0XHRtYXgtd2lkdGg6Mjg1cHg7XG5cdFx0XHRcdFx0d2lkdGg6MTAwJTtcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOjFyZW07XG5cdFx0XHRcdFx0Ji5zb2NpYWwge1xuXHRcdFx0XHRcdFx0bWF4LXdpZHRoOjMxcHg7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OmlubGluZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0Ji5sZWZ0UGFkZGluZyB7XG5cdFx0XHRcdFx0XHRtYXJnaW4tbGVmdDogMTJweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0gXG5cdFx0XHRcdHAge1xuXHRcdFx0XHRcdGxpbmUtaGVpZ2h0OjEuMXJlbTtcblx0XHRcdFx0fVxuXG5cdFx0XHR9XG5cblx0XHRcdC53cGNmNyB7XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pe1xuXHRcdFx0XHRcdG1hcmdpbi10b3A6MnJlbTtcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOjJyZW07XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcblx0XHRcdFx0XHRwYWRkaW5nOiAwcmVtIDIuNXJlbTtcblx0XHRcdFx0fVxuXHRcdFx0XHRoMyB7XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6MS40cmVtO1xuXHRcdFx0XHRcdGZvbnQtc2l6ZToxLjkzNzVyZW07XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTowLjc1cmVtO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGZvcm0ge1xuXHRcdFx0XHRcdHAge1xuXHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDEuMztcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMC44NXJlbTtcblx0XHRcdFx0XHRcdGZvbnQtZmFtaWx5OiAncm9ib3RvJywnc2Fucy1zZXJpZic7XG5cdFx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblx0XHRcdFx0XHRcdGNvbG9yOiRvdS1kYXJrR3JheTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0aW5wdXQge1xuXHRcdFx0XHRcdFx0Ym9yZGVyOjBweDtcblx0XHRcdFx0XHRcdGJveC1zaGFkb3c6bm9uZTtcblx0XHRcdFx0XHRcdG1heC13aWR0aDo0NTBweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0aW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkb3UtZGFya0dyYXk7XG5cdFx0XHRcdFx0XHRib3JkZXI6IG5vbmU7XG5cdFx0XHRcdFx0XHRtYXJnaW4tdG9wOjFyZW07XG5cdFx0XHRcdFx0XHRwYWRkaW5nOiAwLjVyZW0gMXJlbTtcblx0XHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRcdFx0XHRmb250LWZhbWlseTogJ2JlYmFzX25ldWVib2xkJywgc2Fucy1zZXJpZjtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMS4ycmVtO1xuXHRcdFx0XHRcdFx0Y29sb3I6ICNmZmY7XG5cdFx0XHRcdFx0XHRsZXR0ZXItc3BhY2luZzogMC4ycmVtO1xuXHRcdFx0XHRcdFx0Jjpob3ZlciwgJjpmb2N1c3tcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjokb3VhZy15ZWxsb3c7XG5cdFx0XHRcdFx0XHRcdGNvbG9yOiRvdS1kYXJrR3JheTtcblx0XHRcdFx0XHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRpbnB1dFt0eXBlPVwiZW1haWxcIl17XG5cdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOjBweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0YnIge1xuXHRcdFx0XHRcdFx0ZGlzcGxheTpub25lO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0I21hZGVQb3NzaWJsZUJ5IHtcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bil7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDoycmVtO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGg0IHtcblx0XHRcdFx0XHRmb250LXNpemU6MS4xcmVtO1xuXHRcdFx0XHRcdHRleHQtYWxpZ246Y2VudGVyO1xuXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pe1xuXHRcdFx0XHRcdFx0dGV4dC1hbGlnbjpsZWZ0O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRsaW5lLWhlaWdodDoxO1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206MnJlbTtcblx0XHRcdFx0fVxuXHRcdFx0XHQjZm9vdGVyU3BvbnNvckNvbnRhaW5lciB7XG5cdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1yb3c7XG5cdFx0XHRcdFx0LmltYWdlTGVmdCB7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbig0KTtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpe1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigyKTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdGltZyB7XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pe1xuXHRcdFx0XHRcdFx0XHRcdG1heC13aWR0aDogOTNweDtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQuaW1hZ2VSaWdodCB7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbig4KTtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpe1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMCk7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRpbWcge1xuXHRcdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOjFyZW07XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pe1xuXHRcdFx0XHRcdFx0XHRcdG1heC13aWR0aDogMjE2cHg7XG5cdFx0XHRcdFx0XHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHR9XG5cblx0XHRcdH1cblxuXHRcdFx0I2N1c3RvbV9odG1sLTExLCAjY3VzdG9tX2h0bWwtMTIge1xuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKXtcblx0XHRcdFx0XHRib3JkZXItdG9wOjFweCBzb2xpZCAjYzNjM2MzO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQjY3VzdG9tX2h0bWwtNSB7XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pe1xuXHRcdFx0XHRcdGJvcmRlci1ib3R0b206MXB4IHNvbGlkICNjM2MzYzM7XG5cdFx0XHRcdH1cdFx0XHRcblx0XHRcdH1cblx0XHR9XG5cblx0XHQub3VGb290ZXItY29udGFpbmVye1xuXHRcdFx0QGluY2x1ZGUgZ3JpZC1yb3c7XG5cdFx0XHRtYXgtd2lkdGg6bm9uZTtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6JG91LWRhcmtHcmF5O1xuXHRcdFx0cGFkZGluZzoycmVtIDA7XG5cdFx0XHQub3VGb290ZXJ7XHRcdFx0XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMCk7XG5cdFx0XHRcdH1cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuXHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbi1wb3NpdGlvbihjZW50ZXIpO1xuXHRcdFx0XHRtYXgtd2lkdGg6ODYwcHg7XG5cdFx0XHRcdG1hcmdpbjowIGF1dG87XG5cdFx0XHRcdFxuXHRcdFx0XHQuZm9vdGVySXRlbSB7XG5cdFx0XHRcdFx0dGV4dC1hbGlnbjpjZW50ZXI7XG5cdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oNCk7XG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bil7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG5cdFx0XHRcdFx0XHRwYWRkaW5nLWJvdHRvbToxcmVtO1xuXG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0XHRcdFx0Ym9yZGVyLXJpZ2h0OjFweCBzb2xpZCAjMzAzMDMwO1xuXHRcdFx0XHRcdH1cdFxuXHRcdFx0XHRcdCNvdUZvb3RlckxvZ28ge1xuXHRcdFx0XHRcdFx0bWF4LXdpZHRoOjIzMHB4O1xuXHRcdFx0XHRcdFx0bWFyZ2luOjAgYXV0bztcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuXHRcdFx0XHRcdFx0XHRwYWRkaW5nLXRvcDowLjFyZW07XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKXtcblx0XHRcdFx0XHRcdFx0ZmxvYXQ6bm9uZTtcblx0XHRcdFx0XHRcdFx0bWF4LXdpZHRoOjMwMHB4O1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRhIHtcblx0XHRcdFx0XHRcdHdpZHRoOjEwMCU7XG5cdFx0XHRcdFx0XHRjb2xvcjojY2NiNTdhO1xuXHRcdFx0XHRcdFx0Zm9udC1zaXplOjAuODVyZW07XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdGE6aG92ZXIge1xuXHRcdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0fVxuXHRcdFx0XHQmIDpsYXN0LW9mLXR5cGV7XG5cdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4tZW5kO1xuXHRcdFx0XHRcdGJvcmRlci1yaWdodDpub25lO1xuXHRcdFx0XHR9XG5cblx0XHRcdH1cblx0XHR9IFxuXHR9XG59ICIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIENoYW5nZSB0aGUgYmVoYXZpb3Igb2YgY29sdW1ucyBkZWZpbmVkIGluc2lkZSB0aGlzIG1peGluIHRvIHVzZSBhIGRpZmZlcmVudCBjb2x1bW4gY291bnQuXG4vLy8gQGNvbnRlbnRcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkY29sdW1ucyAtIE51bWJlciBvZiBjb2x1bW5zIHRvIHVzZS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRyb290IFtmYWxzZV1cbi8vLyAgIElmIGBmYWxzZWAsIHNlbGVjdG9ycyBpbnNpZGUgdGhpcyBtaXhpbiB3aWxsIG5lc3QgaW5zaWRlIHRoZSBwYXJlbnQgc2VsZWN0b3IuXG4vLy8gICBJZiBgdHJ1ZWAsIHNlbGVjdG9ycyB3aWxsIG5vdCBuZXN0LlxuQG1peGluIGdyaWQtY29udGV4dChcbiAgJGNvbHVtbnMsXG4gICRyb290OiBmYWxzZVxuKSB7XG4gIC8vIFN0b3JlIHRoZSBjdXJyZW50IGNvbHVtbiBjb3VudCBzbyBpdCBjYW4gYmUgcmUtc2V0IGxhdGVyXG4gICRvbGQtZ3JpZC1jb2x1bW4tY291bnQ6ICRncmlkLWNvbHVtbi1jb3VudDtcbiAgJGdyaWQtY29sdW1uLWNvdW50OiAkY29sdW1ucyAhZ2xvYmFsO1xuXG4gIEBpZiAkcm9vdCB7XG4gICAgQGF0LXJvb3QgeyBAY29udGVudDsgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxuXG4gIC8vIFJlc3RvcmUgdGhlIG9sZCBjb2x1bW4gY291bnRcbiAgJGdyaWQtY29sdW1uLWNvdW50OiAkb2xkLWdyaWQtY29sdW1uLWNvdW50ICFnbG9iYWw7XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCByb3cuXG4vLy8gQGNvbnRlbnRcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkY29sdW1ucyBbbnVsbF0gLSBDb2x1bW4gY291bnQgZm9yIHRoaXMgcm93LiBgbnVsbGAgd2lsbCB1c2UgdGhlIGRlZmF1bHQgY29sdW1uIGNvdW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZHN9ICRiZWhhdmlvciBbbnVsbF1cbi8vLyAgIE1vZGlmaWNhdGlvbnMgdG8gdGhlIGRlZmF1bHQgZ3JpZCBzdHlsZXMuIGBuZXN0YCBpbmRpY2F0ZXMgdGhlIHJvdyB3aWxsIGJlIHBsYWNlZCBpbnNpZGUgYW5vdGhlciByb3cuIGBjb2xsYXBzZWAgaW5kaWNhdGVzIHRoYXQgdGhlIGNvbHVtbnMgaW5zaWRlIHRoaXMgcm93IHdpbGwgbm90IGhhdmUgcGFkZGluZy4gYG5lc3QgY29sbGFwc2VgIGNvbWJpbmVzIGJvdGggYmVoYXZpb3JzLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFskZ3JpZC1yb3ctd2lkdGhdIE1heGltdW0gc2l6ZSBvZiB0aGUgcm93LiBTZXQgdG8gYGV4cGFuZGAgdG8gbWFrZSB0aGUgcm93IHRha2luZyB0aGUgZnVsbCB3aWR0aC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRjZiBbdHJ1ZV0gLSBXaGV0aGVyIG9yIG5vdCB0byBpbmNsdWRlIGEgY2xlYXJmaXguXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2Ugd2hlbiBpbnZlcnRpbmcgbWFyZ2lucy4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLXJvdyhcbiAgJGNvbHVtbnM6IG51bGwsXG4gICRiZWhhdmlvcjogbnVsbCxcbiAgJHNpemU6ICRncmlkLXJvdy13aWR0aCxcbiAgJGNmOiB0cnVlLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gICRtYXJnaW46IGF1dG87XG5cbiAgQGlmIGluZGV4KCRiZWhhdmlvciwgbmVzdCkgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3ctbmVzdCgkZ3V0dGVycyk7XG5cbiAgICBAaWYgaW5kZXgoJGJlaGF2aW9yLCBjb2xsYXBzZSkgIT0gbnVsbCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93LXNpemUoJHNpemUpO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuXG4gIEBpZiAkY2Yge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICB9XG5cbiAgQGlmICRjb2x1bW5zICE9IG51bGwge1xuICAgIEBpbmNsdWRlIGdyaWQtY29udGV4dCgkY29sdW1ucykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBJbnZlcnRzIHRoZSBtYXJnaW5zIG9mIGEgcm93IHRvIG5lc3QgaXQgaW5zaWRlIG9mIGEgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2Ugd2hlbiBpbnZlcnRpbmcgbWFyZ2lucy4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLXJvdy1uZXN0KCRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyKSB7XG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgICRtYXJnaW46IHJlbS1jYWxjKC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkLXpmLXNpemUpKSAvIDIgKiAtMTtcblxuICAgIG1hcmdpbi1yaWdodDogJG1hcmdpbjtcbiAgICBtYXJnaW4tbGVmdDogJG1hcmdpbjtcbiAgfVxufVxuXG4vLy8gU2V0IGEgZ3JpZCByb3cgc2l6ZVxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgWyRncmlkLXJvdy13aWR0aF0gTWF4aW11bSBzaXplIG9mIHRoZSByb3cuIFNldCB0byBgZXhwYW5kYCB0byBtYWtlIHRoZSByb3cgdGFraW5nIHRoZSBmdWxsIHdpZHRoLlxuQG1peGluIGdyaWQtcm93LXNpemUoJHNpemU6ICRncmlkLXJvdy13aWR0aCkge1xuICBAaWYgJHNpemUgPT0gZXhwYW5kIHtcbiAgICAkc2l6ZTogbm9uZTtcbiAgfVxuXG4gIG1heC13aWR0aDogJHNpemU7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBTZXQgdGhlIHdpZHRoIG9mIGEgZ3JpZCBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkd2lkdGggWyRncmlkLWNvbHVtbi1jb3VudF0gLSBXaWR0aCB0byBtYWtlIHRoZSBjb2x1bW4uIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGBncmlkLWNvbHVtbigpYCBmdW5jdGlvbiwgc3VjaCBhcyBgNmAsIGA1MCVgLCBvciBgMSBvZiAyYC5cbkBtaXhpbiBncmlkLWNvbHVtbi1zaXplKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50XG4pIHtcbiAgd2lkdGg6IGdyaWQtY29sdW1uKCRjb2x1bW5zKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXNpemUoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXNpemVcbkBtaXhpbiBncmlkLWNvbC1zaXplKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50XG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tc2l6ZSgkY29sdW1ucyk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBDYWxjdWxhdGVzIHRoZSB3aWR0aCBvZiBhIGNvbHVtbiBiYXNlZCBvbiBhIG51bWJlciBvZiBmYWN0b3JzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJGNvbHVtbnNcbi8vLyAgIFdpZHRoIG9mIHRoZSBjb2x1bW4uIEFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSBBIHBlcmNlbnRhZ2UgdmFsdWUgd2lsbCBtYWtlIHRoZSBjb2x1bW4gdGhhdCBleGFjdCBzaXplLlxuLy8vICAgLSBBIHNpbmdsZSBkaWdpdCB3aWxsIG1ha2UgdGhlIGNvbHVtbiBzcGFuIHRoYXQgbnVtYmVyIG9mIGNvbHVtbnMgd2lkZSwgdGFraW5nIGludG8gYWNjb3VudCB0aGUgY29sdW1uIGNvdW50IG9mIHRoZSBwYXJlbnQgcm93LlxuLy8vICAgLSBBIGxpc3Qgb2YgdGhlIGZvcm1hdCBcInggb2YgeVwiICh3aXRob3V0IHF1b3Rlcykgd2lsbCBtYWtlIGEgY29sdW1uIHRoYXQgaXMgKngqIGNvbHVtbnMgd2lkZSwgYXNzdW1pbmcgKnkqIHRvdGFsIGNvbHVtbnMgZm9yIHRoZSBwYXJlbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBBIGNhbGN1bGF0ZWQgcGVyY2VudGFnZSB2YWx1ZS5cbkBmdW5jdGlvbiBncmlkLWNvbHVtbigkY29sdW1ucykge1xuICAkd2lkdGg6IDAlO1xuXG4gIC8vIFBhcnNpbmcgcGVyY2VudHMsIGRlY2ltYWxzLCBhbmQgY29sdW1uIGNvdW50c1xuICBAaWYgdHlwZS1vZigkY29sdW1ucykgPT0gJ251bWJlcicge1xuICAgIEBpZiB1bml0KCRjb2x1bW5zKSA9PSAnJScge1xuICAgICAgJHdpZHRoOiAkY29sdW1ucztcbiAgICB9XG4gICAgQGVsc2UgaWYgJGNvbHVtbnMgPCAxIHtcbiAgICAgICR3aWR0aDogcGVyY2VudGFnZSgkY29sdW1ucyk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICR3aWR0aDogcGVyY2VudGFnZSgkY29sdW1ucyAvICRncmlkLWNvbHVtbi1jb3VudCk7XG4gICAgfVxuICB9XG5cbiAgLy8gUGFyc2luZyBcIm4gb2YgblwiIGV4cHJlc3Npb25zXG4gIEBlbHNlIGlmIHR5cGUtb2YoJGNvbHVtbnMpID09ICdsaXN0JyB7XG4gICAgQGlmIGxlbmd0aCgkY29sdW1ucykgIT0gMyB7XG4gICAgICBAZXJyb3IgJ1dyb25nIHN5bnRheCBmb3IgZ3JpZC1jb2x1bW4oKS4gVXNlIHRoZSBmb3JtYXQgXCJuIG9mIG5cIi4nO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkd2lkdGg6IHBlcmNlbnRhZ2UobnRoKCRjb2x1bW5zLCAxKSAvIG50aCgkY29sdW1ucywgMykpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFueXRoaW5nIGVsc2UgaXMgaW5jb3JyZWN0XG4gIEBlbHNlIHtcbiAgICBAZXJyb3IgJ1dyb25nIHN5bnRheCBmb3IgZ3JpZC1jb2x1bW4oKS4gVXNlIGEgbnVtYmVyLCBkZWNpbWFsLCBwZXJjZW50YWdlLCBvciBcIm4gb2YgblwiLic7XG4gIH1cblxuICBAcmV0dXJuICR3aWR0aDtcbn1cblxuLy8vIENyZWF0ZXMgYSBncmlkIGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7TWl4ZWR9ICRjb2x1bW5zIFskZ3JpZC1jb2x1bW4tY291bnRdIC0gV2lkdGggb2YgdGhlIGNvbHVtbi4gUmVmZXIgdG8gdGhlIGBncmlkLWNvbHVtbigpYCBmdW5jdGlvbiB0byBzZWUgcG9zc2libGUgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIFNwYWNpbmcgYmV0d2VlbiBjb2x1bW5zLiBSZWZlciB0byB0aGUgYGdyaWQtY29sdW1uLWd1dHRlcigpYCBmdW5jdGlvbiB0byBzZWUgcG9zc2libGUgdmFsdWVzLlxuQG1peGluIGdyaWQtY29sdW1uKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50LFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXNpemUoJGNvbHVtbnMpO1xuICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuXG4gIC8vIEd1dHRlcnNcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3V0dGVyKCRndXR0ZXJzOiAkZ3V0dGVycyk7XG5cbiAgLy8gUG9zaXRpb25cbiAgQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKGF1dG8pO1xufVxuXG4vLy8gQ3JlYXRlcyBhIGdyaWQgY29sdW1uIHJvdy4gVGhpcyBpcyB0aGUgZXF1aXZhbGVudCBvZiBhZGRpbmcgYC5yb3dgIGFuZCBgLmNvbHVtbmAgdG8gdGhlIHNhbWUgZWxlbWVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TWl4ZWR9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIFdpZHRoIG9mIHRoZSBndXR0ZXJzIG9uIGVpdGhlciBzaWRlIG9mIHRoZSBjb2x1bW4gcm93LiBSZWZlciB0byB0aGUgYGdyaWQtY29sdW1uLWd1dHRlcigpYCBmdW5jdGlvbiB0byBzZWUgcG9zc2libGUgdmFsdWVzLlxuQG1peGluIGdyaWQtY29sdW1uLXJvdyhcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLXJvdztcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oJGd1dHRlcnM6ICRndXR0ZXJzKTtcblxuICAmLFxuICAmOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBub25lO1xuICB9XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW5cbkBmdW5jdGlvbiBncmlkLWNvbChcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudFxuKSB7XG4gIEByZXR1cm4gZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4oKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uXG5AbWl4aW4gZ3JpZC1jb2woXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnQsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXJzKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXJvdygpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tcm93XG5AbWl4aW4gZ3JpZC1jb2wtcm93KFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygkZ3V0dGVycyk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBTZXQgdGhlIGd1dHRlcnMgb24gYSBjb2x1bW5cbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkZ3V0dGVyIFthdXRvXVxuLy8vICAgU3BhY2luZyBiZXR3ZWVuIGNvbHVtbnMsIGFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSBBIHNpbmdsZSB2YWx1ZSB3aWxsIG1ha2UgdGhlIGd1dHRlciB0aGF0IGV4YWN0IHNpemUuXG4vLy8gICAtIEEgYnJlYWtwb2ludCBuYW1lIHdpbGwgbWFrZSB0aGUgZ3V0dGVyIHRoZSBjb3JyZXNwb25kaW5nIHNpemUgaW4gdGhlICRndXR0ZXJzIG1hcC5cbi8vLyAgIC0gXCJhdXRvXCIgd2lsbCBtYWtlIHRoZSBndXR0ZXIgcmVzcG9uc2l2ZSwgdXNpbmcgdGhlICRndXR0ZXJzIG1hcCB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tZ3V0dGVyKFxuICAkZ3V0dGVyOiBhdXRvLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCRndXR0ZXIsICRndXR0ZXJzKSB7XG4gICAgJHBhZGRpbmc6IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpIC8gMjtcblxuICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG4gIH1cbn1cblxuLy8vIENvbGxhcHNlIHRoZSBndXR0ZXJzIG9uIGEgY29sdW1uIGJ5IHJlbW92aW5nIHRoZSBwYWRkaW5nLiAqKk5vdGU6Kiogb25seSB1c2UgdGhpcyBtaXhpbiB3aXRoaW4gYSBicmVha3BvaW50LiBUbyBjb2xsYXBzZSBhIGNvbHVtbidzIGd1dHRlcnMgb24gYWxsIHNjcmVlbiBzaXplcywgdXNlIHRoZSBgJGd1dHRlcmAgcGFyYW1ldGVyIG9mIHRoZSBgZ3JpZC1jb2x1bW4oKWAgbWl4aW4gaW5zdGVhZC5cbkBtaXhpbiBncmlkLWNvbHVtbi1jb2xsYXBzZSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigwKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWd1dHRlcigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tZ3V0dGVyXG5AbWl4aW4gZ3JpZC1jb2wtZ3V0dGVyKFxuICAkZ3V0dGVyOiBhdXRvLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigkZ3V0dGVyLCAkZ3V0dGVycyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1jb2xsYXBzZSgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tY29sbGFwc2VcbkBtaXhpbiBncmlkLWNvbC1jb2xsYXBzZSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWNvbGxhcHNlO1xufVxuXG4vLy8gU2V0cyBib3R0b20gbWFyZ2luIG9uIGdyaWQgY29sdW1ucyB0byBtYXRjaCBndXR0ZXJzXG4vLy8gQHBhcmFtIHtOdW1iZXJ8S2V5d29yZH0gJG1hcmdpbiBbYXV0b11cbi8vLyAgIFRoZSBib3R0b20gbWFyZ2luIG9uIGdyaWQgY29sdW1ucywgYWNjZXB0cyBtdWx0aXBsZSB2YWx1ZXM6XG4vLy8gICAtIEEgc2luZ2xlIHZhbHVlIHdpbGwgbWFrZSB0aGUgbWFyZ2luIHRoYXQgZXhhY3Qgc2l6ZS5cbi8vLyAgIC0gQSBicmVha3BvaW50IG5hbWUgd2lsbCBtYWtlIHRoZSBtYXJnaW4gdGhlIGNvcnJlc3BvbmRpbmcgc2l6ZSBpbiB0aGUgJG1hcmdpbnMgbWFwLlxuLy8vICAgLSBcImF1dG9cIiB3aWxsIG1ha2UgdGhlIG1hcmdpbiByZXNwb25zaXZlLCB1c2luZyB0aGUgJG1hcmdpbnMgbWFwIHZhbHVlcy5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXJnaW5zIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtY29sdW1uLW1hcmdpbiAoXG4gICRtYXJnaW46IGF1dG8sXG4gICRtYXJnaW5zOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJG1hcmdpbiwgJG1hcmdpbnMpIHtcbiAgICAkbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoJC16Zi1icC12YWx1ZSk7XG4gICAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbi1ib3R0b207XG5cbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBSZXBvc2l0aW9uIGEgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8S2V5d29yZH0gJHBvc2l0aW9uIC0gSXQgY2FuIGJlOlxuLy8vICAgKiBBIG51bWJlcjogVGhlIGNvbHVtbiB3aWxsIG1vdmUgZXF1YWwgdG8gdGhlIHdpZHRoIG9mIHRoZSBjb2x1bW4gY291bnRcbi8vLyAgICAgc3BlY2lmaWVkLiBBIHBvc2l0aXZlIG51bWJlciB3aWxsIHB1c2ggdGhlIGNvbHVtbiB0byB0aGUgcmlnaHQsIHdoaWxlXG4vLy8gICAgIGEgbmVnYXRpdmUgbnVtYmVyIHdpbGwgcHVsbCBpdCB0byB0aGUgbGVmdC5cbi8vLyAgICogYGNlbnRlcmA6IENvbHVtbiB3aWxsIGJlIGNlbnRlcmVkXG4vLy8gICAqIGBhdXRvYDogQ29sdW1uIHdpbGwgYmUgcHVzaGVkIHRvIHRoZSBsZWZ0IChvciB0byB0aGUgcmlnaHQgZm9yIHRoZSBsYXN0IGNvbHVtbikuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tcG9zaXRpb24oJHBvc2l0aW9uKSB7XG4gIC8vIEF1dG8gcG9zaXRpb25pbmdcbiAgQGlmICRwb3NpdGlvbiA9PSBhdXRvIHtcbiAgICAmLCAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcbiAgICAgIGNsZWFyOiBub25lO1xuICAgIH1cblxuICAgIC8vIExhc3QgY29sdW1uIGFsaWdubWVudFxuICAgIEBpZiAkZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZSB7XG4gICAgICAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogJGdsb2JhbC1yaWdodDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQdXNoL3B1bGxcbiAgQGVsc2UgaWYgdHlwZS1vZigkcG9zaXRpb24pID09ICdudW1iZXInIHtcbiAgICAkb2Zmc2V0OiBwZXJjZW50YWdlKCRwb3NpdGlvbiAvICRncmlkLWNvbHVtbi1jb3VudCk7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAkb2Zmc2V0O1xuICB9XG5cbiAgLy8gQ2VudGVyIHBvc2l0aW9uaW5nXG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSBjZW50ZXIge1xuICAgICYsICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1dyb25nIHN5bnRheCBmb3IgZ3JpZC1jb2x1bW4tcG9zaXRpb24oKS4gRW50ZXIgYSBwb3NpdGl2ZSBvciBuZWdhdGl2ZSBudW1iZXIsIFwiY2VudGVyXCIgb3IgXCJhdXRvXCIuJztcbiAgfVxufVxuXG4vLy8gUmVzZXQgYSBwb3NpdGlvbiBkZWZpbml0aW9uLlxuQG1peGluIGdyaWQtY29sdW1uLXVucG9zaXRpb24ge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1wb3NpdGlvbihhdXRvKTtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLy8vIE9mZnNldHMgYSBjb2x1bW4gdG8gdGhlIHJpZ2h0IGJ5IGAkbmAgY29sdW1ucy5cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkbiAtIFdpZHRoIHRvIG9mZnNldCBieS4gWW91IGNhbiBwYXNzIGluIGFueSB2YWx1ZSBhY2NlcHRlZCBieSB0aGUgYGdyaWQtY29sdW1uKClgIG1peGluLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuQG1peGluIGdyaWQtY29sdW1uLW9mZnNldCgkbikge1xuICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiBncmlkLWNvbHVtbigkbik7XG59XG5cbi8vLyBEaXNhYmxlIHRoZSBkZWZhdWx0IGJlaGF2aW9yIG9mIHRoZSBsYXN0IGNvbHVtbiBpbiBhIHJvdyBhbGlnbmluZyB0byB0aGUgb3Bwb3NpdGUgZWRnZS5cbkBtaXhpbiBncmlkLWNvbHVtbi1lbmQge1xuICAvLyBUaGlzIGV4dHJhIHNwZWNpZmljaXR5IGlzIHJlcXVpcmVkIGZvciB0aGUgcHJvcGVydHkgdG8gYmUgYXBwbGllZFxuICAmOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcbiAgfVxufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tcG9zaXRpb24oKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXBvc2l0aW9uXG5AbWl4aW4gZ3JpZC1jb2wtcG9zKCRwb3NpdGlvbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1wb3NpdGlvbigkcG9zaXRpb24pO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tdW5wb3NpdGlvbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tdW5wb3NpdGlvblxuQG1peGluIGdyaWQtY29sLXVucG9zIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tdW5wb3NpdGlvbjtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLW9mZnNldCgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tb2Zmc2V0XG5AbWl4aW4gZ3JpZC1jb2wtb2ZmKCRuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLW9mZnNldCgkbik7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1lbmQoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLWVuZFxuQG1peGluIGdyaWQtY29sLWVuZCB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWVuZDtcbn1cbiIsIi8qXG5Gcm9udGVuZCBzdHlsZXMgZm9yIGd1dGVuYmVyZyBibG9ja3NcbiovXG5cbi8qKiA9PT0gQmFzZSBDb2xvciBQYWxhdHRlID09PSAqL1xuQGVhY2ggJGNvbG9yLCAkY29kZSBpbiAkZm91bmRhdGlvbi1wYWxldHRlIHtcblxuICAuaGFzLSN7JGNvbG9yfS1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2RlO1xuICB9XG5cbiAgLmhhcy0jeyRjb2xvcn0tY29sb3Ige1xuICAgICAgY29sb3I6ICRjb2RlO1xuICB9XG59XG5cbi8qKiA9PT0gQnV0dG9uID09PSAqL1xuLndwLWJsb2NrLWJ1dHRvbiB7XG5cblx0Ly8gYWRkIGdlbmVyYWwgZm91bmRhdGlvbiBidXR0b24gc3R5bGluZ1xuXHQud3AtYmxvY2stYnV0dG9uX19saW5rIHtcblx0XHRAZXh0ZW5kIC5idXR0b247XG4gICAgQGVhY2ggJGNvbG9yLCAkY29kZSBpbiAkZm91bmRhdGlvbi1wYWxldHRlIHtcblxuICAgICAgJi5oYXMtI3skY29sb3J9LWJhY2tncm91bmQtY29sb3Ige1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2RlO1xuICAgICAgfVxuXG4gICAgICAmLmhhcy0jeyRjb2xvcn0tY29sb3Ige1xuICAgICAgICAgIGNvbG9yOiAkY29kZTtcbiAgICAgIH1cbiAgICB9XG5cdH1cblxuXHQvLyBhZGQgc3BlY2lhbCBzdHlsaW5nIGZvciBzcXVhcmVkIGJ1dHRvbnNcblx0Ji5pcy1zdHlsZS1zcXVhcmVkIC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuXHRcdGJvcmRlci1yYWRpdXM6IDA7XG5cdH1cblxuXHQvLyBhZGQgb3V0bGluZSBzdHlsZXNcblx0Ji5pcy1zdHlsZS1vdXRsaW5lIC53cC1ibG9jay1idXR0b25fX2xpbmt7XG5cdFx0QGV4dGVuZCAuaG9sbG93O1xuXHR9XG5cblx0Ly8gc2V0IHRyYW5zcGFyZW50IGJhY2tncm91bmQgdG8gYmxvY2sgZm9yIG91dGxpbmUgYnV0dG9uXG5cdCYuaXMtc3R5bGUtb3V0bGluZSxcblx0Ji5pcy1zdHlsZS1vdXRsaW5lOmhvdmVyLFxuXHQmLmlzLXN0eWxlLW91dGxpbmU6Zm9jdXMsXG5cdCYuaXMtc3R5bGUtb3V0bGluZTphY3RpdmUge1xuICAgIC8vIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIC53cC1ibG9jay1idXR0b25fX2xpbmt7XG4gICAgICAvLyBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cdH1cbn1cblxuLyoqID09PSBGaWxlID09PSAqL1xuLndwLWJsb2NrLWZpbGUgLndwLWJsb2NrLWZpbGVfX2J1dHRvbntcbiAgQGluY2x1ZGUgYnV0dG9uKCk7XG59XG4iLCJAZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiAncm9ib3RvYm9sZCc7XHJcbiAgICBzcmM6IHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tYm9sZC13ZWIuZW90Jyk7XHJcbiAgICBzcmM6IHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tYm9sZC13ZWIuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcclxuICAgICAgICAgdXJsKCcvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by1ib2xkLXdlYi53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuICAgICAgICAgdXJsKCcvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by1ib2xkLXdlYi53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXHJcbiAgICAgICAgIHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tYm9sZC13ZWIudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxyXG4gICAgICAgICB1cmwoJy93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLWJvbGQtd2ViLnN2ZyNyb2JvdG9ib2xkJykgZm9ybWF0KCdzdmcnKTtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcblxyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiAncm9ib3RvYm9sZF9pdGFsaWMnO1xyXG4gICAgc3JjOiB1cmwoJy93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLWJvbGRpdGFsaWMtd2ViLmVvdCcpO1xyXG4gICAgc3JjOiB1cmwoJy93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLWJvbGRpdGFsaWMtd2ViLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXHJcbiAgICAgICAgIHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tYm9sZGl0YWxpYy13ZWIud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXHJcbiAgICAgICAgIHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tYm9sZGl0YWxpYy13ZWIud29mZicpIGZvcm1hdCgnd29mZicpLFxyXG4gICAgICAgICB1cmwoJy93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLWJvbGRpdGFsaWMtd2ViLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcclxuICAgICAgICAgdXJsKCcvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by1ib2xkaXRhbGljLXdlYi5zdmcjcm9ib3RvYm9sZF9pdGFsaWMnKSBmb3JtYXQoJ3N2ZycpO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuXHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdyb2JvdG9yZWd1bGFyJztcclxuICAgIHNyYzogdXJsKCcvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by1yZWd1bGFyLXdlYi5lb3QnKTtcclxuICAgIHNyYzogdXJsKCcvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by1yZWd1bGFyLXdlYi5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxyXG4gICAgICAgICB1cmwoJy93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLXJlZ3VsYXItd2ViLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG4gICAgICAgICB1cmwoJy93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLXJlZ3VsYXItd2ViLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcclxuICAgICAgICAgdXJsKCcvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by1yZWd1bGFyLXdlYi50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXHJcbiAgICAgICAgIHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tcmVndWxhci13ZWIuc3ZnI3JvYm90b3JlZ3VsYXInKSBmb3JtYXQoJ3N2ZycpO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuXHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdyb2JvdG9pdGFsaWMnO1xyXG4gICAgc3JjOiB1cmwoJy93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLXJlZ3VsYXJpdGFsaWMtd2ViLmVvdCcpO1xyXG4gICAgc3JjOiB1cmwoJy93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLXJlZ3VsYXJpdGFsaWMtd2ViLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXHJcbiAgICAgICAgIHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tcmVndWxhcml0YWxpYy13ZWIud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXHJcbiAgICAgICAgIHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tcmVndWxhcml0YWxpYy13ZWIud29mZicpIGZvcm1hdCgnd29mZicpLFxyXG4gICAgICAgICB1cmwoJy93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLXJlZ3VsYXJpdGFsaWMtd2ViLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcclxuICAgICAgICAgdXJsKCcvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by1yZWd1bGFyaXRhbGljLXdlYi5zdmcjcm9ib3RvaXRhbGljJykgZm9ybWF0KCdzdmcnKTtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcblxyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiAncm9ib3RvbGlnaHQnO1xyXG4gICAgc3JjOiB1cmwoJy93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLWxpZ2h0LXdlYi5lb3QnKTtcclxuICAgIHNyYzogdXJsKCcvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by1saWdodC13ZWIuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcclxuICAgICAgICAgdXJsKCcvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by1saWdodC13ZWIud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXHJcbiAgICAgICAgIHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tbGlnaHQtd2ViLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcclxuICAgICAgICAgdXJsKCcvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by1saWdodC13ZWIudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxyXG4gICAgICAgICB1cmwoJy93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLWxpZ2h0LXdlYi5zdmcjcm9ib3RvbGlnaHQnKSBmb3JtYXQoJ3N2ZycpO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuXHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdyb2JvdG9saWdodF9pdGFsaWMnO1xyXG4gICAgc3JjOiB1cmwoJy93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvci93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvb2JvdG8tbGlnaHRpdGFsaWMtd2ViLmVvdCcpO1xyXG4gICAgc3JjOiB1cmwoJy93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLWxpZ2h0aXRhbGljLXdlYi5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxyXG4gICAgICAgICB1cmwoJy93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLWxpZ2h0aXRhbGljLXdlYi53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuICAgICAgICAgdXJsKCcvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by1saWdodGl0YWxpYy13ZWIud29mZicpIGZvcm1hdCgnd29mZicpLFxyXG4gICAgICAgICB1cmwoJy93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLWxpZ2h0aXRhbGljLXdlYi50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXHJcbiAgICAgICAgIHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tbGlnaHRpdGFsaWMtd2ViLnN2ZyNyb2JvdG9saWdodF9pdGFsaWMnKSBmb3JtYXQoJ3N2ZycpO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuXHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdyb2JvdG9tZWRpdW0nO1xyXG4gICAgc3JjOiB1cmwoJy93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLW1lZGl1bS13ZWIuZW90Jyk7XHJcbiAgICBzcmM6IHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tbWVkaXVtLXdlYi5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxyXG4gICAgICAgICB1cmwoJy93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLW1lZGl1bS13ZWIud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXHJcbiAgICAgICAgIHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tbWVkaXVtLXdlYi53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXHJcbiAgICAgICAgIHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tbWVkaXVtLXdlYi50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXHJcbiAgICAgICAgIHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tbWVkaXVtLXdlYi5zdmcjcm9ib3RvbWVkaXVtJykgZm9ybWF0KCdzdmcnKTtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcblxyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiAncm9ib3RvbWVkaXVtX2l0YWxpYyc7XHJcbiAgICBzcmM6IHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tbWVkaXVtaXRhbGljLXdlYi5lb3QnKTtcclxuICAgIHNyYzogdXJsKCcvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by1tZWRpdW1pdGFsaWMtd2ViLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXHJcbiAgICAgICAgIHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tbWVkaXVtaXRhbGljLXdlYi53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuICAgICAgICAgdXJsKCcvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by1tZWRpdW1pdGFsaWMtd2ViLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcclxuICAgICAgICAgdXJsKCcvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by1tZWRpdW1pdGFsaWMtd2ViLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcclxuICAgICAgICAgdXJsKCcvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by1tZWRpdW1pdGFsaWMtd2ViLnN2ZyNyb2JvdG9tZWRpdW1faXRhbGljJykgZm9ybWF0KCdzdmcnKTtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcblxyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiAncm9ib3RvdGhpbic7XHJcbiAgICBzcmM6IHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tdGhpbi13ZWIuZW90Jyk7XHJcbiAgICBzcmM6IHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tdGhpbi13ZWIuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcclxuICAgICAgICAgdXJsKCcvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by10aGluLXdlYi53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuICAgICAgICAgdXJsKCcvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by10aGluLXdlYi53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXHJcbiAgICAgICAgIHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tdGhpbi13ZWIudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxyXG4gICAgICAgICB1cmwoJy93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLXRoaW4td2ViLnN2ZyNyb2JvdG90aGluJykgZm9ybWF0KCdzdmcnKTtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcblxyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiAncm9ib3RvdGhpbl9pdGFsaWMnO1xyXG4gICAgc3JjOiB1cmwoJy93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLXRoaW5pdGFsaWMtd2ViLmVvdCcpO1xyXG4gICAgc3JjOiB1cmwoJy93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLXRoaW5pdGFsaWMtd2ViLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXHJcbiAgICAgICAgIHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tdGhpbml0YWxpYy13ZWIud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXHJcbiAgICAgICAgIHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9yb2JvdG8tdGhpbml0YWxpYy13ZWIud29mZicpIGZvcm1hdCgnd29mZicpLFxyXG4gICAgICAgICB1cmwoJy93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvcm9ib3RvLXRoaW5pdGFsaWMtd2ViLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcclxuICAgICAgICAgdXJsKCcvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL3JvYm90by10aGluaXRhbGljLXdlYi5zdmcjcm9ib3RvdGhpbl9pdGFsaWMnKSBmb3JtYXQoJ3N2ZycpO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuXHJcbn1cclxuXHJcblxyXG5AZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiAnYmViYXNfbmV1ZWJvbGQnO1xyXG4gICAgc3JjOiB1cmwoJy93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvYmViYXNuZXVlLWJvbGQtd2ViLmVvdCcpO1xyXG4gICAgc3JjOiB1cmwoJy93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvYmViYXNuZXVlLWJvbGQtd2ViLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXHJcbiAgICAgICAgIHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9iZWJhc25ldWUtYm9sZC13ZWIud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXHJcbiAgICAgICAgIHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9iZWJhc25ldWUtYm9sZC13ZWIud29mZicpIGZvcm1hdCgnd29mZicpLFxyXG4gICAgICAgICB1cmwoJy93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvYmViYXNuZXVlLWJvbGQtd2ViLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcclxuICAgICAgICAgdXJsKCcvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL2JlYmFzbmV1ZS1ib2xkLXdlYi5zdmcjYmViYXNfbmV1ZWJvbGQnKSBmb3JtYXQoJ3N2ZycpO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuXHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdiZWJhc19uZXVlcmVndWxhcic7XHJcbiAgICBzcmM6IHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9iZWJhc25ldWUtcmVndWxhci13ZWIuZW90Jyk7XHJcbiAgICBzcmM6IHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9iZWJhc25ldWUtcmVndWxhci13ZWIuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcclxuICAgICAgICAgdXJsKCcvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL2JlYmFzbmV1ZS1yZWd1bGFyLXdlYi53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuICAgICAgICAgdXJsKCcvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL2JlYmFzbmV1ZS1yZWd1bGFyLXdlYi53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXHJcbiAgICAgICAgIHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9iZWJhc25ldWUtcmVndWxhci13ZWIudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxyXG4gICAgICAgICB1cmwoJy93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvYmViYXNuZXVlLXJlZ3VsYXItd2ViLnN2ZyNiZWJhc19uZXVlcmVndWxhcicpIGZvcm1hdCgnc3ZnJyk7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG5cclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogJ2JlYmFzX25ldWVib29rJztcclxuICAgIHNyYzogdXJsKCcvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL2JlYmFzbmV1ZS1ib29rLXdlYi5lb3QnKTtcclxuICAgIHNyYzogdXJsKCcvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL2JlYmFzbmV1ZS1ib29rLXdlYi5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxyXG4gICAgICAgICB1cmwoJy93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvYmViYXNuZXVlLWJvb2std2ViLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG4gICAgICAgICB1cmwoJy93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvYmViYXNuZXVlLWJvb2std2ViLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcclxuICAgICAgICAgdXJsKCcvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL2JlYmFzbmV1ZS1ib29rLXdlYi50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXHJcbiAgICAgICAgIHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9iZWJhc25ldWUtYm9vay13ZWIuc3ZnI2JlYmFzX25ldWVib29rJykgZm9ybWF0KCdzdmcnKTtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcblxyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiAnYmViYXNfbmV1ZWxpZ2h0JztcclxuICAgIHNyYzogdXJsKCcvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL2JlYmFzbmV1ZS1saWdodC13ZWIuZW90Jyk7XHJcbiAgICBzcmM6IHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9iZWJhc25ldWUtbGlnaHQtd2ViLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXHJcbiAgICAgICAgIHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9iZWJhc25ldWUtbGlnaHQtd2ViLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG4gICAgICAgICB1cmwoJy93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvYmViYXNuZXVlLWxpZ2h0LXdlYi53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXHJcbiAgICAgICAgIHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9iZWJhc25ldWUtbGlnaHQtd2ViLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcclxuICAgICAgICAgdXJsKCdiZWJhc25ldWUtbGlnaHQtd2ViLnN2ZyNiZWJhc19uZXVlbGlnaHQnKSBmb3JtYXQoJ3N2ZycpO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuXHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdiZWJhc19uZXVldGhpbic7XHJcbiAgICBzcmM6IHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9iZWJhc25ldWUtdGhpbi13ZWIuZW90Jyk7XHJcbiAgICBzcmM6IHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9iZWJhc25ldWUtdGhpbi13ZWIuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcclxuICAgICAgICAgdXJsKCcvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL2JlYmFzbmV1ZS10aGluLXdlYi53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuICAgICAgICAgdXJsKCcvd3AtY29udGVudC90aGVtZXMvT2FrbGFuZFVuaXZlcnNpdHlBcnRHYWxsZXJ5L2Rpc3QvYXNzZXRzL2ZvbnRzL2JlYmFzbmV1ZS10aGluLXdlYi53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXHJcbiAgICAgICAgIHVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL09ha2xhbmRVbml2ZXJzaXR5QXJ0R2FsbGVyeS9kaXN0L2Fzc2V0cy9mb250cy9iZWJhc25ldWUtdGhpbi13ZWIudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxyXG4gICAgICAgICB1cmwoJy93cC1jb250ZW50L3RoZW1lcy9PYWtsYW5kVW5pdmVyc2l0eUFydEdhbGxlcnkvZGlzdC9hc3NldHMvZm9udHMvYmViYXNuZXVlLXRoaW4td2ViLnN2ZyNiZWJhc19uZXVldGhpbicpIGZvcm1hdCgnc3ZnJyk7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG5cclxufSIsIi8vIE5hdmlnYXRpb24gYnJlYWtwb2ludHNcbi5tb2JpbGUtbWVudSxcbi5zaXRlLXRpdGxlLWJhciB7XG4gIEBpbmNsdWRlIGhpZGUtZm9yKG1lZGl1bSk7XG59XG4vL1xuLmRlc2t0b3AtbWVudSxcbi5zaXRlLW5hdmlnYXRpb24gLnRvcC1iYXItbGVmdCB7XG4gIEBpbmNsdWRlIHNob3ctZm9yKG1lZGl1bSk7XG59XG5cbi8vIFNpdGUgdGl0bGVcbi5zaXRlLWRlc2t0b3AtdGl0bGUgYSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vLyBXUCBwb3N0IG5hdmlnYXRpb25cbi5wb3N0LW5hdmlnYXRpb24ge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLm5hdi1wcmV2aW91cyB7XG4gIGZsb2F0OmxlZnQ7XG59XG5cbi5uYXYtbmV4dCB7XG4gIGZsb2F0OnJpZ2h0O1xufVxuIiwiLm1haW4tY29udGFpbmVyIHtcbiAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXI7XG59XG5cbi5tYWluLWdyaWQge1xuICBAaW5jbHVkZSB4eS1ncmlkKCk7XG4gIG1hcmdpbi10b3A6IDFyZW07XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICB9XG5cbiAgJi5zaWRlYmFyLWxlZnQge1xuICAgIC8vIFBsYWNlIHRoZSBzaWRlYmFyIGJlbG93IG1haW4gY29udGVudCBvbiBzbWFsbCBzY3JlZW5zIC4uLlxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgICAgIC5tYWluLWNvbnRlbnQgeyBvcmRlcjogMTsgfVxuICAgICAgLnNpZGViYXIgeyBvcmRlcjogMjsgfVxuICAgIH1cblxuICAgIC8vIC4uLiBhbmQgdG8gdGhlIGxlZnQgb24gbWVkaXVtLXVwIHNjcmVlbnMsIHdoZW4gdXNpbmcgdGhlIHNpZGViYXItbGVmdCB0ZW1wbGF0ZVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAubWFpbi1jb250ZW50IHsgb3JkZXI6IDI7IH1cbiAgICAgIC5zaWRlYmFyIHsgb3JkZXI6IDE7IH1cbiAgICB9XG4gIH1cblxuICAvLyBGdWxsIHdpZHRoIHRlbXBsYXRlXG4gIC5tYWluLWNvbnRlbnQtZnVsbC13aWR0aCB7XG4gICAgQGluY2x1ZGUgeHktY2VsbCgxMik7XG4gIH1cblxuICAvLyBEZWZhdWx0IHRlbXBsYXRlXG4gIC5tYWluLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwoMTIpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKDgpO1xuICAgIH1cbiAgfVxuXG4gIC5zaWRlYmFyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKDEyKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbCg0KTtcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgfVxuXG4gIH1cbn1cbiIsIi5mb290ZXItY29udGFpbmVyIHtcbiAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXI7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4gIG1hcmdpbi10b3A6IHJlbS1jYWxjKDYwKTtcbn1cblxuLmZvb3Rlci1ncmlkIHtcbiAgQGluY2x1ZGUgeHktZ3JpZDtcbiAgcGFkZGluZzogcmVtLWNhbGMoMzApIDA7XG5cbiAgc2VjdGlvbiB7XG4gICAgQGluY2x1ZGUgeHktY2VsbCgpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwoYXV0byk7XG4gICAgfVxuICB9XG5cbiAgdWwge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuIiwiYm9keSN0aW55bWNle1xuICBoZWlnaHQ6IGF1dG87IC8vIEZpeCBlZGl0b3Igc3R5bGUgYnVnXG4gIG1heC13aWR0aDogJGdyaWQtcm93LXdpZHRoOyAvLyBHaXZlIHRoZSBlZGl0b3IgYSBtYXgtd2lkdGhcbiAgcGFkZGluZzogcmVtLWNhbGMoMjApICFpbXBvcnRhbnQ7XG59IiwiLnNpdGVzLWJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBib3gtc2hhZG93OiAwIC0ycHggMCByZ2JhKDAsMCwwLDAuMikgaW5zZXQ7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYm9yZGVyOiBub25lO1xufVxuIiwiLmNhcmRzLWNvbnRhaW5lciB7XG5cbiAgQGluY2x1ZGUgeHktZ3JpZDtcblxuICAuY2FyZCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbCgxMik7XG5cbiAgICAgIC5jYXJkLWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwoMSBvZiAzLCB0cnVlLCAwLjdyZW0gKTtcblxuICAgIH1cblxuICB9XG59XG4iLCIuZmVhdHVyZWQtaGVybyB7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgaGVpZ2h0OiByZW0tY2FsYygzMDApO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgaGVpZ2h0OiByZW0tY2FsYyg0MDApO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDQwMCk7XG4gIH1cbn1cbiIsIi5kb3R0ZWQge1xuICBib3JkZXItc3R5bGU6IGRhc2hlZDtcbiAgbWFyZ2luOiAycmVtIDA7XG59XG4iLCIvLyBBcHBseSBvdXRsaW5lIHN0eWxlcyBvbmx5IHdoZW4gaW5wdXQgbWV0aG9kIGlzIGtleWJvYXJkXG4vLyByZW1vdmUgOmZvY3VzIHN0eWxlIHZpYSBXaGF0IElucHV0IHVzaW5nIHByb2dyZXNzaXZlIGVuaGFuY2VtZW50XG4vLyBzbyA6Zm9jdXMgaXNuJ3QgbGVmdCBicm9rZW4gaWYgSmF2YVNjcmlwdCBmYWlsc1xuXG5bZGF0YS13aGF0aW5wdXQ9XCJtb3VzZVwiXSBhOmZvY3VzLCBidXR0b246Zm9jdXNcbltkYXRhLXdoYXRpbnB1dD1cInRvdWNoXCJdIGE6Zm9jdXMsIGJ1dHRvbjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG4iLCIvLyBQYWdlIGhlYWRlclxuLmZyb250LWhlcm8ge1xuICAubWFya2V0aW5nIHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcig1NXJlbSk7XG4gICAgQGluY2x1ZGUgeHktZ3JpZDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9kZW1vL2hlcm8tYmctZm91bmRhdGlvbi02LXNtYWxsLnN2ZycpIGJvdHRvbSBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b207XG4gICAgcGFkZGluZzogcmVtLWNhbGMoNjUlKSAwO1xuICAgIG1hcmdpbjogMCAwIHJlbS1jYWxjKDMyKTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL2RlbW8vaGVyby1iZy1mb3VuZGF0aW9uLTYtbGFyZ2Uuc3ZnJykgYm90dG9tIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDY4NSk7XG4gICAgbWFyZ2luOiAwIDAgcmVtLWNhbGMoNzIpO1xuICB9XG5cbiAgLndhdGNoIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKDcpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKDEyKTtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAjQjRDOUQxO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMjApO1xuICAgIH1cblxuICAgIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuXG4gICAgI3N0YXJnYXplcnMge1xuICAgICAgOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxmMDliXCI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gICAgICAgIGNvbG9yOiAjQjRDOUQxO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDgpO1xuICAgICAgfVxuICAgIH1cblxuICAgICN0d2l0dGVyIHtcbiAgICAgIDpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZjA5OVwiO1xuICAgICAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICAgICAgICBjb2xvcjogI0I0QzlEMTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyg4KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG4gIC50YWdsaW5lIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKDgpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKDUpO1xuICAgICAgcGFkZGluZy10b3A6IDZyZW07XG4gICAgfVxuICB9XG5cbiAgaDEge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XG4gICAgICBmb250LXNpemU6IDIuMnJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgZm9udC1zaXplOiAyLjg3NXJlbTtcbiAgICB9XG4gIH1cblxuICBoNCB7XG4gICAgY29sb3I6ICNmZWZlZmU7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LXNpemU6IDEuMzEyNXJlbTtcbiAgfVxuXG4gIC5kb3dubG9hZCB7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMjApO1xuICB9XG59XG5cbi8vIEludHJvXG4uaW50cm8ge1xuICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcjtcbiAgQGluY2x1ZGUgeHktZ3JpZDtcblxuICAuZnAtaW50cm8ge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwoMTIpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKDEwKTtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtb2Zmc2V0KDEpO1xuXG4gICAgICBoMiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgIH1cblxuICAgICAgaDQge1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICBjb2xvcjogIzc3NztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gU2VjdGlvbiBkaXZpZGVyXG4uc2VjdGlvbi1kaXZpZGVyIHtcbiAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXI7XG4gIEBpbmNsdWRlIHh5LWdyaWQ7XG5cbiAgaHIge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwoMTIpO1xuICAgIEBleHRlbmQgLmRvdHRlZDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG59XG5cbi8vIEJlbmVmaXRzXG4uYmVuZWZpdHMge1xuICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcjtcbiAgQGluY2x1ZGUgeHktZ3JpZDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIGhlYWRlciB7XG4gICAgQGluY2x1ZGUgeHktY2VsbCgxMik7XG5cbiAgICBoMiB7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgIH1cblxuICAgIGg0IHtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgY29sb3I6ICM3Nzc7XG4gICAgfVxuICB9XG5cbiAgLnNlbWFudGljLFxuICAucmVzcG9uc2l2ZSxcbiAgLmN1c3RvbWl6YWJsZSxcbiAgLnByb2Zlc3Npb25hbCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbCgxMik7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwoMyk7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIHBhZGRpbmc6IDEuMjVyZW07XG4gICAgICBtYXJnaW46IDFyZW0gYXV0byAwIGF1dG87XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgY29sb3I6ICMwYTBhMGE7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgfVxuICB9XG5cbiAgLndoeS1mb3VuZGF0aW9uIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsKDEyKTtcbiAgICBtYXJnaW4tdG9wOiA0cmVtO1xuICB9XG59XG4iLCIua2l0Y2hlbi1zaW5rLWhlYWRlciB7XG4gIEBpbmNsdWRlIHh5LWNlbGwoMTIpO1xufVxuXG5cbi5raXRjaGVuLXNpbmstY29tcG9uZW50cyB7XG4gIGhyIHtcbiAgICBtYXJnaW46IDNyZW0gMDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsKDEyKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsKDkpO1xuICB9XG59XG5cbi5raXRjaGVuLXNpbmstbmF2IHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbCgzKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogcmlnaHQ7XG5cbiAgICAuZG9jcy1zdWItbWVudSB7XG4gICAgICBmb250LXNpemU6IDAuODVyZW07XG4gICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIH1cblxuICAgIC5kb2NzLW1lbnUtdGl0bGUge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICBwYWRkaW5nLXRvcDogMS41cmVtO1xuICAgIH1cblxuICAgIC5kb2NzLXRvYyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmctbGVmdDogNHJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgfVxuXG4gICAgLmRvY3MtdG9jIC5hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZDogIzIxOTllODtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICB9XG5cbiAgICAuZG9jcy10b2MgLmRvY3Mtc3ViLW1lbnU6Zmlyc3QtY2hpbGQgLmRvY3MtbWVudS10aXRsZSB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIH1cbiAgfVxufVxuXG4ua2l0Y2hlbi1zaW5rLWdyaWQge1xuICAuZ3JpZC14IHtcbiAgICBiYWNrZ3JvdW5kOiAjZDZlY2ZhO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogMnJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgXG4gICAgLmNlbGwsOm50aC1jaGlsZChvZGQpIHtcbiAgICAgIGJhY2tncm91bmQ6ICM3YmMxZWY7XG4gICAgICBjb2xvcjogIzBhMGEwYTtcbiAgICB9XG5cbiAgICAuY2VsbDpudGgtY2hpbGQoZXZlbikge1xuICAgICAgYmFja2dyb3VuZDogIzE3NzliYTtcbiAgICAgIGNvbG9yOiAjZmVmZWZlO1xuICAgIH1cbiAgfVxufVxuIl19 */
