@charset "UTF-8";















































:root {
  --govuk-frontend-version: "5.11.0";
  --govuk-breakpoint-mobile: 20rem;
  --govuk-frontend-breakpoint-mobile: var(--govuk-breakpoint-mobile);
  --govuk-breakpoint-tablet: 40.0625rem;
  --govuk-frontend-breakpoint-tablet: var(--govuk-breakpoint-tablet);
  --govuk-breakpoint-desktop: 48.0625rem;
  --govuk-frontend-breakpoint-desktop: var(--govuk-breakpoint-desktop);
}


.govuk-link {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-decoration: underline;
  text-decoration-thickness: max(1px, .0625rem);
  text-underline-offset: 0.1578em;
}
/*! Copyright (c) 2011 by Margaret Calvert & Henrik Kubel. All rights reserved. The font has been customised for exclusive use on gov.uk. This cut is not commercially available. */ /* stylelint-disable-line scss/comment-no-loud  */
@font-face {
  font-family: "GDS Transport";
  font-style: normal;
  font-weight: normal;
  src: url("/assets/govuk-frontend/dist/govuk/assets/fonts/light-94a07e06a1-v2-94a07e06a104e76fe40583f74b204aee.woff2") format("woff2"), url("/assets/govuk-frontend/dist/govuk/assets/fonts/light-f591b13f7d-v2-f591b13f7daad512cf0dfa0ddcb2960e.woff") format("woff");
  font-display: fallback;
}
@font-face {
  font-family: "GDS Transport";
  font-style: normal;
  font-weight: bold;
  src: url("/assets/govuk-frontend/dist/govuk/assets/fonts/bold-b542beb274-v2-b542beb2746ca0e4a5a9aa7ea7767df7.woff2") format("woff2"), url("/assets/govuk-frontend/dist/govuk/assets/fonts/bold-affa96571d-v2-affa96571d94a9ab7d95b0850b26edde.woff") format("woff");
  font-display: fallback;
}
@media print {
  .govuk-link {
    font-family: sans-serif;
  }
}
.govuk-link:hover {
  text-decoration-thickness: max(3px, .1875rem, .12em);
  -webkit-text-decoration-skip-ink: none;
  text-decoration-skip-ink: none;
  -webkit-text-decoration-skip: none;
  text-decoration-skip: none;
}
.govuk-link:focus {
  outline: 3px solid transparent;
  color: #0b0c0c;
  background-color: #ffdd00;
  -webkit-box-shadow: 0 -2px #ffdd00, 0 4px #0b0c0c;
          box-shadow: 0 -2px #ffdd00, 0 4px #0b0c0c;
  text-decoration: none;
}
@supports not (text-wrap: balance) {
  .govuk-link:focus {
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
  }
}
.govuk-link:link {
  color: #1d70b8;
}
.govuk-link:visited {
  color: #4c2c92;
}
.govuk-link:hover {
  color: #003078;
}
.govuk-link:active {
  color: #0b0c0c;
}
.govuk-link:focus {
  color: #0b0c0c;
}
@media print {
  [href^="/"].govuk-link::after, [href^="http://"].govuk-link::after, [href^="https://"].govuk-link::after {
    content: " (" attr(href) ")";
    font-size: 90%;
    word-wrap: break-word;
  }
}

.govuk-link--muted:link, .govuk-link--muted:visited {
  color: #505a5f;
}
.govuk-link--muted:hover, .govuk-link--muted:active {
  color: #0b0c0c;
}
.govuk-link--muted:focus {
  color: #0b0c0c;
}

.govuk-link--text-colour:link, .govuk-link--text-colour:visited {
  color: #0b0c0c;
}
@media print {
  .govuk-link--text-colour:link, .govuk-link--text-colour:visited {
    color: #000000;
  }
}
.govuk-link--text-colour:hover {
  color: rgba(11, 12, 12, 0.99);
}
.govuk-link--text-colour:active, .govuk-link--text-colour:focus {
  color: #0b0c0c;
}
@media print {
  .govuk-link--text-colour:active, .govuk-link--text-colour:focus {
    color: #000000;
  }
}

.govuk-link--inverse:link, .govuk-link--inverse:visited {
  color: #ffffff;
}
.govuk-link--inverse:hover, .govuk-link--inverse:active {
  color: rgba(255, 255, 255, 0.99);
}
.govuk-link--inverse:focus {
  color: #0b0c0c;
}

.govuk-link--no-underline:not(:hover):not(:active) {
  text-decoration: none;
}

.govuk-link--no-visited-state:link {
  color: #1d70b8;
}
.govuk-link--no-visited-state:visited {
  color: #1d70b8;
}
.govuk-link--no-visited-state:hover {
  color: #003078;
}
.govuk-link--no-visited-state:active {
  color: #0b0c0c;
}
.govuk-link--no-visited-state:focus {
  color: #0b0c0c;
}

.govuk-link-image {
  display: inline-block;
  line-height: 0;
  text-decoration: none;
}
.govuk-link-image:focus {
  outline: 3px solid transparent;
  -webkit-box-shadow: 0 0 0 4px #ffdd00, 0 0 0 8px #0b0c0c;
          box-shadow: 0 0 0 4px #ffdd00, 0 0 0 8px #0b0c0c;
}


.govuk-list {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 1.3157894737;
  color: #0b0c0c;
  margin-top: 0;
  margin-bottom: 15px;
  padding-left: 0;
  list-style-type: none;
}
@media print {
  .govuk-list {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-list {
    font-size: 14pt;
    line-height: 1.15;
  }
}
@media print {
  .govuk-list {
    color: #000000;
  }
}
@media (min-width: 40.0625em) {
  .govuk-list {
    margin-bottom: 20px;
  }
}
.govuk-list .govuk-list {
  margin-top: 10px;
}

.govuk-list > li {
  margin-bottom: 5px;
}

.govuk-list--bullet {
  padding-left: 20px;
  list-style-type: disc;
}

.govuk-list--number {
  padding-left: 20px;
  list-style-type: decimal;
}

.govuk-list--bullet > li,
.govuk-list--number > li {
  margin-bottom: 0;
}
@media (min-width: 40.0625em) {
  .govuk-list--bullet > li,
  .govuk-list--number > li {
    margin-bottom: 5px;
  }
}

.govuk-list--spaced > li {
  margin-bottom: 10px;
}
@media (min-width: 40.0625em) {
  .govuk-list--spaced > li {
    margin-bottom: 15px;
  }
}


.govuk-heading-xl {
  color: #0b0c0c;
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 700;
  font-size: 2rem;
  line-height: 1.09375;
  display: block;
  margin-top: 0;
  margin-bottom: 30px;
}
@media print {
  .govuk-heading-xl {
    color: #000000;
  }
}
@media print {
  .govuk-heading-xl {
    font-family: sans-serif;
  }
}
@media (min-width: 40.0625em) {
  .govuk-heading-xl {
    font-size: 3rem;
    line-height: 1.0416666667;
  }
}
@media print {
  .govuk-heading-xl {
    font-size: 32pt;
    line-height: 1.15;
  }
}
@media (min-width: 40.0625em) {
  .govuk-heading-xl {
    margin-bottom: 50px;
  }
}

.govuk-heading-l {
  color: #0b0c0c;
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 700;
  font-size: 1.6875rem;
  line-height: 1.1111111111;
  display: block;
  margin-top: 0;
  margin-bottom: 20px;
}
@media print {
  .govuk-heading-l {
    color: #000000;
  }
}
@media print {
  .govuk-heading-l {
    font-family: sans-serif;
  }
}
@media (min-width: 40.0625em) {
  .govuk-heading-l {
    font-size: 2.25rem;
    line-height: 1.1111111111;
  }
}
@media print {
  .govuk-heading-l {
    font-size: 24pt;
    line-height: 1.05;
  }
}
@media (min-width: 40.0625em) {
  .govuk-heading-l {
    margin-bottom: 30px;
  }
}

.govuk-heading-m {
  color: #0b0c0c;
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 700;
  font-size: 1.3125rem;
  line-height: 1.1904761905;
  display: block;
  margin-top: 0;
  margin-bottom: 15px;
}
@media print {
  .govuk-heading-m {
    color: #000000;
  }
}
@media print {
  .govuk-heading-m {
    font-family: sans-serif;
  }
}
@media (min-width: 40.0625em) {
  .govuk-heading-m {
    font-size: 1.5rem;
    line-height: 1.25;
  }
}
@media print {
  .govuk-heading-m {
    font-size: 18pt;
    line-height: 1.15;
  }
}
@media (min-width: 40.0625em) {
  .govuk-heading-m {
    margin-bottom: 20px;
  }
}

.govuk-heading-s {
  color: #0b0c0c;
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 700;
  font-size: 1.1875rem;
  line-height: 1.3157894737;
  display: block;
  margin-top: 0;
  margin-bottom: 15px;
}
@media print {
  .govuk-heading-s {
    color: #000000;
  }
}
@media print {
  .govuk-heading-s {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-heading-s {
    font-size: 14pt;
    line-height: 1.15;
  }
}
@media (min-width: 40.0625em) {
  .govuk-heading-s {
    margin-bottom: 20px;
  }
}

.govuk-caption-xl {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.3125rem;
  line-height: 1.1904761905;
  display: block;
  margin-bottom: 5px;
  color: #505a5f;
}
@media print {
  .govuk-caption-xl {
    font-family: sans-serif;
  }
}
@media (min-width: 40.0625em) {
  .govuk-caption-xl {
    font-size: 1.6875rem;
    line-height: 1.1111111111;
  }
}
@media print {
  .govuk-caption-xl {
    font-size: 18pt;
    line-height: 1.15;
  }
}

.govuk-caption-l {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.3125rem;
  line-height: 1.1904761905;
  display: block;
  margin-bottom: 5px;
  color: #505a5f;
}
@media print {
  .govuk-caption-l {
    font-family: sans-serif;
  }
}
@media (min-width: 40.0625em) {
  .govuk-caption-l {
    font-size: 1.5rem;
    line-height: 1.25;
  }
}
@media print {
  .govuk-caption-l {
    font-size: 18pt;
    line-height: 1.15;
  }
}
@media (min-width: 40.0625em) {
  .govuk-caption-l {
    margin-bottom: 0;
  }
}

.govuk-caption-m {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 1.3157894737;
  display: block;
  color: #505a5f;
}
@media print {
  .govuk-caption-m {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-caption-m {
    font-size: 14pt;
    line-height: 1.15;
  }
}

.govuk-body-lead, .govuk-body-l {
  color: #0b0c0c;
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.3125rem;
  line-height: 1.1904761905;
  margin-top: 0;
  margin-bottom: 20px;
}
@media print {
  .govuk-body-lead, .govuk-body-l {
    color: #000000;
  }
}
@media print {
  .govuk-body-lead, .govuk-body-l {
    font-family: sans-serif;
  }
}
@media (min-width: 40.0625em) {
  .govuk-body-lead, .govuk-body-l {
    font-size: 1.5rem;
    line-height: 1.25;
  }
}
@media print {
  .govuk-body-lead, .govuk-body-l {
    font-size: 18pt;
    line-height: 1.15;
  }
}
@media (min-width: 40.0625em) {
  .govuk-body-lead, .govuk-body-l {
    margin-bottom: 30px;
  }
}

.govuk-body, .govuk-body-m {
  color: #0b0c0c;
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 1.3157894737;
  margin-top: 0;
  margin-bottom: 15px;
}
@media print {
  .govuk-body, .govuk-body-m {
    color: #000000;
  }
}
@media print {
  .govuk-body, .govuk-body-m {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-body, .govuk-body-m {
    font-size: 14pt;
    line-height: 1.15;
  }
}
@media (min-width: 40.0625em) {
  .govuk-body, .govuk-body-m {
    margin-bottom: 20px;
  }
}

.govuk-body-s {
  color: #0b0c0c;
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.25;
  margin-top: 0;
  margin-bottom: 15px;
}
@media print {
  .govuk-body-s {
    color: #000000;
  }
}
@media print {
  .govuk-body-s {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-body-s {
    font-size: 14pt;
    line-height: 1.2;
  }
}
@media (min-width: 40.0625em) {
  .govuk-body-s {
    margin-bottom: 20px;
  }
}

.govuk-body-xs {
  color: #0b0c0c;
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 0.875rem;
  line-height: 1.4285714286;
  margin-top: 0;
  margin-bottom: 15px;
}
@media print {
  .govuk-body-xs {
    color: #000000;
  }
}
@media print {
  .govuk-body-xs {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-body-xs {
    font-size: 12pt;
    line-height: 1.2;
  }
}
@media (min-width: 40.0625em) {
  .govuk-body-xs {
    margin-bottom: 20px;
  }
}

.govuk-body-l + .govuk-heading-l, .govuk-body-lead + .govuk-heading-l {
  padding-top: 5px;
}
@media (min-width: 40.0625em) {
  .govuk-body-l + .govuk-heading-l, .govuk-body-lead + .govuk-heading-l {
    padding-top: 10px;
  }
}

.govuk-body-m + .govuk-heading-l, .govuk-body + .govuk-heading-l,
.govuk-body-s + .govuk-heading-l,
.govuk-list + .govuk-heading-l {
  padding-top: 15px;
}
@media (min-width: 40.0625em) {
  .govuk-body-m + .govuk-heading-l, .govuk-body + .govuk-heading-l,
  .govuk-body-s + .govuk-heading-l,
  .govuk-list + .govuk-heading-l {
    padding-top: 20px;
  }
}

.govuk-body-m + .govuk-heading-m, .govuk-body + .govuk-heading-m,
.govuk-body-s + .govuk-heading-m,
.govuk-list + .govuk-heading-m,
.govuk-body-m + .govuk-heading-s,
.govuk-body + .govuk-heading-s,
.govuk-body-s + .govuk-heading-s,
.govuk-list + .govuk-heading-s {
  padding-top: 5px;
}
@media (min-width: 40.0625em) {
  .govuk-body-m + .govuk-heading-m, .govuk-body + .govuk-heading-m,
  .govuk-body-s + .govuk-heading-m,
  .govuk-list + .govuk-heading-m,
  .govuk-body-m + .govuk-heading-s,
  .govuk-body + .govuk-heading-s,
  .govuk-body-s + .govuk-heading-s,
  .govuk-list + .govuk-heading-s {
    padding-top: 10px;
  }
}


.govuk-section-break {
  margin: 0;
  border: 0;
}

.govuk-section-break--xl {
  margin-top: 30px;
  margin-bottom: 30px;
}
@media (min-width: 40.0625em) {
  .govuk-section-break--xl {
    margin-top: 50px;
  }
}
@media (min-width: 40.0625em) {
  .govuk-section-break--xl {
    margin-bottom: 50px;
  }
}

.govuk-section-break--l {
  margin-top: 20px;
  margin-bottom: 20px;
}
@media (min-width: 40.0625em) {
  .govuk-section-break--l {
    margin-top: 30px;
  }
}
@media (min-width: 40.0625em) {
  .govuk-section-break--l {
    margin-bottom: 30px;
  }
}

.govuk-section-break--m {
  margin-top: 15px;
  margin-bottom: 15px;
}
@media (min-width: 40.0625em) {
  .govuk-section-break--m {
    margin-top: 20px;
  }
}
@media (min-width: 40.0625em) {
  .govuk-section-break--m {
    margin-bottom: 20px;
  }
}

.govuk-section-break--visible {
  border-bottom: 1px solid #b1b4b6;
}





















































.govuk-button-group {
  margin-bottom: 5px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (min-width: 40.0625em) {
  .govuk-button-group {
    margin-bottom: 15px;
  }
}
.govuk-button-group .govuk-link {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 1;
  display: inline-block;
  max-width: 100%;
  margin-top: 5px;
  margin-bottom: 20px;
  text-align: center;
}
@media print {
  .govuk-button-group .govuk-link {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-button-group .govuk-link {
    font-size: 14pt;
    line-height: 19px;
  }
}
.govuk-button-group .govuk-button {
  margin-bottom: 17px;
}
@media (min-width: 40.0625em) {
  .govuk-button-group {
    margin-right: -15px;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-align: baseline;
    -webkit-align-items: baseline;
        -ms-flex-align: baseline;
            align-items: baseline;
  }
  .govuk-button-group .govuk-button,
  .govuk-button-group .govuk-link {
    margin-right: 15px;
  }
  .govuk-button-group .govuk-link {
    text-align: left;
  }
}

















































.govuk-form-group {
  margin-bottom: 20px;
}
.govuk-form-group::after {
  content: "";
  display: block;
  clear: both;
}
@media (min-width: 40.0625em) {
  .govuk-form-group {
    margin-bottom: 30px;
  }
}
.govuk-form-group .govuk-form-group:last-of-type {
  margin-bottom: 0;
}

.govuk-form-group--error {
  padding-left: 15px;
  border-left: 5px solid #d4351c;
}
.govuk-form-group--error .govuk-form-group {
  padding: 0;
  border: 0;
}

















































.govuk-grid-row {
  margin-right: -15px;
  margin-left: -15px;
}
.govuk-grid-row::after {
  content: "";
  display: block;
  clear: both;
}

.govuk-grid-column-one-quarter {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  padding: 0 15px;
}
@media (min-width: 40.0625em) {
  .govuk-grid-column-one-quarter {
    width: 25%;
    float: left;
  }
}

.govuk-grid-column-one-third {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  padding: 0 15px;
}
@media (min-width: 40.0625em) {
  .govuk-grid-column-one-third {
    width: 33.3333333333%;
    float: left;
  }
}

.govuk-grid-column-one-half {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  padding: 0 15px;
}
@media (min-width: 40.0625em) {
  .govuk-grid-column-one-half {
    width: 50%;
    float: left;
  }
}

.govuk-grid-column-two-thirds {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  padding: 0 15px;
}
@media (min-width: 40.0625em) {
  .govuk-grid-column-two-thirds {
    width: 66.6666666667%;
    float: left;
  }
}

.govuk-grid-column-three-quarters {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  padding: 0 15px;
}
@media (min-width: 40.0625em) {
  .govuk-grid-column-three-quarters {
    width: 75%;
    float: left;
  }
}

.govuk-grid-column-full {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  padding: 0 15px;
}
@media (min-width: 40.0625em) {
  .govuk-grid-column-full {
    width: 100%;
    float: left;
  }
}

.govuk-grid-column-one-quarter-from-desktop {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0 15px;
}
@media (min-width: 48.0625em) {
  .govuk-grid-column-one-quarter-from-desktop {
    width: 25%;
    float: left;
  }
}

.govuk-grid-column-one-third-from-desktop {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0 15px;
}
@media (min-width: 48.0625em) {
  .govuk-grid-column-one-third-from-desktop {
    width: 33.3333333333%;
    float: left;
  }
}

.govuk-grid-column-one-half-from-desktop {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0 15px;
}
@media (min-width: 48.0625em) {
  .govuk-grid-column-one-half-from-desktop {
    width: 50%;
    float: left;
  }
}

.govuk-grid-column-two-thirds-from-desktop {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0 15px;
}
@media (min-width: 48.0625em) {
  .govuk-grid-column-two-thirds-from-desktop {
    width: 66.6666666667%;
    float: left;
  }
}

.govuk-grid-column-three-quarters-from-desktop {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0 15px;
}
@media (min-width: 48.0625em) {
  .govuk-grid-column-three-quarters-from-desktop {
    width: 75%;
    float: left;
  }
}

.govuk-grid-column-full-from-desktop {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0 15px;
}
@media (min-width: 48.0625em) {
  .govuk-grid-column-full-from-desktop {
    width: 100%;
    float: left;
  }
}

















































.govuk-main-wrapper {
  display: block;
  padding-top: 20px;
  padding-bottom: 20px;
}
@media (min-width: 40.0625em) {
  .govuk-main-wrapper {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}

.govuk-main-wrapper--auto-spacing:first-child,
.govuk-main-wrapper--l {
  padding-top: 30px;
}
@media (min-width: 40.0625em) {
  .govuk-main-wrapper--auto-spacing:first-child,
  .govuk-main-wrapper--l {
    padding-top: 50px;
  }
}

















































.govuk-template {
  background-color: #f3f2f1;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
      text-size-adjust: 100%;
}
.govuk-template--rebranded {
  background-color: rgb(243.7, 247.85, 251.45);
}

@supports ((position: -webkit-sticky) or (position: sticky)) {
  .govuk-template {
    scroll-padding-top: 60px;
  }
  .govuk-template:not(:has(.govuk-exit-this-page)) {
    scroll-padding-top: 0;
  }
}
@media screen {
  .govuk-template {
    overflow-y: scroll;
  }
}

.govuk-template__body {
  margin: 0;
  background-color: #ffffff;
}

















































.govuk-width-container {
  max-width: 960px;
  margin-right: 15px;
  margin-left: 15px;
}
@supports (margin: max(calc(0px))) {
  .govuk-width-container {
    margin-right: max(15px, -webkit-calc(15px + env(safe-area-inset-right)));
    margin-right: max(15px, calc(15px + env(safe-area-inset-right)));
    margin-left: max(15px, -webkit-calc(15px + env(safe-area-inset-left)));
    margin-left: max(15px, calc(15px + env(safe-area-inset-left)));
  }
}
@media (min-width: 40.0625em) {
  .govuk-width-container {
    margin-right: 30px;
    margin-left: 30px;
  }
  @supports (margin: max(calc(0px))) {
    .govuk-width-container {
      margin-right: max(30px, -webkit-calc(15px + env(safe-area-inset-right)));
      margin-right: max(30px, calc(15px + env(safe-area-inset-right)));
      margin-left: max(30px, -webkit-calc(15px + env(safe-area-inset-left)));
      margin-left: max(30px, calc(15px + env(safe-area-inset-left)));
    }
  }
}
@media (min-width: 1020px) {
  .govuk-width-container {
    margin-right: auto;
    margin-left: auto;
  }
  @supports (margin: max(calc(0px))) {
    .govuk-width-container {
      margin-right: auto;
      margin-left: auto;
    }
  }
}


















































.govuk-accordion {
  margin-bottom: 20px;
}
@media (min-width: 40.0625em) {
  .govuk-accordion {
    margin-bottom: 30px;
  }
}

.govuk-accordion__section {
  padding-top: 15px;
}

.govuk-accordion__section-heading {
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 15px;
  padding-bottom: 15px;
}

.govuk-accordion__section-button {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 700;
  font-size: 1.3125rem;
  line-height: 1.1904761905;
  color: #0b0c0c;
  display: block;
  margin-bottom: 0;
  padding-top: 15px;
}
@media print {
  .govuk-accordion__section-button {
    font-family: sans-serif;
  }
}
@media (min-width: 40.0625em) {
  .govuk-accordion__section-button {
    font-size: 1.5rem;
    line-height: 1.25;
  }
}
@media print {
  .govuk-accordion__section-button {
    font-size: 18pt;
    line-height: 1.15;
  }
}
@media print {
  .govuk-accordion__section-button {
    color: #000000;
  }
}

.govuk-accordion__section-content > :last-child {
  margin-bottom: 0;
}

.govuk-frontend-supported .govuk-accordion {
  border-bottom: 1px solid #b1b4b6;
}
.govuk-frontend-supported .govuk-accordion__section {
  padding-top: 0;
}
.govuk-frontend-supported .govuk-accordion__section-content {
  display: none;
  padding-top: 15px;
  padding-bottom: 30px;
}
@media (min-width: 40.0625em) {
  .govuk-frontend-supported .govuk-accordion__section-content {
    padding-bottom: 50px;
  }
}
.govuk-frontend-supported .govuk-accordion__section-content[hidden] {
  padding-top: 0;
  padding-bottom: 0;
}
@supports (content-visibility: hidden) {
  .govuk-frontend-supported .govuk-accordion__section-content[hidden] {
    content-visibility: hidden;
    display: inherit;
  }
}
.govuk-frontend-supported .govuk-accordion__section--expanded .govuk-accordion__section-content {
  display: block;
}
.govuk-frontend-supported .govuk-accordion__show-all {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 1.3157894737;
  position: relative;
  z-index: 1;
  margin-bottom: 9px;
  padding: 5px 2px 5px 0;
  border-width: 0;
  color: #1d70b8;
  background: none;
  cursor: pointer;
  -webkit-appearance: none;
}
@media print {
  .govuk-frontend-supported .govuk-accordion__show-all {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-frontend-supported .govuk-accordion__show-all {
    font-size: 14pt;
    line-height: 1.15;
  }
}
@media (min-width: 40.0625em) {
  .govuk-frontend-supported .govuk-accordion__show-all {
    margin-bottom: 14px;
  }
}
.govuk-frontend-supported .govuk-accordion__show-all::-moz-focus-inner {
  padding: 0;
  border: 0;
}
.govuk-frontend-supported .govuk-accordion__show-all:hover {
  color: #0b0c0c;
  background: #f3f2f1;
  -webkit-box-shadow: 0 -2px #f3f2f1, 0 4px #f3f2f1;
          box-shadow: 0 -2px #f3f2f1, 0 4px #f3f2f1;
}
.govuk-frontend-supported .govuk-accordion__show-all:hover .govuk-accordion__section-toggle-text {
  color: #0b0c0c;
}
.govuk-frontend-supported .govuk-accordion__show-all:hover .govuk-accordion-nav__chevron {
  color: #0b0c0c;
  background: #0b0c0c;
}
.govuk-frontend-supported .govuk-accordion__show-all:hover .govuk-accordion-nav__chevron::after {
  color: #f3f2f1;
}
.govuk-frontend-supported .govuk-accordion__show-all:focus {
  outline: 3px solid transparent;
  color: #0b0c0c;
  background-color: #ffdd00;
  -webkit-box-shadow: 0 -2px #ffdd00, 0 4px #0b0c0c;
          box-shadow: 0 -2px #ffdd00, 0 4px #0b0c0c;
  text-decoration: none;
}
@supports not (text-wrap: balance) {
  .govuk-frontend-supported .govuk-accordion__show-all:focus {
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
  }
}
.govuk-frontend-supported .govuk-accordion__show-all:focus .govuk-accordion-nav__chevron {
  background: #0b0c0c;
}
.govuk-frontend-supported .govuk-accordion__show-all:focus .govuk-accordion-nav__chevron::after {
  color: #ffdd00;
}
.govuk-frontend-supported .govuk-accordion__section-heading {
  padding: 0;
}
.govuk-frontend-supported .govuk-accordion-nav__chevron {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: inline-block;
  position: relative;
  width: 1.25rem;
  height: 1.25rem;
  border: 0.0625rem solid;
  border-radius: 50%;
  vertical-align: middle;
}
.govuk-frontend-supported .govuk-accordion-nav__chevron::after {
  content: "";
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  position: absolute;
  bottom: 0.3125rem;
  left: 0.375rem;
  width: 0.375rem;
  height: 0.375rem;
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
  border-top: 0.125rem solid;
  border-right: 0.125rem solid;
}
.govuk-frontend-supported .govuk-accordion-nav__chevron--down {
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg);
}
.govuk-frontend-supported .govuk-accordion__section-button {
  width: 100%;
  padding: 10px 0 0;
  border: 0;
  border-top: 1px solid #b1b4b6;
  border-bottom: 10px solid transparent;
  color: #0b0c0c;
  background: none;
  text-align: left;
  cursor: pointer;
  -webkit-appearance: none;
}
@media (min-width: 40.0625em) {
  .govuk-frontend-supported .govuk-accordion__section-button {
    padding-bottom: 10px;
  }
}
.govuk-frontend-supported .govuk-accordion__section-button:active {
  color: #0b0c0c;
  background: none;
}
.govuk-frontend-supported .govuk-accordion__section-button:hover {
  color: #0b0c0c;
  background: #f3f2f1;
}
.govuk-frontend-supported .govuk-accordion__section-button:hover .govuk-accordion__section-toggle-text {
  color: #0b0c0c;
}
.govuk-frontend-supported .govuk-accordion__section-button:hover .govuk-accordion-nav__chevron {
  color: #0b0c0c;
  background: #0b0c0c;
}
.govuk-frontend-supported .govuk-accordion__section-button:hover .govuk-accordion-nav__chevron::after {
  color: #f3f2f1;
}
.govuk-frontend-supported .govuk-accordion__section-button:focus {
  outline: 0;
}
.govuk-frontend-supported .govuk-accordion__section-button:focus .govuk-accordion__section-heading-text-focus,
.govuk-frontend-supported .govuk-accordion__section-button:focus .govuk-accordion__section-summary-focus,
.govuk-frontend-supported .govuk-accordion__section-button:focus .govuk-accordion__section-toggle-focus {
  outline: 3px solid transparent;
  color: #0b0c0c;
  background-color: #ffdd00;
  -webkit-box-shadow: 0 -2px #ffdd00, 0 4px #0b0c0c;
          box-shadow: 0 -2px #ffdd00, 0 4px #0b0c0c;
  text-decoration: none;
}
@supports not (text-wrap: balance) {
  .govuk-frontend-supported .govuk-accordion__section-button:focus .govuk-accordion__section-heading-text-focus,
  .govuk-frontend-supported .govuk-accordion__section-button:focus .govuk-accordion__section-summary-focus,
  .govuk-frontend-supported .govuk-accordion__section-button:focus .govuk-accordion__section-toggle-focus {
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
  }
}
.govuk-frontend-supported .govuk-accordion__section-button:focus .govuk-accordion-nav__chevron {
  color: #0b0c0c;
  background: #0b0c0c;
}
.govuk-frontend-supported .govuk-accordion__section-button:focus .govuk-accordion-nav__chevron::after {
  color: #ffdd00;
}
.govuk-frontend-supported .govuk-accordion__section-button::-moz-focus-inner {
  padding: 0;
  border: 0;
}
.govuk-frontend-supported .govuk-accordion__section--expanded .govuk-accordion__section-button {
  padding-bottom: 15px;
  border-bottom: 0;
}
@media (min-width: 40.0625em) {
  .govuk-frontend-supported .govuk-accordion__section--expanded .govuk-accordion__section-button {
    padding-bottom: 20px;
  }
}
.govuk-frontend-supported .govuk-accordion__section-button:focus .govuk-accordion__section-toggle-focus {
  padding-bottom: 3px;
}
@media (min-width: 48.0625em) {
  .govuk-frontend-supported .govuk-accordion__section-button:focus .govuk-accordion__section-toggle-focus {
    padding-bottom: 2px;
  }
}
.govuk-frontend-supported .govuk-accordion__section-toggle,
.govuk-frontend-supported .govuk-accordion__section-heading-text,
.govuk-frontend-supported .govuk-accordion__section-summary {
  display: block;
  margin-bottom: 13px;
}
.govuk-frontend-supported .govuk-accordion__section-toggle .govuk-accordion__section-heading-text-focus,
.govuk-frontend-supported .govuk-accordion__section-toggle .govuk-accordion__section-summary-focus,
.govuk-frontend-supported .govuk-accordion__section-toggle .govuk-accordion__section-toggle-focus,
.govuk-frontend-supported .govuk-accordion__section-heading-text .govuk-accordion__section-heading-text-focus,
.govuk-frontend-supported .govuk-accordion__section-heading-text .govuk-accordion__section-summary-focus,
.govuk-frontend-supported .govuk-accordion__section-heading-text .govuk-accordion__section-toggle-focus,
.govuk-frontend-supported .govuk-accordion__section-summary .govuk-accordion__section-heading-text-focus,
.govuk-frontend-supported .govuk-accordion__section-summary .govuk-accordion__section-summary-focus,
.govuk-frontend-supported .govuk-accordion__section-summary .govuk-accordion__section-toggle-focus {
  display: inline;
}
.govuk-frontend-supported .govuk-accordion__section-toggle {
  font-size: 1.1875rem;
  line-height: 1.3157894737;
  font-weight: 400;
  color: #1d70b8;
}
@media print {
  .govuk-frontend-supported .govuk-accordion__section-toggle {
    font-size: 14pt;
    line-height: 1.15;
  }
}
.govuk-frontend-supported .govuk-accordion__show-all-text,
.govuk-frontend-supported .govuk-accordion__section-toggle-text {
  margin-left: 5px;
  vertical-align: middle;
}
@media screen and (forced-colors: active) {
  .govuk-frontend-supported .govuk-accordion__show-all:hover .govuk-accordion-nav__chevron,
  .govuk-frontend-supported .govuk-accordion__section-button:hover .govuk-accordion-nav__chevron {
    background-color: transparent;
  }
  .govuk-frontend-supported .govuk-accordion__show-all:focus .govuk-accordion__section-heading-text-focus,
  .govuk-frontend-supported .govuk-accordion__show-all:focus .govuk-accordion__section-summary-focus,
  .govuk-frontend-supported .govuk-accordion__show-all:focus .govuk-accordion__section-toggle-focus,
  .govuk-frontend-supported .govuk-accordion__show-all:focus .govuk-accordion-nav__chevron,
  .govuk-frontend-supported .govuk-accordion__section-button:focus .govuk-accordion__section-heading-text-focus,
  .govuk-frontend-supported .govuk-accordion__section-button:focus .govuk-accordion__section-summary-focus,
  .govuk-frontend-supported .govuk-accordion__section-button:focus .govuk-accordion__section-toggle-focus,
  .govuk-frontend-supported .govuk-accordion__section-button:focus .govuk-accordion-nav__chevron {
    background: transparent;
    background-color: transparent;
  }
}
@media (hover: none) {
  .govuk-frontend-supported .govuk-accordion__section-header:hover {
    border-top-color: #b1b4b6;
    -webkit-box-shadow: inset 0 3px 0 0 #1d70b8;
            box-shadow: inset 0 3px 0 0 #1d70b8;
  }
  .govuk-frontend-supported .govuk-accordion__section-header:hover .govuk-accordion__section-button {
    border-top-color: #b1b4b6;
  }
}


.govuk-back-link {
  font-size: 1rem;
  line-height: 1.25;
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-decoration: underline;
  text-decoration-thickness: max(1px, .0625rem);
  text-underline-offset: 0.1578em;
  display: inline-block;
  position: relative;
  margin-top: 15px;
  margin-bottom: 15px;
  padding-left: 0.875em;
}
@media print {
  .govuk-back-link {
    font-size: 14pt;
    line-height: 1.2;
  }
}
@media print {
  .govuk-back-link {
    font-family: sans-serif;
  }
}
.govuk-back-link:hover {
  text-decoration-thickness: max(3px, .1875rem, .12em);
  -webkit-text-decoration-skip-ink: none;
  text-decoration-skip-ink: none;
  -webkit-text-decoration-skip: none;
  text-decoration-skip: none;
}
.govuk-back-link:focus {
  outline: 3px solid transparent;
  color: #0b0c0c;
  background-color: #ffdd00;
  -webkit-box-shadow: 0 -2px #ffdd00, 0 4px #0b0c0c;
          box-shadow: 0 -2px #ffdd00, 0 4px #0b0c0c;
  text-decoration: none;
}
@supports not (text-wrap: balance) {
  .govuk-back-link:focus {
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
  }
}
.govuk-back-link:link, .govuk-back-link:visited {
  color: #0b0c0c;
}
@media print {
  .govuk-back-link:link, .govuk-back-link:visited {
    color: #000000;
  }
}
.govuk-back-link:hover {
  color: rgba(11, 12, 12, 0.99);
}
.govuk-back-link:active, .govuk-back-link:focus {
  color: #0b0c0c;
}
@media print {
  .govuk-back-link:active, .govuk-back-link:focus {
    color: #000000;
  }
}

.govuk-back-link::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0.1875em;
  width: 0.4375em;
  height: 0.4375em;
  margin: auto 0;
  -webkit-transform: rotate(225deg);
      -ms-transform: rotate(225deg);
          transform: rotate(225deg);
  border: solid;
  border-width: 1px 1px 0 0;
  border-color: #505a5f;
}
@supports (border-width: max(0px)) {
  .govuk-back-link::before {
    border-width: max(1px, 0.0625em) max(1px, 0.0625em) 0 0;
    font-size: max(16px, 1em);
  }
}

.govuk-back-link:focus::before {
  border-color: #0b0c0c;
}

.govuk-back-link::after {
  content: "";
  position: absolute;
  top: -14px;
  right: 0;
  bottom: -14px;
  left: 0;
}

.govuk-back-link--inverse:link, .govuk-back-link--inverse:visited {
  color: #ffffff;
}
.govuk-back-link--inverse:hover, .govuk-back-link--inverse:active {
  color: rgba(255, 255, 255, 0.99);
}
.govuk-back-link--inverse:focus {
  color: #0b0c0c;
}
.govuk-back-link--inverse::before {
  border-color: currentcolor;
}


.govuk-breadcrumbs {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.25;
  color: #0b0c0c;
  margin-top: 15px;
  margin-bottom: 10px;
}
@media print {
  .govuk-breadcrumbs {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-breadcrumbs {
    font-size: 14pt;
    line-height: 1.2;
  }
}
@media print {
  .govuk-breadcrumbs {
    color: #000000;
  }
}

.govuk-breadcrumbs__list {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.govuk-breadcrumbs__list::after {
  content: "";
  display: block;
  clear: both;
}

.govuk-breadcrumbs__list-item {
  display: inline-block;
  position: relative;
  margin-bottom: 5px;
  margin-left: 0.625em;
  padding-left: 0.9784375em;
  float: left;
}
.govuk-breadcrumbs__list-item::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: -0.206875em;
  width: 0.4375em;
  height: 0.4375em;
  margin: auto 0;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  border: solid;
  border-width: 1px 1px 0 0;
  border-color: #505a5f;
}
@supports (border-width: max(0px)) {
  .govuk-breadcrumbs__list-item::before {
    border-width: max(1px, 0.0625em) max(1px, 0.0625em) 0 0;
    font-size: max(16px, 1em);
  }
}
.govuk-breadcrumbs__list-item:first-child {
  margin-left: 0;
  padding-left: 0;
}
.govuk-breadcrumbs__list-item:first-child::before {
  content: none;
  display: none;
}

.govuk-breadcrumbs__link {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-decoration: underline;
  text-decoration-thickness: max(1px, .0625rem);
  text-underline-offset: 0.1578em;
}
@media print {
  .govuk-breadcrumbs__link {
    font-family: sans-serif;
  }
}
.govuk-breadcrumbs__link:hover {
  text-decoration-thickness: max(3px, .1875rem, .12em);
  -webkit-text-decoration-skip-ink: none;
  text-decoration-skip-ink: none;
  -webkit-text-decoration-skip: none;
  text-decoration-skip: none;
}
.govuk-breadcrumbs__link:focus {
  outline: 3px solid transparent;
  color: #0b0c0c;
  background-color: #ffdd00;
  -webkit-box-shadow: 0 -2px #ffdd00, 0 4px #0b0c0c;
          box-shadow: 0 -2px #ffdd00, 0 4px #0b0c0c;
  text-decoration: none;
}
@supports not (text-wrap: balance) {
  .govuk-breadcrumbs__link:focus {
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
  }
}
.govuk-breadcrumbs__link:link, .govuk-breadcrumbs__link:visited {
  color: #0b0c0c;
}
@media print {
  .govuk-breadcrumbs__link:link, .govuk-breadcrumbs__link:visited {
    color: #000000;
  }
}
.govuk-breadcrumbs__link:hover {
  color: rgba(11, 12, 12, 0.99);
}
.govuk-breadcrumbs__link:active, .govuk-breadcrumbs__link:focus {
  color: #0b0c0c;
}
@media print {
  .govuk-breadcrumbs__link:active, .govuk-breadcrumbs__link:focus {
    color: #000000;
  }
}

@media (max-width: 40.0525em) {
  .govuk-breadcrumbs--collapse-on-mobile .govuk-breadcrumbs__list-item {
    display: none;
  }
  .govuk-breadcrumbs--collapse-on-mobile .govuk-breadcrumbs__list-item:first-child, .govuk-breadcrumbs--collapse-on-mobile .govuk-breadcrumbs__list-item:last-child {
    display: inline-block;
  }
  .govuk-breadcrumbs--collapse-on-mobile .govuk-breadcrumbs__list-item::before {
    top: 0.375em;
    margin: 0;
  }
  .govuk-breadcrumbs--collapse-on-mobile .govuk-breadcrumbs__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}

.govuk-breadcrumbs--inverse {
  color: #ffffff;
}
.govuk-breadcrumbs--inverse .govuk-breadcrumbs__link:link, .govuk-breadcrumbs--inverse .govuk-breadcrumbs__link:visited {
  color: #ffffff;
}
.govuk-breadcrumbs--inverse .govuk-breadcrumbs__link:hover, .govuk-breadcrumbs--inverse .govuk-breadcrumbs__link:active {
  color: rgba(255, 255, 255, 0.99);
}
.govuk-breadcrumbs--inverse .govuk-breadcrumbs__link:focus {
  color: #0b0c0c;
}
.govuk-breadcrumbs--inverse .govuk-breadcrumbs__list-item::before {
  border-color: currentcolor;
}


.govuk-button {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 1;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: inline-block;
  position: relative;
  width: 100%;
  margin-top: 0;
  margin-right: 0;
  margin-left: 0;
  margin-bottom: 22px;
  padding: 8px 10px 7px;
  border: 2px solid transparent;
  border-radius: 0;
  color: #ffffff;
  background-color: #00703c;
  -webkit-box-shadow: 0 2px 0 rgb(0, 44.8, 24);
          box-shadow: 0 2px 0 rgb(0, 44.8, 24);
  text-align: center;
  vertical-align: top;
  cursor: pointer;
  -webkit-appearance: none;
}
@media print {
  .govuk-button {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-button {
    font-size: 14pt;
    line-height: 19px;
  }
}
@media (min-width: 40.0625em) {
  .govuk-button {
    margin-bottom: 32px;
  }
}
@media (min-width: 40.0625em) {
  .govuk-button {
    width: auto;
  }
}
.govuk-button:link, .govuk-button:visited, .govuk-button:active, .govuk-button:hover {
  color: #ffffff;
  text-decoration: none;
}
.govuk-button::-moz-focus-inner {
  padding: 0;
  border: 0;
}
.govuk-button:hover {
  background-color: rgb(0, 89.6, 48);
}
.govuk-button:active {
  top: 2px;
}
.govuk-button:focus {
  border-color: #ffdd00;
  outline: 3px solid transparent;
  -webkit-box-shadow: inset 0 0 0 1px #ffdd00;
          box-shadow: inset 0 0 0 1px #ffdd00;
}
.govuk-button:focus:not(:active):not(:hover) {
  border-color: #ffdd00;
  color: #0b0c0c;
  background-color: #ffdd00;
  -webkit-box-shadow: 0 2px 0 #0b0c0c;
          box-shadow: 0 2px 0 #0b0c0c;
}
.govuk-button::before {
  content: "";
  display: block;
  position: absolute;
  top: -2px;
  right: -2px;
  bottom: -4px;
  left: -2px;
  background: transparent;
}
.govuk-button:active::before {
  top: -4px;
}

.govuk-button[disabled] {
  opacity: 0.5;
}
.govuk-button[disabled]:hover {
  background-color: #00703c;
  cursor: not-allowed;
}
.govuk-button[disabled]:active {
  top: 0;
  -webkit-box-shadow: 0 2px 0 rgb(0, 44.8, 24);
          box-shadow: 0 2px 0 rgb(0, 44.8, 24);
}

.govuk-button--secondary {
  background-color: #f3f2f1;
  -webkit-box-shadow: 0 2px 0 rgb(145.8, 145.2, 144.6);
          box-shadow: 0 2px 0 rgb(145.8, 145.2, 144.6);
}
.govuk-button--secondary, .govuk-button--secondary:link, .govuk-button--secondary:visited, .govuk-button--secondary:active, .govuk-button--secondary:hover {
  color: #0b0c0c;
}
.govuk-button--secondary:hover {
  background-color: rgb(218.7, 217.8, 216.9);
}
.govuk-button--secondary:hover[disabled] {
  background-color: #f3f2f1;
}

.govuk-button--warning {
  background-color: #d4351c;
  -webkit-box-shadow: 0 2px 0 rgb(84.8, 21.2, 11.2);
          box-shadow: 0 2px 0 rgb(84.8, 21.2, 11.2);
}
.govuk-button--warning, .govuk-button--warning:link, .govuk-button--warning:visited, .govuk-button--warning:active, .govuk-button--warning:hover {
  color: #ffffff;
}
.govuk-button--warning:hover {
  background-color: rgb(169.6, 42.4, 22.4);
}
.govuk-button--warning:hover[disabled] {
  background-color: #d4351c;
}

.govuk-button--inverse {
  background-color: #ffffff;
  -webkit-box-shadow: 0 2px 0 rgb(20.3, 78.4, 128.8);
          box-shadow: 0 2px 0 rgb(20.3, 78.4, 128.8);
}
.govuk-button--inverse, .govuk-button--inverse:link, .govuk-button--inverse:visited, .govuk-button--inverse:active, .govuk-button--inverse:hover {
  color: #1d70b8;
}
.govuk-button--inverse:hover {
  background-color: rgb(232.4, 240.7, 247.9);
}
.govuk-button--inverse:hover[disabled] {
  background-color: #ffffff;
}

.govuk-button--start {
  font-weight: 700;
  font-size: 1.3125rem;
  line-height: 1;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  min-height: auto;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media (min-width: 40.0625em) {
  .govuk-button--start {
    font-size: 1.5rem;
    line-height: 1;
  }
}
@media print {
  .govuk-button--start {
    font-size: 18pt;
    line-height: 1;
  }
}

.govuk-button__start-icon {
  margin-left: 5px;
  vertical-align: middle;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  -webkit-align-self: center;
      -ms-flex-item-align: center;
              -ms-grid-row-align: center;
          align-self: center;
  forced-color-adjust: auto;
}
@media (min-width: 48.0625em) {
  .govuk-button__start-icon {
    margin-left: 10px;
  }
}


.govuk-error-message {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 700;
  font-size: 1.1875rem;
  line-height: 1.3157894737;
  display: block;
  margin-top: 0;
  margin-bottom: 15px;
  clear: both;
  color: #d4351c;
}
@media print {
  .govuk-error-message {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-error-message {
    font-size: 14pt;
    line-height: 1.15;
  }
}


.govuk-hint {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 1.3157894737;
  margin-bottom: 15px;
  color: #505a5f;
}
@media print {
  .govuk-hint {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-hint {
    font-size: 14pt;
    line-height: 1.15;
  }
}

.govuk-label:not(.govuk-label--m):not(.govuk-label--l):not(.govuk-label--xl) + .govuk-hint {
  margin-bottom: 10px;
}

.govuk-fieldset__legend:not(.govuk-fieldset__legend--m):not(.govuk-fieldset__legend--l):not(.govuk-fieldset__legend--xl) + .govuk-hint {
  margin-bottom: 10px;
}

.govuk-fieldset__legend + .govuk-hint {
  margin-top: -5px;
}


.govuk-label {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 1.3157894737;
  color: #0b0c0c;
  display: block;
  margin-bottom: 5px;
}
@media print {
  .govuk-label {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-label {
    font-size: 14pt;
    line-height: 1.15;
  }
}
@media print {
  .govuk-label {
    color: #000000;
  }
}

.govuk-label--xl,
.govuk-label--l,
.govuk-label--m {
  font-weight: 700;
  margin-bottom: 15px;
}

.govuk-label--xl {
  font-size: 2rem;
  line-height: 1.09375;
}
@media (min-width: 40.0625em) {
  .govuk-label--xl {
    font-size: 3rem;
    line-height: 1.0416666667;
  }
}
@media print {
  .govuk-label--xl {
    font-size: 32pt;
    line-height: 1.15;
  }
}

.govuk-label--l {
  font-size: 1.6875rem;
  line-height: 1.1111111111;
}
@media (min-width: 40.0625em) {
  .govuk-label--l {
    font-size: 2.25rem;
    line-height: 1.1111111111;
  }
}
@media print {
  .govuk-label--l {
    font-size: 24pt;
    line-height: 1.05;
  }
}

.govuk-label--m {
  font-size: 1.3125rem;
  line-height: 1.1904761905;
}
@media (min-width: 40.0625em) {
  .govuk-label--m {
    font-size: 1.5rem;
    line-height: 1.25;
  }
}
@media print {
  .govuk-label--m {
    font-size: 18pt;
    line-height: 1.15;
  }
}

.govuk-label--s {
  font-weight: 700;
}

.govuk-label-wrapper {
  margin: 0;
}





.govuk-textarea {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 1.25;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  width: 100%;
  min-height: 40px;
  margin-bottom: 20px;
  padding: 5px;
  resize: vertical;
  border: 2px solid #0b0c0c;
  border-radius: 0;
  -webkit-appearance: none;
}
@media print {
  .govuk-textarea {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-textarea {
    font-size: 14pt;
    line-height: 1.25;
  }
}
@media (min-width: 40.0625em) {
  .govuk-textarea {
    margin-bottom: 30px;
  }
}
.govuk-textarea:focus {
  outline: 3px solid #ffdd00;
  outline-offset: 0;
  -webkit-box-shadow: inset 0 0 0 2px;
          box-shadow: inset 0 0 0 2px;
}
.govuk-textarea:disabled {
  opacity: 0.5;
  color: inherit;
  background-color: transparent;
  cursor: not-allowed;
}

.govuk-textarea--error {
  border-color: #d4351c;
}
.govuk-textarea--error:focus {
  border-color: #0b0c0c;
}


.govuk-character-count {
  margin-bottom: 20px;
}
@media (min-width: 40.0625em) {
  .govuk-character-count {
    margin-bottom: 30px;
  }
}
.govuk-character-count .govuk-form-group,
.govuk-character-count .govuk-textarea {
  margin-bottom: 5px;
}
.govuk-character-count .govuk-textarea--error:focus {
  border-color: #d4351c;
  -webkit-box-shadow: inset 0 0 0 2px #d4351c;
          box-shadow: inset 0 0 0 2px #d4351c;
}

.govuk-character-count__message {
  font-variant-numeric: tabular-nums;
  margin-top: 0;
  margin-bottom: 0;
}
.govuk-character-count__message::after {
  content: "​";
}

.govuk-character-count__message--disabled {
  visibility: hidden;
}



.govuk-fieldset {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}
.govuk-fieldset::after {
  content: "";
  display: block;
  clear: both;
}

@supports not (caret-color: auto) {
  .govuk-fieldset,
  x:-moz-any-link {
    display: table-cell;
  }
}
.govuk-fieldset__legend {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 1.3157894737;
  color: #0b0c0c;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: table;
  max-width: 100%;
  margin-bottom: 10px;
  padding: 0;
  white-space: normal;
}
@media print {
  .govuk-fieldset__legend {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-fieldset__legend {
    font-size: 14pt;
    line-height: 1.15;
  }
}
@media print {
  .govuk-fieldset__legend {
    color: #000000;
  }
}

.govuk-fieldset__legend--xl,
.govuk-fieldset__legend--l,
.govuk-fieldset__legend--m {
  font-weight: 700;
  margin-bottom: 15px;
}

.govuk-fieldset__legend--xl {
  font-size: 2rem;
  line-height: 1.09375;
}
@media (min-width: 40.0625em) {
  .govuk-fieldset__legend--xl {
    font-size: 3rem;
    line-height: 1.0416666667;
  }
}
@media print {
  .govuk-fieldset__legend--xl {
    font-size: 32pt;
    line-height: 1.15;
  }
}

.govuk-fieldset__legend--l {
  font-size: 1.6875rem;
  line-height: 1.1111111111;
}
@media (min-width: 40.0625em) {
  .govuk-fieldset__legend--l {
    font-size: 2.25rem;
    line-height: 1.1111111111;
  }
}
@media print {
  .govuk-fieldset__legend--l {
    font-size: 24pt;
    line-height: 1.05;
  }
}

.govuk-fieldset__legend--m {
  font-size: 1.3125rem;
  line-height: 1.1904761905;
}
@media (min-width: 40.0625em) {
  .govuk-fieldset__legend--m {
    font-size: 1.5rem;
    line-height: 1.25;
  }
}
@media print {
  .govuk-fieldset__legend--m {
    font-size: 18pt;
    line-height: 1.15;
  }
}

.govuk-fieldset__legend--s {
  font-weight: 700;
}

.govuk-fieldset__heading {
  margin: 0;
  font-size: inherit;
  font-weight: inherit;
}




.govuk-checkboxes__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  position: relative;
  margin-bottom: 10px;
}

.govuk-checkboxes__item:last-child,
.govuk-checkboxes__item:last-of-type {
  margin-bottom: 0;
}

.govuk-checkboxes__input {
  z-index: 1;
  width: 44px;
  height: 44px;
  margin: 0;
  opacity: 0;
  cursor: pointer;
}

.govuk-checkboxes__label {
  -webkit-align-self: center;
      -ms-flex-item-align: center;
              -ms-grid-row-align: center;
          align-self: center;
  max-width: -webkit-calc(100% - 74px);
  max-width: calc(100% - 74px);
  margin-bottom: 0;
  padding: 7px 15px;
  cursor: pointer;
  -ms-touch-action: manipulation;
      touch-action: manipulation;
}

.govuk-checkboxes__label::before {
  content: "";
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: absolute;
  top: 2px;
  left: 2px;
  width: 40px;
  height: 40px;
  border: 2px solid currentcolor;
  background: transparent;
}

.govuk-checkboxes__label::after {
  content: "";
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: absolute;
  top: 13px;
  left: 10px;
  width: 23px;
  height: 12px;
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
  border: solid;
  border-width: 0 0 5px 5px;
  border-top-color: transparent;
  opacity: 0;
  background: transparent;
}

.govuk-checkboxes__hint {
  display: block;
  width: 100%;
  margin-top: -5px;
  padding-right: 15px;
  padding-left: 59px;
}

.govuk-label:not(.govuk-label--m):not(.govuk-label--l):not(.govuk-label--xl) + .govuk-checkboxes__hint {
  margin-bottom: 0;
}

.govuk-checkboxes__input:focus + .govuk-checkboxes__label::before {
  border-width: 4px;
  outline: 3px solid transparent;
  outline-offset: 1px;
  -webkit-box-shadow: 0 0 0 3px #ffdd00;
          box-shadow: 0 0 0 3px #ffdd00;
}
@media screen and (forced-colors: active), (-ms-high-contrast: active) {
  .govuk-checkboxes__input:focus + .govuk-checkboxes__label::before {
    outline-color: Highlight;
  }
}

.govuk-checkboxes__input:checked + .govuk-checkboxes__label::after {
  opacity: 1;
}

.govuk-checkboxes__input:disabled,
.govuk-checkboxes__input:disabled + .govuk-checkboxes__label {
  cursor: not-allowed;
}

.govuk-checkboxes__input:disabled + .govuk-checkboxes__label,
.govuk-checkboxes__input:disabled ~ .govuk-hint {
  opacity: 0.5;
}

.govuk-checkboxes__divider {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 1.3157894737;
  color: #0b0c0c;
  width: 40px;
  margin-bottom: 10px;
  text-align: center;
}
@media print {
  .govuk-checkboxes__divider {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-checkboxes__divider {
    font-size: 14pt;
    line-height: 1.15;
  }
}
@media print {
  .govuk-checkboxes__divider {
    color: #000000;
  }
}

.govuk-checkboxes__conditional {
  margin-bottom: 15px;
  margin-left: 20px;
  padding-left: 35px;
  border-left: 4px solid #b1b4b6;
}
@media (min-width: 40.0625em) {
  .govuk-checkboxes__conditional {
    margin-bottom: 20px;
  }
}
.govuk-frontend-supported .govuk-checkboxes__conditional--hidden {
  display: none;
}
.govuk-checkboxes__conditional > :last-child {
  margin-bottom: 0;
}

.govuk-checkboxes--small .govuk-checkboxes__item {
  margin-bottom: 0;
}
.govuk-checkboxes--small .govuk-checkboxes__input {
  margin-left: -10px;
}
.govuk-checkboxes--small .govuk-checkboxes__label {
  padding-left: 1px;
}
.govuk-checkboxes--small .govuk-checkboxes__label::before {
  top: 10px;
  left: 0;
  width: 24px;
  height: 24px;
}
.govuk-checkboxes--small .govuk-checkboxes__label::after {
  top: 17px;
  left: 6px;
  width: 12px;
  height: 6.5px;
  border-width: 0 0 3px 3px;
}
.govuk-checkboxes--small .govuk-checkboxes__hint {
  padding-left: 34px;
}
.govuk-checkboxes--small .govuk-checkboxes__conditional {
  margin-left: 10px;
  padding-left: 20px;
}
.govuk-checkboxes--small .govuk-checkboxes__divider {
  width: 24px;
  margin-bottom: 5px;
}
.govuk-checkboxes--small .govuk-checkboxes__item:hover .govuk-checkboxes__input:not(:disabled) + .govuk-checkboxes__label::before {
  outline: 3px dashed transparent;
  outline-offset: 1px;
  -webkit-box-shadow: 0 0 0 10px #b1b4b6;
          box-shadow: 0 0 0 10px #b1b4b6;
}
.govuk-checkboxes--small .govuk-checkboxes__item:hover .govuk-checkboxes__input:focus + .govuk-checkboxes__label::before {
  -webkit-box-shadow: 0 0 0 3px #ffdd00, 0 0 0 10px #b1b4b6;
          box-shadow: 0 0 0 3px #ffdd00, 0 0 0 10px #b1b4b6;
}
@media screen and (forced-colors: active), (-ms-high-contrast: active) {
  .govuk-checkboxes--small .govuk-checkboxes__item:hover .govuk-checkboxes__input:focus + .govuk-checkboxes__label::before {
    outline-color: Highlight;
  }
}
@media (hover: none), (pointer: coarse) {
  .govuk-checkboxes--small .govuk-checkboxes__item:hover .govuk-checkboxes__input:not(:disabled) + .govuk-checkboxes__label::before {
    -webkit-box-shadow: initial;
            box-shadow: initial;
  }
  .govuk-checkboxes--small .govuk-checkboxes__item:hover .govuk-checkboxes__input:focus + .govuk-checkboxes__label::before {
    -webkit-box-shadow: 0 0 0 3px #ffdd00;
            box-shadow: 0 0 0 3px #ffdd00;
  }
}



.govuk-cookie-banner {
  padding-top: 20px;
  border-bottom: 10px solid transparent;
  background-color: #f3f2f1;
}
.govuk-template--rebranded .govuk-cookie-banner {
  background-color: rgb(243.7, 247.85, 251.45);
}

.govuk-cookie-banner[hidden] {
  display: none;
}

.govuk-cookie-banner__message {
  margin-bottom: -10px;
}
.govuk-cookie-banner__message[hidden] {
  display: none;
}
.govuk-cookie-banner__message:focus {
  outline: none;
}






.govuk-input {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 1.3157894737;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  height: 2.5rem;
  margin-top: 0;
  padding: 5px;
  border: 2px solid #0b0c0c;
  border-radius: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}
@media print {
  .govuk-input {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-input {
    font-size: 14pt;
    line-height: 1.15;
  }
}
.govuk-input:focus {
  outline: 3px solid #ffdd00;
  outline-offset: 0;
  -webkit-box-shadow: inset 0 0 0 2px;
          box-shadow: inset 0 0 0 2px;
}
.govuk-input:disabled {
  opacity: 0.5;
  color: inherit;
  background-color: transparent;
  cursor: not-allowed;
}

.govuk-input::-webkit-outer-spin-button,
.govuk-input::-webkit-inner-spin-button {
  margin: 0;
  -webkit-appearance: none;
}

.govuk-input[type=number] {
  -moz-appearance: textfield;
}

.govuk-input--error {
  border-color: #d4351c;
}
.govuk-input--error:focus {
  border-color: #0b0c0c;
}

.govuk-input--extra-letter-spacing {
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.05em;
}

.govuk-input--width-30 {
  max-width: 29.5em;
}

.govuk-input--width-20 {
  max-width: 20.5em;
}

.govuk-input--width-10 {
  max-width: 11.5em;
}

.govuk-input--width-5 {
  max-width: 5.5em;
}

.govuk-input--width-4 {
  max-width: 4.5em;
}

.govuk-input--width-3 {
  max-width: 3.75em;
}

.govuk-input--width-2 {
  max-width: 2.75em;
}

.govuk-input__wrapper {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.govuk-input__wrapper .govuk-input {
  -webkit-box-flex: 0;
  -webkit-flex: 0 1 auto;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto;
}
.govuk-input__wrapper .govuk-input:focus {
  z-index: 1;
}
@media (max-width: 19.99em) {
  .govuk-input__wrapper {
    display: block;
  }
  .govuk-input__wrapper .govuk-input {
    max-width: 100%;
  }
}

.govuk-input__prefix,
.govuk-input__suffix {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 1.3157894737;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-width: 2.5rem;
  height: 2.5rem;
  padding: 5px;
  border: 2px solid #0b0c0c;
  background-color: #f3f2f1;
  text-align: center;
  white-space: nowrap;
  cursor: default;
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
@media print {
  .govuk-input__prefix,
  .govuk-input__suffix {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-input__prefix,
  .govuk-input__suffix {
    font-size: 14pt;
    line-height: 1.15;
  }
}
@media (max-width: 19.99em) {
  .govuk-input__prefix,
  .govuk-input__suffix {
    display: block;
    height: 100%;
    white-space: normal;
  }
}

@media (max-width: 19.99em) {
  .govuk-input__prefix {
    border-bottom: 0;
  }
}
@media (min-width: 20em) {
  .govuk-input__prefix {
    border-right: 0;
  }
}

@media (max-width: 19.99em) {
  .govuk-input__suffix {
    border-top: 0;
  }
}
@media (min-width: 20em) {
  .govuk-input__suffix {
    border-left: 0;
  }
}





.govuk-date-input {
  font-size: 0;
}
.govuk-date-input::after {
  content: "";
  display: block;
  clear: both;
}

.govuk-date-input__item {
  display: inline-block;
  margin-right: 20px;
  margin-bottom: 0;
}

.govuk-date-input__label {
  display: block;
}

.govuk-date-input__input {
  margin-bottom: 0;
}


.govuk-details {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 1.3157894737;
  color: #0b0c0c;
  margin-bottom: 20px;
  display: block;
}
@media print {
  .govuk-details {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-details {
    font-size: 14pt;
    line-height: 1.15;
  }
}
@media print {
  .govuk-details {
    color: #000000;
  }
}
@media (min-width: 40.0625em) {
  .govuk-details {
    margin-bottom: 30px;
  }
}

.govuk-details__summary {
  display: block;
}

.govuk-details[open] .govuk-details__summary {
  margin-bottom: 5px;
}

.govuk-details__summary-text > :first-child {
  margin-top: 0;
}
.govuk-details__summary-text > :only-child,
.govuk-details__summary-text > :last-child {
  margin-bottom: 0;
}

.govuk-details__text {
  padding-top: 15px;
  padding-bottom: 15px;
  padding-left: 20px;
}

.govuk-details__text p {
  margin-top: 0;
  margin-bottom: 20px;
}

.govuk-details__text > :last-child {
  margin-bottom: 0;
}

@media screen\0  {
  .govuk-details {
    border-left: 10px solid #b1b4b6;
  }
  .govuk-details__summary {
    margin-top: 15px;
  }
  .govuk-details__summary-text {
    font-weight: 700;
    margin-bottom: 15px;
    padding-left: 20px;
  }
}
@media screen\0  and (min-width: 40.0625em) {
  .govuk-details__summary-text {
    margin-bottom: 20px;
  }
}
@supports not (-ms-ime-align: auto) {
  .govuk-details__summary {
    position: relative;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    padding-left: 25px;
    color: #1d70b8;
    cursor: pointer;
  }
  .govuk-details__summary:hover {
    color: #003078;
  }
  .govuk-details__summary:focus {
    outline: 3px solid transparent;
    color: #0b0c0c;
    background-color: #ffdd00;
    -webkit-box-shadow: 0 -2px #ffdd00, 0 4px #0b0c0c;
            box-shadow: 0 -2px #ffdd00, 0 4px #0b0c0c;
    text-decoration: none;
  }
  @supports not (text-wrap: balance) {
    .govuk-details__summary:focus {
      -webkit-box-decoration-break: clone;
      box-decoration-break: clone;
    }
  }
  .govuk-details__summary-text {
    text-decoration: underline;
    text-decoration-thickness: max(1px, .0625rem);
    text-underline-offset: 0.1578em;
  }
  .govuk-details__summary:hover .govuk-details__summary-text {
    text-decoration-thickness: max(3px, .1875rem, .12em);
    -webkit-text-decoration-skip-ink: none;
    text-decoration-skip-ink: none;
    -webkit-text-decoration-skip: none;
    text-decoration-skip: none;
  }
  .govuk-details__summary:focus .govuk-details__summary-text {
    text-decoration: none;
  }
  .govuk-details__summary::-webkit-details-marker {
    display: none;
  }
  .govuk-details__summary::before {
    content: "";
    position: absolute;
    top: -1px;
    bottom: 0;
    left: 0;
    margin: auto;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-color: transparent;
    -webkit-clip-path: polygon(0% 0%, 100% 50%, 0% 100%);
    clip-path: polygon(0% 0%, 100% 50%, 0% 100%);
    border-width: 7px 0 7px 12.124px;
    border-left-color: inherit;
  }
  .govuk-details[open] > .govuk-details__summary::before {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-color: transparent;
    -webkit-clip-path: polygon(0% 0%, 50% 100%, 100% 0%);
    clip-path: polygon(0% 0%, 50% 100%, 100% 0%);
    border-width: 12.124px 7px 0 7px;
    border-top-color: inherit;
  }
  .govuk-details__text {
    border-left: 5px solid #b1b4b6;
  }
}



.govuk-error-summary {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 1.3157894737;
  color: #0b0c0c;
  padding: 15px;
  margin-bottom: 30px;
  border: 5px solid #d4351c;
}
@media print {
  .govuk-error-summary {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-error-summary {
    font-size: 14pt;
    line-height: 1.15;
  }
}
@media print {
  .govuk-error-summary {
    color: #000000;
  }
}
@media (min-width: 40.0625em) {
  .govuk-error-summary {
    padding: 20px;
  }
}
@media (min-width: 40.0625em) {
  .govuk-error-summary {
    margin-bottom: 50px;
  }
}
.govuk-error-summary:focus {
  outline: 3px solid #ffdd00;
}

.govuk-error-summary__title {
  font-size: 1.3125rem;
  line-height: 1.1904761905;
  font-weight: 700;
  margin-top: 0;
  margin-bottom: 15px;
}
@media (min-width: 40.0625em) {
  .govuk-error-summary__title {
    font-size: 1.5rem;
    line-height: 1.25;
  }
}
@media print {
  .govuk-error-summary__title {
    font-size: 18pt;
    line-height: 1.15;
  }
}
@media (min-width: 40.0625em) {
  .govuk-error-summary__title {
    margin-bottom: 20px;
  }
}

.govuk-error-summary__body p {
  margin-bottom: 0;
}
.govuk-error-summary__body > * + * {
  margin-top: 15px;
}
@media (min-width: 40.0625em) {
  .govuk-error-summary__body > * + * {
    margin-top: 20px;
  }
}
.govuk-error-summary__body > :last-child {
  margin-bottom: 5px;
}

.govuk-error-summary__list {
  margin-bottom: 0;
}

.govuk-error-summary__list li:last-child {
  margin-bottom: 0;
}

.govuk-error-summary__list a {
  font-weight: 700;
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-decoration: underline;
  text-decoration-thickness: max(1px, .0625rem);
  text-underline-offset: 0.1578em;
}
@media print {
  .govuk-error-summary__list a {
    font-family: sans-serif;
  }
}
.govuk-error-summary__list a:hover {
  text-decoration-thickness: max(3px, .1875rem, .12em);
  -webkit-text-decoration-skip-ink: none;
  text-decoration-skip-ink: none;
  -webkit-text-decoration-skip: none;
  text-decoration-skip: none;
}
.govuk-error-summary__list a:focus {
  outline: 3px solid transparent;
  color: #0b0c0c;
  background-color: #ffdd00;
  -webkit-box-shadow: 0 -2px #ffdd00, 0 4px #0b0c0c;
          box-shadow: 0 -2px #ffdd00, 0 4px #0b0c0c;
  text-decoration: none;
}
@supports not (text-wrap: balance) {
  .govuk-error-summary__list a:focus {
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
  }
}
.govuk-error-summary__list a:link, .govuk-error-summary__list a:visited {
  color: #d4351c;
}
.govuk-error-summary__list a:hover {
  color: rgb(148.4, 37.1, 19.6);
}
.govuk-error-summary__list a:active {
  color: #d4351c;
}
.govuk-error-summary__list a:focus {
  color: #0b0c0c;
}



.govuk-exit-this-page {
  margin-bottom: 30px;
  position: -webkit-sticky;
  position: sticky;
  z-index: 1000;
  top: 0;
  left: 0;
  width: 100%;
}
@media (min-width: 40.0625em) {
  .govuk-exit-this-page {
    margin-bottom: 50px;
  }
}
@media (min-width: 40.0625em) {
  .govuk-exit-this-page {
    display: inline-block;
    right: 0;
    left: auto;
    width: auto;
    float: right;
  }
}

.govuk-exit-this-page__button {
  margin-bottom: 0;
}

.govuk-exit-this-page__indicator {
  padding: 10px;
  display: none;
  padding-bottom: 0;
  color: inherit;
  line-height: 0;
  text-align: center;
  pointer-events: none;
}

.govuk-exit-this-page__indicator--visible {
  display: block;
}

.govuk-exit-this-page__indicator-light {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: inline-block;
  width: 0.75em;
  height: 0.75em;
  margin: 0 0.125em;
  border-width: 2px;
  border-style: solid;
  border-radius: 50%;
  border-color: currentcolor;
}

.govuk-exit-this-page__indicator-light--on {
  border-width: 0.375em;
}

@media only print {
  .govuk-exit-this-page {
    display: none;
  }
}
.govuk-exit-this-page-overlay {
  position: fixed;
  z-index: 9999;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #ffffff;
}

.govuk-exit-this-page-hide-content * {
  display: none !important;
}
.govuk-exit-this-page-hide-content .govuk-exit-this-page-overlay {
  display: block !important;
}






.govuk-file-upload {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 1.3157894737;
  color: #0b0c0c;
  max-width: 100%;
  margin-left: -5px;
  padding: 5px;
}
@media print {
  .govuk-file-upload {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-file-upload {
    font-size: 14pt;
    line-height: 1.15;
  }
}
@media print {
  .govuk-file-upload {
    color: #000000;
  }
}
.govuk-file-upload::-webkit-file-upload-button {
  -webkit-appearance: button;
  color: inherit;
  font: inherit;
}
.govuk-file-upload:focus {
  outline: 3px solid #ffdd00;
  -webkit-box-shadow: inset 0 0 0 4px #0b0c0c;
          box-shadow: inset 0 0 0 4px #0b0c0c;
}
.govuk-file-upload:focus-within {
  outline: 3px solid #ffdd00;
  -webkit-box-shadow: inset 0 0 0 4px #0b0c0c;
          box-shadow: inset 0 0 0 4px #0b0c0c;
}
.govuk-file-upload:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.govuk-drop-zone {
  display: block;
  position: relative;
  z-index: 0;
  background-color: #ffffff;
}

.govuk-drop-zone--disabled {
  cursor: not-allowed;
}

.govuk-file-upload-button__pseudo-button {
  width: auto;
  margin-right: 10px;
  margin-bottom: 3px;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}

.govuk-file-upload-button__instruction {
  margin-top: 7px;
  margin-bottom: 0;
  text-align: left;
}

.govuk-file-upload-button__status {
  display: block;
  margin-bottom: 10px;
  padding: 15px 10px;
  background-color: #ffffff;
  text-align: left;
}

.govuk-file-upload-button__pseudo-button-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.govuk-file-upload-button {
  width: 100%;
  padding: 18px;
  border: 2px #b1b4b6 solid;
  background-color: #f3f2f1;
  cursor: pointer;
}
@media (min-width: 40.0625em) {
  .govuk-file-upload-button {
    padding: 23px;
  }
}
.govuk-file-upload-button .govuk-file-upload-button__pseudo-button {
  background-color: #ffffff;
}
.govuk-file-upload-button:hover {
  background-color: rgb(192.6, 195, 196.6);
}
.govuk-file-upload-button:hover .govuk-file-upload-button__pseudo-button {
  background-color: rgb(218.7, 217.8, 216.9);
}
.govuk-file-upload-button:hover .govuk-file-upload-button__status {
  background-color: rgb(209.8, 226.4, 240.8);
}
.govuk-file-upload-button:active, .govuk-file-upload-button:focus {
  border: 2px solid #0b0c0c;
  outline: 3px solid #ffdd00;
  outline-offset: 0;
  background-color: rgb(192.6, 195, 196.6);
  -webkit-box-shadow: inset 0 0 0 2px;
          box-shadow: inset 0 0 0 2px;
}
.govuk-file-upload-button:active .govuk-file-upload-button__pseudo-button, .govuk-file-upload-button:focus .govuk-file-upload-button__pseudo-button {
  background-color: #ffdd00;
  -webkit-box-shadow: 0 2px 0 #0b0c0c;
          box-shadow: 0 2px 0 #0b0c0c;
}
.govuk-file-upload-button:active:hover .govuk-file-upload-button__pseudo-button, .govuk-file-upload-button:focus:hover .govuk-file-upload-button__pseudo-button {
  border-color: #ffdd00;
  outline: 3px solid transparent;
  background-color: #f3f2f1;
  -webkit-box-shadow: inset 0 0 0 1px #ffdd00;
          box-shadow: inset 0 0 0 1px #ffdd00;
}

.govuk-file-upload-button--empty {
  border-style: dashed;
  background-color: #ffffff;
}
.govuk-file-upload-button--empty .govuk-file-upload-button__pseudo-button {
  background-color: #f3f2f1;
}
.govuk-file-upload-button--empty .govuk-file-upload-button__status {
  color: rgb(11.6, 44.8, 73.6);
  background-color: rgb(187.2, 212.1, 233.7);
}
.govuk-file-upload-button--empty:hover, .govuk-file-upload-button--empty:focus, .govuk-file-upload-button--empty:active {
  background-color: #f3f2f1;
}
.govuk-file-upload-button--empty:hover .govuk-file-upload-button__status, .govuk-file-upload-button--empty:focus .govuk-file-upload-button__status, .govuk-file-upload-button--empty:active .govuk-file-upload-button__status {
  background-color: rgb(209.8, 226.4, 240.8);
}

.govuk-file-upload-button--dragging {
  border-style: solid;
  border-color: #0b0c0c;
}
.govuk-file-upload-button--dragging.govuk-file-upload-button {
  background-color: rgb(192.6, 195, 196.6);
}
.govuk-file-upload-button--dragging.govuk-file-upload-button--empty {
  background-color: #f3f2f1;
}
.govuk-file-upload-button--dragging.govuk-file-upload-button--empty:not(:disabled) .govuk-file-upload-button__status, .govuk-file-upload-button--dragging.govuk-file-upload-button--empty .govuk-file-upload-button__pseudo-button {
  background-color: #ffffff;
}
.govuk-file-upload-button--dragging .govuk-file-upload-button__pseudo-button {
  background-color: rgb(218.7, 217.8, 216.9);
}

.govuk-file-upload-button:disabled {
  pointer-events: none;
  opacity: 0.5;
  background-color: #ffffff;
}
.govuk-file-upload-button:disabled .govuk-file-upload-button__pseudo-button {
  background-color: #f3f2f1;
}
.govuk-file-upload-button:disabled .govuk-file-upload-button__status {
  background-color: rgb(187.2, 212.1, 233.7);
}


.govuk-footer {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 1.3157894737;
  padding-top: 25px;
  padding-bottom: 15px;
  border-top: 10px solid #1d70b8;
  color: #0b0c0c;
  background: #f3f2f1;
}
@media print {
  .govuk-footer {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-footer {
    font-size: 14pt;
    line-height: 1.15;
  }
}
@media (min-width: 40.0625em) {
  .govuk-footer {
    padding-top: 40px;
  }
}
@media (min-width: 40.0625em) {
  .govuk-footer {
    padding-bottom: 25px;
  }
}
.govuk-template--rebranded .govuk-footer {
  background: rgb(243.7, 247.85, 251.45);
}

.govuk-footer__crown {
  margin-bottom: 25px;
}

.govuk-footer__link {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-decoration: underline;
  text-decoration-thickness: max(1px, .0625rem);
  text-underline-offset: 0.1578em;
}
@media print {
  .govuk-footer__link {
    font-family: sans-serif;
  }
}
.govuk-footer__link:hover {
  text-decoration-thickness: max(3px, .1875rem, .12em);
  -webkit-text-decoration-skip-ink: none;
  text-decoration-skip-ink: none;
  -webkit-text-decoration-skip: none;
  text-decoration-skip: none;
}
.govuk-footer__link:focus {
  outline: 3px solid transparent;
  color: #0b0c0c;
  background-color: #ffdd00;
  -webkit-box-shadow: 0 -2px #ffdd00, 0 4px #0b0c0c;
          box-shadow: 0 -2px #ffdd00, 0 4px #0b0c0c;
  text-decoration: none;
}
@supports not (text-wrap: balance) {
  .govuk-footer__link:focus {
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
  }
}
.govuk-footer__link:link, .govuk-footer__link:visited {
  color: #0b0c0c;
}
@media print {
  .govuk-footer__link:link, .govuk-footer__link:visited {
    color: #000000;
  }
}
.govuk-footer__link:hover {
  color: rgba(11, 12, 12, 0.99);
}
.govuk-footer__link:active, .govuk-footer__link:focus {
  color: #0b0c0c;
}
@media print {
  .govuk-footer__link:active, .govuk-footer__link:focus {
    color: #000000;
  }
}

.govuk-footer__section-break {
  margin: 0;
  margin-bottom: 30px;
  border: 0;
  border-bottom: 1px solid;
  border-bottom-color: #b1b4b6;
}
@media (min-width: 40.0625em) {
  .govuk-footer__section-break {
    margin-bottom: 50px;
  }
}
.govuk-template--rebranded .govuk-footer__section-break {
  border-bottom-color: rgb(142, 183.5, 219.5);
}

.govuk-footer__meta {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-right: -15px;
  margin-left: -15px;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.govuk-footer__meta-item {
  margin-right: 15px;
  margin-bottom: 25px;
  margin-left: 15px;
}

.govuk-footer__meta-item--grow {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media (max-width: 40.0525em) {
  .govuk-footer__meta-item--grow {
    -webkit-flex-basis: 320px;
        -ms-flex-preferred-size: 320px;
            flex-basis: 320px;
  }
}

.govuk-footer__licence-logo {
  display: inline-block;
  margin-right: 10px;
  vertical-align: top;
  forced-color-adjust: auto;
}
@media (max-width: 48.0525em) {
  .govuk-footer__licence-logo {
    margin-bottom: 15px;
  }
}

.govuk-footer__licence-description {
  display: inline-block;
  text-wrap: balance;
}

.govuk-footer__copyright-logo::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 112px;
  background-image: url("/assets/govuk-frontend/dist/govuk/assets/rebrand/images/govuk-crest-e7152685a73edbd8d758c5a4536ce3f9.svg");
  background-repeat: no-repeat;
  background-position: 50% 0%;
  background-size: 125px 102px;
  text-align: center;
  white-space: nowrap;
}
@supports ((-webkit-mask-position: initial) or (mask-position: initial)) {
  .govuk-footer__copyright-logo::before {
    background: currentcolor;
    -webkit-mask-image: url("/assets/govuk-frontend/dist/govuk/assets/rebrand/images/govuk-crest-e7152685a73edbd8d758c5a4536ce3f9.svg");
    mask-image: url("/assets/govuk-frontend/dist/govuk/assets/rebrand/images/govuk-crest-e7152685a73edbd8d758c5a4536ce3f9.svg");
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: 50% 0%;
    mask-position: 50% 0%;
    -webkit-mask-size: 125px 102px;
    mask-size: 125px 102px;
  }
  @media screen and (forced-colors: active) {
    .govuk-footer__copyright-logo::before {
      background: linktext;
    }
  }
}

.govuk-footer__inline-list {
  margin-top: 0;
  margin-bottom: 15px;
  padding: 0;
}

.govuk-footer__meta-custom {
  margin-bottom: 20px;
}

.govuk-footer__inline-list-item {
  display: inline-block;
  margin-right: 15px;
  margin-bottom: 5px;
}

.govuk-footer__heading {
  margin-bottom: 30px;
  padding-bottom: 20px;
  border-bottom: 1px solid;
  border-bottom-color: #b1b4b6;
}
@media (max-width: 40.0525em) {
  .govuk-footer__heading {
    padding-bottom: 10px;
  }
}
.govuk-template--rebranded .govuk-footer__heading {
  border-bottom-color: rgb(142, 183.5, 219.5);
}

.govuk-footer__navigation {
  margin-right: -15px;
  margin-left: -15px;
}
.govuk-footer__navigation::after {
  content: "";
  display: block;
  clear: both;
}

.govuk-footer__section {
  display: inline-block;
  margin-bottom: 30px;
  vertical-align: top;
}

.govuk-footer__list {
  margin: 0;
  padding: 0;
  list-style: none;
  -webkit-column-gap: 30px;
     -moz-column-gap: 30px;
          column-gap: 30px;
}

@media (min-width: 48.0625em) {
  .govuk-footer__list--columns-2 {
    -webkit-column-count: 2;
       -moz-column-count: 2;
            column-count: 2;
  }
  .govuk-footer__list--columns-3 {
    -webkit-column-count: 3;
       -moz-column-count: 3;
            column-count: 3;
  }
}
.govuk-footer__list-item {
  margin-bottom: 15px;
}
@media (min-width: 40.0625em) {
  .govuk-footer__list-item {
    margin-bottom: 20px;
  }
}

.govuk-footer__list-item:last-child {
  margin-bottom: 0;
}


.govuk-header {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1;
  border-bottom: 10px solid #ffffff;
  background: #0b0c0c;
  color: #ffffff;
}
@media print {
  .govuk-header {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-header {
    font-size: 14pt;
    line-height: 1;
  }
}
.govuk-template--rebranded .govuk-header {
  border-bottom: 1px solid transparent;
}
.govuk-template--rebranded .govuk-header {
  background: #1d70b8;
}

@media (max-width: 48.0525em) {
  .govuk-header--with-js-navigation .govuk-header__logo {
    padding-right: 80px;
  }
}

.govuk-header__container--full-width {
  padding: 0 15px;
  border-color: #1d70b8;
}
.govuk-header__container--full-width .govuk-header__menu-button {
  right: 15px;
}

.govuk-header__container {
  position: relative;
  margin-bottom: -10px;
  padding-top: 10px;
  border-bottom: 10px solid #1d70b8;
}
.govuk-header__container::after {
  content: "";
  display: block;
  clear: both;
}
.govuk-template--rebranded .govuk-header__container {
  margin-bottom: 0;
  padding-top: 0;
  border-bottom: none;
}

.govuk-header--full-width-border {
  border-bottom-color: #1d70b8;
}
.govuk-header--full-width-border .govuk-header__container {
  border-bottom-color: transparent;
}

.govuk-header__logotype {
  display: inline-block;
  position: relative;
  top: -3px;
  margin-right: 5px;
  fill: currentcolor;
  vertical-align: top;
}
@media (forced-colors: active) {
  .govuk-header__logotype {
    forced-color-adjust: none;
    color: linktext;
  }
}
.govuk-header__logotype:last-child {
  margin-right: 0;
}
.govuk-template--rebranded .govuk-header__logotype {
  margin-right: 0.4375rem;
  margin-bottom: 2px;
}
.govuk-template--rebranded .govuk-header__logotype:last-child {
  margin-right: 0;
}

.govuk-logo-dot {
  fill: #00ffe0;
}
@media print {
  .govuk-logo-dot {
    fill: currentcolor;
  }
}
@media (forced-colors: active) {
  .govuk-logo-dot {
    fill: currentcolor;
  }
}
:focus .govuk-logo-dot {
  fill: currentcolor;
}

.govuk-header__product-name {
  font-size: 1.3125rem;
  line-height: 1;
  font-weight: 400;
  display: inline-table;
  margin-top: 7px;
  vertical-align: top;
}
@media (min-width: 40.0625em) {
  .govuk-header__product-name {
    font-size: 1.5rem;
    line-height: 1;
  }
}
@media print {
  .govuk-header__product-name {
    font-size: 18pt;
    line-height: 1;
  }
}
@-moz-document url-prefix() {
  .govuk-header__product-name {
    margin-top: 6.5px;
  }
}
@media (min-width: 40.0625em) {
  .govuk-header__product-name {
    margin-top: 5px;
  }
  @-moz-document url-prefix() {
    .govuk-header__product-name {
      margin-top: 4.5px;
    }
  }
}
.govuk-template--rebranded .govuk-header__product-name {
  margin-top: 0;
  margin-bottom: -0.0625rem;
  font-size: 1.9375rem;
  letter-spacing: -0.015em;
  forced-color-adjust: none;
}
@media screen and (forced-colors: active) {
  .govuk-template--rebranded .govuk-header__product-name {
    color: LinkText;
    background: transparent;
  }
}
@media (min-width: 40.0625em) {
  .govuk-template--rebranded .govuk-header__product-name {
    margin-top: 0;
  }
}
@media (min-width: 48.0625em) {
  .govuk-template--rebranded .govuk-header__product-name {
    margin-top: 0;
  }
}

.govuk-header__link {
  text-decoration: none;
}
.govuk-header__link:link, .govuk-header__link:visited {
  color: #ffffff;
}
.govuk-header__link:hover, .govuk-header__link:active {
  color: rgba(255, 255, 255, 0.99);
}
.govuk-header__link:focus {
  color: #0b0c0c;
}
.govuk-header__link:hover {
  text-decoration: underline;
  text-decoration-thickness: 3px;
  text-underline-offset: 0.1578em;
}
.govuk-header__link:focus {
  outline: 3px solid transparent;
  color: #0b0c0c;
  background-color: #ffdd00;
  -webkit-box-shadow: 0 -2px #ffdd00, 0 4px #0b0c0c;
          box-shadow: 0 -2px #ffdd00, 0 4px #0b0c0c;
  text-decoration: none;
}
@supports not (text-wrap: balance) {
  .govuk-header__link:focus {
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
  }
}

.govuk-header__link--homepage {
  display: inline-block;
  margin-right: 10px;
  font-size: 30px;
}
@media (min-width: 48.0625em) {
  .govuk-header__link--homepage {
    display: inline;
  }
}
.govuk-header__link--homepage:link, .govuk-header__link--homepage:visited {
  text-decoration: none;
}
.govuk-header__link--homepage:hover, .govuk-header__link--homepage:active {
  margin-bottom: -3px;
  border-bottom: 3px solid;
}
.govuk-header__link--homepage:focus {
  margin-bottom: 0;
  border-bottom: 0;
}
.govuk-template--rebranded .govuk-header__link--homepage {
  display: inline;
  word-spacing: -0.375rem;
}
.govuk-template--rebranded .govuk-header__link--homepage > * {
  word-spacing: 0;
}
.govuk-template--rebranded .govuk-header__link--homepage:not(:focus) {
  background-color: #1d70b8;
}

.govuk-header__service-name {
  display: inline-block;
  margin-bottom: 10px;
  font-size: 1.3125rem;
  line-height: 1.1904761905;
  font-weight: 700;
}
@media (min-width: 40.0625em) {
  .govuk-header__service-name {
    font-size: 1.5rem;
    line-height: 1.25;
  }
}
@media print {
  .govuk-header__service-name {
    font-size: 18pt;
    line-height: 1.15;
  }
}
.govuk-template--rebranded .govuk-header__service-name {
  margin-bottom: 15px;
}
@media (min-width: 48.0625em) {
  .govuk-template--rebranded .govuk-header__service-name {
    margin: 19px 0 11px;
  }
}

.govuk-header__logo,
.govuk-header__content {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.govuk-header__logo {
  margin-bottom: 10px;
}
@media (min-width: 48.0625em) {
  .govuk-header__logo {
    width: 33.33%;
    padding-right: 15px;
    float: left;
    vertical-align: top;
  }
  .govuk-header__logo:last-child {
    width: auto;
    padding-right: 0;
    float: none;
  }
}
.govuk-template--rebranded .govuk-header__logo {
  margin-bottom: 0;
  padding-top: 16px;
  padding-bottom: 12px;
}

@media (min-width: 48.0625em) {
  .govuk-header__content {
    width: 66.66%;
    padding-left: 15px;
    float: left;
  }
}

.govuk-header__menu-button {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.25;
  max-width: 80px;
  min-height: 24px;
  margin-bottom: 5px;
  padding: 0;
  border: 0;
  color: #ffffff;
  background: none;
  word-break: break-all;
  cursor: pointer;
}
@media print {
  .govuk-header__menu-button {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-header__menu-button {
    font-size: 14pt;
    line-height: 1.2;
  }
}
.govuk-header__menu-button:hover {
  -webkit-text-decoration: solid underline 3px;
  text-decoration: solid underline 3px;
  text-underline-offset: 0.1578em;
}
.govuk-header__menu-button:focus {
  outline: 3px solid transparent;
  color: #0b0c0c;
  background-color: #ffdd00;
  -webkit-box-shadow: 0 -2px #ffdd00, 0 4px #0b0c0c;
          box-shadow: 0 -2px #ffdd00, 0 4px #0b0c0c;
  text-decoration: none;
}
@supports not (text-wrap: balance) {
  .govuk-header__menu-button:focus {
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
  }
}
.govuk-header__menu-button::after {
  display: inline-block;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent;
  -webkit-clip-path: polygon(0% 0%, 50% 100%, 100% 0%);
  clip-path: polygon(0% 0%, 50% 100%, 100% 0%);
  border-width: 8.66px 5px 0 5px;
  border-top-color: inherit;
  content: "";
  margin-left: 5px;
}
.govuk-header__menu-button[aria-expanded=true]::after {
  display: inline-block;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent;
  -webkit-clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
  clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
  border-width: 0 5px 8.66px;
  border-bottom-color: inherit;
}
@media (min-width: 20em) {
  .govuk-header__menu-button {
    position: absolute;
    top: 13px;
    right: 0;
    margin: 0;
  }
}
@media (min-width: 40.0625em) {
  .govuk-header__menu-button {
    top: 15px;
  }
}
.govuk-frontend-supported .govuk-header__menu-button {
  display: block;
}
.govuk-header__menu-button[hidden], .govuk-frontend-supported .govuk-header__menu-button[hidden] {
  display: none;
}

@media (max-width: 19.99em) {
  .govuk-template--rebranded .govuk-header__navigation {
    padding-bottom: 15px;
  }
}
@media (min-width: 48.0625em) {
  .govuk-header__navigation {
    margin-bottom: 10px;
  }
  .govuk-template--rebranded .govuk-header__navigation {
    margin-bottom: 0;
    padding: 22px 0 8px;
  }
}

@media (min-width: 48.0625em) {
  .govuk-template--rebranded .govuk-header__service-name + .govuk-header__navigation {
    padding-top: 0;
    padding-bottom: 15px;
  }
}

.govuk-header__navigation-list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.govuk-header__navigation-list[hidden] {
  display: none;
}
@media (min-width: 20em) and (max-width: 48.0525em) {
  .govuk-template--rebranded .govuk-header__navigation-list {
    padding-bottom: 15px;
  }
}

@media (min-width: 48.0625em) {
  .govuk-header__navigation--end {
    margin: 0;
    padding: 5px 0;
    text-align: right;
  }
}

.govuk-header__navigation-item {
  padding: 10px 0;
  border-bottom: 1px solid #2e3133;
}
@media (min-width: 48.0625em) {
  .govuk-header__navigation-item {
    display: inline-block;
    margin-right: 15px;
    padding: 5px 0;
    border: 0;
  }
}
.govuk-header__navigation-item a {
  font-size: 1rem;
  line-height: 1.25;
  font-weight: 700;
  white-space: nowrap;
}
@media print {
  .govuk-header__navigation-item a {
    font-size: 14pt;
    line-height: 1.2;
  }
}
.govuk-template--rebranded .govuk-header__navigation-item {
  padding-top: 15px;
  border-bottom-color: #ffffff;
}
@media (min-width: 48.0625em) {
  .govuk-template--rebranded .govuk-header__navigation-item {
    padding-top: 5px;
  }
}
.govuk-template--rebranded .govuk-header__navigation-item a {
  font-weight: 400;
}

.govuk-template--rebranded .govuk-header__navigation-item--active a {
  font-weight: 700;
}
.govuk-header__navigation-item--active a:link, .govuk-header__navigation-item--active a:hover, .govuk-header__navigation-item--active a:visited {
  color: #1d8feb;
}
.govuk-template--rebranded .govuk-header__navigation-item--active a:link, .govuk-template--rebranded .govuk-header__navigation-item--active a:hover, .govuk-template--rebranded .govuk-header__navigation-item--active a:visited {
  color: inherit;
}
@media print {
  .govuk-header__navigation-item--active a {
    color: #1d70b8;
  }
}
.govuk-header__navigation-item--active a:focus {
  color: #0b0c0c;
}
.govuk-template--rebranded .govuk-header__navigation-item--active a:focus {
  color: #0b0c0c;
}

.govuk-header__navigation-item:last-child {
  margin-right: 0;
  border-bottom: 0;
}

@media print {
  .govuk-header {
    border-bottom-width: 0;
    color: #0b0c0c;
    background: transparent;
  }
  .govuk-header__link:link, .govuk-header__link:visited {
    color: #0b0c0c;
  }
  .govuk-header__link::after {
    display: none;
  }
}






.govuk-inset-text {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 1.3157894737;
  color: #0b0c0c;
  padding: 15px;
  margin-top: 20px;
  margin-bottom: 20px;
  clear: both;
  border-left: 10px solid #b1b4b6;
}
@media print {
  .govuk-inset-text {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-inset-text {
    font-size: 14pt;
    line-height: 1.15;
  }
}
@media print {
  .govuk-inset-text {
    color: #000000;
  }
}
@media (min-width: 40.0625em) {
  .govuk-inset-text {
    margin-top: 30px;
  }
}
@media (min-width: 40.0625em) {
  .govuk-inset-text {
    margin-bottom: 30px;
  }
}
.govuk-inset-text > :first-child {
  margin-top: 0;
}
.govuk-inset-text > :only-child,
.govuk-inset-text > :last-child {
  margin-bottom: 0;
}



.govuk-notification-banner {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 1.3157894737;
  margin-bottom: 30px;
  border: 5px solid #1d70b8;
  background-color: #1d70b8;
}
@media print {
  .govuk-notification-banner {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-notification-banner {
    font-size: 14pt;
    line-height: 1.15;
  }
}
@media (min-width: 40.0625em) {
  .govuk-notification-banner {
    margin-bottom: 50px;
  }
}
.govuk-notification-banner:focus {
  outline: 3px solid #ffdd00;
}

.govuk-notification-banner__header {
  padding: 2px 15px 5px;
  border-bottom: 1px solid transparent;
}
@media (min-width: 40.0625em) {
  .govuk-notification-banner__header {
    padding: 2px 20px 5px;
  }
}

.govuk-notification-banner__title {
  font-size: 1.1875rem;
  line-height: 1.3157894737;
  font-weight: 700;
  margin: 0;
  padding: 0;
  color: #ffffff;
}
@media print {
  .govuk-notification-banner__title {
    font-size: 14pt;
    line-height: 1.15;
  }
}

.govuk-notification-banner__content {
  color: #0b0c0c;
  padding: 15px;
  background-color: #ffffff;
}
@media print {
  .govuk-notification-banner__content {
    color: #000000;
  }
}
@media (min-width: 40.0625em) {
  .govuk-notification-banner__content {
    padding: 20px;
  }
}
.govuk-notification-banner__content > * {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  max-width: 605px;
}
.govuk-notification-banner__content > :last-child {
  margin-bottom: 0;
}

.govuk-notification-banner__heading {
  font-size: 1.3125rem;
  line-height: 1.1904761905;
  font-weight: 700;
  margin: 0 0 15px;
  padding: 0;
}
@media (min-width: 40.0625em) {
  .govuk-notification-banner__heading {
    font-size: 1.5rem;
    line-height: 1.25;
  }
}
@media print {
  .govuk-notification-banner__heading {
    font-size: 18pt;
    line-height: 1.15;
  }
}

.govuk-notification-banner__link {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-decoration: underline;
  text-decoration-thickness: max(1px, .0625rem);
  text-underline-offset: 0.1578em;
}
@media print {
  .govuk-notification-banner__link {
    font-family: sans-serif;
  }
}
.govuk-notification-banner__link:hover {
  text-decoration-thickness: max(3px, .1875rem, .12em);
  -webkit-text-decoration-skip-ink: none;
  text-decoration-skip-ink: none;
  -webkit-text-decoration-skip: none;
  text-decoration-skip: none;
}
.govuk-notification-banner__link:focus {
  outline: 3px solid transparent;
  color: #0b0c0c;
  background-color: #ffdd00;
  -webkit-box-shadow: 0 -2px #ffdd00, 0 4px #0b0c0c;
          box-shadow: 0 -2px #ffdd00, 0 4px #0b0c0c;
  text-decoration: none;
}
@supports not (text-wrap: balance) {
  .govuk-notification-banner__link:focus {
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
  }
}
.govuk-notification-banner__link:link {
  color: #1d70b8;
}
.govuk-notification-banner__link:visited {
  color: #1d70b8;
}
.govuk-notification-banner__link:hover {
  color: #003078;
}
.govuk-notification-banner__link:active {
  color: #0b0c0c;
}
.govuk-notification-banner__link:focus {
  color: #0b0c0c;
}

.govuk-notification-banner--success {
  border-color: #00703c;
  background-color: #00703c;
}
.govuk-notification-banner--success .govuk-notification-banner__link:link, .govuk-notification-banner--success .govuk-notification-banner__link:visited {
  color: #00703c;
}
.govuk-notification-banner--success .govuk-notification-banner__link:hover {
  color: rgb(0, 78.4, 42);
}
.govuk-notification-banner--success .govuk-notification-banner__link:active {
  color: #00703c;
}
.govuk-notification-banner--success .govuk-notification-banner__link:focus {
  color: #0b0c0c;
}


.govuk-pagination {
  margin-bottom: 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
@media (min-width: 40.0625em) {
  .govuk-pagination {
    margin-bottom: 30px;
  }
}
@media (min-width: 40.0625em) {
  .govuk-pagination {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

.govuk-pagination__list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.govuk-pagination__item,
.govuk-pagination__next,
.govuk-pagination__prev {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 1.3157894737;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  min-width: 45px;
  min-height: 45px;
  padding: 10px 15px;
  float: left;
}
@media print {
  .govuk-pagination__item,
  .govuk-pagination__next,
  .govuk-pagination__prev {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-pagination__item,
  .govuk-pagination__next,
  .govuk-pagination__prev {
    font-size: 14pt;
    line-height: 1.15;
  }
}
.govuk-pagination__item:hover,
.govuk-pagination__next:hover,
.govuk-pagination__prev:hover {
  background-color: #f3f2f1;
}

.govuk-pagination__item {
  display: none;
  text-align: center;
}
@media (min-width: 40.0625em) {
  .govuk-pagination__item {
    display: block;
  }
}

.govuk-pagination__prev,
.govuk-pagination__next {
  font-weight: 700;
}
.govuk-pagination__prev .govuk-pagination__link,
.govuk-pagination__next .govuk-pagination__link {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.govuk-pagination__prev {
  padding-left: 0;
}

.govuk-pagination__next {
  padding-right: 0;
}

.govuk-pagination__item--current,
.govuk-pagination__item--ellipses,
.govuk-pagination__item:first-child,
.govuk-pagination__item:last-child {
  display: block;
}

.govuk-pagination__item--current {
  font-weight: 700;
  outline: 1px solid transparent;
  background-color: #1d70b8;
}
.govuk-pagination__item--current:hover {
  background-color: #1d70b8;
}
.govuk-pagination__item--current .govuk-pagination__link:link, .govuk-pagination__item--current .govuk-pagination__link:visited {
  color: #ffffff;
}
.govuk-pagination__item--current .govuk-pagination__link:hover, .govuk-pagination__item--current .govuk-pagination__link:active {
  color: rgba(255, 255, 255, 0.99);
}
.govuk-pagination__item--current .govuk-pagination__link:focus {
  color: #0b0c0c;
}

.govuk-pagination__item--ellipses {
  font-weight: 700;
  color: #505a5f;
}
.govuk-pagination__item--ellipses:hover {
  background-color: transparent;
}

.govuk-pagination__link {
  display: block;
  min-width: 15px;
}
@media screen {
  .govuk-pagination__link::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
  }
}
.govuk-pagination__link:hover .govuk-pagination__link-title--decorated, .govuk-pagination__link:active .govuk-pagination__link-title--decorated {
  text-decoration: underline;
  text-decoration-thickness: max(1px, .0625rem);
  text-underline-offset: 0.1578em;
}
.govuk-pagination__link:hover .govuk-pagination__link-label,
.govuk-pagination__link:hover .govuk-pagination__link-title--decorated, .govuk-pagination__link:active .govuk-pagination__link-label,
.govuk-pagination__link:active .govuk-pagination__link-title--decorated {
  text-decoration-thickness: max(3px, .1875rem, .12em);
  -webkit-text-decoration-skip-ink: none;
  text-decoration-skip-ink: none;
  -webkit-text-decoration-skip: none;
  text-decoration-skip: none;
}
.govuk-pagination__link:focus .govuk-pagination__icon {
  color: #0b0c0c;
}
.govuk-pagination__link:focus .govuk-pagination__link-label {
  text-decoration: none;
}
.govuk-pagination__link:focus .govuk-pagination__link-title--decorated {
  text-decoration: none;
}

.govuk-pagination__link-label {
  font-weight: 400;
  text-decoration: underline;
  text-decoration-thickness: max(1px, .0625rem);
  text-underline-offset: 0.1578em;
  display: inline-block;
}

.govuk-pagination__icon {
  width: 0.9375rem;
  height: 0.8125rem;
  color: #505a5f;
  fill: currentcolor;
  forced-color-adjust: auto;
}

.govuk-pagination__icon--prev {
  margin-right: 15px;
}

.govuk-pagination__icon--next {
  margin-left: 15px;
}

.govuk-pagination--block {
  display: block;
}
.govuk-pagination--block .govuk-pagination__next,
.govuk-pagination--block .govuk-pagination__prev {
  padding-left: 0;
  float: none;
}
.govuk-pagination--block .govuk-pagination__next .govuk-pagination__link,
.govuk-pagination--block .govuk-pagination__prev .govuk-pagination__link {
  display: inline-block;
}
.govuk-pagination--block .govuk-pagination__next {
  padding-right: 15px;
}
.govuk-pagination--block .govuk-pagination__prev + .govuk-pagination__next {
  border-top: 1px solid #b1b4b6;
}
.govuk-pagination--block .govuk-pagination__link-title::after {
  content: "";
  display: block;
}
.govuk-pagination--block .govuk-pagination__link {
  padding-left: 30px;
  text-align: left;
}
.govuk-pagination--block .govuk-pagination__link:not(:focus) {
  text-decoration: none;
}
.govuk-pagination--block .govuk-pagination__icon {
  margin-top: 0.326em;
  margin-left: -30px;
  float: left;
}


.govuk-panel {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.6875rem;
  line-height: 1.1111111111;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-bottom: 15px;
  padding: 35px;
  border: 5px solid transparent;
  text-align: center;
}
@media print {
  .govuk-panel {
    font-family: sans-serif;
  }
}
@media (min-width: 40.0625em) {
  .govuk-panel {
    font-size: 2.25rem;
    line-height: 1.1111111111;
  }
}
@media print {
  .govuk-panel {
    font-size: 24pt;
    line-height: 1.05;
  }
}
@media (max-width: 40.0525em) {
  .govuk-panel {
    padding: 15px;
    overflow-wrap: break-word;
    word-wrap: break-word;
  }
}

.govuk-panel--confirmation {
  color: #ffffff;
  background: #00703c;
}
@media print {
  .govuk-panel--confirmation {
    border-color: currentcolor;
    color: #000000;
    background: none;
  }
}

.govuk-panel__title {
  font-size: 2rem;
  line-height: 1.09375;
  font-weight: 700;
  margin-top: 0;
  margin-bottom: 30px;
}
@media (min-width: 40.0625em) {
  .govuk-panel__title {
    font-size: 3rem;
    line-height: 1.0416666667;
  }
}
@media print {
  .govuk-panel__title {
    font-size: 32pt;
    line-height: 1.15;
  }
}

.govuk-panel__title:last-child {
  margin-bottom: 0;
}







@media (min-width: 20em) {
  .govuk-password-input__wrapper {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

.govuk-password-input__input::-ms-reveal {
  display: none;
}

.govuk-password-input__toggle {
  margin-top: 5px;
  margin-bottom: 0;
}
.govuk-password-input__toggle[hidden] {
  display: none;
}
@media (min-width: 20em) {
  .govuk-password-input__toggle {
    width: auto;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    -webkit-flex-basis: 5em;
        -ms-flex-preferred-size: 5em;
            flex-basis: 5em;
    margin-top: 0;
    margin-left: 5px;
  }
}


.govuk-tag {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 1.3157894737;
  display: inline-block;
  max-width: 160px;
  margin-top: -2px;
  margin-bottom: -3px;
  padding-top: 2px;
  padding-right: 8px;
  padding-bottom: 3px;
  padding-left: 8px;
  color: rgb(11.6, 44.8, 73.6);
  background-color: rgb(187.2, 212.1, 233.7);
  text-decoration: none;
  overflow-wrap: break-word;
}
@media print {
  .govuk-tag {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-tag {
    font-size: 14pt;
    line-height: 1.15;
  }
}
@media screen and (forced-colors: active) {
  .govuk-tag {
    font-weight: bold;
  }
}

.govuk-tag--grey {
  color: rgb(40, 45, 47.5);
  background-color: rgb(228.75, 230.25, 231);
}

.govuk-tag--purple {
  color: rgb(72.5, 21.5, 68);
  background-color: rgb(238.5, 223.2, 237.15);
}

.govuk-tag--turquoise {
  color: rgb(16, 64.4, 60.4);
  background-color: rgb(212, 236.2, 234.2);
}

.govuk-tag--blue {
  color: rgb(11.6, 44.8, 73.6);
  background-color: rgb(187.2, 212.1, 233.7);
}

.govuk-tag--light-blue {
  color: rgb(11.6, 44.8, 73.6);
  background-color: rgb(232.4, 240.7, 247.9);
}

.govuk-tag--yellow {
  color: rgb(89.25, 77.35, 0);
  background-color: rgb(255, 246.5, 191.25);
}

.govuk-tag--orange {
  color: rgb(109.8, 53.55, 25.2);
  background-color: rgb(251.7, 214.2, 195.3);
}

.govuk-tag--red {
  color: rgb(42.4, 10.6, 5.6);
  background-color: rgb(244.25, 204.5, 198.25);
}

.govuk-tag--pink {
  color: rgb(106.5, 28, 64);
  background-color: rgb(248.7, 225.15, 235.95);
}

.govuk-tag--green {
  color: rgb(0, 89.6, 48);
  background-color: rgb(204, 226.4, 216);
}


.govuk-phase-banner {
  padding-top: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #b1b4b6;
}

.govuk-phase-banner__content {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.25;
  color: #0b0c0c;
  display: table;
  margin: 0;
}
@media print {
  .govuk-phase-banner__content {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-phase-banner__content {
    font-size: 14pt;
    line-height: 1.2;
  }
}
@media print {
  .govuk-phase-banner__content {
    color: #000000;
  }
}

.govuk-phase-banner__content__tag {
  font-size: 1rem;
  line-height: 1.25;
  margin-right: 15px;
}
@media print {
  .govuk-phase-banner__content__tag {
    font-size: 14pt;
    line-height: 1.2;
  }
}
@media (min-width: 40.0625em) {
  .govuk-phase-banner__content__tag {
    margin-right: 10px;
  }
}

.govuk-phase-banner__text {
  display: table-cell;
  vertical-align: middle;
}






.govuk-radios__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  position: relative;
  margin-bottom: 10px;
}

.govuk-radios__item:last-child,
.govuk-radios__item:last-of-type {
  margin-bottom: 0;
}

.govuk-radios__input {
  z-index: 1;
  width: 44px;
  height: 44px;
  margin: 0;
  opacity: 0;
  cursor: pointer;
}

.govuk-radios__label {
  -webkit-align-self: center;
      -ms-flex-item-align: center;
              -ms-grid-row-align: center;
          align-self: center;
  max-width: -webkit-calc(100% - 74px);
  max-width: calc(100% - 74px);
  margin-bottom: 0;
  padding: 7px 15px;
  cursor: pointer;
  -ms-touch-action: manipulation;
      touch-action: manipulation;
}

.govuk-radios__label::before {
  content: "";
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: absolute;
  top: 2px;
  left: 2px;
  width: 40px;
  height: 40px;
  border: 2px solid currentcolor;
  border-radius: 50%;
  background: transparent;
}

.govuk-radios__label::after {
  content: "";
  position: absolute;
  top: 12px;
  left: 12px;
  width: 0;
  height: 0;
  border: 10px solid currentcolor;
  border-radius: 50%;
  opacity: 0;
  background: currentcolor;
}

.govuk-radios__hint {
  display: block;
  width: 100%;
  margin-top: -5px;
  padding-right: 15px;
  padding-left: 59px;
}

.govuk-label:not(.govuk-label--m):not(.govuk-label--l):not(.govuk-label--xl) + .govuk-radios__hint {
  margin-bottom: 0;
}

.govuk-radios__input:focus + .govuk-radios__label::before {
  border-width: 4px;
  outline: 3px solid transparent;
  outline-offset: 1px;
  -webkit-box-shadow: 0 0 0 4px #ffdd00;
          box-shadow: 0 0 0 4px #ffdd00;
}
@media screen and (forced-colors: active), (-ms-high-contrast: active) {
  .govuk-radios__input:focus + .govuk-radios__label::before {
    outline-color: Highlight;
  }
}

.govuk-radios__input:checked + .govuk-radios__label::after {
  opacity: 1;
}

.govuk-radios__input:disabled,
.govuk-radios__input:disabled + .govuk-radios__label {
  cursor: not-allowed;
}

.govuk-radios__input:disabled + .govuk-radios__label,
.govuk-radios__input:disabled ~ .govuk-hint {
  opacity: 0.5;
}

@media (min-width: 40.0625em) {
  .govuk-radios--inline {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .govuk-radios--inline .govuk-radios__item {
    margin-right: 20px;
  }
}

.govuk-radios__divider {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 1.3157894737;
  color: #0b0c0c;
  width: 40px;
  margin-bottom: 10px;
  text-align: center;
}
@media print {
  .govuk-radios__divider {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-radios__divider {
    font-size: 14pt;
    line-height: 1.15;
  }
}
@media print {
  .govuk-radios__divider {
    color: #000000;
  }
}

.govuk-radios__conditional {
  margin-bottom: 15px;
  margin-left: 20px;
  padding-left: 35px;
  border-left: 4px solid #b1b4b6;
}
@media (min-width: 40.0625em) {
  .govuk-radios__conditional {
    margin-bottom: 20px;
  }
}
.govuk-frontend-supported .govuk-radios__conditional--hidden {
  display: none;
}
.govuk-radios__conditional > :last-child {
  margin-bottom: 0;
}

.govuk-radios--small .govuk-radios__item {
  margin-bottom: 0;
}
.govuk-radios--small .govuk-radios__input {
  margin-left: -10px;
}
.govuk-radios--small .govuk-radios__label {
  padding-left: 1px;
}
.govuk-radios--small .govuk-radios__label::before {
  top: 10px;
  left: 0;
  width: 24px;
  height: 24px;
}
.govuk-radios--small .govuk-radios__label::after {
  top: 17px;
  left: 7px;
  border-width: 5px;
}
.govuk-radios--small .govuk-radios__hint {
  padding-left: 34px;
}
.govuk-radios--small .govuk-radios__conditional {
  margin-left: 10px;
  padding-left: 20px;
}
.govuk-radios--small .govuk-radios__divider {
  width: 24px;
  margin-bottom: 5px;
}
.govuk-radios--small .govuk-radios__item:hover .govuk-radios__input:not(:disabled) + .govuk-radios__label::before {
  outline: 4px dashed transparent;
  outline-offset: 1px;
  -webkit-box-shadow: 0 0 0 10px #b1b4b6;
          box-shadow: 0 0 0 10px #b1b4b6;
}
.govuk-radios--small .govuk-radios__item:hover .govuk-radios__input:focus + .govuk-radios__label::before {
  -webkit-box-shadow: 0 0 0 4px #ffdd00 0 0 0 10px #b1b4b6;
          box-shadow: 0 0 0 4px #ffdd00 0 0 0 10px #b1b4b6;
}
@media screen and (forced-colors: active), (-ms-high-contrast: active) {
  .govuk-radios--small .govuk-radios__item:hover .govuk-radios__input:focus + .govuk-radios__label::before {
    outline-color: Highlight;
  }
}
@media (hover: none), (pointer: coarse) {
  .govuk-radios--small .govuk-radios__item:hover .govuk-radios__input:not(:disabled) + .govuk-radios__label::before {
    -webkit-box-shadow: initial;
            box-shadow: initial;
  }
  .govuk-radios--small .govuk-radios__item:hover .govuk-radios__input:focus + .govuk-radios__label::before {
    -webkit-box-shadow: 0 0 0 4px #ffdd00;
            box-shadow: 0 0 0 4px #ffdd00;
  }
}





.govuk-select {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 1.25;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  min-width: 11.5em;
  max-width: 100%;
  height: 2.5rem;
  padding: 5px;
  border: 2px solid #0b0c0c;
  color: #0b0c0c;
  background-color: #ffffff;
}
@media print {
  .govuk-select {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-select {
    font-size: 14pt;
    line-height: 1.25;
  }
}
.govuk-select:focus {
  outline: 3px solid #ffdd00;
  outline-offset: 0;
  -webkit-box-shadow: inset 0 0 0 2px;
          box-shadow: inset 0 0 0 2px;
}
.govuk-select:disabled {
  opacity: 0.5;
  color: inherit;
  cursor: not-allowed;
}

.govuk-select option:active,
.govuk-select option:checked,
.govuk-select:focus::-ms-value {
  color: #ffffff;
  background-color: #1d70b8;
}

.govuk-select--error {
  border-color: #d4351c;
}
.govuk-select--error:focus {
  border-color: #0b0c0c;
}


.govuk-service-navigation {
  border-bottom-width: 1px;
  border-bottom-style: solid;
  border-bottom-color: #b1b4b6;
  background-color: #f3f2f1;
}
.govuk-template--rebranded .govuk-service-navigation {
  border-bottom-color: rgb(142, 183.5, 219.5);
}
.govuk-template--rebranded .govuk-service-navigation {
  background-color: rgb(243.7, 247.85, 251.45);
}

.govuk-service-navigation__container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
  -webkit-align-items: start;
      -ms-flex-align: start;
          align-items: start;
}
@media (min-width: 40.0625em) {
  .govuk-service-navigation__container {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}

.govuk-service-navigation__item,
.govuk-service-navigation__service-name {
  position: relative;
  margin: 10px 0;
  border: 0 solid rgb(26.1, 100.8, 165.6);
}
@media (min-width: 40.0625em) {
  .govuk-service-navigation__item,
  .govuk-service-navigation__service-name {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0;
    padding: 20px 0;
  }
  .govuk-template--rebranded .govuk-service-navigation__item,
  .govuk-template--rebranded .govuk-service-navigation__service-name {
    padding: 15px 0;
    line-height: 1.5263157895;
  }
  .govuk-service-navigation__item:not(:last-child),
  .govuk-service-navigation__service-name:not(:last-child) {
    margin-right: 20px;
  }
}
@media (min-width: 40.0625em) and (min-width: 40.0625em) {
  .govuk-service-navigation__item:not(:last-child),
  .govuk-service-navigation__service-name:not(:last-child) {
    margin-right: 30px;
  }
}

.govuk-service-navigation__service-name + .govuk-service-navigation__wrapper .govuk-service-navigation__list:first-child .govuk-service-navigation__item:first-child,
.govuk-service-navigation__service-name + .govuk-service-navigation__wrapper .govuk-service-navigation__toggle[hidden] + .govuk-service-navigation__list .govuk-service-navigation__item:first-child {
  margin-top: 0;
}

@media (max-width: 40.0525em) {
  .govuk-service-navigation__item--active {
    margin-left: -15px;
    padding-left: 10px;
    border-left-width: 5px;
  }
}
@media (min-width: 40.0625em) {
  .govuk-service-navigation__item--active {
    padding-bottom: 15px;
    border-bottom-width: 5px;
  }
  .govuk-template--rebranded .govuk-service-navigation__item--active {
    padding-bottom: 10px;
  }
}

.govuk-service-navigation__link {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-decoration: underline;
  text-decoration-thickness: max(1px, .0625rem);
  text-underline-offset: 0.1578em;
}
@media print {
  .govuk-service-navigation__link {
    font-family: sans-serif;
  }
}
.govuk-service-navigation__link:hover {
  text-decoration-thickness: max(3px, .1875rem, .12em);
  -webkit-text-decoration-skip-ink: none;
  text-decoration-skip-ink: none;
  -webkit-text-decoration-skip: none;
  text-decoration-skip: none;
}
.govuk-service-navigation__link:focus {
  outline: 3px solid transparent;
  color: #0b0c0c;
  background-color: #ffdd00;
  -webkit-box-shadow: 0 -2px #ffdd00, 0 4px #0b0c0c;
          box-shadow: 0 -2px #ffdd00, 0 4px #0b0c0c;
  text-decoration: none;
}
@supports not (text-wrap: balance) {
  .govuk-service-navigation__link:focus {
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
  }
}
.govuk-service-navigation__link:not(:hover):not(:active) {
  text-decoration: none;
}
.govuk-service-navigation__link:link {
  color: #1d70b8;
}
.govuk-service-navigation__link:visited {
  color: #1d70b8;
}
.govuk-service-navigation__link:hover {
  color: #003078;
}
.govuk-service-navigation__link:active {
  color: #0b0c0c;
}
.govuk-service-navigation__link:focus {
  color: #0b0c0c;
}
.govuk-service-navigation__link:not(:hover):not(:focus) {
  color: rgb(26.1, 100.8, 165.6);
}

.govuk-service-navigation__service-name {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 700;
  font-size: 1.1875rem;
  line-height: 1.3157894737;
}
@media print {
  .govuk-service-navigation__service-name {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-service-navigation__service-name {
    font-size: 14pt;
    line-height: 1.15;
  }
}

.govuk-service-navigation__service-name .govuk-service-navigation__link:link, .govuk-service-navigation__service-name .govuk-service-navigation__link:visited {
  color: #0b0c0c;
}
@media print {
  .govuk-service-navigation__service-name .govuk-service-navigation__link:link, .govuk-service-navigation__service-name .govuk-service-navigation__link:visited {
    color: #000000;
  }
}
.govuk-service-navigation__service-name .govuk-service-navigation__link:hover {
  color: rgba(11, 12, 12, 0.99);
}
.govuk-service-navigation__service-name .govuk-service-navigation__link:active, .govuk-service-navigation__service-name .govuk-service-navigation__link:focus {
  color: #0b0c0c;
}
@media print {
  .govuk-service-navigation__service-name .govuk-service-navigation__link:active, .govuk-service-navigation__service-name .govuk-service-navigation__link:focus {
    color: #000000;
  }
}

.govuk-service-navigation__wrapper {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.govuk-service-navigation__toggle {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 700;
  font-size: 1.1875rem;
  line-height: 1.3157894737;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin: 10px 0;
  padding: 0;
  border: 0;
  color: rgb(26.1, 100.8, 165.6);
  background: none;
  word-break: break-all;
  cursor: pointer;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media print {
  .govuk-service-navigation__toggle {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-service-navigation__toggle {
    font-size: 14pt;
    line-height: 1.15;
  }
}
.govuk-service-navigation__toggle:focus {
  outline: 3px solid transparent;
  color: #0b0c0c;
  background-color: #ffdd00;
  -webkit-box-shadow: 0 -2px #ffdd00, 0 4px #0b0c0c;
          box-shadow: 0 -2px #ffdd00, 0 4px #0b0c0c;
  text-decoration: none;
}
@supports not (text-wrap: balance) {
  .govuk-service-navigation__toggle:focus {
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
  }
}
.govuk-service-navigation__toggle::after {
  display: inline-block;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent;
  -webkit-clip-path: polygon(0% 0%, 50% 100%, 100% 0%);
  clip-path: polygon(0% 0%, 50% 100%, 100% 0%);
  border-width: 8.66px 5px 0 5px;
  border-top-color: inherit;
  content: "";
  margin-left: 5px;
}
.govuk-service-navigation__toggle[aria-expanded=true]::after {
  display: inline-block;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent;
  -webkit-clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
  clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
  border-width: 0 5px 8.66px;
  border-bottom-color: inherit;
}
.govuk-service-navigation__toggle[hidden] {
  display: none;
}
.govuk-service-navigation__service-name + .govuk-service-navigation__wrapper .govuk-service-navigation__toggle {
  margin-top: 0;
}

.govuk-service-navigation__list {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 1.3157894737;
  margin: 0;
  margin-bottom: 15px;
  padding: 0;
  list-style: none;
}
@media print {
  .govuk-service-navigation__list {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-service-navigation__list {
    font-size: 14pt;
    line-height: 1.15;
  }
}
@media (min-width: 40.0625em) {
  .govuk-service-navigation__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin-bottom: 0;
  }
}
@media screen and (min-width: 40.0625em) and (min-width: 0\0 ) {
  .govuk-service-navigation__list {
    display: block;
  }
}

.govuk-service-navigation__active-fallback {
  font-weight: inherit;
}

.govuk-template--rebranded .govuk-service-navigation--inverse {
  border-bottom: none;
  background-color: #1d70b8;
}
.govuk-template--rebranded .govuk-service-navigation--inverse .govuk-width-container {
  border-width: 1px 0;
  border-style: solid;
  border-color: rgb(142, 183.5, 219.5);
}
.govuk-template--rebranded .govuk-service-navigation--inverse .govuk-service-navigation__container {
  margin-top: -1px;
}
.govuk-template--rebranded .govuk-service-navigation--inverse .govuk-service-navigation__item,
.govuk-template--rebranded .govuk-service-navigation--inverse .govuk-service-navigation__service-name {
  border-color: #ffffff;
}
.govuk-template--rebranded .govuk-service-navigation--inverse .govuk-service-navigation__link:link, .govuk-template--rebranded .govuk-service-navigation--inverse .govuk-service-navigation__link:visited {
  color: #ffffff;
}
.govuk-template--rebranded .govuk-service-navigation--inverse .govuk-service-navigation__link:hover, .govuk-template--rebranded .govuk-service-navigation--inverse .govuk-service-navigation__link:active {
  color: rgba(255, 255, 255, 0.99);
}
.govuk-template--rebranded .govuk-service-navigation--inverse .govuk-service-navigation__link:focus {
  color: #0b0c0c;
}
.govuk-template--rebranded .govuk-service-navigation--inverse .govuk-service-navigation__toggle:not(:focus) {
  color: #ffffff;
}


.govuk-skip-link {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-decoration: underline;
  text-decoration-thickness: max(1px, .0625rem);
  text-underline-offset: 0.1578em;
  font-size: 1rem;
  line-height: 1.25;
  display: block;
  padding: 10px 15px;
}
.govuk-skip-link:not(:active):not(:focus) {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  -webkit-clip-path: inset(50%) !important;
  clip-path: inset(50%) !important;
  border: 0 !important;
  white-space: nowrap !important;
  -webkit-user-select: none;
  -ms-user-select: none;
  -moz-user-select: none;
       user-select: none;
}
@media print {
  .govuk-skip-link {
    font-family: sans-serif;
  }
}
.govuk-skip-link:link, .govuk-skip-link:visited {
  color: #0b0c0c;
}
@media print {
  .govuk-skip-link:link, .govuk-skip-link:visited {
    color: #000000;
  }
}
.govuk-skip-link:hover {
  color: rgba(11, 12, 12, 0.99);
}
.govuk-skip-link:active, .govuk-skip-link:focus {
  color: #0b0c0c;
}
@media print {
  .govuk-skip-link:active, .govuk-skip-link:focus {
    color: #000000;
  }
}
@media print {
  .govuk-skip-link {
    font-size: 14pt;
    line-height: 1.2;
  }
}
@supports (padding: max(calc(0px))) {
  .govuk-skip-link {
    padding-right: max(15px, -webkit-calc(15px + env(safe-area-inset-right)));
    padding-right: max(15px, calc(15px + env(safe-area-inset-right)));
    padding-left: max(15px, -webkit-calc(15px + env(safe-area-inset-left)));
    padding-left: max(15px, calc(15px + env(safe-area-inset-left)));
  }
}
.govuk-skip-link:focus {
  outline: 3px solid #ffdd00;
  outline-offset: 0;
  background-color: #ffdd00;
}

.govuk-skip-link-focused-element:focus {
  outline: none;
}


.govuk-summary-list {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 1.3157894737;
  color: #0b0c0c;
  margin: 0;
  margin-bottom: 20px;
}
@media print {
  .govuk-summary-list {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-summary-list {
    font-size: 14pt;
    line-height: 1.15;
  }
}
@media print {
  .govuk-summary-list {
    color: #000000;
  }
}
@media (min-width: 40.0625em) {
  .govuk-summary-list {
    display: table;
    width: 100%;
    table-layout: fixed;
    border-collapse: collapse;
  }
}
@media (min-width: 40.0625em) {
  .govuk-summary-list {
    margin-bottom: 30px;
  }
}

.govuk-summary-list__row {
  border-bottom: 1px solid #b1b4b6;
}
@media (max-width: 40.0525em) {
  .govuk-summary-list__row {
    margin-bottom: 15px;
  }
}
@media (min-width: 40.0625em) {
  .govuk-summary-list__row {
    display: table-row;
  }
}

.govuk-summary-list__row:not(.govuk-summary-list__row--no-actions) > :last-child {
  padding-right: 0;
}

@media (min-width: 40.0625em) {
  .govuk-summary-list__row--no-actions::after {
    content: "";
    display: table-cell;
    width: 20%;
  }
}

.govuk-summary-list__key,
.govuk-summary-list__value,
.govuk-summary-list__actions {
  margin: 0;
}
@media (min-width: 40.0625em) {
  .govuk-summary-list__key,
  .govuk-summary-list__value,
  .govuk-summary-list__actions {
    display: table-cell;
    padding-top: 10px;
    padding-right: 20px;
    padding-bottom: 10px;
  }
}

.govuk-summary-list__actions {
  margin-bottom: 15px;
}
@media (min-width: 40.0625em) {
  .govuk-summary-list__actions {
    width: 20%;
    text-align: right;
  }
}

.govuk-summary-list__key,
.govuk-summary-list__value {
  word-wrap: break-word;
  overflow-wrap: break-word;
}

.govuk-summary-list__key {
  margin-bottom: 5px;
  font-weight: 700;
}
@media (min-width: 40.0625em) {
  .govuk-summary-list__key {
    width: 30%;
  }
}

@media (max-width: 40.0525em) {
  .govuk-summary-list__value {
    margin-bottom: 15px;
  }
}

.govuk-summary-list__value > p {
  margin-bottom: 10px;
}

.govuk-summary-list__value > :last-child {
  margin-bottom: 0;
}

.govuk-summary-list__actions-list {
  width: 100%;
  margin: 0;
  padding: 0;
}

.govuk-summary-list__actions-list-item,
.govuk-summary-card__action {
  display: inline-block;
}

@media (max-width: 40.0525em) {
  .govuk-summary-list__actions-list-item,
  .govuk-summary-card__action {
    margin-right: 10px;
    padding-right: 10px;
    border-right: 1px solid #b1b4b6;
  }
  .govuk-summary-list__actions-list-item:last-child,
  .govuk-summary-card__action:last-child {
    margin-right: 0;
    padding-right: 0;
    border: 0;
  }
}
@media (min-width: 40.0625em) {
  .govuk-summary-list__actions-list-item,
  .govuk-summary-card__action {
    margin-left: 10px;
    padding-left: 10px;
  }
  .govuk-summary-list__actions-list-item:not(:first-child),
  .govuk-summary-card__action:not(:first-child) {
    border-left: 1px solid #b1b4b6;
  }
  .govuk-summary-list__actions-list-item:first-child,
  .govuk-summary-card__action:first-child {
    margin-left: 0;
    padding-left: 0;
    border: 0;
  }
}
.govuk-summary-list__actions-list-item .govuk-link:focus {
  isolation: isolate;
}

.govuk-summary-list--no-border .govuk-summary-list__row {
  border: 0;
}
@media (min-width: 40.0625em) {
  .govuk-summary-list--no-border .govuk-summary-list__key,
  .govuk-summary-list--no-border .govuk-summary-list__value,
  .govuk-summary-list--no-border .govuk-summary-list__actions {
    padding-bottom: 11px;
  }
}

.govuk-summary-list__row--no-border {
  border: 0;
}
@media (min-width: 40.0625em) {
  .govuk-summary-list__row--no-border .govuk-summary-list__key,
  .govuk-summary-list__row--no-border .govuk-summary-list__value,
  .govuk-summary-list__row--no-border .govuk-summary-list__actions {
    padding-bottom: 11px;
  }
}

.govuk-summary-card {
  margin-bottom: 20px;
  border: 1px solid #b1b4b6;
}
@media (min-width: 40.0625em) {
  .govuk-summary-card {
    margin-bottom: 30px;
  }
}

.govuk-summary-card__title-wrapper {
  padding: 15px;
  border-bottom: 1px solid transparent;
  background-color: #f3f2f1;
}
@media (min-width: 40.0625em) {
  .govuk-summary-card__title-wrapper {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    padding: 15px 20px;
  }
}

.govuk-summary-card__title {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 700;
  font-size: 1.1875rem;
  line-height: 1.3157894737;
  color: #0b0c0c;
  margin: 5px 20px 10px 0;
}
@media print {
  .govuk-summary-card__title {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-summary-card__title {
    font-size: 14pt;
    line-height: 1.15;
  }
}
@media print {
  .govuk-summary-card__title {
    color: #000000;
  }
}
@media (min-width: 40.0625em) {
  .govuk-summary-card__title {
    margin-bottom: 5px;
  }
}

.govuk-summary-card__actions {
  font-size: 1.1875rem;
  line-height: 1.3157894737;
  font-weight: 700;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  row-gap: 10px;
  margin: 5px 0;
  padding: 0;
  list-style: none;
}
@media print {
  .govuk-summary-card__actions {
    font-size: 14pt;
    line-height: 1.15;
  }
}
@media (min-width: 40.0625em) {
  .govuk-summary-card__actions {
    -webkit-box-pack: right;
    -webkit-justify-content: right;
        -ms-flex-pack: right;
            justify-content: right;
    text-align: right;
  }
}

.govuk-summary-card__action {
  display: inline;
}
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .govuk-summary-card__action {
    margin-bottom: 5px;
  }
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .govuk-summary-card__action:last-child {
    margin-bottom: 0;
  }
}

.govuk-summary-card__content {
  padding: 15px 15px 0;
}
@media (min-width: 40.0625em) {
  .govuk-summary-card__content {
    padding: 15px 20px;
  }
}
.govuk-summary-card__content .govuk-summary-list {
  margin-bottom: 0;
}
.govuk-summary-card__content .govuk-summary-list__row:last-of-type {
  margin-bottom: 0;
  border-bottom: none;
}


.govuk-table {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 1.3157894737;
  color: #0b0c0c;
  width: 100%;
  margin-bottom: 20px;
  border-spacing: 0;
  border-collapse: collapse;
}
@media print {
  .govuk-table {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-table {
    font-size: 14pt;
    line-height: 1.15;
  }
}
@media print {
  .govuk-table {
    color: #000000;
  }
}
@media (min-width: 40.0625em) {
  .govuk-table {
    margin-bottom: 30px;
  }
}

@media (max-width: 40.0525em) {
  .govuk-table--small-text-until-tablet {
    font-size: 1rem;
    line-height: 1.25;
  }
}
@media print and (max-width: 40.0525em) {
  .govuk-table--small-text-until-tablet {
    font-size: 14pt;
    line-height: 1.2;
  }
}

.govuk-table__header {
  font-weight: 700;
}

.govuk-table__header,
.govuk-table__cell {
  padding: 10px 20px 10px 0;
  border-bottom: 1px solid #b1b4b6;
  text-align: left;
  vertical-align: top;
}

.govuk-table__cell--numeric {
  font-variant-numeric: tabular-nums;
}

.govuk-table__header--numeric,
.govuk-table__cell--numeric {
  text-align: right;
}

.govuk-table__header:last-child,
.govuk-table__cell:last-child {
  padding-right: 0;
}

.govuk-table__caption {
  font-weight: 700;
  display: table-caption;
  text-align: left;
}

.govuk-table__caption--xl,
.govuk-table__caption--l,
.govuk-table__caption--m {
  margin-bottom: 15px;
}

.govuk-table__caption--xl {
  font-size: 2rem;
  line-height: 1.09375;
}
@media (min-width: 40.0625em) {
  .govuk-table__caption--xl {
    font-size: 3rem;
    line-height: 1.0416666667;
  }
}
@media print {
  .govuk-table__caption--xl {
    font-size: 32pt;
    line-height: 1.15;
  }
}

.govuk-table__caption--l {
  font-size: 1.6875rem;
  line-height: 1.1111111111;
}
@media (min-width: 40.0625em) {
  .govuk-table__caption--l {
    font-size: 2.25rem;
    line-height: 1.1111111111;
  }
}
@media print {
  .govuk-table__caption--l {
    font-size: 24pt;
    line-height: 1.05;
  }
}

.govuk-table__caption--m {
  font-size: 1.3125rem;
  line-height: 1.1904761905;
}
@media (min-width: 40.0625em) {
  .govuk-table__caption--m {
    font-size: 1.5rem;
    line-height: 1.25;
  }
}
@media print {
  .govuk-table__caption--m {
    font-size: 18pt;
    line-height: 1.15;
  }
}


.govuk-tabs {
  margin-top: 5px;
  margin-bottom: 20px;
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 1.3157894737;
}
@media (min-width: 40.0625em) {
  .govuk-tabs {
    margin-bottom: 30px;
  }
}
@media print {
  .govuk-tabs {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-tabs {
    font-size: 14pt;
    line-height: 1.15;
  }
}

.govuk-tabs__title {
  font-size: 1.1875rem;
  line-height: 1.3157894737;
  font-weight: 400;
  color: #0b0c0c;
  margin-bottom: 10px;
}
@media print {
  .govuk-tabs__title {
    font-size: 14pt;
    line-height: 1.15;
  }
}
@media print {
  .govuk-tabs__title {
    color: #000000;
  }
}

.govuk-tabs__list {
  margin: 0;
  padding: 0;
  list-style: none;
  margin-bottom: 20px;
}
@media (min-width: 40.0625em) {
  .govuk-tabs__list {
    margin-bottom: 30px;
  }
}

.govuk-tabs__list-item {
  margin-left: 25px;
}
.govuk-tabs__list-item::before {
  color: #0b0c0c;
  content: "—";
  margin-left: -25px;
  padding-right: 5px;
}
@media print {
  .govuk-tabs__list-item::before {
    color: #000000;
  }
}

.govuk-tabs__tab {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-decoration: underline;
  text-decoration-thickness: max(1px, .0625rem);
  text-underline-offset: 0.1578em;
  display: inline-block;
  margin-bottom: 10px;
}
@media print {
  .govuk-tabs__tab {
    font-family: sans-serif;
  }
}
.govuk-tabs__tab:hover {
  text-decoration-thickness: max(3px, .1875rem, .12em);
  -webkit-text-decoration-skip-ink: none;
  text-decoration-skip-ink: none;
  -webkit-text-decoration-skip: none;
  text-decoration-skip: none;
}
.govuk-tabs__tab:focus {
  outline: 3px solid transparent;
  color: #0b0c0c;
  background-color: #ffdd00;
  -webkit-box-shadow: 0 -2px #ffdd00, 0 4px #0b0c0c;
          box-shadow: 0 -2px #ffdd00, 0 4px #0b0c0c;
  text-decoration: none;
}
@supports not (text-wrap: balance) {
  .govuk-tabs__tab:focus {
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
  }
}
.govuk-tabs__tab:link {
  color: #1d70b8;
}
.govuk-tabs__tab:visited {
  color: #4c2c92;
}
.govuk-tabs__tab:hover {
  color: #003078;
}
.govuk-tabs__tab:active {
  color: #0b0c0c;
}
.govuk-tabs__tab:focus {
  color: #0b0c0c;
}

.govuk-tabs__panel {
  margin-bottom: 30px;
}
@media (min-width: 40.0625em) {
  .govuk-tabs__panel {
    margin-bottom: 50px;
  }
}

@media (min-width: 40.0625em) {
  .govuk-frontend-supported .govuk-tabs__list {
    margin-bottom: 0;
    border-bottom: 1px solid #b1b4b6;
  }
  .govuk-frontend-supported .govuk-tabs__list::after {
    content: "";
    display: block;
    clear: both;
  }
  .govuk-frontend-supported .govuk-tabs__title {
    display: none;
  }
  .govuk-frontend-supported .govuk-tabs__list-item {
    position: relative;
    margin-right: 5px;
    margin-bottom: 0;
    margin-left: 0;
    padding: 10px 20px;
    float: left;
    background-color: #f3f2f1;
    text-align: center;
  }
  .govuk-frontend-supported .govuk-tabs__list-item::before {
    content: none;
  }
  .govuk-frontend-supported .govuk-tabs__list-item--selected {
    position: relative;
    margin-top: -5px;
    margin-bottom: -1px;
    padding-top: 14px;
    padding-right: 19px;
    padding-bottom: 16px;
    padding-left: 19px;
    border: 1px solid #b1b4b6;
    border-bottom: 0;
    background-color: #ffffff;
  }
  .govuk-frontend-supported .govuk-tabs__list-item--selected .govuk-tabs__tab {
    text-decoration: none;
  }
  .govuk-frontend-supported .govuk-tabs__tab {
    margin-bottom: 0;
  }
  .govuk-frontend-supported .govuk-tabs__tab:link, .govuk-frontend-supported .govuk-tabs__tab:visited {
    color: #0b0c0c;
  }
}
@media print and (min-width: 40.0625em) {
  .govuk-frontend-supported .govuk-tabs__tab:link, .govuk-frontend-supported .govuk-tabs__tab:visited {
    color: #000000;
  }
}
@media (min-width: 40.0625em) {
  .govuk-frontend-supported .govuk-tabs__tab:hover {
    color: rgba(11, 12, 12, 0.99);
  }
  .govuk-frontend-supported .govuk-tabs__tab:active, .govuk-frontend-supported .govuk-tabs__tab:focus {
    color: #0b0c0c;
  }
}
@media print and (min-width: 40.0625em) {
  .govuk-frontend-supported .govuk-tabs__tab:active, .govuk-frontend-supported .govuk-tabs__tab:focus {
    color: #000000;
  }
}
@media (min-width: 40.0625em) {
  .govuk-frontend-supported .govuk-tabs__tab::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
  }
  .govuk-frontend-supported .govuk-tabs__panel {
    margin-bottom: 0;
    padding: 30px 20px;
    border: 1px solid #b1b4b6;
    border-top: 0;
  }
  .govuk-frontend-supported .govuk-tabs__panel > :last-child {
    margin-bottom: 0;
  }
  .govuk-frontend-supported .govuk-tabs__panel--hidden {
    display: none;
  }
}




.govuk-task-list {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 1.3157894737;
  margin-top: 0;
  margin-bottom: 20px;
  padding: 0;
  list-style-type: none;
}
@media print {
  .govuk-task-list {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-task-list {
    font-size: 14pt;
    line-height: 1.15;
  }
}
@media (min-width: 40.0625em) {
  .govuk-task-list {
    margin-bottom: 30px;
  }
}

.govuk-task-list__item {
  display: table;
  position: relative;
  width: 100%;
  margin-bottom: 0;
  padding-top: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #b1b4b6;
}

.govuk-task-list__item:first-child {
  border-top: 1px solid #b1b4b6;
}

.govuk-task-list__item--with-link:hover {
  background: #f3f2f1;
}

.govuk-task-list__name-and-hint {
  display: table-cell;
  vertical-align: top;
  color: #0b0c0c;
}
@media print {
  .govuk-task-list__name-and-hint {
    color: #000000;
  }
}

.govuk-task-list__status {
  display: table-cell;
  padding-left: 10px;
  text-align: right;
  vertical-align: top;
  color: #0b0c0c;
}
@media print {
  .govuk-task-list__status {
    color: #000000;
  }
}

.govuk-task-list__status--cannot-start-yet {
  color: #505a5f;
}

.govuk-task-list__link::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.govuk-task-list__hint {
  margin-top: 5px;
  color: #505a5f;
}






.govuk-warning-text {
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 1.3157894737;
  margin-bottom: 20px;
  font-weight: 700;
  position: relative;
  padding: 10px 0;
}
@media print {
  .govuk-warning-text {
    font-family: sans-serif;
  }
}
@media print {
  .govuk-warning-text {
    font-size: 14pt;
    line-height: 1.15;
  }
}
@media (min-width: 40.0625em) {
  .govuk-warning-text {
    margin-bottom: 30px;
  }
}

.govuk-warning-text__icon {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: inline-block;
  position: absolute;
  left: 0;
  min-width: 35px;
  min-height: 35px;
  margin-top: -7px;
  border: 3px solid #0b0c0c;
  border-radius: 50%;
  color: #ffffff;
  background: #0b0c0c;
  font-size: 30px;
  line-height: 29px;
  text-align: center;
  -webkit-user-select: none;
  -ms-user-select: none;
  -moz-user-select: none;
       user-select: none;
  forced-color-adjust: none;
}
@media (min-width: 40.0625em) {
  .govuk-warning-text__icon {
    margin-top: -5px;
  }
}
@media screen and (forced-colors: active) {
  .govuk-warning-text__icon {
    border-color: windowText;
    color: windowText;
    background: transparent;
  }
}

.govuk-warning-text__text {
  color: #0b0c0c;
  display: block;
  padding-left: 45px;
  font-weight: inherit;
}
@media print {
  .govuk-warning-text__text {
    color: #000000;
  }
}



.govuk-clearfix::after {
  content: "";
  display: block;
  clear: both;
}


.govuk-visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  -webkit-clip-path: inset(50%) !important;
  clip-path: inset(50%) !important;
  border: 0 !important;
  white-space: nowrap !important;
  -webkit-user-select: none;
  -ms-user-select: none;
  -moz-user-select: none;
       user-select: none;
}
.govuk-visually-hidden::before {
  content: " ";
}
.govuk-visually-hidden::after {
  content: " ";
}

.govuk-visually-hidden-focusable:not(:active):not(:focus) {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  -webkit-clip-path: inset(50%) !important;
  clip-path: inset(50%) !important;
  border: 0 !important;
  white-space: nowrap !important;
  -webkit-user-select: none;
  -ms-user-select: none;
  -moz-user-select: none;
       user-select: none;
}



.govuk-\!-display-inline {
  display: inline !important;
}

.govuk-\!-display-inline-block {
  display: inline-block !important;
}

.govuk-\!-display-block {
  display: block !important;
}

.govuk-\!-display-none {
  display: none !important;
}

@media print {
  .govuk-\!-display-none-print {
    display: none !important;
  }
}

.govuk-\!-margin-0 {
  margin: 0 !important;
}

.govuk-\!-margin-top-0 {
  margin-top: 0 !important;
}

.govuk-\!-margin-right-0 {
  margin-right: 0 !important;
}

.govuk-\!-margin-bottom-0 {
  margin-bottom: 0 !important;
}

.govuk-\!-margin-left-0 {
  margin-left: 0 !important;
}

.govuk-\!-margin-1 {
  margin: 5px !important;
}

.govuk-\!-margin-top-1 {
  margin-top: 5px !important;
}

.govuk-\!-margin-right-1 {
  margin-right: 5px !important;
}

.govuk-\!-margin-bottom-1 {
  margin-bottom: 5px !important;
}

.govuk-\!-margin-left-1 {
  margin-left: 5px !important;
}

.govuk-\!-margin-2 {
  margin: 10px !important;
}

.govuk-\!-margin-top-2 {
  margin-top: 10px !important;
}

.govuk-\!-margin-right-2 {
  margin-right: 10px !important;
}

.govuk-\!-margin-bottom-2 {
  margin-bottom: 10px !important;
}

.govuk-\!-margin-left-2 {
  margin-left: 10px !important;
}

.govuk-\!-margin-3 {
  margin: 15px !important;
}

.govuk-\!-margin-top-3 {
  margin-top: 15px !important;
}

.govuk-\!-margin-right-3 {
  margin-right: 15px !important;
}

.govuk-\!-margin-bottom-3 {
  margin-bottom: 15px !important;
}

.govuk-\!-margin-left-3 {
  margin-left: 15px !important;
}

.govuk-\!-margin-4 {
  margin: 15px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-margin-4 {
    margin: 20px !important;
  }
}

.govuk-\!-margin-top-4 {
  margin-top: 15px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-margin-top-4 {
    margin-top: 20px !important;
  }
}

.govuk-\!-margin-right-4 {
  margin-right: 15px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-margin-right-4 {
    margin-right: 20px !important;
  }
}

.govuk-\!-margin-bottom-4 {
  margin-bottom: 15px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-margin-bottom-4 {
    margin-bottom: 20px !important;
  }
}

.govuk-\!-margin-left-4 {
  margin-left: 15px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-margin-left-4 {
    margin-left: 20px !important;
  }
}

.govuk-\!-margin-5 {
  margin: 15px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-margin-5 {
    margin: 25px !important;
  }
}

.govuk-\!-margin-top-5 {
  margin-top: 15px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-margin-top-5 {
    margin-top: 25px !important;
  }
}

.govuk-\!-margin-right-5 {
  margin-right: 15px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-margin-right-5 {
    margin-right: 25px !important;
  }
}

.govuk-\!-margin-bottom-5 {
  margin-bottom: 15px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-margin-bottom-5 {
    margin-bottom: 25px !important;
  }
}

.govuk-\!-margin-left-5 {
  margin-left: 15px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-margin-left-5 {
    margin-left: 25px !important;
  }
}

.govuk-\!-margin-6 {
  margin: 20px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-margin-6 {
    margin: 30px !important;
  }
}

.govuk-\!-margin-top-6 {
  margin-top: 20px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-margin-top-6 {
    margin-top: 30px !important;
  }
}

.govuk-\!-margin-right-6 {
  margin-right: 20px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-margin-right-6 {
    margin-right: 30px !important;
  }
}

.govuk-\!-margin-bottom-6 {
  margin-bottom: 20px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-margin-bottom-6 {
    margin-bottom: 30px !important;
  }
}

.govuk-\!-margin-left-6 {
  margin-left: 20px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-margin-left-6 {
    margin-left: 30px !important;
  }
}

.govuk-\!-margin-7 {
  margin: 25px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-margin-7 {
    margin: 40px !important;
  }
}

.govuk-\!-margin-top-7 {
  margin-top: 25px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-margin-top-7 {
    margin-top: 40px !important;
  }
}

.govuk-\!-margin-right-7 {
  margin-right: 25px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-margin-right-7 {
    margin-right: 40px !important;
  }
}

.govuk-\!-margin-bottom-7 {
  margin-bottom: 25px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-margin-bottom-7 {
    margin-bottom: 40px !important;
  }
}

.govuk-\!-margin-left-7 {
  margin-left: 25px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-margin-left-7 {
    margin-left: 40px !important;
  }
}

.govuk-\!-margin-8 {
  margin: 30px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-margin-8 {
    margin: 50px !important;
  }
}

.govuk-\!-margin-top-8 {
  margin-top: 30px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-margin-top-8 {
    margin-top: 50px !important;
  }
}

.govuk-\!-margin-right-8 {
  margin-right: 30px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-margin-right-8 {
    margin-right: 50px !important;
  }
}

.govuk-\!-margin-bottom-8 {
  margin-bottom: 30px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-margin-bottom-8 {
    margin-bottom: 50px !important;
  }
}

.govuk-\!-margin-left-8 {
  margin-left: 30px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-margin-left-8 {
    margin-left: 50px !important;
  }
}

.govuk-\!-margin-9 {
  margin: 40px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-margin-9 {
    margin: 60px !important;
  }
}

.govuk-\!-margin-top-9 {
  margin-top: 40px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-margin-top-9 {
    margin-top: 60px !important;
  }
}

.govuk-\!-margin-right-9 {
  margin-right: 40px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-margin-right-9 {
    margin-right: 60px !important;
  }
}

.govuk-\!-margin-bottom-9 {
  margin-bottom: 40px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-margin-bottom-9 {
    margin-bottom: 60px !important;
  }
}

.govuk-\!-margin-left-9 {
  margin-left: 40px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-margin-left-9 {
    margin-left: 60px !important;
  }
}

.govuk-\!-padding-0 {
  padding: 0 !important;
}

.govuk-\!-padding-top-0 {
  padding-top: 0 !important;
}

.govuk-\!-padding-right-0 {
  padding-right: 0 !important;
}

.govuk-\!-padding-bottom-0 {
  padding-bottom: 0 !important;
}

.govuk-\!-padding-left-0 {
  padding-left: 0 !important;
}

.govuk-\!-padding-1 {
  padding: 5px !important;
}

.govuk-\!-padding-top-1 {
  padding-top: 5px !important;
}

.govuk-\!-padding-right-1 {
  padding-right: 5px !important;
}

.govuk-\!-padding-bottom-1 {
  padding-bottom: 5px !important;
}

.govuk-\!-padding-left-1 {
  padding-left: 5px !important;
}

.govuk-\!-padding-2 {
  padding: 10px !important;
}

.govuk-\!-padding-top-2 {
  padding-top: 10px !important;
}

.govuk-\!-padding-right-2 {
  padding-right: 10px !important;
}

.govuk-\!-padding-bottom-2 {
  padding-bottom: 10px !important;
}

.govuk-\!-padding-left-2 {
  padding-left: 10px !important;
}

.govuk-\!-padding-3 {
  padding: 15px !important;
}

.govuk-\!-padding-top-3 {
  padding-top: 15px !important;
}

.govuk-\!-padding-right-3 {
  padding-right: 15px !important;
}

.govuk-\!-padding-bottom-3 {
  padding-bottom: 15px !important;
}

.govuk-\!-padding-left-3 {
  padding-left: 15px !important;
}

.govuk-\!-padding-4 {
  padding: 15px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-padding-4 {
    padding: 20px !important;
  }
}

.govuk-\!-padding-top-4 {
  padding-top: 15px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-padding-top-4 {
    padding-top: 20px !important;
  }
}

.govuk-\!-padding-right-4 {
  padding-right: 15px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-padding-right-4 {
    padding-right: 20px !important;
  }
}

.govuk-\!-padding-bottom-4 {
  padding-bottom: 15px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-padding-bottom-4 {
    padding-bottom: 20px !important;
  }
}

.govuk-\!-padding-left-4 {
  padding-left: 15px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-padding-left-4 {
    padding-left: 20px !important;
  }
}

.govuk-\!-padding-5 {
  padding: 15px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-padding-5 {
    padding: 25px !important;
  }
}

.govuk-\!-padding-top-5 {
  padding-top: 15px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-padding-top-5 {
    padding-top: 25px !important;
  }
}

.govuk-\!-padding-right-5 {
  padding-right: 15px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-padding-right-5 {
    padding-right: 25px !important;
  }
}

.govuk-\!-padding-bottom-5 {
  padding-bottom: 15px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-padding-bottom-5 {
    padding-bottom: 25px !important;
  }
}

.govuk-\!-padding-left-5 {
  padding-left: 15px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-padding-left-5 {
    padding-left: 25px !important;
  }
}

.govuk-\!-padding-6 {
  padding: 20px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-padding-6 {
    padding: 30px !important;
  }
}

.govuk-\!-padding-top-6 {
  padding-top: 20px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-padding-top-6 {
    padding-top: 30px !important;
  }
}

.govuk-\!-padding-right-6 {
  padding-right: 20px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-padding-right-6 {
    padding-right: 30px !important;
  }
}

.govuk-\!-padding-bottom-6 {
  padding-bottom: 20px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-padding-bottom-6 {
    padding-bottom: 30px !important;
  }
}

.govuk-\!-padding-left-6 {
  padding-left: 20px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-padding-left-6 {
    padding-left: 30px !important;
  }
}

.govuk-\!-padding-7 {
  padding: 25px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-padding-7 {
    padding: 40px !important;
  }
}

.govuk-\!-padding-top-7 {
  padding-top: 25px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-padding-top-7 {
    padding-top: 40px !important;
  }
}

.govuk-\!-padding-right-7 {
  padding-right: 25px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-padding-right-7 {
    padding-right: 40px !important;
  }
}

.govuk-\!-padding-bottom-7 {
  padding-bottom: 25px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-padding-bottom-7 {
    padding-bottom: 40px !important;
  }
}

.govuk-\!-padding-left-7 {
  padding-left: 25px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-padding-left-7 {
    padding-left: 40px !important;
  }
}

.govuk-\!-padding-8 {
  padding: 30px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-padding-8 {
    padding: 50px !important;
  }
}

.govuk-\!-padding-top-8 {
  padding-top: 30px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-padding-top-8 {
    padding-top: 50px !important;
  }
}

.govuk-\!-padding-right-8 {
  padding-right: 30px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-padding-right-8 {
    padding-right: 50px !important;
  }
}

.govuk-\!-padding-bottom-8 {
  padding-bottom: 30px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-padding-bottom-8 {
    padding-bottom: 50px !important;
  }
}

.govuk-\!-padding-left-8 {
  padding-left: 30px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-padding-left-8 {
    padding-left: 50px !important;
  }
}

.govuk-\!-padding-9 {
  padding: 40px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-padding-9 {
    padding: 60px !important;
  }
}

.govuk-\!-padding-top-9 {
  padding-top: 40px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-padding-top-9 {
    padding-top: 60px !important;
  }
}

.govuk-\!-padding-right-9 {
  padding-right: 40px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-padding-right-9 {
    padding-right: 60px !important;
  }
}

.govuk-\!-padding-bottom-9 {
  padding-bottom: 40px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-padding-bottom-9 {
    padding-bottom: 60px !important;
  }
}

.govuk-\!-padding-left-9 {
  padding-left: 40px !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-padding-left-9 {
    padding-left: 60px !important;
  }
}

.govuk-\!-static-margin-0 {
  margin: 0 !important;
}

.govuk-\!-static-margin-top-0 {
  margin-top: 0 !important;
}

.govuk-\!-static-margin-right-0 {
  margin-right: 0 !important;
}

.govuk-\!-static-margin-bottom-0 {
  margin-bottom: 0 !important;
}

.govuk-\!-static-margin-left-0 {
  margin-left: 0 !important;
}

.govuk-\!-static-margin-1 {
  margin: 5px !important;
}

.govuk-\!-static-margin-top-1 {
  margin-top: 5px !important;
}

.govuk-\!-static-margin-right-1 {
  margin-right: 5px !important;
}

.govuk-\!-static-margin-bottom-1 {
  margin-bottom: 5px !important;
}

.govuk-\!-static-margin-left-1 {
  margin-left: 5px !important;
}

.govuk-\!-static-margin-2 {
  margin: 10px !important;
}

.govuk-\!-static-margin-top-2 {
  margin-top: 10px !important;
}

.govuk-\!-static-margin-right-2 {
  margin-right: 10px !important;
}

.govuk-\!-static-margin-bottom-2 {
  margin-bottom: 10px !important;
}

.govuk-\!-static-margin-left-2 {
  margin-left: 10px !important;
}

.govuk-\!-static-margin-3 {
  margin: 15px !important;
}

.govuk-\!-static-margin-top-3 {
  margin-top: 15px !important;
}

.govuk-\!-static-margin-right-3 {
  margin-right: 15px !important;
}

.govuk-\!-static-margin-bottom-3 {
  margin-bottom: 15px !important;
}

.govuk-\!-static-margin-left-3 {
  margin-left: 15px !important;
}

.govuk-\!-static-margin-4 {
  margin: 20px !important;
}

.govuk-\!-static-margin-top-4 {
  margin-top: 20px !important;
}

.govuk-\!-static-margin-right-4 {
  margin-right: 20px !important;
}

.govuk-\!-static-margin-bottom-4 {
  margin-bottom: 20px !important;
}

.govuk-\!-static-margin-left-4 {
  margin-left: 20px !important;
}

.govuk-\!-static-margin-5 {
  margin: 25px !important;
}

.govuk-\!-static-margin-top-5 {
  margin-top: 25px !important;
}

.govuk-\!-static-margin-right-5 {
  margin-right: 25px !important;
}

.govuk-\!-static-margin-bottom-5 {
  margin-bottom: 25px !important;
}

.govuk-\!-static-margin-left-5 {
  margin-left: 25px !important;
}

.govuk-\!-static-margin-6 {
  margin: 30px !important;
}

.govuk-\!-static-margin-top-6 {
  margin-top: 30px !important;
}

.govuk-\!-static-margin-right-6 {
  margin-right: 30px !important;
}

.govuk-\!-static-margin-bottom-6 {
  margin-bottom: 30px !important;
}

.govuk-\!-static-margin-left-6 {
  margin-left: 30px !important;
}

.govuk-\!-static-margin-7 {
  margin: 40px !important;
}

.govuk-\!-static-margin-top-7 {
  margin-top: 40px !important;
}

.govuk-\!-static-margin-right-7 {
  margin-right: 40px !important;
}

.govuk-\!-static-margin-bottom-7 {
  margin-bottom: 40px !important;
}

.govuk-\!-static-margin-left-7 {
  margin-left: 40px !important;
}

.govuk-\!-static-margin-8 {
  margin: 50px !important;
}

.govuk-\!-static-margin-top-8 {
  margin-top: 50px !important;
}

.govuk-\!-static-margin-right-8 {
  margin-right: 50px !important;
}

.govuk-\!-static-margin-bottom-8 {
  margin-bottom: 50px !important;
}

.govuk-\!-static-margin-left-8 {
  margin-left: 50px !important;
}

.govuk-\!-static-margin-9 {
  margin: 60px !important;
}

.govuk-\!-static-margin-top-9 {
  margin-top: 60px !important;
}

.govuk-\!-static-margin-right-9 {
  margin-right: 60px !important;
}

.govuk-\!-static-margin-bottom-9 {
  margin-bottom: 60px !important;
}

.govuk-\!-static-margin-left-9 {
  margin-left: 60px !important;
}

.govuk-\!-static-padding-0 {
  padding: 0 !important;
}

.govuk-\!-static-padding-top-0 {
  padding-top: 0 !important;
}

.govuk-\!-static-padding-right-0 {
  padding-right: 0 !important;
}

.govuk-\!-static-padding-bottom-0 {
  padding-bottom: 0 !important;
}

.govuk-\!-static-padding-left-0 {
  padding-left: 0 !important;
}

.govuk-\!-static-padding-1 {
  padding: 5px !important;
}

.govuk-\!-static-padding-top-1 {
  padding-top: 5px !important;
}

.govuk-\!-static-padding-right-1 {
  padding-right: 5px !important;
}

.govuk-\!-static-padding-bottom-1 {
  padding-bottom: 5px !important;
}

.govuk-\!-static-padding-left-1 {
  padding-left: 5px !important;
}

.govuk-\!-static-padding-2 {
  padding: 10px !important;
}

.govuk-\!-static-padding-top-2 {
  padding-top: 10px !important;
}

.govuk-\!-static-padding-right-2 {
  padding-right: 10px !important;
}

.govuk-\!-static-padding-bottom-2 {
  padding-bottom: 10px !important;
}

.govuk-\!-static-padding-left-2 {
  padding-left: 10px !important;
}

.govuk-\!-static-padding-3 {
  padding: 15px !important;
}

.govuk-\!-static-padding-top-3 {
  padding-top: 15px !important;
}

.govuk-\!-static-padding-right-3 {
  padding-right: 15px !important;
}

.govuk-\!-static-padding-bottom-3 {
  padding-bottom: 15px !important;
}

.govuk-\!-static-padding-left-3 {
  padding-left: 15px !important;
}

.govuk-\!-static-padding-4 {
  padding: 20px !important;
}

.govuk-\!-static-padding-top-4 {
  padding-top: 20px !important;
}

.govuk-\!-static-padding-right-4 {
  padding-right: 20px !important;
}

.govuk-\!-static-padding-bottom-4 {
  padding-bottom: 20px !important;
}

.govuk-\!-static-padding-left-4 {
  padding-left: 20px !important;
}

.govuk-\!-static-padding-5 {
  padding: 25px !important;
}

.govuk-\!-static-padding-top-5 {
  padding-top: 25px !important;
}

.govuk-\!-static-padding-right-5 {
  padding-right: 25px !important;
}

.govuk-\!-static-padding-bottom-5 {
  padding-bottom: 25px !important;
}

.govuk-\!-static-padding-left-5 {
  padding-left: 25px !important;
}

.govuk-\!-static-padding-6 {
  padding: 30px !important;
}

.govuk-\!-static-padding-top-6 {
  padding-top: 30px !important;
}

.govuk-\!-static-padding-right-6 {
  padding-right: 30px !important;
}

.govuk-\!-static-padding-bottom-6 {
  padding-bottom: 30px !important;
}

.govuk-\!-static-padding-left-6 {
  padding-left: 30px !important;
}

.govuk-\!-static-padding-7 {
  padding: 40px !important;
}

.govuk-\!-static-padding-top-7 {
  padding-top: 40px !important;
}

.govuk-\!-static-padding-right-7 {
  padding-right: 40px !important;
}

.govuk-\!-static-padding-bottom-7 {
  padding-bottom: 40px !important;
}

.govuk-\!-static-padding-left-7 {
  padding-left: 40px !important;
}

.govuk-\!-static-padding-8 {
  padding: 50px !important;
}

.govuk-\!-static-padding-top-8 {
  padding-top: 50px !important;
}

.govuk-\!-static-padding-right-8 {
  padding-right: 50px !important;
}

.govuk-\!-static-padding-bottom-8 {
  padding-bottom: 50px !important;
}

.govuk-\!-static-padding-left-8 {
  padding-left: 50px !important;
}

.govuk-\!-static-padding-9 {
  padding: 60px !important;
}

.govuk-\!-static-padding-top-9 {
  padding-top: 60px !important;
}

.govuk-\!-static-padding-right-9 {
  padding-right: 60px !important;
}

.govuk-\!-static-padding-bottom-9 {
  padding-bottom: 60px !important;
}

.govuk-\!-static-padding-left-9 {
  padding-left: 60px !important;
}


.govuk-\!-text-align-left {
  text-align: left !important;
}

.govuk-\!-text-align-centre {
  text-align: center !important;
}

.govuk-\!-text-align-right {
  text-align: right !important;
}


.govuk-\!-font-size-80 {
  font-size: 3.3125rem !important;
  line-height: 1.0377358491 !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-font-size-80 {
    font-size: 5rem !important;
    line-height: 1 !important;
  }
}
@media print {
  .govuk-\!-font-size-80 {
    font-size: 53pt !important;
    line-height: 1.1 !important;
  }
}

.govuk-\!-font-size-48 {
  font-size: 2rem !important;
  line-height: 1.09375 !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-font-size-48 {
    font-size: 3rem !important;
    line-height: 1.0416666667 !important;
  }
}
@media print {
  .govuk-\!-font-size-48 {
    font-size: 32pt !important;
    line-height: 1.15 !important;
  }
}

.govuk-\!-font-size-36 {
  font-size: 1.6875rem !important;
  line-height: 1.1111111111 !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-font-size-36 {
    font-size: 2.25rem !important;
    line-height: 1.1111111111 !important;
  }
}
@media print {
  .govuk-\!-font-size-36 {
    font-size: 24pt !important;
    line-height: 1.05 !important;
  }
}

.govuk-\!-font-size-27 {
  font-size: 1.3125rem !important;
  line-height: 1.1904761905 !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-font-size-27 {
    font-size: 1.6875rem !important;
    line-height: 1.1111111111 !important;
  }
}
@media print {
  .govuk-\!-font-size-27 {
    font-size: 18pt !important;
    line-height: 1.15 !important;
  }
}

.govuk-\!-font-size-24 {
  font-size: 1.3125rem !important;
  line-height: 1.1904761905 !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-font-size-24 {
    font-size: 1.5rem !important;
    line-height: 1.25 !important;
  }
}
@media print {
  .govuk-\!-font-size-24 {
    font-size: 18pt !important;
    line-height: 1.15 !important;
  }
}

.govuk-\!-font-size-19 {
  font-size: 1.1875rem !important;
  line-height: 1.3157894737 !important;
}
@media print {
  .govuk-\!-font-size-19 {
    font-size: 14pt !important;
    line-height: 1.15 !important;
  }
}

.govuk-\!-font-size-16 {
  font-size: 1rem !important;
  line-height: 1.25 !important;
}
@media print {
  .govuk-\!-font-size-16 {
    font-size: 14pt !important;
    line-height: 1.2 !important;
  }
}

.govuk-\!-font-size-14 {
  font-size: 0.875rem !important;
  line-height: 1.4285714286 !important;
}
@media print {
  .govuk-\!-font-size-14 {
    font-size: 12pt !important;
    line-height: 1.2 !important;
  }
}

.govuk-\!-font-weight-regular {
  font-weight: 400 !important;
}

.govuk-\!-font-weight-bold {
  font-weight: 700 !important;
}

.govuk-\!-font-tabular-numbers {
  font-variant-numeric: tabular-nums !important;
}

.govuk-\!-text-break-word {
  word-wrap: break-word !important;
  overflow-wrap: break-word !important;
}


.govuk-\!-width-full {
  width: 100% !important;
}

.govuk-\!-width-three-quarters {
  width: 100% !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-width-three-quarters {
    width: 75% !important;
  }
}

.govuk-\!-width-two-thirds {
  width: 100% !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-width-two-thirds {
    width: 66.66% !important;
  }
}

.govuk-\!-width-one-half {
  width: 100% !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-width-one-half {
    width: 50% !important;
  }
}

.govuk-\!-width-one-third {
  width: 100% !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-width-one-third {
    width: 33.33% !important;
  }
}

.govuk-\!-width-one-quarter {
  width: 100% !important;
}
@media (min-width: 40.0625em) {
  .govuk-\!-width-one-quarter {
    width: 25% !important;
  }
}




@media (min-width: 40.0625em) {
  .els-mobile-only {
    display: none;
  }
}

@media (max-width: 40.0525em) {
  .els-non-mobile-only {
    display: none;
  }
}

.govuk-input--read-only {
  -webkit-box-shadow: none;
          box-shadow: none;
  outline: none;
  border: none;
  padding-left: 0;
}
.govuk-input--read-only:disabled {
  background: #fff;
  color: #0b0c0c;
}

.govuk-input--width-7 {
  max-width: 14.4ex;
}

.govuk-input--width-6 {
  max-width: 12.6ex;
}

.arrow-direction-label-icon {
  color: #00A64F;
  vertical-align: -4px;
  margin-left: 5px;
}
.arrow-direction-label-icon--lamps-packaging {
  color: #009640;
}

.fds-subnav {
  margin-bottom: 0;
  padding: 0 15px 0 0;
}
@media (min-width: 40.0625em) {
  .fds-subnav {
    margin-bottom: 100px;
    font-family: "GDS Transport", arial, sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-weight: 400;
    font-size: 1rem;
    line-height: 1.25;
  }
}
@media print and (min-width: 40.0625em) {
  .fds-subnav {
    font-family: sans-serif;
  }
}
@media print and (min-width: 40.0625em) {
  .fds-subnav {
    font-size: 14pt;
    line-height: 1.2;
  }
}
.fds-subnav--sticky {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
}
.fds-subnav__section {
  margin: 0 0 20px;
  padding: 0;
  list-style-type: none;
}
.fds-subnav__section-item {
  margin-bottom: 5px;
  padding-top: 5px;
  padding-bottom: 5px;
}
.fds-subnav__section-item--current {
  margin-left: -14px;
  padding-left: 10px;
  border-left: 4px solid #1d70b8;
  background-color: #ffffff;
}
.fds-subnav__section-item--current .fds-subnav__link {
  font-weight: bold;
}
.fds-subnav__section--nested {
  margin-top: 10px;
  margin-bottom: 0;
  padding-left: 20px;
}
.fds-subnav__section--nested .fds-subnav__section-item::before {
  content: "—";
  margin-left: -20px;
  color: #505a5f;
}
.fds-subnav__section--nested .fds-subnav__link {
  padding-left: 0;
  font-weight: normal;
}
.fds-subnav__link {
  padding: 2px 0;
  text-decoration: none;
}
.fds-subnav__link:not(:focus):hover {
  color: #1d70b8;
  text-decoration: underline;
}
.fds-subnav__theme {
  margin: 0;
  padding: 10px 15px 10px 0;
  color: #505a5f;
  font-family: "GDS Transport", arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 1.3157894737;
}
@media print {
  .fds-subnav__theme {
    font-family: sans-serif;
  }
}
@media print {
  .fds-subnav__theme {
    font-size: 14pt;
    line-height: 1.15;
  }
}

.els-code, .els-api-schema-table code {
  font-family: monospace;
  font-size: 1em;
  color: #d13118;
  background: #f3f2f1;
}
.els-code--inline, .els-api-schema-table code {
  padding: 0 5px;
}
.els-code--block {
  display: block;
  white-space: pre;
  padding: 15px;
  overflow-x: scroll;
}

.els-api-schema-table {
  table-layout: fixed;
}
.els-api-schema-table__property-header {
  width: 30%;
}
.els-api-schema-table__property-cell {
  word-break: break-word;
}
.els-api-schema-table__description-header {
  width: 58%;
}
.els-api-schema-table__type-header {
  width: 12%;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9tYWluL3Jlc291cmNlcy9zY3NzL21haW4uY3NzIiwic3JjL21haW4vcmVzb3VyY2VzL3B1YmxpYy9hc3NldHMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9jb3JlL19nb3Z1ay1mcm9udGVuZC1wcm9wZXJ0aWVzLnNjc3MiLCJzcmMvbWFpbi9yZXNvdXJjZXMvcHVibGljL2Fzc2V0cy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2NvcmUvX2xpbmtzLnNjc3MiLCJzcmMvbWFpbi9yZXNvdXJjZXMvcHVibGljL2Fzc2V0cy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2hlbHBlcnMvX3R5cG9ncmFwaHkuc2NzcyIsInNyYy9tYWluL3Jlc291cmNlcy9wdWJsaWMvYXNzZXRzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvc2V0dGluZ3MvX3R5cG9ncmFwaHktZm9udC5zY3NzIiwic3JjL21haW4vcmVzb3VyY2VzL3B1YmxpYy9hc3NldHMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9oZWxwZXJzL19saW5rcy5zY3NzIiwic3JjL21haW4vcmVzb3VyY2VzL3B1YmxpYy9hc3NldHMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9zZXR0aW5ncy9fbGlua3Muc2NzcyIsInNyYy9tYWluL3Jlc291cmNlcy9wdWJsaWMvYXNzZXRzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvaGVscGVycy9fZm9udC1mYWNlcy5zY3NzIiwic3JjL21haW4vcmVzb3VyY2VzL3B1YmxpYy9hc3NldHMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay92ZW5kb3IvX3Nhc3MtbXEuc2NzcyIsInNyYy9tYWluL3Jlc291cmNlcy9wdWJsaWMvYXNzZXRzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvaGVscGVycy9fZm9jdXNlZC5zY3NzIiwic3JjL21haW4vcmVzb3VyY2VzL3B1YmxpYy9hc3NldHMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9zZXR0aW5ncy9fY29sb3Vycy1hcHBsaWVkLnNjc3MiLCJzcmMvbWFpbi9yZXNvdXJjZXMvcHVibGljL2Fzc2V0cy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2NvcmUvX2xpc3RzLnNjc3MiLCJzcmMvbWFpbi9yZXNvdXJjZXMvcHVibGljL2Fzc2V0cy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2hlbHBlcnMvX3NwYWNpbmcuc2NzcyIsInNyYy9tYWluL3Jlc291cmNlcy9wdWJsaWMvYXNzZXRzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvY29yZS9fdHlwb2dyYXBoeS5zY3NzIiwic3JjL21haW4vcmVzb3VyY2VzL3B1YmxpYy9hc3NldHMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9jb3JlL19zZWN0aW9uLWJyZWFrLnNjc3MiLCJzcmMvbWFpbi9yZXNvdXJjZXMvcHVibGljL2Fzc2V0cy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL29iamVjdHMvX2J1dHRvbi1ncm91cC5zY3NzIiwic3JjL21haW4vcmVzb3VyY2VzL3B1YmxpYy9hc3NldHMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9vYmplY3RzL19mb3JtLWdyb3VwLnNjc3MiLCJzcmMvbWFpbi9yZXNvdXJjZXMvcHVibGljL2Fzc2V0cy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2hlbHBlcnMvX2NsZWFyZml4LnNjc3MiLCJzcmMvbWFpbi9yZXNvdXJjZXMvcHVibGljL2Fzc2V0cy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL29iamVjdHMvX2dyaWQuc2NzcyIsInNyYy9tYWluL3Jlc291cmNlcy9wdWJsaWMvYXNzZXRzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvaGVscGVycy9fZ3JpZC5zY3NzIiwic3JjL21haW4vcmVzb3VyY2VzL3B1YmxpYy9hc3NldHMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9vYmplY3RzL19tYWluLXdyYXBwZXIuc2NzcyIsInNyYy9tYWluL3Jlc291cmNlcy9wdWJsaWMvYXNzZXRzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvb2JqZWN0cy9fdGVtcGxhdGUuc2NzcyIsInNyYy9tYWluL3Jlc291cmNlcy9wdWJsaWMvYXNzZXRzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvdG9vbHMvX3JlYnJhbmQuc2NzcyIsInNyYy9tYWluL3Jlc291cmNlcy9wdWJsaWMvYXNzZXRzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvb2JqZWN0cy9fd2lkdGgtY29udGFpbmVyLnNjc3MiLCJzcmMvbWFpbi9yZXNvdXJjZXMvcHVibGljL2Fzc2V0cy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL3NldHRpbmdzL19tZWFzdXJlbWVudHMuc2NzcyIsInNyYy9tYWluL3Jlc291cmNlcy9wdWJsaWMvYXNzZXRzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvY29tcG9uZW50cy9hY2NvcmRpb24vX2luZGV4LnNjc3MiLCJzcmMvbWFpbi9yZXNvdXJjZXMvcHVibGljL2Fzc2V0cy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2NvbXBvbmVudHMvYmFjay1saW5rL19pbmRleC5zY3NzIiwic3JjL21haW4vcmVzb3VyY2VzL3B1YmxpYy9hc3NldHMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9jb21wb25lbnRzL2JyZWFkY3J1bWJzL19pbmRleC5zY3NzIiwic3JjL21haW4vcmVzb3VyY2VzL3B1YmxpYy9hc3NldHMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9jb21wb25lbnRzL2J1dHRvbi9faW5kZXguc2NzcyIsInNyYy9tYWluL3Jlc291cmNlcy9wdWJsaWMvYXNzZXRzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvY29tcG9uZW50cy9lcnJvci1tZXNzYWdlL19pbmRleC5zY3NzIiwic3JjL21haW4vcmVzb3VyY2VzL3B1YmxpYy9hc3NldHMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9jb21wb25lbnRzL2hpbnQvX2luZGV4LnNjc3MiLCJzcmMvbWFpbi9yZXNvdXJjZXMvcHVibGljL2Fzc2V0cy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2NvbXBvbmVudHMvbGFiZWwvX2luZGV4LnNjc3MiLCJzcmMvbWFpbi9yZXNvdXJjZXMvcHVibGljL2Fzc2V0cy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2NvbXBvbmVudHMvdGV4dGFyZWEvX2luZGV4LnNjc3MiLCJzcmMvbWFpbi9yZXNvdXJjZXMvcHVibGljL2Fzc2V0cy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2NvbXBvbmVudHMvY2hhcmFjdGVyLWNvdW50L19pbmRleC5zY3NzIiwic3JjL21haW4vcmVzb3VyY2VzL3B1YmxpYy9hc3NldHMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9jb21wb25lbnRzL2ZpZWxkc2V0L19pbmRleC5zY3NzIiwic3JjL21haW4vcmVzb3VyY2VzL3B1YmxpYy9hc3NldHMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9jb21wb25lbnRzL2NoZWNrYm94ZXMvX2luZGV4LnNjc3MiLCJzcmMvbWFpbi9yZXNvdXJjZXMvcHVibGljL2Fzc2V0cy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2NvbXBvbmVudHMvY29va2llLWJhbm5lci9faW5kZXguc2NzcyIsInNyYy9tYWluL3Jlc291cmNlcy9wdWJsaWMvYXNzZXRzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvY29tcG9uZW50cy9pbnB1dC9faW5kZXguc2NzcyIsInNyYy9tYWluL3Jlc291cmNlcy9wdWJsaWMvYXNzZXRzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvY29tcG9uZW50cy9kYXRlLWlucHV0L19pbmRleC5zY3NzIiwic3JjL21haW4vcmVzb3VyY2VzL3B1YmxpYy9hc3NldHMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9jb21wb25lbnRzL2RldGFpbHMvX2luZGV4LnNjc3MiLCJzcmMvbWFpbi9yZXNvdXJjZXMvcHVibGljL2Fzc2V0cy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2hlbHBlcnMvX3NoYXBlLWFycm93LnNjc3MiLCJzcmMvbWFpbi9yZXNvdXJjZXMvcHVibGljL2Fzc2V0cy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2NvbXBvbmVudHMvZXJyb3Itc3VtbWFyeS9faW5kZXguc2NzcyIsInNyYy9tYWluL3Jlc291cmNlcy9wdWJsaWMvYXNzZXRzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvY29tcG9uZW50cy9leGl0LXRoaXMtcGFnZS9faW5kZXguc2NzcyIsInNyYy9tYWluL3Jlc291cmNlcy9wdWJsaWMvYXNzZXRzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvY29tcG9uZW50cy9maWxlLXVwbG9hZC9faW5kZXguc2NzcyIsInNyYy9tYWluL3Jlc291cmNlcy9wdWJsaWMvYXNzZXRzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvY29tcG9uZW50cy9mb290ZXIvX2luZGV4LnNjc3MiLCJzcmMvbWFpbi9yZXNvdXJjZXMvcHVibGljL2Fzc2V0cy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2NvbXBvbmVudHMvaGVhZGVyL19pbmRleC5zY3NzIiwic3JjL21haW4vcmVzb3VyY2VzL3B1YmxpYy9hc3NldHMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9jb21wb25lbnRzL2luc2V0LXRleHQvX2luZGV4LnNjc3MiLCJzcmMvbWFpbi9yZXNvdXJjZXMvcHVibGljL2Fzc2V0cy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2NvbXBvbmVudHMvbm90aWZpY2F0aW9uLWJhbm5lci9faW5kZXguc2NzcyIsInNyYy9tYWluL3Jlc291cmNlcy9wdWJsaWMvYXNzZXRzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvY29tcG9uZW50cy9wYWdpbmF0aW9uL19pbmRleC5zY3NzIiwic3JjL21haW4vcmVzb3VyY2VzL3B1YmxpYy9hc3NldHMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9jb21wb25lbnRzL3BhbmVsL19pbmRleC5zY3NzIiwic3JjL21haW4vcmVzb3VyY2VzL3B1YmxpYy9hc3NldHMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9jb21wb25lbnRzL3Bhc3N3b3JkLWlucHV0L19pbmRleC5zY3NzIiwic3JjL21haW4vcmVzb3VyY2VzL3B1YmxpYy9hc3NldHMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9jb21wb25lbnRzL3RhZy9faW5kZXguc2NzcyIsInNyYy9tYWluL3Jlc291cmNlcy9wdWJsaWMvYXNzZXRzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvY29tcG9uZW50cy9waGFzZS1iYW5uZXIvX2luZGV4LnNjc3MiLCJzcmMvbWFpbi9yZXNvdXJjZXMvcHVibGljL2Fzc2V0cy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2NvbXBvbmVudHMvcmFkaW9zL19pbmRleC5zY3NzIiwic3JjL21haW4vcmVzb3VyY2VzL3B1YmxpYy9hc3NldHMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9jb21wb25lbnRzL3NlbGVjdC9faW5kZXguc2NzcyIsInNyYy9tYWluL3Jlc291cmNlcy9wdWJsaWMvYXNzZXRzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvY29tcG9uZW50cy9zZXJ2aWNlLW5hdmlnYXRpb24vX2luZGV4LnNjc3MiLCJzcmMvbWFpbi9yZXNvdXJjZXMvcHVibGljL2Fzc2V0cy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2NvbXBvbmVudHMvc2tpcC1saW5rL19pbmRleC5zY3NzIiwic3JjL21haW4vcmVzb3VyY2VzL3B1YmxpYy9hc3NldHMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9oZWxwZXJzL192aXN1YWxseS1oaWRkZW4uc2NzcyIsInNyYy9tYWluL3Jlc291cmNlcy9wdWJsaWMvYXNzZXRzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvY29tcG9uZW50cy9zdW1tYXJ5LWxpc3QvX2luZGV4LnNjc3MiLCJzcmMvbWFpbi9yZXNvdXJjZXMvcHVibGljL2Fzc2V0cy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2NvbXBvbmVudHMvdGFibGUvX2luZGV4LnNjc3MiLCJzcmMvbWFpbi9yZXNvdXJjZXMvcHVibGljL2Fzc2V0cy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2NvbXBvbmVudHMvdGFicy9faW5kZXguc2NzcyIsInNyYy9tYWluL3Jlc291cmNlcy9wdWJsaWMvYXNzZXRzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvY29tcG9uZW50cy90YXNrLWxpc3QvX2luZGV4LnNjc3MiLCJzcmMvbWFpbi9yZXNvdXJjZXMvcHVibGljL2Fzc2V0cy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2NvbXBvbmVudHMvd2FybmluZy10ZXh0L19pbmRleC5zY3NzIiwic3JjL21haW4vcmVzb3VyY2VzL3B1YmxpYy9hc3NldHMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay91dGlsaXRpZXMvX3Zpc3VhbGx5LWhpZGRlbi5zY3NzIiwic3JjL21haW4vcmVzb3VyY2VzL3B1YmxpYy9hc3NldHMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9vdmVycmlkZXMvX2Rpc3BsYXkuc2NzcyIsInNyYy9tYWluL3Jlc291cmNlcy9wdWJsaWMvYXNzZXRzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvb3ZlcnJpZGVzL19zcGFjaW5nLnNjc3MiLCJzcmMvbWFpbi9yZXNvdXJjZXMvcHVibGljL2Fzc2V0cy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL292ZXJyaWRlcy9fdGV4dC1hbGlnbi5zY3NzIiwic3JjL21haW4vcmVzb3VyY2VzL3B1YmxpYy9hc3NldHMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9vdmVycmlkZXMvX3R5cG9ncmFwaHkuc2NzcyIsInNyYy9tYWluL3Jlc291cmNlcy9wdWJsaWMvYXNzZXRzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvb3ZlcnJpZGVzL193aWR0aC5zY3NzIiwic3JjL21haW4vcmVzb3VyY2VzL3Njc3MvaGVscGVycy9fdHlwb2dyYXBoeS5zY3NzIiwic3JjL21haW4vcmVzb3VyY2VzL3Njc3MvY29tcG9uZW50cy9faW5wdXQuc2NzcyIsInNyYy9tYWluL3Jlc291cmNlcy9zY3NzL2NvbXBvbmVudHMvX2Fycm93LWljb24uc2NzcyIsInNyYy9tYWluL3Jlc291cmNlcy9zY3NzL2NvbXBvbmVudHMvX3N1Yi1uYXZpZ2F0aW9uLnNjc3MiLCJzcmMvbWFpbi9yZXNvdXJjZXMvc2Nzcy9jb21wb25lbnRzL19jb2RlLnNjc3MiLCJzcmMvbWFpbi9yZXNvdXJjZXMvc2Nzcy9jb21wb25lbnRzL19hcGktc2NoZW1hLXRhYmxlLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsZ0JBQWdCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUNBaEI7RUFHRSxrQ0FBQTtFQUlFLGdDQUFBO0VBR0Esa0VBQUE7RUFIQSxxQ0FBQTtFQUdBLGtFQUFBO0VBSEEsc0NBQUE7RUFHQSxvRUFBQTtBRDhDSjs7O0FFdkRFO0VDY0EsK0NDRmtCO0VER2xCLG1DQUFBO0VBQ0Esa0NBQUE7RUVhQSwwQkFBQTtFQUdFLDZDQ2hCNkI7RURvQjdCLCtCQ1AwQjtBTm9DOUI7QU9sRE0sbUxBQUEsRUFBQSxpREFBQTtBQUNBO0VBQ0UsNEJBQUE7RUFDQSxrQkFBQTtFQUNBLG1CQUFBO0VBQ0EsbU1BQ0U7RUFFRixzQkFBQTtBUGtEUjtBTy9DTTtFQUNFLDRCQUFBO0VBQ0Esa0JBQUE7RUFDQSxpQkFBQTtFQUNBLGlNQUNFO0VBRUYsc0JBQUE7QVArQ1I7QVFtSlE7RU5uT047SUN5QkUsdUJDSHNCO0VKOER4QjtBQUNGO0FLeEVFO0VBcUNFLG9EQ0xtQztFRFFuQyxzQ0FBQTtFQUNRLDhCQUFBO0VBQ1Isa0NBQUE7RUFDUSwwQkFBQTtBTG9DWjtBSzNFRTtFSUZBLDhCQUFBO0VBQ0EsY0NrRndCO0VEakZ4Qix5QkN1RW1CO0VEdEVuQixpREFDRTtVQURGLHlDQUNFO0VBSUYscUJBQUE7QVQ0RUY7QVNoRUU7RUpsQkE7SUltQkUsbUNBQUE7SUFDUSwyQkFBQTtFVG1FVjtBQUNGO0FLN0JFO0VBQ0UsY0s2RWdCO0FWOUNwQjtBSzVCRTtFQUNFLGNLZ0Z3QjtBVmxENUI7QUszQkU7RUFDRSxjS21Gc0I7QVZ0RDFCO0FLMUJFO0VBQ0UsY0tzRnVCO0FWMUQzQjtBS3ZCRTtFQUNFLGNLR3NCO0FWc0IxQjtBUTJHUTtFSCtIRjtJQUNFLDRCQUFBO0lBQ0EsY0FBQTtJQUtBLHFCQUFBO0VMM09OO0FBQ0Y7O0FLK0RFO0VBRUUsY0tsSDBCO0FWcUQ5QjtBS2dFRTtFQUVFLGNLaExnQjtBVmlIcEI7QUtvRUU7RUFDRSxjS3pHc0I7QVZ1QzFCOztBS3VGRTtFRjVMQSxjT2ZrQjtBVndIcEI7QVFzRlE7RUhITjtJRnpMRSxjTzhCc0I7RVY0RXhCO0FBQ0Y7QUtxRkU7RUFFSSw2QkFBQTtBTHBGTjtBS3dGRTtFRnpNQSxjT2ZrQjtBVm1JcEI7QVEyRVE7RUhVTjtJRnRNRSxjTzhCc0I7RVZ1RnhCO0FBQ0Y7O0FLdUdFO0VBRUUsY0FBQTtBTHJHSjtBSzBHRTtFQUVFLGdDQUFBO0FMekdKO0FLNEdFO0VBQ0UsY0svS3NCO0FWcUUxQjs7QUt5S0U7RUFDRSxxQkFBQTtBTHRLSjs7QUsrSEU7RUFDRSxjS2pKZ0I7QVZxQnBCO0FLK0hFO0VBQ0UsY0tySmdCO0FWd0JwQjtBS2dJRTtFQUNFLGNLM0lzQjtBVmExQjtBS2lJRTtFQUNFLGNLeEl1QjtBVlMzQjtBS29JRTtFQUNFLGNLM05zQjtBVnlGMUI7O0FFeEpFO0VHcVZBLHFCQUFBO0VBR0EsY0FBQTtFQUdBLHFCQUFBO0FMN0xGO0FLK0xFO0VJN1VBLDhCQUFBO0VBQ0Esd0RBQ0U7VUFERixnREFDRTtBVGdKSjs7O0FXck1FO0VSY0EsK0NDRmtCO0VER2xCLG1DQUFBO0VBQ0Esa0NBQUE7RUFrQ0EsZ0JBQUE7RUE0TEksb0JBSmM7RUFLZCx5QkFKdUI7RUF2TTNCLGNPZmtCO0VDbEJoQixhQUFBO0VDc0dJLG1CQUFBO0VEcEdKLGVBQUE7RUFDQSxxQkFBQTtBWDhNSjtBUWVRO0VHbk9OO0lSeUJFLHVCQ0hzQjtFSmtNeEI7QUFDRjtBUVVRO0VHbk9OO0lSa1BNLGVBVFE7SUFVUixpQkFScUI7RUhiM0I7QUFDRjtBUUlRO0VHbk9OO0lSdUNFLGNPOEJzQjtFVjhKeEI7QUFDRjtBUURRO0VHbk9OO0lDZ0hRLG1CQUFBO0Vad0hSO0FBQ0Y7QVdoT0k7RUFDRSxnQkFBQTtBWGtPTjs7QVc5TkU7RUFJRSxrQkFBQTtBWDhOSjs7QVd2TkU7RUFDRSxrQkFBQTtFQUNBLHFCQUFBO0FYME5KOztBV3ZORTtFQUNFLGtCQUFBO0VBQ0Esd0JBQUE7QVgwTko7O0FXdk5FOztFQUVFLGdCQUFBO0FYME5KO0FRNUJRO0VHaE1OOztJQUtJLGtCQUFBO0VYNE5KO0FBQ0Y7O0FXek5FO0VBQ0UsbUJBQUE7QVg0Tko7QVF0Q1E7RUd2TE47SUFJSSxtQkFBQTtFWDZOSjtBQUNGOzs7QWE1UUU7RVZrQ0EsY09ma0I7RVBQbEIsK0NDRmtCO0VER2xCLG1DQUFBO0VBQ0Esa0NBQUE7RUE0Q0EsZ0JBQUE7RUFrTEksZUFKYztFQUtkLG9CQUp1QjtFVXJPekIsY0FBQTtFQUVBLGFBQUE7RURpR0ksbUJBQUE7QVptTFI7QVF6RFE7RUtqT047SVZxQ0UsY084QnNCO0VWMk54QjtBQUNGO0FROURRO0VLak9OO0lWdUJFLHVCQ0hzQjtFSitReEI7QUFDRjtBUW5FUTtFS2pPTjtJVnFQTSxlQWJZO0lBY1oseUJBYnFCO0VIZ0UzQjtBQUNGO0FRekVRO0VLak9OO0lWZ1BNLGVBVFE7SUFVUixpQkFScUI7RUhzRTNCO0FBQ0Y7QVEvRVE7RUtqT047SUQ4R1EsbUJBQUE7RVpzTVI7QUFDRjs7QWF2U0U7RVZvQkEsY09ma0I7RVBQbEIsK0NDRmtCO0VER2xCLG1DQUFBO0VBQ0Esa0NBQUE7RUE0Q0EsZ0JBQUE7RUFrTEksb0JBSmM7RUFLZCx5QkFKdUI7RVV2TnpCLGNBQUE7RUFFQSxhQUFBO0VEbUZJLG1CQUFBO0FaMk5SO0FRakdRO0VLbk5OO0lWdUJFLGNPOEJzQjtFVm1ReEI7QUFDRjtBUXRHUTtFS25OTjtJVlNFLHVCQ0hzQjtFSnVUeEI7QUFDRjtBUTNHUTtFS25OTjtJVnVPTSxrQkFiWTtJQWNaLHlCQWJxQjtFSHdHM0I7QUFDRjtBUWpIUTtFS25OTjtJVmtPTSxlQVRRO0lBVVIsaUJBUnFCO0VIOEczQjtBQUNGO0FRdkhRO0VLbk5OO0lEZ0dRLG1CQUFBO0VaOE9SO0FBQ0Y7O0FhalVFO0VWTUEsY09ma0I7RVBQbEIsK0NDRmtCO0VER2xCLG1DQUFBO0VBQ0Esa0NBQUE7RUE0Q0EsZ0JBQUE7RUFrTEksb0JBSmM7RUFLZCx5QkFKdUI7RVV6TXpCLGNBQUE7RUFFQSxhQUFBO0VEcUVJLG1CQUFBO0FabVFSO0FReklRO0VLck1OO0lWU0UsY084QnNCO0VWMlN4QjtBQUNGO0FROUlRO0VLck1OO0lWTEUsdUJDSHNCO0VKK1Z4QjtBQUNGO0FRbkpRO0VLck1OO0lWeU5NLGlCQWJZO0lBY1osaUJBYnFCO0VIZ0ozQjtBQUNGO0FRekpRO0VLck1OO0lWb05NLGVBVFE7SUFVUixpQkFScUI7RUhzSjNCO0FBQ0Y7QVEvSlE7RUtyTU47SURrRlEsbUJBQUE7RVpzUlI7QUFDRjs7QWEzVkU7RVZSQSxjT2ZrQjtFUFBsQiwrQ0NGa0I7RURHbEIsbUNBQUE7RUFDQSxrQ0FBQTtFQTRDQSxnQkFBQTtFQWtMSSxvQkFKYztFQUtkLHlCQUp1QjtFVTNMekIsY0FBQTtFQUVBLGFBQUE7RUR1REksbUJBQUE7QVoyU1I7QVFqTFE7RUt2TE47SVZMRSxjTzhCc0I7RVZtVnhCO0FBQ0Y7QVF0TFE7RUt2TE47SVZuQkUsdUJDSHNCO0VKdVl4QjtBQUNGO0FRM0xRO0VLdkxOO0lWc01NLGVBVFE7SUFVUixpQkFScUI7RUh3TDNCO0FBQ0Y7QVFqTVE7RUt2TE47SURvRVEsbUJBQUE7RVp3VFI7QUFDRjs7QWE3V0U7RVY5Q0EsK0NDRmtCO0VER2xCLG1DQUFBO0VBQ0Esa0NBQUE7RUFrQ0EsZ0JBQUE7RUE0TEksb0JBSmM7RUFLZCx5QkFKdUI7RVU1S3pCLGNBQUE7RUFFQSxrQkFBQTtFQUVBLGNIVzBCO0FWdVc5QjtBUWxOUTtFS3ZLTjtJVm5DRSx1QkNIc0I7RUptYXhCO0FBQ0Y7QVF2TlE7RUt2S047SVYyTE0sb0JBYlk7SUFjWix5QkFicUI7RUhvTjNCO0FBQ0Y7QVE3TlE7RUt2S047SVZzTE0sZUFUUTtJQVVSLGlCQVJxQjtFSDBOM0I7QUFDRjs7QWFoWUU7RVZ4REEsK0NDRmtCO0VER2xCLG1DQUFBO0VBQ0Esa0NBQUE7RUFrQ0EsZ0JBQUE7RUE0TEksb0JBSmM7RUFLZCx5QkFKdUI7RVVsS3pCLGNBQUE7RUFFQSxrQkFBQTtFQUNBLGNIRTBCO0FWb1k5QjtBUS9PUTtFSzdKTjtJVjdDRSx1QkNIc0I7RUpnY3hCO0FBQ0Y7QVFwUFE7RUs3Sk47SVZpTE0saUJBYlk7SUFjWixpQkFicUI7RUhpUDNCO0FBQ0Y7QVExUFE7RUs3Sk47SVY0S00sZUFUUTtJQVVSLGlCQVJxQjtFSHVQM0I7QUFDRjtBUWhRUTtFSzdKTjtJQVNJLGdCQUFBO0Vid1pKO0FBQ0Y7O0FhclpFO0VWckVBLCtDQ0ZrQjtFREdsQixtQ0FBQTtFQUNBLGtDQUFBO0VBa0NBLGdCQUFBO0VBNExJLG9CQUpjO0VBS2QseUJBSnVCO0VVckp6QixjQUFBO0VBRUEsY0hWMEI7QVZxYTlCO0FRaFJRO0VLaEpOO0lWMURFLHVCQ0hzQjtFSmlleEI7QUFDRjtBUXJSUTtFS2hKTjtJVitKTSxlQVRRO0lBVVIsaUJBUnFCO0VIa1IzQjtBQUNGOztBYWphRTtFVnpEQSxjT2ZrQjtFUFBsQiwrQ0NGa0I7RURHbEIsbUNBQUE7RUFDQSxrQ0FBQTtFQWtDQSxnQkFBQTtFQTRMSSxvQkFKYztFQUtkLHlCQUp1QjtFVTFJekIsYUFBQTtFRFFJLG1CQUFBO0FaaWFSO0FRdlNRO0VLdElOO0lWdERFLGNPOEJzQjtFVnljeEI7QUFDRjtBUTVTUTtFS3RJTjtJVnBFRSx1QkNIc0I7RUo2ZnhCO0FBQ0Y7QVFqVFE7RUt0SU47SVYwSk0saUJBYlk7SUFjWixpQkFicUI7RUg4UzNCO0FBQ0Y7QVF2VFE7RUt0SU47SVZxSk0sZUFUUTtJQVVSLGlCQVJxQjtFSG9UM0I7QUFDRjtBUTdUUTtFS3RJTjtJRG1CUSxtQkFBQTtFWm9iUjtBQUNGOztBYTViRTtFVnJFQSxjT2ZrQjtFUFBsQiwrQ0NGa0I7RURHbEIsbUNBQUE7RUFDQSxrQ0FBQTtFQWtDQSxnQkFBQTtFQTRMSSxvQkFKYztFQUtkLHlCQUp1QjtFVTlIekIsYUFBQTtFREpJLG1CQUFBO0Fad2NSO0FROVVRO0VLMUhOO0lWbEVFLGNPOEJzQjtFVmdmeEI7QUFDRjtBUW5WUTtFSzFITjtJVmhGRSx1QkNIc0I7RUpvaUJ4QjtBQUNGO0FReFZRO0VLMUhOO0lWeUlNLGVBVFE7SUFVUixpQkFScUI7RUhxVjNCO0FBQ0Y7QVE5VlE7RUsxSE47SURPUSxtQkFBQTtFWnFkUjtBQUNGOztBYWpkRTtFVmpGQSxjT2ZrQjtFUFBsQiwrQ0NGa0I7RURHbEIsbUNBQUE7RUFDQSxrQ0FBQTtFQWtDQSxnQkFBQTtFQTRMSSxlQUpjO0VBS2QsaUJBSnVCO0VVbEh6QixhQUFBO0VEaEJJLG1CQUFBO0FaeWVSO0FRL1dRO0VLOUdOO0lWOUVFLGNPOEJzQjtFVmloQnhCO0FBQ0Y7QVFwWFE7RUs5R047SVY1RkUsdUJDSHNCO0VKcWtCeEI7QUFDRjtBUXpYUTtFSzlHTjtJVjZITSxlQVRRO0lBVVIsZ0JBUnFCO0VIc1gzQjtBQUNGO0FRL1hRO0VLOUdOO0lETFEsbUJBQUE7RVpzZlI7QUFDRjs7QWFyZUU7RVY5RkEsY09ma0I7RVBQbEIsK0NDRmtCO0VER2xCLG1DQUFBO0VBQ0Esa0NBQUE7RUFrQ0EsZ0JBQUE7RUE0TEksbUJBSmM7RUFLZCx5QkFKdUI7RVVyR3pCLGFBQUE7RUQ3QkksbUJBQUE7QVowZ0JSO0FRaFpRO0VLakdOO0lWM0ZFLGNPOEJzQjtFVmtqQnhCO0FBQ0Y7QVFyWlE7RUtqR047SVZ6R0UsdUJDSHNCO0VKc21CeEI7QUFDRjtBUTFaUTtFS2pHTjtJVmdITSxlQVRRO0lBVVIsZ0JBUnFCO0VIdVozQjtBQUNGO0FRaGFRO0VLakdOO0lEbEJRLG1CQUFBO0VadWhCUjtBQUNGOztBYXplRTtFQUNFLGdCQUFBO0FiNGVKO0FRemFRO0VLcEVOO0lBSUksaUJBQUE7RWI2ZUo7QUFDRjs7QWExZUU7OztFRDlETSxpQkFBQTtBWjhpQlI7QVFwYlE7RUs1RE47OztJRHZEUSxpQkFBQTtF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LG1CQUFBO0E5QjhxRUo7O0E4QmhxRUU7RUFDRSxtQkFBQTtBOUJtcUVKOztBOEIvcEVFO0VBQ0UsZ0JBQUE7QTlCa3FFSjs7O0ErQnpzRUU7RTVCY0EsK0NDRmtCO0VER2xCLG1DQUFBO0VBQ0Esa0NBQUE7RUFrQ0EsZ0JBQUE7RUE0TEksb0JBSmM7RUFLZCx5QkFKdUI7RUF2TTNCLGNPZmtCO0VxQmpCaEIsY0FBQTtFQUVBLGtCQUFBO0EvQmd0RUo7QVFuL0RRO0V1Qm5PTjtJNUJ5QkUsdUJDSHNCO0VKb3NFeEI7QUFDRjtBUXgvRFE7RXVCbk9OO0k1QmtQTSxlQVRRO0lBVVIsaUJBUnFCO0VIcS9EM0I7QUFDRjtBUTkvRFE7RXVCbk9OO0k1QnVDRSxjTzhCc0I7RVZncUV4QjtBQUNGOztBK0I1dEVFOzs7RTVCa0RBLGdCQUFBO0U0QjlDRSxtQkFBQTtBL0IrdEVKOztBK0I1dEVFO0U1QjZOSSxlQUpjO0VBS2Qsb0JBSnVCO0FIdWdFN0I7QVEvZ0VRO0V1QmxOTjtJNUJzT00sZUFiWTtJQWNaLHlCQWJxQjtFSDRnRTNCO0FBQ0Y7QVFyaEVRO0V1QmxOTjtJNUJpT00sZUFUUTtJQVVSLGlCQVJxQjtFSGtoRTNCO0FBQ0Y7O0ErQnp1RUU7RTVCeU5JLG9CQUpjO0VBS2QseUJBSnVCO0FId2hFN0I7QVFoaUVRO0V1QjlNTjtJNUJrT00sa0JBYlk7SUFjWix5QkFicUI7RUg2aEUzQjtBQUNGO0FRdGlFUTtFdUI5TU47STVCNk5NLGVBVFE7SUFVUixpQkFScUI7RUhtaUUzQjtBQUNGOztBK0J0dkVFO0U1QnFOSSxvQkFKYztFQUtkLHlCQUp1QjtBSHlpRTdCO0FRampFUTtFdUIxTU47STVCOE5NLGlCQWJZO0lBY1osaUJBYnFCO0VIOGlFM0I7QUFDRjtBUXZqRVE7RXVCMU1OO0k1QnlOTSxlQVRRO0lBVVIsaUJBUnFCO0VIb2pFM0I7QUFDRjs7QStCbndFRTtFNUIrQkEsZ0JBQUE7QUh3dUVGOztBK0I3dkVFO0VBQ0UsU0FBQTtBL0Jnd0VKOzs7Ozs7QWdDcHlFRTtFN0JVQSwrQ0NGa0I7RURHbEIsbUNB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SUFDRSw4QkFBQTtFdkNrOEZKO0FBQ0Y7Ozs7QXlDcmtHRTtFdENZQSwrQ0NGa0I7RURHbEIsbUNBQUE7RUFDQSxrQ0FBQTtFQWtDQSxnQkFBQTtFQTRMSSxvQkFKYztFQUtkLHlCQUp1QjtFQXZNM0IsY09ma0I7RUVrRlosYUFBQTtFQUVBLG1CQUFBO0U2QmpHSix5QkFBQTtBekM4a0dKO0FRbjNGUTtFaUNqT047SXRDdUJFLHVCQ0hzQjtFSm9rR3hCO0FBQ0Y7QVF4M0ZRO0VpQ2pPTjtJdENnUE0sZUFUUTtJQVVSLGlCQVJxQjtFSHEzRjNCO0FBQ0Y7QVE5M0ZRO0VpQ2pPTjtJdENxQ0UsY084QnNCO0VWZ2lHeEI7QUFDRjtBUW40RlE7RWlDak9OO0k3QjRHUSxhQUFBO0VaNC9GUjtBQUNGO0FReDRGUTtFaUNqT047STdCOEdRLG1CQUFBO0VaKy9GUjtBQUNGO0F5Q3RtR0k7RUFDRSwwQkFBQTtBekN3bUdOOztBeUNwbUdFO0V0QytOSSxvQkFKYztFQUtkLHlCQUp1QjtFQS9LM0IsZ0JBQUE7RXNDekNFLGFBQUE7RTdCc0ZJLG1CQUFBO0Faa2hHUjtBUXg1RlE7RWlDcE5OO0l0Q3dPTSxpQkFiWTtJQWNaLGlCQWJxQjtFSHE1RjNCO0FBQ0Y7QVE5NUZRO0VpQ3BOTjtJdENtT00sZUFUUTtJQVVSLGlCQVJxQjtFSDI1RjNCO0FBQ0Y7QVFwNkZRO0VpQ3BOTjtJN0JpR1EsbUJBQUE7RVoyaEdSO0FBQ0Y7O0F5Q3BuR0k7RUFDRSxnQkFBQTtBekN1bkdOO0F5Q3BuR0k7RTdCNkVJLGdCQUFBO0FaMGlHUjtBUWg3RlE7RWlDdk1KO0k3Qm9GTSxnQkFBQTtFWnVpR1I7QUFDRjtBeUN4bkdJO0U3QnlFSSxrQkFBQTtBWmtqR1I7O0F5Q3JuR0U7RUFDRSxnQkFBQTtBekN3bkdKOztBeUNwbkdFO0VBQ0UsZ0JBQUE7QXpDdW5HSjs7QXlDcG5HRTtFdENhQSxnQkFBQTtFQTlDQSwrQ0NGa0I7RURHbEIsbUNBQUE7RUFDQSxrQ0FBQTtFRWFBLDBCQUFBO0VBR0UsNkNDaEI2QjtFRG9CN0IsK0JDUDBCO0FOZ3BH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QUFBO0VBRUEseUJBdE0rQjtBM0MwOEduQztBMkNsd0dJO0VBQ0UseUJBeE1vQztBM0M0OEcxQztBMkNqd0dJO0VBQ0UsMENBM002QjtBM0M4OEduQzs7O0E0Qzk4R0U7RXpDTUEsK0NDRmtCO0VER2xCLG1DQUFBO0VBQ0Esa0NBQUE7RUFrQ0EsZ0JBQUE7RUE0TEksb0JBSmM7RUFLZCx5QkFKdUI7RVNsSXJCLGlCQUFBO0VBQUEsb0JBQUE7RWdDNUZKLDhCQUFBO0VBQ0EsY2xDT2dCO0VZZ0JoQixtQkFBQTtBdEJnOEdKO0FRbHdHUTtFb0MzTk47SXpDaUJFLHVCQ0hzQjtFSm05R3hCO0FBQ0Y7QVF2d0dRO0VvQzNOTjtJekMwT00sZUFUUTtJQVVSLGlCQVJxQjtFSG93RzNCO0FBQ0Y7QVE3d0dRO0VvQzNOTjtJaEN3R1EsaUJBQUE7RVpvNEdSO0FBQ0Y7QVFseEdRO0VvQzNOTjtJaEN3R1Esb0JBQUE7RVp5NEdSO0FBQ0Y7QXNCajhHSTtFQWpCRSxzQ0FBQTtBdEJxOUdOOztBNEN2K0dFO0VBQ0UsbUJBQUE7QTVDMCtHSjs7QTRDditHRTtFekNaQSwrQ0NGa0I7RURHbEIsbUNBQUE7RUFDQSxrQ0FBQTtFRWFBLDBCQUFBO0VBR0UsNkNDaEI2QjtFRG9CN0IsK0JDUDBCO0FONitHOUI7QVF2eUdRO0VvQ3pNTjtJekNERSx1QkNIc0I7RUp3L0d4QjtBQUNGO0FLbGdIRTtFQXFDRSxvRENMbUM7RURRbkMsc0NBQUE7RUFDUSw4QkFBQTtFQUNSLGtDQUFBO0VBQ1EsMEJBQUE7QUw4OUdaO0FLcmdIRTtFSUZBLDhCQUFBO0VBQ0EsY0NrRndCO0VEakZ4Qix5QkN1RW1CO0VEdEVuQixpREFDRTtVQURGLHlDQUNFO0VBSUYscUJBQUE7QVRzZ0hGO0FTMS9HRTtFSmxCQTtJSW1CRSxtQ0FBQTtJQUNRLDJCQUFBO0VUNi9HVjtBQUNGO0FLbjBHRTtFRjVMQSxjT2ZrQjtBVmloSHBCO0FRbjBHUTtFSEhOO0lGekxFLGNPOEJzQjtFVnErR3hCO0FBQ0Y7QUtwMEdFO0VBRUksNkJBQUE7QUxxMEdOO0FLajBHRTtF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SSxnQkFBQTtFQUFBLG1CQUFBO0VrQ2hHSixXQUFBO0VBRUEsK0JBQUE7QTlDNHRJSjtBUXBnSVE7RXNDbk9OO0kzQ3lCRSx1QkNIc0I7RUpxdEl4QjtBQUNGO0FRemdJUTtFc0NuT047STNDa1BNLGVBVFE7SUFVUixpQkFScUI7RUhzZ0kzQjtBQUNGO0FRL2dJUTtFc0NuT047STNDdUNFLGNPOEJzQjtFVmlySXhCO0FBQ0Y7QVFwaElRO0VzQ25PTjtJbENnSFEsZ0JBQUE7RVoyb0lSO0FBQ0Y7QVF6aElRO0VzQ25PTjtJbENnSFEsbUJBQUE7RVpncElSO0FBQ0Y7QThDcHZJSTtFQUNFLGFBQUE7QTlDc3ZJTjtBOENudklJOztFQUVFLGdCQUFBO0E5Q3F2SU47Ozs7QStDeHdJRTtFNUNjQSwrQ0NGa0I7RURHbEIsbUNBQUE7RUFDQSxrQ0FBQTtFQWtDQSxnQkFBQTtFQTRMSSxvQkFKYztFQUtkLHlCQUp1QjtFU2xJckIsbUJBQUE7RW1DckdKLHlCQUFBO0VBRUEseUJyQ1FpQjtBVnd3SXJCO0FRbmpJUTtFdUNuT047STVDeUJFLHVCQ0hzQjtFSm93SXhCO0FBQ0Y7QVF4aklRO0V1Q25PTjtJNUNrUE0sZUFUUTtJQVVSLGlCQVJxQjtFSHFqSTNCO0FBQ0Y7QVE5aklRO0V1Q25PTjtJbkNnSFEsbUJBQUE7RVpxcklSO0FBQ0Y7QStDOXhJSTtFQUNFLDBCQUFBO0EvQ2d5SU47O0ErQzV4SUU7RUFDRSxxQkFBQTtFQUlBLG9DQUFBO0EvQzR4SUo7QVEza0lRO0V1Q3ROTjtJQVFJLHFCQUFBO0UvQzZ4SUo7QUFDRjs7QStDMXhJRTtFNUNxTkksb0JBSmM7RUFLZCx5QkFKdUI7RUEvSzNCLGdCQUFBO0U0QzlCRSxTQUFBO0VBQ0EsVUFBQTtFQUNBLGNBQUE7QS9DNHhJSjtBUXpsSVE7RXVDMU1OO0k1Q3lOTSxlQVRRO0lBVVIsaUJBUnFCO0VIc2xJM0I7QUFDRjs7QStDL3hJRTtFNUNDQSxjT2ZrQjtFcUNpQmhCLGFBQUE7RUFFQSx5QnJDb0IyQjtBVjR3SS9CO0FRcm1JUTtFdUNoTU47STVDSUUsY084QnNCO0VWdXdJeEI7QUFDRjtBUTFtSVE7RXVDaE1OO0lBUUksYUFQZTtFL0M2eUluQjtBQUNGO0ErQ2x5SUk7RUFHRSw4QkFBQTtVQUFBLHNCQUFBO0VBT0EsZ0JBQUE7QS9DNHhJTjtBK0N6eElJO0VBQ0UsZ0JBQUE7QS9DMnhJTjs7QStDdnhJRTtFNUM0S0ksb0JBSmM7RUFLZCx5QkFKdUI7RUEvSzNCLGdCQUFBO0U0Q1VFLGdCQUFBO0VBRUEsVUFBQTtBL0N5eElKO0FROW5JUTtFdUNqS047STVDcUxNLGlCQWJZO0lBY1osaUJBYnFCO0VIMm5JM0I7QUFDRjtBUXBvSVE7RXVDaktOO0k1Q2dMTSxlQVRRO0lBVVIsaUJBUnFCO0VIaW9JM0I7QUFDRjs7QStDbHlJRTtFNUM3REEsK0NDRmtCO0VER2xCLG1DQUFBO0VBQ0Esa0NBQUE7RUVhQSwwQkFBQTtFQUdFLDZDQ2hCNkI7RURvQjdCLCtCQ1AwQjtBTnkxSTlCO0FRbnBJUTtFdUN4Sk47STVDbERFLHVCQ0hzQjtFSm8ySXhCO0FBQ0Y7QUs5MklFO0VBcUNFLG9EQ0xtQztFRFFuQyxzQ0FBQTtFQUNRLDhCQUFBO0VBQ1Isa0NBQUE7RUFDUSwwQkFBQTtBTDAwSVo7QUtqM0lFO0VJRkEsOEJBQUE7RUFDQSxjQ2tGd0I7RURqRnhCLHlCQ3VFbUI7RUR0RW5CLGlEQUNFO1VBREYseUNBQ0U7RUFJRixxQkFBQTtBVGszSUY7QVN0MklFO0VKbEJBO0lJbUJFLG1DQUFBO0lBQ1EsMkJBQUE7RVR5MklWO0FBQ0Y7QUtybUlFO0VBQ0UsY0tqSmdCO0FWd3ZJcEI7QUtwbUlFO0VBQ0UsY0tySmdCO0FWMnZJcEI7QUtubUlFO0VBQ0UsY0szSXNCO0FWZ3ZJMUI7QUtsbUlFO0VBQ0UsY0t4SXVCO0FWNHVJM0I7QUsvbElFO0VBQ0UsY0szTnNCO0FWNHpJMUI7O0ErQzkwSUU7RUFDRSxxQnJDbUNtQjtFcUNqQ25CLHlCckNpQ21CO0FWK3lJdkI7QUsxd0lFO0VBRUUsY0t2Q21CO0FWa3pJdkI7QUt4d0lFO0VBQ0UsdUJBQUE7QUwwd0lKO0FLdndJRTtFQUNFLGNLL0Nt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QkFBQTtFQUNBLHlCQUFBO0EzRHExTEo7QVF6bkxRO0VtRG5PTjtJeER5QkUsdUJDSHNCO0VKMDBMeEI7QUFDRjtBUTluTFE7RW1Ebk9OO0l4RGtQTSxlQVRRO0lBVVIsaUJBUnFCO0VIMm5MM0I7QUFDRjtBUXBvTFE7RW1Ebk9OO0l4RHVDRSxjTzhCc0I7RVZzeUx4QjtBQUNGO0FRem9MUTtFbURuT047SS9DZ0hRLG1CQUFBO0VaZ3dMUjtBQUNGOztBUTlvTFE7RW1EdE5KO0l4RGlPRSxlQUpjO0lBS2QsaUJBSnVCO0VING9MM0I7QUFDRjtBUXJwTFE7RW1EdE5KO0l4RHFPSSxlQVRRO0lBVVIsZ0JBUnFCO0VIa3BMM0I7QUFDRjs7QTJEMTJMRTtFeER3Q0EsZ0JBQUE7QUhzMExGOztBMkQxMkxFOztFQUVFLHlCQUFBO0VBQ0EsZ0NBQUE7RUFDQSxnQkFBQTtFQUNBLG1CQUFBO0EzRDYyTEo7O0EyRDEyTEU7RXhENkNBLGtDQUFBO0FIaTBMRjs7QTJEMTJMRTs7RUFFRSxpQkFBQTtBM0Q2MkxKOztBMkQxMkxFOztFQUVFLGdCQUFBO0EzRDYyTEo7O0EyRDEyTEU7RXhEY0EsZ0JBQUE7RXdEWEUsc0JBQUE7RUFDQSxnQkFBQTtBM0Q0MkxKOztBMkR4MkxFOzs7RUFHRSxtQkFBQTtBM0QyMkxKOztBMkR4MkxFO0V4RGtMSSxlQUpjO0VBS2Qsb0JBSnVCO0FIOHJMN0I7QVF0c0xRO0VtRHZLTjtJeEQyTE0sZUFiWTtJQWNaLHlCQWJxQjtFSG1zTDNCO0FBQ0Y7QVE1c0xRO0VtRHZLTjtJeERzTE0sZUFUUTtJQVVSLGlCQVJxQjtFSHlzTDNCO0FBQ0Y7O0EyRHIzTEU7RXhEOEtJLG9CQUpjO0VBS2QseUJBSnVCO0FIK3NMN0I7QVF2dExRO0VtRG5LTjtJeER1TE0sa0JBYlk7SUFjWix5QkFicUI7RUhvdEwzQjtBQUNGO0FRN3RMUTtFbURuS047SXhEa0xNLGVBVFE7SUFVUixpQkFScUI7RUgwdEwzQjtBQUNGOztBMkRsNExFO0V4RDBLSSxvQkFKYztFQUtkLHlCQUp1QjtBSGd1TDdCO0FReHVMUTtFbUQvSk47SXhEbUxNLGlCQWJZO0lBY1osaUJBYnFCO0VIcXVMM0I7QUFDRjtBUTl1TFE7RW1EL0pOO0l4RDhLTSxlQVRRO0lBVVIsaUJBUnFCO0VIMnVMM0I7QUFDRjs7O0E0RHY5TEU7RWhEeUdNLGVBQUE7RUFBQSxtQkFBQTtFVDNGTiwrQ0NGa0I7RURHbEIsbUNBQUE7RUFDQSxrQ0FBQTtFQWtDQSxnQkFBQTtFQTRMSSxvQkFKYztFQUtkLHlCQUp1QjtBSHd2TDdCO0FRaHdMUTtFb0RuT047SWhEZ0hRLG1CQUFBO0VadTNMUjtBQUNGO0FRcndMUTtFb0RuT047SXpEeUJFLHVCQ0hzQjtFSnM5THhCO0FBQ0Y7QVExd0xRO0VvRG5PTjtJekRrUE0sZUFUUTtJQVVSLGlCQVJxQjtFSHV3TDNCO0FBQ0Y7O0E0RDcrTEU7RXpEd09JLG9CQUpjO0VBS2QseUJBSnVCO0VBekwzQixnQkFBQTtFQWRBLGNPZmtCO0VrRFRoQixtQkFBQTtBNUQrK0xKO0FReHhMUTtFb0Q3Tk47SXpENE9NLGVBVFE7SUFVUixpQkFScUI7RUhxeEwzQjtBQUNGO0FROXhMUTtFb0Q3Tk47SXpEaUNFLGNPOEJzQjtFVmc4THhCO0FBQ0Y7O0E0RHYvTEU7RUFDRSxTQUFBO0VBQ0EsVUFBQTtFQUNBLGdCQUFBO0VoRHVGSSxtQkFBQTtBWm82TFI7QVExeUxRO0VvRHBOTjtJaERpR1EsbUJBQUE7RVppNkxSO0FBQ0Y7O0E0RDUvTEU7RUFDRSxpQkFBQTtBNUQrL0xKO0E0RDcvTEk7RXpEV0YsY09ma0I7RWtETWQsWUFBQTtFQUNBLGtCQUFBO0VBQ0Esa0JBQUE7QTVEKy9MTjtBUXp6TFE7RW9EMU1KO0l6RGNBLGNPOEJzQjtFVjI5THhCO0FBQ0Y7O0E0RGhnTUU7RXpEbkJBLCtDQ0ZrQjtFREdsQixtQ0FBQTtFQUNBLGtDQUFBO0VFYUEsMEJBQUE7RUFHRSw2Q0NoQjZCO0VEb0I3QiwrQkNQMEI7RXNEUTFCLHFCQUFBO0VBQ0EsbUJBQUE7QTVEc2dNSjtBUXowTFE7RW9EbE1OO0l6RFJFLHVCQ0hzQjtFSjBoTXhCO0FBQ0Y7QUtwaU1FO0VB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LDJCQUFBO0FaMDJNUjs7QWlFLzZNSTtFckRtRUksdUJBQUE7QVpnM01SOztBaUU3Nk1NO0VyRCtERSwyQkFBQTtBWmszTVI7O0FpRWo3TU07RXJEK0RFLDZCQUFBO0FaczNNUjs7QWlFcjdNTTtFckQrREUsOEJBQUE7QVowM01SOztBaUV6N01NO0VyRCtERSw0QkFBQTtBWjgzTVI7O0FpRW44TUk7RXJEbUVJLHVCQUFBO0FabzRNUjs7QWlFajhNTTtFckQrREUsMkJBQUE7QVpzNE1SOztBaUVyOE1NO0VyRCtERSw2QkFBQTtBWjA0TVI7O0FpRXo4TU07RXJEK0RFLDhCQUFBO0FaODRNUjs7QWlFNzhNTTtFckQrREUsNEJBQUE7QVprNU1SOztBaUV2OU1JO0VyRG1FSSx1QkFBQTtBWnc1TVI7QVE1eE1RO0V5RC9MSjtJckQwRU0sdUJBQUE7RVpxNU1SO0FBQ0Y7O0FpRTE5TU07RXJEK0RFLDJCQUFBO0FaKzVNUjtBUXJ5TVE7RXlEekxGO0lyRHNFSSwyQkFBQTtFWjQ1TVI7QUFDRjs7QWlFbitNTTtFckQrREUsNkJBQUE7QVp3Nk1SO0FROXlNUTtFeUR6TEY7SXJEc0VJLDZCQUFBO0VacTZNUjtBQUNGOztBaUU1K01NO0VyRCtERSw4QkFBQTtBWmk3TVI7QVF2ek1RO0V5RHpMRjtJckRzRUksOEJBQUE7RVo4Nk1SO0FBQ0Y7O0FpRXIvTU07RXJEK0RFLDRCQUFBO0FaMDdNUjtBUWgwTVE7RXlEekxGO0lyRHNFSSw0QkFBQTtFWnU3TVI7QUFDRjs7QWlFcGdOSTtFckRtRUksdUJBQUE7QVpxOE1SO0FRejBNUTtFeUQvTEo7SXJEMEVNLHVCQUFBO0VaazhNUjtBQUNGOztBaUV2Z05NO0VyRCtERSwyQkFBQTtBWjQ4TVI7QVFsMU1RO0V5RHpMRjtJckRzRUksMkJBQUE7RVp5OE1SO0FBQ0Y7O0FpRWhoTk07RXJEK0RFLDZCQUFBO0FacTlNUjtBUTMxTVE7RXlEekxGO0lyRHNFSSw2QkFBQTtFWms5TVI7QUFDRjs7QWlFemhOTTtFckQrREUsOEJBQUE7QVo4OU1SO0FRcDJNUTtFeUR6TEY7SXJEc0VJLDhCQUFBO0VaMjlNUjtBQUNGOztBaUVsaU5NO0VyRCtERSw0QkFBQTtBWnUrTVI7QVE3Mk1RO0V5RHpMRjtJckRzRUksNEJBQUE7RVpvK01SO0FBQ0Y7O0FpRWpqTkk7RXJEbUVJLHVCQUFBO0Faay9NUjtBUXQzTVE7RXlEL0xKO0lyRDBFTSx1QkFBQTtFWisrTVI7QUFDRjs7QWlFcGpOTTtFckQrREUsMkJBQUE7QVp5L01SO0FRLzNNUTtFeUR6TEY7SXJEc0VJLDJCQUFBO0Vacy9NUjtBQUNGOztBaUU3ak5NO0VyRCtERSw2QkFBQTtBWmtnTlI7QVF4NE1RO0V5RHpMRjtJckRzRUksNkJBQUE7RVorL01SO0FBQ0Y7O0FpRXRrTk07RXJEK0RFLDhCQUFBO0FaMmdOUjtBUWo1TVE7RXlEekxGO0lyRHNFSSw4QkFBQTtFWndnTlI7QUFDRjs7QWlFL2tOTTtFckQrREUsNEJBQUE7QVpvaE5SO0FRMTVNUTtFeUR6TEY7SXJEc0VJLDRCQUFBO0VaaWhOUjtBQUNGOztBaUU5bE5JO0VyRG1FSSx1QkFBQTtBWitoTlI7QVFuNk1RO0V5RC9MSjtJckQwRU0sdUJBQUE7RVo0aE5SO0FBQ0Y7O0FpRWptTk07RXJEK0RFLDJCQUFBO0Fac2lOUjtBUTU2TVE7RXlEekxGO0lyRHNFSSwyQkFBQTtFWm1pTlI7QUFDRjs7QWlFMW1OTTtFckQrREUsNkJBQUE7QVoraU5SO0FRcjdNUTtFeUR6TEY7SXJEc0VJLDZCQUFBO0VaNGlOUjtBQUNGOztBaUVubk5NO0VyRCtERSw4QkFBQTtBWndqTlI7QVE5N01RO0V5RHpMRjtJckRzRUksOEJBQUE7RVpxak5SO0FBQ0Y7O0FpRTVuTk07RXJEK0RFLDRCQUFBO0FaaWtOUjtBUXY4TVE7RXlEekxGO0lyRHNFSSw0QkFBQTtFWjhqTlI7QUFDRjs7QWlFM29OSTtFckRtRUksdUJBQUE7QVo0a05SO0FRaDlNUTtFeUQvTEo7SXJEMEVNLHVCQUFBO0VaeWtOUjtBQUNGOztBaUU5b05NO0VyRCtERSwyQkFBQTtBWm1sTlI7QVF6OU1RO0V5RHpMRjtJckRzRUksMkJBQUE7RVpnbE5SO0FBQ0Y7O0FpRXZwTk07RXJEK0RFLDZCQUFBO0FaNGxOUjtBUWwrTVE7RXlEekxGO0lyRHNFSSw2QkFBQTtFWnlsTlI7QUFDRjs7QWlFaHFOTTtFckQrREUsOEJBQUE7QVpxbU5SO0FRMytNUTtFeUR6TEY7SXJEc0VJLDhCQUFBO0Vaa21OUjtBQUNGOztBaUV6cU5NO0VyRCtERSw0QkFBQTtBWjhtTlI7QVFwL01RO0V5RHpMRjtJckRzRUksNEJBQUE7RVoybU5SO0FBQ0Y7O0FpRXhyTkk7RXJEbUVJLHVCQUFBO0FaeW5OUjtBUTcvTVE7RXlEL0xKO0lyRDBFTSx1QkFBQTtFWnNuTlI7QUFDRjs7QWlFM3JOTTtFckQrREUsMkJBQUE7QVpnb05SO0FRdGdOUTtFeUR6TEY7SXJEc0VJLDJCQUFBO0VaNm5OUjtBQUNGOztBaUVwc05NO0VyRCtERSw2QkFBQTtBWnlvTlI7QVEvZ05RO0V5RHpMRjtJckRzRUksNkJBQUE7RVpzb05SO0FBQ0Y7O0FpRTdzTk07RXJEK0RFLDhCQUFBO0Faa3BOUjtBUXhoTlE7RXlEekxGO0lyRHNFSSw4QkFBQTtFWitvTlI7QUFDRjs7QWlFdHROTTtFckQrREUsNEJBQUE7QVoycE5SO0FRamlOUTtFeUR6TEY7SXJEc0VJLDRCQUFBO0Vad3BOUjtBQUNGOztBaUVydU5JO0VyRG1FSSxxQkFBQTtBWnNxTlI7O0FpRW51Tk07RXJEK0RFLHlCQUFBO0Fad3FOUjs7QWlFdnVOTTtFckQrREUsMkJBQUE7QVo0cU5SOztBaUUzdU5NO0VyRCtERSw0QkFBQTtBWmdyTlI7O0FpRS91Tk07RXJEK0RFLDBCQUFBO0Fab3JOUjs7QWlFenZOSTtFckRtRUksdUJBQUE7QVowck5SOztBaUV2dk5NO0VyRCtERSwyQkFBQTtBWjRyTlI7O0FpRTN2Tk07RXJEK0RFLDZCQUFBO0FaZ3NOUjs7QWlFL3ZOTTtFckQrREUsOEJBQUE7QVpvc05SOztBaUVud05NO0VyRCtERSw0QkFBQTtBWndzTlI7O0FpRTd3Tkk7RXJEbUVJLHdCQUFBO0FaOHNOUjs7QWlFM3dOTTtFckQrREUsNEJBQUE7QVpndE5SOztBaUUvd05NO0VyRCtERSw4QkFBQTtBWm90TlI7O0FpRW54Tk07RXJEK0RFLCtCQUFBO0Fad3ROUjs7QWlFdnhOTTtFckQrREUsNkJBQUE7QVo0dE5SOztBaUVqeU5JO0VyRG1FSSx3QkFBQTtBWmt1TlI7O0FpRS94Tk07RXJEK0RFLDRCQUFBO0Fab3VOUjs7QWlFbnlOTTtFckQrREUsOEJBQUE7QVp3dU5SOztBaUV2eU5NO0VyRCtERSwrQkFBQTtBWjR1TlI7O0FpRTN5Tk07RXJEK0RFLDZCQUFBO0FaZ3ZOUjs7QWlFcnpOSTtFckRtRUksd0JBQUE7QVpzdk5SO0FRMW5OUTtFeUQvTEo7SXJEMEVNLHdCQUFBO0VabXZOUjtBQUNGOztBaUV4ek5NO0VyRCtERSw0QkFBQTtBWjZ2TlI7QVFub05RO0V5RHpMRjtJckRzRUksNEJBQUE7RVowdk5SO0FBQ0Y7O0FpRWowTk07RXJEK0RFLDhCQUFBO0Fac3dOUjtBUTVvTlE7RXlEekxGO0lyRHNFSSw4QkFBQTtFWm13TlI7QUFDRjs7QWlFMTBOTTtFckQrREUsK0JBQUE7QVord05SO0FRcnBOUTtFeUR6TEY7SXJEc0VJLCtCQUFBO0VaNHdOUjtBQUNGOztBaUVuMU5NO0VyRCtERSw2QkFBQTtBWnd4TlI7QVE5cE5RO0V5RHpMRjtJckRzRUksNkJBQUE7RVpxeE5SO0FBQ0Y7O0FpRWwyTkk7RXJEbUVJLHdCQUFBO0FabXlOUjtBUXZxTlE7RXlEL0xKO0lyRDBFTSx3QkFBQTtFWmd5TlI7QUFDRjs7QWlFcjJOTTtFckQrREUsNEJBQUE7QVoweU5SO0FRaHJOUTtFeUR6TEY7SXJEc0VJLDRCQUFBO0VadXlOUjtBQUNGOztBaUU5Mk5NO0VyRCtERSw4QkFBQTtBWm16TlI7QVF6ck5RO0V5RHpMRjtJckRzRUksOEJBQUE7RVpnek5SO0FBQ0Y7O0FpRXYzTk07RXJEK0RFLCtCQUFBO0FaNHpOUjtBUWxzTlE7RXlEekxGO0lyRHNFSSwrQkFBQTtFWnl6TlI7QUFDRjs7QWlFaDROTTtFckQrREUsNkJBQUE7QVpxME5SO0FRM3NOUTtFeUR6TEY7SXJEc0VJLDZCQUFBO0VaazBOUjtBQUNGOztBaUUvNE5JO0VyRG1FSSx3QkFBQTtBWmcxTlI7QVFwdE5RO0V5RC9MSjtJckQwRU0sd0JBQUE7RVo2ME5SO0FBQ0Y7O0FpRWw1Tk07RXJEK0RFLDRCQUFBO0FadTFOUjtBUTd0TlE7RXlEekxGO0lyRHNFSSw0QkFBQTtFWm8xTlI7QUFDRjs7QWlFMzVOTTtFckQrREUsOEJBQUE7QVpnMk5SO0FRdHVOUTtFeUR6TEY7SXJEc0VJLDhCQUFBO0VaNjFOUjtBQUNGOztBaUVwNk5NO0VyRCtERSwrQkFBQTtBWnkyTlI7QVEvdU5RO0V5RHpMRjtJckRzRUksK0JBQUE7RVpzMk5SO0FBQ0Y7O0FpRTc2Tk07RXJEK0RFLDZCQUFBO0FaazNOUjtBUXh2TlE7RXlEekxGO0lyRHNFSSw2QkFBQTtFWisyTlI7QUFDRjs7QWlFNTdOSTtFckRtRUksd0JBQUE7QVo2M05SO0FRandOUTtFeUQvTEo7SXJEMEVNLHdCQUFBO0VaMDNOUjtBQUNGOztBaUUvN05NO0VyRCtERSw0QkFBQTtBWm80TlI7QVExd05RO0V5RHpMRjtJckRzRUksNEJBQUE7RVppNE5SO0FBQ0Y7O0FpRXg4Tk07RXJEK0RFLDhCQUFBO0FaNjROUjtBUW54TlE7RXlEekxGO0lyRHNFSSw4QkFBQTtFWjA0TlI7QUFDRjs7QWlFajlOTTtFckQrREUsK0JBQUE7QVpzNU5SO0FRNXhOUTtFeUR6TEY7SXJEc0VJLCtCQUFBO0VabTVOUjtBQUNGOztBaUUxOU5NO0VyRCtERSw2QkFBQTtBWis1TlI7QVFyeU5RO0V5RHpMRjtJckRzRUksNkJBQUE7RVo0NU5SO0FBQ0Y7O0FpRXorTkk7RXJEbUVJLHdCQUFBO0FaMDZOUjtBUTl5TlE7RXlEL0xKO0lyRDBFTSx3QkFBQTtFWnU2TlI7QUFDRjs7QWlFNStOTTtFckQrREUsNEJBQUE7QVppN05SO0FRdnpOUTtFeUR6TEY7SXJEc0VJLDRCQUFBO0VaODZOUjtBQUNGOztBaUVyL05NO0VyRCtERSw4QkFBQTtBWjA3TlI7QVFoME5RO0V5RHpMRjtJckRzRUksOEJBQUE7RVp1N05SO0FBQ0Y7O0FpRTkvTk07RXJEK0RFLCtCQUFBO0FabThOUjtBUXowTlE7RXlEekxGO0lyRHNFSSwrQkFBQTtFWmc4TlI7QUFDRjs7QWlFdmdPTTtFckQrREUsNkJBQUE7QVo0OE5SO0FRbDFOUTtFeUR6TEY7SXJEc0VJLDZCQUFBO0VaeThOUjtBQUNGOztBaUV0aE9JO0VyRG1FSSx3QkFBQTtBWnU5TlI7QVEzMU5RO0V5RC9MSjtJckQwRU0sd0JBQUE7RVpvOU5SO0FBQ0Y7O0FpRXpoT007RXJEK0RFLDRCQUFBO0FaODlOUjtBUXAyTlE7RXlEekxGO0lyRHNFSSw0QkFBQTtFWjI5TlI7QUFDRjs7QWlFbGlPTTtFckQrREUsOEJBQUE7QVp1K05SO0FRNzJOUTtFeUR6TEY7SXJEc0VJLDhCQUFBO0VabytOUjtBQUNGOztBaUUzaU9NO0VyRCtERSwrQkFBQTtBWmcvTlI7QVF0M05RO0V5RHpMRjtJckRzRUksK0JBQUE7RVo2K05SO0FBQ0Y7O0FpRXBqT007RXJEK0RFLDZCQUFBO0FaeS9OUjtBUS8zTlE7RXlEekxGO0lyRHNFSSw2QkFBQTtFWnMvTlI7QUFDRjs7QWlFdmlPSTtFQUNFLG9CQUFBO0FqRTBpT047O0FpRXRpT007RUFDRSx3QkFBQTtBakV5aU9SOztBaUUxaU9NO0VBQ0UsMEJBQUE7QWpFNmlPUjs7QWlFOWlPTTtFQUNFLDJCQUFBO0FqRWlqT1I7O0FpRWxqT007RUFDRSx5QkFBQTtBakVxak9SOztBaUUzak9JO0VBQ0Usc0JBQUE7QWpFOGpPTjs7QWlFMWpPTTtFQUNFLDBCQUFBO0FqRTZqT1I7O0FpRTlqT007RUFDRSw0QkFBQTtBakVpa09SOztBaUVsa09NO0VBQ0UsNkJBQUE7QWpFcWtPUjs7QWlFdGtPTTtFQUNFLDJCQUFBO0FqRXlrT1I7O0FpRS9rT0k7RUFDRSx1QkFBQTtBakVrbE9OOztBaUU5a09NO0VBQ0UsMkJBQUE7QWpFaWxPUjs7QWlFbGxPTTtFQUNFLDZCQUFBO0FqRXFsT1I7O0FpRXRsT007RUFDRSw4QkFBQTtBakV5bE9SOztBaUUxbE9NO0VBQ0UsNEJBQUE7QWpFNmxPUjs7QWlFbm1PSTtFQUNFLHVCQUFBO0FqRXNtT047O0FpRWxtT007RUFDRSwyQkFBQTtBakVxbU9SOztBaUV0bU9NO0VBQ0UsNkJBQUE7QWpFeW1PUjs7QWlFMW1PTTtFQUNFLDhCQUFBO0FqRTZtT1I7O0FpRTltT007RUFDRSw0QkFBQTtBakVpbk9SOztBaUV2bk9JO0VBQ0UsdUJBQUE7QWpFMG5PTjs7QWlFdG5PTTtFQUNFLDJCQUFBO0FqRXluT1I7O0FpRTFuT007RUFDRSw2QkFBQTtBakU2bk9SOztBaUU5bk9NO0VBQ0UsOEJBQUE7QWpFaW9PUjs7QWlFbG9PTTtFQUNFLDRCQUFBO0FqRXFvT1I7O0FpRTNvT0k7RUFDRSx1QkFBQTtBakU4b09OOztBaUUxb09NO0VBQ0UsMkJBQUE7QWpFNm9PUjs7QWlFOW9PTTtFQUNFLDZCQUFBO0FqRWlwT1I7O0FpRWxwT007RUFDRSw4QkFBQTtBakVxcE9SOztBaUV0cE9NO0VBQ0UsNEJBQUE7QWpFeXBPUjs7QWlFL3BPSTtFQUNFLHVCQUFBO0FqRWtxT047O0FpRTlwT007RUFDRSwyQkFBQTtBakVpcU9SOztBaUVscU9NO0VBQ0UsNkJBQUE7QWpFcXFPUjs7QWlFdHFPTTtFQUNFLDhCQUFBO0FqRXlxT1I7O0FpRTFxT007RUFDRSw0QkFBQTtBakU2cU9SOztBaUVuck9JO0VBQ0UsdUJBQUE7QWpFc3JPTjs7QWlFbHJPTTtFQUNFLDJCQUFBO0FqRXFyT1I7O0FpRXRyT007RUFDRSw2QkFBQTtBakV5ck9SOztBaUUxck9NO0VBQ0UsOEJBQUE7QWpFNnJPUjs7QWlFOXJPTTtFQUNFLDRCQUFBO0FqRWlzT1I7O0FpRXZzT0k7RUFDRSx1QkFBQTtBakUwc09OOztBaUV0c09NO0VBQ0UsMkJBQUE7QWpFeXNPUjs7QWlFMXNPTTtFQUNFLDZCQUFBO0FqRTZzT1I7O0FpRTlzT007RUFDRSw4QkFBQTtBakVpdE9SOztBaUVsdE9NO0VBQ0UsNEJBQUE7QWpFcXRPUjs7QWlFM3RPSTtFQUNFLHVCQUFBO0FqRTh0T047O0FpRTF0T007RUFDRSwyQkFBQTtBakU2dE9SOztBaUU5dE9NO0VBQ0UsNkJBQUE7QWpFaXVPUjs7QWlFbHVPTTtFQUNFLDhCQUFBO0FqRXF1T1I7O0FpRXR1T007RUFDRSw0QkFBQTtBakV5dU9SOztBaUUvdU9JO0VBQ0UscUJBQUE7QWpFa3ZPTjs7QWlFOXVPTTtFQUNFLHlCQUFBO0FqRWl2T1I7O0FpRWx2T007RUFDRSwyQkFBQTtBakVxdk9SOztBaUV0dk9NO0VBQ0UsNEJBQUE7QWpFeXZPUjs7QWlFMXZPTTtFQUNFLDBCQUFBO0FqRTZ2T1I7O0FpRW53T0k7RUFDRSx1QkFBQTtBakVzd09OOztBaUVsd09NO0VBQ0UsMkJBQUE7QWpFcXdPUjs7QWlFdHdPTTtFQUNFLDZCQUFBO0FqRXl3T1I7O0FpRTF3T007RUFDRSw4QkFBQTtBakU2d09SOztBaUU5d09NO0VBQ0UsNEJBQUE7QWpFaXhPUjs7QWlFdnhPSTtFQUNFLHdCQUFBO0FqRTB4T047O0FpRXR4T007RUFDRSw0QkFBQTtBakV5eE9SOztBaUUxeE9NO0VBQ0UsOEJBQUE7QWpFNnhPUjs7QWlFOXhPTTtFQUNFLCtCQUFBO0FqRWl5T1I7O0FpRWx5T007RUFDRSw2QkFBQTtBakVxeU9SOztBaUUzeU9JO0VBQ0Usd0JBQUE7QWpFOHlPTjs7QWlFMXlPTTtFQUNFLDRCQUFBO0FqRTZ5T1I7O0FpRTl5T007RUFDRSw4QkFBQTtBakVpek9SOztBaUVsek9NO0VBQ0UsK0JBQUE7QWpFcXpPUjs7QWlFdHpPTTtFQUNFLDZCQUFBO0FqRXl6T1I7O0FpRS96T0k7RUFDRSx3QkFBQTtBakVrME9OOztBaUU5ek9NO0VBQ0UsNEJBQUE7QWpFaTBPUjs7QWlFbDBPTTtFQUNFLDhCQUFBO0FqRXEwT1I7O0FpRXQwT007RUFDRSwrQkFBQTtBakV5ME9SOztBaUUxME9NO0VBQ0UsNkJBQUE7QWpFNjBPUjs7QWlFbjFPSTtFQUNFLHdCQUFBO0FqRXMxT047O0FpRWwxT007RUFDRSw0QkFBQTtBakVxMU9SOztBaUV0MU9NO0VBQ0UsOEJBQUE7QWpFeTFPUjs7QWlFMTFPTTtFQUNFLCtCQUFBO0FqRTYxT1I7O0FpRTkxT007RUFDRSw2QkFBQTtBakVpMk9SOztBaUV2Mk9JO0VBQ0Usd0JBQUE7QWpFMDJPTjs7QWlFdDJPTTtFQUNFLDRCQUFBO0FqRXkyT1I7O0FpRTEyT007RUFDRSw4QkFBQTtBakU2Mk9SOztBaUU5Mk9NO0VBQ0UsK0JBQUE7QWpFaTNPUjs7QWlFbDNPTTtFQUNFLDZCQUFBO0FqRXEzT1I7O0FpRTMzT0k7RUFDRSx3QkFBQTtBakU4M09OOztBaUUxM09NO0VBQ0UsNEJBQUE7QWpFNjNPUjs7QWlFOTNPTTtFQUNFLDhCQUFBO0FqRWk0T1I7O0FpRWw0T007RUFDRSwrQkFBQTtBakVxNE9SOztBaUV0NE9NO0VBQ0UsNkJBQUE7QWpFeTRPUjs7QWlFLzRPSTtFQUNFLHdCQUFBO0FqRWs1T047O0FpRTk0T007RUFDRSw0QkFBQTtBakVpNU9SOztBaUVsNU9NO0VBQ0UsOEJBQUE7QWpFcTVPUjs7QWlFdDVPTTtFQUNFLCtCQUFBO0FqRXk1T1I7O0FpRTE1T007RUFDRSw2QkFBQTtBakU2NU9SOztBaUVuNk9JO0VBQ0Usd0JBQUE7QWpFczZPTjs7QWlFbDZPTTtFQUNFLDRCQUFBO0FqRXE2T1I7O0FpRXQ2T007RUFDRSw4QkFBQTtBakV5Nk9SOztBaUUxNk9NO0VBQ0UsK0JBQUE7QWpFNjZPUjs7QWlFOTZPTTtFQUNFLDZCQUFBO0FqRWk3T1I7OztBa0V0L09FO0VBQ0UsMkJBQUE7QWxFMC9PSjs7QWtFdi9PRTtFQUNFLDZCQUFBO0FsRTAvT0o7O0FrRXYvT0U7RUFDRSw0QkFBQTtBbEUwL09KOzs7QW1FNy9PSTtFaEV1T0UsK0JBSmM7RUFLZCxvQ0FKdUI7QUgreE83QjtBUXZ5T1E7RTJENU5KO0loRWdQSSwwQkFiWTtJQWNaLHlCQWJxQjtFSG95TzNCO0FBQ0Y7QVE3eU9RO0UyRDVOSjtJaEUyT0ksMEJBVFE7SUFVUiwyQkFScUI7RUgweU8zQjtBQUNGOztBbUUvZ1BJO0VoRXVPRSwwQkFKYztFQUtkLCtCQUp1QjtBSGd6TzdCO0FReHpPUTtFMkQ1Tko7SWhFZ1BJLDBCQWJZO0lBY1osb0NBYnFCO0VIcXpPM0I7QUFDRjtBUTl6T1E7RTJENU5KO0loRTJPSSwwQkFUUTtJQVVSLDRCQVJxQjtFSDJ6TzNCO0FBQ0Y7O0FtRWhpUEk7RWhFdU9FLCtCQUpjO0VBS2Qsb0NBSnVCO0FIaTBPN0I7QVF6ME9RO0UyRDVOSjtJaEVnUEksNkJBYlk7SUFjWixvQ0FicUI7RUhzME8zQjtBQUNGO0FRLzBPUTtFMkQ1Tko7SWhFMk9JLDBCQVRRO0lBVVIsNEJBUnFCO0VINDBPM0I7QUFDRjs7QW1FampQSTtFaEV1T0UsK0JBSmM7RUFLZCxvQ0FKdUI7QUhrMU83QjtBUTExT1E7RTJENU5KO0loRWdQSSwrQkFiWTtJQWNaLG9DQWJxQjtFSHUxTzNCO0FBQ0Y7QVFoMk9RO0UyRDVOSjtJaEUyT0ksMEJBVFE7SUFVUiw0QkFScUI7RUg2MU8zQjtBQUNGOztBbUVsa1BJO0VoRXVPRSwrQkFKYztFQUtkLG9DQUp1QjtBSG0yTzdCO0FRMzJPUTtFMkQ1Tko7SWhFZ1BJLDRCQWJZO0lBY1osNEJBYnFCO0VIdzJPM0I7QUFDRjtBUWozT1E7RTJENU5KO0loRTJPSSwwQkFUUTtJQVVSLDRCQVJxQjtFSDgyTzNCO0FBQ0Y7O0FtRW5sUEk7RWhFdU9FLCtCQUpjO0VBS2Qsb0NBSnVCO0FIbzNPN0I7QVE1M09RO0UyRDVOSjtJaEUyT0ksMEJBVFE7SUFVUiw0QkFScUI7RUh5M08zQjtBQUNGOztBbUU5bFBJO0VoRXVPRSwwQkFKYztFQUtkLDRCQUp1QjtBSCszTzdCO0FRdjRPUTtFMkQ1Tko7SWhFMk9JLDBCQVRRO0lBVVIsMkJBUnFCO0VIbzRPM0I7QUFDRjs7QW1Fem1QSTtFaEV1T0UsOEJBSmM7RUFLZCxvQ0FKdUI7QUgwNE83QjtBUWw1T1E7RTJENU5KO0loRTJPSSwwQkFUUTtJQVVSLDJCQVJxQjtFSCs0TzNCO0FBQ0Y7O0FtRXRtUEU7RWhFNkJBLDJCQUFBO0FINmtQRjs7QW1FdG1QRTtFaEVtQ0EsMkJBQUE7QUh1a1BGOztBbUVwbVBFO0VoRThDQSw2Q0FBQTtBSDBqUEY7O0FtRXBtUEU7RWhFd0RBLGdDQUFBO0VBR0Esb0NBQUE7QUg4aVBGOzs7QW9FM29QRTtF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O0ExRW8xUEo7QTBFajFQRTtFQUNFLFVBQUE7QTFFbTFQSiIsImZpbGUiOiJzcmMvbWFpbi9yZXNvdXJjZXMvc2Nzcy9tYWluLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG46cm9vdCB7XG4gIC0tZ292dWstZnJvbnRlbmQtdmVyc2lvbjogXCI1LjExLjBcIjtcbiAgLS1nb3Z1ay1icmVha3BvaW50LW1vYmlsZTogMjByZW07XG4gIC0tZ292dWstZnJvbnRlbmQtYnJlYWtwb2ludC1tb2JpbGU6IHZhcigtLWdvdnVrLWJyZWFrcG9pbnQtbW9iaWxlKTtcbiAgLS1nb3Z1ay1icmVha3BvaW50LXRhYmxldDogNDAuMDYyNXJlbTtcbiAgLS1nb3Z1ay1mcm9udGVuZC1icmVha3BvaW50LXRhYmxldDogdmFyKC0tZ292dWstYnJlYWtwb2ludC10YWJsZXQpO1xuICAtLWdvdnVrLWJyZWFrcG9pbnQtZGVza3RvcDogNDguMDYyNXJlbTtcbiAgLS1nb3Z1ay1mcm9udGVuZC1icmVha3BvaW50LWRlc2t0b3A6IHZhcigtLWdvdnVrLWJyZWFrcG9pbnQtZGVza3RvcCk7XG59XG5cblxuLmdvdnVrLWxpbmsge1xuICBmb250LWZhbWlseTogXCJHRFMgVHJhbnNwb3J0XCIsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IG1heCgxcHgsIC4wNjI1cmVtKTtcbiAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAwLjE1NzhlbTtcbn1cbi8qISBDb3B5cmlnaHQgKGMpIDIwMTEgYnkgTWFyZ2FyZXQgQ2FsdmVydCAmIEhlbnJpayBLdWJlbC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4gVGhlIGZvbnQgaGFzIGJlZW4gY3VzdG9taXNlZCBmb3IgZXhjbHVzaXZlIHVzZSBvbiBnb3YudWsuIFRoaXMgY3V0IGlzIG5vdCBjb21tZXJjaWFsbHkgYXZhaWxhYmxlLiAqLyAvKiBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIHNjc3MvY29tbWVudC1uby1sb3VkICAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkdEUyBUcmFuc3BvcnRcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBzcmM6IHVybChcIi9hc3NldHMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9hc3NldHMvZm9udHMvbGlnaHQtOTRhMDdlMDZhMS12Mi53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiL2Fzc2V0cy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2Fzc2V0cy9mb250cy9saWdodC1mNTkxYjEzZjdkLXYyLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC1kaXNwbGF5OiBmYWxsYmFjaztcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJHRFMgVHJhbnNwb3J0XCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHNyYzogdXJsKFwiL2Fzc2V0cy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2Fzc2V0cy9mb250cy9ib2xkLWI1NDJiZWIyNzQtdjIud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi9hc3NldHMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9hc3NldHMvZm9udHMvYm9sZC1hZmZhOTY1NzFkLXYyLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC1kaXNwbGF5OiBmYWxsYmFjaztcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1saW5rIHtcbiAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgfVxufVxuLmdvdnVrLWxpbms6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiBtYXgoM3B4LCAuMTg3NXJlbSwgLjEyZW0pO1xuICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwLWluazogbm9uZTtcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lO1xuICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBub25lO1xuICB0ZXh0LWRlY29yYXRpb24tc2tpcDogbm9uZTtcbn1cbi5nb3Z1ay1saW5rOmZvY3VzIHtcbiAgb3V0bGluZTogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzBiMGMwYztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZGQwMDtcbiAgYm94LXNoYWRvdzogMCAtMnB4ICNmZmRkMDAsIDAgNHB4ICMwYjBjMGM7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbkBzdXBwb3J0cyBub3QgKHRleHQtd3JhcDogYmFsYW5jZSkge1xuICAuZ292dWstbGluazpmb2N1cyB7XG4gICAgLXdlYmtpdC1ib3gtZGVjb3JhdGlvbi1icmVhazogY2xvbmU7XG4gICAgYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lO1xuICB9XG59XG4uZ292dWstbGluazpsaW5rIHtcbiAgY29sb3I6ICMxZDcwYjg7XG59XG4uZ292dWstbGluazp2aXNpdGVkIHtcbiAgY29sb3I6ICM0YzJjOTI7XG59XG4uZ292dWstbGluazpob3ZlciB7XG4gIGNvbG9yOiAjMDAzMDc4O1xufVxuLmdvdnVrLWxpbms6YWN0aXZlIHtcbiAgY29sb3I6ICMwYjBjMGM7XG59XG4uZ292dWstbGluazpmb2N1cyB7XG4gIGNvbG9yOiAjMGIwYzBjO1xufVxuQG1lZGlhIHByaW50IHtcbiAgW2hyZWZePVwiL1wiXS5nb3Z1ay1saW5rOjphZnRlciwgW2hyZWZePVwiaHR0cDovL1wiXS5nb3Z1ay1saW5rOjphZnRlciwgW2hyZWZePVwiaHR0cHM6Ly9cIl0uZ292dWstbGluazo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xuICAgIGZvbnQtc2l6ZTogOTAlO1xuICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgfVxufVxuXG4uZ292dWstbGluay0tbXV0ZWQ6bGluaywgLmdvdnVrLWxpbmstLW11dGVkOnZpc2l0ZWQge1xuICBjb2xvcjogIzUwNWE1Zjtcbn1cbi5nb3Z1ay1saW5rLS1tdXRlZDpob3ZlciwgLmdvdnVrLWxpbmstLW11dGVkOmFjdGl2ZSB7XG4gIGNvbG9yOiAjMGIwYzBjO1xufVxuLmdvdnVrLWxpbmstLW11dGVkOmZvY3VzIHtcbiAgY29sb3I6ICMwYjBjMGM7XG59XG5cbi5nb3Z1ay1saW5rLS10ZXh0LWNvbG91cjpsaW5rLCAuZ292dWstbGluay0tdGV4dC1jb2xvdXI6dmlzaXRlZCB7XG4gIGNvbG9yOiAjMGIwYzBjO1xufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWxpbmstLXRleHQtY29sb3VyOmxpbmssIC5nb3Z1ay1saW5rLS10ZXh0LWNvbG91cjp2aXNpdGVkIHtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgfVxufVxuLmdvdnVrLWxpbmstLXRleHQtY29sb3VyOmhvdmVyIHtcbiAgY29sb3I6IHJnYmEoMTEsIDEyLCAxMiwgMC45OSk7XG59XG4uZ292dWstbGluay0tdGV4dC1jb2xvdXI6YWN0aXZlLCAuZ292dWstbGluay0tdGV4dC1jb2xvdXI6Zm9jdXMge1xuICBjb2xvcjogIzBiMGMwYztcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1saW5rLS10ZXh0LWNvbG91cjphY3RpdmUsIC5nb3Z1ay1saW5rLS10ZXh0LWNvbG91cjpmb2N1cyB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gIH1cbn1cblxuLmdvdnVrLWxpbmstLWludmVyc2U6bGluaywgLmdvdnVrLWxpbmstLWludmVyc2U6dmlzaXRlZCB7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuLmdvdnVrLWxpbmstLWludmVyc2U6aG92ZXIsIC5nb3Z1ay1saW5rLS1pbnZlcnNlOmFjdGl2ZSB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTkpO1xufVxuLmdvdnVrLWxpbmstLWludmVyc2U6Zm9jdXMge1xuICBjb2xvcjogIzBiMGMwYztcbn1cblxuLmdvdnVrLWxpbmstLW5vLXVuZGVybGluZTpub3QoOmhvdmVyKTpub3QoOmFjdGl2ZSkge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5nb3Z1ay1saW5rLS1uby12aXNpdGVkLXN0YXRlOmxpbmsge1xuICBjb2xvcjogIzFkNzBiODtcbn1cbi5nb3Z1ay1saW5rLS1uby12aXNpdGVkLXN0YXRlOnZpc2l0ZWQge1xuICBjb2xvcjogIzFkNzBiODtcbn1cbi5nb3Z1ay1saW5rLS1uby12aXNpdGVkLXN0YXRlOmhvdmVyIHtcbiAgY29sb3I6ICMwMDMwNzg7XG59XG4uZ292dWstbGluay0tbm8tdmlzaXRlZC1zdGF0ZTphY3RpdmUge1xuICBjb2xvcjogIzBiMGMwYztcbn1cbi5nb3Z1ay1saW5rLS1uby12aXNpdGVkLXN0YXRlOmZvY3VzIHtcbiAgY29sb3I6ICMwYjBjMGM7XG59XG5cbi5nb3Z1ay1saW5rLWltYWdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsaW5lLWhlaWdodDogMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmdvdnVrLWxpbmstaW1hZ2U6Zm9jdXMge1xuICBvdXRsaW5lOiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDRweCAjZmZkZDAwLCAwIDAgMCA4cHggIzBiMGMwYztcbn1cblxuXG4uZ292dWstbGlzdCB7XG4gIGZvbnQtZmFtaWx5OiBcIkdEUyBUcmFuc3BvcnRcIiwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMzE1Nzg5NDczNztcbiAgY29sb3I6ICMwYjBjMGM7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWxpc3Qge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstbGlzdCB7XG4gICAgZm9udC1zaXplOiAxNHB0O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstbGlzdCB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWxpc3Qge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cbn1cbi5nb3Z1ay1saXN0IC5nb3Z1ay1saXN0IHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbn1cblxuLmdvdnVrLWxpc3QgPiBsaSB7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuLmdvdnVrLWxpc3QtLWJ1bGxldCB7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xufVxuXG4uZ292dWstbGlzdC0tbnVtYmVyIHtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBsaXN0LXN0eWxlLXR5cGU6IGRlY2ltYWw7XG59XG5cbi5nb3Z1ay1saXN0LS1idWxsZXQgPiBsaSxcbi5nb3Z1ay1saXN0LS1udW1iZXIgPiBsaSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1saXN0LS1idWxsZXQgPiBsaSxcbiAgLmdvdnVrLWxpc3QtLW51bWJlciA+IGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIH1cbn1cblxuLmdvdnVrLWxpc3QtLXNwYWNlZCA+IGxpIHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWxpc3QtLXNwYWNlZCA+IGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICB9XG59XG5cblxuLmdvdnVrLWhlYWRpbmcteGwge1xuICBjb2xvcjogIzBiMGMwYztcbiAgZm9udC1mYW1pbHk6IFwiR0RTIFRyYW5zcG9ydFwiLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMDkzNzU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWhlYWRpbmcteGwge1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstaGVhZGluZy14bCB7XG4gICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWhlYWRpbmcteGwge1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICBsaW5lLWhlaWdodDogMS4wNDE2NjY2NjY3O1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstaGVhZGluZy14bCB7XG4gICAgZm9udC1zaXplOiAzMnB0O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1oZWFkaW5nLXhsIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICB9XG59XG5cbi5nb3Z1ay1oZWFkaW5nLWwge1xuICBjb2xvcjogIzBiMGMwYztcbiAgZm9udC1mYW1pbHk6IFwiR0RTIFRyYW5zcG9ydFwiLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMS42ODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4xMTExMTExMTExO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1oZWFkaW5nLWwge1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstaGVhZGluZy1sIHtcbiAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstaGVhZGluZy1sIHtcbiAgICBmb250LXNpemU6IDIuMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMTExMTExMTExMTtcbiAgfVxufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWhlYWRpbmctbCB7XG4gICAgZm9udC1zaXplOiAyNHB0O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjA1O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1oZWFkaW5nLWwge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cbn1cblxuLmdvdnVrLWhlYWRpbmctbSB7XG4gIGNvbG9yOiAjMGIwYzBjO1xuICBmb250LWZhbWlseTogXCJHRFMgVHJhbnNwb3J0XCIsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAxLjMxMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjE5MDQ3NjE5MDU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWhlYWRpbmctbSB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1oZWFkaW5nLW0ge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1oZWFkaW5nLW0ge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstaGVhZGluZy1tIHtcbiAgICBmb250LXNpemU6IDE4cHQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWhlYWRpbmctbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxufVxuXG4uZ292dWstaGVhZGluZy1zIHtcbiAgY29sb3I6ICMwYjBjMGM7XG4gIGZvbnQtZmFtaWx5OiBcIkdEUyBUcmFuc3BvcnRcIiwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMzE1Nzg5NDczNztcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstaGVhZGluZy1zIHtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgfVxufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWhlYWRpbmctcyB7XG4gICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIH1cbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1oZWFkaW5nLXMge1xuICAgIGZvbnQtc2l6ZTogMTRwdDtcbiAgICBsaW5lLWhlaWdodDogMS4xNTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstaGVhZGluZy1zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG59XG5cbi5nb3Z1ay1jYXB0aW9uLXhsIHtcbiAgZm9udC1mYW1pbHk6IFwiR0RTIFRyYW5zcG9ydFwiLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMS4zMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS4xOTA0NzYxOTA1O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICBjb2xvcjogIzUwNWE1Zjtcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1jYXB0aW9uLXhsIHtcbiAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstY2FwdGlvbi14bCB7XG4gICAgZm9udC1zaXplOiAxLjY4NzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMTExMTExMTExMTtcbiAgfVxufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWNhcHRpb24teGwge1xuICAgIGZvbnQtc2l6ZTogMThwdDtcbiAgICBsaW5lLWhlaWdodDogMS4xNTtcbiAgfVxufVxuXG4uZ292dWstY2FwdGlvbi1sIHtcbiAgZm9udC1mYW1pbHk6IFwiR0RTIFRyYW5zcG9ydFwiLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMS4zMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS4xOTA0NzYxOTA1O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICBjb2xvcjogIzUwNWE1Zjtcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1jYXB0aW9uLWwge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1jYXB0aW9uLWwge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstY2FwdGlvbi1sIHtcbiAgICBmb250LXNpemU6IDE4cHQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWNhcHRpb24tbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4uZ292dWstY2FwdGlvbi1tIHtcbiAgZm9udC1mYW1pbHk6IFwiR0RTIFRyYW5zcG9ydFwiLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4zMTU3ODk0NzM3O1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICM1MDVhNWY7XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstY2FwdGlvbi1tIHtcbiAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgfVxufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWNhcHRpb24tbSB7XG4gICAgZm9udC1zaXplOiAxNHB0O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICB9XG59XG5cbi5nb3Z1ay1ib2R5LWxlYWQsIC5nb3Z1ay1ib2R5LWwge1xuICBjb2xvcjogIzBiMGMwYztcbiAgZm9udC1mYW1pbHk6IFwiR0RTIFRyYW5zcG9ydFwiLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMS4zMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS4xOTA0NzYxOTA1O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWJvZHktbGVhZCwgLmdvdnVrLWJvZHktbCB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1ib2R5LWxlYWQsIC5nb3Z1ay1ib2R5LWwge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1ib2R5LWxlYWQsIC5nb3Z1ay1ib2R5LWwge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstYm9keS1sZWFkLCAuZ292dWstYm9keS1sIHtcbiAgICBmb250LXNpemU6IDE4cHQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWJvZHktbGVhZCwgLmdvdnVrLWJvZHktbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxufVxuXG4uZ292dWstYm9keSwgLmdvdnVrLWJvZHktbSB7XG4gIGNvbG9yOiAjMGIwYzBjO1xuICBmb250LWZhbWlseTogXCJHRFMgVHJhbnNwb3J0XCIsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxLjE4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjMxNTc4OTQ3Mzc7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstYm9keSwgLmdvdnVrLWJvZHktbSB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1ib2R5LCAuZ292dWstYm9keS1tIHtcbiAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgfVxufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWJvZHksIC5nb3Z1ay1ib2R5LW0ge1xuICAgIGZvbnQtc2l6ZTogMTRwdDtcbiAgICBsaW5lLWhlaWdodDogMS4xNTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstYm9keSwgLmdvdnVrLWJvZHktbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxufVxuXG4uZ292dWstYm9keS1zIHtcbiAgY29sb3I6ICMwYjBjMGM7XG4gIGZvbnQtZmFtaWx5OiBcIkdEUyBUcmFuc3BvcnRcIiwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWJvZHktcyB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1ib2R5LXMge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstYm9keS1zIHtcbiAgICBmb250LXNpemU6IDE0cHQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstYm9keS1zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG59XG5cbi5nb3Z1ay1ib2R5LXhzIHtcbiAgY29sb3I6ICMwYjBjMGM7XG4gIGZvbnQtZmFtaWx5OiBcIkdEUyBUcmFuc3BvcnRcIiwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS40Mjg1NzE0Mjg2O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWJvZHkteHMge1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstYm9keS14cyB7XG4gICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIH1cbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1ib2R5LXhzIHtcbiAgICBmb250LXNpemU6IDEycHQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstYm9keS14cyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxufVxuXG4uZ292dWstYm9keS1sICsgLmdvdnVrLWhlYWRpbmctbCwgLmdvdnVrLWJvZHktbGVhZCArIC5nb3Z1ay1oZWFkaW5nLWwge1xuICBwYWRkaW5nLXRvcDogNXB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstYm9keS1sICsgLmdvdnVrLWhlYWRpbmctbCwgLmdvdnVrLWJvZHktbGVhZCArIC5nb3Z1ay1oZWFkaW5nLWwge1xuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICB9XG59XG5cbi5nb3Z1ay1ib2R5LW0gKyAuZ292dWstaGVhZGluZy1sLCAuZ292dWstYm9keSArIC5nb3Z1ay1oZWFkaW5nLWwsXG4uZ292dWstYm9keS1zICsgLmdvdnVrLWhlYWRpbmctbCxcbi5nb3Z1ay1saXN0ICsgLmdvdnVrLWhlYWRpbmctbCB7XG4gIHBhZGRpbmctdG9wOiAxNXB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstYm9keS1tICsgLmdvdnVrLWhlYWRpbmctbCwgLmdvdnVrLWJvZHkgKyAuZ292dWstaGVhZGluZy1sLFxuICAuZ292dWstYm9keS1zICsgLmdvdnVrLWhlYWRpbmctbCxcbiAgLmdvdnVrLWxpc3QgKyAuZ292dWstaGVhZGluZy1sIHtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgfVxufVxuXG4uZ292dWstYm9keS1tICsgLmdvdnVrLWhlYWRpbmctbSwgLmdvdnVrLWJvZHkgKyAuZ292dWstaGVhZGluZy1tLFxuLmdvdnVrLWJvZHktcyArIC5nb3Z1ay1oZWFkaW5nLW0sXG4uZ292dWstbGlzdCArIC5nb3Z1ay1oZWFkaW5nLW0sXG4uZ292dWstYm9keS1tICsgLmdvdnVrLWhlYWRpbmctcyxcbi5nb3Z1ay1ib2R5ICsgLmdvdnVrLWhlYWRpbmctcyxcbi5nb3Z1ay1ib2R5LXMgKyAuZ292dWstaGVhZGluZy1zLFxuLmdvdnVrLWxpc3QgKyAuZ292dWstaGVhZGluZy1zIHtcbiAgcGFkZGluZy10b3A6IDVweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWJvZHktbSArIC5nb3Z1ay1oZWFkaW5nLW0sIC5nb3Z1ay1ib2R5ICsgLmdvdnVrLWhlYWRpbmctbSxcbiAgLmdvdnVrLWJvZHktcyArIC5nb3Z1ay1oZWFkaW5nLW0sXG4gIC5nb3Z1ay1saXN0ICsgLmdvdnVrLWhlYWRpbmctbSxcbiAgLmdvdnVrLWJvZHktbSArIC5nb3Z1ay1oZWFkaW5nLXMsXG4gIC5nb3Z1ay1ib2R5ICsgLmdvdnVrLWhlYWRpbmctcyxcbiAgLmdvdnVrLWJvZHktcyArIC5nb3Z1ay1oZWFkaW5nLXMsXG4gIC5nb3Z1ay1saXN0ICsgLmdvdnVrLWhlYWRpbmctcyB7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7XG4gIH1cbn1cblxuXG4uZ292dWstc2VjdGlvbi1icmVhayB7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG4uZ292dWstc2VjdGlvbi1icmVhay0teGwge1xuICBtYXJnaW4tdG9wOiAzMHB4O1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstc2VjdGlvbi1icmVhay0teGwge1xuICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLXNlY3Rpb24tYnJlYWstLXhsIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICB9XG59XG5cbi5nb3Z1ay1zZWN0aW9uLWJyZWFrLS1sIHtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLXNlY3Rpb24tYnJlYWstLWwge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLXNlY3Rpb24tYnJlYWstLWwge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cbn1cblxuLmdvdnVrLXNlY3Rpb24tYnJlYWstLW0ge1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstc2VjdGlvbi1icmVhay0tbSB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstc2VjdGlvbi1icmVhay0tbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxufVxuXG4uZ292dWstc2VjdGlvbi1icmVhay0tdmlzaWJsZSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYjFiNGI2O1xufVxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cbi5nb3Z1ay1idXR0b24tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1idXR0b24tZ3JvdXAge1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIH1cbn1cbi5nb3Z1ay1idXR0b24tZ3JvdXAgLmdvdnVrLWxpbmsge1xuICBmb250LWZhbWlseTogXCJHRFMgVHJhbnNwb3J0XCIsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxLjE4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstYnV0dG9uLWdyb3VwIC5nb3Z1ay1saW5rIHtcbiAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgfVxufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWJ1dHRvbi1ncm91cCAuZ292dWstbGluayB7XG4gICAgZm9udC1zaXplOiAxNHB0O1xuICAgIGxpbmUtaGVpZ2h0OiAxOXB4O1xuICB9XG59XG4uZ292dWstYnV0dG9uLWdyb3VwIC5nb3Z1ay1idXR0b24ge1xuICBtYXJnaW4tYm90dG9tOiAxN3B4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstYnV0dG9uLWdyb3VwIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xNXB4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbiAgfVxuICAuZ292dWstYnV0dG9uLWdyb3VwIC5nb3Z1ay1idXR0b24sXG4gIC5nb3Z1ay1idXR0b24tZ3JvdXAgLmdvdnVrLWxpbmsge1xuICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgfVxuICAuZ292dWstYnV0dG9uLWdyb3VwIC5nb3Z1ay1saW5rIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG59XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cbi5nb3Z1ay1mb3JtLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cbi5nb3Z1ay1mb3JtLWdyb3VwOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjbGVhcjogYm90aDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWZvcm0tZ3JvdXAge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cbn1cbi5nb3Z1ay1mb3JtLWdyb3VwIC5nb3Z1ay1mb3JtLWdyb3VwOmxhc3Qtb2YtdHlwZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5nb3Z1ay1mb3JtLWdyb3VwLS1lcnJvciB7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbiAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCAjZDQzNTFjO1xufVxuLmdvdnVrLWZvcm0tZ3JvdXAtLWVycm9yIC5nb3Z1ay1mb3JtLWdyb3VwIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4uZ292dWstZ3JpZC1yb3cge1xuICBtYXJnaW4tcmlnaHQ6IC0xNXB4O1xuICBtYXJnaW4tbGVmdDogLTE1cHg7XG59XG4uZ292dWstZ3JpZC1yb3c6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uZ292dWstZ3JpZC1jb2x1bW4tb25lLXF1YXJ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMCAxNXB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstZ3JpZC1jb2x1bW4tb25lLXF1YXJ0ZXIge1xuICAgIHdpZHRoOiAyNSU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbn1cblxuLmdvdnVrLWdyaWQtY29sdW1uLW9uZS10aGlyZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwIDE1cHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1ncmlkLWNvbHVtbi1vbmUtdGhpcmQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxufVxuXG4uZ292dWstZ3JpZC1jb2x1bW4tb25lLWhhbGYge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMCAxNXB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstZ3JpZC1jb2x1bW4tb25lLWhhbGYge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbn1cblxuLmdvdnVrLWdyaWQtY29sdW1uLXR3by10aGlyZHMge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMCAxNXB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstZ3JpZC1jb2x1bW4tdHdvLXRoaXJkcyB7XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG59XG5cbi5nb3Z1ay1ncmlkLWNvbHVtbi10aHJlZS1xdWFydGVycyB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwIDE1cHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1ncmlkLWNvbHVtbi10aHJlZS1xdWFydGVycyB7XG4gICAgd2lkdGg6IDc1JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxufVxuXG4uZ292dWstZ3JpZC1jb2x1bW4tZnVsbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwIDE1cHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1ncmlkLWNvbHVtbi1mdWxsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxufVxuXG4uZ292dWstZ3JpZC1jb2x1bW4tb25lLXF1YXJ0ZXItZnJvbS1kZXNrdG9wIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZzogMCAxNXB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAuZ292dWstZ3JpZC1jb2x1bW4tb25lLXF1YXJ0ZXItZnJvbS1kZXNrdG9wIHtcbiAgICB3aWR0aDogMjUlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG59XG5cbi5nb3Z1ay1ncmlkLWNvbHVtbi1vbmUtdGhpcmQtZnJvbS1kZXNrdG9wIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZzogMCAxNXB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAuZ292dWstZ3JpZC1jb2x1bW4tb25lLXRoaXJkLWZyb20tZGVza3RvcCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG59XG5cbi5nb3Z1ay1ncmlkLWNvbHVtbi1vbmUtaGFsZi1mcm9tLWRlc2t0b3Age1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiAwIDE1cHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gIC5nb3Z1ay1ncmlkLWNvbHVtbi1vbmUtaGFsZi1mcm9tLWRlc2t0b3Age1xuICAgIHdpZHRoOiA1MCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbn1cblxuLmdvdnVrLWdyaWQtY29sdW1uLXR3by10aGlyZHMtZnJvbS1kZXNrdG9wIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZzogMCAxNXB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAuZ292dWstZ3JpZC1jb2x1bW4tdHdvLXRoaXJkcy1mcm9tLWRlc2t0b3Age1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxufVxuXG4uZ292dWstZ3JpZC1jb2x1bW4tdGhyZWUtcXVhcnRlcnMtZnJvbS1kZXNrdG9wIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZzogMCAxNXB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAuZ292dWstZ3JpZC1jb2x1bW4tdGhyZWUtcXVhcnRlcnMtZnJvbS1kZXNrdG9wIHtcbiAgICB3aWR0aDogNzUlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG59XG5cbi5nb3Z1ay1ncmlkLWNvbHVtbi1mdWxsLWZyb20tZGVza3RvcCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDAgMTVweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWdyaWQtY29sdW1uLWZ1bGwtZnJvbS1kZXNrdG9wIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxufVxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4uZ292dWstbWFpbi13cmFwcGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLW1haW4td3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDQwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gIH1cbn1cblxuLmdvdnVrLW1haW4td3JhcHBlci0tYXV0by1zcGFjaW5nOmZpcnN0LWNoaWxkLFxuLmdvdnVrLW1haW4td3JhcHBlci0tbCB7XG4gIHBhZGRpbmctdG9wOiAzMHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstbWFpbi13cmFwcGVyLS1hdXRvLXNwYWNpbmc6Zmlyc3QtY2hpbGQsXG4gIC5nb3Z1ay1tYWluLXdyYXBwZXItLWwge1xuICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICB9XG59XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cbi5nb3Z1ay10ZW1wbGF0ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmM2YyZjE7XG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLW1vei10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICB0ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xufVxuLmdvdnVrLXRlbXBsYXRlLS1yZWJyYW5kZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjQzLjcsIDI0Ny44NSwgMjUxLjQ1KTtcbn1cblxuQHN1cHBvcnRzIChwb3NpdGlvbjogLXdlYmtpdC1zdGlja3kpIG9yIChwb3NpdGlvbjogc3RpY2t5KSB7XG4gIC5nb3Z1ay10ZW1wbGF0ZSB7XG4gICAgc2Nyb2xsLXBhZGRpbmctdG9wOiA2MHB4O1xuICB9XG4gIC5nb3Z1ay10ZW1wbGF0ZTpub3QoOmhhcyguZ292dWstZXhpdC10aGlzLXBhZ2UpKSB7XG4gICAgc2Nyb2xsLXBhZGRpbmctdG9wOiAwO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIHtcbiAgLmdvdnVrLXRlbXBsYXRlIHtcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gIH1cbn1cblxuLmdvdnVrLXRlbXBsYXRlX19ib2R5IHtcbiAgbWFyZ2luOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xufVxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4uZ292dWstd2lkdGgtY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiA5NjBweDtcbiAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICBtYXJnaW4tbGVmdDogMTVweDtcbn1cbkBzdXBwb3J0cyAobWFyZ2luOiBtYXgoY2FsYygwcHgpKSkge1xuICAuZ292dWstd2lkdGgtY29udGFpbmVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IG1heCgxNXB4LCBjYWxjKDE1cHggKyBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KSkpO1xuICAgIG1hcmdpbi1sZWZ0OiBtYXgoMTVweCwgY2FsYygxNXB4ICsgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KSkpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay13aWR0aC1jb250YWluZXIge1xuICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgICBtYXJnaW4tbGVmdDogMzBweDtcbiAgfVxuICBAc3VwcG9ydHMgKG1hcmdpbjogbWF4KGNhbGMoMHB4KSkpIHtcbiAgICAuZ292dWstd2lkdGgtY29udGFpbmVyIHtcbiAgICAgIG1hcmdpbi1yaWdodDogbWF4KDMwcHgsIGNhbGMoMTVweCArIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpKSk7XG4gICAgICBtYXJnaW4tbGVmdDogbWF4KDMwcHgsIGNhbGMoMTVweCArIGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCkpKTtcbiAgICB9XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMDIwcHgpIHtcbiAgLmdvdnVrLXdpZHRoLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG4gIEBzdXBwb3J0cyAobWFyZ2luOiBtYXgoY2FsYygwcHgpKSkge1xuICAgIC5nb3Z1ay13aWR0aC1jb250YWluZXIge1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgfVxuICB9XG59XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuLmdvdnVrLWFjY29yZGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1hY2NvcmRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cbn1cblxuLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAxNXB4O1xufVxuXG4uZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWhlYWRpbmcge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLXRvcDogMTVweDtcbiAgcGFkZGluZy1ib3R0b206IDE1cHg7XG59XG5cbi5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tYnV0dG9uIHtcbiAgZm9udC1mYW1pbHk6IFwiR0RTIFRyYW5zcG9ydFwiLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMS4zMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS4xOTA0NzYxOTA1O1xuICBjb2xvcjogIzBiMGMwYztcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctdG9wOiAxNXB4O1xufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1idXR0b24ge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tYnV0dG9uIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yNTtcbiAgfVxufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1idXR0b24ge1xuICAgIGZvbnQtc2l6ZTogMThwdDtcbiAgICBsaW5lLWhlaWdodDogMS4xNTtcbiAgfVxufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1idXR0b24ge1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICB9XG59XG5cbi5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tY29udGVudCA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstYWNjb3JkaW9uIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNiMWI0YjY7XG59XG4uZ292dWstZnJvbnRlbmQtc3VwcG9ydGVkIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24ge1xuICBwYWRkaW5nLXRvcDogMDtcbn1cbi5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1jb250ZW50IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZy10b3A6IDE1cHg7XG4gIHBhZGRpbmctYm90dG9tOiAzMHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstZnJvbnRlbmQtc3VwcG9ydGVkIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tY29udGVudCB7XG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gIH1cbn1cbi5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1jb250ZW50W2hpZGRlbl0ge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG5Ac3VwcG9ydHMgKGNvbnRlbnQtdmlzaWJpbGl0eTogaGlkZGVuKSB7XG4gIC5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1jb250ZW50W2hpZGRlbl0ge1xuICAgIGNvbnRlbnQtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGluaGVyaXQ7XG4gIH1cbn1cbi5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi0tZXhwYW5kZWQgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1jb250ZW50IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uZ292dWstZnJvbnRlbmQtc3VwcG9ydGVkIC5nb3Z1ay1hY2NvcmRpb25fX3Nob3ctYWxsIHtcbiAgZm9udC1mYW1pbHk6IFwiR0RTIFRyYW5zcG9ydFwiLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4zMTU3ODk0NzM3O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIG1hcmdpbi1ib3R0b206IDlweDtcbiAgcGFkZGluZzogNXB4IDJweCA1cHggMDtcbiAgYm9yZGVyLXdpZHRoOiAwO1xuICBjb2xvcjogIzFkNzBiODtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstZnJvbnRlbmQtc3VwcG9ydGVkIC5nb3Z1ay1hY2NvcmRpb25fX3Nob3ctYWxsIHtcbiAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgfVxufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstYWNjb3JkaW9uX19zaG93LWFsbCB7XG4gICAgZm9udC1zaXplOiAxNHB0O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLWFjY29yZGlvbl9fc2hvdy1hbGwge1xuICAgIG1hcmdpbi1ib3R0b206IDE0cHg7XG4gIH1cbn1cbi5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLWFjY29yZGlvbl9fc2hvdy1hbGw6Oi1tb3otZm9jdXMtaW5uZXIge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG59XG4uZ292dWstZnJvbnRlbmQtc3VwcG9ydGVkIC5nb3Z1ay1hY2NvcmRpb25fX3Nob3ctYWxsOmhvdmVyIHtcbiAgY29sb3I6ICMwYjBjMGM7XG4gIGJhY2tncm91bmQ6ICNmM2YyZjE7XG4gIGJveC1zaGFkb3c6IDAgLTJweCAjZjNmMmYxLCAwIDRweCAjZjNmMmYxO1xufVxuLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstYWNjb3JkaW9uX19zaG93LWFsbDpob3ZlciAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLXRvZ2dsZS10ZXh0IHtcbiAgY29sb3I6ICMwYjBjMGM7XG59XG4uZ292dWstZnJvbnRlbmQtc3VwcG9ydGVkIC5nb3Z1ay1hY2NvcmRpb25fX3Nob3ctYWxsOmhvdmVyIC5nb3Z1ay1hY2NvcmRpb24tbmF2X19jaGV2cm9uIHtcbiAgY29sb3I6ICMwYjBjMGM7XG4gIGJhY2tncm91bmQ6ICMwYjBjMGM7XG59XG4uZ292dWstZnJvbnRlbmQtc3VwcG9ydGVkIC5nb3Z1ay1hY2NvcmRpb25fX3Nob3ctYWxsOmhvdmVyIC5nb3Z1ay1hY2NvcmRpb24tbmF2X19jaGV2cm9uOjphZnRlciB7XG4gIGNvbG9yOiAjZjNmMmYxO1xufVxuLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstYWNjb3JkaW9uX19zaG93LWFsbDpmb2N1cyB7XG4gIG91dGxpbmU6IDNweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICMwYjBjMGM7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmRkMDA7XG4gIGJveC1zaGFkb3c6IDAgLTJweCAjZmZkZDAwLCAwIDRweCAjMGIwYzBjO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5Ac3VwcG9ydHMgbm90ICh0ZXh0LXdyYXA6IGJhbGFuY2UpIHtcbiAgLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstYWNjb3JkaW9uX19zaG93LWFsbDpmb2N1cyB7XG4gICAgLXdlYmtpdC1ib3gtZGVjb3JhdGlvbi1icmVhazogY2xvbmU7XG4gICAgYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lO1xuICB9XG59XG4uZ292dWstZnJvbnRlbmQtc3VwcG9ydGVkIC5nb3Z1ay1hY2NvcmRpb25fX3Nob3ctYWxsOmZvY3VzIC5nb3Z1ay1hY2NvcmRpb24tbmF2X19jaGV2cm9uIHtcbiAgYmFja2dyb3VuZDogIzBiMGMwYztcbn1cbi5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLWFjY29yZGlvbl9fc2hvdy1hbGw6Zm9jdXMgLmdvdnVrLWFjY29yZGlvbi1uYXZfX2NoZXZyb246OmFmdGVyIHtcbiAgY29sb3I6ICNmZmRkMDA7XG59XG4uZ292dWstZnJvbnRlbmQtc3VwcG9ydGVkIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24taGVhZGluZyB7XG4gIHBhZGRpbmc6IDA7XG59XG4uZ292dWstZnJvbnRlbmQtc3VwcG9ydGVkIC5nb3Z1ay1hY2NvcmRpb24tbmF2X19jaGV2cm9uIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxLjI1cmVtO1xuICBoZWlnaHQ6IDEuMjVyZW07XG4gIGJvcmRlcjogMC4wNjI1cmVtIHNvbGlkO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4uZ292dWstZnJvbnRlbmQtc3VwcG9ydGVkIC5nb3Z1ay1hY2NvcmRpb24tbmF2X19jaGV2cm9uOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMC4zMTI1cmVtO1xuICBsZWZ0OiAwLjM3NXJlbTtcbiAgd2lkdGg6IDAuMzc1cmVtO1xuICBoZWlnaHQ6IDAuMzc1cmVtO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICBib3JkZXItdG9wOiAwLjEyNXJlbSBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0OiAwLjEyNXJlbSBzb2xpZDtcbn1cbi5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLWFjY29yZGlvbi1uYXZfX2NoZXZyb24tLWRvd24ge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xufVxuLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWJ1dHRvbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxMHB4IDAgMDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2IxYjRiNjtcbiAgYm9yZGVyLWJvdHRvbTogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICMwYjBjMGM7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstZnJvbnRlbmQtc3VwcG9ydGVkIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tYnV0dG9uIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgfVxufVxuLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWJ1dHRvbjphY3RpdmUge1xuICBjb2xvcjogIzBiMGMwYztcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cbi5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1idXR0b246aG92ZXIge1xuICBjb2xvcjogIzBiMGMwYztcbiAgYmFja2dyb3VuZDogI2YzZjJmMTtcbn1cbi5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1idXR0b246aG92ZXIgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi10b2dnbGUtdGV4dCB7XG4gIGNvbG9yOiAjMGIwYzBjO1xufVxuLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWJ1dHRvbjpob3ZlciAuZ292dWstYWNjb3JkaW9uLW5hdl9fY2hldnJvbiB7XG4gIGNvbG9yOiAjMGIwYzBjO1xuICBiYWNrZ3JvdW5kOiAjMGIwYzBjO1xufVxuLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWJ1dHRvbjpob3ZlciAuZ292dWstYWNjb3JkaW9uLW5hdl9fY2hldnJvbjo6YWZ0ZXIge1xuICBjb2xvcjogI2YzZjJmMTtcbn1cbi5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1idXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xufVxuLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWJ1dHRvbjpmb2N1cyAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWhlYWRpbmctdGV4dC1mb2N1cyxcbi5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1idXR0b246Zm9jdXMgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1zdW1tYXJ5LWZvY3VzLFxuLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWJ1dHRvbjpmb2N1cyAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLXRvZ2dsZS1mb2N1cyB7XG4gIG91dGxpbmU6IDNweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICMwYjBjMGM7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmRkMDA7XG4gIGJveC1zaGFkb3c6IDAgLTJweCAjZmZkZDAwLCAwIDRweCAjMGIwYzBjO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5Ac3VwcG9ydHMgbm90ICh0ZXh0LXdyYXA6IGJhbGFuY2UpIHtcbiAgLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWJ1dHRvbjpmb2N1cyAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWhlYWRpbmctdGV4dC1mb2N1cyxcbiAgLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWJ1dHRvbjpmb2N1cyAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLXN1bW1hcnktZm9jdXMsXG4gIC5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1idXR0b246Zm9jdXMgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi10b2dnbGUtZm9jdXMge1xuICAgIC13ZWJraXQtYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lO1xuICAgIGJveC1kZWNvcmF0aW9uLWJyZWFrOiBjbG9uZTtcbiAgfVxufVxuLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWJ1dHRvbjpmb2N1cyAuZ292dWstYWNjb3JkaW9uLW5hdl9fY2hldnJvbiB7XG4gIGNvbG9yOiAjMGIwYzBjO1xuICBiYWNrZ3JvdW5kOiAjMGIwYzBjO1xufVxuLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWJ1dHRvbjpmb2N1cyAuZ292dWstYWNjb3JkaW9uLW5hdl9fY2hldnJvbjo6YWZ0ZXIge1xuICBjb2xvcjogI2ZmZGQwMDtcbn1cbi5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1idXR0b246Oi1tb3otZm9jdXMtaW5uZXIge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG59XG4uZ292dWstZnJvbnRlbmQtc3VwcG9ydGVkIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tLWV4cGFuZGVkIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tYnV0dG9uIHtcbiAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi0tZXhwYW5kZWQgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1idXR0b24ge1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICB9XG59XG4uZ292dWstZnJvbnRlbmQtc3VwcG9ydGVkIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tYnV0dG9uOmZvY3VzIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tdG9nZ2xlLWZvY3VzIHtcbiAgcGFkZGluZy1ib3R0b206IDNweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWJ1dHRvbjpmb2N1cyAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLXRvZ2dsZS1mb2N1cyB7XG4gICAgcGFkZGluZy1ib3R0b206IDJweDtcbiAgfVxufVxuLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLXRvZ2dsZSxcbi5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1oZWFkaW5nLXRleHQsXG4uZ292dWstZnJvbnRlbmQtc3VwcG9ydGVkIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAxM3B4O1xufVxuLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLXRvZ2dsZSAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWhlYWRpbmctdGV4dC1mb2N1cyxcbi5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi10b2dnbGUgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1zdW1tYXJ5LWZvY3VzLFxuLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLXRvZ2dsZSAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLXRvZ2dsZS1mb2N1cyxcbi5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1oZWFkaW5nLXRleHQgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1oZWFkaW5nLXRleHQtZm9jdXMsXG4uZ292dWstZnJvbnRlbmQtc3VwcG9ydGVkIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24taGVhZGluZy10ZXh0IC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tc3VtbWFyeS1mb2N1cyxcbi5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1oZWFkaW5nLXRleHQgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi10b2dnbGUtZm9jdXMsXG4uZ292dWstZnJvbnRlbmQtc3VwcG9ydGVkIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tc3VtbWFyeSAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWhlYWRpbmctdGV4dC1mb2N1cyxcbi5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1zdW1tYXJ5IC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tc3VtbWFyeS1mb2N1cyxcbi5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1zdW1tYXJ5IC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tdG9nZ2xlLWZvY3VzIHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLXRvZ2dsZSB7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4zMTU3ODk0NzM3O1xuICBmb250LXdlaWdodDogNDAwO1xuICBjb2xvcjogIzFkNzBiODtcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi10b2dnbGUge1xuICAgIGZvbnQtc2l6ZTogMTRwdDtcbiAgICBsaW5lLWhlaWdodDogMS4xNTtcbiAgfVxufVxuLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstYWNjb3JkaW9uX19zaG93LWFsbC10ZXh0LFxuLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLXRvZ2dsZS10ZXh0IHtcbiAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstYWNjb3JkaW9uX19zaG93LWFsbDpob3ZlciAuZ292dWstYWNjb3JkaW9uLW5hdl9fY2hldnJvbixcbiAgLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWJ1dHRvbjpob3ZlciAuZ292dWstYWNjb3JkaW9uLW5hdl9fY2hldnJvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstYWNjb3JkaW9uX19zaG93LWFsbDpmb2N1cyAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWhlYWRpbmctdGV4dC1mb2N1cyxcbiAgLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstYWNjb3JkaW9uX19zaG93LWFsbDpmb2N1cyAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLXN1bW1hcnktZm9jdXMsXG4gIC5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLWFjY29yZGlvbl9fc2hvdy1hbGw6Zm9jdXMgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi10b2dnbGUtZm9jdXMsXG4gIC5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLWFjY29yZGlvbl9fc2hvdy1hbGw6Zm9jdXMgLmdvdnVrLWFjY29yZGlvbi1uYXZfX2NoZXZyb24sXG4gIC5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1idXR0b246Zm9jdXMgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1oZWFkaW5nLXRleHQtZm9jdXMsXG4gIC5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1idXR0b246Zm9jdXMgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1zdW1tYXJ5LWZvY3VzLFxuICAuZ292dWstZnJvbnRlbmQtc3VwcG9ydGVkIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tYnV0dG9uOmZvY3VzIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tdG9nZ2xlLWZvY3VzLFxuICAuZ292dWstZnJvbnRlbmQtc3VwcG9ydGVkIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tYnV0dG9uOmZvY3VzIC5nb3Z1ay1hY2NvcmRpb24tbmF2X19jaGV2cm9uIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuQG1lZGlhIChob3Zlcjogbm9uZSkge1xuICAuZ292dWstZnJvbnRlbmQtc3VwcG9ydGVkIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24taGVhZGVyOmhvdmVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjYjFiNGI2O1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDAgMCAjMWQ3MGI4O1xuICB9XG4gIC5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1oZWFkZXI6aG92ZXIgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1idXR0b24ge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICNiMWI0YjY7XG4gIH1cbn1cblxuXG4uZ292dWstYmFjay1saW5rIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS4yNTtcbiAgZm9udC1mYW1pbHk6IFwiR0RTIFRyYW5zcG9ydFwiLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiBtYXgoMXB4LCAuMDYyNXJlbSk7XG4gIHRleHQtdW5kZXJsaW5lLW9mZnNldDogMC4xNTc4ZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDAuODc1ZW07XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstYmFjay1saW5rIHtcbiAgICBmb250LXNpemU6IDE0cHQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgfVxufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWJhY2stbGluayB7XG4gICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIH1cbn1cbi5nb3Z1ay1iYWNrLWxpbms6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiBtYXgoM3B4LCAuMTg3NXJlbSwgLjEyZW0pO1xuICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwLWluazogbm9uZTtcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lO1xuICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBub25lO1xuICB0ZXh0LWRlY29yYXRpb24tc2tpcDogbm9uZTtcbn1cbi5nb3Z1ay1iYWNrLWxpbms6Zm9jdXMge1xuICBvdXRsaW5lOiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjMGIwYzBjO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZkZDAwO1xuICBib3gtc2hhZG93OiAwIC0ycHggI2ZmZGQwMCwgMCA0cHggIzBiMGMwYztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuQHN1cHBvcnRzIG5vdCAodGV4dC13cmFwOiBiYWxhbmNlKSB7XG4gIC5nb3Z1ay1iYWNrLWxpbms6Zm9jdXMge1xuICAgIC13ZWJraXQtYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lO1xuICAgIGJveC1kZWNvcmF0aW9uLWJyZWFrOiBjbG9uZTtcbiAgfVxufVxuLmdvdnVrLWJhY2stbGluazpsaW5rLCAuZ292dWstYmFjay1saW5rOnZpc2l0ZWQge1xuICBjb2xvcjogIzBiMGMwYztcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1iYWNrLWxpbms6bGluaywgLmdvdnVrLWJhY2stbGluazp2aXNpdGVkIHtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgfVxufVxuLmdvdnVrLWJhY2stbGluazpob3ZlciB7XG4gIGNvbG9yOiByZ2JhKDExLCAxMiwgMTIsIDAuOTkpO1xufVxuLmdvdnVrLWJhY2stbGluazphY3RpdmUsIC5nb3Z1ay1iYWNrLWxpbms6Zm9jdXMge1xuICBjb2xvcjogIzBiMGMwYztcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1iYWNrLWxpbms6YWN0aXZlLCAuZ292dWstYmFjay1saW5rOmZvY3VzIHtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgfVxufVxuXG4uZ292dWstYmFjay1saW5rOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMC4xODc1ZW07XG4gIHdpZHRoOiAwLjQzNzVlbTtcbiAgaGVpZ2h0OiAwLjQzNzVlbTtcbiAgbWFyZ2luOiBhdXRvIDA7XG4gIHRyYW5zZm9ybTogcm90YXRlKDIyNWRlZyk7XG4gIGJvcmRlcjogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMXB4IDFweCAwIDA7XG4gIGJvcmRlci1jb2xvcjogIzUwNWE1Zjtcbn1cbkBzdXBwb3J0cyAoYm9yZGVyLXdpZHRoOiBtYXgoMHB4KSkge1xuICAuZ292dWstYmFjay1saW5rOjpiZWZvcmUge1xuICAgIGJvcmRlci13aWR0aDogbWF4KDFweCwgMC4wNjI1ZW0pIG1heCgxcHgsIDAuMDYyNWVtKSAwIDA7XG4gICAgZm9udC1zaXplOiBtYXgoMTZweCwgMWVtKTtcbiAgfVxufVxuXG4uZ292dWstYmFjay1saW5rOmZvY3VzOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICMwYjBjMGM7XG59XG5cbi5nb3Z1ay1iYWNrLWxpbms6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0xNHB4O1xuICByaWdodDogMDtcbiAgYm90dG9tOiAtMTRweDtcbiAgbGVmdDogMDtcbn1cblxuLmdvdnVrLWJhY2stbGluay0taW52ZXJzZTpsaW5rLCAuZ292dWstYmFjay1saW5rLS1pbnZlcnNlOnZpc2l0ZWQge1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cbi5nb3Z1ay1iYWNrLWxpbmstLWludmVyc2U6aG92ZXIsIC5nb3Z1ay1iYWNrLWxpbmstLWludmVyc2U6YWN0aXZlIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45OSk7XG59XG4uZ292dWstYmFjay1saW5rLS1pbnZlcnNlOmZvY3VzIHtcbiAgY29sb3I6ICMwYjBjMGM7XG59XG4uZ292dWstYmFjay1saW5rLS1pbnZlcnNlOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6IGN1cnJlbnRjb2xvcjtcbn1cblxuXG4uZ292dWstYnJlYWRjcnVtYnMge1xuICBmb250LWZhbWlseTogXCJHRFMgVHJhbnNwb3J0XCIsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS4yNTtcbiAgY29sb3I6ICMwYjBjMGM7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstYnJlYWRjcnVtYnMge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstYnJlYWRjcnVtYnMge1xuICAgIGZvbnQtc2l6ZTogMTRwdDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstYnJlYWRjcnVtYnMge1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICB9XG59XG5cbi5nb3Z1ay1icmVhZGNydW1ic19fbGlzdCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuLmdvdnVrLWJyZWFkY3J1bWJzX19saXN0OjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjbGVhcjogYm90aDtcbn1cblxuLmdvdnVrLWJyZWFkY3J1bWJzX19saXN0LWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICBtYXJnaW4tbGVmdDogMC42MjVlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjk3ODQzNzVlbTtcbiAgZmxvYXQ6IGxlZnQ7XG59XG4uZ292dWstYnJlYWRjcnVtYnNfX2xpc3QtaXRlbTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IC0wLjIwNjg3NWVtO1xuICB3aWR0aDogMC40Mzc1ZW07XG4gIGhlaWdodDogMC40Mzc1ZW07XG4gIG1hcmdpbjogYXV0byAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIGJvcmRlcjogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMXB4IDFweCAwIDA7XG4gIGJvcmRlci1jb2xvcjogIzUwNWE1Zjtcbn1cbkBzdXBwb3J0cyAoYm9yZGVyLXdpZHRoOiBtYXgoMHB4KSkge1xuICAuZ292dWstYnJlYWRjcnVtYnNfX2xpc3QtaXRlbTo6YmVmb3JlIHtcbiAgICBib3JkZXItd2lkdGg6IG1heCgxcHgsIDAuMDYyNWVtKSBtYXgoMXB4LCAwLjA2MjVlbSkgMCAwO1xuICAgIGZvbnQtc2l6ZTogbWF4KDE2cHgsIDFlbSk7XG4gIH1cbn1cbi5nb3Z1ay1icmVhZGNydW1ic19fbGlzdC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cbi5nb3Z1ay1icmVhZGNydW1ic19fbGlzdC1pdGVtOmZpcnN0LWNoaWxkOjpiZWZvcmUge1xuICBjb250ZW50OiBub25lO1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZ292dWstYnJlYWRjcnVtYnNfX2xpbmsge1xuICBmb250LWZhbWlseTogXCJHRFMgVHJhbnNwb3J0XCIsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IG1heCgxcHgsIC4wNjI1cmVtKTtcbiAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAwLjE1NzhlbTtcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1icmVhZGNydW1ic19fbGluayB7XG4gICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIH1cbn1cbi5nb3Z1ay1icmVhZGNydW1ic19fbGluazpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IG1heCgzcHgsIC4xODc1cmVtLCAuMTJlbSk7XG4gIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lO1xuICB0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IG5vbmU7XG4gIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6IG5vbmU7XG4gIHRleHQtZGVjb3JhdGlvbi1za2lwOiBub25lO1xufVxuLmdvdnVrLWJyZWFkY3J1bWJzX19saW5rOmZvY3VzIHtcbiAgb3V0bGluZTogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzBiMGMwYztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZGQwMDtcbiAgYm94LXNoYWRvdzogMCAtMnB4ICNmZmRkMDAsIDAgNHB4ICMwYjBjMGM7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbkBzdXBwb3J0cyBub3QgKHRleHQtd3JhcDogYmFsYW5jZSkge1xuICAuZ292dWstYnJlYWRjcnVtYnNfX2xpbms6Zm9jdXMge1xuICAgIC13ZWJraXQtYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lO1xuICAgIGJveC1kZWNvcmF0aW9uLWJyZWFrOiBjbG9uZTtcbiAgfVxufVxuLmdvdnVrLWJyZWFkY3J1bWJzX19saW5rOmxpbmssIC5nb3Z1ay1icmVhZGNydW1ic19fbGluazp2aXNpdGVkIHtcbiAgY29sb3I6ICMwYjBjMGM7XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstYnJlYWRjcnVtYnNfX2xpbms6bGluaywgLmdvdnVrLWJyZWFkY3J1bWJzX19saW5rOnZpc2l0ZWQge1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICB9XG59XG4uZ292dWstYnJlYWRjcnVtYnNfX2xpbms6aG92ZXIge1xuICBjb2xvcjogcmdiYSgxMSwgMTIsIDEyLCAwLjk5KTtcbn1cbi5nb3Z1ay1icmVhZGNydW1ic19fbGluazphY3RpdmUsIC5nb3Z1ay1icmVhZGNydW1ic19fbGluazpmb2N1cyB7XG4gIGNvbG9yOiAjMGIwYzBjO1xufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWJyZWFkY3J1bWJzX19saW5rOmFjdGl2ZSwgLmdvdnVrLWJyZWFkY3J1bWJzX19saW5rOmZvY3VzIHtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDAuMDUyNWVtKSB7XG4gIC5nb3Z1ay1icmVhZGNydW1icy0tY29sbGFwc2Utb24tbW9iaWxlIC5nb3Z1ay1icmVhZGNydW1ic19fbGlzdC1pdGVtIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5nb3Z1ay1icmVhZGNydW1icy0tY29sbGFwc2Utb24tbW9iaWxlIC5nb3Z1ay1icmVhZGNydW1ic19fbGlzdC1pdGVtOmZpcnN0LWNoaWxkLCAuZ292dWstYnJlYWRjcnVtYnMtLWNvbGxhcHNlLW9uLW1vYmlsZSAuZ292dWstYnJlYWRjcnVtYnNfX2xpc3QtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbiAgLmdvdnVrLWJyZWFkY3J1bWJzLS1jb2xsYXBzZS1vbi1tb2JpbGUgLmdvdnVrLWJyZWFkY3J1bWJzX19saXN0LWl0ZW06OmJlZm9yZSB7XG4gICAgdG9wOiAwLjM3NWVtO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICAuZ292dWstYnJlYWRjcnVtYnMtLWNvbGxhcHNlLW9uLW1vYmlsZSAuZ292dWstYnJlYWRjcnVtYnNfX2xpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cblxuLmdvdnVrLWJyZWFkY3J1bWJzLS1pbnZlcnNlIHtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG4uZ292dWstYnJlYWRjcnVtYnMtLWludmVyc2UgLmdvdnVrLWJyZWFkY3J1bWJzX19saW5rOmxpbmssIC5nb3Z1ay1icmVhZGNydW1icy0taW52ZXJzZSAuZ292dWstYnJlYWRjcnVtYnNfX2xpbms6dmlzaXRlZCB7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuLmdvdnVrLWJyZWFkY3J1bWJzLS1pbnZlcnNlIC5nb3Z1ay1icmVhZGNydW1ic19fbGluazpob3ZlciwgLmdvdnVrLWJyZWFkY3J1bWJzLS1pbnZlcnNlIC5nb3Z1ay1icmVhZGNydW1ic19fbGluazphY3RpdmUge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjk5KTtcbn1cbi5nb3Z1ay1icmVhZGNydW1icy0taW52ZXJzZSAuZ292dWstYnJlYWRjcnVtYnNfX2xpbms6Zm9jdXMge1xuICBjb2xvcjogIzBiMGMwYztcbn1cbi5nb3Z1ay1icmVhZGNydW1icy0taW52ZXJzZSAuZ292dWstYnJlYWRjcnVtYnNfX2xpc3QtaXRlbTo6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiBjdXJyZW50Y29sb3I7XG59XG5cblxuLmdvdnVrLWJ1dHRvbiB7XG4gIGZvbnQtZmFtaWx5OiBcIkdEUyBUcmFuc3BvcnRcIiwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMjJweDtcbiAgcGFkZGluZzogOHB4IDEwcHggN3B4O1xuICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDcwM2M7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDAgcmdiKDAsIDQ0LjgsIDI0KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1idXR0b24ge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstYnV0dG9uIHtcbiAgICBmb250LXNpemU6IDE0cHQ7XG4gICAgbGluZS1oZWlnaHQ6IDE5cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWJ1dHRvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzJweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstYnV0dG9uIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuLmdvdnVrLWJ1dHRvbjpsaW5rLCAuZ292dWstYnV0dG9uOnZpc2l0ZWQsIC5nb3Z1ay1idXR0b246YWN0aXZlLCAuZ292dWstYnV0dG9uOmhvdmVyIHtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5nb3Z1ay1idXR0b246Oi1tb3otZm9jdXMtaW5uZXIge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG59XG4uZ292dWstYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAsIDg5LjYsIDQ4KTtcbn1cbi5nb3Z1ay1idXR0b246YWN0aXZlIHtcbiAgdG9wOiAycHg7XG59XG4uZ292dWstYnV0dG9uOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjZmZkZDAwO1xuICBvdXRsaW5lOiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCAjZmZkZDAwO1xufVxuLmdvdnVrLWJ1dHRvbjpmb2N1czpub3QoOmFjdGl2ZSk6bm90KDpob3Zlcikge1xuICBib3JkZXItY29sb3I6ICNmZmRkMDA7XG4gIGNvbG9yOiAjMGIwYzBjO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZkZDAwO1xuICBib3gtc2hhZG93OiAwIDJweCAwICMwYjBjMGM7XG59XG4uZ292dWstYnV0dG9uOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0ycHg7XG4gIHJpZ2h0OiAtMnB4O1xuICBib3R0b206IC00cHg7XG4gIGxlZnQ6IC0ycHg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuLmdvdnVrLWJ1dHRvbjphY3RpdmU6OmJlZm9yZSB7XG4gIHRvcDogLTRweDtcbn1cblxuLmdvdnVrLWJ1dHRvbltkaXNhYmxlZF0ge1xuICBvcGFjaXR5OiAwLjU7XG59XG4uZ292dWstYnV0dG9uW2Rpc2FibGVkXTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDcwM2M7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG4uZ292dWstYnV0dG9uW2Rpc2FibGVkXTphY3RpdmUge1xuICB0b3A6IDA7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDAgcmdiKDAsIDQ0LjgsIDI0KTtcbn1cblxuLmdvdnVrLWJ1dHRvbi0tc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YzZjJmMTtcbiAgYm94LXNoYWRvdzogMCAycHggMCByZ2IoMTQ1LjgsIDE0NS4yLCAxNDQuNik7XG59XG4uZ292dWstYnV0dG9uLS1zZWNvbmRhcnksIC5nb3Z1ay1idXR0b24tLXNlY29uZGFyeTpsaW5rLCAuZ292dWstYnV0dG9uLS1zZWNvbmRhcnk6dmlzaXRlZCwgLmdvdnVrLWJ1dHRvbi0tc2Vjb25kYXJ5OmFjdGl2ZSwgLmdvdnVrLWJ1dHRvbi0tc2Vjb25kYXJ5OmhvdmVyIHtcbiAgY29sb3I6ICMwYjBjMGM7XG59XG4uZ292dWstYnV0dG9uLS1zZWNvbmRhcnk6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjE4LjcsIDIxNy44LCAyMTYuOSk7XG59XG4uZ292dWstYnV0dG9uLS1zZWNvbmRhcnk6aG92ZXJbZGlzYWJsZWRdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YzZjJmMTtcbn1cblxuLmdvdnVrLWJ1dHRvbi0td2FybmluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkNDM1MWM7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDAgcmdiKDg0LjgsIDIxLjIsIDExLjIpO1xufVxuLmdvdnVrLWJ1dHRvbi0td2FybmluZywgLmdvdnVrLWJ1dHRvbi0td2FybmluZzpsaW5rLCAuZ292dWstYnV0dG9uLS13YXJuaW5nOnZpc2l0ZWQsIC5nb3Z1ay1idXR0b24tLXdhcm5pbmc6YWN0aXZlLCAuZ292dWstYnV0dG9uLS13YXJuaW5nOmhvdmVyIHtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG4uZ292dWstYnV0dG9uLS13YXJuaW5nOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE2OS42LCA0Mi40LCAyMi40KTtcbn1cbi5nb3Z1ay1idXR0b24tLXdhcm5pbmc6aG92ZXJbZGlzYWJsZWRdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q0MzUxYztcbn1cblxuLmdvdnVrLWJ1dHRvbi0taW52ZXJzZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDAgcmdiKDIwLjMsIDc4LjQsIDEyOC44KTtcbn1cbi5nb3Z1ay1idXR0b24tLWludmVyc2UsIC5nb3Z1ay1idXR0b24tLWludmVyc2U6bGluaywgLmdvdnVrLWJ1dHRvbi0taW52ZXJzZTp2aXNpdGVkLCAuZ292dWstYnV0dG9uLS1pbnZlcnNlOmFjdGl2ZSwgLmdvdnVrLWJ1dHRvbi0taW52ZXJzZTpob3ZlciB7XG4gIGNvbG9yOiAjMWQ3MGI4O1xufVxuLmdvdnVrLWJ1dHRvbi0taW52ZXJzZTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyMzIuNCwgMjQwLjcsIDI0Ny45KTtcbn1cbi5nb3Z1ay1idXR0b24tLWludmVyc2U6aG92ZXJbZGlzYWJsZWRdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbn1cblxuLmdvdnVrLWJ1dHRvbi0tc3RhcnQge1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDEuMzEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBtaW4taGVpZ2h0OiBhdXRvO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWJ1dHRvbi0tc3RhcnQge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstYnV0dG9uLS1zdGFydCB7XG4gICAgZm9udC1zaXplOiAxOHB0O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG59XG5cbi5nb3Z1ay1idXR0b25fX3N0YXJ0LWljb24ge1xuICBtYXJnaW4tbGVmdDogNXB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmbGV4LXNocmluazogMDtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xuICBmb3JjZWQtY29sb3ItYWRqdXN0OiBhdXRvO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAuZ292dWstYnV0dG9uX19zdGFydC1pY29uIHtcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgfVxufVxuXG5cbi5nb3Z1ay1lcnJvci1tZXNzYWdlIHtcbiAgZm9udC1mYW1pbHk6IFwiR0RTIFRyYW5zcG9ydFwiLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4zMTU3ODk0NzM3O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgY2xlYXI6IGJvdGg7XG4gIGNvbG9yOiAjZDQzNTFjO1xufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWVycm9yLW1lc3NhZ2Uge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstZXJyb3ItbWVzc2FnZSB7XG4gICAgZm9udC1zaXplOiAxNHB0O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICB9XG59XG5cblxuLmdvdnVrLWhpbnQge1xuICBmb250LWZhbWlseTogXCJHRFMgVHJhbnNwb3J0XCIsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxLjE4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjMxNTc4OTQ3Mzc7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIGNvbG9yOiAjNTA1YTVmO1xufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWhpbnQge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstaGludCB7XG4gICAgZm9udC1zaXplOiAxNHB0O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICB9XG59XG5cbi5nb3Z1ay1sYWJlbDpub3QoLmdvdnVrLWxhYmVsLS1tKTpub3QoLmdvdnVrLWxhYmVsLS1sKTpub3QoLmdvdnVrLWxhYmVsLS14bCkgKyAuZ292dWstaGludCB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi5nb3Z1ay1maWVsZHNldF9fbGVnZW5kOm5vdCguZ292dWstZmllbGRzZXRfX2xlZ2VuZC0tbSk6bm90KC5nb3Z1ay1maWVsZHNldF9fbGVnZW5kLS1sKTpub3QoLmdvdnVrLWZpZWxkc2V0X19sZWdlbmQtLXhsKSArIC5nb3Z1ay1oaW50IHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLmdvdnVrLWZpZWxkc2V0X19sZWdlbmQgKyAuZ292dWstaGludCB7XG4gIG1hcmdpbi10b3A6IC01cHg7XG59XG5cblxuLmdvdnVrLWxhYmVsIHtcbiAgZm9udC1mYW1pbHk6IFwiR0RTIFRyYW5zcG9ydFwiLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4zMTU3ODk0NzM3O1xuICBjb2xvcjogIzBiMGMwYztcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1sYWJlbCB7XG4gICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIH1cbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1sYWJlbCB7XG4gICAgZm9udC1zaXplOiAxNHB0O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstbGFiZWwge1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICB9XG59XG5cbi5nb3Z1ay1sYWJlbC0teGwsXG4uZ292dWstbGFiZWwtLWwsXG4uZ292dWstbGFiZWwtLW0ge1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuXG4uZ292dWstbGFiZWwtLXhsIHtcbiAgZm9udC1zaXplOiAycmVtO1xuICBsaW5lLWhlaWdodDogMS4wOTM3NTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWxhYmVsLS14bCB7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjA0MTY2NjY2Njc7XG4gIH1cbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1sYWJlbC0teGwge1xuICAgIGZvbnQtc2l6ZTogMzJwdDtcbiAgICBsaW5lLWhlaWdodDogMS4xNTtcbiAgfVxufVxuXG4uZ292dWstbGFiZWwtLWwge1xuICBmb250LXNpemU6IDEuNjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTExMTExMTExMTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWxhYmVsLS1sIHtcbiAgICBmb250LXNpemU6IDIuMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMTExMTExMTExMTtcbiAgfVxufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWxhYmVsLS1sIHtcbiAgICBmb250LXNpemU6IDI0cHQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMDU7XG4gIH1cbn1cblxuLmdvdnVrLWxhYmVsLS1tIHtcbiAgZm9udC1zaXplOiAxLjMxMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjE5MDQ3NjE5MDU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1sYWJlbC0tbSB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1sYWJlbC0tbSB7XG4gICAgZm9udC1zaXplOiAxOHB0O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICB9XG59XG5cbi5nb3Z1ay1sYWJlbC0tcyB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi5nb3Z1ay1sYWJlbC13cmFwcGVyIHtcbiAgbWFyZ2luOiAwO1xufVxuXG5cblxuXG5cbi5nb3Z1ay10ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBcIkdEUyBUcmFuc3BvcnRcIiwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogNDBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgcGFkZGluZzogNXB4O1xuICByZXNpemU6IHZlcnRpY2FsO1xuICBib3JkZXI6IDJweCBzb2xpZCAjMGIwYzBjO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstdGV4dGFyZWEge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstdGV4dGFyZWEge1xuICAgIGZvbnQtc2l6ZTogMTRwdDtcbiAgICBsaW5lLWhlaWdodDogMS4yNTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstdGV4dGFyZWEge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cbn1cbi5nb3Z1ay10ZXh0YXJlYTpmb2N1cyB7XG4gIG91dGxpbmU6IDNweCBzb2xpZCAjZmZkZDAwO1xuICBvdXRsaW5lLW9mZnNldDogMDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMnB4O1xufVxuLmdvdnVrLXRleHRhcmVhOmRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC41O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5nb3Z1ay10ZXh0YXJlYS0tZXJyb3Ige1xuICBib3JkZXItY29sb3I6ICNkNDM1MWM7XG59XG4uZ292dWstdGV4dGFyZWEtLWVycm9yOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMGIwYzBjO1xufVxuXG5cbi5nb3Z1ay1jaGFyYWN0ZXItY291bnQge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstY2hhcmFjdGVyLWNvdW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB9XG59XG4uZ292dWstY2hhcmFjdGVyLWNvdW50IC5nb3Z1ay1mb3JtLWdyb3VwLFxuLmdvdnVrLWNoYXJhY3Rlci1jb3VudCAuZ292dWstdGV4dGFyZWEge1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG4uZ292dWstY2hhcmFjdGVyLWNvdW50IC5nb3Z1ay10ZXh0YXJlYS0tZXJyb3I6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICNkNDM1MWM7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDJweCAjZDQzNTFjO1xufVxuXG4uZ292dWstY2hhcmFjdGVyLWNvdW50X19tZXNzYWdlIHtcbiAgZm9udC12YXJpYW50LW51bWVyaWM6IHRhYnVsYXItbnVtcztcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5nb3Z1ay1jaGFyYWN0ZXItY291bnRfX21lc3NhZ2U6OmFmdGVyIHtcbiAgY29udGVudDogXCLigItcIjtcbn1cblxuLmdvdnVrLWNoYXJhY3Rlci1jb3VudF9fbWVzc2FnZS0tZGlzYWJsZWQge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cblxuXG4uZ292dWstZmllbGRzZXQge1xuICBtaW4td2lkdGg6IDA7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xufVxuLmdvdnVrLWZpZWxkc2V0OjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjbGVhcjogYm90aDtcbn1cblxuQHN1cHBvcnRzIG5vdCAoY2FyZXQtY29sb3I6IGF1dG8pIHtcbiAgLmdvdnVrLWZpZWxkc2V0LFxuICB4Oi1tb3otYW55LWxpbmsge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIH1cbn1cbi5nb3Z1ay1maWVsZHNldF9fbGVnZW5kIHtcbiAgZm9udC1mYW1pbHk6IFwiR0RTIFRyYW5zcG9ydFwiLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4zMTU3ODk0NzM3O1xuICBjb2xvcjogIzBiMGMwYztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZGlzcGxheTogdGFibGU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgcGFkZGluZzogMDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1maWVsZHNldF9fbGVnZW5kIHtcbiAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgfVxufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWZpZWxkc2V0X19sZWdlbmQge1xuICAgIGZvbnQtc2l6ZTogMTRwdDtcbiAgICBsaW5lLWhlaWdodDogMS4xNTtcbiAgfVxufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWZpZWxkc2V0X19sZWdlbmQge1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICB9XG59XG5cbi5nb3Z1ay1maWVsZHNldF9fbGVnZW5kLS14bCxcbi5nb3Z1ay1maWVsZHNldF9fbGVnZW5kLS1sLFxuLmdvdnVrLWZpZWxkc2V0X19sZWdlbmQtLW0ge1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuXG4uZ292dWstZmllbGRzZXRfX2xlZ2VuZC0teGwge1xuICBmb250LXNpemU6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjA5Mzc1O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstZmllbGRzZXRfX2xlZ2VuZC0teGwge1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICBsaW5lLWhlaWdodDogMS4wNDE2NjY2NjY3O1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstZmllbGRzZXRfX2xlZ2VuZC0teGwge1xuICAgIGZvbnQtc2l6ZTogMzJwdDtcbiAgICBsaW5lLWhlaWdodDogMS4xNTtcbiAgfVxufVxuXG4uZ292dWstZmllbGRzZXRfX2xlZ2VuZC0tbCB7XG4gIGZvbnQtc2l6ZTogMS42ODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4xMTExMTExMTExO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstZmllbGRzZXRfX2xlZ2VuZC0tbCB7XG4gICAgZm9udC1zaXplOiAyLjI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjExMTExMTExMTE7XG4gIH1cbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1maWVsZHNldF9fbGVnZW5kLS1sIHtcbiAgICBmb250LXNpemU6IDI0cHQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMDU7XG4gIH1cbn1cblxuLmdvdnVrLWZpZWxkc2V0X19sZWdlbmQtLW0ge1xuICBmb250LXNpemU6IDEuMzEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTkwNDc2MTkwNTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWZpZWxkc2V0X19sZWdlbmQtLW0ge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstZmllbGRzZXRfX2xlZ2VuZC0tbSB7XG4gICAgZm9udC1zaXplOiAxOHB0O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICB9XG59XG5cbi5nb3Z1ay1maWVsZHNldF9fbGVnZW5kLS1zIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLmdvdnVrLWZpZWxkc2V0X19oZWFkaW5nIHtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xufVxuXG5cblxuXG4uZ292dWstY2hlY2tib3hlc19faXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4uZ292dWstY2hlY2tib3hlc19faXRlbTpsYXN0LWNoaWxkLFxuLmdvdnVrLWNoZWNrYm94ZXNfX2l0ZW06bGFzdC1vZi10eXBlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmdvdnVrLWNoZWNrYm94ZXNfX2lucHV0IHtcbiAgei1pbmRleDogMTtcbiAgd2lkdGg6IDQ0cHg7XG4gIGhlaWdodDogNDRweDtcbiAgbWFyZ2luOiAwO1xuICBvcGFjaXR5OiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5nb3Z1ay1jaGVja2JveGVzX19sYWJlbCB7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA3NHB4KTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogN3B4IDE1cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG59XG5cbi5nb3Z1ay1jaGVja2JveGVzX19sYWJlbDo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDJweDtcbiAgbGVmdDogMnB4O1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBib3JkZXI6IDJweCBzb2xpZCBjdXJyZW50Y29sb3I7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4uZ292dWstY2hlY2tib3hlc19fbGFiZWw6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEzcHg7XG4gIGxlZnQ6IDEwcHg7XG4gIHdpZHRoOiAyM3B4O1xuICBoZWlnaHQ6IDEycHg7XG4gIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIGJvcmRlcjogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMCAwIDVweCA1cHg7XG4gIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICBvcGFjaXR5OiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLmdvdnVrLWNoZWNrYm94ZXNfX2hpbnQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IC01cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogNTlweDtcbn1cblxuLmdvdnVrLWxhYmVsOm5vdCguZ292dWstbGFiZWwtLW0pOm5vdCguZ292dWstbGFiZWwtLWwpOm5vdCguZ292dWstbGFiZWwtLXhsKSArIC5nb3Z1ay1jaGVja2JveGVzX19oaW50IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmdvdnVrLWNoZWNrYm94ZXNfX2lucHV0OmZvY3VzICsgLmdvdnVrLWNoZWNrYm94ZXNfX2xhYmVsOjpiZWZvcmUge1xuICBib3JkZXItd2lkdGg6IDRweDtcbiAgb3V0bGluZTogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBvdXRsaW5lLW9mZnNldDogMXB4O1xuICBib3gtc2hhZG93OiAwIDAgMCAzcHggI2ZmZGQwMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAuZ292dWstY2hlY2tib3hlc19faW5wdXQ6Zm9jdXMgKyAuZ292dWstY2hlY2tib3hlc19fbGFiZWw6OmJlZm9yZSB7XG4gICAgb3V0bGluZS1jb2xvcjogSGlnaGxpZ2h0O1xuICB9XG59XG5cbi5nb3Z1ay1jaGVja2JveGVzX19pbnB1dDpjaGVja2VkICsgLmdvdnVrLWNoZWNrYm94ZXNfX2xhYmVsOjphZnRlciB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5nb3Z1ay1jaGVja2JveGVzX19pbnB1dDpkaXNhYmxlZCxcbi5nb3Z1ay1jaGVja2JveGVzX19pbnB1dDpkaXNhYmxlZCArIC5nb3Z1ay1jaGVja2JveGVzX19sYWJlbCB7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5nb3Z1ay1jaGVja2JveGVzX19pbnB1dDpkaXNhYmxlZCArIC5nb3Z1ay1jaGVja2JveGVzX19sYWJlbCxcbi5nb3Z1ay1jaGVja2JveGVzX19pbnB1dDpkaXNhYmxlZCB+IC5nb3Z1ay1oaW50IHtcbiAgb3BhY2l0eTogMC41O1xufVxuXG4uZ292dWstY2hlY2tib3hlc19fZGl2aWRlciB7XG4gIGZvbnQtZmFtaWx5OiBcIkdEUyBUcmFuc3BvcnRcIiwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMzE1Nzg5NDczNztcbiAgY29sb3I6ICMwYjBjMGM7XG4gIHdpZHRoOiA0MHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstY2hlY2tib3hlc19fZGl2aWRlciB7XG4gICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIH1cbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1jaGVja2JveGVzX19kaXZpZGVyIHtcbiAgICBmb250LXNpemU6IDE0cHQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1jaGVja2JveGVzX19kaXZpZGVyIHtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgfVxufVxuXG4uZ292dWstY2hlY2tib3hlc19fY29uZGl0aW9uYWwge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICBtYXJnaW4tbGVmdDogMjBweDtcbiAgcGFkZGluZy1sZWZ0OiAzNXB4O1xuICBib3JkZXItbGVmdDogNHB4IHNvbGlkICNiMWI0YjY7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1jaGVja2JveGVzX19jb25kaXRpb25hbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxufVxuLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstY2hlY2tib3hlc19fY29uZGl0aW9uYWwtLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uZ292dWstY2hlY2tib3hlc19fY29uZGl0aW9uYWwgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5nb3Z1ay1jaGVja2JveGVzLS1zbWFsbCAuZ292dWstY2hlY2tib3hlc19faXRlbSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uZ292dWstY2hlY2tib3hlcy0tc21hbGwgLmdvdnVrLWNoZWNrYm94ZXNfX2lucHV0IHtcbiAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xufVxuLmdvdnVrLWNoZWNrYm94ZXMtLXNtYWxsIC5nb3Z1ay1jaGVja2JveGVzX19sYWJlbCB7XG4gIHBhZGRpbmctbGVmdDogMXB4O1xufVxuLmdvdnVrLWNoZWNrYm94ZXMtLXNtYWxsIC5nb3Z1ay1jaGVja2JveGVzX19sYWJlbDo6YmVmb3JlIHtcbiAgdG9wOiAxMHB4O1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xufVxuLmdvdnVrLWNoZWNrYm94ZXMtLXNtYWxsIC5nb3Z1ay1jaGVja2JveGVzX19sYWJlbDo6YWZ0ZXIge1xuICB0b3A6IDE3cHg7XG4gIGxlZnQ6IDZweDtcbiAgd2lkdGg6IDEycHg7XG4gIGhlaWdodDogNi41cHg7XG4gIGJvcmRlci13aWR0aDogMCAwIDNweCAzcHg7XG59XG4uZ292dWstY2hlY2tib3hlcy0tc21hbGwgLmdvdnVrLWNoZWNrYm94ZXNfX2hpbnQge1xuICBwYWRkaW5nLWxlZnQ6IDM0cHg7XG59XG4uZ292dWstY2hlY2tib3hlcy0tc21hbGwgLmdvdnVrLWNoZWNrYm94ZXNfX2NvbmRpdGlvbmFsIHtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbn1cbi5nb3Z1ay1jaGVja2JveGVzLS1zbWFsbCAuZ292dWstY2hlY2tib3hlc19fZGl2aWRlciB7XG4gIHdpZHRoOiAyNHB4O1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG4uZ292dWstY2hlY2tib3hlcy0tc21hbGwgLmdvdnVrLWNoZWNrYm94ZXNfX2l0ZW06aG92ZXIgLmdvdnVrLWNoZWNrYm94ZXNfX2lucHV0Om5vdCg6ZGlzYWJsZWQpICsgLmdvdnVrLWNoZWNrYm94ZXNfX2xhYmVsOjpiZWZvcmUge1xuICBvdXRsaW5lOiAzcHggZGFzaGVkIHRyYW5zcGFyZW50O1xuICBvdXRsaW5lLW9mZnNldDogMXB4O1xuICBib3gtc2hhZG93OiAwIDAgMCAxMHB4ICNiMWI0YjY7XG59XG4uZ292dWstY2hlY2tib3hlcy0tc21hbGwgLmdvdnVrLWNoZWNrYm94ZXNfX2l0ZW06aG92ZXIgLmdvdnVrLWNoZWNrYm94ZXNfX2lucHV0OmZvY3VzICsgLmdvdnVrLWNoZWNrYm94ZXNfX2xhYmVsOjpiZWZvcmUge1xuICBib3gtc2hhZG93OiAwIDAgMCAzcHggI2ZmZGQwMCwgMCAwIDAgMTBweCAjYjFiNGI2O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gIC5nb3Z1ay1jaGVja2JveGVzLS1zbWFsbCAuZ292dWstY2hlY2tib3hlc19faXRlbTpob3ZlciAuZ292dWstY2hlY2tib3hlc19faW5wdXQ6Zm9jdXMgKyAuZ292dWstY2hlY2tib3hlc19fbGFiZWw6OmJlZm9yZSB7XG4gICAgb3V0bGluZS1jb2xvcjogSGlnaGxpZ2h0O1xuICB9XG59XG5AbWVkaWEgKGhvdmVyOiBub25lKSwgKHBvaW50ZXI6IGNvYXJzZSkge1xuICAuZ292dWstY2hlY2tib3hlcy0tc21hbGwgLmdvdnVrLWNoZWNrYm94ZXNfX2l0ZW06aG92ZXIgLmdvdnVrLWNoZWNrYm94ZXNfX2lucHV0Om5vdCg6ZGlzYWJsZWQpICsgLmdvdnVrLWNoZWNrYm94ZXNfX2xhYmVsOjpiZWZvcmUge1xuICAgIGJveC1zaGFkb3c6IGluaXRpYWw7XG4gIH1cbiAgLmdvdnVrLWNoZWNrYm94ZXMtLXNtYWxsIC5nb3Z1ay1jaGVja2JveGVzX19pdGVtOmhvdmVyIC5nb3Z1ay1jaGVja2JveGVzX19pbnB1dDpmb2N1cyArIC5nb3Z1ay1jaGVja2JveGVzX19sYWJlbDo6YmVmb3JlIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAzcHggI2ZmZGQwMDtcbiAgfVxufVxuXG5cblxuLmdvdnVrLWNvb2tpZS1iYW5uZXIge1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgYm9yZGVyLWJvdHRvbTogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YzZjJmMTtcbn1cbi5nb3Z1ay10ZW1wbGF0ZS0tcmVicmFuZGVkIC5nb3Z1ay1jb29raWUtYmFubmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI0My43LCAyNDcuODUsIDI1MS40NSk7XG59XG5cbi5nb3Z1ay1jb29raWUtYmFubmVyW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZ292dWstY29va2llLWJhbm5lcl9fbWVzc2FnZSB7XG4gIG1hcmdpbi1ib3R0b206IC0xMHB4O1xufVxuLmdvdnVrLWNvb2tpZS1iYW5uZXJfX21lc3NhZ2VbaGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uZ292dWstY29va2llLWJhbm5lcl9fbWVzc2FnZTpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cblxuXG5cblxuXG4uZ292dWstaW5wdXQge1xuICBmb250LWZhbWlseTogXCJHRFMgVHJhbnNwb3J0XCIsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxLjE4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjMxNTc4OTQ3Mzc7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDIuNXJlbTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcGFkZGluZzogNXB4O1xuICBib3JkZXI6IDJweCBzb2xpZCAjMGIwYzBjO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstaW5wdXQge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstaW5wdXQge1xuICAgIGZvbnQtc2l6ZTogMTRwdDtcbiAgICBsaW5lLWhlaWdodDogMS4xNTtcbiAgfVxufVxuLmdvdnVrLWlucHV0OmZvY3VzIHtcbiAgb3V0bGluZTogM3B4IHNvbGlkICNmZmRkMDA7XG4gIG91dGxpbmUtb2Zmc2V0OiAwO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAycHg7XG59XG4uZ292dWstaW5wdXQ6ZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjU7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLmdvdnVrLWlucHV0Ojotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLFxuLmdvdnVrLWlucHV0Ojotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uIHtcbiAgbWFyZ2luOiAwO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi5nb3Z1ay1pbnB1dFt0eXBlPW51bWJlcl0ge1xuICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbn1cblxuLmdvdnVrLWlucHV0LS1lcnJvciB7XG4gIGJvcmRlci1jb2xvcjogI2Q0MzUxYztcbn1cbi5nb3Z1ay1pbnB1dC0tZXJyb3I6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMwYjBjMGM7XG59XG5cbi5nb3Z1ay1pbnB1dC0tZXh0cmEtbGV0dGVyLXNwYWNpbmcge1xuICBmb250LXZhcmlhbnQtbnVtZXJpYzogdGFidWxhci1udW1zO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xufVxuXG4uZ292dWstaW5wdXQtLXdpZHRoLTMwIHtcbiAgbWF4LXdpZHRoOiAyOS41ZW07XG59XG5cbi5nb3Z1ay1pbnB1dC0td2lkdGgtMjAge1xuICBtYXgtd2lkdGg6IDIwLjVlbTtcbn1cblxuLmdvdnVrLWlucHV0LS13aWR0aC0xMCB7XG4gIG1heC13aWR0aDogMTEuNWVtO1xufVxuXG4uZ292dWstaW5wdXQtLXdpZHRoLTUge1xuICBtYXgtd2lkdGg6IDUuNWVtO1xufVxuXG4uZ292dWstaW5wdXQtLXdpZHRoLTQge1xuICBtYXgtd2lkdGg6IDQuNWVtO1xufVxuXG4uZ292dWstaW5wdXQtLXdpZHRoLTMge1xuICBtYXgtd2lkdGg6IDMuNzVlbTtcbn1cblxuLmdvdnVrLWlucHV0LS13aWR0aC0yIHtcbiAgbWF4LXdpZHRoOiAyLjc1ZW07XG59XG5cbi5nb3Z1ay1pbnB1dF9fd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4uZ292dWstaW5wdXRfX3dyYXBwZXIgLmdvdnVrLWlucHV0IHtcbiAgZmxleDogMCAxIGF1dG87XG59XG4uZ292dWstaW5wdXRfX3dyYXBwZXIgLmdvdnVrLWlucHV0OmZvY3VzIHtcbiAgei1pbmRleDogMTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxOS45OWVtKSB7XG4gIC5nb3Z1ay1pbnB1dF9fd3JhcHBlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLmdvdnVrLWlucHV0X193cmFwcGVyIC5nb3Z1ay1pbnB1dCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5nb3Z1ay1pbnB1dF9fcHJlZml4LFxuLmdvdnVrLWlucHV0X19zdWZmaXgge1xuICBmb250LWZhbWlseTogXCJHRFMgVHJhbnNwb3J0XCIsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxLjE4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjMxNTc4OTQ3Mzc7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtaW4td2lkdGg6IDIuNXJlbTtcbiAgaGVpZ2h0OiAyLjVyZW07XG4gIHBhZGRpbmc6IDVweDtcbiAgYm9yZGVyOiAycHggc29saWQgIzBiMGMwYztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YzZjJmMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGZsZXg6IDAgMCBhdXRvO1xufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWlucHV0X19wcmVmaXgsXG4gIC5nb3Z1ay1pbnB1dF9fc3VmZml4IHtcbiAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgfVxufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWlucHV0X19wcmVmaXgsXG4gIC5nb3Z1ay1pbnB1dF9fc3VmZml4IHtcbiAgICBmb250LXNpemU6IDE0cHQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxOS45OWVtKSB7XG4gIC5nb3Z1ay1pbnB1dF9fcHJlZml4LFxuICAuZ292dWstaW5wdXRfX3N1ZmZpeCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDE5Ljk5ZW0pIHtcbiAgLmdvdnVrLWlucHV0X19wcmVmaXgge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAyMGVtKSB7XG4gIC5nb3Z1ay1pbnB1dF9fcHJlZml4IHtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDE5Ljk5ZW0pIHtcbiAgLmdvdnVrLWlucHV0X19zdWZmaXgge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAyMGVtKSB7XG4gIC5nb3Z1ay1pbnB1dF9fc3VmZml4IHtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgfVxufVxuXG5cblxuXG5cbi5nb3Z1ay1kYXRlLWlucHV0IHtcbiAgZm9udC1zaXplOiAwO1xufVxuLmdvdnVrLWRhdGUtaW5wdXQ6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uZ292dWstZGF0ZS1pbnB1dF9faXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uZ292dWstZGF0ZS1pbnB1dF9fbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmdvdnVrLWRhdGUtaW5wdXRfX2lucHV0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuXG4uZ292dWstZGV0YWlscyB7XG4gIGZvbnQtZmFtaWx5OiBcIkdEUyBUcmFuc3BvcnRcIiwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMzE1Nzg5NDczNztcbiAgY29sb3I6ICMwYjBjMGM7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWRldGFpbHMge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstZGV0YWlscyB7XG4gICAgZm9udC1zaXplOiAxNHB0O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstZGV0YWlscyB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWRldGFpbHMge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cbn1cblxuLmdvdnVrLWRldGFpbHNfX3N1bW1hcnkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmdvdnVrLWRldGFpbHNbb3Blbl0gLmdvdnVrLWRldGFpbHNfX3N1bW1hcnkge1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG5cbi5nb3Z1ay1kZXRhaWxzX19zdW1tYXJ5LXRleHQgPiA6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLmdvdnVrLWRldGFpbHNfX3N1bW1hcnktdGV4dCA+IDpvbmx5LWNoaWxkLFxuLmdvdnVrLWRldGFpbHNfX3N1bW1hcnktdGV4dCA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmdvdnVrLWRldGFpbHNfX3RleHQge1xuICBwYWRkaW5nLXRvcDogMTVweDtcbiAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbn1cblxuLmdvdnVrLWRldGFpbHNfX3RleHQgcCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi5nb3Z1ay1kZXRhaWxzX190ZXh0ID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5AbWVkaWEgc2NyZWVuXFwwICB7XG4gIC5nb3Z1ay1kZXRhaWxzIHtcbiAgICBib3JkZXItbGVmdDogMTBweCBzb2xpZCAjYjFiNGI2O1xuICB9XG4gIC5nb3Z1ay1kZXRhaWxzX19zdW1tYXJ5IHtcbiAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICB9XG4gIC5nb3Z1ay1kZXRhaWxzX19zdW1tYXJ5LXRleHQge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW5cXDAgIGFuZCAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWRldGFpbHNfX3N1bW1hcnktdGV4dCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxufVxuQHN1cHBvcnRzIG5vdCAoLW1zLWltZS1hbGlnbjogYXV0bykge1xuICAuZ292dWstZGV0YWlsc19fc3VtbWFyeSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAtd2Via2l0LWZpdC1jb250ZW50O1xuICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgY29sb3I6ICMxZDcwYjg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG4gIC5nb3Z1ay1kZXRhaWxzX19zdW1tYXJ5OmhvdmVyIHtcbiAgICBjb2xvcjogIzAwMzA3ODtcbiAgfVxuICAuZ292dWstZGV0YWlsc19fc3VtbWFyeTpmb2N1cyB7XG4gICAgb3V0bGluZTogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjMGIwYzBjO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmRkMDA7XG4gICAgYm94LXNoYWRvdzogMCAtMnB4ICNmZmRkMDAsIDAgNHB4ICMwYjBjMGM7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG4gIEBzdXBwb3J0cyBub3QgKHRleHQtd3JhcDogYmFsYW5jZSkge1xuICAgIC5nb3Z1ay1kZXRhaWxzX19zdW1tYXJ5OmZvY3VzIHtcbiAgICAgIC13ZWJraXQtYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lO1xuICAgICAgYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lO1xuICAgIH1cbiAgfVxuICAuZ292dWstZGV0YWlsc19fc3VtbWFyeS10ZXh0IHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiBtYXgoMXB4LCAuMDYyNXJlbSk7XG4gICAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAwLjE1NzhlbTtcbiAgfVxuICAuZ292dWstZGV0YWlsc19fc3VtbWFyeTpob3ZlciAuZ292dWstZGV0YWlsc19fc3VtbWFyeS10ZXh0IHtcbiAgICB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiBtYXgoM3B4LCAuMTg3NXJlbSwgLjEyZW0pO1xuICAgIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lO1xuICAgIHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogbm9uZTtcbiAgICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBub25lO1xuICAgIHRleHQtZGVjb3JhdGlvbi1za2lwOiBub25lO1xuICB9XG4gIC5nb3Z1ay1kZXRhaWxzX19zdW1tYXJ5OmZvY3VzIC5nb3Z1ay1kZXRhaWxzX19zdW1tYXJ5LXRleHQge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuICAuZ292dWstZGV0YWlsc19fc3VtbWFyeTo6LXdlYmtpdC1kZXRhaWxzLW1hcmtlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuZ292dWstZGV0YWlsc19fc3VtbWFyeTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0xcHg7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgLXdlYmtpdC1jbGlwLXBhdGg6IHBvbHlnb24oMCUgMCUsIDEwMCUgNTAlLCAwJSAxMDAlKTtcbiAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCUgMCUsIDEwMCUgNTAlLCAwJSAxMDAlKTtcbiAgICBib3JkZXItd2lkdGg6IDdweCAwIDdweCAxMi4xMjRweDtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogaW5oZXJpdDtcbiAgfVxuICAuZ292dWstZGV0YWlsc1tvcGVuXSA+IC5nb3Z1ay1kZXRhaWxzX19zdW1tYXJ5OjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgLXdlYmtpdC1jbGlwLXBhdGg6IHBvbHlnb24oMCUgMCUsIDUwJSAxMDAlLCAxMDAlIDAlKTtcbiAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCUgMCUsIDUwJSAxMDAlLCAxMDAlIDAlKTtcbiAgICBib3JkZXItd2lkdGg6IDEyLjEyNHB4IDdweCAwIDdweDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiBpbmhlcml0O1xuICB9XG4gIC5nb3Z1ay1kZXRhaWxzX190ZXh0IHtcbiAgICBib3JkZXItbGVmdDogNXB4IHNvbGlkICNiMWI0YjY7XG4gIH1cbn1cblxuXG5cbi5nb3Z1ay1lcnJvci1zdW1tYXJ5IHtcbiAgZm9udC1mYW1pbHk6IFwiR0RTIFRyYW5zcG9ydFwiLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4zMTU3ODk0NzM3O1xuICBjb2xvcjogIzBiMGMwYztcbiAgcGFkZGluZzogMTVweDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgYm9yZGVyOiA1cHggc29saWQgI2Q0MzUxYztcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1lcnJvci1zdW1tYXJ5IHtcbiAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgfVxufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWVycm9yLXN1bW1hcnkge1xuICAgIGZvbnQtc2l6ZTogMTRwdDtcbiAgICBsaW5lLWhlaWdodDogMS4xNTtcbiAgfVxufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWVycm9yLXN1bW1hcnkge1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1lcnJvci1zdW1tYXJ5IHtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1lcnJvci1zdW1tYXJ5IHtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICB9XG59XG4uZ292dWstZXJyb3Itc3VtbWFyeTpmb2N1cyB7XG4gIG91dGxpbmU6IDNweCBzb2xpZCAjZmZkZDAwO1xufVxuXG4uZ292dWstZXJyb3Itc3VtbWFyeV9fdGl0bGUge1xuICBmb250LXNpemU6IDEuMzEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTkwNDc2MTkwNTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWVycm9yLXN1bW1hcnlfX3RpdGxlIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yNTtcbiAgfVxufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWVycm9yLXN1bW1hcnlfX3RpdGxlIHtcbiAgICBmb250LXNpemU6IDE4cHQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWVycm9yLXN1bW1hcnlfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG59XG5cbi5nb3Z1ay1lcnJvci1zdW1tYXJ5X19ib2R5IHAge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLmdvdnVrLWVycm9yLXN1bW1hcnlfX2JvZHkgPiAqICsgKiB7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1lcnJvci1zdW1tYXJ5X19ib2R5ID4gKiArICoge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gIH1cbn1cbi5nb3Z1ay1lcnJvci1zdW1tYXJ5X19ib2R5ID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG5cbi5nb3Z1ay1lcnJvci1zdW1tYXJ5X19saXN0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmdvdnVrLWVycm9yLXN1bW1hcnlfX2xpc3QgbGk6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5nb3Z1ay1lcnJvci1zdW1tYXJ5X19saXN0IGEge1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LWZhbWlseTogXCJHRFMgVHJhbnNwb3J0XCIsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IG1heCgxcHgsIC4wNjI1cmVtKTtcbiAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAwLjE1NzhlbTtcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1lcnJvci1zdW1tYXJ5X19saXN0IGEge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICB9XG59XG4uZ292dWstZXJyb3Itc3VtbWFyeV9fbGlzdCBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVzczogbWF4KDNweCwgLjE4NzVyZW0sIC4xMmVtKTtcbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IG5vbmU7XG4gIHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogbm9uZTtcbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogbm9uZTtcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXA6IG5vbmU7XG59XG4uZ292dWstZXJyb3Itc3VtbWFyeV9fbGlzdCBhOmZvY3VzIHtcbiAgb3V0bGluZTogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzBiMGMwYztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZGQwMDtcbiAgYm94LXNoYWRvdzogMCAtMnB4ICNmZmRkMDAsIDAgNHB4ICMwYjBjMGM7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbkBzdXBwb3J0cyBub3QgKHRleHQtd3JhcDogYmFsYW5jZSkge1xuICAuZ292dWstZXJyb3Itc3VtbWFyeV9fbGlzdCBhOmZvY3VzIHtcbiAgICAtd2Via2l0LWJveC1kZWNvcmF0aW9uLWJyZWFrOiBjbG9uZTtcbiAgICBib3gtZGVjb3JhdGlvbi1icmVhazogY2xvbmU7XG4gIH1cbn1cbi5nb3Z1ay1lcnJvci1zdW1tYXJ5X19saXN0IGE6bGluaywgLmdvdnVrLWVycm9yLXN1bW1hcnlfX2xpc3QgYTp2aXNpdGVkIHtcbiAgY29sb3I6ICNkNDM1MWM7XG59XG4uZ292dWstZXJyb3Itc3VtbWFyeV9fbGlzdCBhOmhvdmVyIHtcbiAgY29sb3I6IHJnYigxNDguNCwgMzcuMSwgMTkuNik7XG59XG4uZ292dWstZXJyb3Itc3VtbWFyeV9fbGlzdCBhOmFjdGl2ZSB7XG4gIGNvbG9yOiAjZDQzNTFjO1xufVxuLmdvdnVrLWVycm9yLXN1bW1hcnlfX2xpc3QgYTpmb2N1cyB7XG4gIGNvbG9yOiAjMGIwYzBjO1xufVxuXG5cblxuLmdvdnVrLWV4aXQtdGhpcy1wYWdlIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgcG9zaXRpb246IC13ZWJraXQtc3RpY2t5O1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB6LWluZGV4OiAxMDAwO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstZXhpdC10aGlzLXBhZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWV4aXQtdGhpcy1wYWdlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cblxuLmdvdnVrLWV4aXQtdGhpcy1wYWdlX19idXR0b24ge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uZ292dWstZXhpdC10aGlzLXBhZ2VfX2luZGljYXRvciB7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5nb3Z1ay1leGl0LXRoaXMtcGFnZV9faW5kaWNhdG9yLS12aXNpYmxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5nb3Z1ay1leGl0LXRoaXMtcGFnZV9faW5kaWNhdG9yLWxpZ2h0IHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMC43NWVtO1xuICBoZWlnaHQ6IDAuNzVlbTtcbiAgbWFyZ2luOiAwIDAuMTI1ZW07XG4gIGJvcmRlci13aWR0aDogMnB4O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJvcmRlci1jb2xvcjogY3VycmVudGNvbG9yO1xufVxuXG4uZ292dWstZXhpdC10aGlzLXBhZ2VfX2luZGljYXRvci1saWdodC0tb24ge1xuICBib3JkZXItd2lkdGg6IDAuMzc1ZW07XG59XG5cbkBtZWRpYSBvbmx5IHByaW50IHtcbiAgLmdvdnVrLWV4aXQtdGhpcy1wYWdlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4uZ292dWstZXhpdC10aGlzLXBhZ2Utb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogOTk5OTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xufVxuXG4uZ292dWstZXhpdC10aGlzLXBhZ2UtaGlkZS1jb250ZW50ICoge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4uZ292dWstZXhpdC10aGlzLXBhZ2UtaGlkZS1jb250ZW50IC5nb3Z1ay1leGl0LXRoaXMtcGFnZS1vdmVybGF5IHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cblxuXG5cblxuXG5cbi5nb3Z1ay1maWxlLXVwbG9hZCB7XG4gIGZvbnQtZmFtaWx5OiBcIkdEUyBUcmFuc3BvcnRcIiwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMzE1Nzg5NDczNztcbiAgY29sb3I6ICMwYjBjMGM7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IC01cHg7XG4gIHBhZGRpbmc6IDVweDtcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1maWxlLXVwbG9hZCB7XG4gICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIH1cbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1maWxlLXVwbG9hZCB7XG4gICAgZm9udC1zaXplOiAxNHB0O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstZmlsZS11cGxvYWQge1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICB9XG59XG4uZ292dWstZmlsZS11cGxvYWQ6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIGNvbG9yOiBpbmhlcml0O1xuICBmb250OiBpbmhlcml0O1xufVxuLmdvdnVrLWZpbGUtdXBsb2FkOmZvY3VzIHtcbiAgb3V0bGluZTogM3B4IHNvbGlkICNmZmRkMDA7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDRweCAjMGIwYzBjO1xufVxuLmdvdnVrLWZpbGUtdXBsb2FkOmZvY3VzLXdpdGhpbiB7XG4gIG91dGxpbmU6IDNweCBzb2xpZCAjZmZkZDAwO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA0cHggIzBiMGMwYztcbn1cbi5nb3Z1ay1maWxlLXVwbG9hZDpkaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLmdvdnVrLWRyb3Atem9uZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG59XG5cbi5nb3Z1ay1kcm9wLXpvbmUtLWRpc2FibGVkIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbl9fcHNldWRvLWJ1dHRvbiB7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIG1hcmdpbi1ib3R0b206IDNweDtcbiAgZmxleC1zaHJpbms6IDA7XG59XG5cbi5nb3Z1ay1maWxlLXVwbG9hZC1idXR0b25fX2luc3RydWN0aW9uIHtcbiAgbWFyZ2luLXRvcDogN3B4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uZ292dWstZmlsZS11cGxvYWQtYnV0dG9uX19zdGF0dXMge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgcGFkZGluZzogMTVweCAxMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uZ292dWstZmlsZS11cGxvYWQtYnV0dG9uX19wc2V1ZG8tYnV0dG9uLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4uZ292dWstZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDE4cHg7XG4gIGJvcmRlcjogMnB4ICNiMWI0YjYgc29saWQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmM2YyZjE7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgcGFkZGluZzogMjNweDtcbiAgfVxufVxuLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbiAuZ292dWstZmlsZS11cGxvYWQtYnV0dG9uX19wc2V1ZG8tYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbn1cbi5nb3Z1ay1maWxlLXVwbG9hZC1idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTkyLjYsIDE5NSwgMTk2LjYpO1xufVxuLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbjpob3ZlciAuZ292dWstZmlsZS11cGxvYWQtYnV0dG9uX19wc2V1ZG8tYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIxOC43LCAyMTcuOCwgMjE2LjkpO1xufVxuLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbjpob3ZlciAuZ292dWstZmlsZS11cGxvYWQtYnV0dG9uX19zdGF0dXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjA5LjgsIDIyNi40LCAyNDAuOCk7XG59XG4uZ292dWstZmlsZS11cGxvYWQtYnV0dG9uOmFjdGl2ZSwgLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbjpmb2N1cyB7XG4gIGJvcmRlcjogMnB4IHNvbGlkICMwYjBjMGM7XG4gIG91dGxpbmU6IDNweCBzb2xpZCAjZmZkZDAwO1xuICBvdXRsaW5lLW9mZnNldDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE5Mi42LCAxOTUsIDE5Ni42KTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMnB4O1xufVxuLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbjphY3RpdmUgLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbl9fcHNldWRvLWJ1dHRvbiwgLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbjpmb2N1cyAuZ292dWstZmlsZS11cGxvYWQtYnV0dG9uX19wc2V1ZG8tYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZGQwMDtcbiAgYm94LXNoYWRvdzogMCAycHggMCAjMGIwYzBjO1xufVxuLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbjphY3RpdmU6aG92ZXIgLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbl9fcHNldWRvLWJ1dHRvbiwgLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbjpmb2N1czpob3ZlciAuZ292dWstZmlsZS11cGxvYWQtYnV0dG9uX19wc2V1ZG8tYnV0dG9uIHtcbiAgYm9yZGVyLWNvbG9yOiAjZmZkZDAwO1xuICBvdXRsaW5lOiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmM2YyZjE7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCAjZmZkZDAwO1xufVxuXG4uZ292dWstZmlsZS11cGxvYWQtYnV0dG9uLS1lbXB0eSB7XG4gIGJvcmRlci1zdHlsZTogZGFzaGVkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xufVxuLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbi0tZW1wdHkgLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbl9fcHNldWRvLWJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmM2YyZjE7XG59XG4uZ292dWstZmlsZS11cGxvYWQtYnV0dG9uLS1lbXB0eSAuZ292dWstZmlsZS11cGxvYWQtYnV0dG9uX19zdGF0dXMge1xuICBjb2xvcjogcmdiKDExLjYsIDQ0LjgsIDczLjYpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTg3LjIsIDIxMi4xLCAyMzMuNyk7XG59XG4uZ292dWstZmlsZS11cGxvYWQtYnV0dG9uLS1lbXB0eTpob3ZlciwgLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbi0tZW1wdHk6Zm9jdXMsIC5nb3Z1ay1maWxlLXVwbG9hZC1idXR0b24tLWVtcHR5OmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmM2YyZjE7XG59XG4uZ292dWstZmlsZS11cGxvYWQtYnV0dG9uLS1lbXB0eTpob3ZlciAuZ292dWstZmlsZS11cGxvYWQtYnV0dG9uX19zdGF0dXMsIC5nb3Z1ay1maWxlLXVwbG9hZC1idXR0b24tLWVtcHR5OmZvY3VzIC5nb3Z1ay1maWxlLXVwbG9hZC1idXR0b25fX3N0YXR1cywgLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbi0tZW1wdHk6YWN0aXZlIC5nb3Z1ay1maWxlLXVwbG9hZC1idXR0b25fX3N0YXR1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyMDkuOCwgMjI2LjQsIDI0MC44KTtcbn1cblxuLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbi0tZHJhZ2dpbmcge1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICMwYjBjMGM7XG59XG4uZ292dWstZmlsZS11cGxvYWQtYnV0dG9uLS1kcmFnZ2luZy5nb3Z1ay1maWxlLXVwbG9hZC1idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTkyLjYsIDE5NSwgMTk2LjYpO1xufVxuLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbi0tZHJhZ2dpbmcuZ292dWstZmlsZS11cGxvYWQtYnV0dG9uLS1lbXB0eSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmM2YyZjE7XG59XG4uZ292dWstZmlsZS11cGxvYWQtYnV0dG9uLS1kcmFnZ2luZy5nb3Z1ay1maWxlLXVwbG9hZC1idXR0b24tLWVtcHR5Om5vdCg6ZGlzYWJsZWQpIC5nb3Z1ay1maWxlLXVwbG9hZC1idXR0b25fX3N0YXR1cywgLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbi0tZHJhZ2dpbmcuZ292dWstZmlsZS11cGxvYWQtYnV0dG9uLS1lbXB0eSAuZ292dWstZmlsZS11cGxvYWQtYnV0dG9uX19wc2V1ZG8tYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbn1cbi5nb3Z1ay1maWxlLXVwbG9hZC1idXR0b24tLWRyYWdnaW5nIC5nb3Z1ay1maWxlLXVwbG9hZC1idXR0b25fX3BzZXVkby1idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjE4LjcsIDIxNy44LCAyMTYuOSk7XG59XG5cbi5nb3Z1ay1maWxlLXVwbG9hZC1idXR0b246ZGlzYWJsZWQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgb3BhY2l0eTogMC41O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xufVxuLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbjpkaXNhYmxlZCAuZ292dWstZmlsZS11cGxvYWQtYnV0dG9uX19wc2V1ZG8tYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YzZjJmMTtcbn1cbi5nb3Z1ay1maWxlLXVwbG9hZC1idXR0b246ZGlzYWJsZWQgLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbl9fc3RhdHVzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE4Ny4yLCAyMTIuMSwgMjMzLjcpO1xufVxuXG5cbi5nb3Z1ay1mb290ZXIge1xuICBmb250LWZhbWlseTogXCJHRFMgVHJhbnNwb3J0XCIsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxLjE4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjMxNTc4OTQ3Mzc7XG4gIHBhZGRpbmctdG9wOiAyNXB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgYm9yZGVyLXRvcDogMTBweCBzb2xpZCAjMWQ3MGI4O1xuICBjb2xvcjogIzBiMGMwYztcbiAgYmFja2dyb3VuZDogI2YzZjJmMTtcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1mb290ZXIge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstZm9vdGVyIHtcbiAgICBmb250LXNpemU6IDE0cHQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWZvb3RlciB7XG4gICAgcGFkZGluZy10b3A6IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWZvb3RlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDI1cHg7XG4gIH1cbn1cbi5nb3Z1ay10ZW1wbGF0ZS0tcmVicmFuZGVkIC5nb3Z1ay1mb290ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2IoMjQzLjcsIDI0Ny44NSwgMjUxLjQ1KTtcbn1cblxuLmdvdnVrLWZvb3Rlcl9fY3Jvd24ge1xuICBtYXJnaW4tYm90dG9tOiAyNXB4O1xufVxuXG4uZ292dWstZm9vdGVyX19saW5rIHtcbiAgZm9udC1mYW1pbHk6IFwiR0RTIFRyYW5zcG9ydFwiLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiBtYXgoMXB4LCAuMDYyNXJlbSk7XG4gIHRleHQtdW5kZXJsaW5lLW9mZnNldDogMC4xNTc4ZW07XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstZm9vdGVyX19saW5rIHtcbiAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgfVxufVxuLmdvdnVrLWZvb3Rlcl9fbGluazpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IG1heCgzcHgsIC4xODc1cmVtLCAuMTJlbSk7XG4gIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lO1xuICB0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IG5vbmU7XG4gIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6IG5vbmU7XG4gIHRleHQtZGVjb3JhdGlvbi1za2lwOiBub25lO1xufVxuLmdvdnVrLWZvb3Rlcl9fbGluazpmb2N1cyB7XG4gIG91dGxpbmU6IDNweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICMwYjBjMGM7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmRkMDA7XG4gIGJveC1zaGFkb3c6IDAgLTJweCAjZmZkZDAwLCAwIDRweCAjMGIwYzBjO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5Ac3VwcG9ydHMgbm90ICh0ZXh0LXdyYXA6IGJhbGFuY2UpIHtcbiAgLmdvdnVrLWZvb3Rlcl9fbGluazpmb2N1cyB7XG4gICAgLXdlYmtpdC1ib3gtZGVjb3JhdGlvbi1icmVhazogY2xvbmU7XG4gICAgYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lO1xuICB9XG59XG4uZ292dWstZm9vdGVyX19saW5rOmxpbmssIC5nb3Z1ay1mb290ZXJfX2xpbms6dmlzaXRlZCB7XG4gIGNvbG9yOiAjMGIwYzBjO1xufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWZvb3Rlcl9fbGluazpsaW5rLCAuZ292dWstZm9vdGVyX19saW5rOnZpc2l0ZWQge1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICB9XG59XG4uZ292dWstZm9vdGVyX19saW5rOmhvdmVyIHtcbiAgY29sb3I6IHJnYmEoMTEsIDEyLCAxMiwgMC45OSk7XG59XG4uZ292dWstZm9vdGVyX19saW5rOmFjdGl2ZSwgLmdvdnVrLWZvb3Rlcl9fbGluazpmb2N1cyB7XG4gIGNvbG9yOiAjMGIwYzBjO1xufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWZvb3Rlcl9fbGluazphY3RpdmUsIC5nb3Z1ay1mb290ZXJfX2xpbms6Zm9jdXMge1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICB9XG59XG5cbi5nb3Z1ay1mb290ZXJfX3NlY3Rpb24tYnJlYWsge1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjYjFiNGI2O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstZm9vdGVyX19zZWN0aW9uLWJyZWFrIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICB9XG59XG4uZ292dWstdGVtcGxhdGUtLXJlYnJhbmRlZCAuZ292dWstZm9vdGVyX19zZWN0aW9uLWJyZWFrIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiKDE0MiwgMTgzLjUsIDIxOS41KTtcbn1cblxuLmdvdnVrLWZvb3Rlcl9fbWV0YSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi1yaWdodDogLTE1cHg7XG4gIG1hcmdpbi1sZWZ0OiAtMTVweDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uZ292dWstZm9vdGVyX19tZXRhLWl0ZW0ge1xuICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gIG1hcmdpbi1sZWZ0OiAxNXB4O1xufVxuXG4uZ292dWstZm9vdGVyX19tZXRhLWl0ZW0tLWdyb3cge1xuICBmbGV4OiAxO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQwLjA1MjVlbSkge1xuICAuZ292dWstZm9vdGVyX19tZXRhLWl0ZW0tLWdyb3cge1xuICAgIGZsZXgtYmFzaXM6IDMyMHB4O1xuICB9XG59XG5cbi5nb3Z1ay1mb290ZXJfX2xpY2VuY2UtbG9nbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBmb3JjZWQtY29sb3ItYWRqdXN0OiBhdXRvO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4LjA1MjVlbSkge1xuICAuZ292dWstZm9vdGVyX19saWNlbmNlLWxvZ28ge1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIH1cbn1cblxuLmdvdnVrLWZvb3Rlcl9fbGljZW5jZS1kZXNjcmlwdGlvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC13cmFwOiBiYWxhbmNlO1xufVxuXG4uZ292dWstZm9vdGVyX19jb3B5cmlnaHQtbG9nbzo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXRvcDogMTEycHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9hc3NldHMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9hc3NldHMvcmVicmFuZC9pbWFnZXMvZ292dWstY3Jlc3Quc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMCU7XG4gIGJhY2tncm91bmQtc2l6ZTogMTI1cHggMTAycHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbkBzdXBwb3J0cyAoLXdlYmtpdC1tYXNrLXBvc2l0aW9uOiBpbml0aWFsKSBvciAobWFzay1wb3NpdGlvbjogaW5pdGlhbCkge1xuICAuZ292dWstZm9vdGVyX19jb3B5cmlnaHQtbG9nbzo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Y29sb3I7XG4gICAgLXdlYmtpdC1tYXNrLWltYWdlOiB1cmwoXCIvYXNzZXRzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvYXNzZXRzL3JlYnJhbmQvaW1hZ2VzL2dvdnVrLWNyZXN0LnN2Z1wiKTtcbiAgICBtYXNrLWltYWdlOiB1cmwoXCIvYXNzZXRzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvYXNzZXRzL3JlYnJhbmQvaW1hZ2VzL2dvdnVrLWNyZXN0LnN2Z1wiKTtcbiAgICAtd2Via2l0LW1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAtd2Via2l0LW1hc2stcG9zaXRpb246IDUwJSAwJTtcbiAgICBtYXNrLXBvc2l0aW9uOiA1MCUgMCU7XG4gICAgLXdlYmtpdC1tYXNrLXNpemU6IDEyNXB4IDEwMnB4O1xuICAgIG1hc2stc2l6ZTogMTI1cHggMTAycHg7XG4gIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAgIC5nb3Z1ay1mb290ZXJfX2NvcHlyaWdodC1sb2dvOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZDogbGlua3RleHQ7XG4gICAgfVxuICB9XG59XG5cbi5nb3Z1ay1mb290ZXJfX2lubGluZS1saXN0IHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgcGFkZGluZzogMDtcbn1cblxuLmdvdnVrLWZvb3Rlcl9fbWV0YS1jdXN0b20ge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4uZ292dWstZm9vdGVyX19pbmxpbmUtbGlzdC1pdGVtIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuLmdvdnVrLWZvb3Rlcl9faGVhZGluZyB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNiMWI0YjY7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNDAuMDUyNWVtKSB7XG4gIC5nb3Z1ay1mb290ZXJfX2hlYWRpbmcge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICB9XG59XG4uZ292dWstdGVtcGxhdGUtLXJlYnJhbmRlZCAuZ292dWstZm9vdGVyX19oZWFkaW5nIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiKDE0MiwgMTgzLjUsIDIxOS41KTtcbn1cblxuLmdvdnVrLWZvb3Rlcl9fbmF2aWdhdGlvbiB7XG4gIG1hcmdpbi1yaWdodDogLTE1cHg7XG4gIG1hcmdpbi1sZWZ0OiAtMTVweDtcbn1cbi5nb3Z1ay1mb290ZXJfX25hdmlnYXRpb246OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uZ292dWstZm9vdGVyX19zZWN0aW9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4uZ292dWstZm9vdGVyX19saXN0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBjb2x1bW4tZ2FwOiAzMHB4O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gIC5nb3Z1ay1mb290ZXJfX2xpc3QtLWNvbHVtbnMtMiB7XG4gICAgY29sdW1uLWNvdW50OiAyO1xuICB9XG4gIC5nb3Z1ay1mb290ZXJfX2xpc3QtLWNvbHVtbnMtMyB7XG4gICAgY29sdW1uLWNvdW50OiAzO1xuICB9XG59XG4uZ292dWstZm9vdGVyX19saXN0LWl0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstZm9vdGVyX19saXN0LWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cbn1cblxuLmdvdnVrLWZvb3Rlcl9fbGlzdC1pdGVtOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5cbi5nb3Z1ay1oZWFkZXIge1xuICBmb250LWZhbWlseTogXCJHRFMgVHJhbnNwb3J0XCIsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgYm9yZGVyLWJvdHRvbTogMTBweCBzb2xpZCAjZmZmZmZmO1xuICBiYWNrZ3JvdW5kOiAjMGIwYzBjO1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1oZWFkZXIge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstaGVhZGVyIHtcbiAgICBmb250LXNpemU6IDE0cHQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cbn1cbi5nb3Z1ay10ZW1wbGF0ZS0tcmVicmFuZGVkIC5nb3Z1ay1oZWFkZXIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG59XG4uZ292dWstdGVtcGxhdGUtLXJlYnJhbmRlZCAuZ292dWstaGVhZGVyIHtcbiAgYmFja2dyb3VuZDogIzFkNzBiODtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4LjA1MjVlbSkge1xuICAuZ292dWstaGVhZGVyLS13aXRoLWpzLW5hdmlnYXRpb24gLmdvdnVrLWhlYWRlcl9fbG9nbyB7XG4gICAgcGFkZGluZy1yaWdodDogODBweDtcbiAgfVxufVxuXG4uZ292dWstaGVhZGVyX19jb250YWluZXItLWZ1bGwtd2lkdGgge1xuICBwYWRkaW5nOiAwIDE1cHg7XG4gIGJvcmRlci1jb2xvcjogIzFkNzBiODtcbn1cbi5nb3Z1ay1oZWFkZXJfX2NvbnRhaW5lci0tZnVsbC13aWR0aCAuZ292dWstaGVhZGVyX19tZW51LWJ1dHRvbiB7XG4gIHJpZ2h0OiAxNXB4O1xufVxuXG4uZ292dWstaGVhZGVyX19jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IC0xMHB4O1xuICBwYWRkaW5nLXRvcDogMTBweDtcbiAgYm9yZGVyLWJvdHRvbTogMTBweCBzb2xpZCAjMWQ3MGI4O1xufVxuLmdvdnVrLWhlYWRlcl9fY29udGFpbmVyOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjbGVhcjogYm90aDtcbn1cbi5nb3Z1ay10ZW1wbGF0ZS0tcmVicmFuZGVkIC5nb3Z1ay1oZWFkZXJfX2NvbnRhaW5lciB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4uZ292dWstaGVhZGVyLS1mdWxsLXdpZHRoLWJvcmRlciB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICMxZDcwYjg7XG59XG4uZ292dWstaGVhZGVyLS1mdWxsLXdpZHRoLWJvcmRlciAuZ292dWstaGVhZGVyX19jb250YWluZXIge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLmdvdnVrLWhlYWRlcl9fbG9nb3R5cGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtM3B4O1xuICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgZmlsbDogY3VycmVudGNvbG9yO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgLmdvdnVrLWhlYWRlcl9fbG9nb3R5cGUge1xuICAgIGZvcmNlZC1jb2xvci1hZGp1c3Q6IG5vbmU7XG4gICAgY29sb3I6IGxpbmt0ZXh0O1xuICB9XG59XG4uZ292dWstaGVhZGVyX19sb2dvdHlwZTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuLmdvdnVrLXRlbXBsYXRlLS1yZWJyYW5kZWQgLmdvdnVrLWhlYWRlcl9fbG9nb3R5cGUge1xuICBtYXJnaW4tcmlnaHQ6IDAuNDM3NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMnB4O1xufVxuLmdvdnVrLXRlbXBsYXRlLS1yZWJyYW5kZWQgLmdvdnVrLWhlYWRlcl9fbG9nb3R5cGU6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLmdvdnVrLWxvZ28tZG90IHtcbiAgZmlsbDogIzAwZmZlMDtcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1sb2dvLWRvdCB7XG4gICAgZmlsbDogY3VycmVudGNvbG9yO1xuICB9XG59XG5AbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAuZ292dWstbG9nby1kb3Qge1xuICAgIGZpbGw6IGN1cnJlbnRjb2xvcjtcbiAgfVxufVxuOmZvY3VzIC5nb3Z1ay1sb2dvLWRvdCB7XG4gIGZpbGw6IGN1cnJlbnRjb2xvcjtcbn1cblxuLmdvdnVrLWhlYWRlcl9fcHJvZHVjdC1uYW1lIHtcbiAgZm9udC1zaXplOiAxLjMxMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LXdlaWdodDogNDAwO1xuICBkaXNwbGF5OiBpbmxpbmUtdGFibGU7XG4gIG1hcmdpbi10b3A6IDdweDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWhlYWRlcl9fcHJvZHVjdC1uYW1lIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgfVxufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWhlYWRlcl9fcHJvZHVjdC1uYW1lIHtcbiAgICBmb250LXNpemU6IDE4cHQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cbn1cbkAtbW96LWRvY3VtZW50IHVybC1wcmVmaXgoKSB7XG4gIC5nb3Z1ay1oZWFkZXJfX3Byb2R1Y3QtbmFtZSB7XG4gICAgbWFyZ2luLXRvcDogNi41cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWhlYWRlcl9fcHJvZHVjdC1uYW1lIHtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gIH1cbiAgQC1tb3otZG9jdW1lbnQgdXJsLXByZWZpeCgpIHtcbiAgICAuZ292dWstaGVhZGVyX19wcm9kdWN0LW5hbWUge1xuICAgICAgbWFyZ2luLXRvcDogNC41cHg7XG4gICAgfVxuICB9XG59XG4uZ292dWstdGVtcGxhdGUtLXJlYnJhbmRlZCAuZ292dWstaGVhZGVyX19wcm9kdWN0LW5hbWUge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAtMC4wNjI1cmVtO1xuICBmb250LXNpemU6IDEuOTM3NXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxNWVtO1xuICBmb3JjZWQtY29sb3ItYWRqdXN0OiBub25lO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAuZ292dWstdGVtcGxhdGUtLXJlYnJhbmRlZCAuZ292dWstaGVhZGVyX19wcm9kdWN0LW5hbWUge1xuICAgIGNvbG9yOiBMaW5rVGV4dDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstdGVtcGxhdGUtLXJlYnJhbmRlZCAuZ292dWstaGVhZGVyX19wcm9kdWN0LW5hbWUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgLmdvdnVrLXRlbXBsYXRlLS1yZWJyYW5kZWQgLmdvdnVrLWhlYWRlcl9fcHJvZHVjdC1uYW1lIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi5nb3Z1ay1oZWFkZXJfX2xpbmsge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uZ292dWstaGVhZGVyX19saW5rOmxpbmssIC5nb3Z1ay1oZWFkZXJfX2xpbms6dmlzaXRlZCB7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuLmdvdnVrLWhlYWRlcl9fbGluazpob3ZlciwgLmdvdnVrLWhlYWRlcl9fbGluazphY3RpdmUge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjk5KTtcbn1cbi5nb3Z1ay1oZWFkZXJfX2xpbms6Zm9jdXMge1xuICBjb2xvcjogIzBiMGMwYztcbn1cbi5nb3Z1ay1oZWFkZXJfX2xpbms6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgdGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVzczogM3B4O1xuICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDAuMTU3OGVtO1xufVxuLmdvdnVrLWhlYWRlcl9fbGluazpmb2N1cyB7XG4gIG91dGxpbmU6IDNweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICMwYjBjMGM7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmRkMDA7XG4gIGJveC1zaGFkb3c6IDAgLTJweCAjZmZkZDAwLCAwIDRweCAjMGIwYzBjO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5Ac3VwcG9ydHMgbm90ICh0ZXh0LXdyYXA6IGJhbGFuY2UpIHtcbiAgLmdvdnVrLWhlYWRlcl9fbGluazpmb2N1cyB7XG4gICAgLXdlYmtpdC1ib3gtZGVjb3JhdGlvbi1icmVhazogY2xvbmU7XG4gICAgYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lO1xuICB9XG59XG5cbi5nb3Z1ay1oZWFkZXJfX2xpbmstLWhvbWVwYWdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIGZvbnQtc2l6ZTogMzBweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWhlYWRlcl9fbGluay0taG9tZXBhZ2Uge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgfVxufVxuLmdvdnVrLWhlYWRlcl9fbGluay0taG9tZXBhZ2U6bGluaywgLmdvdnVrLWhlYWRlcl9fbGluay0taG9tZXBhZ2U6dmlzaXRlZCB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5nb3Z1ay1oZWFkZXJfX2xpbmstLWhvbWVwYWdlOmhvdmVyLCAuZ292dWstaGVhZGVyX19saW5rLS1ob21lcGFnZTphY3RpdmUge1xuICBtYXJnaW4tYm90dG9tOiAtM3B4O1xuICBib3JkZXItYm90dG9tOiAzcHggc29saWQ7XG59XG4uZ292dWstaGVhZGVyX19saW5rLS1ob21lcGFnZTpmb2N1cyB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG4uZ292dWstdGVtcGxhdGUtLXJlYnJhbmRlZCAuZ292dWstaGVhZGVyX19saW5rLS1ob21lcGFnZSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgd29yZC1zcGFjaW5nOiAtMC4zNzVyZW07XG59XG4uZ292dWstdGVtcGxhdGUtLXJlYnJhbmRlZCAuZ292dWstaGVhZGVyX19saW5rLS1ob21lcGFnZSA+ICoge1xuICB3b3JkLXNwYWNpbmc6IDA7XG59XG4uZ292dWstdGVtcGxhdGUtLXJlYnJhbmRlZCAuZ292dWstaGVhZGVyX19saW5rLS1ob21lcGFnZTpub3QoOmZvY3VzKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxZDcwYjg7XG59XG5cbi5nb3Z1ay1oZWFkZXJfX3NlcnZpY2UtbmFtZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgZm9udC1zaXplOiAxLjMxMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjE5MDQ3NjE5MDU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1oZWFkZXJfX3NlcnZpY2UtbmFtZSB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1oZWFkZXJfX3NlcnZpY2UtbmFtZSB7XG4gICAgZm9udC1zaXplOiAxOHB0O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICB9XG59XG4uZ292dWstdGVtcGxhdGUtLXJlYnJhbmRlZCAuZ292dWstaGVhZGVyX19zZXJ2aWNlLW5hbWUge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAuZ292dWstdGVtcGxhdGUtLXJlYnJhbmRlZCAuZ292dWstaGVhZGVyX19zZXJ2aWNlLW5hbWUge1xuICAgIG1hcmdpbjogMTlweCAwIDExcHg7XG4gIH1cbn1cblxuLmdvdnVrLWhlYWRlcl9fbG9nbyxcbi5nb3Z1ay1oZWFkZXJfX2NvbnRlbnQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4uZ292dWstaGVhZGVyX19sb2dvIHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWhlYWRlcl9fbG9nbyB7XG4gICAgd2lkdGg6IDMzLjMzJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIH1cbiAgLmdvdnVrLWhlYWRlcl9fbG9nbzpsYXN0LWNoaWxkIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIGZsb2F0OiBub25lO1xuICB9XG59XG4uZ292dWstdGVtcGxhdGUtLXJlYnJhbmRlZCAuZ292dWstaGVhZGVyX19sb2dvIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy10b3A6IDE2cHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMnB4O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gIC5nb3Z1ay1oZWFkZXJfX2NvbnRlbnQge1xuICAgIHdpZHRoOiA2Ni42NiU7XG4gICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG59XG5cbi5nb3Z1ay1oZWFkZXJfX21lbnUtYnV0dG9uIHtcbiAgZm9udC1mYW1pbHk6IFwiR0RTIFRyYW5zcG9ydFwiLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIG1heC13aWR0aDogODBweDtcbiAgbWluLWhlaWdodDogMjRweDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1oZWFkZXJfX21lbnUtYnV0dG9uIHtcbiAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgfVxufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWhlYWRlcl9fbWVudS1idXR0b24ge1xuICAgIGZvbnQtc2l6ZTogMTRwdDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG59XG4uZ292dWstaGVhZGVyX19tZW51LWJ1dHRvbjpob3ZlciB7XG4gIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uOiBzb2xpZCB1bmRlcmxpbmUgM3B4O1xuICB0ZXh0LWRlY29yYXRpb246IHNvbGlkIHVuZGVybGluZSAzcHg7XG4gIHRleHQtdW5kZXJsaW5lLW9mZnNldDogMC4xNTc4ZW07XG59XG4uZ292dWstaGVhZGVyX19tZW51LWJ1dHRvbjpmb2N1cyB7XG4gIG91dGxpbmU6IDNweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICMwYjBjMGM7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmRkMDA7XG4gIGJveC1zaGFkb3c6IDAgLTJweCAjZmZkZDAwLCAwIDRweCAjMGIwYzBjO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5Ac3VwcG9ydHMgbm90ICh0ZXh0LXdyYXA6IGJhbGFuY2UpIHtcbiAgLmdvdnVrLWhlYWRlcl9fbWVudS1idXR0b246Zm9jdXMge1xuICAgIC13ZWJraXQtYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lO1xuICAgIGJveC1kZWNvcmF0aW9uLWJyZWFrOiBjbG9uZTtcbiAgfVxufVxuLmdvdnVrLWhlYWRlcl9fbWVudS1idXR0b246OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LWNsaXAtcGF0aDogcG9seWdvbigwJSAwJSwgNTAlIDEwMCUsIDEwMCUgMCUpO1xuICBjbGlwLXBhdGg6IHBvbHlnb24oMCUgMCUsIDUwJSAxMDAlLCAxMDAlIDAlKTtcbiAgYm9yZGVyLXdpZHRoOiA4LjY2cHggNXB4IDAgNXB4O1xuICBib3JkZXItdG9wLWNvbG9yOiBpbmhlcml0O1xuICBjb250ZW50OiBcIlwiO1xuICBtYXJnaW4tbGVmdDogNXB4O1xufVxuLmdvdnVrLWhlYWRlcl9fbWVudS1idXR0b25bYXJpYS1leHBhbmRlZD10cnVlXTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC13ZWJraXQtY2xpcC1wYXRoOiBwb2x5Z29uKDUwJSAwJSwgMCUgMTAwJSwgMTAwJSAxMDAlKTtcbiAgY2xpcC1wYXRoOiBwb2x5Z29uKDUwJSAwJSwgMCUgMTAwJSwgMTAwJSAxMDAlKTtcbiAgYm9yZGVyLXdpZHRoOiAwIDVweCA4LjY2cHg7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IGluaGVyaXQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMjBlbSkge1xuICAuZ292dWstaGVhZGVyX19tZW51LWJ1dHRvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTNweDtcbiAgICByaWdodDogMDtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWhlYWRlcl9fbWVudS1idXR0b24ge1xuICAgIHRvcDogMTVweDtcbiAgfVxufVxuLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstaGVhZGVyX19tZW51LWJ1dHRvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmdvdnVrLWhlYWRlcl9fbWVudS1idXR0b25baGlkZGVuXSwgLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstaGVhZGVyX19tZW51LWJ1dHRvbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDE5Ljk5ZW0pIHtcbiAgLmdvdnVrLXRlbXBsYXRlLS1yZWJyYW5kZWQgLmdvdnVrLWhlYWRlcl9fbmF2aWdhdGlvbiB7XG4gICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWhlYWRlcl9fbmF2aWdhdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgfVxuICAuZ292dWstdGVtcGxhdGUtLXJlYnJhbmRlZCAuZ292dWstaGVhZGVyX19uYXZpZ2F0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmc6IDIycHggMCA4cHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAuZ292dWstdGVtcGxhdGUtLXJlYnJhbmRlZCAuZ292dWstaGVhZGVyX19zZXJ2aWNlLW5hbWUgKyAuZ292dWstaGVhZGVyX19uYXZpZ2F0aW9uIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgfVxufVxuXG4uZ292dWstaGVhZGVyX19uYXZpZ2F0aW9uLWxpc3Qge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4uZ292dWstaGVhZGVyX19uYXZpZ2F0aW9uLWxpc3RbaGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMjBlbSkgYW5kIChtYXgtd2lkdGg6IDQ4LjA1MjVlbSkge1xuICAuZ292dWstdGVtcGxhdGUtLXJlYnJhbmRlZCAuZ292dWstaGVhZGVyX19uYXZpZ2F0aW9uLWxpc3Qge1xuICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWhlYWRlcl9fbmF2aWdhdGlvbi0tZW5kIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogNXB4IDA7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cblxuLmdvdnVrLWhlYWRlcl9fbmF2aWdhdGlvbi1pdGVtIHtcbiAgcGFkZGluZzogMTBweCAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzJlMzEzMztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWhlYWRlcl9fbmF2aWdhdGlvbi1pdGVtIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgIHBhZGRpbmc6IDVweCAwO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuLmdvdnVrLWhlYWRlcl9fbmF2aWdhdGlvbi1pdGVtIGEge1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBmb250LXdlaWdodDogNzAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWhlYWRlcl9fbmF2aWdhdGlvbi1pdGVtIGEge1xuICAgIGZvbnQtc2l6ZTogMTRwdDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG59XG4uZ292dWstdGVtcGxhdGUtLXJlYnJhbmRlZCAuZ292dWstaGVhZGVyX19uYXZpZ2F0aW9uLWl0ZW0ge1xuICBwYWRkaW5nLXRvcDogMTVweDtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2ZmZmZmZjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgLmdvdnVrLXRlbXBsYXRlLS1yZWJyYW5kZWQgLmdvdnVrLWhlYWRlcl9fbmF2aWdhdGlvbi1pdGVtIHtcbiAgICBwYWRkaW5nLXRvcDogNXB4O1xuICB9XG59XG4uZ292dWstdGVtcGxhdGUtLXJlYnJhbmRlZCAuZ292dWstaGVhZGVyX19uYXZpZ2F0aW9uLWl0ZW0gYSB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi5nb3Z1ay10ZW1wbGF0ZS0tcmVicmFuZGVkIC5nb3Z1ay1oZWFkZXJfX25hdmlnYXRpb24taXRlbS0tYWN0aXZlIGEge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuLmdvdnVrLWhlYWRlcl9fbmF2aWdhdGlvbi1pdGVtLS1hY3RpdmUgYTpsaW5rLCAuZ292dWstaGVhZGVyX19uYXZpZ2F0aW9uLWl0ZW0tLWFjdGl2ZSBhOmhvdmVyLCAuZ292dWstaGVhZGVyX19uYXZpZ2F0aW9uLWl0ZW0tLWFjdGl2ZSBhOnZpc2l0ZWQge1xuICBjb2xvcjogIzFkOGZlYjtcbn1cbi5nb3Z1ay10ZW1wbGF0ZS0tcmVicmFuZGVkIC5nb3Z1ay1oZWFkZXJfX25hdmlnYXRpb24taXRlbS0tYWN0aXZlIGE6bGluaywgLmdvdnVrLXRlbXBsYXRlLS1yZWJyYW5kZWQgLmdvdnVrLWhlYWRlcl9fbmF2aWdhdGlvbi1pdGVtLS1hY3RpdmUgYTpob3ZlciwgLmdvdnVrLXRlbXBsYXRlLS1yZWJyYW5kZWQgLmdvdnVrLWhlYWRlcl9fbmF2aWdhdGlvbi1pdGVtLS1hY3RpdmUgYTp2aXNpdGVkIHtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstaGVhZGVyX19uYXZpZ2F0aW9uLWl0ZW0tLWFjdGl2ZSBhIHtcbiAgICBjb2xvcjogIzFkNzBiODtcbiAgfVxufVxuLmdvdnVrLWhlYWRlcl9fbmF2aWdhdGlvbi1pdGVtLS1hY3RpdmUgYTpmb2N1cyB7XG4gIGNvbG9yOiAjMGIwYzBjO1xufVxuLmdvdnVrLXRlbXBsYXRlLS1yZWJyYW5kZWQgLmdvdnVrLWhlYWRlcl9fbmF2aWdhdGlvbi1pdGVtLS1hY3RpdmUgYTpmb2N1cyB7XG4gIGNvbG9yOiAjMGIwYzBjO1xufVxuXG4uZ292dWstaGVhZGVyX19uYXZpZ2F0aW9uLWl0ZW06bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbn1cblxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLWhlYWRlciB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBjb2xvcjogIzBiMGMwYztcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgfVxuICAuZ292dWstaGVhZGVyX19saW5rOmxpbmssIC5nb3Z1ay1oZWFkZXJfX2xpbms6dmlzaXRlZCB7XG4gICAgY29sb3I6ICMwYjBjMGM7XG4gIH1cbiAgLmdvdnVrLWhlYWRlcl9fbGluazo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuXG5cblxuXG5cbi5nb3Z1ay1pbnNldC10ZXh0IHtcbiAgZm9udC1mYW1pbHk6IFwiR0RTIFRyYW5zcG9ydFwiLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4zMTU3ODk0NzM3O1xuICBjb2xvcjogIzBiMGMwYztcbiAgcGFkZGluZzogMTVweDtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgY2xlYXI6IGJvdGg7XG4gIGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkICNiMWI0YjY7XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstaW5zZXQtdGV4dCB7XG4gICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIH1cbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1pbnNldC10ZXh0IHtcbiAgICBmb250LXNpemU6IDE0cHQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1pbnNldC10ZXh0IHtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstaW5zZXQtdGV4dCB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstaW5zZXQtdGV4dCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxufVxuLmdvdnVrLWluc2V0LXRleHQgPiA6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLmdvdnVrLWluc2V0LXRleHQgPiA6b25seS1jaGlsZCxcbi5nb3Z1ay1pbnNldC10ZXh0ID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5cblxuLmdvdnVrLW5vdGlmaWNhdGlvbi1iYW5uZXIge1xuICBmb250LWZhbWlseTogXCJHRFMgVHJhbnNwb3J0XCIsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxLjE4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjMxNTc4OTQ3Mzc7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIGJvcmRlcjogNXB4IHNvbGlkICMxZDcwYjg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxZDcwYjg7XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstbm90aWZpY2F0aW9uLWJhbm5lciB7XG4gICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIH1cbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1ub3RpZmljYXRpb24tYmFubmVyIHtcbiAgICBmb250LXNpemU6IDE0cHQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLW5vdGlmaWNhdGlvbi1iYW5uZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gIH1cbn1cbi5nb3Z1ay1ub3RpZmljYXRpb24tYmFubmVyOmZvY3VzIHtcbiAgb3V0bGluZTogM3B4IHNvbGlkICNmZmRkMDA7XG59XG5cbi5nb3Z1ay1ub3RpZmljYXRpb24tYmFubmVyX19oZWFkZXIge1xuICBwYWRkaW5nOiAycHggMTVweCA1cHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLW5vdGlmaWNhdGlvbi1iYW5uZXJfX2hlYWRlciB7XG4gICAgcGFkZGluZzogMnB4IDIwcHggNXB4O1xuICB9XG59XG5cbi5nb3Z1ay1ub3RpZmljYXRpb24tYmFubmVyX190aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4zMTU3ODk0NzM3O1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLW5vdGlmaWNhdGlvbi1iYW5uZXJfX3RpdGxlIHtcbiAgICBmb250LXNpemU6IDE0cHQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIH1cbn1cblxuLmdvdnVrLW5vdGlmaWNhdGlvbi1iYW5uZXJfX2NvbnRlbnQge1xuICBjb2xvcjogIzBiMGMwYztcbiAgcGFkZGluZzogMTVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1ub3RpZmljYXRpb24tYmFubmVyX19jb250ZW50IHtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstbm90aWZpY2F0aW9uLWJhbm5lcl9fY29udGVudCB7XG4gICAgcGFkZGluZzogMjBweDtcbiAgfVxufVxuLmdvdnVrLW5vdGlmaWNhdGlvbi1iYW5uZXJfX2NvbnRlbnQgPiAqIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbWF4LXdpZHRoOiA2MDVweDtcbn1cbi5nb3Z1ay1ub3RpZmljYXRpb24tYmFubmVyX19jb250ZW50ID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uZ292dWstbm90aWZpY2F0aW9uLWJhbm5lcl9faGVhZGluZyB7XG4gIGZvbnQtc2l6ZTogMS4zMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS4xOTA0NzYxOTA1O1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW46IDAgMCAxNXB4O1xuICBwYWRkaW5nOiAwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstbm90aWZpY2F0aW9uLWJhbm5lcl9faGVhZGluZyB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1ub3RpZmljYXRpb24tYmFubmVyX19oZWFkaW5nIHtcbiAgICBmb250LXNpemU6IDE4cHQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIH1cbn1cblxuLmdvdnVrLW5vdGlmaWNhdGlvbi1iYW5uZXJfX2xpbmsge1xuICBmb250LWZhbWlseTogXCJHRFMgVHJhbnNwb3J0XCIsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IG1heCgxcHgsIC4wNjI1cmVtKTtcbiAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAwLjE1NzhlbTtcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1ub3RpZmljYXRpb24tYmFubmVyX19saW5rIHtcbiAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgfVxufVxuLmdvdnVrLW5vdGlmaWNhdGlvbi1iYW5uZXJfX2xpbms6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiBtYXgoM3B4LCAuMTg3NXJlbSwgLjEyZW0pO1xuICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwLWluazogbm9uZTtcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lO1xuICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBub25lO1xuICB0ZXh0LWRlY29yYXRpb24tc2tpcDogbm9uZTtcbn1cbi5nb3Z1ay1ub3RpZmljYXRpb24tYmFubmVyX19saW5rOmZvY3VzIHtcbiAgb3V0bGluZTogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzBiMGMwYztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZGQwMDtcbiAgYm94LXNoYWRvdzogMCAtMnB4ICNmZmRkMDAsIDAgNHB4ICMwYjBjMGM7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbkBzdXBwb3J0cyBub3QgKHRleHQtd3JhcDogYmFsYW5jZSkge1xuICAuZ292dWstbm90aWZpY2F0aW9uLWJhbm5lcl9fbGluazpmb2N1cyB7XG4gICAgLXdlYmtpdC1ib3gtZGVjb3JhdGlvbi1icmVhazogY2xvbmU7XG4gICAgYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lO1xuICB9XG59XG4uZ292dWstbm90aWZpY2F0aW9uLWJhbm5lcl9fbGluazpsaW5rIHtcbiAgY29sb3I6ICMxZDcwYjg7XG59XG4uZ292dWstbm90aWZpY2F0aW9uLWJhbm5lcl9fbGluazp2aXNpdGVkIHtcbiAgY29sb3I6ICMxZDcwYjg7XG59XG4uZ292dWstbm90aWZpY2F0aW9uLWJhbm5lcl9fbGluazpob3ZlciB7XG4gIGNvbG9yOiAjMDAzMDc4O1xufVxuLmdvdnVrLW5vdGlmaWNhdGlvbi1iYW5uZXJfX2xpbms6YWN0aXZlIHtcbiAgY29sb3I6ICMwYjBjMGM7XG59XG4uZ292dWstbm90aWZpY2F0aW9uLWJhbm5lcl9fbGluazpmb2N1cyB7XG4gIGNvbG9yOiAjMGIwYzBjO1xufVxuXG4uZ292dWstbm90aWZpY2F0aW9uLWJhbm5lci0tc3VjY2VzcyB7XG4gIGJvcmRlci1jb2xvcjogIzAwNzAzYztcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNzAzYztcbn1cbi5nb3Z1ay1ub3RpZmljYXRpb24tYmFubmVyLS1zdWNjZXNzIC5nb3Z1ay1ub3RpZmljYXRpb24tYmFubmVyX19saW5rOmxpbmssIC5nb3Z1ay1ub3RpZmljYXRpb24tYmFubmVyLS1zdWNjZXNzIC5nb3Z1ay1ub3RpZmljYXRpb24tYmFubmVyX19saW5rOnZpc2l0ZWQge1xuICBjb2xvcjogIzAwNzAzYztcbn1cbi5nb3Z1ay1ub3RpZmljYXRpb24tYmFubmVyLS1zdWNjZXNzIC5nb3Z1ay1ub3RpZmljYXRpb24tYmFubmVyX19saW5rOmhvdmVyIHtcbiAgY29sb3I6IHJnYigwLCA3OC40LCA0Mik7XG59XG4uZ292dWstbm90aWZpY2F0aW9uLWJhbm5lci0tc3VjY2VzcyAuZ292dWstbm90aWZpY2F0aW9uLWJhbm5lcl9fbGluazphY3RpdmUge1xuICBjb2xvcjogIzAwNzAzYztcbn1cbi5nb3Z1ay1ub3RpZmljYXRpb24tYmFubmVyLS1zdWNjZXNzIC5nb3Z1ay1ub3RpZmljYXRpb24tYmFubmVyX19saW5rOmZvY3VzIHtcbiAgY29sb3I6ICMwYjBjMGM7XG59XG5cblxuLmdvdnVrLXBhZ2luYXRpb24ge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1wYWdpbmF0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1wYWdpbmF0aW9uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB9XG59XG5cbi5nb3Z1ay1wYWdpbmF0aW9uX19saXN0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uZ292dWstcGFnaW5hdGlvbl9faXRlbSxcbi5nb3Z1ay1wYWdpbmF0aW9uX19uZXh0LFxuLmdvdnVrLXBhZ2luYXRpb25fX3ByZXYge1xuICBmb250LWZhbWlseTogXCJHRFMgVHJhbnNwb3J0XCIsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxLjE4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjMxNTc4OTQ3Mzc7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLXdpZHRoOiA0NXB4O1xuICBtaW4taGVpZ2h0OiA0NXB4O1xuICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gIGZsb2F0OiBsZWZ0O1xufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLXBhZ2luYXRpb25fX2l0ZW0sXG4gIC5nb3Z1ay1wYWdpbmF0aW9uX19uZXh0LFxuICAuZ292dWstcGFnaW5hdGlvbl9fcHJldiB7XG4gICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIH1cbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1wYWdpbmF0aW9uX19pdGVtLFxuICAuZ292dWstcGFnaW5hdGlvbl9fbmV4dCxcbiAgLmdvdnVrLXBhZ2luYXRpb25fX3ByZXYge1xuICAgIGZvbnQtc2l6ZTogMTRwdDtcbiAgICBsaW5lLWhlaWdodDogMS4xNTtcbiAgfVxufVxuLmdvdnVrLXBhZ2luYXRpb25fX2l0ZW06aG92ZXIsXG4uZ292dWstcGFnaW5hdGlvbl9fbmV4dDpob3Zlcixcbi5nb3Z1ay1wYWdpbmF0aW9uX19wcmV2OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YzZjJmMTtcbn1cblxuLmdvdnVrLXBhZ2luYXRpb25fX2l0ZW0ge1xuICBkaXNwbGF5OiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1wYWdpbmF0aW9uX19pdGVtIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uZ292dWstcGFnaW5hdGlvbl9fcHJldixcbi5nb3Z1ay1wYWdpbmF0aW9uX19uZXh0IHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbi5nb3Z1ay1wYWdpbmF0aW9uX19wcmV2IC5nb3Z1ay1wYWdpbmF0aW9uX19saW5rLFxuLmdvdnVrLXBhZ2luYXRpb25fX25leHQgLmdvdnVrLXBhZ2luYXRpb25fX2xpbmsge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uZ292dWstcGFnaW5hdGlvbl9fcHJldiB7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLmdvdnVrLXBhZ2luYXRpb25fX25leHQge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuXG4uZ292dWstcGFnaW5hdGlvbl9faXRlbS0tY3VycmVudCxcbi5nb3Z1ay1wYWdpbmF0aW9uX19pdGVtLS1lbGxpcHNlcyxcbi5nb3Z1ay1wYWdpbmF0aW9uX19pdGVtOmZpcnN0LWNoaWxkLFxuLmdvdnVrLXBhZ2luYXRpb25fX2l0ZW06bGFzdC1jaGlsZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uZ292dWstcGFnaW5hdGlvbl9faXRlbS0tY3VycmVudCB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG91dGxpbmU6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFkNzBiODtcbn1cbi5nb3Z1ay1wYWdpbmF0aW9uX19pdGVtLS1jdXJyZW50OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFkNzBiODtcbn1cbi5nb3Z1ay1wYWdpbmF0aW9uX19pdGVtLS1jdXJyZW50IC5nb3Z1ay1wYWdpbmF0aW9uX19saW5rOmxpbmssIC5nb3Z1ay1wYWdpbmF0aW9uX19pdGVtLS1jdXJyZW50IC5nb3Z1ay1wYWdpbmF0aW9uX19saW5rOnZpc2l0ZWQge1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cbi5nb3Z1ay1wYWdpbmF0aW9uX19pdGVtLS1jdXJyZW50IC5nb3Z1ay1wYWdpbmF0aW9uX19saW5rOmhvdmVyLCAuZ292dWstcGFnaW5hdGlvbl9faXRlbS0tY3VycmVudCAuZ292dWstcGFnaW5hdGlvbl9fbGluazphY3RpdmUge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjk5KTtcbn1cbi5nb3Z1ay1wYWdpbmF0aW9uX19pdGVtLS1jdXJyZW50IC5nb3Z1ay1wYWdpbmF0aW9uX19saW5rOmZvY3VzIHtcbiAgY29sb3I6ICMwYjBjMGM7XG59XG5cbi5nb3Z1ay1wYWdpbmF0aW9uX19pdGVtLS1lbGxpcHNlcyB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjNTA1YTVmO1xufVxuLmdvdnVrLXBhZ2luYXRpb25fX2l0ZW0tLWVsbGlwc2VzOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5nb3Z1ay1wYWdpbmF0aW9uX19saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi13aWR0aDogMTVweDtcbn1cbkBtZWRpYSBzY3JlZW4ge1xuICAuZ292dWstcGFnaW5hdGlvbl9fbGluazo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgfVxufVxuLmdvdnVrLXBhZ2luYXRpb25fX2xpbms6aG92ZXIgLmdvdnVrLXBhZ2luYXRpb25fX2xpbmstdGl0bGUtLWRlY29yYXRlZCwgLmdvdnVrLXBhZ2luYXRpb25fX2xpbms6YWN0aXZlIC5nb3Z1ay1wYWdpbmF0aW9uX19saW5rLXRpdGxlLS1kZWNvcmF0ZWQge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgdGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVzczogbWF4KDFweCwgLjA2MjVyZW0pO1xuICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDAuMTU3OGVtO1xufVxuLmdvdnVrLXBhZ2luYXRpb25fX2xpbms6aG92ZXIgLmdvdnVrLXBhZ2luYXRpb25fX2xpbmstbGFiZWwsXG4uZ292dWstcGFnaW5hdGlvbl9fbGluazpob3ZlciAuZ292dWstcGFnaW5hdGlvbl9fbGluay10aXRsZS0tZGVjb3JhdGVkLCAuZ292dWstcGFnaW5hdGlvbl9fbGluazphY3RpdmUgLmdvdnVrLXBhZ2luYXRpb25fX2xpbmstbGFiZWwsXG4uZ292dWstcGFnaW5hdGlvbl9fbGluazphY3RpdmUgLmdvdnVrLXBhZ2luYXRpb25fX2xpbmstdGl0bGUtLWRlY29yYXRlZCB7XG4gIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IG1heCgzcHgsIC4xODc1cmVtLCAuMTJlbSk7XG4gIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lO1xuICB0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IG5vbmU7XG4gIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6IG5vbmU7XG4gIHRleHQtZGVjb3JhdGlvbi1za2lwOiBub25lO1xufVxuLmdvdnVrLXBhZ2luYXRpb25fX2xpbms6Zm9jdXMgLmdvdnVrLXBhZ2luYXRpb25fX2ljb24ge1xuICBjb2xvcjogIzBiMGMwYztcbn1cbi5nb3Z1ay1wYWdpbmF0aW9uX19saW5rOmZvY3VzIC5nb3Z1ay1wYWdpbmF0aW9uX19saW5rLWxhYmVsIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmdvdnVrLXBhZ2luYXRpb25fX2xpbms6Zm9jdXMgLmdvdnVrLXBhZ2luYXRpb25fX2xpbmstdGl0bGUtLWRlY29yYXRlZCB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmdvdnVrLXBhZ2luYXRpb25fX2xpbmstbGFiZWwge1xuICBmb250LXdlaWdodDogNDAwO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgdGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVzczogbWF4KDFweCwgLjA2MjVyZW0pO1xuICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDAuMTU3OGVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5nb3Z1ay1wYWdpbmF0aW9uX19pY29uIHtcbiAgd2lkdGg6IDAuOTM3NXJlbTtcbiAgaGVpZ2h0OiAwLjgxMjVyZW07XG4gIGNvbG9yOiAjNTA1YTVmO1xuICBmaWxsOiBjdXJyZW50Y29sb3I7XG4gIGZvcmNlZC1jb2xvci1hZGp1c3Q6IGF1dG87XG59XG5cbi5nb3Z1ay1wYWdpbmF0aW9uX19pY29uLS1wcmV2IHtcbiAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xufVxuXG4uZ292dWstcGFnaW5hdGlvbl9faWNvbi0tbmV4dCB7XG4gIG1hcmdpbi1sZWZ0OiAxNXB4O1xufVxuXG4uZ292dWstcGFnaW5hdGlvbi0tYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5nb3Z1ay1wYWdpbmF0aW9uLS1ibG9jayAuZ292dWstcGFnaW5hdGlvbl9fbmV4dCxcbi5nb3Z1ay1wYWdpbmF0aW9uLS1ibG9jayAuZ292dWstcGFnaW5hdGlvbl9fcHJldiB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgZmxvYXQ6IG5vbmU7XG59XG4uZ292dWstcGFnaW5hdGlvbi0tYmxvY2sgLmdvdnVrLXBhZ2luYXRpb25fX25leHQgLmdvdnVrLXBhZ2luYXRpb25fX2xpbmssXG4uZ292dWstcGFnaW5hdGlvbi0tYmxvY2sgLmdvdnVrLXBhZ2luYXRpb25fX3ByZXYgLmdvdnVrLXBhZ2luYXRpb25fX2xpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4uZ292dWstcGFnaW5hdGlvbi0tYmxvY2sgLmdvdnVrLXBhZ2luYXRpb25fX25leHQge1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xufVxuLmdvdnVrLXBhZ2luYXRpb24tLWJsb2NrIC5nb3Z1ay1wYWdpbmF0aW9uX19wcmV2ICsgLmdvdnVrLXBhZ2luYXRpb25fX25leHQge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2IxYjRiNjtcbn1cbi5nb3Z1ay1wYWdpbmF0aW9uLS1ibG9jayAuZ292dWstcGFnaW5hdGlvbl9fbGluay10aXRsZTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5nb3Z1ay1wYWdpbmF0aW9uLS1ibG9jayAuZ292dWstcGFnaW5hdGlvbl9fbGluayB7XG4gIHBhZGRpbmctbGVmdDogMzBweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi5nb3Z1ay1wYWdpbmF0aW9uLS1ibG9jayAuZ292dWstcGFnaW5hdGlvbl9fbGluazpub3QoOmZvY3VzKSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5nb3Z1ay1wYWdpbmF0aW9uLS1ibG9jayAuZ292dWstcGFnaW5hdGlvbl9faWNvbiB7XG4gIG1hcmdpbi10b3A6IDAuMzI2ZW07XG4gIG1hcmdpbi1sZWZ0OiAtMzBweDtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cblxuLmdvdnVrLXBhbmVsIHtcbiAgZm9udC1mYW1pbHk6IFwiR0RTIFRyYW5zcG9ydFwiLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMS42ODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4xMTExMTExMTExO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICBwYWRkaW5nOiAzNXB4O1xuICBib3JkZXI6IDVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLXBhbmVsIHtcbiAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstcGFuZWwge1xuICAgIGZvbnQtc2l6ZTogMi4yNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4xMTExMTExMTExO1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstcGFuZWwge1xuICAgIGZvbnQtc2l6ZTogMjRwdDtcbiAgICBsaW5lLWhlaWdodDogMS4wNTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQwLjA1MjVlbSkge1xuICAuZ292dWstcGFuZWwge1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIH1cbn1cblxuLmdvdnVrLXBhbmVsLS1jb25maXJtYXRpb24ge1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgYmFja2dyb3VuZDogIzAwNzAzYztcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1wYW5lbC0tY29uZmlybWF0aW9uIHtcbiAgICBib3JkZXItY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICB9XG59XG5cbi5nb3Z1ay1wYW5lbF9fdGl0bGUge1xuICBmb250LXNpemU6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjA5Mzc1O1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstcGFuZWxfX3RpdGxlIHtcbiAgICBmb250LXNpemU6IDNyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMDQxNjY2NjY2NztcbiAgfVxufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLXBhbmVsX190aXRsZSB7XG4gICAgZm9udC1zaXplOiAzMnB0O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICB9XG59XG5cbi5nb3Z1ay1wYW5lbF9fdGl0bGU6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cblxuXG5cblxuXG5cbkBtZWRpYSAobWluLXdpZHRoOiAyMGVtKSB7XG4gIC5nb3Z1ay1wYXNzd29yZC1pbnB1dF9fd3JhcHBlciB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgfVxufVxuXG4uZ292dWstcGFzc3dvcmQtaW5wdXRfX2lucHV0OjotbXMtcmV2ZWFsIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmdvdnVrLXBhc3N3b3JkLWlucHV0X190b2dnbGUge1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uZ292dWstcGFzc3dvcmQtaW5wdXRfX3RvZ2dsZVtoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAyMGVtKSB7XG4gIC5nb3Z1ay1wYXNzd29yZC1pbnB1dF9fdG9nZ2xlIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA1ZW07XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuICB9XG59XG5cblxuLmdvdnVrLXRhZyB7XG4gIGZvbnQtZmFtaWx5OiBcIkdEUyBUcmFuc3BvcnRcIiwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMzE1Nzg5NDczNztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDE2MHB4O1xuICBtYXJnaW4tdG9wOiAtMnB4O1xuICBtYXJnaW4tYm90dG9tOiAtM3B4O1xuICBwYWRkaW5nLXRvcDogMnB4O1xuICBwYWRkaW5nLXJpZ2h0OiA4cHg7XG4gIHBhZGRpbmctYm90dG9tOiAzcHg7XG4gIHBhZGRpbmctbGVmdDogOHB4O1xuICBjb2xvcjogcmdiKDExLjYsIDQ0LjgsIDczLjYpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTg3LjIsIDIxMi4xLCAyMzMuNyk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay10YWcge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstdGFnIHtcbiAgICBmb250LXNpemU6IDE0cHQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgLmdvdnVrLXRhZyB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbn1cblxuLmdvdnVrLXRhZy0tZ3JleSB7XG4gIGNvbG9yOiByZ2IoNDAsIDQ1LCA0Ny41KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIyOC43NSwgMjMwLjI1LCAyMzEpO1xufVxuXG4uZ292dWstdGFnLS1wdXJwbGUge1xuICBjb2xvcjogcmdiKDcyLjUsIDIxLjUsIDY4KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIzOC41LCAyMjMuMiwgMjM3LjE1KTtcbn1cblxuLmdvdnVrLXRhZy0tdHVycXVvaXNlIHtcbiAgY29sb3I6IHJnYigxNiwgNjQuNCwgNjAuNCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyMTIsIDIzNi4yLCAyMzQuMik7XG59XG5cbi5nb3Z1ay10YWctLWJsdWUge1xuICBjb2xvcjogcmdiKDExLjYsIDQ0LjgsIDczLjYpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTg3LjIsIDIxMi4xLCAyMzMuNyk7XG59XG5cbi5nb3Z1ay10YWctLWxpZ2h0LWJsdWUge1xuICBjb2xvcjogcmdiKDExLjYsIDQ0LjgsIDczLjYpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjMyLjQsIDI0MC43LCAyNDcuOSk7XG59XG5cbi5nb3Z1ay10YWctLXllbGxvdyB7XG4gIGNvbG9yOiByZ2IoODkuMjUsIDc3LjM1LCAwKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMjQ2LjUsIDE5MS4yNSk7XG59XG5cbi5nb3Z1ay10YWctLW9yYW5nZSB7XG4gIGNvbG9yOiByZ2IoMTA5LjgsIDUzLjU1LCAyNS4yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1MS43LCAyMTQuMiwgMTk1LjMpO1xufVxuXG4uZ292dWstdGFnLS1yZWQge1xuICBjb2xvcjogcmdiKDQyLjQsIDEwLjYsIDUuNik7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyNDQuMjUsIDIwNC41LCAxOTguMjUpO1xufVxuXG4uZ292dWstdGFnLS1waW5rIHtcbiAgY29sb3I6IHJnYigxMDYuNSwgMjgsIDY0KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI0OC43LCAyMjUuMTUsIDIzNS45NSk7XG59XG5cbi5nb3Z1ay10YWctLWdyZWVuIHtcbiAgY29sb3I6IHJnYigwLCA4OS42LCA0OCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyMDQsIDIyNi40LCAyMTYpO1xufVxuXG5cbi5nb3Z1ay1waGFzZS1iYW5uZXIge1xuICBwYWRkaW5nLXRvcDogMTBweDtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYjFiNGI2O1xufVxuXG4uZ292dWstcGhhc2UtYmFubmVyX19jb250ZW50IHtcbiAgZm9udC1mYW1pbHk6IFwiR0RTIFRyYW5zcG9ydFwiLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIGNvbG9yOiAjMGIwYzBjO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgbWFyZ2luOiAwO1xufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLXBoYXNlLWJhbm5lcl9fY29udGVudCB7XG4gICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIH1cbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1waGFzZS1iYW5uZXJfX2NvbnRlbnQge1xuICAgIGZvbnQtc2l6ZTogMTRwdDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstcGhhc2UtYmFubmVyX19jb250ZW50IHtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgfVxufVxuXG4uZ292dWstcGhhc2UtYmFubmVyX19jb250ZW50X190YWcge1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstcGhhc2UtYmFubmVyX19jb250ZW50X190YWcge1xuICAgIGZvbnQtc2l6ZTogMTRwdDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1waGFzZS1iYW5uZXJfX2NvbnRlbnRfX3RhZyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICB9XG59XG5cbi5nb3Z1ay1waGFzZS1iYW5uZXJfX3RleHQge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG5cblxuXG5cblxuLmdvdnVrLXJhZGlvc19faXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4uZ292dWstcmFkaW9zX19pdGVtOmxhc3QtY2hpbGQsXG4uZ292dWstcmFkaW9zX19pdGVtOmxhc3Qtb2YtdHlwZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5nb3Z1ay1yYWRpb3NfX2lucHV0IHtcbiAgei1pbmRleDogMTtcbiAgd2lkdGg6IDQ0cHg7XG4gIGhlaWdodDogNDRweDtcbiAgbWFyZ2luOiAwO1xuICBvcGFjaXR5OiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5nb3Z1ay1yYWRpb3NfX2xhYmVsIHtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDc0cHgpO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiA3cHggMTVweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbn1cblxuLmdvdnVrLXJhZGlvc19fbGFiZWw6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAycHg7XG4gIGxlZnQ6IDJweDtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgYm9yZGVyOiAycHggc29saWQgY3VycmVudGNvbG9yO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4uZ292dWstcmFkaW9zX19sYWJlbDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTJweDtcbiAgbGVmdDogMTJweDtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiAxMHB4IHNvbGlkIGN1cnJlbnRjb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBvcGFjaXR5OiAwO1xuICBiYWNrZ3JvdW5kOiBjdXJyZW50Y29sb3I7XG59XG5cbi5nb3Z1ay1yYWRpb3NfX2hpbnQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IC01cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogNTlweDtcbn1cblxuLmdvdnVrLWxhYmVsOm5vdCguZ292dWstbGFiZWwtLW0pOm5vdCguZ292dWstbGFiZWwtLWwpOm5vdCguZ292dWstbGFiZWwtLXhsKSArIC5nb3Z1ay1yYWRpb3NfX2hpbnQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uZ292dWstcmFkaW9zX19pbnB1dDpmb2N1cyArIC5nb3Z1ay1yYWRpb3NfX2xhYmVsOjpiZWZvcmUge1xuICBib3JkZXItd2lkdGg6IDRweDtcbiAgb3V0bGluZTogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBvdXRsaW5lLW9mZnNldDogMXB4O1xuICBib3gtc2hhZG93OiAwIDAgMCA0cHggI2ZmZGQwMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAuZ292dWstcmFkaW9zX19pbnB1dDpmb2N1cyArIC5nb3Z1ay1yYWRpb3NfX2xhYmVsOjpiZWZvcmUge1xuICAgIG91dGxpbmUtY29sb3I6IEhpZ2hsaWdodDtcbiAgfVxufVxuXG4uZ292dWstcmFkaW9zX19pbnB1dDpjaGVja2VkICsgLmdvdnVrLXJhZGlvc19fbGFiZWw6OmFmdGVyIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmdvdnVrLXJhZGlvc19faW5wdXQ6ZGlzYWJsZWQsXG4uZ292dWstcmFkaW9zX19pbnB1dDpkaXNhYmxlZCArIC5nb3Z1ay1yYWRpb3NfX2xhYmVsIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLmdvdnVrLXJhZGlvc19faW5wdXQ6ZGlzYWJsZWQgKyAuZ292dWstcmFkaW9zX19sYWJlbCxcbi5nb3Z1ay1yYWRpb3NfX2lucHV0OmRpc2FibGVkIH4gLmdvdnVrLWhpbnQge1xuICBvcGFjaXR5OiAwLjU7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLXJhZGlvcy0taW5saW5lIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgfVxuICAuZ292dWstcmFkaW9zLS1pbmxpbmUgLmdvdnVrLXJhZGlvc19faXRlbSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICB9XG59XG5cbi5nb3Z1ay1yYWRpb3NfX2RpdmlkZXIge1xuICBmb250LWZhbWlseTogXCJHRFMgVHJhbnNwb3J0XCIsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxLjE4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjMxNTc4OTQ3Mzc7XG4gIGNvbG9yOiAjMGIwYzBjO1xuICB3aWR0aDogNDBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLXJhZGlvc19fZGl2aWRlciB7XG4gICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIH1cbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1yYWRpb3NfX2RpdmlkZXIge1xuICAgIGZvbnQtc2l6ZTogMTRwdDtcbiAgICBsaW5lLWhlaWdodDogMS4xNTtcbiAgfVxufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLXJhZGlvc19fZGl2aWRlciB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gIH1cbn1cblxuLmdvdnVrLXJhZGlvc19fY29uZGl0aW9uYWwge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICBtYXJnaW4tbGVmdDogMjBweDtcbiAgcGFkZGluZy1sZWZ0OiAzNXB4O1xuICBib3JkZXItbGVmdDogNHB4IHNvbGlkICNiMWI0YjY7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1yYWRpb3NfX2NvbmRpdGlvbmFsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG59XG4uZ292dWstZnJvbnRlbmQtc3VwcG9ydGVkIC5nb3Z1ay1yYWRpb3NfX2NvbmRpdGlvbmFsLS1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmdvdnVrLXJhZGlvc19fY29uZGl0aW9uYWwgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5nb3Z1ay1yYWRpb3MtLXNtYWxsIC5nb3Z1ay1yYWRpb3NfX2l0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLmdvdnVrLXJhZGlvcy0tc21hbGwgLmdvdnVrLXJhZGlvc19faW5wdXQge1xuICBtYXJnaW4tbGVmdDogLTEwcHg7XG59XG4uZ292dWstcmFkaW9zLS1zbWFsbCAuZ292dWstcmFkaW9zX19sYWJlbCB7XG4gIHBhZGRpbmctbGVmdDogMXB4O1xufVxuLmdvdnVrLXJhZGlvcy0tc21hbGwgLmdvdnVrLXJhZGlvc19fbGFiZWw6OmJlZm9yZSB7XG4gIHRvcDogMTBweDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbn1cbi5nb3Z1ay1yYWRpb3MtLXNtYWxsIC5nb3Z1ay1yYWRpb3NfX2xhYmVsOjphZnRlciB7XG4gIHRvcDogMTdweDtcbiAgbGVmdDogN3B4O1xuICBib3JkZXItd2lkdGg6IDVweDtcbn1cbi5nb3Z1ay1yYWRpb3MtLXNtYWxsIC5nb3Z1ay1yYWRpb3NfX2hpbnQge1xuICBwYWRkaW5nLWxlZnQ6IDM0cHg7XG59XG4uZ292dWstcmFkaW9zLS1zbWFsbCAuZ292dWstcmFkaW9zX19jb25kaXRpb25hbCB7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG59XG4uZ292dWstcmFkaW9zLS1zbWFsbCAuZ292dWstcmFkaW9zX19kaXZpZGVyIHtcbiAgd2lkdGg6IDI0cHg7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cbi5nb3Z1ay1yYWRpb3MtLXNtYWxsIC5nb3Z1ay1yYWRpb3NfX2l0ZW06aG92ZXIgLmdvdnVrLXJhZGlvc19faW5wdXQ6bm90KDpkaXNhYmxlZCkgKyAuZ292dWstcmFkaW9zX19sYWJlbDo6YmVmb3JlIHtcbiAgb3V0bGluZTogNHB4IGRhc2hlZCB0cmFuc3BhcmVudDtcbiAgb3V0bGluZS1vZmZzZXQ6IDFweDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMTBweCAjYjFiNGI2O1xufVxuLmdvdnVrLXJhZGlvcy0tc21hbGwgLmdvdnVrLXJhZGlvc19faXRlbTpob3ZlciAuZ292dWstcmFkaW9zX19pbnB1dDpmb2N1cyArIC5nb3Z1ay1yYWRpb3NfX2xhYmVsOjpiZWZvcmUge1xuICBib3gtc2hhZG93OiAwIDAgMCA0cHggI2ZmZGQwMCAwIDAgMCAxMHB4ICNiMWI0YjY7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgLmdvdnVrLXJhZGlvcy0tc21hbGwgLmdvdnVrLXJhZGlvc19faXRlbTpob3ZlciAuZ292dWstcmFkaW9zX19pbnB1dDpmb2N1cyArIC5nb3Z1ay1yYWRpb3NfX2xhYmVsOjpiZWZvcmUge1xuICAgIG91dGxpbmUtY29sb3I6IEhpZ2hsaWdodDtcbiAgfVxufVxuQG1lZGlhIChob3Zlcjogbm9uZSksIChwb2ludGVyOiBjb2Fyc2UpIHtcbiAgLmdvdnVrLXJhZGlvcy0tc21hbGwgLmdvdnVrLXJhZGlvc19faXRlbTpob3ZlciAuZ292dWstcmFkaW9zX19pbnB1dDpub3QoOmRpc2FibGVkKSArIC5nb3Z1ay1yYWRpb3NfX2xhYmVsOjpiZWZvcmUge1xuICAgIGJveC1zaGFkb3c6IGluaXRpYWw7XG4gIH1cbiAgLmdvdnVrLXJhZGlvcy0tc21hbGwgLmdvdnVrLXJhZGlvc19faXRlbTpob3ZlciAuZ292dWstcmFkaW9zX19pbnB1dDpmb2N1cyArIC5nb3Z1ay1yYWRpb3NfX2xhYmVsOjpiZWZvcmUge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDRweCAjZmZkZDAwO1xuICB9XG59XG5cblxuXG5cblxuLmdvdnVrLXNlbGVjdCB7XG4gIGZvbnQtZmFtaWx5OiBcIkdEUyBUcmFuc3BvcnRcIiwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG1pbi13aWR0aDogMTEuNWVtO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMi41cmVtO1xuICBwYWRkaW5nOiA1cHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkICMwYjBjMGM7XG4gIGNvbG9yOiAjMGIwYzBjO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLXNlbGVjdCB7XG4gICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIH1cbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1zZWxlY3Qge1xuICAgIGZvbnQtc2l6ZTogMTRwdDtcbiAgICBsaW5lLWhlaWdodDogMS4yNTtcbiAgfVxufVxuLmdvdnVrLXNlbGVjdDpmb2N1cyB7XG4gIG91dGxpbmU6IDNweCBzb2xpZCAjZmZkZDAwO1xuICBvdXRsaW5lLW9mZnNldDogMDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMnB4O1xufVxuLmdvdnVrLXNlbGVjdDpkaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuNTtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5nb3Z1ay1zZWxlY3Qgb3B0aW9uOmFjdGl2ZSxcbi5nb3Z1ay1zZWxlY3Qgb3B0aW9uOmNoZWNrZWQsXG4uZ292dWstc2VsZWN0OmZvY3VzOjotbXMtdmFsdWUge1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFkNzBiODtcbn1cblxuLmdvdnVrLXNlbGVjdC0tZXJyb3Ige1xuICBib3JkZXItY29sb3I6ICNkNDM1MWM7XG59XG4uZ292dWstc2VsZWN0LS1lcnJvcjpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzBiMGMwYztcbn1cblxuXG4uZ292dWstc2VydmljZS1uYXZpZ2F0aW9uIHtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4O1xuICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2IxYjRiNjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YzZjJmMTtcbn1cbi5nb3Z1ay10ZW1wbGF0ZS0tcmVicmFuZGVkIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb24ge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2IoMTQyLCAxODMuNSwgMjE5LjUpO1xufVxuLmdvdnVrLXRlbXBsYXRlLS1yZWJyYW5kZWQgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyNDMuNywgMjQ3Ljg1LCAyNTEuNDUpO1xufVxuXG4uZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogc3RhcnQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX2NvbnRhaW5lciB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cbn1cblxuLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9faXRlbSxcbi5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX3NlcnZpY2UtbmFtZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAxMHB4IDA7XG4gIGJvcmRlcjogMCBzb2xpZCByZ2IoMjYuMSwgMTAwLjgsIDE2NS42KTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9faXRlbSxcbiAgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fc2VydmljZS1uYW1lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgfVxuICAuZ292dWstdGVtcGxhdGUtLXJlYnJhbmRlZCAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19pdGVtLFxuICAuZ292dWstdGVtcGxhdGUtLXJlYnJhbmRlZCAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19zZXJ2aWNlLW5hbWUge1xuICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICBsaW5lLWhlaWdodDogMS41MjYzMTU3ODk1O1xuICB9XG4gIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX2l0ZW06bm90KDpsYXN0LWNoaWxkKSxcbiAgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fc2VydmljZS1uYW1lOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkgYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19pdGVtOm5vdCg6bGFzdC1jaGlsZCksXG4gIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX3NlcnZpY2UtbmFtZTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gIH1cbn1cblxuLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fc2VydmljZS1uYW1lICsgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fd3JhcHBlciAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19saXN0OmZpcnN0LWNoaWxkIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX2l0ZW06Zmlyc3QtY2hpbGQsXG4uZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19zZXJ2aWNlLW5hbWUgKyAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX193cmFwcGVyIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX3RvZ2dsZVtoaWRkZW5dICsgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fbGlzdCAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19pdGVtOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQwLjA1MjVlbSkge1xuICAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19pdGVtLS1hY3RpdmUge1xuICAgIG1hcmdpbi1sZWZ0OiAtMTVweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19pdGVtLS1hY3RpdmUge1xuICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDVweDtcbiAgfVxuICAuZ292dWstdGVtcGxhdGUtLXJlYnJhbmRlZCAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19pdGVtLS1hY3RpdmUge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICB9XG59XG5cbi5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX2xpbmsge1xuICBmb250LWZhbWlseTogXCJHRFMgVHJhbnNwb3J0XCIsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IG1heCgxcHgsIC4wNjI1cmVtKTtcbiAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAwLjE1NzhlbTtcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX2xpbmsge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICB9XG59XG4uZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19saW5rOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVzczogbWF4KDNweCwgLjE4NzVyZW0sIC4xMmVtKTtcbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IG5vbmU7XG4gIHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogbm9uZTtcbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogbm9uZTtcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXA6IG5vbmU7XG59XG4uZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19saW5rOmZvY3VzIHtcbiAgb3V0bGluZTogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzBiMGMwYztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZGQwMDtcbiAgYm94LXNoYWRvdzogMCAtMnB4ICNmZmRkMDAsIDAgNHB4ICMwYjBjMGM7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbkBzdXBwb3J0cyBub3QgKHRleHQtd3JhcDogYmFsYW5jZSkge1xuICAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19saW5rOmZvY3VzIHtcbiAgICAtd2Via2l0LWJveC1kZWNvcmF0aW9uLWJyZWFrOiBjbG9uZTtcbiAgICBib3gtZGVjb3JhdGlvbi1icmVhazogY2xvbmU7XG4gIH1cbn1cbi5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX2xpbms6bm90KDpob3Zlcik6bm90KDphY3RpdmUpIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fbGluazpsaW5rIHtcbiAgY29sb3I6ICMxZDcwYjg7XG59XG4uZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19saW5rOnZpc2l0ZWQge1xuICBjb2xvcjogIzFkNzBiODtcbn1cbi5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX2xpbms6aG92ZXIge1xuICBjb2xvcjogIzAwMzA3ODtcbn1cbi5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX2xpbms6YWN0aXZlIHtcbiAgY29sb3I6ICMwYjBjMGM7XG59XG4uZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19saW5rOmZvY3VzIHtcbiAgY29sb3I6ICMwYjBjMGM7XG59XG4uZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19saW5rOm5vdCg6aG92ZXIpOm5vdCg6Zm9jdXMpIHtcbiAgY29sb3I6IHJnYigyNi4xLCAxMDAuOCwgMTY1LjYpO1xufVxuXG4uZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19zZXJ2aWNlLW5hbWUge1xuICBmb250LWZhbWlseTogXCJHRFMgVHJhbnNwb3J0XCIsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAxLjE4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjMxNTc4OTQ3Mzc7XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19zZXJ2aWNlLW5hbWUge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19zZXJ2aWNlLW5hbWUge1xuICAgIGZvbnQtc2l6ZTogMTRwdDtcbiAgICBsaW5lLWhlaWdodDogMS4xNTtcbiAgfVxufVxuXG4uZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19zZXJ2aWNlLW5hbWUgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fbGluazpsaW5rLCAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19zZXJ2aWNlLW5hbWUgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fbGluazp2aXNpdGVkIHtcbiAgY29sb3I6ICMwYjBjMGM7XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19zZXJ2aWNlLW5hbWUgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fbGluazpsaW5rLCAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19zZXJ2aWNlLW5hbWUgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fbGluazp2aXNpdGVkIHtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgfVxufVxuLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fc2VydmljZS1uYW1lIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX2xpbms6aG92ZXIge1xuICBjb2xvcjogcmdiYSgxMSwgMTIsIDEyLCAwLjk5KTtcbn1cbi5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX3NlcnZpY2UtbmFtZSAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19saW5rOmFjdGl2ZSwgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fc2VydmljZS1uYW1lIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX2xpbms6Zm9jdXMge1xuICBjb2xvcjogIzBiMGMwYztcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX3NlcnZpY2UtbmFtZSAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19saW5rOmFjdGl2ZSwgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fc2VydmljZS1uYW1lIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX2xpbms6Zm9jdXMge1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICB9XG59XG5cbi5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX3dyYXBwZXIge1xuICBmbGV4LWdyb3c6IDE7XG59XG5cbi5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX3RvZ2dsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkdEUyBUcmFuc3BvcnRcIiwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMzE1Nzg5NDczNztcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIG1hcmdpbjogMTBweCAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIGNvbG9yOiByZ2IoMjYuMSwgMTAwLjgsIDE2NS42KTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgd29yZC1icmVhazogYnJlYWstYWxsO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX190b2dnbGUge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX190b2dnbGUge1xuICAgIGZvbnQtc2l6ZTogMTRwdDtcbiAgICBsaW5lLWhlaWdodDogMS4xNTtcbiAgfVxufVxuLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fdG9nZ2xlOmZvY3VzIHtcbiAgb3V0bGluZTogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzBiMGMwYztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZGQwMDtcbiAgYm94LXNoYWRvdzogMCAtMnB4ICNmZmRkMDAsIDAgNHB4ICMwYjBjMGM7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbkBzdXBwb3J0cyBub3QgKHRleHQtd3JhcDogYmFsYW5jZSkge1xuICAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX190b2dnbGU6Zm9jdXMge1xuICAgIC13ZWJraXQtYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lO1xuICAgIGJveC1kZWNvcmF0aW9uLWJyZWFrOiBjbG9uZTtcbiAgfVxufVxuLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fdG9nZ2xlOjphZnRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC1jbGlwLXBhdGg6IHBvbHlnb24oMCUgMCUsIDUwJSAxMDAlLCAxMDAlIDAlKTtcbiAgY2xpcC1wYXRoOiBwb2x5Z29uKDAlIDAlLCA1MCUgMTAwJSwgMTAwJSAwJSk7XG4gIGJvcmRlci13aWR0aDogOC42NnB4IDVweCAwIDVweDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogaW5oZXJpdDtcbiAgY29udGVudDogXCJcIjtcbiAgbWFyZ2luLWxlZnQ6IDVweDtcbn1cbi5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX3RvZ2dsZVthcmlhLWV4cGFuZGVkPXRydWVdOjphZnRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC1jbGlwLXBhdGg6IHBvbHlnb24oNTAlIDAlLCAwJSAxMDAlLCAxMDAlIDEwMCUpO1xuICBjbGlwLXBhdGg6IHBvbHlnb24oNTAlIDAlLCAwJSAxMDAlLCAxMDAlIDEwMCUpO1xuICBib3JkZXItd2lkdGg6IDAgNXB4IDguNjZweDtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogaW5oZXJpdDtcbn1cbi5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX3RvZ2dsZVtoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX3NlcnZpY2UtbmFtZSArIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX3dyYXBwZXIgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fdG9nZ2xlIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fbGlzdCB7XG4gIGZvbnQtZmFtaWx5OiBcIkdEUyBUcmFuc3BvcnRcIiwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMzE1Nzg5NDczNztcbiAgbWFyZ2luOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fbGlzdCB7XG4gICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIH1cbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX2xpc3Qge1xuICAgIGZvbnQtc2l6ZTogMTRwdDtcbiAgICBsaW5lLWhlaWdodDogMS4xNTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19saXN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIGFuZCAobWluLXdpZHRoOiAwXFwwICkge1xuICAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19saXN0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19hY3RpdmUtZmFsbGJhY2sge1xuICBmb250LXdlaWdodDogaW5oZXJpdDtcbn1cblxuLmdvdnVrLXRlbXBsYXRlLS1yZWJyYW5kZWQgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbi0taW52ZXJzZSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxZDcwYjg7XG59XG4uZ292dWstdGVtcGxhdGUtLXJlYnJhbmRlZCAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uLS1pbnZlcnNlIC5nb3Z1ay13aWR0aC1jb250YWluZXIge1xuICBib3JkZXItd2lkdGg6IDFweCAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHJnYigxNDIsIDE4My41LCAyMTkuNSk7XG59XG4uZ292dWstdGVtcGxhdGUtLXJlYnJhbmRlZCAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uLS1pbnZlcnNlIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX2NvbnRhaW5lciB7XG4gIG1hcmdpbi10b3A6IC0xcHg7XG59XG4uZ292dWstdGVtcGxhdGUtLXJlYnJhbmRlZCAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uLS1pbnZlcnNlIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX2l0ZW0sXG4uZ292dWstdGVtcGxhdGUtLXJlYnJhbmRlZCAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uLS1pbnZlcnNlIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX3NlcnZpY2UtbmFtZSB7XG4gIGJvcmRlci1jb2xvcjogI2ZmZmZmZjtcbn1cbi5nb3Z1ay10ZW1wbGF0ZS0tcmVicmFuZGVkIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb24tLWludmVyc2UgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fbGluazpsaW5rLCAuZ292dWstdGVtcGxhdGUtLXJlYnJhbmRlZCAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uLS1pbnZlcnNlIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX2xpbms6dmlzaXRlZCB7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuLmdvdnVrLXRlbXBsYXRlLS1yZWJyYW5kZWQgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbi0taW52ZXJzZSAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19saW5rOmhvdmVyLCAuZ292dWstdGVtcGxhdGUtLXJlYnJhbmRlZCAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uLS1pbnZlcnNlIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX2xpbms6YWN0aXZlIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45OSk7XG59XG4uZ292dWstdGVtcGxhdGUtLXJlYnJhbmRlZCAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uLS1pbnZlcnNlIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX2xpbms6Zm9jdXMge1xuICBjb2xvcjogIzBiMGMwYztcbn1cbi5nb3Z1ay10ZW1wbGF0ZS0tcmVicmFuZGVkIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb24tLWludmVyc2UgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fdG9nZ2xlOm5vdCg6Zm9jdXMpIHtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cblxuLmdvdnVrLXNraXAtbGluayB7XG4gIGZvbnQtZmFtaWx5OiBcIkdEUyBUcmFuc3BvcnRcIiwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgdGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVzczogbWF4KDFweCwgLjA2MjVyZW0pO1xuICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDAuMTU3OGVtO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMTBweCAxNXB4O1xufVxuLmdvdnVrLXNraXAtbGluazpub3QoOmFjdGl2ZSk6bm90KDpmb2N1cykge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIGNsaXA6IHJlY3QoMCAwIDAgMCkgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1jbGlwLXBhdGg6IGluc2V0KDUwJSkgIWltcG9ydGFudDtcbiAgY2xpcC1wYXRoOiBpbnNldCg1MCUpICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstc2tpcC1saW5rIHtcbiAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgfVxufVxuLmdvdnVrLXNraXAtbGluazpsaW5rLCAuZ292dWstc2tpcC1saW5rOnZpc2l0ZWQge1xuICBjb2xvcjogIzBiMGMwYztcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1za2lwLWxpbms6bGluaywgLmdvdnVrLXNraXAtbGluazp2aXNpdGVkIHtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgfVxufVxuLmdvdnVrLXNraXAtbGluazpob3ZlciB7XG4gIGNvbG9yOiByZ2JhKDExLCAxMiwgMTIsIDAuOTkpO1xufVxuLmdvdnVrLXNraXAtbGluazphY3RpdmUsIC5nb3Z1ay1za2lwLWxpbms6Zm9jdXMge1xuICBjb2xvcjogIzBiMGMwYztcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1za2lwLWxpbms6YWN0aXZlLCAuZ292dWstc2tpcC1saW5rOmZvY3VzIHtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgfVxufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLXNraXAtbGluayB7XG4gICAgZm9udC1zaXplOiAxNHB0O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIH1cbn1cbkBzdXBwb3J0cyAocGFkZGluZzogbWF4KGNhbGMoMHB4KSkpIHtcbiAgLmdvdnVrLXNraXAtbGluayB7XG4gICAgcGFkZGluZy1yaWdodDogbWF4KDE1cHgsIGNhbGMoMTVweCArIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpKSk7XG4gICAgcGFkZGluZy1sZWZ0OiBtYXgoMTVweCwgY2FsYygxNXB4ICsgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KSkpO1xuICB9XG59XG4uZ292dWstc2tpcC1saW5rOmZvY3VzIHtcbiAgb3V0bGluZTogM3B4IHNvbGlkICNmZmRkMDA7XG4gIG91dGxpbmUtb2Zmc2V0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZkZDAwO1xufVxuXG4uZ292dWstc2tpcC1saW5rLWZvY3VzZWQtZWxlbWVudDpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cblxuLmdvdnVrLXN1bW1hcnktbGlzdCB7XG4gIGZvbnQtZmFtaWx5OiBcIkdEUyBUcmFuc3BvcnRcIiwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMzE1Nzg5NDczNztcbiAgY29sb3I6ICMwYjBjMGM7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1zdW1tYXJ5LWxpc3Qge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstc3VtbWFyeS1saXN0IHtcbiAgICBmb250LXNpemU6IDE0cHQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1zdW1tYXJ5LWxpc3Qge1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1zdW1tYXJ5LWxpc3Qge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstc3VtbWFyeS1saXN0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB9XG59XG5cbi5nb3Z1ay1zdW1tYXJ5LWxpc3RfX3JvdyB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYjFiNGI2O1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQwLjA1MjVlbSkge1xuICAuZ292dWstc3VtbWFyeS1saXN0X19yb3cge1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLXN1bW1hcnktbGlzdF9fcm93IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3c7XG4gIH1cbn1cblxuLmdvdnVrLXN1bW1hcnktbGlzdF9fcm93Om5vdCguZ292dWstc3VtbWFyeS1saXN0X19yb3ctLW5vLWFjdGlvbnMpID4gOmxhc3QtY2hpbGQge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX3Jvdy0tbm8tYWN0aW9uczo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB3aWR0aDogMjAlO1xuICB9XG59XG5cbi5nb3Z1ay1zdW1tYXJ5LWxpc3RfX2tleSxcbi5nb3Z1ay1zdW1tYXJ5LWxpc3RfX3ZhbHVlLFxuLmdvdnVrLXN1bW1hcnktbGlzdF9fYWN0aW9ucyB7XG4gIG1hcmdpbjogMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLXN1bW1hcnktbGlzdF9fa2V5LFxuICAuZ292dWstc3VtbWFyeS1saXN0X192YWx1ZSxcbiAgLmdvdnVrLXN1bW1hcnktbGlzdF9fYWN0aW9ucyB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICB9XG59XG5cbi5nb3Z1ay1zdW1tYXJ5LWxpc3RfX2FjdGlvbnMge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstc3VtbWFyeS1saXN0X19hY3Rpb25zIHtcbiAgICB3aWR0aDogMjAlO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG59XG5cbi5nb3Z1ay1zdW1tYXJ5LWxpc3RfX2tleSxcbi5nb3Z1ay1zdW1tYXJ5LWxpc3RfX3ZhbHVlIHtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xufVxuXG4uZ292dWstc3VtbWFyeS1saXN0X19rZXkge1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX2tleSB7XG4gICAgd2lkdGg6IDMwJTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDAuMDUyNWVtKSB7XG4gIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX3ZhbHVlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICB9XG59XG5cbi5nb3Z1ay1zdW1tYXJ5LWxpc3RfX3ZhbHVlID4gcCB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi5nb3Z1ay1zdW1tYXJ5LWxpc3RfX3ZhbHVlID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uZ292dWstc3VtbWFyeS1saXN0X19hY3Rpb25zLWxpc3Qge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4uZ292dWstc3VtbWFyeS1saXN0X19hY3Rpb25zLWxpc3QtaXRlbSxcbi5nb3Z1ay1zdW1tYXJ5LWNhcmRfX2FjdGlvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQwLjA1MjVlbSkge1xuICAuZ292dWstc3VtbWFyeS1saXN0X19hY3Rpb25zLWxpc3QtaXRlbSxcbiAgLmdvdnVrLXN1bW1hcnktY2FyZF9fYWN0aW9uIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjYjFiNGI2O1xuICB9XG4gIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX2FjdGlvbnMtbGlzdC1pdGVtOmxhc3QtY2hpbGQsXG4gIC5nb3Z1ay1zdW1tYXJ5LWNhcmRfX2FjdGlvbjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLXN1bW1hcnktbGlzdF9fYWN0aW9ucy1saXN0LWl0ZW0sXG4gIC5nb3Z1ay1zdW1tYXJ5LWNhcmRfX2FjdGlvbiB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICB9XG4gIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX2FjdGlvbnMtbGlzdC1pdGVtOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAuZ292dWstc3VtbWFyeS1jYXJkX19hY3Rpb246bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2IxYjRiNjtcbiAgfVxuICAuZ292dWstc3VtbWFyeS1saXN0X19hY3Rpb25zLWxpc3QtaXRlbTpmaXJzdC1jaGlsZCxcbiAgLmdvdnVrLXN1bW1hcnktY2FyZF9fYWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG4uZ292dWstc3VtbWFyeS1saXN0X19hY3Rpb25zLWxpc3QtaXRlbSAuZ292dWstbGluazpmb2N1cyB7XG4gIGlzb2xhdGlvbjogaXNvbGF0ZTtcbn1cblxuLmdvdnVrLXN1bW1hcnktbGlzdC0tbm8tYm9yZGVyIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX3JvdyB7XG4gIGJvcmRlcjogMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLXN1bW1hcnktbGlzdC0tbm8tYm9yZGVyIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX2tleSxcbiAgLmdvdnVrLXN1bW1hcnktbGlzdC0tbm8tYm9yZGVyIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX3ZhbHVlLFxuICAuZ292dWstc3VtbWFyeS1saXN0LS1uby1ib3JkZXIgLmdvdnVrLXN1bW1hcnktbGlzdF9fYWN0aW9ucyB7XG4gICAgcGFkZGluZy1ib3R0b206IDExcHg7XG4gIH1cbn1cblxuLmdvdnVrLXN1bW1hcnktbGlzdF9fcm93LS1uby1ib3JkZXIge1xuICBib3JkZXI6IDA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX3Jvdy0tbm8tYm9yZGVyIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX2tleSxcbiAgLmdvdnVrLXN1bW1hcnktbGlzdF9fcm93LS1uby1ib3JkZXIgLmdvdnVrLXN1bW1hcnktbGlzdF9fdmFsdWUsXG4gIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX3Jvdy0tbm8tYm9yZGVyIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX2FjdGlvbnMge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMXB4O1xuICB9XG59XG5cbi5nb3Z1ay1zdW1tYXJ5LWNhcmQge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjYjFiNGI2O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstc3VtbWFyeS1jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB9XG59XG5cbi5nb3Z1ay1zdW1tYXJ5LWNhcmRfX3RpdGxlLXdyYXBwZXIge1xuICBwYWRkaW5nOiAxNXB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmM2YyZjE7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1zdW1tYXJ5LWNhcmRfX3RpdGxlLXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIHBhZGRpbmc6IDE1cHggMjBweDtcbiAgfVxufVxuXG4uZ292dWstc3VtbWFyeS1jYXJkX190aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkdEUyBUcmFuc3BvcnRcIiwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMzE1Nzg5NDczNztcbiAgY29sb3I6ICMwYjBjMGM7XG4gIG1hcmdpbjogNXB4IDIwcHggMTBweCAwO1xufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLXN1bW1hcnktY2FyZF9fdGl0bGUge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstc3VtbWFyeS1jYXJkX190aXRsZSB7XG4gICAgZm9udC1zaXplOiAxNHB0O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstc3VtbWFyeS1jYXJkX190aXRsZSB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLXN1bW1hcnktY2FyZF9fdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgfVxufVxuXG4uZ292dWstc3VtbWFyeS1jYXJkX19hY3Rpb25zIHtcbiAgZm9udC1zaXplOiAxLjE4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjMxNTc4OTQ3Mzc7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcm93LWdhcDogMTBweDtcbiAgbWFyZ2luOiA1cHggMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1zdW1tYXJ5LWNhcmRfX2FjdGlvbnMge1xuICAgIGZvbnQtc2l6ZTogMTRwdDtcbiAgICBsaW5lLWhlaWdodDogMS4xNTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstc3VtbWFyeS1jYXJkX19hY3Rpb25zIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHJpZ2h0O1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG59XG5cbi5nb3Z1ay1zdW1tYXJ5LWNhcmRfX2FjdGlvbiB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIC5nb3Z1ay1zdW1tYXJ5LWNhcmRfX2FjdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIC5nb3Z1ay1zdW1tYXJ5LWNhcmRfX2FjdGlvbjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5nb3Z1ay1zdW1tYXJ5LWNhcmRfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAxNXB4IDE1cHggMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLXN1bW1hcnktY2FyZF9fY29udGVudCB7XG4gICAgcGFkZGluZzogMTVweCAyMHB4O1xuICB9XG59XG4uZ292dWstc3VtbWFyeS1jYXJkX19jb250ZW50IC5nb3Z1ay1zdW1tYXJ5LWxpc3Qge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLmdvdnVrLXN1bW1hcnktY2FyZF9fY29udGVudCAuZ292dWstc3VtbWFyeS1saXN0X19yb3c6bGFzdC1vZi10eXBlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuXG4uZ292dWstdGFibGUge1xuICBmb250LWZhbWlseTogXCJHRFMgVHJhbnNwb3J0XCIsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxLjE4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjMxNTc4OTQ3Mzc7XG4gIGNvbG9yOiAjMGIwYzBjO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstdGFibGUge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstdGFibGUge1xuICAgIGZvbnQtc2l6ZTogMTRwdDtcbiAgICBsaW5lLWhlaWdodDogMS4xNTtcbiAgfVxufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLXRhYmxlIHtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstdGFibGUge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQwLjA1MjVlbSkge1xuICAuZ292dWstdGFibGUtLXNtYWxsLXRleHQtdW50aWwtdGFibGV0IHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCBhbmQgKG1heC13aWR0aDogNDAuMDUyNWVtKSB7XG4gIC5nb3Z1ay10YWJsZS0tc21hbGwtdGV4dC11bnRpbC10YWJsZXQge1xuICAgIGZvbnQtc2l6ZTogMTRwdDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG59XG5cbi5nb3Z1ay10YWJsZV9faGVhZGVyIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLmdvdnVrLXRhYmxlX19oZWFkZXIsXG4uZ292dWstdGFibGVfX2NlbGwge1xuICBwYWRkaW5nOiAxMHB4IDIwcHggMTBweCAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2IxYjRiNjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLmdvdnVrLXRhYmxlX19jZWxsLS1udW1lcmljIHtcbiAgZm9udC12YXJpYW50LW51bWVyaWM6IHRhYnVsYXItbnVtcztcbn1cblxuLmdvdnVrLXRhYmxlX19oZWFkZXItLW51bWVyaWMsXG4uZ292dWstdGFibGVfX2NlbGwtLW51bWVyaWMge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLmdvdnVrLXRhYmxlX19oZWFkZXI6bGFzdC1jaGlsZCxcbi5nb3Z1ay10YWJsZV9fY2VsbDpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLmdvdnVrLXRhYmxlX19jYXB0aW9uIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZGlzcGxheTogdGFibGUtY2FwdGlvbjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmdvdnVrLXRhYmxlX19jYXB0aW9uLS14bCxcbi5nb3Z1ay10YWJsZV9fY2FwdGlvbi0tbCxcbi5nb3Z1ay10YWJsZV9fY2FwdGlvbi0tbSB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5cbi5nb3Z1ay10YWJsZV9fY2FwdGlvbi0teGwge1xuICBmb250LXNpemU6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjA5Mzc1O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstdGFibGVfX2NhcHRpb24tLXhsIHtcbiAgICBmb250LXNpemU6IDNyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMDQxNjY2NjY2NztcbiAgfVxufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLXRhYmxlX19jYXB0aW9uLS14bCB7XG4gICAgZm9udC1zaXplOiAzMnB0O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICB9XG59XG5cbi5nb3Z1ay10YWJsZV9fY2FwdGlvbi0tbCB7XG4gIGZvbnQtc2l6ZTogMS42ODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4xMTExMTExMTExO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstdGFibGVfX2NhcHRpb24tLWwge1xuICAgIGZvbnQtc2l6ZTogMi4yNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4xMTExMTExMTExO1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstdGFibGVfX2NhcHRpb24tLWwge1xuICAgIGZvbnQtc2l6ZTogMjRwdDtcbiAgICBsaW5lLWhlaWdodDogMS4wNTtcbiAgfVxufVxuXG4uZ292dWstdGFibGVfX2NhcHRpb24tLW0ge1xuICBmb250LXNpemU6IDEuMzEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTkwNDc2MTkwNTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLXRhYmxlX19jYXB0aW9uLS1tIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yNTtcbiAgfVxufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLXRhYmxlX19jYXB0aW9uLS1tIHtcbiAgICBmb250LXNpemU6IDE4cHQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIH1cbn1cblxuXG4uZ292dWstdGFicyB7XG4gIG1hcmdpbi10b3A6IDVweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgZm9udC1mYW1pbHk6IFwiR0RTIFRyYW5zcG9ydFwiLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4zMTU3ODk0NzM3O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstdGFicyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLXRhYnMge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstdGFicyB7XG4gICAgZm9udC1zaXplOiAxNHB0O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICB9XG59XG5cbi5nb3Z1ay10YWJzX190aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4zMTU3ODk0NzM3O1xuICBmb250LXdlaWdodDogNDAwO1xuICBjb2xvcjogIzBiMGMwYztcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay10YWJzX190aXRsZSB7XG4gICAgZm9udC1zaXplOiAxNHB0O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstdGFic19fdGl0bGUge1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICB9XG59XG5cbi5nb3Z1ay10YWJzX19saXN0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstdGFic19fbGlzdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxufVxuXG4uZ292dWstdGFic19fbGlzdC1pdGVtIHtcbiAgbWFyZ2luLWxlZnQ6IDI1cHg7XG59XG4uZ292dWstdGFic19fbGlzdC1pdGVtOjpiZWZvcmUge1xuICBjb2xvcjogIzBiMGMwYztcbiAgY29udGVudDogXCLigJRcIjtcbiAgbWFyZ2luLWxlZnQ6IC0yNXB4O1xuICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstdGFic19fbGlzdC1pdGVtOjpiZWZvcmUge1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICB9XG59XG5cbi5nb3Z1ay10YWJzX190YWIge1xuICBmb250LWZhbWlseTogXCJHRFMgVHJhbnNwb3J0XCIsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IG1heCgxcHgsIC4wNjI1cmVtKTtcbiAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAwLjE1NzhlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLXRhYnNfX3RhYiB7XG4gICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIH1cbn1cbi5nb3Z1ay10YWJzX190YWI6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiBtYXgoM3B4LCAuMTg3NXJlbSwgLjEyZW0pO1xuICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwLWluazogbm9uZTtcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lO1xuICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBub25lO1xuICB0ZXh0LWRlY29yYXRpb24tc2tpcDogbm9uZTtcbn1cbi5nb3Z1ay10YWJzX190YWI6Zm9jdXMge1xuICBvdXRsaW5lOiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjMGIwYzBjO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZkZDAwO1xuICBib3gtc2hhZG93OiAwIC0ycHggI2ZmZGQwMCwgMCA0cHggIzBiMGMwYztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuQHN1cHBvcnRzIG5vdCAodGV4dC13cmFwOiBiYWxhbmNlKSB7XG4gIC5nb3Z1ay10YWJzX190YWI6Zm9jdXMge1xuICAgIC13ZWJraXQtYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lO1xuICAgIGJveC1kZWNvcmF0aW9uLWJyZWFrOiBjbG9uZTtcbiAgfVxufVxuLmdvdnVrLXRhYnNfX3RhYjpsaW5rIHtcbiAgY29sb3I6ICMxZDcwYjg7XG59XG4uZ292dWstdGFic19fdGFiOnZpc2l0ZWQge1xuICBjb2xvcjogIzRjMmM5Mjtcbn1cbi5nb3Z1ay10YWJzX190YWI6aG92ZXIge1xuICBjb2xvcjogIzAwMzA3ODtcbn1cbi5nb3Z1ay10YWJzX190YWI6YWN0aXZlIHtcbiAgY29sb3I6ICMwYjBjMGM7XG59XG4uZ292dWstdGFic19fdGFiOmZvY3VzIHtcbiAgY29sb3I6ICMwYjBjMGM7XG59XG5cbi5nb3Z1ay10YWJzX19wYW5lbCB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay10YWJzX19wYW5lbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLXRhYnNfX2xpc3Qge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNiMWI0YjY7XG4gIH1cbiAgLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstdGFic19fbGlzdDo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstdGFic19fdGl0bGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstdGFic19fbGlzdC1pdGVtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YzZjJmMTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstdGFic19fbGlzdC1pdGVtOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IG5vbmU7XG4gIH1cbiAgLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstdGFic19fbGlzdC1pdGVtLS1zZWxlY3RlZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogLTFweDtcbiAgICBwYWRkaW5nLXRvcDogMTRweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxOXB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxNnB4O1xuICAgIHBhZGRpbmctbGVmdDogMTlweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYjFiNGI2O1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgfVxuICAuZ292dWstZnJvbnRlbmQtc3VwcG9ydGVkIC5nb3Z1ay10YWJzX19saXN0LWl0ZW0tLXNlbGVjdGVkIC5nb3Z1ay10YWJzX190YWIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuICAuZ292dWstZnJvbnRlbmQtc3VwcG9ydGVkIC5nb3Z1ay10YWJzX190YWIge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstdGFic19fdGFiOmxpbmssIC5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLXRhYnNfX3RhYjp2aXNpdGVkIHtcbiAgICBjb2xvcjogIzBiMGMwYztcbiAgfVxufVxuQG1lZGlhIHByaW50IGFuZCAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstdGFic19fdGFiOmxpbmssIC5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLXRhYnNfX3RhYjp2aXNpdGVkIHtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstZnJvbnRlbmQtc3VwcG9ydGVkIC5nb3Z1ay10YWJzX190YWI6aG92ZXIge1xuICAgIGNvbG9yOiByZ2JhKDExLCAxMiwgMTIsIDAuOTkpO1xuICB9XG4gIC5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLXRhYnNfX3RhYjphY3RpdmUsIC5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLXRhYnNfX3RhYjpmb2N1cyB7XG4gICAgY29sb3I6ICMwYjBjMGM7XG4gIH1cbn1cbkBtZWRpYSBwcmludCBhbmQgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLXRhYnNfX3RhYjphY3RpdmUsIC5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLXRhYnNfX3RhYjpmb2N1cyB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstdGFic19fdGFiOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICB9XG4gIC5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgLmdvdnVrLXRhYnNfX3BhbmVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYjFiNGI2O1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbiAgLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAuZ292dWstdGFic19fcGFuZWwgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAuZ292dWstZnJvbnRlbmQtc3VwcG9ydGVkIC5nb3Z1ay10YWJzX19wYW5lbC0taGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cblxuXG5cbi5nb3Z1ay10YXNrLWxpc3Qge1xuICBmb250LWZhbWlseTogXCJHRFMgVHJhbnNwb3J0XCIsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxLjE4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjMxNTc4OTQ3Mzc7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay10YXNrLWxpc3Qge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstdGFzay1saXN0IHtcbiAgICBmb250LXNpemU6IDE0cHQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLXRhc2stbGlzdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxufVxuXG4uZ292dWstdGFzay1saXN0X19pdGVtIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctdG9wOiAxMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNiMWI0YjY7XG59XG5cbi5nb3Z1ay10YXNrLWxpc3RfX2l0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2IxYjRiNjtcbn1cblxuLmdvdnVrLXRhc2stbGlzdF9faXRlbS0td2l0aC1saW5rOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2YzZjJmMTtcbn1cblxuLmdvdnVrLXRhc2stbGlzdF9fbmFtZS1hbmQtaGludCB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGNvbG9yOiAjMGIwYzBjO1xufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLXRhc2stbGlzdF9fbmFtZS1hbmQtaGludCB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gIH1cbn1cblxuLmdvdnVrLXRhc2stbGlzdF9fc3RhdHVzIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgY29sb3I6ICMwYjBjMGM7XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstdGFzay1saXN0X19zdGF0dXMge1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICB9XG59XG5cbi5nb3Z1ay10YXNrLWxpc3RfX3N0YXR1cy0tY2Fubm90LXN0YXJ0LXlldCB7XG4gIGNvbG9yOiAjNTA1YTVmO1xufVxuXG4uZ292dWstdGFzay1saXN0X19saW5rOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbn1cblxuLmdvdnVrLXRhc2stbGlzdF9faGludCB7XG4gIG1hcmdpbi10b3A6IDVweDtcbiAgY29sb3I6ICM1MDVhNWY7XG59XG5cblxuXG5cblxuXG4uZ292dWstd2FybmluZy10ZXh0IHtcbiAgZm9udC1mYW1pbHk6IFwiR0RTIFRyYW5zcG9ydFwiLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4zMTU3ODk0NzM3O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDEwcHggMDtcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay13YXJuaW5nLXRleHQge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstd2FybmluZy10ZXh0IHtcbiAgICBmb250LXNpemU6IDE0cHQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLXdhcm5pbmctdGV4dCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxufVxuXG4uZ292dWstd2FybmluZy10ZXh0X19pY29uIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIG1pbi13aWR0aDogMzVweDtcbiAgbWluLWhlaWdodDogMzVweDtcbiAgbWFyZ2luLXRvcDogLTdweDtcbiAgYm9yZGVyOiAzcHggc29saWQgIzBiMGMwYztcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgYmFja2dyb3VuZDogIzBiMGMwYztcbiAgZm9udC1zaXplOiAzMHB4O1xuICBsaW5lLWhlaWdodDogMjlweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBmb3JjZWQtY29sb3ItYWRqdXN0OiBub25lO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstd2FybmluZy10ZXh0X19pY29uIHtcbiAgICBtYXJnaW4tdG9wOiAtNXB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gIC5nb3Z1ay13YXJuaW5nLXRleHRfX2ljb24ge1xuICAgIGJvcmRlci1jb2xvcjogd2luZG93VGV4dDtcbiAgICBjb2xvcjogd2luZG93VGV4dDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4uZ292dWstd2FybmluZy10ZXh0X190ZXh0IHtcbiAgY29sb3I6ICMwYjBjMGM7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6IDQ1cHg7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLXdhcm5pbmctdGV4dF9fdGV4dCB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gIH1cbn1cblxuXG5cbi5nb3Z1ay1jbGVhcmZpeDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7XG59XG5cblxuLmdvdnVrLXZpc3VhbGx5LWhpZGRlbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgY2xpcDogcmVjdCgwIDAgMCAwKSAhaW1wb3J0YW50O1xuICAtd2Via2l0LWNsaXAtcGF0aDogaW5zZXQoNTAlKSAhaW1wb3J0YW50O1xuICBjbGlwLXBhdGg6IGluc2V0KDUwJSkgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cbi5nb3Z1ay12aXN1YWxseS1oaWRkZW46OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiwqBcIjtcbn1cbi5nb3Z1ay12aXN1YWxseS1oaWRkZW46OmFmdGVyIHtcbiAgY29udGVudDogXCLCoFwiO1xufVxuXG4uZ292dWstdmlzdWFsbHktaGlkZGVuLWZvY3VzYWJsZTpub3QoOmFjdGl2ZSk6bm90KDpmb2N1cykge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIGNsaXA6IHJlY3QoMCAwIDAgMCkgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1jbGlwLXBhdGg6IGluc2V0KDUwJSkgIWltcG9ydGFudDtcbiAgY2xpcC1wYXRoOiBpbnNldCg1MCUpICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cblxuXG4uZ292dWstXFwhLWRpc3BsYXktaW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtZGlzcGxheS1pbmxpbmUtYmxvY2sge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1kaXNwbGF5LWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1kaXNwbGF5LW5vbmUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1cXCEtZGlzcGxheS1ub25lLXByaW50IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmdvdnVrLVxcIS1tYXJnaW4tMCB7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLW1hcmdpbi10b3AtMCB7XG4gIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1tYXJnaW4tcmlnaHQtMCB7XG4gIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLW1hcmdpbi1ib3R0b20tMCB7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1tYXJnaW4tbGVmdC0wIHtcbiAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1tYXJnaW4tMSB7XG4gIG1hcmdpbjogNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtbWFyZ2luLXRvcC0xIHtcbiAgbWFyZ2luLXRvcDogNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtbWFyZ2luLXJpZ2h0LTEge1xuICBtYXJnaW4tcmlnaHQ6IDVweCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLW1hcmdpbi1ib3R0b20tMSB7XG4gIG1hcmdpbi1ib3R0b206IDVweCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLW1hcmdpbi1sZWZ0LTEge1xuICBtYXJnaW4tbGVmdDogNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtbWFyZ2luLTIge1xuICBtYXJnaW46IDEwcHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1tYXJnaW4tdG9wLTIge1xuICBtYXJnaW4tdG9wOiAxMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtbWFyZ2luLXJpZ2h0LTIge1xuICBtYXJnaW4tcmlnaHQ6IDEwcHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1tYXJnaW4tYm90dG9tLTIge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtbWFyZ2luLWxlZnQtMiB7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtbWFyZ2luLTMge1xuICBtYXJnaW46IDE1cHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1tYXJnaW4tdG9wLTMge1xuICBtYXJnaW4tdG9wOiAxNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtbWFyZ2luLXJpZ2h0LTMge1xuICBtYXJnaW4tcmlnaHQ6IDE1cHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1tYXJnaW4tYm90dG9tLTMge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtbWFyZ2luLWxlZnQtMyB7XG4gIG1hcmdpbi1sZWZ0OiAxNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtbWFyZ2luLTQge1xuICBtYXJnaW46IDE1cHggIWltcG9ydGFudDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLVxcIS1tYXJnaW4tNCB7XG4gICAgbWFyZ2luOiAyMHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmdvdnVrLVxcIS1tYXJnaW4tdG9wLTQge1xuICBtYXJnaW4tdG9wOiAxNXB4ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1cXCEtbWFyZ2luLXRvcC00IHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmdvdnVrLVxcIS1tYXJnaW4tcmlnaHQtNCB7XG4gIG1hcmdpbi1yaWdodDogMTVweCAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstXFwhLW1hcmdpbi1yaWdodC00IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDIwcHggIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZ292dWstXFwhLW1hcmdpbi1ib3R0b20tNCB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHggIWltcG9ydGFudDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLVxcIS1tYXJnaW4tYm90dG9tLTQge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHggIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZ292dWstXFwhLW1hcmdpbi1sZWZ0LTQge1xuICBtYXJnaW4tbGVmdDogMTVweCAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstXFwhLW1hcmdpbi1sZWZ0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmdvdnVrLVxcIS1tYXJnaW4tNSB7XG4gIG1hcmdpbjogMTVweCAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstXFwhLW1hcmdpbi01IHtcbiAgICBtYXJnaW46IDI1cHggIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZ292dWstXFwhLW1hcmdpbi10b3AtNSB7XG4gIG1hcmdpbi10b3A6IDE1cHggIWltcG9ydGFudDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLVxcIS1tYXJnaW4tdG9wLTUge1xuICAgIG1hcmdpbi10b3A6IDI1cHggIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZ292dWstXFwhLW1hcmdpbi1yaWdodC01IHtcbiAgbWFyZ2luLXJpZ2h0OiAxNXB4ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1cXCEtbWFyZ2luLXJpZ2h0LTUge1xuICAgIG1hcmdpbi1yaWdodDogMjVweCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5nb3Z1ay1cXCEtbWFyZ2luLWJvdHRvbS01IHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweCAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstXFwhLW1hcmdpbi1ib3R0b20tNSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5nb3Z1ay1cXCEtbWFyZ2luLWxlZnQtNSB7XG4gIG1hcmdpbi1sZWZ0OiAxNXB4ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1cXCEtbWFyZ2luLWxlZnQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1cHggIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZ292dWstXFwhLW1hcmdpbi02IHtcbiAgbWFyZ2luOiAyMHB4ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1cXCEtbWFyZ2luLTYge1xuICAgIG1hcmdpbjogMzBweCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5nb3Z1ay1cXCEtbWFyZ2luLXRvcC02IHtcbiAgbWFyZ2luLXRvcDogMjBweCAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstXFwhLW1hcmdpbi10b3AtNiB7XG4gICAgbWFyZ2luLXRvcDogMzBweCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5nb3Z1ay1cXCEtbWFyZ2luLXJpZ2h0LTYge1xuICBtYXJnaW4tcmlnaHQ6IDIwcHggIWltcG9ydGFudDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLVxcIS1tYXJnaW4tcmlnaHQtNiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzMHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmdvdnVrLVxcIS1tYXJnaW4tYm90dG9tLTYge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1cXCEtbWFyZ2luLWJvdHRvbS02IHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmdvdnVrLVxcIS1tYXJnaW4tbGVmdC02IHtcbiAgbWFyZ2luLWxlZnQ6IDIwcHggIWltcG9ydGFudDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLVxcIS1tYXJnaW4tbGVmdC02IHtcbiAgICBtYXJnaW4tbGVmdDogMzBweCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5nb3Z1ay1cXCEtbWFyZ2luLTcge1xuICBtYXJnaW46IDI1cHggIWltcG9ydGFudDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLVxcIS1tYXJnaW4tNyB7XG4gICAgbWFyZ2luOiA0MHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmdvdnVrLVxcIS1tYXJnaW4tdG9wLTcge1xuICBtYXJnaW4tdG9wOiAyNXB4ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1cXCEtbWFyZ2luLXRvcC03IHtcbiAgICBtYXJnaW4tdG9wOiA0MHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmdvdnVrLVxcIS1tYXJnaW4tcmlnaHQtNyB7XG4gIG1hcmdpbi1yaWdodDogMjVweCAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstXFwhLW1hcmdpbi1yaWdodC03IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDQwcHggIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZ292dWstXFwhLW1hcmdpbi1ib3R0b20tNyB7XG4gIG1hcmdpbi1ib3R0b206IDI1cHggIWltcG9ydGFudDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLVxcIS1tYXJnaW4tYm90dG9tLTcge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHggIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZ292dWstXFwhLW1hcmdpbi1sZWZ0LTcge1xuICBtYXJnaW4tbGVmdDogMjVweCAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstXFwhLW1hcmdpbi1sZWZ0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA0MHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmdvdnVrLVxcIS1tYXJnaW4tOCB7XG4gIG1hcmdpbjogMzBweCAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstXFwhLW1hcmdpbi04IHtcbiAgICBtYXJnaW46IDUwcHggIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZ292dWstXFwhLW1hcmdpbi10b3AtOCB7XG4gIG1hcmdpbi10b3A6IDMwcHggIWltcG9ydGFudDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLVxcIS1tYXJnaW4tdG9wLTgge1xuICAgIG1hcmdpbi10b3A6IDUwcHggIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZ292dWstXFwhLW1hcmdpbi1yaWdodC04IHtcbiAgbWFyZ2luLXJpZ2h0OiAzMHB4ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1cXCEtbWFyZ2luLXJpZ2h0LTgge1xuICAgIG1hcmdpbi1yaWdodDogNTBweCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5nb3Z1ay1cXCEtbWFyZ2luLWJvdHRvbS04IHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweCAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstXFwhLW1hcmdpbi1ib3R0b20tOCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5nb3Z1ay1cXCEtbWFyZ2luLWxlZnQtOCB7XG4gIG1hcmdpbi1sZWZ0OiAzMHB4ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1cXCEtbWFyZ2luLWxlZnQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwcHggIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZ292dWstXFwhLW1hcmdpbi05IHtcbiAgbWFyZ2luOiA0MHB4ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1cXCEtbWFyZ2luLTkge1xuICAgIG1hcmdpbjogNjBweCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5nb3Z1ay1cXCEtbWFyZ2luLXRvcC05IHtcbiAgbWFyZ2luLXRvcDogNDBweCAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstXFwhLW1hcmdpbi10b3AtOSB7XG4gICAgbWFyZ2luLXRvcDogNjBweCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5nb3Z1ay1cXCEtbWFyZ2luLXJpZ2h0LTkge1xuICBtYXJnaW4tcmlnaHQ6IDQwcHggIWltcG9ydGFudDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLVxcIS1tYXJnaW4tcmlnaHQtOSB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2MHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmdvdnVrLVxcIS1tYXJnaW4tYm90dG9tLTkge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1cXCEtbWFyZ2luLWJvdHRvbS05IHtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmdvdnVrLVxcIS1tYXJnaW4tbGVmdC05IHtcbiAgbWFyZ2luLWxlZnQ6IDQwcHggIWltcG9ydGFudDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLVxcIS1tYXJnaW4tbGVmdC05IHtcbiAgICBtYXJnaW4tbGVmdDogNjBweCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5nb3Z1ay1cXCEtcGFkZGluZy0wIHtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLXBhZGRpbmctdG9wLTAge1xuICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLXBhZGRpbmctcmlnaHQtMCB7XG4gIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1wYWRkaW5nLWJvdHRvbS0wIHtcbiAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1wYWRkaW5nLWxlZnQtMCB7XG4gIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLXBhZGRpbmctMSB7XG4gIHBhZGRpbmc6IDVweCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLXBhZGRpbmctdG9wLTEge1xuICBwYWRkaW5nLXRvcDogNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtcGFkZGluZy1yaWdodC0xIHtcbiAgcGFkZGluZy1yaWdodDogNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtcGFkZGluZy1ib3R0b20tMSB7XG4gIHBhZGRpbmctYm90dG9tOiA1cHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1wYWRkaW5nLWxlZnQtMSB7XG4gIHBhZGRpbmctbGVmdDogNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtcGFkZGluZy0yIHtcbiAgcGFkZGluZzogMTBweCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLXBhZGRpbmctdG9wLTIge1xuICBwYWRkaW5nLXRvcDogMTBweCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLXBhZGRpbmctcmlnaHQtMiB7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1wYWRkaW5nLWJvdHRvbS0yIHtcbiAgcGFkZGluZy1ib3R0b206IDEwcHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1wYWRkaW5nLWxlZnQtMiB7XG4gIHBhZGRpbmctbGVmdDogMTBweCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLXBhZGRpbmctMyB7XG4gIHBhZGRpbmc6IDE1cHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1wYWRkaW5nLXRvcC0zIHtcbiAgcGFkZGluZy10b3A6IDE1cHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1wYWRkaW5nLXJpZ2h0LTMge1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtcGFkZGluZy1ib3R0b20tMyB7XG4gIHBhZGRpbmctYm90dG9tOiAxNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtcGFkZGluZy1sZWZ0LTMge1xuICBwYWRkaW5nLWxlZnQ6IDE1cHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1wYWRkaW5nLTQge1xuICBwYWRkaW5nOiAxNXB4ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1cXCEtcGFkZGluZy00IHtcbiAgICBwYWRkaW5nOiAyMHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmdvdnVrLVxcIS1wYWRkaW5nLXRvcC00IHtcbiAgcGFkZGluZy10b3A6IDE1cHggIWltcG9ydGFudDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLVxcIS1wYWRkaW5nLXRvcC00IHtcbiAgICBwYWRkaW5nLXRvcDogMjBweCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5nb3Z1ay1cXCEtcGFkZGluZy1yaWdodC00IHtcbiAgcGFkZGluZy1yaWdodDogMTVweCAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstXFwhLXBhZGRpbmctcmlnaHQtNCB7XG4gICAgcGFkZGluZy1yaWdodDogMjBweCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5nb3Z1ay1cXCEtcGFkZGluZy1ib3R0b20tNCB7XG4gIHBhZGRpbmctYm90dG9tOiAxNXB4ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1cXCEtcGFkZGluZy1ib3R0b20tNCB7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHggIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZ292dWstXFwhLXBhZGRpbmctbGVmdC00IHtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1cXCEtcGFkZGluZy1sZWZ0LTQge1xuICAgIHBhZGRpbmctbGVmdDogMjBweCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5nb3Z1ay1cXCEtcGFkZGluZy01IHtcbiAgcGFkZGluZzogMTVweCAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstXFwhLXBhZGRpbmctNSB7XG4gICAgcGFkZGluZzogMjVweCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5nb3Z1ay1cXCEtcGFkZGluZy10b3AtNSB7XG4gIHBhZGRpbmctdG9wOiAxNXB4ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1cXCEtcGFkZGluZy10b3AtNSB7XG4gICAgcGFkZGluZy10b3A6IDI1cHggIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZ292dWstXFwhLXBhZGRpbmctcmlnaHQtNSB7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHggIWltcG9ydGFudDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLVxcIS1wYWRkaW5nLXJpZ2h0LTUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHggIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZ292dWstXFwhLXBhZGRpbmctYm90dG9tLTUge1xuICBwYWRkaW5nLWJvdHRvbTogMTVweCAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstXFwhLXBhZGRpbmctYm90dG9tLTUge1xuICAgIHBhZGRpbmctYm90dG9tOiAyNXB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmdvdnVrLVxcIS1wYWRkaW5nLWxlZnQtNSB7XG4gIHBhZGRpbmctbGVmdDogMTVweCAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstXFwhLXBhZGRpbmctbGVmdC01IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHggIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZ292dWstXFwhLXBhZGRpbmctNiB7XG4gIHBhZGRpbmc6IDIwcHggIWltcG9ydGFudDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLVxcIS1wYWRkaW5nLTYge1xuICAgIHBhZGRpbmc6IDMwcHggIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZ292dWstXFwhLXBhZGRpbmctdG9wLTYge1xuICBwYWRkaW5nLXRvcDogMjBweCAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstXFwhLXBhZGRpbmctdG9wLTYge1xuICAgIHBhZGRpbmctdG9wOiAzMHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmdvdnVrLVxcIS1wYWRkaW5nLXJpZ2h0LTYge1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1cXCEtcGFkZGluZy1yaWdodC02IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmdvdnVrLVxcIS1wYWRkaW5nLWJvdHRvbS02IHtcbiAgcGFkZGluZy1ib3R0b206IDIwcHggIWltcG9ydGFudDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLVxcIS1wYWRkaW5nLWJvdHRvbS02IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5nb3Z1ay1cXCEtcGFkZGluZy1sZWZ0LTYge1xuICBwYWRkaW5nLWxlZnQ6IDIwcHggIWltcG9ydGFudDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLVxcIS1wYWRkaW5nLWxlZnQtNiB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmdvdnVrLVxcIS1wYWRkaW5nLTcge1xuICBwYWRkaW5nOiAyNXB4ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1cXCEtcGFkZGluZy03IHtcbiAgICBwYWRkaW5nOiA0MHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmdvdnVrLVxcIS1wYWRkaW5nLXRvcC03IHtcbiAgcGFkZGluZy10b3A6IDI1cHggIWltcG9ydGFudDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLVxcIS1wYWRkaW5nLXRvcC03IHtcbiAgICBwYWRkaW5nLXRvcDogNDBweCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5nb3Z1ay1cXCEtcGFkZGluZy1yaWdodC03IHtcbiAgcGFkZGluZy1yaWdodDogMjVweCAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstXFwhLXBhZGRpbmctcmlnaHQtNyB7XG4gICAgcGFkZGluZy1yaWdodDogNDBweCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5nb3Z1ay1cXCEtcGFkZGluZy1ib3R0b20tNyB7XG4gIHBhZGRpbmctYm90dG9tOiAyNXB4ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1cXCEtcGFkZGluZy1ib3R0b20tNyB7XG4gICAgcGFkZGluZy1ib3R0b206IDQwcHggIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZ292dWstXFwhLXBhZGRpbmctbGVmdC03IHtcbiAgcGFkZGluZy1sZWZ0OiAyNXB4ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1cXCEtcGFkZGluZy1sZWZ0LTcge1xuICAgIHBhZGRpbmctbGVmdDogNDBweCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5nb3Z1ay1cXCEtcGFkZGluZy04IHtcbiAgcGFkZGluZzogMzBweCAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstXFwhLXBhZGRpbmctOCB7XG4gICAgcGFkZGluZzogNTBweCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5nb3Z1ay1cXCEtcGFkZGluZy10b3AtOCB7XG4gIHBhZGRpbmctdG9wOiAzMHB4ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1cXCEtcGFkZGluZy10b3AtOCB7XG4gICAgcGFkZGluZy10b3A6IDUwcHggIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZ292dWstXFwhLXBhZGRpbmctcmlnaHQtOCB7XG4gIHBhZGRpbmctcmlnaHQ6IDMwcHggIWltcG9ydGFudDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLVxcIS1wYWRkaW5nLXJpZ2h0LTgge1xuICAgIHBhZGRpbmctcmlnaHQ6IDUwcHggIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZ292dWstXFwhLXBhZGRpbmctYm90dG9tLTgge1xuICBwYWRkaW5nLWJvdHRvbTogMzBweCAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstXFwhLXBhZGRpbmctYm90dG9tLTgge1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmdvdnVrLVxcIS1wYWRkaW5nLWxlZnQtOCB7XG4gIHBhZGRpbmctbGVmdDogMzBweCAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstXFwhLXBhZGRpbmctbGVmdC04IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDUwcHggIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZ292dWstXFwhLXBhZGRpbmctOSB7XG4gIHBhZGRpbmc6IDQwcHggIWltcG9ydGFudDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLVxcIS1wYWRkaW5nLTkge1xuICAgIHBhZGRpbmc6IDYwcHggIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZ292dWstXFwhLXBhZGRpbmctdG9wLTkge1xuICBwYWRkaW5nLXRvcDogNDBweCAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstXFwhLXBhZGRpbmctdG9wLTkge1xuICAgIHBhZGRpbmctdG9wOiA2MHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmdvdnVrLVxcIS1wYWRkaW5nLXJpZ2h0LTkge1xuICBwYWRkaW5nLXJpZ2h0OiA0MHB4ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1cXCEtcGFkZGluZy1yaWdodC05IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmdvdnVrLVxcIS1wYWRkaW5nLWJvdHRvbS05IHtcbiAgcGFkZGluZy1ib3R0b206IDQwcHggIWltcG9ydGFudDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLVxcIS1wYWRkaW5nLWJvdHRvbS05IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjBweCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5nb3Z1ay1cXCEtcGFkZGluZy1sZWZ0LTkge1xuICBwYWRkaW5nLWxlZnQ6IDQwcHggIWltcG9ydGFudDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLVxcIS1wYWRkaW5nLWxlZnQtOSB7XG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtbWFyZ2luLTAge1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtbWFyZ2luLXRvcC0wIHtcbiAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLXN0YXRpYy1tYXJnaW4tcmlnaHQtMCB7XG4gIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLXN0YXRpYy1tYXJnaW4tYm90dG9tLTAge1xuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLW1hcmdpbi1sZWZ0LTAge1xuICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLXN0YXRpYy1tYXJnaW4tMSB7XG4gIG1hcmdpbjogNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLW1hcmdpbi10b3AtMSB7XG4gIG1hcmdpbi10b3A6IDVweCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLXN0YXRpYy1tYXJnaW4tcmlnaHQtMSB7XG4gIG1hcmdpbi1yaWdodDogNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLW1hcmdpbi1ib3R0b20tMSB7XG4gIG1hcmdpbi1ib3R0b206IDVweCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLXN0YXRpYy1tYXJnaW4tbGVmdC0xIHtcbiAgbWFyZ2luLWxlZnQ6IDVweCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLXN0YXRpYy1tYXJnaW4tMiB7XG4gIG1hcmdpbjogMTBweCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLXN0YXRpYy1tYXJnaW4tdG9wLTIge1xuICBtYXJnaW4tdG9wOiAxMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLW1hcmdpbi1yaWdodC0yIHtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLW1hcmdpbi1ib3R0b20tMiB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtbWFyZ2luLWxlZnQtMiB7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLW1hcmdpbi0zIHtcbiAgbWFyZ2luOiAxNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLW1hcmdpbi10b3AtMyB7XG4gIG1hcmdpbi10b3A6IDE1cHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtbWFyZ2luLXJpZ2h0LTMge1xuICBtYXJnaW4tcmlnaHQ6IDE1cHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtbWFyZ2luLWJvdHRvbS0zIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLXN0YXRpYy1tYXJnaW4tbGVmdC0zIHtcbiAgbWFyZ2luLWxlZnQ6IDE1cHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtbWFyZ2luLTQge1xuICBtYXJnaW46IDIwcHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtbWFyZ2luLXRvcC00IHtcbiAgbWFyZ2luLXRvcDogMjBweCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLXN0YXRpYy1tYXJnaW4tcmlnaHQtNCB7XG4gIG1hcmdpbi1yaWdodDogMjBweCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLXN0YXRpYy1tYXJnaW4tYm90dG9tLTQge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLW1hcmdpbi1sZWZ0LTQge1xuICBtYXJnaW4tbGVmdDogMjBweCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLXN0YXRpYy1tYXJnaW4tNSB7XG4gIG1hcmdpbjogMjVweCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLXN0YXRpYy1tYXJnaW4tdG9wLTUge1xuICBtYXJnaW4tdG9wOiAyNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLW1hcmdpbi1yaWdodC01IHtcbiAgbWFyZ2luLXJpZ2h0OiAyNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLW1hcmdpbi1ib3R0b20tNSB7XG4gIG1hcmdpbi1ib3R0b206IDI1cHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtbWFyZ2luLWxlZnQtNSB7XG4gIG1hcmdpbi1sZWZ0OiAyNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLW1hcmdpbi02IHtcbiAgbWFyZ2luOiAzMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLW1hcmdpbi10b3AtNiB7XG4gIG1hcmdpbi10b3A6IDMwcHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtbWFyZ2luLXJpZ2h0LTYge1xuICBtYXJnaW4tcmlnaHQ6IDMwcHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtbWFyZ2luLWJvdHRvbS02IHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLXN0YXRpYy1tYXJnaW4tbGVmdC02IHtcbiAgbWFyZ2luLWxlZnQ6IDMwcHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtbWFyZ2luLTcge1xuICBtYXJnaW46IDQwcHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtbWFyZ2luLXRvcC03IHtcbiAgbWFyZ2luLXRvcDogNDBweCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLXN0YXRpYy1tYXJnaW4tcmlnaHQtNyB7XG4gIG1hcmdpbi1yaWdodDogNDBweCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLXN0YXRpYy1tYXJnaW4tYm90dG9tLTcge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLW1hcmdpbi1sZWZ0LTcge1xuICBtYXJnaW4tbGVmdDogNDBweCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLXN0YXRpYy1tYXJnaW4tOCB7XG4gIG1hcmdpbjogNTBweCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLXN0YXRpYy1tYXJnaW4tdG9wLTgge1xuICBtYXJnaW4tdG9wOiA1MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLW1hcmdpbi1yaWdodC04IHtcbiAgbWFyZ2luLXJpZ2h0OiA1MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLW1hcmdpbi1ib3R0b20tOCB7XG4gIG1hcmdpbi1ib3R0b206IDUwcHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtbWFyZ2luLWxlZnQtOCB7XG4gIG1hcmdpbi1sZWZ0OiA1MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLW1hcmdpbi05IHtcbiAgbWFyZ2luOiA2MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLW1hcmdpbi10b3AtOSB7XG4gIG1hcmdpbi10b3A6IDYwcHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtbWFyZ2luLXJpZ2h0LTkge1xuICBtYXJnaW4tcmlnaHQ6IDYwcHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtbWFyZ2luLWJvdHRvbS05IHtcbiAgbWFyZ2luLWJvdHRvbTogNjBweCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLXN0YXRpYy1tYXJnaW4tbGVmdC05IHtcbiAgbWFyZ2luLWxlZnQ6IDYwcHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtcGFkZGluZy0wIHtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLXN0YXRpYy1wYWRkaW5nLXRvcC0wIHtcbiAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtcGFkZGluZy1yaWdodC0wIHtcbiAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLXN0YXRpYy1wYWRkaW5nLWJvdHRvbS0wIHtcbiAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtcGFkZGluZy1sZWZ0LTAge1xuICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtcGFkZGluZy0xIHtcbiAgcGFkZGluZzogNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLXBhZGRpbmctdG9wLTEge1xuICBwYWRkaW5nLXRvcDogNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLXBhZGRpbmctcmlnaHQtMSB7XG4gIHBhZGRpbmctcmlnaHQ6IDVweCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLXN0YXRpYy1wYWRkaW5nLWJvdHRvbS0xIHtcbiAgcGFkZGluZy1ib3R0b206IDVweCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLXN0YXRpYy1wYWRkaW5nLWxlZnQtMSB7XG4gIHBhZGRpbmctbGVmdDogNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLXBhZGRpbmctMiB7XG4gIHBhZGRpbmc6IDEwcHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtcGFkZGluZy10b3AtMiB7XG4gIHBhZGRpbmctdG9wOiAxMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLXBhZGRpbmctcmlnaHQtMiB7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtcGFkZGluZy1ib3R0b20tMiB7XG4gIHBhZGRpbmctYm90dG9tOiAxMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLXBhZGRpbmctbGVmdC0yIHtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLXBhZGRpbmctMyB7XG4gIHBhZGRpbmc6IDE1cHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtcGFkZGluZy10b3AtMyB7XG4gIHBhZGRpbmctdG9wOiAxNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLXBhZGRpbmctcmlnaHQtMyB7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtcGFkZGluZy1ib3R0b20tMyB7XG4gIHBhZGRpbmctYm90dG9tOiAxNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLXBhZGRpbmctbGVmdC0zIHtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLXBhZGRpbmctNCB7XG4gIHBhZGRpbmc6IDIwcHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtcGFkZGluZy10b3AtNCB7XG4gIHBhZGRpbmctdG9wOiAyMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLXBhZGRpbmctcmlnaHQtNCB7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtcGFkZGluZy1ib3R0b20tNCB7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLXBhZGRpbmctbGVmdC00IHtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLXBhZGRpbmctNSB7XG4gIHBhZGRpbmc6IDI1cHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtcGFkZGluZy10b3AtNSB7XG4gIHBhZGRpbmctdG9wOiAyNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLXBhZGRpbmctcmlnaHQtNSB7XG4gIHBhZGRpbmctcmlnaHQ6IDI1cHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtcGFkZGluZy1ib3R0b20tNSB7XG4gIHBhZGRpbmctYm90dG9tOiAyNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLXBhZGRpbmctbGVmdC01IHtcbiAgcGFkZGluZy1sZWZ0OiAyNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLXBhZGRpbmctNiB7XG4gIHBhZGRpbmc6IDMwcHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtcGFkZGluZy10b3AtNiB7XG4gIHBhZGRpbmctdG9wOiAzMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLXBhZGRpbmctcmlnaHQtNiB7XG4gIHBhZGRpbmctcmlnaHQ6IDMwcHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtcGFkZGluZy1ib3R0b20tNiB7XG4gIHBhZGRpbmctYm90dG9tOiAzMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLXBhZGRpbmctbGVmdC02IHtcbiAgcGFkZGluZy1sZWZ0OiAzMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLXBhZGRpbmctNyB7XG4gIHBhZGRpbmc6IDQwcHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtcGFkZGluZy10b3AtNyB7XG4gIHBhZGRpbmctdG9wOiA0MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLXBhZGRpbmctcmlnaHQtNyB7XG4gIHBhZGRpbmctcmlnaHQ6IDQwcHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtcGFkZGluZy1ib3R0b20tNyB7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLXBhZGRpbmctbGVmdC03IHtcbiAgcGFkZGluZy1sZWZ0OiA0MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLXBhZGRpbmctOCB7XG4gIHBhZGRpbmc6IDUwcHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtcGFkZGluZy10b3AtOCB7XG4gIHBhZGRpbmctdG9wOiA1MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLXBhZGRpbmctcmlnaHQtOCB7XG4gIHBhZGRpbmctcmlnaHQ6IDUwcHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtcGFkZGluZy1ib3R0b20tOCB7XG4gIHBhZGRpbmctYm90dG9tOiA1MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLXBhZGRpbmctbGVmdC04IHtcbiAgcGFkZGluZy1sZWZ0OiA1MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLXBhZGRpbmctOSB7XG4gIHBhZGRpbmc6IDYwcHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtcGFkZGluZy10b3AtOSB7XG4gIHBhZGRpbmctdG9wOiA2MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLXBhZGRpbmctcmlnaHQtOSB7XG4gIHBhZGRpbmctcmlnaHQ6IDYwcHggIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1zdGF0aWMtcGFkZGluZy1ib3R0b20tOSB7XG4gIHBhZGRpbmctYm90dG9tOiA2MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtc3RhdGljLXBhZGRpbmctbGVmdC05IHtcbiAgcGFkZGluZy1sZWZ0OiA2MHB4ICFpbXBvcnRhbnQ7XG59XG5cblxuLmdvdnVrLVxcIS10ZXh0LWFsaWduLWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG5cbi5nb3Z1ay1cXCEtdGV4dC1hbGlnbi1jZW50cmUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS10ZXh0LWFsaWduLXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbn1cblxuXG4uZ292dWstXFwhLWZvbnQtc2l6ZS04MCB7XG4gIGZvbnQtc2l6ZTogMy4zMTI1cmVtICFpbXBvcnRhbnQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjAzNzczNTg0OTEgIWltcG9ydGFudDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLVxcIS1mb250LXNpemUtODAge1xuICAgIGZvbnQtc2l6ZTogNXJlbSAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1cXCEtZm9udC1zaXplLTgwIHtcbiAgICBmb250LXNpemU6IDUzcHQgIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMS4xICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmdvdnVrLVxcIS1mb250LXNpemUtNDgge1xuICBmb250LXNpemU6IDJyZW0gIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IDEuMDkzNzUgIWltcG9ydGFudDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLVxcIS1mb250LXNpemUtNDgge1xuICAgIGZvbnQtc2l6ZTogM3JlbSAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjA0MTY2NjY2NjcgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIHByaW50IHtcbiAgLmdvdnVrLVxcIS1mb250LXNpemUtNDgge1xuICAgIGZvbnQtc2l6ZTogMzJwdCAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmdvdnVrLVxcIS1mb250LXNpemUtMzYge1xuICBmb250LXNpemU6IDEuNjg3NXJlbSAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogMS4xMTExMTExMTExICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1cXCEtZm9udC1zaXplLTM2IHtcbiAgICBmb250LXNpemU6IDIuMjVyZW0gIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMS4xMTExMTExMTExICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1cXCEtZm9udC1zaXplLTM2IHtcbiAgICBmb250LXNpemU6IDI0cHQgIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMS4wNSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5nb3Z1ay1cXCEtZm9udC1zaXplLTI3IHtcbiAgZm9udC1zaXplOiAxLjMxMjVyZW0gIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IDEuMTkwNDc2MTkwNSAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstXFwhLWZvbnQtc2l6ZS0yNyB7XG4gICAgZm9udC1zaXplOiAxLjY4NzVyZW0gIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMS4xMTExMTExMTExICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1cXCEtZm9udC1zaXplLTI3IHtcbiAgICBmb250LXNpemU6IDE4cHQgIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMS4xNSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5nb3Z1ay1cXCEtZm9udC1zaXplLTI0IHtcbiAgZm9udC1zaXplOiAxLjMxMjVyZW0gIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IDEuMTkwNDc2MTkwNSAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstXFwhLWZvbnQtc2l6ZS0yNCB7XG4gICAgZm9udC1zaXplOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMS4yNSAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstXFwhLWZvbnQtc2l6ZS0yNCB7XG4gICAgZm9udC1zaXplOiAxOHB0ICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZ292dWstXFwhLWZvbnQtc2l6ZS0xOSB7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtICFpbXBvcnRhbnQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjMxNTc4OTQ3MzcgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBwcmludCB7XG4gIC5nb3Z1ay1cXCEtZm9udC1zaXplLTE5IHtcbiAgICBmb250LXNpemU6IDE0cHQgIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMS4xNSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5nb3Z1ay1cXCEtZm9udC1zaXplLTE2IHtcbiAgZm9udC1zaXplOiAxcmVtICFpbXBvcnRhbnQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstXFwhLWZvbnQtc2l6ZS0xNiB7XG4gICAgZm9udC1zaXplOiAxNHB0ICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMiAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5nb3Z1ay1cXCEtZm9udC1zaXplLTE0IHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbSAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogMS40Mjg1NzE0Mjg2ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZ292dWstXFwhLWZvbnQtc2l6ZS0xNCB7XG4gICAgZm9udC1zaXplOiAxMnB0ICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMiAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5nb3Z1ay1cXCEtZm9udC13ZWlnaHQtcmVndWxhciB7XG4gIGZvbnQtd2VpZ2h0OiA0MDAgIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS1mb250LXdlaWdodC1ib2xkIHtcbiAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLWZvbnQtdGFidWxhci1udW1iZXJzIHtcbiAgZm9udC12YXJpYW50LW51bWVyaWM6IHRhYnVsYXItbnVtcyAhaW1wb3J0YW50O1xufVxuXG4uZ292dWstXFwhLXRleHQtYnJlYWstd29yZCB7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZCAhaW1wb3J0YW50O1xuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkICFpbXBvcnRhbnQ7XG59XG5cblxuLmdvdnVrLVxcIS13aWR0aC1mdWxsIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cblxuLmdvdnVrLVxcIS13aWR0aC10aHJlZS1xdWFydGVycyB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5nb3Z1ay1cXCEtd2lkdGgtdGhyZWUtcXVhcnRlcnMge1xuICAgIHdpZHRoOiA3NSUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZ292dWstXFwhLXdpZHRoLXR3by10aGlyZHMge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZ292dWstXFwhLXdpZHRoLXR3by10aGlyZHMge1xuICAgIHdpZHRoOiA2Ni42NiUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZ292dWstXFwhLXdpZHRoLW9uZS1oYWxmIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLVxcIS13aWR0aC1vbmUtaGFsZiB7XG4gICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5nb3Z1ay1cXCEtd2lkdGgtb25lLXRoaXJkIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLVxcIS13aWR0aC1vbmUtdGhpcmQge1xuICAgIHdpZHRoOiAzMy4zMyUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZ292dWstXFwhLXdpZHRoLW9uZS1xdWFydGVyIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmdvdnVrLVxcIS13aWR0aC1vbmUtcXVhcnRlciB7XG4gICAgd2lkdGg6IDI1JSAhaW1wb3J0YW50O1xuICB9XG59XG5cblxuXG5cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmVscy1tb2JpbGUtb25seSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDAuMDUyNWVtKSB7XG4gIC5lbHMtbm9uLW1vYmlsZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5nb3Z1ay1pbnB1dC0tcmVhZC1vbmx5IHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4uZ292dWstaW5wdXQtLXJlYWQtb25seTpkaXNhYmxlZCB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGNvbG9yOiAjMGIwYzBjO1xufVxuXG4uZ292dWstaW5wdXQtLXdpZHRoLTcge1xuICBtYXgtd2lkdGg6IDE0LjRleDtcbn1cblxuLmdvdnVrLWlucHV0LS13aWR0aC02IHtcbiAgbWF4LXdpZHRoOiAxMi42ZXg7XG59XG5cbi5hcnJvdy1kaXJlY3Rpb24tbGFiZWwtaWNvbiB7XG4gIGNvbG9yOiAjMDBBNjRGO1xuICB2ZXJ0aWNhbC1hbGlnbjogLTRweDtcbiAgbWFyZ2luLWxlZnQ6IDVweDtcbn1cbi5hcnJvdy1kaXJlY3Rpb24tbGFiZWwtaWNvbi0tbGFtcHMtcGFja2FnaW5nIHtcbiAgY29sb3I6ICMwMDk2NDA7XG59XG5cbi5mZHMtc3VibmF2IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogMCAxNXB4IDAgMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmZkcy1zdWJuYXYge1xuICAgIG1hcmdpbi1ib3R0b206IDEwMHB4O1xuICAgIGZvbnQtZmFtaWx5OiBcIkdEUyBUcmFuc3BvcnRcIiwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yNTtcbiAgfVxufVxuQG1lZGlhIHByaW50IGFuZCAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmZkcy1zdWJuYXYge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICB9XG59XG5AbWVkaWEgcHJpbnQgYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuZmRzLXN1Ym5hdiB7XG4gICAgZm9udC1zaXplOiAxNHB0O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIH1cbn1cbi5mZHMtc3VibmF2LS1zdGlja3kge1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB0b3A6IDA7XG59XG4uZmRzLXN1Ym5hdl9fc2VjdGlvbiB7XG4gIG1hcmdpbjogMCAwIDIwcHg7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cbi5mZHMtc3VibmF2X19zZWN0aW9uLWl0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIHBhZGRpbmctdG9wOiA1cHg7XG4gIHBhZGRpbmctYm90dG9tOiA1cHg7XG59XG4uZmRzLXN1Ym5hdl9fc2VjdGlvbi1pdGVtLS1jdXJyZW50IHtcbiAgbWFyZ2luLWxlZnQ6IC0xNHB4O1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIGJvcmRlci1sZWZ0OiA0cHggc29saWQgIzFkNzBiODtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbn1cbi5mZHMtc3VibmF2X19zZWN0aW9uLWl0ZW0tLWN1cnJlbnQgLmZkcy1zdWJuYXZfX2xpbmsge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi5mZHMtc3VibmF2X19zZWN0aW9uLS1uZXN0ZWQge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG59XG4uZmRzLXN1Ym5hdl9fc2VjdGlvbi0tbmVzdGVkIC5mZHMtc3VibmF2X19zZWN0aW9uLWl0ZW06OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4oCUXCI7XG4gIG1hcmdpbi1sZWZ0OiAtMjBweDtcbiAgY29sb3I6ICM1MDVhNWY7XG59XG4uZmRzLXN1Ym5hdl9fc2VjdGlvbi0tbmVzdGVkIC5mZHMtc3VibmF2X19saW5rIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuLmZkcy1zdWJuYXZfX2xpbmsge1xuICBwYWRkaW5nOiAycHggMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmZkcy1zdWJuYXZfX2xpbms6bm90KDpmb2N1cyk6aG92ZXIge1xuICBjb2xvcjogIzFkNzBiODtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4uZmRzLXN1Ym5hdl9fdGhlbWUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDEwcHggMTVweCAxMHB4IDA7XG4gIGNvbG9yOiAjNTA1YTVmO1xuICBmb250LWZhbWlseTogXCJHRFMgVHJhbnNwb3J0XCIsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxLjE4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjMxNTc4OTQ3Mzc7XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZmRzLXN1Ym5hdl9fdGhlbWUge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICB9XG59XG5AbWVkaWEgcHJpbnQge1xuICAuZmRzLXN1Ym5hdl9fdGhlbWUge1xuICAgIGZvbnQtc2l6ZTogMTRwdDtcbiAgICBsaW5lLWhlaWdodDogMS4xNTtcbiAgfVxufVxuXG4uZWxzLWNvZGUsIC5lbHMtYXBpLXNjaGVtYS10YWJsZSBjb2RlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07XG4gIGNvbG9yOiAjZDEzMTE4O1xuICBiYWNrZ3JvdW5kOiAjZjNmMmYxO1xufVxuLmVscy1jb2RlLS1pbmxpbmUsIC5lbHMtYXBpLXNjaGVtYS10YWJsZSBjb2RlIHtcbiAgcGFkZGluZzogMCA1cHg7XG59XG4uZWxzLWNvZGUtLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdoaXRlLXNwYWNlOiBwcmU7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIG92ZXJmbG93LXg6IHNjcm9sbDtcbn1cblxuLmVscy1hcGktc2NoZW1hLXRhYmxlIHtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbn1cbi5lbHMtYXBpLXNjaGVtYS10YWJsZV9fcHJvcGVydHktaGVhZGVyIHtcbiAgd2lkdGg6IDMwJTtcbn1cbi5lbHMtYXBpLXNjaGVtYS10YWJsZV9fcHJvcGVydHktY2VsbCB7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG59XG4uZWxzLWFwaS1zY2hlbWEtdGFibGVfX2Rlc2NyaXB0aW9uLWhlYWRlciB7XG4gIHdpZHRoOiA1OCU7XG59XG4uZWxzLWFwaS1zY2hlbWEtdGFibGVfX3R5cGUtaGVhZGVyIHtcbiAgd2lkdGg6IDEyJTtcbn0iLCI6cm9vdCB7XG4gIC8vIFRoaXMgdmFyaWFibGUgaXMgYXV0b21hdGljYWxseSBvdmVyd3JpdHRlbiBkdXJpbmcgYnVpbGRzIGFuZCByZWxlYXNlcy5cbiAgLy8gSXQgZG9lc24ndCBuZWVkIHRvIGJlIHVwZGF0ZWQgbWFudWFsbHkuXG4gIC0tZ292dWstZnJvbnRlbmQtdmVyc2lvbjogXCI1LjExLjBcIjtcblxuICAvLyBDU1MgY3VzdG9tIHByb3BlcnR5IGZvciBlYWNoIGJyZWFrcG9pbnRcbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkZ292dWstYnJlYWtwb2ludHMge1xuICAgIC0tZ292dWstYnJlYWtwb2ludC0jeyRuYW1lfTogI3tnb3Z1ay1weC10by1yZW0oJHZhbHVlKX07XG5cbiAgICAvLyBEZXByZWNhdGVkLCB1c2UgYC0tZ292dWstYnJlYWtwb2ludC1bbmFtZV1gIGluc3RlYWRcbiAgICAtLWdvdnVrLWZyb250ZW5kLWJyZWFrcG9pbnQtI3skbmFtZX06IHZhcigtLWdvdnVrLWJyZWFrcG9pbnQtI3skbmFtZX0pO1xuICB9XG59XG5cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPV9nb3Z1ay1mcm9udGVuZC1wcm9wZXJ0aWVzLnNjc3MubWFwICovXG4iLCJAaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvY29yZS9saW5rc1wiKSB7XG4gICVnb3Z1ay1saW5rIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLWNvbW1vbjtcbiAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLXN0eWxlLWRlZmF1bHQ7XG4gICAgQGluY2x1ZGUgZ292dWstbGluay1wcmludC1mcmllbmRseTtcbiAgfVxuXG4gIC5nb3Z1ay1saW5rIHtcbiAgICBAZXh0ZW5kICVnb3Z1ay1saW5rO1xuICB9XG5cbiAgLy8gVmFyaWFudCBjbGFzc2VzIHNob3VsZCBhbHdheXMgYmUgdXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIHRoZSAuZ292dWstbGlua1xuICAvLyBjbGFzcywgc28gd2UgZG8gbm90IG5lZWQgdGhlIGNvbW1vbiBsaW5rIHN0eWxlcyBhcyB0aGV5IHdpbGwgYmUgaW5oZXJpdGVkLlxuXG4gIC5nb3Z1ay1saW5rLS1tdXRlZCB7XG4gICAgQGluY2x1ZGUgZ292dWstbGluay1zdHlsZS1tdXRlZDtcbiAgfVxuXG4gIC5nb3Z1ay1saW5rLS10ZXh0LWNvbG91ciB7XG4gICAgQGluY2x1ZGUgZ292dWstbGluay1zdHlsZS10ZXh0O1xuICB9XG5cbiAgLmdvdnVrLWxpbmstLWludmVyc2Uge1xuICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstc3R5bGUtaW52ZXJzZTtcbiAgfVxuXG4gIC5nb3Z1ay1saW5rLS1uby11bmRlcmxpbmUge1xuICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstc3R5bGUtbm8tdW5kZXJsaW5lO1xuICB9XG5cbiAgLmdvdnVrLWxpbmstLW5vLXZpc2l0ZWQtc3RhdGUge1xuICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstc3R5bGUtbm8tdmlzaXRlZC1zdGF0ZTtcbiAgfVxuXG4gIC8vIExpbmtzIHRoYXQgb25seSBjb250YWluIGltYWdlc1xuXG4gIC5nb3Z1ay1saW5rLWltYWdlIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLWltYWdlO1xuICB9XG59XG5cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPV9saW5rcy5zY3NzLm1hcCAqL1xuIiwiLy8vL1xuLy8vIEBncm91cCBoZWxwZXJzL3R5cG9ncmFwaHlcbi8vLy9cblxuQGltcG9ydCBcIi4uL3Rvb2xzL3B4LXRvLXJlbVwiO1xuXG4vLy8gJ0NvbW1vbiB0eXBvZ3JhcGh5JyBoZWxwZXJcbi8vL1xuLy8vIFNldHMgdGhlIGZvbnQgZmFtaWx5IGFuZCBhc3NvY2lhdGVkIHByb3BlcnRpZXMsIHN1Y2ggYXMgZm9udCBzbW9vdGhpbmcuIEFsc29cbi8vLyBvdmVycmlkZXMgdGhlIGZvbnQgZm9yIHByaW50LlxuLy8vXG4vLy8gQHBhcmFtIHtMaXN0fSAkZm9udC1mYW1pbHkgWyRnb3Z1ay1mb250LWZhbWlseV0gRm9udCBmYW1pbHkgdG8gdXNlXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuQG1peGluIGdvdnVrLXR5cG9ncmFwaHktY29tbW9uKCRmb250LWZhbWlseTogJGdvdnVrLWZvbnQtZmFtaWx5KSB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHk7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuXG4gIC8vIElmIHRoZSB1c2VyIGlzIHVzaW5nIHRoZSBkZWZhdWx0IEdEUyBUcmFuc3BvcnQgZm9udCB3ZSBuZWVkIHRvIGluY2x1ZGVcbiAgLy8gdGhlIGZvbnQtZmFjZSBkZWNsYXJhdGlvbnMuXG4gIEBpZiAkZ292dWstaW5jbHVkZS1kZWZhdWx0LWZvbnQtZmFjZSB7XG4gICAgQGluY2x1ZGUgX2dvdnVrLWZvbnQtZmFjZS1nZHMtdHJhbnNwb3J0O1xuICB9XG5cbiAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJG1lZGlhLXR5cGU6IHByaW50KSB7XG4gICAgZm9udC1mYW1pbHk6ICRnb3Z1ay1mb250LWZhbWlseS1wcmludDtcbiAgfVxufVxuXG4vLy8gVGV4dCBjb2xvdXIgaGVscGVyXG4vLy9cbi8vLyBTZXRzIHRoZSB0ZXh0IGNvbG91ciwgaW5jbHVkaW5nIGEgc3VpdGFibGUgb3ZlcnJpZGUgZm9yIHByaW50LlxuLy8vXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuQG1peGluIGdvdnVrLXRleHQtY29sb3VyIHtcbiAgY29sb3I6ICRnb3Z1ay10ZXh0LWNvbG91cjtcblxuICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkbWVkaWEtdHlwZTogcHJpbnQpIHtcbiAgICBjb2xvcjogJGdvdnVrLXByaW50LXRleHQtY29sb3VyO1xuICB9XG59XG5cbi8vLyBSZWd1bGFyIGZvbnQgd2VpZ2h0IGhlbHBlclxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkaW1wb3J0YW50IFtmYWxzZV0gLSBXaGV0aGVyIHRvIG1hcmsgZGVjbGFyYXRpb25zIGFzXG4vLy8gICBgIWltcG9ydGFudGAuIEdlbmVyYWxseSBVc2VkIHRvIGNyZWF0ZSBvdmVycmlkZSBjbGFzc2VzLlxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbkBtaXhpbiBnb3Z1ay10eXBvZ3JhcGh5LXdlaWdodC1yZWd1bGFyKCRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIGZvbnQtd2VpZ2h0OiAkZ292dWstZm9udC13ZWlnaHQtcmVndWxhciBpZigkaW1wb3J0YW50LCAhaW1wb3J0YW50LCBudWxsKTtcbn1cblxuLy8vIEJvbGQgZm9udCB3ZWlnaHQgaGVscGVyXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRpbXBvcnRhbnQgW2ZhbHNlXSAtIFdoZXRoZXIgdG8gbWFyayBkZWNsYXJhdGlvbnMgYXNcbi8vLyAgIGAhaW1wb3J0YW50YC4gR2VuZXJhbGx5IFVzZWQgdG8gY3JlYXRlIG92ZXJyaWRlIGNsYXNzZXMuXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuQG1peGluIGdvdnVrLXR5cG9ncmFwaHktd2VpZ2h0LWJvbGQoJGltcG9ydGFudDogZmFsc2UpIHtcbiAgZm9udC13ZWlnaHQ6ICRnb3Z1ay1mb250LXdlaWdodC1ib2xkIGlmKCRpbXBvcnRhbnQsICFpbXBvcnRhbnQsIG51bGwpO1xufVxuXG4vLy8gVGFidWxhciBudW1iZXIgaGVscGVyXG4vLy9cbi8vLyBTd2l0Y2hlcyBudW1lcmljYWwgZ2x5cGhzICgw4oCTOSkgdG8gdXNlIGFsdGVybmF0aXZlIGZvcm1zIHdpdGggYVxuLy8vIG1vbm9zcGFjZWQgYm91bmRpbmcgYm94LiBUaGlzIGVuc3VyZXMgdGhhdCBjb2x1bW5zIG9mIG51bWJlcnMsIHN1Y2hcbi8vLyBhcyB0aG9zZSBpbiB0YWJsZXMsIHJlbWFpbiBob3Jpem9udGFsbHkgYWxpZ25lZCB3aXRoIG9uZSBhbm90aGVyLlxuLy8vIFRoaXMgYWxzbyBoYXMgdGhlIHVzZWZ1bCBzaWRlIGVmZmVjdCBvZiBtYWtpbmcgbnVtYmVycyBtb3JlIGxlZ2libGVcbi8vLyBpbiBzb21lIHNpdHVhdGlvbnMsIHN1Y2ggYXMgcmVmZXJlbmNlIGNvZGVzLCBhcyB0aGUgbnVtYmVycyBhcmUgbW9yZVxuLy8vIGRpc3RpbmN0IGFuZCB2aXN1YWxseSBzZXBhcmF0ZWQgZnJvbSBvbmUgYW5vdGhlci5cbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGltcG9ydGFudCBbZmFsc2VdIC0gV2hldGhlciB0byBtYXJrIGRlY2xhcmF0aW9ucyBhc1xuLy8vICAgYCFpbXBvcnRhbnRgLiBHZW5lcmFsbHkgVXNlZCB0byBjcmVhdGUgb3ZlcnJpZGUgY2xhc3Nlcy5cbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG5AbWl4aW4gZ292dWstZm9udC10YWJ1bGFyLW51bWJlcnMoJGltcG9ydGFudDogZmFsc2UpIHtcbiAgZm9udC12YXJpYW50LW51bWVyaWM6IHRhYnVsYXItbnVtcyBpZigkaW1wb3J0YW50LCAhaW1wb3J0YW50LCBudWxsKTtcbn1cblxuLy8vIFdvcmQgYnJlYWsgaGVscGVyXG4vLy9cbi8vLyBGb3JjaWJseSBicmVha3MgbG9uZyB3b3JkcyB0aGF0IGxhY2sgc3BhY2VzLCBzdWNoIGFzIGVtYWlsIGFkZHJlc3Nlcyxcbi8vLyBhY3Jvc3MgbXVsdGlwbGUgbGluZXMgd2hlbiB0aGV5IHdvdWxkbid0IG90aGVyd2lzZSBmaXQuXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRpbXBvcnRhbnQgW2ZhbHNlXSAtIFdoZXRoZXIgdG8gbWFyayBkZWNsYXJhdGlvbnMgYXNcbi8vLyAgIGAhaW1wb3J0YW50YC4gR2VuZXJhbGx5IHVzZWQgdG8gY3JlYXRlIG92ZXJyaWRlIGNsYXNzZXMuXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuQG1peGluIGdvdnVrLXRleHQtYnJlYWstd29yZCgkaW1wb3J0YW50OiBmYWxzZSkge1xuICAvLyBJRSAxMSBhbmQgRWRnZSAxNuKAkzE3IG9ubHkgc3VwcG9ydCB0aGUgbm9uLXN0YW5kYXJkIGB3b3JkLXdyYXBgIHByb3BlcnR5XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZCBpZigkaW1wb3J0YW50LCAhaW1wb3J0YW50LCBudWxsKTtcblxuICAvLyBBbGwgb3RoZXIgYnJvd3NlcnMgc3VwcG9ydCBgb3ZlcmZsb3ctd3JhcGBcbiAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZCBpZigkaW1wb3J0YW50LCAhaW1wb3J0YW50LCBudWxsKTtcbn1cblxuLy8vIENvbnZlcnQgbGluZS1oZWlnaHRzIHNwZWNpZmllZCBpbiBwaXhlbHMgaW50byBhIHJlbGF0aXZlIHZhbHVlLCB1bmxlc3Ncbi8vLyB0aGV5IGFyZSBhbHJlYWR5IHVuaXQtbGVzcyAoYW5kIHRodXMgYWxyZWFkeSB0cmVhdGVkIGFzIHJlbGF0aXZlIHZhbHVlcylcbi8vLyBvciB0aGUgdW5pdHMgZG8gbm90IG1hdGNoIHRoZSB1bml0cyB1c2VkIGZvciB0aGUgZm9udCBzaXplLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRsaW5lLWhlaWdodCBMaW5lIGhlaWdodFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZm9udC1zaXplIEZvbnQgc2l6ZVxuLy8vIEByZXR1cm4ge051bWJlcn0gVGhlIGxpbmUgaGVpZ2h0IGFzIGVpdGhlciBhIHJlbGF0aXZlIHZhbHVlIG9yIHVubW9kaWZpZWRcbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuXG5AZnVuY3Rpb24gX2dvdnVrLWxpbmUtaGVpZ2h0KCRsaW5lLWhlaWdodCwgJGZvbnQtc2l6ZSkge1xuICBAaWYgbm90IHVuaXRsZXNzKCRsaW5lLWhlaWdodCkgYW5kIHVuaXQoJGxpbmUtaGVpZ2h0KSA9PSB1bml0KCRmb250LXNpemUpIHtcbiAgICAkbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodCAvICRmb250LXNpemU7XG4gIH1cblxuICBAcmV0dXJuICRsaW5lLWhlaWdodDtcbn1cblxuLy8vIEZvbnQgc2l6ZSBhbmQgbGluZSBoZWlnaHQgaGVscGVyXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNpemUgLSBQb2ludCBmcm9tIHRoZSB0eXBlIHNjYWxlICh0aGUgc2l6ZSBhcyBpdCB3b3VsZFxuLy8vICAgYXBwZWFyIG9uIHRhYmxldCBhbmQgYWJvdmUpXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRvdmVycmlkZS1saW5lLWhlaWdodCBbZmFsc2VdIC0gTm9uIHJlc3BvbnNpdmUgY3VzdG9tIGxpbmVcbi8vLyAgIGhlaWdodC4gT21pdCB0byB1c2UgdGhlIGxpbmUgaGVpZ2h0IGZyb20gdGhlIGZvbnQgbWFwLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGltcG9ydGFudCBbZmFsc2VdIC0gV2hldGhlciB0byBtYXJrIGRlY2xhcmF0aW9ucyBhc1xuLy8vICAgYCFpbXBvcnRhbnRgLlxuLy8vXG4vLy8gQHRocm93IGlmIGAkc2l6ZWAgaXMgbm90IGEgdmFsaWQgcG9pbnQgZnJvbSB0aGUgdHlwZSBzY2FsZVxuLy8vXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vL1xuLy8vIEBhbGlhcyBnb3Z1ay1mb250LXNpemVcbi8vLyBAZGVwcmVjYXRlZCBVc2UgYGdvdnVrLWZvbnQtc2l6ZWAgaW5zdGVhZFxuXG5AbWl4aW4gZ292dWstdHlwb2dyYXBoeS1yZXNwb25zaXZlKCRzaXplLCAkb3ZlcnJpZGUtbGluZS1oZWlnaHQ6IGZhbHNlLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICBAaW5jbHVkZSBfd2FybmluZyhcbiAgICBcImdvdnVrLXR5cG9ncmFwaHktcmVzcG9uc2l2ZVwiLFxuICAgIFwiZ292dWstdHlwb2dyYXBoeS1yZXNwb25zaXZlIGlzIGRlcHJlY2F0ZWQuIFVzZSBnb3Z1ay1mb250LXNpemUgaW5zdGVhZC5cIlxuICApO1xuICBAaW5jbHVkZSBnb3Z1ay1mb250LXNpemUoJHNpemUsICRvdmVycmlkZS1saW5lLWhlaWdodCwgJGltcG9ydGFudCk7XG59XG5cbi8vLyBGb250IHNpemUgYW5kIGxpbmUgaGVpZ2h0IGhlbHBlclxuLy8vXG4vLy8gVGFrZXMgYSBwb2ludCBmcm9tIHRoZSByZXNwb25zaXZlICdmb250IG1hcCcgYXMgYW4gYXJndW1lbnQgKHRoZSBzaXplIGFzIGl0XG4vLy8gd291bGQgYXBwZWFyIG9uIHRhYmxldCBhbmQgYWJvdmUpLCBhbmQgdXNlcyBpdCB0byBjcmVhdGUgZm9udC1zaXplIGFuZFxuLy8vIGxpbmUtaGVpZ2h0IGRlY2xhcmF0aW9ucyBmb3IgZGlmZmVyZW50IGJyZWFrcG9pbnRzLCBhbmQgcHJpbnQuXG4vLy9cbi8vLyBFeGFtcGxlIGZvbnQgbWFwOlxuLy8vXG4vLy8gYGBgc2Nzc1xuLy8vIDE5OiAoXG4vLy8gICBudWxsOiAoXG4vLy8gICAgIGZvbnQtc2l6ZTogMTZweCxcbi8vLyAgICAgbGluZS1oZWlnaHQ6IDIwcHhcbi8vLyAgICksXG4vLy8gICB0YWJsZXQ6IChcbi8vLyAgICAgZm9udC1zaXplOiAxOXB4LFxuLy8vICAgICBsaW5lLWhlaWdodDogMjVweFxuLy8vICAgKSxcbi8vLyAgIHByaW50OiAoXG4vLy8gICAgIGZvbnQtc2l6ZTogMTRwdCxcbi8vLyAgICAgbGluZS1oZWlnaHQ6IDEuMTVcbi8vLyAgIClcbi8vLyApO1xuLy8vIGBgYFxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXIgfCBTdHJpbmd9ICRzaXplIC0gUG9pbnQgZnJvbSB0aGUgdHlwZSBzY2FsZSAodGhlIHNpemUgYXNcbi8vLyAgIGl0IHdvdWxkIGFwcGVhciBvbiB0YWJsZXQgYW5kIGFib3ZlKVxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbGluZS1oZWlnaHQgW2ZhbHNlXSAtIE5vbiByZXNwb25zaXZlIGN1c3RvbSBsaW5lXG4vLy8gICBoZWlnaHQuIE9taXQgdG8gdXNlIHRoZSBsaW5lIGhlaWdodCBmcm9tIHRoZSBmb250IG1hcC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRpbXBvcnRhbnQgW2ZhbHNlXSAtIFdoZXRoZXIgdG8gbWFyayBkZWNsYXJhdGlvbnMgYXNcbi8vLyAgIGAhaW1wb3J0YW50YC5cbi8vL1xuLy8vIEB0aHJvdyBpZiBgJHNpemVgIGlzIG5vdCBhIHZhbGlkIHBvaW50IGZyb20gdGhlIHR5cGUgc2NhbGVcbi8vL1xuLy8vIEBhY2Nlc3MgcHVibGljXG5cbkBtaXhpbiBnb3Z1ay1mb250LXNpemUoJHNpemUsICRsaW5lLWhlaWdodDogZmFsc2UsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIC8vIEZsYWcgZm9udCBzaXplcyB0aGF0IHN0YXJ0IHdpdGggdW5kZXJzY29yZXMgc28gd2UgY2FuIHN1cHByZXNzIHdhcm5pbmdzIG9uXG4gIC8vIGRlcHJlY2F0ZWQgc2l6ZXMgdXNlZCBpbnRlcm5hbGx5LCBmb3IgZXhhbXBsZSBgZ292dWstZm9udCgkc2l6ZTogXCJfMTRcIilgXG4gICRzaXplLWludGVybmFsLXVzZS1vbmx5OiBzdHItc2xpY2UoI3skc2l6ZX0sIDEsIDEpID09IFwiX1wiO1xuXG4gIC8vIFJlbW92ZSB1bmRlcnNjb3JlIGZyb20gZm9udCBzaXplcyBmbGFnZ2VkIGZvciBpbnRlcm5hbCB1c2VcbiAgQGlmICRzaXplLWludGVybmFsLXVzZS1vbmx5IHtcbiAgICAkc2l6ZTogc3RyLXNsaWNlKCN7JHNpemV9LCAyKTtcbiAgfVxuXG4gIC8vIENoZWNrIGZvciBhIGZvbnQgbWFwIGV4YWN0bHkgbWF0Y2hpbmcgdGhlIGdpdmVuIHNpemVcbiAgJGZvbnQtbWFwOiBtYXAtZ2V0KCRnb3Z1ay10eXBvZ3JhcGh5LXNjYWxlLCAkc2l6ZSk7XG5cbiAgLy8gTm8gbWF0Y2g/IFRyeSB3aXRoIHN0cmluZyB0eXBlIChlLmcuICRzaXplOiBcIjE2XCIgbm90IDE2KVxuICBAaWYgbm90ICRmb250LW1hcCB7XG4gICAgQGVhY2ggJGZvbnQtc2l6ZSBpbiBtYXAta2V5cygkZ292dWstdHlwb2dyYXBoeS1zY2FsZSkge1xuICAgICAgQGlmIG5vdCAkZm9udC1tYXAgYW5kIFwiI3skZm9udC1zaXplfVwiID09IFwiI3skc2l6ZX1cIiB7XG4gICAgICAgICRmb250LW1hcDogbWFwLWdldCgkZ292dWstdHlwb2dyYXBoeS1zY2FsZSwgJGZvbnQtc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gU3RpbGwgbm8gbWF0Y2g/IFRocm93IGVycm9yXG4gIEBpZiBub3QgJGZvbnQtbWFwIHtcbiAgICBAZXJyb3IgXCJVbmtub3duIGZvbnQgc2l6ZSBgI3skc2l6ZX1gIC0gZXhwZWN0ZWQgYSBwb2ludCBmcm9tIHRoZSB0eXBlIHNjYWxlLlwiO1xuICB9XG5cbiAgLy8gQ2hlY2sgZm9yIGEgZGVwcmVjYXRpb24gd2l0aGluIHRoZSB0eXBlIHNjYWxlXG4gICRkZXByZWNhdGlvbjogbWFwLWdldCgkZm9udC1tYXAsIFwiZGVwcmVjYXRpb25cIik7XG5cbiAgQGlmICRkZXByZWNhdGlvbiB7XG4gICAgLy8gV2FybiBvbiBkZXByZWNhdGVkIGZvbnQgc2l6ZXMgdW5sZXNzIGZsYWdnZWQgZm9yIGludGVybmFsIHVzZVxuICAgIEBpZiBub3QgJHNpemUtaW50ZXJuYWwtdXNlLW9ubHkge1xuICAgICAgQGluY2x1ZGUgX3dhcm5pbmcobWFwLWdldCgkZGVwcmVjYXRpb24sIFwia2V5XCIpLCBtYXAtZ2V0KCRkZXByZWNhdGlvbiwgXCJtZXNzYWdlXCIpKTtcbiAgICB9XG5cbiAgICAvLyByZW1vdmUgdGhlIGRlcHJlY2F0aW9uIG1hcCBrZXlzIHNvIHRoZXkgZG8gbm90IGJyZWFrIHRoZSBicmVha3BvaW50IGxvb3BcbiAgICAkZm9udC1tYXA6IG1hcC1yZW1vdmUoJGZvbnQtbWFwLCBcImRlcHJlY2F0aW9uXCIpO1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRicmVha3BvaW50LW1hcCBpbiAkZm9udC1tYXAge1xuICAgICRmb250LXNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnQtbWFwLCBcImZvbnQtc2l6ZVwiKTtcbiAgICAkZm9udC1zaXplLXJlbTogZ292dWstcHgtdG8tcmVtKCRmb250LXNpemUpO1xuXG4gICAgLy8gJGNhbGN1bGF0ZWQtbGluZS1oZWlnaHQgaXMgYSBzZXBhcmF0ZSB2YXJpYWJsZSBmcm9tICRsaW5lLWhlaWdodCxcbiAgICAvLyBhcyBvdGhlcndpc2UgdGhlIHZhbHVlIHdvdWxkIGdldCByZWRlZmluZWQgd2l0aCBlYWNoIGxvb3AgYW5kXG4gICAgLy8gZXZlbnR1YWxseSBicmVhayBfZ292dWstbGluZS1oZWlnaHQuXG4gICAgLy9cbiAgICAvLyBXZSBjb250aW51ZSB0byBjYWxsIHRoZSBwYXJhbSAkbGluZS1oZWlnaHQgdG8gc3RheSBjb25zaXN0ZW50IHdpdGggdGhlXG4gICAgLy8gbmFtaW5nIHdpdGggZ292dWstZm9udC5cbiAgICAkY2FsY3VsYXRlZC1saW5lLWhlaWdodDogX2dvdnVrLWxpbmUtaGVpZ2h0KFxuICAgICAgJGxpbmUtaGVpZ2h0OiBpZigkbGluZS1oZWlnaHQsICRsaW5lLWhlaWdodCwgbWFwLWdldCgkYnJlYWtwb2ludC1tYXAsIFwibGluZS1oZWlnaHRcIikpLFxuICAgICAgJGZvbnQtc2l6ZTogJGZvbnQtc2l6ZVxuICAgICk7XG5cbiAgICAvLyBNYXJrIHJ1bGVzIGFzICFpbXBvcnRhbnQgaWYgJGltcG9ydGFudCBpcyB0cnVlIC0gdGhpcyB3aWxsIHJlc3VsdCBpblxuICAgIC8vIHRoZXNlIHZhcmlhYmxlcyBiZWNvbWluZyBzdHJpbmdzLCBzbyB0aGlzIG5lZWRzIHRvIGhhcHBlbiAqYWZ0ZXIqIHRoZXlcbiAgICAvLyBhcmUgdXNlZCBpbiBjYWxjdWxhdGlvbnNcbiAgICAkZm9udC1zaXplOiAkZm9udC1zaXplIGlmKCRpbXBvcnRhbnQsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICRmb250LXNpemUtcmVtOiAkZm9udC1zaXplLXJlbSBpZigkaW1wb3J0YW50LCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICAkY2FsY3VsYXRlZC1saW5lLWhlaWdodDogJGNhbGN1bGF0ZWQtbGluZS1oZWlnaHQgaWYoJGltcG9ydGFudCwgIWltcG9ydGFudCwgbnVsbCk7XG5cbiAgICBAaWYgbm90ICRicmVha3BvaW50IHtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1yZW07XG4gICAgICBsaW5lLWhlaWdodDogJGNhbGN1bGF0ZWQtbGluZS1oZWlnaHQ7XG4gICAgfSBAZWxzZSBpZiAkYnJlYWtwb2ludCA9PSBcInByaW50XCIge1xuICAgICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJG1lZGlhLXR5cGU6IHByaW50KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRjYWxjdWxhdGVkLWxpbmUtaGVpZ2h0O1xuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206ICRicmVha3BvaW50KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1yZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkY2FsY3VsYXRlZC1saW5lLWhlaWdodDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEZvbnQgaGVscGVyXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlciB8IEJvb2xlYW4gfCBTdHJpbmd9ICRzaXplIFBvaW50IGZyb20gdGhlIHR5cGUgc2NhbGUgKHRoZVxuLy8vICAgc2l6ZSBhcyBpdCB3b3VsZCBhcHBlYXIgb24gdGFibGV0IGFuZCBhYm92ZSkuIFVzZSBgZmFsc2VgIHRvIGF2b2lkIHNldHRpbmdcbi8vLyAgIGEgc2l6ZS5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHdlaWdodCBbcmVndWxhcl0gLSBXZWlnaHQ6IGBib2xkYCBvciBgcmVndWxhcmBcbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR0YWJ1bGFyIFtmYWxzZV0gLSBXaGV0aGVyIHRvIHVzZSB0YWJ1bGFyIG51bWJlcnMgb3Igbm90XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRsaW5lLWhlaWdodCBbZmFsc2VdIC0gTGluZS1oZWlnaHQsIGlmIG92ZXJyaWRpbmcgdGhlXG4vLy8gICBkZWZhdWx0XG4vLy9cbi8vLyBAdGhyb3cgaWYgYCRzaXplYCBpcyBub3QgYSB2YWxpZCBwb2ludCBmcm9tIHRoZSB0eXBlIHNjYWxlIChvciBmYWxzZSlcbi8vL1xuLy8vIEBhY2Nlc3MgcHVibGljXG5cbkBtaXhpbiBnb3Z1ay1mb250KCRzaXplLCAkd2VpZ2h0OiByZWd1bGFyLCAkdGFidWxhcjogZmFsc2UsICRsaW5lLWhlaWdodDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgZ292dWstdHlwb2dyYXBoeS1jb21tb247XG5cbiAgQGlmICR0YWJ1bGFyIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250LXRhYnVsYXItbnVtYmVycztcbiAgfVxuXG4gIEBpZiAkd2VpZ2h0ID09IHJlZ3VsYXIge1xuICAgIEBpbmNsdWRlIGdvdnVrLXR5cG9ncmFwaHktd2VpZ2h0LXJlZ3VsYXI7XG4gIH0gQGVsc2UgaWYgJHdlaWdodCA9PSBib2xkIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay10eXBvZ3JhcGh5LXdlaWdodC1ib2xkO1xuICB9XG5cbiAgQGlmICRzaXplIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250LXNpemUoJHNpemUsICRsaW5lLWhlaWdodCk7XG4gIH1cbn1cblxuLyojIHNvdXJjZU1hcHBpbmdVUkw9X3R5cG9ncmFwaHkuc2Nzcy5tYXAgKi9cbiIsIi8vLy9cbi8vLyBAZ3JvdXAgc2V0dGluZ3MvdHlwb2dyYXBoeVxuLy8vL1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEZvbnQgZmFtaWxpZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLy8gRm9udCBmYW1pbGllcyB0byB1c2UgZm9yIGFsbCB0eXBvZ3JhcGh5IG9uIHNjcmVlbiBtZWRpYVxuLy8vXG4vLy8gQHR5cGUgTGlzdFxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay1mb250LWZhbWlseTogXCJHRFMgVHJhbnNwb3J0XCIsIGFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbGllcyB0byB1c2UgZm9yIHByaW50IG1lZGlhXG4vLy9cbi8vLyBXZSByZWNvbW1lbmQgdGhhdCB5b3UgdXNlIHN5c3RlbSBmb250cyB3aGVuIHByaW50aW5nLiBUaGlzIHdpbGwgYXZvaWQgaXNzdWVzXG4vLy8gd2l0aCBzb21lIHByaW50ZXIgZHJpdmVycyBhbmQgb3BlcmF0aW5nIHN5c3RlbXMuXG4vLy9cbi8vLyBAdHlwZSBMaXN0XG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuJGdvdnVrLWZvbnQtZmFtaWx5LXByaW50OiBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4vLy8gSW5jbHVkZSB0aGUgZGVmYXVsdCBAZm9udC1mYWNlIGRlY2xhcmF0aW9uc1xuLy8vXG4vLy8gRGVmYXVsdHMgdG8gdHJ1ZSBpZiBcIkdEUyBUcmFuc3BvcnRcIiBhcHBlYXJzIGluIHRoZSAkZ292dWstZm9udC1mYW1pbHlcbi8vLyBzZXR0aW5nLlxuLy8vXG4vLy8gQHR5cGUgQm9vbGVhblxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay1pbmNsdWRlLWRlZmF1bHQtZm9udC1mYWNlOiBpZihpbmRleCgkZ292dWstZm9udC1mYW1pbHksIFwiR0RTIFRyYW5zcG9ydFwiKSwgdHJ1ZSwgZmFsc2UpICFkZWZhdWx0O1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEZvbnQgd2VpZ2h0c1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vLyBGb250IHdlaWdodCBmb3IgcmVndWxhciB0eXBvZ3JhcGh5XG4vLy9cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuJGdvdnVrLWZvbnQtd2VpZ2h0LXJlZ3VsYXI6IDQwMCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IGZvciBib2xkIHR5cG9ncmFwaHlcbi8vL1xuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4kZ292dWstZm9udC13ZWlnaHQtYm9sZDogNzAwICFkZWZhdWx0O1xuXG4vKiMgc291cmNlTWFwcGluZ1VSTD1fdHlwb2dyYXBoeS1mb250LnNjc3MubWFwICovXG4iLCIvLy8vXG4vLy8gQGdyb3VwIGhlbHBlcnMvbGlua3Ncbi8vLy9cblxuLy8vIENvbW1vbiBsaW5rIHN0eWxlc1xuLy8vXG4vLy8gUHJvdmlkZXMgdGhlIHR5cG9ncmFwaHkgYW5kIGZvY3VzIHN0YXRlLCByZWdhcmRsZXNzIG9mIGxpbmsgc3R5bGUuXG4vLy9cbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG5AbWl4aW4gZ292dWstbGluay1jb21tb24ge1xuICBAaW5jbHVkZSBnb3Z1ay10eXBvZ3JhcGh5LWNvbW1vbjtcbiAgQGluY2x1ZGUgZ292dWstbGluay1kZWNvcmF0aW9uO1xuXG4gICY6aG92ZXIge1xuICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvY3VzZWQtdGV4dDtcbiAgfVxufVxuXG4vLy8gTGluayBkZWNvcmF0aW9uXG4vLy9cbi8vLyBQcm92aWRlcyB0aGUgdGV4dCBkZWNvcmF0aW9uIGZvciBsaW5rcywgaW5jbHVkaW5nIHRoaWNrbmVzcyBhbmQgdW5kZXJsaW5lXG4vLy8gb2Zmc2V0LiBVc2UgdGhpcyBtaXhpbiBvbmx5IGlmIHlvdSBjYW5ub3QgdXNlIHRoZSBgZ292dWstbGluay1jb21tb25gIG1peGluLlxuLy8vXG4vLy8gQGFjY2VzcyBwdWJsaWNcbkBtaXhpbiBnb3Z1ay1saW5rLWRlY29yYXRpb24ge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblxuICBAaWYgJGdvdnVrLWxpbmstdW5kZXJsaW5lLXRoaWNrbmVzcyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVzczogJGdvdnVrLWxpbmstdW5kZXJsaW5lLXRoaWNrbmVzcztcbiAgfVxuXG4gIEBpZiAkZ292dWstbGluay11bmRlcmxpbmUtb2Zmc2V0IHtcbiAgICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6ICRnb3Z1ay1saW5rLXVuZGVybGluZS1vZmZzZXQ7XG4gIH1cbn1cblxuLy8vIExpbmsgaG92ZXIgZGVjb3JhdGlvblxuLy8vXG4vLy8gUHJvdmlkZXMgdGhlIHRleHQgZGVjb3JhdGlvbiBmb3IgbGlua3MgaW4gdGhlaXIgaG92ZXIgc3RhdGUsIGZvciB5b3UgdG8gdXNlXG4vLy8gd2l0aGluIGEgYDpob3ZlcmAgcHNldWRvLXNlbGVjdG9yLiBVc2UgdGhpcyBtaXhpbiBvbmx5IGlmIHlvdSBjYW5ub3QgdXNlIHRoZVxuLy8vIGBnb3Z1ay1saW5rLWNvbW1vbmAgbWl4aW4uXG4vLy9cbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG5AbWl4aW4gZ292dWstbGluay1ob3Zlci1kZWNvcmF0aW9uIHtcbiAgQGlmICRnb3Z1ay1saW5rLWhvdmVyLXVuZGVybGluZS10aGlja25lc3Mge1xuICAgIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6ICRnb3Z1ay1saW5rLWhvdmVyLXVuZGVybGluZS10aGlja25lc3M7XG4gICAgLy8gRGlzYWJsZSBpbmsgc2tpcHBpbmcgb24gdW5kZXJsaW5lcyBvbiBob3Zlci4gQnJvd3NlcnMgaGF2ZW4ndFxuICAgIC8vIHN0YW5kYXJkaXNlZCBvbiB0aGlzIHBhcnQgb2YgdGhlIHNwZWMgeWV0LCBzbyBzZXQgYm90aCBwcm9wZXJ0aWVzXG4gICAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IG5vbmU7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IG5vbmU7IC8vIENocm9taXVtLCBGaXJlZm94XG4gICAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogbm9uZTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbi1za2lwOiBub25lOyAvLyBTYWZhcmlcbiAgfVxufVxuXG4vLy8gRGVmYXVsdCBsaW5rIHN0eWxlc1xuLy8vXG4vLy8gTWFrZXMgbGlua3MgdXNlIHRoZSBkZWZhdWx0IHVudmlzaXRlZCwgdmlzaXRlZCwgaG92ZXIgYW5kIGFjdGl2ZSBjb2xvdXJzLlxuLy8vXG4vLy8gSWYgeW91IHVzZSB0aGlzIG1peGluIGluIGEgY29tcG9uZW50LCB5b3UgbXVzdCBhbHNvIGluY2x1ZGUgdGhlXG4vLy8gYGdvdnVrLWxpbmstY29tbW9uYCBtaXhpbiB0byBnZXQgdGhlIGNvcnJlY3QgZm9jdXMgYW5kIGhvdmVyIHN0YXRlcy5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5nb3Z1ay1jb21wb25lbnRfX2xpbmsge1xuLy8vICAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLWNvbW1vbjtcbi8vLyAgICAgQGluY2x1ZGUgZ292dWstbGluay1zdHlsZS1kZWZhdWx0O1xuLy8vICAgfVxuLy8vXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuQG1peGluIGdvdnVrLWxpbmstc3R5bGUtZGVmYXVsdCB7XG4gICY6bGluayB7XG4gICAgY29sb3I6ICRnb3Z1ay1saW5rLWNvbG91cjtcbiAgfVxuXG4gICY6dmlzaXRlZCB7XG4gICAgY29sb3I6ICRnb3Z1ay1saW5rLXZpc2l0ZWQtY29sb3VyO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRnb3Z1ay1saW5rLWhvdmVyLWNvbG91cjtcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJGdvdnVrLWxpbmstYWN0aXZlLWNvbG91cjtcbiAgfVxuXG4gIC8vIFdoZW4gZm9jdXNzZWQsIHRoZSB0ZXh0IGNvbG91ciBuZWVkcyB0byBiZSBkYXJrZXIgdG8gZW5zdXJlIHRoYXQgY29sb3VyXG4gIC8vIGNvbnRyYXN0IGlzIHN0aWxsIGFjY2VwdGFibGVcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRnb3Z1ay1mb2N1cy10ZXh0LWNvbG91cjtcbiAgfVxufVxuXG4vLy8gRXJyb3IgbGluayBzdHlsZXNcbi8vL1xuLy8vIE1ha2VzIGxpbmtzIHVzZSB0aGUgZXJyb3IgY29sb3VyLiBUaGUgbGluayB3aWxsIGRhcmtlbiBpZiBpdCdzIGFjdGl2ZSBvciBhXG4vLy8gdXNlciBob3ZlcnMgdGhlaXIgY3Vyc29yIG92ZXIgaXQuXG4vLy9cbi8vLyBJZiB5b3UgdXNlIHRoaXMgbWl4aW4gaW4gYSBjb21wb25lbnQsIHlvdSBtdXN0IGFsc28gaW5jbHVkZSB0aGVcbi8vLyBgZ292dWstbGluay1jb21tb25gIG1peGluIHRvIGdldCB0aGUgY29ycmVjdCBmb2N1cyBhbmQgaG92ZXIgc3RhdGVzLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmdvdnVrLWNvbXBvbmVudF9fbGluayB7XG4vLy8gICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstY29tbW9uO1xuLy8vICAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLXN0eWxlLWVycm9yO1xuLy8vICAgfVxuLy8vXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuQG1peGluIGdvdnVrLWxpbmstc3R5bGUtZXJyb3Ige1xuICAmOmxpbmssXG4gICY6dmlzaXRlZCB7XG4gICAgY29sb3I6ICRnb3Z1ay1lcnJvci1jb2xvdXI7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogc2NhbGUtY29sb3IoJGdvdnVrLWVycm9yLWNvbG91ciwgJGxpZ2h0bmVzczogLTMwJSk7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6ICRnb3Z1ay1lcnJvci1jb2xvdXI7XG4gIH1cblxuICAvLyBXaGVuIGZvY3Vzc2VkLCB0aGUgdGV4dCBjb2xvdXIgbmVlZHMgdG8gYmUgZGFya2VyIHRvIGVuc3VyZSB0aGF0IGNvbG91clxuICAvLyBjb250cmFzdCBpcyBzdGlsbCBhY2NlcHRhYmxlXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkZ292dWstZm9jdXMtdGV4dC1jb2xvdXI7XG4gIH1cbn1cblxuLy8vIFN1Y2Nlc3MgbGluayBzdHlsZXNcbi8vL1xuLy8vIE1ha2VzIGxpbmtzIHVzZSB0aGUgc3VjY2VzcyBjb2xvdXIuIFRoZSBsaW5rIHdpbGwgZGFya2VuIGlmIGl0J3MgYWN0aXZlIG9yIGFcbi8vLyB1c2VyIGhvdmVycyB0aGVpciBjdXJzb3Igb3ZlciBpdC5cbi8vL1xuLy8vIElmIHlvdSB1c2UgdGhpcyBtaXhpbiBpbiBhIGNvbXBvbmVudCwgeW91IG11c3QgYWxzbyBpbmNsdWRlIHRoZVxuLy8vIGBnb3Z1ay1saW5rLWNvbW1vbmAgbWl4aW4gdG8gZ2V0IHRoZSBjb3JyZWN0IGZvY3VzIGFuZCBob3ZlciBzdGF0ZXMuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuZ292dWstY29tcG9uZW50X19saW5rIHtcbi8vLyAgICAgQGluY2x1ZGUgZ292dWstbGluay1jb21tb247XG4vLy8gICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstc3R5bGUtc3VjY2Vzcztcbi8vLyAgIH1cbi8vL1xuLy8vIEBhY2Nlc3MgcHVibGljXG5cbkBtaXhpbiBnb3Z1ay1saW5rLXN0eWxlLXN1Y2Nlc3Mge1xuICAmOmxpbmssXG4gICY6dmlzaXRlZCB7XG4gICAgY29sb3I6ICRnb3Z1ay1zdWNjZXNzLWNvbG91cjtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiBzY2FsZS1jb2xvcigkZ292dWstc3VjY2Vzcy1jb2xvdXIsICRsaWdodG5lc3M6IC0zMCUpO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkZ292dWstc3VjY2Vzcy1jb2xvdXI7XG4gIH1cblxuICAvLyBXaGVuIGZvY3Vzc2VkLCB0aGUgdGV4dCBjb2xvdXIgbmVlZHMgdG8gYmUgZGFya2VyIHRvIGVuc3VyZSB0aGF0IGNvbG91clxuICAvLyBjb250cmFzdCBpcyBzdGlsbCBhY2NlcHRhYmxlXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkZ292dWstZm9jdXMtdGV4dC1jb2xvdXI7XG4gIH1cbn1cblxuLy8vIE11dGVkIGxpbmsgc3R5bGVzXG4vLy9cbi8vLyBNYWtlcyBsaW5rcyB1c2UgdGhlIHNlY29uZGFyeSB0ZXh0IGNvbG91ci4gVGhlIGxpbmsgd2lsbCBkYXJrZW4gaWYgaXQnc1xuLy8vIGFjdGl2ZSBvciBhIHVzZXIgaG92ZXJzIHRoZWlyIGN1cnNvciBvdmVyIGl0LlxuLy8vXG4vLy8gSWYgeW91IHVzZSB0aGlzIG1peGluIGluIGEgY29tcG9uZW50LCB5b3UgbXVzdCBhbHNvIGluY2x1ZGUgdGhlXG4vLy8gYGdvdnVrLWxpbmstY29tbW9uYCBtaXhpbiB0byBnZXQgdGhlIGNvcnJlY3QgZm9jdXMgYW5kIGhvdmVyIHN0YXRlcy5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5nb3Z1ay1jb21wb25lbnRfX2xpbmsge1xuLy8vICAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLWNvbW1vbjtcbi8vLyAgICAgQGluY2x1ZGUgZ292dWstbGluay1zdHlsZS1tdXRlZDtcbi8vLyAgIH1cbi8vL1xuLy8vIEBhY2Nlc3MgcHVibGljXG5cbkBtaXhpbiBnb3Z1ay1saW5rLXN0eWxlLW11dGVkIHtcbiAgJjpsaW5rLFxuICAmOnZpc2l0ZWQge1xuICAgIGNvbG9yOiAkZ292dWstc2Vjb25kYXJ5LXRleHQtY29sb3VyO1xuICB9XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkZ292dWstdGV4dC1jb2xvdXI7XG4gIH1cblxuICAvLyBXaGVuIGZvY3Vzc2VkLCB0aGUgdGV4dCBjb2xvdXIgbmVlZHMgdG8gYmUgZGFya2VyIHRvIGVuc3VyZSB0aGF0IGNvbG91clxuICAvLyBjb250cmFzdCBpcyBzdGlsbCBhY2NlcHRhYmxlXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkZ292dWstZm9jdXMtdGV4dC1jb2xvdXI7XG4gIH1cbn1cblxuLy8vIFRleHQgbGluayBzdHlsZXNcbi8vL1xuLy8vIE1ha2VzIGxpbmtzIHVzZSB0aGUgcHJpbWFyeSB0ZXh0IGNvbG91ciwgaW4gYWxsIHN0YXRlcy4gVXNlIHRoaXMgbWl4aW4gZm9yXG4vLy8gbmF2aWdhdGlvbiBjb21wb25lbnRzLCBzdWNoIGFzIGJyZWFkY3J1bWJzIG9yIHRoZSBiYWNrIGxpbmsuXG4vLy9cbi8vLyBJZiB5b3UgdXNlIHRoaXMgbWl4aW4gaW4gYSBjb21wb25lbnQsIHlvdSBtdXN0IGFsc28gaW5jbHVkZSB0aGVcbi8vLyBgZ292dWstbGluay1jb21tb25gIG1peGluIHRvIGdldCB0aGUgY29ycmVjdCBmb2N1cyBhbmQgaG92ZXIgc3RhdGVzLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmdvdnVrLWNvbXBvbmVudF9fbGluayB7XG4vLy8gICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstY29tbW9uO1xuLy8vICAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLXN0eWxlLXRleHQ7XG4vLy8gICB9XG4vLy9cbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG5AbWl4aW4gZ292dWstbGluay1zdHlsZS10ZXh0IHtcbiAgJjpsaW5rLFxuICAmOnZpc2l0ZWQge1xuICAgIEBpbmNsdWRlIGdvdnVrLXRleHQtY29sb3VyO1xuICB9XG5cbiAgLy8gRm9yY2UgYSBjb2xvdXIgY2hhbmdlIG9uIGhvdmVyIHRvIHdvcmsgYXJvdW5kIGEgYnVnIGluIFNhZmFyaVxuICAvLyBodHRwczovL3dlYmtpdC5vcmcvYi8yMjQ0ODNcbiAgJjpob3ZlciB7XG4gICAgQGlmIHR5cGUtb2YoJGdvdnVrLXRleHQtY29sb3VyKSA9PSBjb2xvciB7XG4gICAgICBjb2xvcjogcmdiYSgkZ292dWstdGV4dC1jb2xvdXIsIDAuOTkpO1xuICAgIH1cbiAgfVxuXG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay10ZXh0LWNvbG91cjtcbiAgfVxufVxuXG4vLy8gSW52ZXJzZSBsaW5rIHN0eWxlc1xuLy8vXG4vLy8gTWFrZXMgbGlua3Mgd2hpdGUsIGluIGFsbCBzdGF0ZXMuIFVzZSB0aGlzIG1peGluIGlmIHlvdSdyZSBkaXNwbGF5aW5nIGxpbmtzXG4vLy8gYWdhaW5zdCBhIGRhcmsgYmFja2dyb3VuZC5cbi8vL1xuLy8vIElmIHlvdSB1c2UgdGhpcyBtaXhpbiBpbiBhIGNvbXBvbmVudCwgeW91IG11c3QgYWxzbyBpbmNsdWRlIHRoZVxuLy8vIGBnb3Z1ay1saW5rLWNvbW1vbmAgbWl4aW4gdG8gZ2V0IHRoZSBjb3JyZWN0IGZvY3VzIGFuZCBob3ZlciBzdGF0ZXMuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuZ292dWstY29tcG9uZW50X19saW5rIHtcbi8vLyAgICAgQGluY2x1ZGUgZ292dWstbGluay1jb21tb247XG4vLy8gICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstc3R5bGUtaW52ZXJzZTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBhY2Nlc3MgcHVibGljXG5cbkBtaXhpbiBnb3Z1ay1saW5rLXN0eWxlLWludmVyc2Uge1xuICAmOmxpbmssXG4gICY6dmlzaXRlZCB7XG4gICAgY29sb3I6IGdvdnVrLWNvbG91cihcIndoaXRlXCIpO1xuICB9XG5cbiAgLy8gRm9yY2UgYSBjb2xvdXIgY2hhbmdlIG9uIGhvdmVyIHRvIHdvcmsgYXJvdW5kIGEgYnVnIGluIFNhZmFyaVxuICAvLyBodHRwczovL3dlYmtpdC5vcmcvYi8yMjQ0ODNcbiAgJjpob3ZlcixcbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiByZ2JhKGdvdnVrLWNvbG91cihcIndoaXRlXCIpLCAwLjk5KTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkZ292dWstZm9jdXMtdGV4dC1jb2xvdXI7XG4gIH1cbn1cblxuLy8vIERlZmF1bHQgbGluayBzdHlsZXMsIHdpdGhvdXQgYSB2aXNpdGVkIHN0YXRlXG4vLy9cbi8vLyBNYWtlcyBsaW5rcyB1c2UgdGhlIGRlZmF1bHQgdW52aXNpdGVkLCBob3ZlciBhbmQgYWN0aXZlIGNvbG91cnMsIHdpdGggbm9cbi8vLyBkaXN0aW5jdCB2aXNpdGVkIHN0YXRlLlxuLy8vXG4vLy8gVXNlIHRoaXMgbWl4aW4gd2hlbiBpdCdzIG5vdCBoZWxwZnVsIHRvIGRpc3Rpbmd1aXNoIGJldHdlZW4gdmlzaXRlZCBhbmRcbi8vLyBub24tdmlzaXRlZCBsaW5rcy4gRm9yIGV4YW1wbGUsIHdoZW4geW91IGxpbmsgdG8gcGFnZXMgd2l0aFxuLy8vIGZyZXF1ZW50bHktY2hhbmdpbmcgY29udGVudCwgc3VjaCBhcyB0aGUgZGFzaGJvYXJkIGZvciBhbiBhZG1pbiBpbnRlcmZhY2UuXG4vLy9cbi8vLyBJZiB5b3UgdXNlIHRoaXMgbWl4aW4gaW4gYSBjb21wb25lbnQsIHlvdSBtdXN0IGFsc28gaW5jbHVkZSB0aGVcbi8vLyBgZ292dWstbGluay1jb21tb25gIG1peGluIHRvIGdldCB0aGUgY29ycmVjdCBmb2N1cyBhbmQgaG92ZXIgc3RhdGVzLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmdvdnVrLWNvbXBvbmVudF9fbGluayB7XG4vLy8gICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstY29tbW9uO1xuLy8vICAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLXN0eWxlLW5vLXZpc2l0ZWQtc3RhdGU7XG4vLy8gICB9XG4vLy9cbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG5AbWl4aW4gZ292dWstbGluay1zdHlsZS1uby12aXNpdGVkLXN0YXRlIHtcbiAgJjpsaW5rIHtcbiAgICBjb2xvcjogJGdvdnVrLWxpbmstY29sb3VyO1xuICB9XG5cbiAgJjp2aXNpdGVkIHtcbiAgICBjb2xvcjogJGdvdnVrLWxpbmstY29sb3VyO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRnb3Z1ay1saW5rLWhvdmVyLWNvbG91cjtcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJGdvdnVrLWxpbmstYWN0aXZlLWNvbG91cjtcbiAgfVxuXG4gIC8vIFdoZW4gZm9jdXNzZWQsIHRoZSB0ZXh0IGNvbG91ciBuZWVkcyB0byBiZSBkYXJrZXIgdG8gZW5zdXJlIHRoYXQgY29sb3VyXG4gIC8vIGNvbnRyYXN0IGlzIHN0aWxsIGFjY2VwdGFibGVcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRnb3Z1ay1mb2N1cy10ZXh0LWNvbG91cjtcbiAgfVxufVxuXG4vLy8gUmVtb3ZlIHVuZGVybGluZSBmcm9tIGxpbmtzXG4vLy9cbi8vLyBSZW1vdmUgdW5kZXJsaW5lcyBmcm9tIGxpbmtzIHVubGVzcyB0aGUgbGluayBpcyBhY3RpdmUgb3IgYSB1c2VyIGhvdmVyc1xuLy8vIHRoZWlyIGN1cnNvciBvdmVyIGl0LlxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmdvdnVrLWNvbXBvbmVudF9fbGluayB7XG4vLy8gICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstY29tbW9uO1xuLy8vICAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLXN0eWxlLWRlZmF1bHQ7XG4vLy8gICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstc3R5bGUtbm8tdW5kZXJsaW5lO1xuLy8vICAgfVxuLy8vXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuQG1peGluIGdvdnVrLWxpbmstc3R5bGUtbm8tdW5kZXJsaW5lIHtcbiAgJjpub3QoOmhvdmVyKTpub3QoOmFjdGl2ZSkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG4vLy8gSW5jbHVkZSBsaW5rIGRlc3RpbmF0aW9uIHdoZW4gcHJpbnRpbmcgdGhlIHBhZ2Vcbi8vL1xuLy8vIElmIHRoZSB1c2VyIHByaW50cyB0aGUgcGFnZSwgYWRkIHRoZSBkZXN0aW5hdGlvbiBVUkwgYWZ0ZXIgdGhlIGxpbmsgdGV4dCwgaWZcbi8vLyB0aGUgVVJMIHN0YXJ0cyB3aXRoIGAvYCwgYGh0dHA6Ly9gIG9yIGBodHRwczovL2AuXG4vLy9cbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG5AbWl4aW4gZ292dWstbGluay1wcmludC1mcmllbmRseSB7XG4gIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRtZWRpYS10eXBlOiBwcmludCkge1xuICAgICZbaHJlZl49XCIvXCJdLFxuICAgICZbaHJlZl49XCJodHRwOi8vXCJdLFxuICAgICZbaHJlZl49XCJodHRwczovL1wiXVxuICAgIHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7XG4gICAgICAgIGZvbnQtc2l6ZTogOTAlO1xuXG4gICAgICAgIC8vIEJlY2F1c2UgdGhlIFVSTHMgbWF5IGJlIHZlcnkgbG9uZywgZW5zdXJlIHRoYXQgdGhleSBtYXkgYmUgYnJva2VuXG4gICAgICAgIC8vIGF0IGFyYml0cmFyeSBwb2ludHMgaWYgdGhlcmUgYXJlIG5vIG90aGVyd2lzZSBhY2NlcHRhYmxlIGJyZWFrXG4gICAgICAgIC8vIHBvaW50cyBpbiB0aGUgbGluZVxuICAgICAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBJbWFnZSBsaW5rIHN0eWxlc1xuLy8vXG4vLy8gUHJlcGFyZXMgYW5kIHByb3ZpZGVzIHRoZSBmb2N1cyBzdGF0ZSBmb3IgbGlua3MgdGhhdCBvbmx5IGNvbnRhaW4gaW1hZ2VzXG4vLy8gd2l0aCBubyBhY2NvbXBhbnlpbmcgdGV4dC5cbi8vL1xuLy8vIEBhY2Nlc3MgcHVibGljXG5cbkBtaXhpbiBnb3Z1ay1saW5rLWltYWdlIHtcbiAgLy8gTmVlZGVkIHRvIGRyYXcgdGhlIGZvY3VzIGFyb3VuZCB0aGUgZW50aXJlIGltYWdlXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAvLyBSZW1vdmUgZXh0cmEgc3BhY2UgYXQgdGhlIGJvdHRvbSBvZiB0aGUgaW1hZ2UgdGhhdCdzIGFkZGVkIGJ5IGxpbmUtaGVpZ2h0XG4gIGxpbmUtaGVpZ2h0OiAwO1xuXG4gIC8vIERvbid0IHJlbmRlciBhbiB1bmRlcmxpbmVcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICY6Zm9jdXMge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvY3VzZWQtYm94O1xuICB9XG59XG5cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPV9saW5rcy5zY3NzLm1hcCAqL1xuIiwiLy8vL1xuLy8vIEBncm91cCBzZXR0aW5ncy9saW5rc1xuLy8vL1xuXG4vLy8gVGhpY2tuZXNzIG9mIGxpbmsgdW5kZXJsaW5lc1xuLy8vXG4vLy8gVGhlIGRlZmF1bHQgd2lsbCBiZSBlaXRoZXI6XG4vLy9cbi8vLyAgLSAxcHhcbi8vLyAgLSAwLjA2MjVyZW0sIGlmIGl0J3MgdGhpY2tlciB0aGFuIDFweCBiZWNhdXNlIHRoZSB1c2VyIGhhcyBjaGFuZ2VkIHRoZSB0ZXh0XG4vLy8gICAgc2l6ZSBpbiB0aGVpciBicm93c2VyXG4vLy9cbi8vLyBTZXQgdGhpcyB2YXJpYWJsZSB0byBgZmFsc2VgIHRvIGF2b2lkIHNldHRpbmcgYSB0aGlja25lc3MuXG4vLy9cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG4kZ292dWstbGluay11bmRlcmxpbmUtdGhpY2tuZXNzOiB1bnF1b3RlKFwibWF4KDFweCwgLjA2MjVyZW0pXCIpICFkZWZhdWx0O1xuXG4vLy8gT2Zmc2V0IG9mIGxpbmsgdW5kZXJsaW5lcyBmcm9tIHRleHQgYmFzZWxpbmVcbi8vL1xuLy8vIFRoZSBkZWZhdWx0IGlzIDNweCBleHByZXNzZWQgYXMgZW1zLCBhcyBjYWxjdWxhdGVkIGFnYWluc3QgdGhlIGRlZmF1bHQgYm9keVxuLy8vIGZvbnQgc2l6ZSAob24gZGVza3RvcCkgb2YgMTlweC5cbi8vLyAzIMO3IDE5ID0gMC4xNTc4XG4vLy9cbi8vLyBTZXQgdGhpcyB2YXJpYWJsZSB0byBgZmFsc2VgIHRvIGF2b2lkIHNldHRpbmcgYW4gb2Zmc2V0LlxuLy8vXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuJGdvdnVrLWxpbmstdW5kZXJsaW5lLW9mZnNldDogMC4xNTc4ZW0gIWRlZmF1bHQ7XG5cbi8vLyBUaGlja25lc3Mgb2YgbGluayB1bmRlcmxpbmVzIGluIGhvdmVyIHN0YXRlXG4vLy9cbi8vLyBUaGUgZGVmYXVsdCBmb3IgZWFjaCBsaW5rIHdpbGwgYmUgdGhlIHRoaWNrZXN0IG9mIHRoZSBmb2xsb3dpbmc6XG4vLy9cbi8vLyAgLSAzcHhcbi8vLyAgLSAwLjE4NzVyZW0sIGlmIGl0J3MgdGhpY2tlciB0aGFuIDNweCBiZWNhdXNlIHRoZSB1c2VyIGhhcyBjaGFuZ2VkIHRoZSB0ZXh0XG4vLy8gICAgc2l6ZSBpbiB0aGVpciBicm93c2VyXG4vLy8gIC0gMC4xMmVtIChyZWxhdGl2ZSB0byB0aGUgbGluaydzIHRleHQgc2l6ZSlcbi8vL1xuLy8vIFNldCB0aGlzIHZhcmlhYmxlIHRvIGBmYWxzZWAgdG8gYXZvaWQgc2V0dGluZyBhIHRoaWNrbmVzcy5cbi8vL1xuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay1saW5rLWhvdmVyLXVuZGVybGluZS10aGlja25lc3M6IHVucXVvdGUoXCJtYXgoM3B4LCAuMTg3NXJlbSwgLjEyZW0pXCIpICFkZWZhdWx0O1xuXG4vKiMgc291cmNlTWFwcGluZ1VSTD1fbGlua3Muc2Nzcy5tYXAgKi9cbiIsIi8vLy9cbi8vLyBAZ3JvdXAgaGVscGVyc1xuLy8vL1xuXG5AaW1wb3J0IFwiLi4vdG9vbHMvZXhwb3J0c1wiO1xuXG4vLy8gRm9udCBGYWNlIC0gR0RTIFRyYW5zcG9ydFxuLy8vXG4vLy8gT3V0cHV0cyB0aGUgZm9udC1mYWNlIGRlY2xhcmF0aW9uIGZvciBHRFMgVHJhbnNwb3J0IGF0IHRoZSByb290IG9mIHRoZSBDU1MgZG9jdW1lbnRcbi8vLyB0aGUgZmlyc3QgdGltZSBpdCBpcyBjYWxsZWQuXG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcblxuQG1peGluIF9nb3Z1ay1mb250LWZhY2UtZ2RzLXRyYW5zcG9ydCB7XG4gIEBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9oZWxwZXJzL2ZvbnQtZmFjZXNcIikge1xuICAgIEBhdC1yb290IHtcbiAgICAgIC8qISBDb3B5cmlnaHQgKGMpIDIwMTEgYnkgTWFyZ2FyZXQgQ2FsdmVydCAmIEhlbnJpayBLdWJlbC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4gVGhlIGZvbnQgaGFzIGJlZW4gY3VzdG9taXNlZCBmb3IgZXhjbHVzaXZlIHVzZSBvbiBnb3YudWsuIFRoaXMgY3V0IGlzIG5vdCBjb21tZXJjaWFsbHkgYXZhaWxhYmxlLiAqLyAvKiBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIHNjc3MvY29tbWVudC1uby1sb3VkICAqL1xuICAgICAgQGZvbnQtZmFjZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkdEUyBUcmFuc3BvcnRcIjtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBzcmM6XG4gICAgICAgICAgZ292dWstZm9udC11cmwoXCJsaWdodC05NGEwN2UwNmExLXYyLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLFxuICAgICAgICAgIGdvdnVrLWZvbnQtdXJsKFwibGlnaHQtZjU5MWIxM2Y3ZC12Mi53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG4gICAgICAgIGZvbnQtZGlzcGxheTogZmFsbGJhY2s7XG4gICAgICB9XG5cbiAgICAgIEBmb250LWZhY2Uge1xuICAgICAgICBmb250LWZhbWlseTogXCJHRFMgVHJhbnNwb3J0XCI7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIHNyYzpcbiAgICAgICAgICBnb3Z1ay1mb250LXVybChcImJvbGQtYjU0MmJlYjI3NC12Mi53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICAgICAgICBnb3Z1ay1mb250LXVybChcImJvbGQtYWZmYTk2NTcxZC12Mi53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG4gICAgICAgIGZvbnQtZGlzcGxheTogZmFsbGJhY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPV9mb250LWZhY2VzLnNjc3MubWFwICovXG4iLCIvLyBtcSgpIHY0LjAuMlxuLy8gc2Fzcy1tcS9zYXNzLW1xXG5cbkBjaGFyc2V0IFwiVVRGLThcIjsgLy8gRml4ZXMgYW4gaXNzdWUgd2hlcmUgUnVieSBsb2NhbGUgaXMgbm90IHNldCBwcm9wZXJseVxuICAgICAgICAgICAgICAgICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEvcHVsbC8xMFxuXG4vLy8gQmFzZSBmb250IHNpemUgb24gdGhlIGA8Ym9keT5gIGVsZW1lbnRcbi8vLyBAdHlwZSBOdW1iZXIgKHVuaXQpXG4kbXEtYmFzZS1mb250LXNpemU6IDE2cHggIWRlZmF1bHQ7XG5cbi8vLyBSZXNwb25zaXZlIG1vZGVcbi8vL1xuLy8vIFNldCB0byBgZmFsc2VgIHRvIGVuYWJsZSBzdXBwb3J0IGZvciBicm93c2VycyB0aGF0IGRvIG5vdCBzdXBwb3J0IEBtZWRpYSBxdWVyaWVzLFxuLy8vIChJRSA8PSA4LCBGaXJlZm94IDw9IDMsIE9wZXJhIDw9IDkpXG4vLy9cbi8vLyBZb3UgY291bGQgY3JlYXRlIGEgc3R5bGVzaGVldCBzZXJ2ZWQgZXhjbHVzaXZlbHkgdG8gb2xkZXIgYnJvd3NlcnMsXG4vLy8gd2hlcmUgQG1lZGlhIHF1ZXJpZXMgYXJlIHJhc3Rlcml6ZWRcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgLy8gb2xkLWllLnNjc3Ncbi8vLyAgJG1xLXJlc3BvbnNpdmU6IGZhbHNlO1xuLy8vICBAaW1wb3J0ICdtYWluJzsgLy8gQG1lZGlhIHF1ZXJpZXMgaW4gdGhpcyBmaWxlIHdpbGwgYmUgcmFzdGVyaXplZCB1cCB0byAkbXEtc3RhdGljLWJyZWFrcG9pbnRcbi8vLyAgICAgICAgICAgICAgICAgICAvLyBsYXJnZXIgYnJlYWtwb2ludHMgd2lsbCBiZSBpZ25vcmVkXG4vLy9cbi8vLyBAdHlwZSBCb29sZWFuXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNyZXNwb25zaXZlLW1vZGUtb2ZmIERpc2FibGVkIHJlc3BvbnNpdmUgbW9kZSBkb2N1bWVudGF0aW9uXG4kbXEtcmVzcG9uc2l2ZTogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJyZWFrcG9pbnQgbGlzdFxuLy8vXG4vLy8gTmFtZSB5b3VyIGJyZWFrcG9pbnRzIGluIGEgd2F5IHRoYXQgY3JlYXRlcyBhIHViaXF1aXRvdXMgbGFuZ3VhZ2Vcbi8vLyBhY3Jvc3MgdGVhbSBtZW1iZXJzLiBJdCB3aWxsIGltcHJvdmUgY29tbXVuaWNhdGlvbiBiZXR3ZWVuXG4vLy8gc3Rha2Vob2xkZXJzLCBkZXNpZ25lcnMsIGRldmVsb3BlcnMsIGFuZCB0ZXN0ZXJzLlxuLy8vXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNzZWVpbmctdGhlLWN1cnJlbnRseS1hY3RpdmUtYnJlYWtwb2ludCBGdWxsIGRvY3VtZW50YXRpb24gYW5kIGV4YW1wbGVzXG4kbXEtYnJlYWtwb2ludHM6IChcbiAgICBtb2JpbGU6ICAzMjBweCxcbiAgICB0YWJsZXQ6ICA3NDBweCxcbiAgICBkZXNrdG9wOiA5ODBweCxcbiAgICB3aWRlOiAgICAxMzAwcHhcbikgIWRlZmF1bHQ7XG5cbi8vLyBTdGF0aWMgYnJlYWtwb2ludCAoZm9yIGZpeGVkLXdpZHRoIGxheW91dHMpXG4vLy9cbi8vLyBEZWZpbmUgdGhlIGJyZWFrcG9pbnQgZnJvbSAkbXEtYnJlYWtwb2ludHMgdGhhdCBzaG91bGRcbi8vLyBiZSB1c2VkIGFzIHRoZSB0YXJnZXQgd2lkdGggZm9yIHRoZSBmaXhlZC13aWR0aCBsYXlvdXRcbi8vLyAoaS5lLiB3aGVuICRtcS1yZXNwb25zaXZlIGlzIHNldCB0byAnZmFsc2UnKSBpbiBhIG9sZC1pZS5zY3NzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gIC8vIHRhYmxldC1vbmx5LnNjc3Ncbi8vLyAgLy9cbi8vLyAgLy8gSWdub3JlIGFsbCBzdHlsZXMgYWJvdmUgdGFibGV0IGJyZWFrcG9pbnQsXG4vLy8gIC8vIGFuZCBmaXggdGhlIHN0eWxlcyAoZS5nLiBsYXlvdXQpIGF0IHRhYmxldCB3aWR0aFxuLy8vICAkbXEtcmVzcG9uc2l2ZTogZmFsc2U7XG4vLy8gICRtcS1zdGF0aWMtYnJlYWtwb2ludDogdGFibGV0O1xuLy8vICBAaW1wb3J0ICdtYWluJzsgLy8gQG1lZGlhIHF1ZXJpZXMgaW4gdGhpcyBmaWxlIHdpbGwgYmUgcmFzdGVyaXplZCB1cCB0byB0YWJsZXRcbi8vLyAgICAgICAgICAgICAgICAgICAvLyBsYXJnZXIgYnJlYWtwb2ludHMgd2lsbCBiZSBpZ25vcmVkXG4vLy9cbi8vLyBAdHlwZSBTdHJpbmdcbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xI2FkZGluZy1jdXN0b20tYnJlYWtwb2ludHMgRnVsbCBkb2N1bWVudGF0aW9uIGFuZCBleGFtcGxlc1xuJG1xLXN0YXRpYy1icmVha3BvaW50OiBkZXNrdG9wICFkZWZhdWx0O1xuXG4vLy8gU2hvdyBicmVha3BvaW50cyBpbiB0aGUgdG9wIHJpZ2h0IGNvcm5lclxuLy8vXG4vLy8gSWYgeW91IHdhbnQgdG8gZGlzcGxheSB0aGUgY3VycmVudGx5IGFjdGl2ZSBicmVha3BvaW50IGluIHRoZSB0b3Bcbi8vLyByaWdodCBjb3JuZXIgb2YgeW91ciBzaXRlIGR1cmluZyBkZXZlbG9wbWVudCwgYWRkIHRoZSBicmVha3BvaW50c1xuLy8vIHRvIHRoaXMgbGlzdCwgb3JkZXJlZCBieSB3aWR0aCwgZS5nLiAobW9iaWxlLCB0YWJsZXQsIGRlc2t0b3ApLlxuLy8vXG4vLy8gQHR5cGUgbWFwXG4kbXEtc2hvdy1icmVha3BvaW50czogKCkgIWRlZmF1bHQ7XG5cbi8vLyBDdXN0b21pemUgdGhlIG1lZGlhIHR5cGUgKGUuZy4gYEBtZWRpYSBzY3JlZW5gIG9yIGBAbWVkaWEgcHJpbnRgKVxuLy8vIEJ5IGRlZmF1bHQgc2Fzcy1tcSB1c2VzIGFuIFwiYWxsXCIgbWVkaWEgdHlwZSAoYEBtZWRpYSBhbGwgYW5kIOKApmApXG4vLy9cbi8vLyBAdHlwZSBTdHJpbmdcbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xI2NoYW5naW5nLW1lZGlhLXR5cGUgRnVsbCBkb2N1bWVudGF0aW9uIGFuZCBleGFtcGxlc1xuJG1xLW1lZGlhLXR5cGU6IGFsbCAhZGVmYXVsdDtcblxuLy8vIENvbnZlcnQgcGl4ZWxzIHRvIGVtc1xuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRweCAtIHZhbHVlIHRvIGNvbnZlcnRcbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UtZm9udC1zaXplICgkbXEtYmFzZS1mb250LXNpemUpIC0gYDxib2R5PmAgZm9udCBzaXplXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICRmb250LXNpemUtaW4tZW1zOiBtcS1weDJlbSgxNnB4KTtcbi8vLyAgcCB7IGZvbnQtc2l6ZTogbXEtcHgyZW0oMTZweCk7IH1cbi8vL1xuLy8vIEByZXF1aXJlcyAkbXEtYmFzZS1mb250LXNpemVcbi8vLyBAcmV0dXJucyB7TnVtYmVyfVxuQGZ1bmN0aW9uIG1xLXB4MmVtKCRweCwgJGJhc2UtZm9udC1zaXplOiAkbXEtYmFzZS1mb250LXNpemUpIHtcbiAgICBAaWYgdW5pdGxlc3MoJHB4KSB7XG4gICAgICAgIEB3YXJuIFwiQXNzdW1pbmcgI3skcHh9IHRvIGJlIGluIHBpeGVscywgYXR0ZW1wdGluZyB0byBjb252ZXJ0IGl0IGludG8gcGl4ZWxzLlwiO1xuICAgICAgICBAcmV0dXJuIG1xLXB4MmVtKCRweCAqIDFweCwgJGJhc2UtZm9udC1zaXplKTtcbiAgICB9IEBlbHNlIGlmIHVuaXQoJHB4KSA9PSBlbSB7XG4gICAgICAgIEByZXR1cm4gJHB4O1xuICAgIH1cbiAgICBAcmV0dXJuICgkcHggLyAkYmFzZS1mb250LXNpemUpICogMWVtO1xufVxuXG4vLy8gR2V0IGEgYnJlYWtwb2ludCdzIHdpZHRoXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSBOYW1lIG9mIHRoZSBicmVha3BvaW50LiBPbmUgb2YgJG1xLWJyZWFrcG9pbnRzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICR0YWJsZXQtd2lkdGg6IG1xLWdldC1icmVha3BvaW50LXdpZHRoKHRhYmxldCk7XG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiBtcS1nZXQtYnJlYWtwb2ludC13aWR0aChkZXNrdG9wKSkge31cbi8vL1xuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1icmVha3BvaW50c1xuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVmFsdWUgaW4gcGl4ZWxzXG5AZnVuY3Rpb24gbXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoJG5hbWUsICRicmVha3BvaW50czogJG1xLWJyZWFrcG9pbnRzKSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJG5hbWUpIHtcbiAgICAgICAgQHJldHVybiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgICBAd2FybiBcIkJyZWFrcG9pbnQgI3skbmFtZX0gd2Fzbid0IGZvdW5kIGluICRicmVha3BvaW50cy5cIjtcbiAgICB9XG59XG5cbi8vLyBNZWRpYSBRdWVyeSBtaXhpblxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmcgfCBCb29sZWFufSAkZnJvbSAoZmFsc2UpIC0gT25lIG9mICRtcS1icmVha3BvaW50c1xuLy8vIEBwYXJhbSB7U3RyaW5nIHwgQm9vbGVhbn0gJHVudGlsIChmYWxzZSkgLSBPbmUgb2YgJG1xLWJyZWFrcG9pbnRzXG4vLy8gQHBhcmFtIHtTdHJpbmcgfCBCb29sZWFufSAkYW5kIChmYWxzZSkgLSBBZGRpdGlvbmFsIG1lZGlhIHF1ZXJ5IHBhcmFtZXRlcnNcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1lZGlhLXR5cGUgKCRtcS1tZWRpYS10eXBlKSAtIE1lZGlhIHR5cGU6IHNjcmVlbiwgcHJpbnTigKZcbi8vL1xuLy8vIEBpZ25vcmUgVW5kb2N1bWVudGVkIEFQSSwgZm9yIGFkdmFuY2VkIHVzZSBvbmx5OlxuLy8vIEBpZ25vcmUgQHBhcmFtIHtNYXB9ICRicmVha3BvaW50cyAoJG1xLWJyZWFrcG9pbnRzKVxuLy8vIEBpZ25vcmUgQHBhcmFtIHtTdHJpbmd9ICRzdGF0aWMtYnJlYWtwb2ludCAoJG1xLXN0YXRpYy1icmVha3BvaW50KVxuLy8vXG4vLy8gQGNvbnRlbnQgc3R5bGluZyBydWxlcywgd3JhcHBlZCBpbnRvIGEgQG1lZGlhIHF1ZXJ5IHdoZW4gJHJlc3BvbnNpdmUgaXMgdHJ1ZVxuLy8vXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLW1lZGlhLXR5cGVcbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtYnJlYWtwb2ludHNcbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtc3RhdGljLWJyZWFrcG9pbnRcbi8vLyBAcmVxdWlyZXMge2Z1bmN0aW9ufSBtcS1weDJlbVxuLy8vIEByZXF1aXJlcyB7ZnVuY3Rpb259IG1xLWdldC1icmVha3BvaW50LXdpZHRoXG4vLy9cbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xI3Jlc3BvbnNpdmUtbW9kZS1vbi1kZWZhdWx0IEZ1bGwgZG9jdW1lbnRhdGlvbiBhbmQgZXhhbXBsZXNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgLmVsZW1lbnQge1xuLy8vICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBtb2JpbGUpIHtcbi8vLyAgICAgIGNvbG9yOiByZWQ7XG4vLy8gICAgfVxuLy8vICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogdGFibGV0KSB7XG4vLy8gICAgICBjb2xvcjogYmx1ZTtcbi8vLyAgICB9XG4vLy8gICAgQGluY2x1ZGUgbXEobW9iaWxlLCB0YWJsZXQpIHtcbi8vLyAgICAgIGNvbG9yOiBncmVlbjtcbi8vLyAgICB9XG4vLy8gICAgQGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCwgJGFuZDogJyhvcmllbnRhdGlvbjogbGFuZHNjYXBlKScpIHtcbi8vLyAgICAgIGNvbG9yOiB0ZWFsO1xuLy8vICAgIH1cbi8vLyAgICBAaW5jbHVkZSBtcSg5NTBweCkge1xuLy8vICAgICAgY29sb3I6IGhvdHBpbms7XG4vLy8gICAgfVxuLy8vICAgIEBpbmNsdWRlIG1xKHRhYmxldCwgJG1lZGlhLXR5cGU6IHNjcmVlbikge1xuLy8vICAgICAgY29sb3I6IGhvdHBpbms7XG4vLy8gICAgfVxuLy8vICAgIC8vIEFkdmFuY2VkIHVzZTpcbi8vLyAgICAkbXktYnJlYWtwb2ludHM6IChMOiA5MDBweCwgWEw6IDEyMDBweCk7XG4vLy8gICAgQGluY2x1ZGUgbXEoTCwgJGJyZWFrcG9pbnRzOiAkbXktYnJlYWtwb2ludHMsICRzdGF0aWMtYnJlYWtwb2ludDogTCkge1xuLy8vICAgICAgY29sb3I6IGhvdHBpbms7XG4vLy8gICAgfVxuLy8vICB9XG5AbWl4aW4gbXEoXG4gICAgJGZyb206IGZhbHNlLFxuICAgICR1bnRpbDogZmFsc2UsXG4gICAgJGFuZDogZmFsc2UsXG4gICAgJG1lZGlhLXR5cGU6ICRtcS1tZWRpYS10eXBlLFxuICAgICRicmVha3BvaW50czogJG1xLWJyZWFrcG9pbnRzLFxuICAgICRyZXNwb25zaXZlOiAkbXEtcmVzcG9uc2l2ZSxcbiAgICAkc3RhdGljLWJyZWFrcG9pbnQ6ICRtcS1zdGF0aWMtYnJlYWtwb2ludFxuKSB7XG4gICAgJG1pbi13aWR0aDogMDtcbiAgICAkbWF4LXdpZHRoOiAwO1xuICAgICRtZWRpYS1xdWVyeTogJyc7XG5cbiAgICAvLyBGcm9tOiB0aGlzIGJyZWFrcG9pbnQgKGluY2x1c2l2ZSlcbiAgICBAaWYgJGZyb20ge1xuICAgICAgICBAaWYgdHlwZS1vZigkZnJvbSkgPT0gbnVtYmVyIHtcbiAgICAgICAgICAgICRtaW4td2lkdGg6IG1xLXB4MmVtKCRmcm9tKTtcbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAkbWluLXdpZHRoOiBtcS1weDJlbShtcS1nZXQtYnJlYWtwb2ludC13aWR0aCgkZnJvbSwgJGJyZWFrcG9pbnRzKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBVbnRpbDogdGhhdCBicmVha3BvaW50IChleGNsdXNpdmUpXG4gICAgQGlmICR1bnRpbCB7XG4gICAgICAgIEBpZiB0eXBlLW9mKCR1bnRpbCkgPT0gbnVtYmVyIHtcbiAgICAgICAgICAgICRtYXgtd2lkdGg6IG1xLXB4MmVtKCR1bnRpbCk7XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgJG1heC13aWR0aDogbXEtcHgyZW0obXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoJHVudGlsLCAkYnJlYWtwb2ludHMpKSAtIC4wMWVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSBzdXBwb3J0IGlzIGRpc2FibGVkLCByYXN0ZXJpemUgdGhlIG91dHB1dCBvdXRzaWRlIEBtZWRpYSBibG9ja3NcbiAgICAvLyBUaGUgYnJvd3NlciB3aWxsIHJlbHkgb24gdGhlIGNhc2NhZGUgaXRzZWxmLlxuICAgIEBpZiAkcmVzcG9uc2l2ZSA9PSBmYWxzZSB7XG4gICAgICAgICRzdGF0aWMtYnJlYWtwb2ludC13aWR0aDogbXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoJHN0YXRpYy1icmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuICAgICAgICAkdGFyZ2V0LXdpZHRoOiBtcS1weDJlbSgkc3RhdGljLWJyZWFrcG9pbnQtd2lkdGgpO1xuXG4gICAgICAgIC8vIE91dHB1dCBvbmx5IHJ1bGVzIHRoYXQgc3RhcnQgYXQgb3Igc3BhbiBvdXIgdGFyZ2V0IHdpZHRoXG4gICAgICAgIEBpZiAoXG4gICAgICAgICAgICAkYW5kID09IGZhbHNlXG4gICAgICAgICAgICBhbmQgJG1pbi13aWR0aCA8PSAkdGFyZ2V0LXdpZHRoXG4gICAgICAgICAgICBhbmQgKFxuICAgICAgICAgICAgICAgICR1bnRpbCA9PSBmYWxzZSBvciAkbWF4LXdpZHRoID49ICR0YXJnZXQtd2lkdGhcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIGFuZCAkbWVkaWEtdHlwZSAhPSAncHJpbnQnXG4gICAgICAgICkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZXNwb25zaXZlIHN1cHBvcnQgaXMgZW5hYmxlZCwgb3V0cHV0IHJ1bGVzIGluc2lkZSBAbWVkaWEgcXVlcmllc1xuICAgIEBlbHNlIHtcbiAgICAgICAgQGlmICRtaW4td2lkdGggIT0gMCB7ICRtZWRpYS1xdWVyeTogJyN7JG1lZGlhLXF1ZXJ5fSBhbmQgKG1pbi13aWR0aDogI3skbWluLXdpZHRofSknOyB9XG4gICAgICAgIEBpZiAkbWF4LXdpZHRoICE9IDAgeyAkbWVkaWEtcXVlcnk6ICcjeyRtZWRpYS1xdWVyeX0gYW5kIChtYXgtd2lkdGg6ICN7JG1heC13aWR0aH0pJzsgfVxuICAgICAgICBAaWYgJGFuZCAgICAgICAgICAgIHsgJG1lZGlhLXF1ZXJ5OiAnI3skbWVkaWEtcXVlcnl9IGFuZCAjeyRhbmR9JzsgfVxuXG4gICAgICAgIC8vIFJlbW92ZSB1bm5lY2Vzc2FyeSBtZWRpYSBxdWVyeSBwcmVmaXggJ2FsbCBhbmQgJ1xuICAgICAgICBAaWYgKCRtZWRpYS10eXBlID09ICdhbGwnIGFuZCAkbWVkaWEtcXVlcnkgIT0gJycpIHtcbiAgICAgICAgICAgICRtZWRpYS10eXBlOiAnJztcbiAgICAgICAgICAgICRtZWRpYS1xdWVyeTogc3RyLXNsaWNlKHVucXVvdGUoJG1lZGlhLXF1ZXJ5KSwgNik7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgI3skbWVkaWEtdHlwZSArICRtZWRpYS1xdWVyeX0ge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vLyBRdWljayBzb3J0XG4vLy9cbi8vLyBAYXV0aG9yIFNhbSBSaWNoYXJkc1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBwYXJhbSB7TGlzdH0gJGxpc3QgLSBMaXN0IHRvIHNvcnRcbi8vLyBAcmV0dXJucyB7TGlzdH0gU29ydGVkIExpc3RcbkBmdW5jdGlvbiBfbXEtcXVpY2stc29ydCgkbGlzdCkge1xuICAgICRsZXNzOiAgKCk7XG4gICAgJGVxdWFsOiAoKTtcbiAgICAkbGFyZ2U6ICgpO1xuXG4gICAgQGlmIGxlbmd0aCgkbGlzdCkgPiAxIHtcbiAgICAgICAgJHNlZWQ6IG50aCgkbGlzdCwgY2VpbChsZW5ndGgoJGxpc3QpIC8gMikpO1xuXG4gICAgICAgIEBlYWNoICRpdGVtIGluICRsaXN0IHtcbiAgICAgICAgICAgIEBpZiAoJGl0ZW0gPT0gJHNlZWQpIHtcbiAgICAgICAgICAgICAgICAkZXF1YWw6IGFwcGVuZCgkZXF1YWwsICRpdGVtKTtcbiAgICAgICAgICAgIH0gQGVsc2UgaWYgKCRpdGVtIDwgJHNlZWQpIHtcbiAgICAgICAgICAgICAgICAkbGVzczogYXBwZW5kKCRsZXNzLCAkaXRlbSk7XG4gICAgICAgICAgICB9IEBlbHNlIGlmICgkaXRlbSA+ICRzZWVkKSB7XG4gICAgICAgICAgICAgICAgJGxhcmdlOiBhcHBlbmQoJGxhcmdlLCAkaXRlbSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAcmV0dXJuIGpvaW4oam9pbihfbXEtcXVpY2stc29ydCgkbGVzcyksICRlcXVhbCksIF9tcS1xdWljay1zb3J0KCRsYXJnZSkpO1xuICAgIH1cblxuICAgIEByZXR1cm4gJGxpc3Q7XG59XG5cbi8vLyBTb3J0IGEgbWFwIGJ5IHZhbHVlcyAod29ya3Mgd2l0aCBudW1iZXJzIG9ubHkpXG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byBzb3J0XG4vLy8gQHJldHVybnMge01hcH0gTWFwIHNvcnRlZCBieSB2YWx1ZVxuQGZ1bmN0aW9uIF9tcS1tYXAtc29ydC1ieS12YWx1ZSgkbWFwKSB7XG4gICAgJG1hcC1zb3J0ZWQ6ICgpO1xuICAgICRtYXAta2V5czogbWFwLWtleXMoJG1hcCk7XG4gICAgJG1hcC12YWx1ZXM6IG1hcC12YWx1ZXMoJG1hcCk7XG4gICAgJG1hcC12YWx1ZXMtc29ydGVkOiBfbXEtcXVpY2stc29ydCgkbWFwLXZhbHVlcyk7XG5cbiAgICAvLyBSZW9yZGVyIGtleS92YWx1ZSBwYWlycyBiYXNlZCBvbiBrZXkgdmFsdWVzXG4gICAgQGVhY2ggJHZhbHVlIGluICRtYXAtdmFsdWVzLXNvcnRlZCB7XG4gICAgICAgICRpbmRleDogaW5kZXgoJG1hcC12YWx1ZXMsICR2YWx1ZSk7XG4gICAgICAgICRrZXk6IG50aCgkbWFwLWtleXMsICRpbmRleCk7XG4gICAgICAgICRtYXAtc29ydGVkOiBtYXAtbWVyZ2UoJG1hcC1zb3J0ZWQsICgka2V5OiAkdmFsdWUpKTtcblxuICAgICAgICAvLyBVbnNldCB0aGUgdmFsdWUgaW4gJG1hcC12YWx1ZXMgdG8gcHJldmVudCB0aGUgbG9vcFxuICAgICAgICAvLyBmcm9tIGZpbmRpbmcgdGhlIHNhbWUgaW5kZXggdHdpY2VcbiAgICAgICAgJG1hcC12YWx1ZXM6IHNldC1udGgoJG1hcC12YWx1ZXMsICRpbmRleCwgMCk7XG4gICAgfVxuXG4gICAgQHJldHVybiAkbWFwLXNvcnRlZDtcbn1cblxuLy8vIEFkZCBhIGJyZWFrcG9pbnRcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbmFtZSAtIE5hbWUgb2YgdGhlIGJyZWFrcG9pbnRcbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIC0gV2lkdGggb2YgdGhlIGJyZWFrcG9pbnRcbi8vL1xuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1icmVha3BvaW50c1xuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICBAaW5jbHVkZSBtcS1hZGQtYnJlYWtwb2ludCh0dnNjcmVlbiwgMTkyMHB4KTtcbi8vLyAgQGluY2x1ZGUgbXEodHZzY3JlZW4pIHt9XG5AbWl4aW4gbXEtYWRkLWJyZWFrcG9pbnQoJG5hbWUsICR3aWR0aCkge1xuICAgICRuZXctYnJlYWtwb2ludDogKCRuYW1lOiAkd2lkdGgpO1xuICAgICRtcS1icmVha3BvaW50czogbWFwLW1lcmdlKCRtcS1icmVha3BvaW50cywgJG5ldy1icmVha3BvaW50KSAhZ2xvYmFsO1xuICAgICRtcS1icmVha3BvaW50czogX21xLW1hcC1zb3J0LWJ5LXZhbHVlKCRtcS1icmVha3BvaW50cykgIWdsb2JhbDtcbn1cblxuLy8vIFNob3cgdGhlIGFjdGl2ZSBicmVha3BvaW50IGluIHRoZSB0b3AgcmlnaHQgY29ybmVyIG9mIHRoZSB2aWV3cG9ydFxuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjc2VlaW5nLXRoZS1jdXJyZW50bHktYWN0aXZlLWJyZWFrcG9pbnRcbi8vL1xuLy8vIEBwYXJhbSB7TGlzdH0gJHNob3ctYnJlYWtwb2ludHMgKCRtcS1zaG93LWJyZWFrcG9pbnRzKSAtIExpc3Qgb2YgYnJlYWtwb2ludHMgdG8gc2hvdyBpbiB0aGUgdG9wIHJpZ2h0IGNvcm5lclxuLy8vIEBwYXJhbSB7TWFwfSAkYnJlYWtwb2ludHMgKCRtcS1icmVha3BvaW50cykgLSBCcmVha3BvaW50IG5hbWVzIGFuZCBzaXplc1xuLy8vXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLWJyZWFrcG9pbnRzXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLXNob3ctYnJlYWtwb2ludHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgLy8gU2hvdyBicmVha3BvaW50cyB1c2luZyBnbG9iYWwgc2V0dGluZ3Ncbi8vLyAgQGluY2x1ZGUgbXEtc2hvdy1icmVha3BvaW50cztcbi8vL1xuLy8vICAvLyBTaG93IGJyZWFrcG9pbnRzIHVzaW5nIGN1c3RvbSBzZXR0aW5nc1xuLy8vICBAaW5jbHVkZSBtcS1zaG93LWJyZWFrcG9pbnRzKChMLCBYTCksIChTOiAzMDBweCwgTDogODAwcHgsIFhMOiAxMjAwcHgpKTtcbkBtaXhpbiBtcS1zaG93LWJyZWFrcG9pbnRzKCRzaG93LWJyZWFrcG9pbnRzOiAkbXEtc2hvdy1icmVha3BvaW50cywgJGJyZWFrcG9pbnRzOiAkbXEtYnJlYWtwb2ludHMpIHtcbiAgICBib2R5OjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkNGOEUzO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0ZCRUVENTtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjRkJFRUQ1O1xuICAgICAgICBjb2xvcjogI0MwOTg1MztcbiAgICAgICAgZm9udDogc21hbGwtY2FwdGlvbjtcbiAgICAgICAgcGFkZGluZzogM3B4IDZweDtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgei1pbmRleDogMTAwO1xuXG4gICAgICAgIC8vIExvb3AgdGhyb3VnaCB0aGUgYnJlYWtwb2ludHMgdGhhdCBzaG91bGQgYmUgc2hvd25cbiAgICAgICAgQGVhY2ggJHNob3ctYnJlYWtwb2ludCBpbiAkc2hvdy1icmVha3BvaW50cyB7XG4gICAgICAgICAgICAkd2lkdGg6IG1xLWdldC1icmVha3BvaW50LXdpZHRoKCRzaG93LWJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgkc2hvdy1icmVha3BvaW50LCAkYnJlYWtwb2ludHM6ICRicmVha3BvaW50cykge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiI3skc2hvdy1icmVha3BvaW50fSDiiaUgI3skd2lkdGh9ICgje21xLXB4MmVtKCR3aWR0aCl9KVwiO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AaWYgbGVuZ3RoKCRtcS1zaG93LWJyZWFrcG9pbnRzKSA+IDAge1xuICAgIEBpbmNsdWRlIG1xLXNob3ctYnJlYWtwb2ludHM7XG59XG5cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPV9zYXNzLW1xLnNjc3MubWFwICovXG4iLCIvLy8vXG4vLy8gQGdyb3VwIGhlbHBlcnMvYWNjZXNzaWJpbGl0eVxuLy8vL1xuXG4vLy8gRm9jdXNlZCB0ZXh0XG4vLy9cbi8vLyBQcm92aWRlcyBhbiBvdXRsaW5lIHRvIGNsZWFybHkgaW5kaWNhdGUgd2hlbiB0aGUgdGFyZ2V0IGVsZW1lbnQgaXMgZm9jdXNlZC5cbi8vLyBVc2VkIGZvciBpbnRlcmFjdGl2ZSB0ZXh0LWJhc2VkIGVsZW1lbnRzLlxuLy8vXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuQG1peGluIGdvdnVrLWZvY3VzZWQtdGV4dCB7XG4gIC8vIFdoZW4gY29sb3VycyBhcmUgb3ZlcnJpZGRlbiwgZm9yIGV4YW1wbGUgd2hlbiB1c2VycyBoYXZlIGEgZGFyayBtb2RlLFxuICAvLyBiYWNrZ3JvdW5kcyBhbmQgYm94LXNoYWRvd3MgZGlzYXBwZWFyLCBzbyB3ZSBuZWVkIHRvIGVuc3VyZSB0aGVyZSdzIGFcbiAgLy8gdHJhbnNwYXJlbnQgb3V0bGluZSB3aGljaCB3aWxsIGJlIHNldCB0byBhIHZpc2libGUgY29sb3VyLlxuXG4gIG91dGxpbmU6ICRnb3Z1ay1mb2N1cy13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICRnb3Z1ay1mb2N1cy10ZXh0LWNvbG91cjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdvdnVrLWZvY3VzLWNvbG91cjtcbiAgYm94LXNoYWRvdzpcbiAgICAwIC0ycHggJGdvdnVrLWZvY3VzLWNvbG91cixcbiAgICAwIDRweCAkZ292dWstZm9jdXMtdGV4dC1jb2xvdXI7XG4gIC8vIFdoZW4gbGluayBpcyBmb2N1c3NlZCwgaGlkZSB0aGUgZGVmYXVsdCB1bmRlcmxpbmUgc2luY2UgdGhlXG4gIC8vIGJveCBzaGFkb3cgYWRkcyB0aGUgXCJ1bmRlcmxpbmVcIlxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgLy8gRml4ZXMgYW4gaXNzdWUgaW4gQ2hyb21pdW0gMTA44oCTMTExIHdoZXJlIHRoZSBib3gtc2hhZG93IG9uIHRoZSBmb2N1cyBzdGF0ZVxuICAvLyBpcyBtaXNzaW5nIG9uIGxpbmtzIHRoYXQgd3JhcCBhY3Jvc3MgbXVsdGlwbGUgbGluZXMgWzFdLlxuICAvL1xuICAvLyBIb3dldmVyLCB0ZXh0LXdyYXA6IGJhbGFuY2UgZG9lc24ndCBwbGF5IG5pY2VseSB3aXRoIGJveC1kZWNvcmF0aW9uLWJyZWFrOlxuICAvLyBjbG9uZSwgY2F1c2luZyBsaW5rcyB0byByZS1mbG93IHdoZW4gZm9jdXNlZCBbMl0uIEFzIHRleHQtd3JhcDogYmFsYW5jZVxuICAvLyB3YXNuJ3QgaW50cm9kdWNlZCB1bnRpbCBDaHJvbWl1bSAxMTQgd2UgY2FuIHVzZSBpdCBhcyBhIHdheSB0byB0YXJnZXRcbiAgLy8gdGhpcyBmaXggdG8ganVzdCAxMDjigJMxMTEuXG4gIC8vXG4gIC8vIFsxXTogaHR0cDovL2NyYnVnLmNvbS80MDg4NDk3MVxuICAvLyBbMl06IGh0dHBzOi8vZ2l0aHViLmNvbS9hbHBoYWdvdi9nb3Z1ay1mcm9udGVuZC9pc3N1ZXMvNTg3OFxuICBAc3VwcG9ydHMgbm90ICh0ZXh0LXdyYXA6IGJhbGFuY2UpIHtcbiAgICAtd2Via2l0LWJveC1kZWNvcmF0aW9uLWJyZWFrOiBjbG9uZTtcbiAgICAgICAgICAgIGJveC1kZWNvcmF0aW9uLWJyZWFrOiBjbG9uZTtcbiAgfVxufVxuXG4vLy8gRm9jdXNlZCBib3hcbi8vL1xuLy8vIFByb3ZpZGVzIGFuIG91dGxpbmUgdG8gY2xlYXJseSBpbmRpY2F0ZSB3aGVuIHRoZSB0YXJnZXQgZWxlbWVudCBpcyBmb2N1c2VkLlxuLy8vIFVubGlrZSBnb3Z1ay1mb2N1c2VkLXRleHQsIHdoaWNoIG9ubHkgZHJhd3MgYW4gdW5kZXJsaW5lIGJlbG93IHRoZSBlbGVtZW50LFxuLy8vIGdvdnVrLWZvY3VzZWQtYm94IGRyYXdzIGFuIG91dGxpbmUgYXJvdW5kIGFsbCBzaWRlcyBvZiB0aGUgZWxlbWVudC5cbi8vLyBCZXN0IHVzZWQgZm9yIG5vbi10ZXh0IGNvbnRlbnQgY29udGFpbmVkIHdpdGhpbiBsaW5rcy5cbi8vL1xuLy8vIEBhY2Nlc3MgcHVibGljXG5cbkBtaXhpbiBnb3Z1ay1mb2N1c2VkLWJveCB7XG4gIG91dGxpbmU6ICRnb3Z1ay1mb2N1cy13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzpcbiAgICAwIDAgMCA0cHggJGdvdnVrLWZvY3VzLWNvbG91cixcbiAgICAwIDAgMCA4cHggJGdvdnVrLWZvY3VzLXRleHQtY29sb3VyO1xufVxuXG4vKiMgc291cmNlTWFwcGluZ1VSTD1fZm9jdXNlZC5zY3NzLm1hcCAqL1xuIiwiLy8vL1xuLy8vIEBncm91cCBzZXR0aW5ncy9jb2xvdXJzXG4vLy8vXG5cbkBpbXBvcnQgXCIuLi9oZWxwZXJzL2NvbG91clwiO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEdlbmVyaWNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLy8gQnJhbmQgY29sb3VyXG4vLy9cbi8vLyBAdHlwZSBDb2xvdXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG4kZ292dWstYnJhbmQtY29sb3VyOiBnb3Z1ay1jb2xvdXIoXCJibHVlXCIpICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvdXJcbi8vL1xuLy8vIEB0eXBlIENvbG91clxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay10ZXh0LWNvbG91cjogZ292dWstY29sb3VyKFwiYmxhY2tcIikgIWRlZmF1bHQ7XG5cbi8vLyBDYW52YXMgYmFja2dyb3VuZCBjb2xvdXJcbi8vL1xuLy8vIFVzZWQgYnkgdGhlIGZvb3RlciBjb21wb25lbnQgYW5kIHRlbXBsYXRlIHRvIGdpdmUgdGhlIGlsbHVzaW9uIG9mIGEgbG9uZ1xuLy8vIGZvb3Rlci5cbi8vL1xuLy8vIEB0eXBlIENvbG91clxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGRlcHJlY2F0ZWQgXCIkZ292dWstY2FudmFzLWJhY2tncm91bmQtY29sb3VyIGhhcyBiZWVuIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgbmV4dCBtYWpvclxuLy8vIHZlcnNpb24uIFVzZSBgJGdvdnVrLXRlbXBsYXRlLWJhY2tncm91bmQtY29sb3VyYCBpZiB5b3Ugd2FudCB0byBjaGFuZ2UgdGhlIGJhY2tncm91bmQgb2Zcbi8vLyB0aGUgYDxodG1sPmAgZWxlbWVudCBhbmQgYmFja2dyb3VuZCBjb2xvdXIgb2YgZWxlbWVudHMgdGhhdCBuZWVkIHRvIG1hdGNoIGZvciB2aXN1YWxcbi8vLyBjb250aW51aXR5LlxuJGdvdnVrLWNhbnZhcy1iYWNrZ3JvdW5kLWNvbG91cjogZ292dWstY29sb3VyKFwibGlnaHQtZ3JleVwiKSAhZGVmYXVsdDtcblxuLy8gT3V0cHV0IGEgZGVwcmVjYXRpb24gd2FybmluZyBpZiAkZ292dWstY2FudmFzLWJhY2tncm91bmQtY29sb3VyIGlzIGJlaW5nIG92ZXJyaWRkZW5cbi8vIFJlbW92ZSBpbiBuZXh0IG1ham9yIHZlcnNpb24uXG5AaWYgJGdvdnVrLWNhbnZhcy1iYWNrZ3JvdW5kLWNvbG91ciAhPSBnb3Z1ay1jb2xvdXIoXCJsaWdodC1ncmV5XCIpIHtcbiAgQGluY2x1ZGUgX3dhcm5pbmcoXG4gICAgXCIkZ292dWstY2FudmFzLWJhY2tncm91bmQtY29sb3VyXCIsXG4gICAgXCIkZ292dWstY2FudmFzLWJhY2tncm91bmQtY29sb3VyIGhhcyBiZWVuIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgbmV4dCBtYWpvciB2ZXJzaW9uLlwiXG4gICk7XG59XG5cbi8vLyBUZW1wbGF0ZSBiYWNrZ3JvdW5kIGNvbG91clxuLy8vXG4vLy8gVXNlZCBieSBjb21wb25lbnRzIHRoYXQgd2FudCB0byBnaXZlIHRoZSBpbGx1c2lvbiBvZiBleHRlbmRpbmdcbi8vLyB0aGUgdGVtcGxhdGUgYmFja2dyb3VuZCAoc3VjaCBhcyB0aGUgZm9vdGVyIGFuZCBjb29raWUgYmFubmVyKS5cbi8vL1xuLy8vIEB0eXBlIENvbG91clxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay10ZW1wbGF0ZS1iYWNrZ3JvdW5kLWNvbG91cjogZ292dWstY29sb3VyKFwibGlnaHQtZ3JleVwiKSAhZGVmYXVsdDtcblxuLy8vIEJvZHkgYmFja2dyb3VuZCBjb2xvdXJcbi8vL1xuLy8vIEB0eXBlIENvbG91clxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay1ib2R5LWJhY2tncm91bmQtY29sb3VyOiBnb3Z1ay1jb2xvdXIoXCJ3aGl0ZVwiKSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3VyIGZvciBwcmludCBtZWRpYVxuLy8vXG4vLy8gVXNlICd0cnVlIGJsYWNrJyB0byBhdm9pZCBwcmludGVycyB1c2luZyBjb2xvdXIgaW5rIHRvIHByaW50IGJvZHkgdGV4dFxuLy8vXG4vLy8gQHR5cGUgQ29sb3VyXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuJGdvdnVrLXByaW50LXRleHQtY29sb3VyOiAjMDAwMDAwICFkZWZhdWx0O1xuXG4vLy8gU2Vjb25kYXJ5IHRleHQgY29sb3VyXG4vLy9cbi8vLyBVc2VkIGluIGZvciBleGFtcGxlICdtdXRlZCcgdGV4dCBhbmQgaGVscCB0ZXh0LlxuLy8vXG4vLy8gQHR5cGUgQ29sb3VyXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuJGdvdnVrLXNlY29uZGFyeS10ZXh0LWNvbG91cjogZ292dWstY29sb3VyKFwiZGFyay1ncmV5XCIpICFkZWZhdWx0O1xuXG4vLy8gRm9jdXMgY29sb3VyXG4vLy9cbi8vLyBVc2VkIGZvciBvdXRsaW5lIChhbmQgYmFja2dyb3VuZCwgd2hlcmUgYXBwcm9wcmlhdGUpIHdoZW4gaW50ZXJhY3RpdmVcbi8vLyBlbGVtZW50cyAobGlua3MsIGZvcm0gY29udHJvbHMpIGhhdmUga2V5Ym9hcmQgZm9jdXMuXG4vLy9cbi8vLyBAdHlwZSBDb2xvdXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG4kZ292dWstZm9jdXMtY29sb3VyOiBnb3Z1ay1jb2xvdXIoXCJ5ZWxsb3dcIikgIWRlZmF1bHQ7XG5cbi8vLyBGb2N1c2VkIHRleHQgY29sb3VyXG4vLy9cbi8vLyBFbnN1cmUgdGhhdCB0aGUgY29udHJhc3QgYmV0d2VlbiB0aGUgdGV4dCBhbmQgYmFja2dyb3VuZCBjb2xvdXIgcGFzc2VzXG4vLy8gV0NBRyBMZXZlbCBBQSBjb250cmFzdCByZXF1aXJlbWVudHMuXG4vLy9cbi8vLyBAdHlwZSBDb2xvdXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG4kZ292dWstZm9jdXMtdGV4dC1jb2xvdXI6IGdvdnVrLWNvbG91cihcImJsYWNrXCIpICFkZWZhdWx0O1xuXG4vLy8gRXJyb3IgY29sb3VyXG4vLy9cbi8vLyBVc2VkIHRvIGhpZ2hsaWdodCBlcnJvciBtZXNzYWdlcyBhbmQgZm9ybSBjb250cm9scyBpbiBhbiBlcnJvciBzdGF0ZVxuLy8vXG4vLy8gQHR5cGUgQ29sb3VyXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuJGdvdnVrLWVycm9yLWNvbG91cjogZ292dWstY29sb3VyKFwicmVkXCIpICFkZWZhdWx0O1xuXG4vLy8gU3VjY2VzcyBjb2xvdXJcbi8vL1xuLy8vIFVzZWQgdG8gaGlnaGxpZ2h0IHN1Y2Nlc3MgbWVzc2FnZXMgYW5kIGJhbm5lcnNcbi8vL1xuLy8vIEB0eXBlIENvbG91clxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay1zdWNjZXNzLWNvbG91cjogZ292dWstY29sb3VyKFwiZ3JlZW5cIikgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgY29sb3VyXG4vLy9cbi8vLyBVc2VkIGluIGZvciBleGFtcGxlIGJvcmRlcnMsIHNlcGFyYXRvcnMsIHJ1bGVzIGFuZCBrZXlsaW5lcy5cbi8vL1xuLy8vIEB0eXBlIENvbG91clxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay1ib3JkZXItY29sb3VyOiBnb3Z1ay1jb2xvdXIoXCJtaWQtZ3JleVwiKSAhZGVmYXVsdDtcblxuLy8vIElucHV0IGJvcmRlciBjb2xvdXJcbi8vL1xuLy8vIFVzZWQgZm9yIGZvcm0gaW5wdXRzIGFuZCBjb250cm9sc1xuLy8vXG4vLy8gQHR5cGUgQ29sb3VyXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuJGdvdnVrLWlucHV0LWJvcmRlci1jb2xvdXI6IGdvdnVrLWNvbG91cihcImJsYWNrXCIpICFkZWZhdWx0O1xuXG4vLy8gSW5wdXQgaG92ZXIgY29sb3VyXG4vLy9cbi8vLyBVc2VkIGZvciBob3ZlciBzdGF0ZXMgb24gZm9ybSBjb250cm9sc1xuLy8vXG4vLy8gQHR5cGUgQ29sb3VyXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuJGdvdnVrLWhvdmVyLWNvbG91cjogZ292dWstY29sb3VyKFwibWlkLWdyZXlcIikgIWRlZmF1bHQ7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBMaW5rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8vIExpbmsgY29sb3VyXG4vLy9cbi8vLyBAdHlwZSBDb2xvdXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG4kZ292dWstbGluay1jb2xvdXI6IGdvdnVrLWNvbG91cihcImJsdWVcIikgIWRlZmF1bHQ7XG5cbi8vLyBWaXNpdGVkIGxpbmsgY29sb3VyXG4vLy9cbi8vLyBAdHlwZSBDb2xvdXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG4kZ292dWstbGluay12aXNpdGVkLWNvbG91cjogZ292dWstY29sb3VyKFwicHVycGxlXCIpICFkZWZhdWx0O1xuXG4vLy8gTGluayBob3ZlciBjb2xvdXJcbi8vL1xuLy8vIEB0eXBlIENvbG91clxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay1saW5rLWhvdmVyLWNvbG91cjogZ292dWstY29sb3VyKFwiZGFyay1ibHVlXCIpICFkZWZhdWx0O1xuXG4vLy8gQWN0aXZlIGxpbmsgY29sb3VyXG4vLy9cbi8vLyBAdHlwZSBDb2xvdXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG4kZ292dWstbGluay1hY3RpdmUtY29sb3VyOiBnb3Z1ay1jb2xvdXIoXCJibGFja1wiKSAhZGVmYXVsdDtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEJyYW5kIHJlZnJlc2hcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vLyBVcGRhdGVkIHRlbXBsYXRlIGJhY2tncm91bmQgY29sb3VyXG4vLy9cbi8vLyBAdHlwZSBDb2xvdXJcbi8vLyBAYWNjZXNzIHByaXZhdGVcbiRfZ292dWstcmVicmFuZC10ZW1wbGF0ZS1iYWNrZ3JvdW5kLWNvbG91cjogZ292dWstdGludCgkZ292dWstYnJhbmQtY29sb3VyLCA5NSUpO1xuXG4vLy8gQm9yZGVyIGNvbG91ciBmb3IgYXJlYXMgb24gYSBsaWdodC1ibHVlIGJhY2tncm91bmRcbi8vL1xuLy8vIEB0eXBlIENvbG91clxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuJF9nb3Z1ay1yZWJyYW5kLWJvcmRlci1jb2xvdXItb24tYmx1ZS10aW50LTk1OiBnb3Z1ay10aW50KCRnb3Z1ay1icmFuZC1jb2xvdXIsIDUwJSk7XG5cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPV9jb2xvdXJzLWFwcGxpZWQuc2Nzcy5tYXAgKi9cbiIsIkBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9jb3JlL2xpc3RzXCIpIHtcbiAgJWdvdnVrLWxpc3Qge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDE5KTtcbiAgICBAaW5jbHVkZSBnb3Z1ay10ZXh0LWNvbG91cjtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDQsIFwiYm90dG9tXCIpO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgICAvLyBBZGQgYSB0b3AgbWFyZ2luIGZvciBuZXN0ZWQgbGlzdHNcbiAgICAlZ292dWstbGlzdCB7XG4gICAgICBtYXJnaW4tdG9wOiBnb3Z1ay1zcGFjaW5nKDIpO1xuICAgIH1cbiAgfVxuXG4gICVnb3Z1ay1saXN0ID4gbGkge1xuICAgIC8vIExpc3RzIHdpdGhvdXQgbnVtYmVycyBvciBidWxsZXRzIHNob3VsZCBhbHdheXMgaGF2ZSBleHRyYSBzcGFjZSBiZXR3ZWVuXG4gICAgLy8gbGlzdCBpdGVtcy4gTGlzdHMgd2l0aCBudW1iZXJzIG9yIGJ1bGxldHMgb25seSBoYXZlIHRoaXMgZXh0cmEgc3BhY2Ugb25cbiAgICAvLyB0YWJsZXQgYW5kIGFib3ZlXG4gICAgbWFyZ2luLWJvdHRvbTogZ292dWstc3BhY2luZygxKTtcbiAgfVxuXG4gIC5nb3Z1ay1saXN0IHtcbiAgICBAZXh0ZW5kICVnb3Z1ay1saXN0O1xuICB9XG5cbiAgJWdvdnVrLWxpc3QtLWJ1bGxldCB7XG4gICAgcGFkZGluZy1sZWZ0OiBnb3Z1ay1zcGFjaW5nKDQpO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbiAgfVxuXG4gICVnb3Z1ay1saXN0LS1udW1iZXIge1xuICAgIHBhZGRpbmctbGVmdDogZ292dWstc3BhY2luZyg0KTtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IGRlY2ltYWw7XG4gIH1cblxuICAlZ292dWstbGlzdC0tYnVsbGV0ID4gbGksXG4gICVnb3Z1ay1saXN0LS1udW1iZXIgPiBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiB0YWJsZXQpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMSk7XG4gICAgfVxuICB9XG5cbiAgJWdvdnVrLWxpc3QtLXNwYWNlZCA+IGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDIpO1xuXG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IHRhYmxldCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogZ292dWstc3BhY2luZygzKTtcbiAgICB9XG4gIH1cblxuICAuZ292dWstbGlzdC0tYnVsbGV0IHtcbiAgICBAZXh0ZW5kICVnb3Z1ay1saXN0LS1idWxsZXQ7XG4gIH1cblxuICAuZ292dWstbGlzdC0tbnVtYmVyIHtcbiAgICBAZXh0ZW5kICVnb3Z1ay1saXN0LS1udW1iZXI7XG4gIH1cblxuICAuZ292dWstbGlzdC0tc3BhY2VkIHtcbiAgICBAZXh0ZW5kICVnb3Z1ay1saXN0LS1zcGFjZWQ7XG4gIH1cbn1cblxuLyojIHNvdXJjZU1hcHBpbmdVUkw9X2xpc3RzLnNjc3MubWFwICovXG4iLCIvLy8vXG4vLy8gQGdyb3VwIGhlbHBlcnMvc3BhY2luZ1xuLy8vL1xuXG4vLy8gU2luZ2xlIHBvaW50IHNwYWNpbmdcbi8vL1xuLy8vIFJldHVybnMgbWVhc3VyZW1lbnQgY29ycmVzcG9uZGluZyB0byB0aGUgc3BhY2luZyBwb2ludCByZXF1ZXN0ZWQuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNwYWNpbmctcG9pbnQgLSBQb2ludCBvbiB0aGUgc3BhY2luZyBzY2FsZVxuLy8vICAoc2V0IGluIGBzZXR0aW5ncy9fc3BhY2luZy5zY3NzYClcbi8vL1xuLy8vIEByZXR1cm5zIHtTdHJpbmd9IFNwYWNpbmcgbWVhc3VyZW1lbnQgZWcuIDEwcHhcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgcGFkZGluZzogZ292dWstc3BhY2luZyg1KTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgVXNpbmcgbmVnYXRpdmUgc3BhY2luZ1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBtYXJnaW4tdG9wOiBnb3Z1ay1zcGFjaW5nKC0xKTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgTWFya2luZyBzcGFjaW5nIGRlY2xhcmF0aW9ucyBhcyBpbXBvcnRhbnRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgbWFyZ2luLXRvcDogZ292dWstc3BhY2luZygxKSAhaW1wb3J0YW50O1xuLy8vICAgfVxuLy8vXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuQGZ1bmN0aW9uIGdvdnVrLXNwYWNpbmcoJHNwYWNpbmctcG9pbnQpIHtcbiAgJGFjdHVhbC1pbnB1dC10eXBlOiB0eXBlLW9mKCRzcGFjaW5nLXBvaW50KTtcbiAgQGlmICRhY3R1YWwtaW5wdXQtdHlwZSAhPSBcIm51bWJlclwiIHtcbiAgICBAZXJyb3IgXCJFeHBlY3RlZCBhIG51bWJlciAoaW50ZWdlciksIGJ1dCBnb3QgYSBcIlxuICAgICAgKyBcIiN7JGFjdHVhbC1pbnB1dC10eXBlfS5cIjtcbiAgfVxuXG4gICRpcy1uZWdhdGl2ZTogZmFsc2U7XG4gIEBpZiAkc3BhY2luZy1wb2ludCA8IDAge1xuICAgICRpcy1uZWdhdGl2ZTogdHJ1ZTtcbiAgICAkc3BhY2luZy1wb2ludDogYWJzKCRzcGFjaW5nLXBvaW50KTtcbiAgfVxuXG4gIEBpZiBub3QgbWFwLWhhcy1rZXkoJGdvdnVrLXNwYWNpbmctcG9pbnRzLCAkc3BhY2luZy1wb2ludCkge1xuICAgIEBlcnJvciBcIlVua25vd24gc3BhY2luZyB2YXJpYWJsZSBgI3skc3BhY2luZy1wb2ludH1gLiBNYWtlIHN1cmUgeW91IGFyZSB1c2luZyBhIHBvaW50IGZyb20gdGhlIHNwYWNpbmcgc2NhbGUgaW4gYF9zZXR0aW5ncy9zcGFjaW5nLnNjc3NgLlwiO1xuICB9XG5cbiAgJHZhbHVlOiBtYXAtZ2V0KCRnb3Z1ay1zcGFjaW5nLXBvaW50cywgJHNwYWNpbmctcG9pbnQpO1xuICBAcmV0dXJuIGlmKCRpcy1uZWdhdGl2ZSwgJHZhbHVlICogLTEsICR2YWx1ZSk7XG59XG5cbi8vLyBSZXNwb25zaXZlIHNwYWNpbmdcbi8vL1xuLy8vIEFkZHMgcmVzcG9uc2l2ZSBzcGFjaW5nIChlaXRoZXIgcGFkZGluZyBvciBtYXJnaW4sIGRlcGVuZGluZyBvbiBgJHByb3BlcnR5YClcbi8vLyBieSBmZXRjaGluZyBhICdzcGFjaW5nIG1hcCcgZnJvbSB0aGUgcmVzcG9uc2l2ZSBzcGFjaW5nIHNjYWxlLCB3aGljaCBkZWZpbmVzXG4vLy8gZGlmZmVyZW50IHNwYWNpbmcgdmFsdWVzIGF0IGRpZmZlcmVudCBicmVha3BvaW50cy5cbi8vL1xuLy8vIFRvIGdlbmVyYXRlIHJlc3BvbnNpdmUgc3BhY2luZywgdXNlICdnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbicgb3Jcbi8vLyAnZ292dWstcmVzcG9uc2l2ZS1wYWRkaW5nJyBtaXhpbnNcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcmVzcG9uc2l2ZS1zcGFjaW5nLXBvaW50IC0gUG9pbnQgb24gdGhlIHJlc3BvbnNpdmUgc3BhY2luZ1xuLy8vICAgc2NhbGUsIGNvcnJlc3BvbmRzIHRvIGEgbWFwIG9mIGJyZWFrcG9pbnRzIGFuZCBzcGFjaW5nIHZhbHVlc1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkcHJvcGVydHkgLSBQcm9wZXJ0eSB0byBhZGQgc3BhY2luZyB0byAoZS5nLiAnbWFyZ2luJylcbi8vLyBAcGFyYW0ge1N0cmluZ30gJGRpcmVjdGlvbiBbYWxsXSAtIERpcmVjdGlvbiB0byBhZGQgc3BhY2luZyB0b1xuLy8vICAgKGB0b3BgLCBgcmlnaHRgLCBgYm90dG9tYCwgYGxlZnRgLCBgYWxsYClcbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRpbXBvcnRhbnQgW2ZhbHNlXSAtIFdoZXRoZXIgdG8gbWFyayBhcyBgIWltcG9ydGFudGBcbi8vLyBAcGFyYW0ge051bWJlcn0gJGFkanVzdG1lbnQgW2ZhbHNlXSAtIE9mZnNldCB0byBhZGp1c3Qgc3BhY2luZyBieVxuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5cbkBtaXhpbiBfZ292dWstcmVzcG9uc2l2ZS1zcGFjaW5nKFxuICAkcmVzcG9uc2l2ZS1zcGFjaW5nLXBvaW50LFxuICAkcHJvcGVydHksXG4gICRkaXJlY3Rpb246IFwiYWxsXCIsXG4gICRpbXBvcnRhbnQ6IGZhbHNlLFxuICAkYWRqdXN0bWVudDogZmFsc2Vcbikge1xuICAkYWN0dWFsLWlucHV0LXR5cGU6IHR5cGUtb2YoJHJlc3BvbnNpdmUtc3BhY2luZy1wb2ludCk7XG4gIEBpZiAkYWN0dWFsLWlucHV0LXR5cGUgIT0gXCJudW1iZXJcIiB7XG4gICAgQGVycm9yIFwiRXhwZWN0ZWQgYSBudW1iZXIgKGludGVnZXIpLCBidXQgZ290IGEgXCIgKyBcIiN7JGFjdHVhbC1pbnB1dC10eXBlfS5cIjtcbiAgfVxuXG4gIEBpZiBub3QgbWFwLWhhcy1rZXkoJGdvdnVrLXNwYWNpbmctcmVzcG9uc2l2ZS1zY2FsZSwgJHJlc3BvbnNpdmUtc3BhY2luZy1wb2ludCkge1xuICAgIEBlcnJvciBcIlVua25vd24gc3BhY2luZyBwb2ludCBgI3skcmVzcG9uc2l2ZS1zcGFjaW5nLXBvaW50fWAuIE1ha2Ugc3VyZSB5b3UgYXJlIHVzaW5nIGEgcG9pbnQgZnJvbSB0aGUgXCJcbiAgICAgICsgXCJyZXNwb25zaXZlIHNwYWNpbmcgc2NhbGUgaW4gYF9zZXR0aW5ncy9zcGFjaW5nLnNjc3NgLlwiO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHRoYXQgdGhlIHJldHVybiB2YWx1ZSBmcm9tIGBfc2V0dGluZ3Mvc3BhY2luZy5zY3NzYCBpcyBhIG1hcC5cbiAgJHNjYWxlLW1hcDogbWFwLWdldCgkZ292dWstc3BhY2luZy1yZXNwb25zaXZlLXNjYWxlLCAkcmVzcG9uc2l2ZS1zcGFjaW5nLXBvaW50KTtcbiAgJGFjdHVhbC1tYXAtdHlwZTogdHlwZS1vZigkc2NhbGUtbWFwKTtcbiAgQGlmICRhY3R1YWwtbWFwLXR5cGUgIT0gXCJtYXBcIiB7XG4gICAgQGVycm9yIFwiRXhwZWN0ZWQgYSBudW1iZXIgKGludGVnZXIpLCBidXQgZ290IGEgXCJcbiAgICAgICsgXCIjeyRhY3R1YWwtbWFwLXR5cGV9LiBNYWtlIHN1cmUgeW91IGFyZSB1c2luZyBhIG1hcCB0byBzZXQgdGhlIHJlc3BvbnNpdmUgc3BhY2luZyBpbiBgX3NldHRpbmdzL3NwYWNpbmcuc2Nzc2ApXCI7XG4gIH1cblxuICAvLyBMb29wIHRocm91Z2ggZWFjaCBicmVha3BvaW50IGluIHRoZSBtYXBcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRicmVha3BvaW50LXZhbHVlIGluICRzY2FsZS1tYXAge1xuICAgIEBpZiAkYWRqdXN0bWVudCB7XG4gICAgICAkYnJlYWtwb2ludC12YWx1ZTogJGJyZWFrcG9pbnQtdmFsdWUgKyAkYWRqdXN0bWVudDtcbiAgICB9XG5cbiAgICAvLyBUaGUgJ251bGwnIGJyZWFrcG9pbnQgaXMgZm9yIG1vYmlsZS5cbiAgICBAaWYgbm90ICRicmVha3BvaW50IHtcbiAgICAgIEBpZiAkZGlyZWN0aW9uID09IGFsbCB7XG4gICAgICAgICN7JHByb3BlcnR5fTogJGJyZWFrcG9pbnQtdmFsdWUgaWYoJGltcG9ydGFudCwgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgI3skcHJvcGVydHl9LSN7JGRpcmVjdGlvbn06ICRicmVha3BvaW50LXZhbHVlIGlmKCRpbXBvcnRhbnQsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206ICRicmVha3BvaW50KSB7XG4gICAgICAgIEBpZiAkZGlyZWN0aW9uID09IGFsbCB7XG4gICAgICAgICAgI3skcHJvcGVydHl9OiAkYnJlYWtwb2ludC12YWx1ZSBpZigkaW1wb3J0YW50LCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgI3skcHJvcGVydHl9LSN7JGRpcmVjdGlvbn06ICRicmVha3BvaW50LXZhbHVlIGlmKCRpbXBvcnRhbnQsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBSZXNwb25zaXZlIG1hcmdpblxuLy8vXG4vLy8gQWRkcyByZXNwb25zaXZlIG1hcmdpbiBieSBmZXRjaGluZyBhICdzcGFjaW5nIG1hcCcgZnJvbSB0aGUgcmVzcG9uc2l2ZVxuLy8vIHNwYWNpbmcgc2NhbGUsIHdoaWNoIGRlZmluZXMgZGlmZmVyZW50IHNwYWNpbmcgdmFsdWVzIGF0IGRpZmZlcmVudFxuLy8vIGJyZWFrcG9pbnRzLiBXcmFwcGVyIGZvciB0aGUgYF9nb3Z1ay1yZXNwb25zaXZlLXNwYWNpbmdgIG1peGluLlxuLy8vXG4vLy8gQHNlZSB7bWl4aW59IF9nb3Z1ay1yZXNwb25zaXZlLXNwYWNpbmdcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcmVzcG9uc2l2ZS1zcGFjaW5nLXBvaW50IC0gUG9pbnQgb24gdGhlIHJlc3BvbnNpdmUgc3BhY2luZ1xuLy8vIHNjYWxlLCBjb3JyZXNwb25kcyB0byBhIG1hcCBvZiBicmVha3BvaW50cyBhbmQgc3BhY2luZyB2YWx1ZXNcbi8vLyBAcGFyYW0ge1N0cmluZ30gJGRpcmVjdGlvbiBbYWxsXSAtIERpcmVjdGlvbiB0byBhZGQgc3BhY2luZyB0b1xuLy8vICAgKGB0b3BgLCBgcmlnaHRgLCBgYm90dG9tYCwgYGxlZnRgLCBgYWxsYClcbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRpbXBvcnRhbnQgW2ZhbHNlXSAtIFdoZXRoZXIgdG8gbWFyayBhcyBgIWltcG9ydGFudGBcbi8vLyBAcGFyYW0ge051bWJlcn0gJGFkanVzdG1lbnQgW2ZhbHNlXSAtIE9mZnNldCB0byBhZGp1c3Qgc3BhY2luZyBieVxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNiwgXCJsZWZ0XCIsICRhZGp1c3RtZW50OiAxcHgpO1xuLy8vICAgfVxuLy8vXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuQG1peGluIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKCRyZXNwb25zaXZlLXNwYWNpbmctcG9pbnQsICRkaXJlY3Rpb246IFwiYWxsXCIsICRpbXBvcnRhbnQ6IGZhbHNlLCAkYWRqdXN0bWVudDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgX2dvdnVrLXJlc3BvbnNpdmUtc3BhY2luZygkcmVzcG9uc2l2ZS1zcGFjaW5nLXBvaW50LCBcIm1hcmdpblwiLCAkZGlyZWN0aW9uLCAkaW1wb3J0YW50LCAkYWRqdXN0bWVudCk7XG59XG5cbi8vLyBSZXNwb25zaXZlIHBhZGRpbmdcbi8vL1xuLy8vIEFkZHMgcmVzcG9uc2l2ZSBwYWRkaW5nIGJ5IGZldGNoaW5nIGEgJ3NwYWNpbmcgbWFwJyBmcm9tIHRoZSByZXNwb25zaXZlXG4vLy8gc3BhY2luZyBzY2FsZSwgd2hpY2ggZGVmaW5lcyBkaWZmZXJlbnQgc3BhY2luZyB2YWx1ZXMgYXQgZGlmZmVyZW50XG4vLy8gYnJlYWtwb2ludHMuIFdyYXBwZXIgZm9yIHRoZSBgX2dvdnVrLXJlc3BvbnNpdmUtc3BhY2luZ2AgbWl4aW4uXG4vLy9cbi8vLyBAc2VlIHttaXhpbn0gX2dvdnVrLXJlc3BvbnNpdmUtc3BhY2luZ1xuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRyZXNwb25zaXZlLXNwYWNpbmctcG9pbnQgLSBQb2ludCBvbiB0aGUgcmVzcG9uc2l2ZSBzcGFjaW5nXG4vLy8gICBzY2FsZSwgY29ycmVzcG9uZHMgdG8gYSBtYXAgb2YgYnJlYWtwb2ludHMgYW5kIHNwYWNpbmcgdmFsdWVzXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRkaXJlY3Rpb24gW2FsbF0gLSBEaXJlY3Rpb24gdG8gYWRkIHNwYWNpbmcgdG9cbi8vLyAgIChgdG9wYCwgYHJpZ2h0YCwgYGJvdHRvbWAsIGBsZWZ0YCwgYGFsbGApXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkaW1wb3J0YW50IFtmYWxzZV0gLSBXaGV0aGVyIHRvIG1hcmsgYXMgYCFpbXBvcnRhbnRgXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRhZGp1c3RtZW50IFtmYWxzZV0gLSBPZmZzZXQgdG8gYWRqdXN0IHNwYWNpbmdcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtcGFkZGluZyg2LCBcImxlZnRcIiwgJGFkanVzdG1lbnQ6IDFweCk7XG4vLy8gICB9XG4vLy9cbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG5AbWl4aW4gZ292dWstcmVzcG9uc2l2ZS1wYWRkaW5nKCRyZXNwb25zaXZlLXNwYWNpbmctcG9pbnQsICRkaXJlY3Rpb246IFwiYWxsXCIsICRpbXBvcnRhbnQ6IGZhbHNlLCAkYWRqdXN0bWVudDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgX2dvdnVrLXJlc3BvbnNpdmUtc3BhY2luZygkcmVzcG9uc2l2ZS1zcGFjaW5nLXBvaW50LCBcInBhZGRpbmdcIiwgJGRpcmVjdGlvbiwgJGltcG9ydGFudCwgJGFkanVzdG1lbnQpO1xufVxuXG4vKiMgc291cmNlTWFwcGluZ1VSTD1fc3BhY2luZy5zY3NzLm1hcCAqL1xuIiwiQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL2NvcmUvdHlwb2dyYXBoeVwiKSB7XG4gIC8vIEhlYWRpbmdzXG5cbiAgJWdvdnVrLWhlYWRpbmcteGwge1xuICAgIEBpbmNsdWRlIGdvdnVrLXRleHQtY29sb3VyO1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDQ4LCAkd2VpZ2h0OiBib2xkKTtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig4LCBcImJvdHRvbVwiKTtcbiAgfVxuXG4gIC5nb3Z1ay1oZWFkaW5nLXhsIHtcbiAgICBAZXh0ZW5kICVnb3Z1ay1oZWFkaW5nLXhsO1xuICB9XG5cbiAgJWdvdnVrLWhlYWRpbmctbCB7XG4gICAgQGluY2x1ZGUgZ292dWstdGV4dC1jb2xvdXI7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMzYsICR3ZWlnaHQ6IGJvbGQpO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDYsIFwiYm90dG9tXCIpO1xuICB9XG5cbiAgLmdvdnVrLWhlYWRpbmctbCB7XG4gICAgQGV4dGVuZCAlZ292dWstaGVhZGluZy1sO1xuICB9XG5cbiAgJWdvdnVrLWhlYWRpbmctbSB7XG4gICAgQGluY2x1ZGUgZ292dWstdGV4dC1jb2xvdXI7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMjQsICR3ZWlnaHQ6IGJvbGQpO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDQsIFwiYm90dG9tXCIpO1xuICB9XG5cbiAgLmdvdnVrLWhlYWRpbmctbSB7XG4gICAgQGV4dGVuZCAlZ292dWstaGVhZGluZy1tO1xuICB9XG5cbiAgJWdvdnVrLWhlYWRpbmctcyB7XG4gICAgQGluY2x1ZGUgZ292dWstdGV4dC1jb2xvdXI7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTksICR3ZWlnaHQ6IGJvbGQpO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDQsIFwiYm90dG9tXCIpO1xuICB9XG5cbiAgLmdvdnVrLWhlYWRpbmctcyB7XG4gICAgQGV4dGVuZCAlZ292dWstaGVhZGluZy1zO1xuICB9XG5cbiAgLy8gQ2FwdGlvbnMgdG8gYmUgdXNlZCBpbnNpZGUgaGVhZGluZ3NcblxuICAuZ292dWstY2FwdGlvbi14bCB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMjcpO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDEpO1xuXG4gICAgY29sb3I6ICRnb3Z1ay1zZWNvbmRhcnktdGV4dC1jb2xvdXI7XG4gIH1cblxuICAuZ292dWstY2FwdGlvbi1sIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiAyNCk7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMSk7XG4gICAgY29sb3I6ICRnb3Z1ay1zZWNvbmRhcnktdGV4dC1jb2xvdXI7XG5cbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogdGFibGV0KSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1jYXB0aW9uLW0ge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDE5KTtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgY29sb3I6ICRnb3Z1ay1zZWNvbmRhcnktdGV4dC1jb2xvdXI7XG4gIH1cblxuICAvLyBCb2R5IChwYXJhZ3JhcGhzKVxuXG4gICVnb3Z1ay1ib2R5LWwge1xuICAgIEBpbmNsdWRlIGdvdnVrLXRleHQtY29sb3VyO1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDI0KTtcblxuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNiwgXCJib3R0b21cIik7XG4gIH1cblxuICAuZ292dWstYm9keS1sIHtcbiAgICBAZXh0ZW5kICVnb3Z1ay1ib2R5LWw7XG4gIH1cblxuICAlZ292dWstYm9keS1tIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay10ZXh0LWNvbG91cjtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiAxOSk7XG5cbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDQsIFwiYm90dG9tXCIpO1xuICB9XG5cbiAgLmdvdnVrLWJvZHktbSB7XG4gICAgQGV4dGVuZCAlZ292dWstYm9keS1tO1xuICB9XG5cbiAgJWdvdnVrLWJvZHktcyB7XG4gICAgQGluY2x1ZGUgZ292dWstdGV4dC1jb2xvdXI7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTYpO1xuXG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig0LCBcImJvdHRvbVwiKTtcbiAgfVxuXG4gIC5nb3Z1ay1ib2R5LXMge1xuICAgIEBleHRlbmQgJWdvdnVrLWJvZHktcztcbiAgfVxuXG4gIC8vIEBkZXByZWNhdGVkXG4gICVnb3Z1ay1ib2R5LXhzIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay10ZXh0LWNvbG91cjtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiBfMTQpO1xuXG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig0LCBcImJvdHRvbVwiKTtcbiAgfVxuXG4gIC8vIEBkZXByZWNhdGVkXG4gIC5nb3Z1ay1ib2R5LXhzIHtcbiAgICBAZXh0ZW5kICVnb3Z1ay1ib2R5LXhzO1xuICB9XG5cbiAgLy8gVXNhZ2UgYWxpYXNlc1xuXG4gIC8vIFVzaW5nIGV4dGVuZCB0byBhbGlhcyBtZWFucyB3ZSBhbHNvIGluaGVyaXQgYW55IGNvbnRleHR1YWwgYWRqdXN0bWVudHMgdGhhdFxuICAvLyByZWZlciB0byB0aGUgJ29yaWdpbmFsJyBjbGFzcyBuYW1lXG5cbiAgLmdvdnVrLWJvZHktbGVhZCB7XG4gICAgQGV4dGVuZCAlZ292dWstYm9keS1sO1xuICB9XG5cbiAgLmdvdnVrLWJvZHkge1xuICAgIEBleHRlbmQgJWdvdnVrLWJvZHktbTtcbiAgfVxuXG4gIC8vIENvbnRleHR1YWwgYWRqdXN0bWVudHNcbiAgLy8gQWRkIHRvcCBwYWRkaW5nIHRvIGhlYWRpbmdzIHRoYXQgYXBwZWFyIGRpcmVjdGx5IGFmdGVyIHBhcmFncmFwaHMuXG5cbiAgJWdvdnVrLWJvZHktbCArICVnb3Z1ay1oZWFkaW5nLWwge1xuICAgIHBhZGRpbmctdG9wOiBnb3Z1ay1zcGFjaW5nKDEpO1xuXG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IHRhYmxldCkge1xuICAgICAgcGFkZGluZy10b3A6IGdvdnVrLXNwYWNpbmcoMik7XG4gICAgfVxuICB9XG5cbiAgJWdvdnVrLWJvZHktbSArICVnb3Z1ay1oZWFkaW5nLWwsXG4gICVnb3Z1ay1ib2R5LXMgKyAlZ292dWstaGVhZGluZy1sLFxuICAlZ292dWstbGlzdCArICVnb3Z1ay1oZWFkaW5nLWwge1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtcGFkZGluZyg0LCBcInRvcFwiKTtcbiAgfVxuXG4gICVnb3Z1ay1ib2R5LW0gKyAlZ292dWstaGVhZGluZy1tLFxuICAlZ292dWstYm9keS1zICsgJWdvdnVrLWhlYWRpbmctbSxcbiAgJWdvdnVrLWxpc3QgKyAlZ292dWstaGVhZGluZy1tLFxuICAlZ292dWstYm9keS1tICsgJWdvdnVrLWhlYWRpbmctcyxcbiAgJWdvdnVrLWJvZHktcyArICVnb3Z1ay1oZWFkaW5nLXMsXG4gICVnb3Z1ay1saXN0ICsgJWdvdnVrLWhlYWRpbmctcyB7XG4gICAgcGFkZGluZy10b3A6IGdvdnVrLXNwYWNpbmcoMSk7XG5cbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogdGFibGV0KSB7XG4gICAgICBwYWRkaW5nLXRvcDogZ292dWstc3BhY2luZygyKTtcbiAgICB9XG4gIH1cbn1cblxuLyojIHNvdXJjZU1hcHBpbmdVUkw9X3R5cG9ncmFwaHkuc2Nzcy5tYXAgKi9cbiIsIkBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9jb3JlL3NlY3Rpb24tYnJlYWtcIikge1xuICAlZ292dWstc2VjdGlvbi1icmVhayB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIC5nb3Z1ay1zZWN0aW9uLWJyZWFrIHtcbiAgICBAZXh0ZW5kICVnb3Z1ay1zZWN0aW9uLWJyZWFrO1xuICB9XG5cbiAgLy8gU2l6ZXNcblxuICAlZ292dWstc2VjdGlvbi1icmVhay0teGwge1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDgsIFwidG9wXCIpO1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDgsIFwiYm90dG9tXCIpO1xuICB9XG5cbiAgLmdvdnVrLXNlY3Rpb24tYnJlYWstLXhsIHtcbiAgICBAZXh0ZW5kICVnb3Z1ay1zZWN0aW9uLWJyZWFrLS14bDtcbiAgfVxuXG4gICVnb3Z1ay1zZWN0aW9uLWJyZWFrLS1sIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig2LCBcInRvcFwiKTtcbiAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig2LCBcImJvdHRvbVwiKTtcbiAgfVxuXG4gIC5nb3Z1ay1zZWN0aW9uLWJyZWFrLS1sIHtcbiAgICBAZXh0ZW5kICVnb3Z1ay1zZWN0aW9uLWJyZWFrLS1sO1xuICB9XG5cbiAgJWdvdnVrLXNlY3Rpb24tYnJlYWstLW0ge1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDQsIFwidG9wXCIpO1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDQsIFwiYm90dG9tXCIpO1xuICB9XG5cbiAgLmdvdnVrLXNlY3Rpb24tYnJlYWstLW0ge1xuICAgIEBleHRlbmQgJWdvdnVrLXNlY3Rpb24tYnJlYWstLW07XG4gIH1cblxuICAvLyBWaXNpYmxlIHZhcmlhbnRcblxuICAlZ292dWstc2VjdGlvbi1icmVhay0tdmlzaWJsZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRnb3Z1ay1ib3JkZXItY29sb3VyO1xuICB9XG5cbiAgLmdvdnVrLXNlY3Rpb24tYnJlYWstLXZpc2libGUge1xuICAgIEBleHRlbmQgJWdvdnVrLXNlY3Rpb24tYnJlYWstLXZpc2libGU7XG4gIH1cbn1cblxuLyojIHNvdXJjZU1hcHBpbmdVUkw9X3NlY3Rpb24tYnJlYWsuc2Nzcy5tYXAgKi9cbiIsIkBpbXBvcnQgXCIuLi9iYXNlXCI7XG5cbkBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9vYmplY3RzL2J1dHRvbi1ncm91cFwiKSB7XG4gIC8vIEJ1dHRvbiBncm91cHMgY2FuIGJlIHVzZWQgdG8gZ3JvdXAgYnV0dG9ucyBhbmQgbGlua3MgdG9nZXRoZXIgYXMgYSBncm91cC5cbiAgLy9cbiAgLy8gV2l0aGluIGEgYnV0dG9uIGdyb3VwOlxuICAvL1xuICAvLyAtIGxpbmtzIGFyZSBzdHlsZWQgdG8gbGluZSB1cCB2aXN1YWxseSB3aXRoIHRoZSBidXR0b25zLCBpbmNsdWRpbmcgYmVpbmdcbiAgLy8gICBjZW50cmUtYWxpZ25lZCBvbiBtb2JpbGVcbiAgLy8gLSBzcGFjaW5nIGJldHdlZW4gdGhlIGJ1dHRvbnMgYW5kIGxpbmtzIGlzIGhhbmRsZWQgYXV0b21hdGljYWxseSwgaW5jbHVkaW5nXG4gIC8vICAgd2hlbiB0aGV5IHdyYXAgYWNyb3NzIG11bHRpcGxlIGxpbmVzXG4gIC5nb3Z1ay1idXR0b24tZ3JvdXAge1xuICAgICRob3Jpem9udGFsLWdhcDogZ292dWstc3BhY2luZygzKTtcbiAgICAkdmVydGljYWwtZ2FwOiBnb3Z1ay1zcGFjaW5nKDMpO1xuXG4gICAgLy8gVGhlc2UgbmVlZCB0byBiZSBrZXB0IGluIHN5bmMgd2l0aCB0aGUgYnV0dG9uIGNvbXBvbmVudCdzIHN0eWxlc1xuICAgICRidXR0b24tcGFkZGluZzogZ292dWstc3BhY2luZygyKTtcbiAgICAkYnV0dG9uLXNoYWRvdy1zaXplOiAkZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZWxlbWVudDtcblxuICAgICRsaW5rLXNwYWNpbmc6IGdvdnVrLXNwYWNpbmcoMSk7XG5cbiAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig2LCBcImJvdHRvbVwiLCAkYWRqdXN0bWVudDogJHZlcnRpY2FsLWdhcCAqIC0xKTtcblxuICAgIC8vIEZsZXhib3ggaXMgdXNlZCB0byBjZW50ZXItYWxpZ24gbGlua3Mgb24gbW9iaWxlLCBhbGlnbiBldmVyeXRoaW5nIGFsb25nXG4gICAgLy8gdGhlIGJhc2VsaW5lIG9uIHRhYmxldCBhbmQgYWJvdmUsIGFuZCB0byByZW1vdmVzIGV4dHJhIHdoaXRlc3BhY2UgdGhhdFxuICAgIC8vIHdlJ2QgZ2V0IGJldHdlZW4gdGhlIGJ1dHRvbnMgYW5kIGxpbmtzIGJlY2F1c2UgdGhleSdyZSBpbmxpbmUtYmxvY2tzLlxuICAgIC8vXG4gICAgLy8gSWRlYWxseSB3ZSdkIHVzZSBgZ2FwYCB3aXRoIGZsZXhib3ggcmF0aGVyIHRoYW4gaGF2aW5nIHRvIGRvIGl0IGFsbCB3aXRoXG4gICAgLy8gbWFyZ2lucywgYnV0IHVuZm9ydHVuYXRlbHkgdGhlIHN1cHBvcnQgaXNuJ3QgdGhlcmUgKHlldCkgYW5kIEBzdXBwb3J0c1xuICAgIC8vIGRvZXNuJ3QgcGxheSBuaWNlbHkgd2l0aCBpdFxuICAgIC8vIChodHRwczovL2dpdGh1Yi5jb20vdzNjL2Nzc3dnLWRyYWZ0cy9pc3N1ZXMvMzU1OSlcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIC8vIEdpdmUgbGlua3Mgd2l0aGluIHRoZSBidXR0b24gZ3JvdXAgdGhlIHNhbWUgZm9udC1zaXplIGFuZCBsaW5lLWhlaWdodFxuICAgIC8vIGFzIGJ1dHRvbnMuXG4gICAgLy9cbiAgICAvLyBCZWNhdXNlIHdlIHdhbnQgdGhlIGZvY3VzIHN0YXRlIHRvIGJlIHRpZ2h0IGFyb3VuZCB0aGUgbGluayB0ZXh0LCB3ZSB1c2VcbiAgICAvLyBtYXJnaW5zIHdoZXJlIHRoZSBidXR0b25zIHdvdWxkIHVzZSBwYWRkaW5nLlxuICAgIC5nb3Z1ay1saW5rIHtcbiAgICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDE5LCAkbGluZS1oZWlnaHQ6IDE5cHgpO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgLy8gUHJldmVudCBsaW5rcyBvdmVyZmxvd2luZyB0aGVpciBjb250YWluZXIgaW4gSUUxMC8xMSBiZWNhdXNlIG9mIGJ1Z1xuICAgICAgLy8gd2l0aCBhbGlnbi1pdGVtczogY2VudGVyXG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW4tdG9wOiAkbGluay1zcGFjaW5nO1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGxpbmstc3BhY2luZyArICR2ZXJ0aWNhbC1nYXA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLy8gUmVkdWNlIHRoZSBib3R0b20gbWFyZ2luIHRvIHRoZSBzaXplIG9mIHRoZSB2ZXJ0aWNhbCBnYXAgKGFjY29tbW9kYXRpbmdcbiAgICAvLyB0aGUgYnV0dG9uIHNoYWRvdykg4oCTIHRoZSAnbG9zdCcgbWFyZ2luIGlzIG1vdmVkIHRvIHRoZSBidXR0b24tZ3JvdXAuXG4gICAgLmdvdnVrLWJ1dHRvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkdmVydGljYWwtZ2FwICsgJGJ1dHRvbi1zaGFkb3ctc2l6ZTtcbiAgICB9XG5cbiAgICAvLyBPbiB0YWJsZXQgYW5kIGFib3ZlLCB3ZSBhbHNvIGludHJvZHVjZSBhICdjb2x1bW4gZ2FwJyBiZXR3ZWVuIHRoZVxuICAgIC8vIGJ1dHRvbnMgYW5kIGxpbmtzIGluIGVhY2ggcm93IGFuZCBsZWZ0IGFsaWduIGxpbmtzXG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IHRhYmxldCkge1xuICAgICAgLy8gQ2FuY2VsIG91dCB0aGUgY29sdW1uIGdhcCBmb3IgdGhlIGxhc3QgaXRlbSBpbiBlYWNoIHJvd1xuICAgICAgbWFyZ2luLXJpZ2h0OiAoJGhvcml6b250YWwtZ2FwICogLTEpO1xuXG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuXG4gICAgICAuZ292dWstYnV0dG9uLFxuICAgICAgLmdvdnVrLWxpbmsge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRob3Jpem9udGFsLWdhcDtcbiAgICAgIH1cblxuICAgICAgLmdvdnVrLWxpbmsge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKiMgc291cmNlTWFwcGluZ1VSTD1fYnV0dG9uLWdyb3VwLnNjc3MubWFwICovXG4iLCJAaW1wb3J0IFwiLi4vYmFzZVwiO1xuXG5AaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvb2JqZWN0cy9mb3JtLWdyb3VwXCIpIHtcbiAgLmdvdnVrLWZvcm0tZ3JvdXAge1xuICAgIEBpbmNsdWRlIGdvdnVrLWNsZWFyZml4O1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDYsIFwiYm90dG9tXCIpO1xuXG4gICAgLmdvdnVrLWZvcm0tZ3JvdXA6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IC8vIFJlbW92ZSBtYXJnaW4gZnJvbSBsYXN0IGl0ZW0gaW4gbmVzdGVkIGdyb3Vwc1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1mb3JtLWdyb3VwLS1lcnJvciB7XG4gICAgcGFkZGluZy1sZWZ0OiBnb3Z1ay1zcGFjaW5nKDMpO1xuICAgIGJvcmRlci1sZWZ0OiAkZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZ3JvdXAtZXJyb3Igc29saWQgJGdvdnVrLWVycm9yLWNvbG91cjtcblxuICAgIC5nb3Z1ay1mb3JtLWdyb3VwIHtcbiAgICAgIC8vIFJlc2V0IGVycm9yIHN0eWxlcyBpbiBuZXN0ZWQgZm9ybSBncm91cHMgdGhhdCBtaWdodCBoYXZlIGVycm9yIGNsYXNzXG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbiAgfVxufVxuXG4vKiMgc291cmNlTWFwcGluZ1VSTD1fZm9ybS1ncm91cC5zY3NzLm1hcCAqL1xuIiwiLy8vL1xuLy8vIEBncm91cCBoZWxwZXJzL2xheW91dFxuLy8vL1xuXG4vLy8gQ2xlYXIgZmxvYXRlZCBjb250ZW50IHdpdGhpbiBhIGNvbnRhaW5lciB1c2luZyBhIHBzZXVkbyBlbGVtZW50XG4vLy9cbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG5AbWl4aW4gZ292dWstY2xlYXJmaXgge1xuICAmOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4vKiMgc291cmNlTWFwcGluZ1VSTD1fY2xlYXJmaXguc2Nzcy5tYXAgKi9cbiIsIkBpbXBvcnQgXCIuLi9iYXNlXCI7XG5cbkBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9vYmplY3RzL2dyaWRcIikge1xuICAuZ292dWstZ3JpZC1yb3cge1xuICAgIEBpbmNsdWRlIGdvdnVrLWNsZWFyZml4O1xuICAgIG1hcmdpbi1yaWdodDogLSgkZ292dWstZ3V0dGVyLWhhbGYpO1xuICAgIG1hcmdpbi1sZWZ0OiAtKCRnb3Z1ay1ndXR0ZXItaGFsZik7XG4gIH1cblxuICBAZWFjaCAkd2lkdGggaW4gbWFwLWtleXMoJGdvdnVrLWdyaWQtd2lkdGhzKSB7XG4gICAgLmdvdnVrLWdyaWQtY29sdW1uLSN7JHdpZHRofSB7XG4gICAgICBAaW5jbHVkZSBnb3Z1ay1ncmlkLWNvbHVtbigkd2lkdGgpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFRoZXNlICptdXN0KiBiZSBkZWZpbmVkIGluIGEgc2VwYXJhdGUgbG9vcCBhcyB0aGV5IGhhdmUgdGhlIHNhbWVcbiAgLy8gc3BlY2lmaWNpdHkgYXMgdGhlIG5vbi1icmVha3BvaW50IHNwZWNpZmljIGNsYXNzZXMsIHNvIG5lZWQgdG8gYXBwZWFyIGFmdGVyXG4gIC8vIHRoZW0gaW4gdGhlIG91dHB1dHRlZCBDU1NcbiAgQGVhY2ggJHdpZHRoIGluIG1hcC1rZXlzKCRnb3Z1ay1ncmlkLXdpZHRocykge1xuICAgIC5nb3Z1ay1ncmlkLWNvbHVtbi0jeyR3aWR0aH0tZnJvbS1kZXNrdG9wIHtcbiAgICAgIEBpbmNsdWRlIGdvdnVrLWdyaWQtY29sdW1uKCR3aWR0aCwgJGF0OiBkZXNrdG9wKTtcbiAgICB9XG4gIH1cbn1cblxuLyojIHNvdXJjZU1hcHBpbmdVUkw9X2dyaWQuc2Nzcy5tYXAgKi9cbiIsIi8vLy9cbi8vLyBAZ3JvdXAgaGVscGVycy9sYXlvdXRcbi8vLy9cblxuLy8vIEdyaWQgd2lkdGggcGVyY2VudGFnZVxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRrZXkgLSBOYW1lIG9mIGdyaWQgd2lkdGggKGUuZy4gdHdvLXRoaXJkcylcbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IFBlcmNlbnRhZ2Ugd2lkdGhcbi8vLyBAdGhyb3cgaWYgYCRrZXlgIGlzIG5vdCBhIHZhbGlkIGdyaWQgd2lkdGhcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG5AZnVuY3Rpb24gZ292dWstZ3JpZC13aWR0aCgka2V5KSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkZ292dWstZ3JpZC13aWR0aHMsICRrZXkpIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJGdvdnVrLWdyaWQtd2lkdGhzLCAka2V5KTtcbiAgfVxuXG4gIEBlcnJvciBcIlVua25vd24gZ3JpZCB3aWR0aCBgI3ska2V5fWBcIjtcbn1cblxuLy8vIEdlbmVyYXRlIGdyaWQgY29sdW1uIHN0eWxlc1xuLy8vXG4vLy8gQ3JlYXRlcyBhIGdyaWQgY29sdW1uIHdpdGggc3RhbmRhcmQgZ3V0dGVyIGJldHdlZW4gdGhlIGNvbHVtbnMuXG4vLy9cbi8vLyBHcmlkIHdpZHRocyBhcmUgZGVmaW5lZCBpbiB0aGUgYCRnb3Z1ay1ncmlkLXdpZHRoc2AgbWFwLlxuLy8vXG4vLy8gQnkgZGVmYXVsdCB0aGUgY29sdW1uIHdpZHRoIGNoYW5nZXMgZnJvbSAxMDAlIHRvIHNwZWNpZmllZCB3aWR0aCBhdCB0aGVcbi8vLyAndGFibGV0JyBicmVha3BvaW50LCBidXQgb3RoZXIgYnJlYWtwb2ludHMgY2FuIGJlIHNwZWNpZmllZCB1c2luZyB0aGUgYCRhdGBcbi8vLyBwYXJhbWV0ZXIuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHdpZHRoIFtmdWxsXSBuYW1lIG9mIGEgZ3JpZCB3aWR0aCBmcm9tICRnb3Z1ay1ncmlkLXdpZHRoc1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZmxvYXQgW2xlZnRdIGxlZnQgfCByaWdodFxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYXQgW3RhYmxldF0gLSBtb2JpbGUgfCB0YWJsZXQgfCBkZXNrdG9wIHwgYW55IGN1c3RvbSBicmVha3BvaW50XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gRGVmYXVsdFxuLy8vICAgLmdvdnVrLWdyaWQtY29sdW1uLXR3by10aGlyZHMge1xuLy8vICAgICBAaW5jbHVkZSBnb3Z1ay1ncmlkLWNvbHVtbih0d28tdGhpcmRzKVxuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEN1c3RvbWlzaW5nIHRoZSBicmVha3BvaW50IHdoZXJlIHdpZHRoIHBlcmNlbnRhZ2UgaXMgYXBwbGllZFxuLy8vICAgLmdvdnVrLWdyaWQtY29sdW1uLW9uZS1oYWxmLWZyb20tZGVza3RvcCB7XG4vLy8gICAgIEBpbmNsdWRlIGdvdnVrLWdyaWQtY29sdW1uKG9uZS1oYWxmLCAkYXQ6IGRlc2t0b3ApO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEN1c3RvbWlzaW5nIHRoZSBmbG9hdCBkaXJlY3Rpb25cbi8vLyAgIC5nb3Z1ay1ncmlkLWNvbHVtbi1vbmUtaGFsZi1yaWdodCB7XG4vLy8gICAgIEBpbmNsdWRlIGdvdnVrLWdyaWQtY29sdW1uKHR3by10aGlyZHMsICRmbG9hdDogcmlnaHQpO1xuLy8vICAgfVxuLy8vXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuQG1peGluIGdvdnVrLWdyaWQtY29sdW1uKCR3aWR0aDogZnVsbCwgJGZsb2F0OiBsZWZ0LCAkYXQ6IHRhYmxldCkge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBAaWYgJGF0ICE9IGRlc2t0b3Age1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIHBhZGRpbmc6IDAgJGdvdnVrLWd1dHRlci1oYWxmO1xuICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogJGF0KSB7XG4gICAgd2lkdGg6IGdvdnVrLWdyaWQtd2lkdGgoJHdpZHRoKTtcbiAgICBmbG9hdDogJGZsb2F0O1xuICB9XG59XG5cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPV9ncmlkLnNjc3MubWFwICovXG4iLCJAaW1wb3J0IFwiLi4vYmFzZVwiO1xuXG4vLy8vXG4vLy8gQGdyb3VwIG9iamVjdHMvbGF5b3V0XG4vLy8vXG5cbi8vIEV4YW1wbGUgdXNhZ2Ugd2l0aCBCcmVhZGNydW1icywgcGhhc2UgYmFubmVycywgYmFjayBsaW5rczpcbi8vIDxkaXYgY2xhc3M9XCJnb3Z1ay13aWR0aC1jb250YWluZXJcIj5cbi8vICAgPCEtLSBCcmVhZGNydW1icywgcGhhc2UgYmFubmVycywgYmFjayBsaW5rcyBhcmUgcGxhY2VkIGluIGhlcmUuIC0tPlxuLy8gICA8ZGl2IGNsYXNzPVwiZ292dWstbWFpbi13cmFwcGVyXCI+XG4vLyAgICAgICA8IS0tIFdyYXBwZXIgZm9yIHRoZSBtYWluIGNvbnRlbnQgb2YgeW91ciBwYWdlIHdoaWNoIGFwcGxpZXMgcGFkZGluZ1xuLy8gICAgICAgICAgICB0byB0aGUgdG9wIC8gYm90dG9tIC0tPlxuLy8gICA8L2Rpdj5cbi8vIDwvZGl2PlxuLy9cbi8vIEV4YW1wbGUgdXNhZ2Ugd2l0aG91dCBCcmVhZGNydW1icywgcGhhc2UgYmFubmVycywgYmFjayBsaW5rczpcbi8vIDxkaXYgY2xhc3M9XCJnb3Z1ay13aWR0aC1jb250YWluZXJcIj5cbi8vICAgPGRpdiBjbGFzcz1cImdvdnVrLW1haW4td3JhcHBlciBnb3Z1ay1tYWluLXdyYXBwZXItLWxcIj5cbi8vICAgICAgIDwhLS0gV3JhcHBlciBmb3IgdGhlIG1haW4gY29udGVudCBvZiB5b3VyIHBhZ2Ugd2hpY2ggYXBwbGllcyBwYWRkaW5nXG4vLyAgICAgICAgICAgIHRvIHRoZSB0b3AgLyBib3R0b20gLS0+XG4vLyAgIDwvZGl2PlxuLy8gPC9kaXY+XG5cbkBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9vYmplY3RzL21haW4td3JhcHBlclwiKSB7XG4gIC5nb3Z1ay1tYWluLXdyYXBwZXIge1xuICAgIC8vIEluIElFMTEgdGhlIGBtYWluYCBlbGVtZW50IGNhbiBiZSB1c2VkLCBidXQgaXMgbm90IHJlY29nbml6ZWQgIOKAk1xuICAgIC8vIG1lYW5pbmcgaXQncyBub3QgZGVmaW5lZCBpbiBJRSdzIGRlZmF1bHQgc3R5bGUgc2hlZXQsXG4gICAgLy8gc28gaXQgdXNlcyBDU1MgaW5pdGlhbCB2YWx1ZSwgd2hpY2ggaXMgaW5saW5lLlxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmctdG9wOiBnb3Z1ay1zcGFjaW5nKDQpO1xuICAgIHBhZGRpbmctYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDQpO1xuXG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IHRhYmxldCkge1xuICAgICAgLy8gVGhpcyBzcGFjaW5nIGlzIG1hbnVhbGx5IGFkanVzdGVkIHRvIHJlcGxpY2F0ZSB0aGUgbWFyZ2luIG9mXG4gICAgICAvLyBnb3Z1ay1oZWFkaW5nLXhsICg1MHB4KSBtaW51cyB0aGUgc3BhY2luZyBvZiBiYWNrIGxpbmsgYW5kXG4gICAgICAvLyBicmVhZGNydW1icyAoMTBweClcbiAgICAgIHBhZGRpbmctdG9wOiBnb3Z1ay1zcGFjaW5nKDcpO1xuICAgICAgcGFkZGluZy1ib3R0b206IGdvdnVrLXNwYWNpbmcoNyk7XG4gICAgfVxuICB9XG5cbiAgLy8gVXNpbmcgdGhlIGAuZ292dWstbWFpbi13cmFwcGVyLS1hdXRvLXNwYWNpbmdgIG1vZGlmaWVyIHNob3VsZCBhcHBseSB0aGVcbiAgLy8gY29ycmVjdCBzcGFjaW5nIGRlcGVuZGluZyBvbiB3aGV0aGVyIHRoZXJlIGFyZSBhbnkgZWxlbWVudHNcbiAgLy8gKHN1Y2ggdGhlIGJhY2sgbGluaywgYnJlYWRjcnVtYnMgb3IgcGhhc2UgYmFubmVyIGNvbXBvbmVudHMpIGJlZm9yZSB0aGVcbiAgLy8gYC5nb3Z1ay1tYWluLXdyYXBwZXJgIGluIHRoZSBgZ292dWstd2lkdGgtY29udGFpbmVyYC5cbiAgLy9cbiAgLy8gSWYgeW91IG5lZWQgdG8gY29udHJvbCB0aGUgc3BhY2luZyBtYW51YWxseSwgdXNlIHRoZVxuICAvLyBgZ292dWstbWFpbi13cmFwcGVyLS1sYCBtb2RpZmllciBpbnN0ZWFkLlxuICAuZ292dWstbWFpbi13cmFwcGVyLS1hdXRvLXNwYWNpbmc6Zmlyc3QtY2hpbGQsXG4gIC5nb3Z1ay1tYWluLXdyYXBwZXItLWwge1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtcGFkZGluZyg4LCBcInRvcFwiKTtcbiAgfVxufVxuXG4vKiMgc291cmNlTWFwcGluZ1VSTD1fbWFpbi13cmFwcGVyLnNjc3MubWFwICovXG4iLCJAaW1wb3J0IFwiLi4vYmFzZVwiO1xuXG5AaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvb2JqZWN0cy90ZW1wbGF0ZVwiKSB7XG4gIC8vIEFwcGxpZWQgdG8gdGhlIDxodG1sPiBlbGVtZW50XG4gIC5nb3Z1ay10ZW1wbGF0ZSB7XG4gICAgLy8gU2V0IHRoZSBvdmVyYWxsIHBhZ2UgYmFja2dyb3VuZCBjb2xvdXIgdG8gdGhlIHNhbWUgY29sb3VyIGFzIHVzZWQgYnkgdGhlXG4gICAgLy8gZm9vdGVyIHRvIGdpdmUgdGhlIGlsbHVzaW9uIG9mIGEgbG9uZyBmb290ZXIuXG4gICAgQGluY2x1ZGUgX2dvdnVrLXJlYnJhbmQoXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yLFxuICAgICAgJGZyb206ICRnb3Z1ay10ZW1wbGF0ZS1iYWNrZ3JvdW5kLWNvbG91cixcbiAgICAgICR0bzogJF9nb3Z1ay1yZWJyYW5kLXRlbXBsYXRlLWJhY2tncm91bmQtY29sb3VyXG4gICAgKTtcblxuICAgIC8vIFByZXZlbnQgYXV0b21hdGljIHRleHQgc2l6aW5nLCBhcyB3ZSBhbHJlYWR5IGNhdGVyIGZvciBzbWFsbCBkZXZpY2VzIGFuZFxuICAgIC8vIHdvdWxkIGxpa2UgdGhlIGJyb3dzZXIgdG8gc3RheSBvbiAxMDAlIHRleHQgem9vbSBieSBkZWZhdWx0LlxuICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgICAgICAtbW96LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gICAgICAgICAgICB0ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuXG4gICAgLy8gQWRkIHNjcm9sbCBwYWRkaW5nIHRvIHRoZSB0b3Agb2YgZ292dWstdGVtcGxhdGUgYnV0IHJlbW92ZSBpdCBpZiB0aGVcbiAgICAvLyBleGl0IHRoaXMgcGFnZSBjb21wb25lbnQgaXMgcHJlc2VudC5cbiAgICAvL1xuICAgIC8vIFRoaXMgaXMgYSBzb2x1dGlvbiB0byBleGl0IHRoaXMgcGFnZSBwb3RlbnRpYWxseSBmYWlsaW5nIFdDQUcgU0MgMi40LjEyOlxuICAgIC8vIEZvY3VzIE5vdCBPYnNjdXJlZCAoaHR0cHM6Ly93d3cudzMub3JnL1dBSS9XQ0FHMjIvVW5kZXJzdGFuZGluZy9mb2N1cy1ub3Qtb2JzY3VyZWQtbWluaW11bS5odG1sKVxuICAgIC8vIGR1ZSB0byBpdCdzIHN0aWNreSBwb3NpdGlvbmluZy5cbiAgICAvL1xuICAgIC8vIFRoaXMgd2lsbCBhcHBseSBzY3JvbGwtcGFkZGluZy10b3AgaW4gYW55IGJyb3dzZXJzIHRoYXQgZG9uJ3Qgc3VwcG9ydCA6aGFzXG4gICAgLy8gKGh0dHBzOi8vY2FuaXVzZS5jb20vY3NzLWhhcykuIFRoaXMgaXMgcGFydCBvZiB0aGUgcmVhc29uIHdlIGRvIHRoaXMgaW5cbiAgICAvLyBhIFwid3Jvbmcgd2F5IHJvdW5kXCIgd2F5IGFzIHdlIGh5cG90aGVzaXNlIHRoYXQgdGhlIHJpc2tzIG9mIGhhdmluZ1xuICAgIC8vIHNjcm9sbC1wYWRkaW5nIHVubmVjZXNzYXJpbHkgaXMgYmV0dGVyIHRoYW4gcmlza2luZyBub3QgaGF2aW5nIHNjcm9sbC1wYWRkaW5nXG4gICAgLy8gYW5kIG5lZWRpbmcgaXQgdG8gYWNjb3VudCBmb3IgZXhpdCB0aGlzIHBhZ2UuXG4gICAgQHN1cHBvcnRzICgocG9zaXRpb246IC13ZWJraXQtc3RpY2t5KSBvciAocG9zaXRpb246IHN0aWNreSkpIHtcbiAgICAgIHNjcm9sbC1wYWRkaW5nLXRvcDogZ292dWstc3BhY2luZyg5KTtcblxuICAgICAgJjpub3QoOmhhcyguZ292dWstZXhpdC10aGlzLXBhZ2UpKSB7XG4gICAgICAgIHNjcm9sbC1wYWRkaW5nLXRvcDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBGb3JjZSB0aGUgc2Nyb2xsYmFyIHRvIGFsd2F5cyBkaXNwbGF5IGluIElFLCB0byBwcmV2ZW50IGhvcml6b250YWwgcGFnZVxuICAgIC8vIGp1bXBzIGFzIGNvbnRlbnQgaGVpZ2h0IGNoYW5nZXMgKGUuZy4gYXV0b2NvbXBsZXRlIHJlc3VsdHMgb3BlbikuXG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJG1lZGlhLXR5cGU6IHNjcmVlbikge1xuICAgICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFwcGxpZWQgdG8gdGhlIDxib2R5PiBlbGVtZW50XG4gIC5nb3Z1ay10ZW1wbGF0ZV9fYm9keSB7XG4gICAgLy8gVGhlIGRlZmF1bHQgbWFyZ2lucyBzZXQgYnkgdXNlci1hZ2VudHMgYXJlIG5vdCByZXF1aXJlZCBzaW5jZSB3ZSBoYXZlIG91clxuICAgIC8vIG93biBjb250YWluZXJzLlxuICAgIG1hcmdpbjogMDtcbiAgICAvLyBTZXQgdGhlIG92ZXJhbGwgYm9keSBvZiB0aGUgcGFnZSBiYWNrIHRvIHRoZSB0eXBpY2FsIGJhY2tncm91bmQgY29sb3VyLlxuICAgIGJhY2tncm91bmQtY29sb3I6ICRnb3Z1ay1ib2R5LWJhY2tncm91bmQtY29sb3VyO1xuICB9XG59XG5cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPV90ZW1wbGF0ZS5zY3NzLm1hcCAqL1xuIiwiLy8vL1xuLy8vIEBncm91cCB0b29sc1xuLy8vL1xuXG4vLy8gV3JhcHMgcmVicmFuZGVkIHByb3BlcnRpZXMgaW4gdGhlIGZlYXR1cmUgZmxhZyBzZWxlY3RvclxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdyYXAgYSBibG9jayBvZiBtdWx0aXBsZSBwcm9wZXJ0aWVzXG4vLy8gICAuZm9vIHtcbi8vLyAgICAgYm9yZGVyLXdpZHRoOiAxcHg7XG4vLy8gICAgIGJvcmRlci1jb2xvdXI6ICNmZmY7XG4vLy9cbi8vLyAgICAgQGluY2x1ZGUgX2dvdnVrLXJlYnJhbmQoKSB7XG4vLy8gICAgICAgYm9yZGVyLXdpZHRoOiAxMHB4O1xuLy8vICAgICAgIGJvcmRlci1jb2xvdXI6ICMwMDA7XG4vLy8gICAgIH1cbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBXcmFwIGEgc2luZ2xlIHByb3BlcnR5XG4vLy8gICAuZm9vIHtcbi8vLyAgICAgQGluY2x1ZGUgX2dvdnVrLXJlYnJhbmQoXCJiYWNrZ3JvdW5kLWNvbG9yXCIsICRmcm9tOiAjZmZmLCAkdG86ICMwMDApXG4vLy8gICB9XG4vLy9cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkcHJvcGVydHkgLSBUaGUgbmFtZSBvZiB0aGUgcHJvcGVydHkgYmVpbmcgcmVicmFuZGVkXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRmcm9tIC0gVGhlIG9yaWdpbmFsIHZhbHVlIG9mIHRoZSBwcm9wZXJ0eVxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkdG8gLSBUaGUgcmVicmFuZGVkIHZhbHVlIG9mIHRoZSBwcm9wZXJ0eVxuLy8vIEB0aHJvdyBpZiBgJHByb3BlcnR5YCBpcyBzZXQgYnV0IGAkZnJvbWAgb3IgYCR0b2AgYXJlIG1pc3Npbmdcbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiBfZ292dWstcmVicmFuZCgkcHJvcGVydHk6IG51bGwsICRmcm9tOiBudWxsLCAkdG86IG51bGwpIHtcbiAgQGlmICRwcm9wZXJ0eSB7XG4gICAgQGlmIG5vdCAkZnJvbSB7XG4gICAgICBAZXJyb3IgXCJgX2dvdnVrLXJlYnJhbmRgIG5lZWRzIHRoZSBvcmlnaW5hbCB2YWx1ZSwgYCRmcm9tYFwiO1xuICAgIH1cblxuICAgIEBpZiBub3QgJHRvIHtcbiAgICAgIEBlcnJvciBcImBfZ292dWstcmVicmFuZGAgbmVlZHMgdGhlIHJlYnJhbmRlZCB2YWx1ZSwgYCR0b2BcIjtcbiAgICB9XG5cbiAgICAjeyRwcm9wZXJ0eX06ICN7JGZyb219O1xuXG4gICAgQGluY2x1ZGUgX2dvdnVrLXJlYnJhbmQtd3JhcHBlciB7XG4gICAgICAjeyRwcm9wZXJ0eX06ICN7JHRvfTtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBpbmNsdWRlIF9nb3Z1ay1yZWJyYW5kLXdyYXBwZXIge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBfZ292dWstcmVicmFuZC13cmFwcGVyKCkge1xuICAkc2VsZWN0b3I6IFwiI3smfVwiO1xuXG4gIEBpZiAkc2VsZWN0b3IgPT0gXCIuZ292dWstdGVtcGxhdGVcIiB7XG4gICAgQGF0LXJvb3QgLmdvdnVrLXRlbXBsYXRlLS1yZWJyYW5kZWQge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAuZ292dWstdGVtcGxhdGUtLXJlYnJhbmRlZCAmIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vKiMgc291cmNlTWFwcGluZ1VSTD1fcmVicmFuZC5zY3NzLm1hcCAqL1xuIiwiQGltcG9ydCBcIi4uL2Jhc2VcIjtcblxuLy8vL1xuLy8vIEBncm91cCBvYmplY3RzL2xheW91dFxuLy8vL1xuXG4vLy8gV2lkdGggY29udGFpbmVyIG1peGluXG4vLy9cbi8vLyBVc2VkIHRvIGNyZWF0ZSBwYWdlIHdpZHRoIGFuZCBjdXN0b20gd2lkdGggY29udGFpbmVyIGNsYXNzZXMuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHdpZHRoIFskZ292dWstcGFnZS13aWR0aF0gLSBXaWR0aCBpbiBwaXhlbHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBDcmVhdGluZyBhIDEyMDBweCB3aWRlIGNvbnRhaW5lciBjbGFzc1xuLy8vICAuYXBwLXdpZHRoLWNvbnRhaW5lci0td2lkZSB7XG4vLy8gICAgQGluY2x1ZGUgZ292dWstd2lkdGgtY29udGFpbmVyKDEyMDBweCk7XG4vLy8gIH1cbi8vL1xuLy8vIEBhY2Nlc3MgcHVibGljXG5cbkBtaXhpbiBnb3Z1ay13aWR0aC1jb250YWluZXIoJHdpZHRoOiAkZ292dWstcGFnZS13aWR0aCkge1xuICAvLyBCeSBkZWZhdWx0LCBsaW1pdCB0aGUgd2lkdGggb2YgdGhlIGNvbnRhaW5lciB0byB0aGUgcGFnZSB3aWR0aFxuICBtYXgtd2lkdGg6ICR3aWR0aDtcblxuICAvLyBPbiBtb2JpbGUsIGFkZCBoYWxmIHdpZHRoIGd1dHRlcnNcbiAgbWFyZ2luLXJpZ2h0OiAkZ292dWstZ3V0dGVyLWhhbGY7XG4gIG1hcmdpbi1sZWZ0OiAkZ292dWstZ3V0dGVyLWhhbGY7XG5cbiAgLy8gUmVzcGVjdCAnZGlzcGxheSBjdXRvdXQnIHNhZmUgYXJlYSAoYXZvaWRzIG5vdGNoZXMgYW5kIHJvdW5kZWQgY29ybmVycylcbiAgQHN1cHBvcnRzIChtYXJnaW46IHVucXVvdGUoXCJtYXgoY2FsYygwcHgpKVwiKSkge1xuICAgICRndXR0ZXItc2FmZS1hcmVhLXJpZ2h0OiBjYWxjKCN7JGdvdnVrLWd1dHRlci1oYWxmfSArIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpKTtcbiAgICAkZ3V0dGVyLXNhZmUtYXJlYS1sZWZ0OiBjYWxjKCN7JGdvdnVrLWd1dHRlci1oYWxmfSArIGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCkpO1xuXG4gICAgLy8gVXNlIG1heCgpIHRvIHBpY2sgbGFyZ2VzdCBtYXJnaW4sIGRlZmF1bHQgb3Igd2l0aCBzYWZlIGFyZWFcbiAgICAvLyBFc2NhcGVkIGR1ZSB0byBTYXNzIG1heCgpIHZzLiBDU1MgbmF0aXZlIG1heCgpXG4gICAgbWFyZ2luLXJpZ2h0OiB1bnF1b3RlKFwibWF4KCN7JGdvdnVrLWd1dHRlci1oYWxmfSwgI3skZ3V0dGVyLXNhZmUtYXJlYS1yaWdodH0pXCIpO1xuICAgIG1hcmdpbi1sZWZ0OiB1bnF1b3RlKFwibWF4KCN7JGdvdnVrLWd1dHRlci1oYWxmfSwgI3skZ3V0dGVyLXNhZmUtYXJlYS1sZWZ0fSlcIik7XG4gIH1cblxuICAvLyBPbiB0YWJsZXQsIGFkZCBmdWxsIHdpZHRoIGd1dHRlcnNcbiAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IHRhYmxldCkge1xuICAgIG1hcmdpbi1yaWdodDogJGdvdnVrLWd1dHRlcjtcbiAgICBtYXJnaW4tbGVmdDogJGdvdnVrLWd1dHRlcjtcblxuICAgIC8vIFJlc3BlY3QgJ2Rpc3BsYXkgY3V0b3V0JyBzYWZlIGFyZWEgKGF2b2lkcyBub3RjaGVzIGFuZCByb3VuZGVkIGNvcm5lcnMpXG4gICAgQHN1cHBvcnRzIChtYXJnaW46IHVucXVvdGUoXCJtYXgoY2FsYygwcHgpKVwiKSkge1xuICAgICAgJGd1dHRlci1zYWZlLWFyZWEtcmlnaHQ6IGNhbGMoI3skZ292dWstZ3V0dGVyLWhhbGZ9ICsgZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCkpO1xuICAgICAgJGd1dHRlci1zYWZlLWFyZWEtbGVmdDogY2FsYygjeyRnb3Z1ay1ndXR0ZXItaGFsZn0gKyBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpKTtcblxuICAgICAgLy8gVXNlIG1heCgpIHRvIHBpY2sgbGFyZ2VzdCBtYXJnaW4sIGRlZmF1bHQgb3Igd2l0aCBzYWZlIGFyZWFcbiAgICAgIC8vIEVzY2FwZWQgZHVlIHRvIFNhc3MgbWF4KCkgdnMuIENTUyBuYXRpdmUgbWF4KClcbiAgICAgIG1hcmdpbi1yaWdodDogdW5xdW90ZShcIm1heCgjeyRnb3Z1ay1ndXR0ZXJ9LCAjeyRndXR0ZXItc2FmZS1hcmVhLXJpZ2h0fSlcIik7XG4gICAgICBtYXJnaW4tbGVmdDogdW5xdW90ZShcIm1heCgjeyRnb3Z1ay1ndXR0ZXJ9LCAjeyRndXR0ZXItc2FmZS1hcmVhLWxlZnR9KVwiKTtcbiAgICB9XG4gIH1cblxuICAvLyBBcyBzb29uIGFzIHRoZSB2aWV3cG9ydCBpcyBncmVhdGVyIHRoYW4gdGhlIHdpZHRoIG9mIHRoZSBwYWdlIHBsdXMgdGhlXG4gIC8vIGd1dHRlcnMsIGp1c3QgY2VudHJlIHRoZSBjb250ZW50IGluc3RlYWQgb2YgYWRkaW5nIGd1dHRlcnMuXG4gIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRhbmQ6IFwiKG1pbi13aWR0aDogI3soJHdpZHRoICsgJGdvdnVrLWd1dHRlciAqIDIpfSlcIikge1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcblxuICAgIC8vIFNpbmNlIGEgc2FmZSBhcmVhIG1heSBoYXZlIHByZXZpb3VzbHkgYmVlbiBzZXQgYWJvdmUsXG4gICAgLy8gd2UgbmVlZCB0byBkdXBsaWNhdGUgdGhpcyBtYXJnaW4gdGhhdCBjZW50ZXJzIHRoZSBwYWdlLlxuICAgIEBzdXBwb3J0cyAobWFyZ2luOiB1bnF1b3RlKFwibWF4KGNhbGMoMHB4KSlcIikpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvb2JqZWN0cy93aWR0aC1jb250YWluZXJcIikge1xuICAuZ292dWstd2lkdGgtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay13aWR0aC1jb250YWluZXI7XG4gIH1cbn1cblxuLyojIHNvdXJjZU1hcHBpbmdVUkw9X3dpZHRoLWNvbnRhaW5lci5zY3NzLm1hcCAqL1xuIiwiLy8vL1xuLy8vIEBncm91cCBzZXR0aW5ncy9sYXlvdXRcbi8vLy9cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBQYWdlIGxheW91dFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vLyBXaWR0aCBvZiBtYWluIGNvbnRhaW5lclxuLy8vXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuJGdvdnVrLXBhZ2Utd2lkdGg6IDk2MHB4ICFkZWZhdWx0O1xuXG4vLy8gTWFwIG9mIGdyaWQgY29sdW1uIHdpZHRoc1xuLy8vXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuJGdvdnVrLWdyaWQtd2lkdGhzOiAoXG4gIG9uZS1xdWFydGVyOiAoXG4gICAgMTAwJSAvIDRcbiAgKSxcbiAgb25lLXRoaXJkOiAoXG4gICAgMTAwJSAvIDNcbiAgKSxcbiAgb25lLWhhbGY6IChcbiAgICAxMDAlIC8gMlxuICApLFxuICB0d28tdGhpcmRzOiAoXG4gICAgMjAwJSAvIDNcbiAgKSxcbiAgdGhyZWUtcXVhcnRlcnM6IChcbiAgICAzMDAlIC8gNFxuICApLFxuICBmdWxsOiAxMDAlXG4pICFkZWZhdWx0O1xuXG4vLy8gV2lkdGggb2YgZ3V0dGVyIGJldHdlZW4gZ3JpZCBjb2x1bW5zXG4vLy9cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG4kZ292dWstZ3V0dGVyOiAzMHB4ICFkZWZhdWx0O1xuXG4vLy8gV2lkdGggb2YgaGFsZiB0aGUgZ3V0dGVyIGJldHdlZW4gZ3JpZCBjb2x1bW5zXG4vLy9cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG4kZ292dWstZ3V0dGVyLWhhbGY6ICRnb3Z1ay1ndXR0ZXIgLyAyO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEJvcmRlcnNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLy8gU3RhbmRhcmQgYm9yZGVyIHdpZHRoXG4vLy9cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG4kZ292dWstYm9yZGVyLXdpZHRoOiA1cHggIWRlZmF1bHQ7XG5cbi8vLyBXaWRlIGJvcmRlciB3aWR0aFxuLy8vXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuJGdvdnVrLWJvcmRlci13aWR0aC13aWRlOiAxMHB4ICFkZWZhdWx0O1xuXG4vLy8gTmFycm93IGJvcmRlciB3aWR0aFxuLy8vXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuJGdvdnVrLWJvcmRlci13aWR0aC1uYXJyb3c6IDRweCAhZGVmYXVsdDtcblxuLy8vIEZvcm0gY29udHJvbCBib3JkZXIgd2lkdGhcbi8vL1xuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1lbGVtZW50OiAycHggIWRlZmF1bHQ7XG5cbi8vLyBGb3JtIGdyb3VwIGJvcmRlciB3aWR0aCB3aGVuIGluIGVycm9yIHN0YXRlXG4vLy9cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG4kZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZ3JvdXAtZXJyb3I6ICRnb3Z1ay1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgd2lkdGggb2YgZm9jdXMgb3V0bGluZVxuLy8vXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuJGdvdnVrLWZvY3VzLXdpZHRoOiAzcHggIWRlZmF1bHQ7XG5cbi8vLyBIb3ZlciB3aWR0aCBmb3IgZm9ybSBjb250cm9scyB3aXRoIGEgaG92ZXIgc3RhdGVcbi8vL1xuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay1ob3Zlci13aWR0aDogMTBweCAhZGVmYXVsdDtcblxuLyojIHNvdXJjZU1hcHBpbmdVUkw9X21lYXN1cmVtZW50cy5zY3NzLm1hcCAqL1xuIiwiQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL2NvbXBvbmVudC9hY2NvcmRpb25cIikge1xuICAkZ292dWstYWNjb3JkaW9uLWJhc2UtY29sb3VyOiBnb3Z1ay1jb2xvdXIoXCJibGFja1wiKTtcbiAgJGdvdnVrLWFjY29yZGlvbi1ob3Zlci1jb2xvdXI6IGdvdnVrLWNvbG91cihcImxpZ2h0LWdyZXlcIik7XG4gICRnb3Z1ay1hY2NvcmRpb24taWNvbi1mb2N1cy1jb2xvdXI6ICRnb3Z1ay1mb2N1cy1jb2xvdXI7XG4gICRnb3Z1ay1hY2NvcmRpb24tYm90dG9tLWJvcmRlci13aWR0aDogMXB4O1xuXG4gIC5nb3Z1ay1hY2NvcmRpb24ge1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDYsIFwiYm90dG9tXCIpO1xuICB9XG5cbiAgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbiB7XG4gICAgcGFkZGluZy10b3A6IGdvdnVrLXNwYWNpbmcoMyk7XG4gIH1cblxuICAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWhlYWRpbmcge1xuICAgIC8vIE92ZXJyaWRlIGJyb3dzZXIgZGVmYXVsdHMgdG8gZW5zdXJlIGNvbnNpc3RlbnQgZWxlbWVudCBoZWlnaHRcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICBwYWRkaW5nLXRvcDogZ292dWstc3BhY2luZygzKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogZ292dWstc3BhY2luZygzKTtcbiAgfVxuXG4gIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiAyNCwgJHdlaWdodDogYm9sZCk7XG4gICAgQGluY2x1ZGUgZ292dWstdGV4dC1jb2xvdXI7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmctdG9wOiBnb3Z1ay1zcGFjaW5nKDMpO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBib3R0b20gbWFyZ2luIGZyb20gdGhlIGxhc3QgaXRlbSBpbnNpZGUgdGhlIGNvbnRlbnRcbiAgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1jb250ZW50ID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAvLyBHT1YuVUsgRnJvbnRlbmQgSmF2YVNjcmlwdCBlbmFibGVkXG4gIC5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQge1xuICAgIC5nb3Z1ay1hY2NvcmRpb24ge1xuICAgICAgLy8gQm9yZGVyIGF0IHRoZSBib3R0b20gb2YgdGhlIHdob2xlIGFjY29yZGlvblxuICAgICAgYm9yZGVyLWJvdHRvbTogJGdvdnVrLWFjY29yZGlvbi1ib3R0b20tYm9yZGVyLXdpZHRoIHNvbGlkICRnb3Z1ay1ib3JkZXItY29sb3VyO1xuICAgIH1cblxuICAgIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24ge1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgfVxuXG4gICAgLy8gSGlkZSB0aGUgYm9keSBvZiBjb2xsYXBzZWQgc2VjdGlvbnMgYnkgZGVmYXVsdCBmb3IgYnJvd3NlcnMgdGhhdCBsYWNrXG4gICAgLy8gc3VwcG9ydCBmb3IgYGNvbnRlbnQtdmlzaWJpbGl0eWAgcGFpcmVkIHdpdGggW2hpZGRlbj11bnRpbC1mb3VuZF1cbiAgICAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWNvbnRlbnQge1xuICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1wYWRkaW5nKDMsIFwidG9wXCIpO1xuICAgICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1wYWRkaW5nKDgsIFwiYm90dG9tXCIpO1xuICAgIH1cblxuICAgIC8vIEhpZGUgdGhlIGJvZHkgb2YgY29sbGFwc2VkIHNlY3Rpb25zIHVzaW5nIGBjb250ZW50LXZpc2liaWxpdHlgIHRvIGVuYWJsZVxuICAgIC8vIHBhZ2Ugc2VhcmNoIHdpdGhpbiBbaGlkZGVuPXVudGlsLWZvdW5kXSByZWdpb25zIHdoZXJlIGJyb3dzZXIgc3VwcG9ydGVkXG4gICAgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1jb250ZW50W2hpZGRlbl0ge1xuICAgICAgQHN1cHBvcnRzIChjb250ZW50LXZpc2liaWxpdHk6IGhpZGRlbikge1xuICAgICAgICBjb250ZW50LXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgZGlzcGxheTogaW5oZXJpdDtcbiAgICAgIH1cblxuICAgICAgLy8gSGlkZSB0aGUgcGFkZGluZyBvZiBjb2xsYXBzZWQgc2VjdGlvbnNcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLy8gU2hvdyB0aGUgYm9keSBvZiBleHBhbmRlZCBzZWN0aW9uc1xuICAgIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tLWV4cGFuZGVkIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuZ292dWstYWNjb3JkaW9uX19zaG93LWFsbCB7XG4gICAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiAxOSk7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAxO1xuXG4gICAgICBtYXJnaW4tYm90dG9tOiA5cHg7XG4gICAgICBwYWRkaW5nOiBnb3Z1ay1zcGFjaW5nKDEpIDJweCBnb3Z1ay1zcGFjaW5nKDEpIDA7XG5cbiAgICAgIGJvcmRlci13aWR0aDogMDtcblxuICAgICAgY29sb3I6ICRnb3Z1ay1saW5rLWNvbG91cjtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG5cbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IHRhYmxldCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNHB4O1xuICAgICAgfVxuXG4gICAgICAvLyBSZW1vdmUgZGVmYXVsdCBidXR0b24gZm9jdXMgb3V0bGluZSBpbiBGaXJlZm94XG4gICAgICAmOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRnb3Z1ay1hY2NvcmRpb24tYmFzZS1jb2xvdXI7XG4gICAgICAgIGJhY2tncm91bmQ6ICRnb3Z1ay1hY2NvcmRpb24taG92ZXItY29sb3VyO1xuICAgICAgICAvLyBUaGUgZm9jdXMgc3RhdGUgYWRkcyBhIGJveC1zaGFkb3cgdG8gdGhlIHRvcCBhbmQgYm90dG9tIG9mIHRoZVxuICAgICAgICAvLyBidXR0b24uIFdlIGFkZCBhIGdyZXkgYm94LXNoYWRvdyBvbiBob3ZlciB0b28sIHRvIG1ha2UgdGhlIGhlaWdodCBvZlxuICAgICAgICAvLyB0aGUgaG92ZXIgc3RhdGUgbWF0Y2ggdGhlIGhlaWdodCBvZiB0aGUgZm9jdXMgc3RhdGUuXG4gICAgICAgIGJveC1zaGFkb3c6XG4gICAgICAgICAgMCAtMnB4ICRnb3Z1ay1hY2NvcmRpb24taG92ZXItY29sb3VyLFxuICAgICAgICAgIDAgNHB4ICRnb3Z1ay1hY2NvcmRpb24taG92ZXItY29sb3VyO1xuXG4gICAgICAgIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tdG9nZ2xlLXRleHQge1xuICAgICAgICAgIGNvbG9yOiAkZ292dWstYWNjb3JkaW9uLWJhc2UtY29sb3VyO1xuICAgICAgICB9XG5cbiAgICAgICAgLmdvdnVrLWFjY29yZGlvbi1uYXZfX2NoZXZyb24ge1xuICAgICAgICAgIGNvbG9yOiAkZ292dWstYWNjb3JkaW9uLWJhc2UtY29sb3VyO1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRnb3Z1ay1hY2NvcmRpb24tYmFzZS1jb2xvdXI7XG4gICAgICAgIH1cblxuICAgICAgICAuZ292dWstYWNjb3JkaW9uLW5hdl9fY2hldnJvbjo6YWZ0ZXIge1xuICAgICAgICAgIGNvbG9yOiAkZ292dWstYWNjb3JkaW9uLWhvdmVyLWNvbG91cjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgQGluY2x1ZGUgZ292dWstZm9jdXNlZC10ZXh0O1xuXG4gICAgICAgIC5nb3Z1ay1hY2NvcmRpb24tbmF2X19jaGV2cm9uIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkZ292dWstYWNjb3JkaW9uLWJhc2UtY29sb3VyO1xuICAgICAgICB9XG5cbiAgICAgICAgLmdvdnVrLWFjY29yZGlvbi1uYXZfX2NoZXZyb246OmFmdGVyIHtcbiAgICAgICAgICBjb2xvcjogJGdvdnVrLWFjY29yZGlvbi1pY29uLWZvY3VzLWNvbG91cjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24taGVhZGluZyB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC8vIENyZWF0ZSBDaGV2cm9uIGljb24gYWxpZ25lZCB3aXRoIHRleHRcbiAgICAuZ292dWstYWNjb3JkaW9uLW5hdl9fY2hldnJvbiB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIC8vIFNldCBzaXplIHVzaW5nIHJlbXMgc28gaWNvbiBzY2FsZXMgd2l0aCB0ZXh0XG4gICAgICB3aWR0aDogZ292dWstcHgtdG8tcmVtKDIwcHgpO1xuICAgICAgaGVpZ2h0OiBnb3Z1ay1weC10by1yZW0oMjBweCk7XG5cbiAgICAgIGJvcmRlcjogZ292dWstcHgtdG8tcmVtKDFweCkgc29saWQ7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgIC8vIENyZWF0ZSBpbm5lciBjaGV2cm9uIGFycm93XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiBnb3Z1ay1weC10by1yZW0oNXB4KTtcbiAgICAgICAgbGVmdDogZ292dWstcHgtdG8tcmVtKDZweCk7XG5cbiAgICAgICAgd2lkdGg6IGdvdnVrLXB4LXRvLXJlbSg2cHgpO1xuICAgICAgICBoZWlnaHQ6IGdvdnVrLXB4LXRvLXJlbSg2cHgpO1xuXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG5cbiAgICAgICAgYm9yZGVyLXRvcDogZ292dWstcHgtdG8tcmVtKDJweCkgc29saWQ7XG4gICAgICAgIGJvcmRlci1yaWdodDogZ292dWstcHgtdG8tcmVtKDJweCkgc29saWQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUm90YXRlIGljb24gdG8gY3JlYXRlIFwiRG93blwiIHZlcnNpb25cbiAgICAuZ292dWstYWNjb3JkaW9uLW5hdl9fY2hldnJvbi0tZG93biB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgIH1cblxuICAgIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tYnV0dG9uIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICBwYWRkaW5nOiBnb3Z1ay1zcGFjaW5nKDIpIDAgMDtcblxuICAgICAgYm9yZGVyOiAwO1xuXG4gICAgICBib3JkZXItdG9wOiAkZ292dWstYWNjb3JkaW9uLWJvdHRvbS1ib3JkZXItd2lkdGggc29saWQgJGdvdnVrLWJvcmRlci1jb2xvdXI7XG5cbiAgICAgIC8vIFZpc3VhbGx5IHNlcGFyYXRlIHRoZSBzZWN0aW9uIGZyb20gdGhlIG9uZSB1bmRlcm5lYXRoIHdoZW4gdXNlciBjaGFuZ2VzXG4gICAgICAvLyBjb2xvdXJzIGluIHRoZWlyIGJyb3dzZXIuIFNlZVxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2FscGhhZ292L2dvdnVrLWZyb250ZW5kL2lzc3Vlcy8yMzIxI2lzc3VlY29tbWVudC05MjQyMDE0ODhcbiAgICAgIGJvcmRlci1ib3R0b206IGdvdnVrLXNwYWNpbmcoMikgc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgICAgIGNvbG9yOiAkZ292dWstdGV4dC1jb2xvdXI7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgLy8gU2VjdGlvbiBoZWFkZXJzIGhhdmUgYSBwb2ludGVyIGN1cnNvciBhcyBhbiBhZGRpdGlvbmFsIGFmZm9yZGFuY2VcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IHRhYmxldCkge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogZ292dWstc3BhY2luZygyKTtcbiAgICAgIH1cblxuICAgICAgJjphY3RpdmUge1xuICAgICAgICBjb2xvcjogJGdvdnVrLWxpbmstYWN0aXZlLWNvbG91cjtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkZ292dWstYWNjb3JkaW9uLWJhc2UtY29sb3VyO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkZ292dWstYWNjb3JkaW9uLWhvdmVyLWNvbG91cjtcblxuICAgICAgICAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLXRvZ2dsZS10ZXh0IHtcbiAgICAgICAgICBjb2xvcjogJGdvdnVrLWFjY29yZGlvbi1iYXNlLWNvbG91cjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5nb3Z1ay1hY2NvcmRpb24tbmF2X19jaGV2cm9uIHtcbiAgICAgICAgICBjb2xvcjogJGdvdnVrLWFjY29yZGlvbi1iYXNlLWNvbG91cjtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkZ292dWstYWNjb3JkaW9uLWJhc2UtY29sb3VyO1xuICAgICAgICB9XG5cbiAgICAgICAgLmdvdnVrLWFjY29yZGlvbi1uYXZfX2NoZXZyb246OmFmdGVyIHtcbiAgICAgICAgICBjb2xvcjogJGdvdnVrLWFjY29yZGlvbi1ob3Zlci1jb2xvdXI7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIC8vIFJlbW92ZSBkZWZhdWx0IGZvY3VzIGJvcmRlciBhcm91bmQgYnV0dG9uIGFzIHN0eWxpbmcgaXMgYmVpbmcgYXBwbGllZFxuICAgICAgICAvLyB0byBpbm5lciB0ZXh0IGVsZW1lbnRzIHRoYXQgcmVjZWl2ZSBmb2N1c1xuICAgICAgICBvdXRsaW5lOiAwO1xuXG4gICAgICAgIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24taGVhZGluZy10ZXh0LWZvY3VzLFxuICAgICAgICAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLXN1bW1hcnktZm9jdXMsXG4gICAgICAgIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tdG9nZ2xlLWZvY3VzIHtcbiAgICAgICAgICBAaW5jbHVkZSBnb3Z1ay1mb2N1c2VkLXRleHQ7XG4gICAgICAgIH1cblxuICAgICAgICAuZ292dWstYWNjb3JkaW9uLW5hdl9fY2hldnJvbiB7XG4gICAgICAgICAgY29sb3I6ICRnb3Z1ay1hY2NvcmRpb24tYmFzZS1jb2xvdXI7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGdvdnVrLWFjY29yZGlvbi1iYXNlLWNvbG91cjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5nb3Z1ay1hY2NvcmRpb24tbmF2X19jaGV2cm9uOjphZnRlciB7XG4gICAgICAgICAgY29sb3I6ICRnb3Z1ay1hY2NvcmRpb24taWNvbi1mb2N1cy1jb2xvdXI7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gUmVtb3ZlIGRlZmF1bHQgYnV0dG9uIGZvY3VzIG91dGxpbmUgaW4gRmlyZWZveFxuICAgICAgJjo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgdGhlIHRyYW5zcGFyZW50IGJvcmRlciB3aGVuIHRoZSBzZWN0aW9uIGlzIGV4cGFuZGVkIHRvIG1ha2UgaXRcbiAgICAvLyBjbGVhciB0aGF0IHRoZSBoZWFkaW5nIHJlbGF0ZXMgdG8gdGhlIGNvbnRlbnQgYmVsb3cuIEFkanVzdCBwYWRkaW5nIHRvXG4gICAgLy8gbWFpbnRhaW4gdGhlIGhlaWdodCBvZiB0aGUgZWxlbWVudC4gU2VlXG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2FscGhhZ292L2dvdnVrLWZyb250ZW5kL3B1bGwvMjI1NyNpc3N1ZWNvbW1lbnQtOTUxOTIwNzk4XG4gICAgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi0tZXhwYW5kZWQgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1idXR0b24ge1xuICAgICAgcGFkZGluZy1ib3R0b206IGdvdnVrLXNwYWNpbmcoMyk7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuXG4gICAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogdGFibGV0KSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFzIENoZXZyb24gaWNvbiBpcyB2ZXJ0aWNhbGx5IGFsaWduZWQgaXQgb3ZlcmxhcHMgd2l0aCB0aGUgZm9jdXMgc3RhdGVcbiAgICAvLyBib3R0b20gYm9yZGVyIOKAkyB0aGlzIGFkZHMgc29tZSBzcGFjaW5nXG4gICAgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1idXR0b246Zm9jdXMgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi10b2dnbGUtZm9jdXMge1xuICAgICAgcGFkZGluZy1ib3R0b206IDNweDtcblxuICAgICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IGRlc2t0b3ApIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDJweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLXRvZ2dsZSxcbiAgICAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWhlYWRpbmctdGV4dCxcbiAgICAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLXN1bW1hcnkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxM3B4O1xuXG4gICAgICAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWhlYWRpbmctdGV4dC1mb2N1cyxcbiAgICAgIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tc3VtbWFyeS1mb2N1cyxcbiAgICAgIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tdG9nZ2xlLWZvY3VzIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFkZCB0b2dnbGUgbGluayB3aXRoIENoZXZyb24gaWNvbiBvbiBsZWZ0LlxuICAgIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tdG9nZ2xlIHtcbiAgICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQtc2l6ZSgkc2l6ZTogMTkpO1xuICAgICAgQGluY2x1ZGUgZ292dWstdHlwb2dyYXBoeS13ZWlnaHQtcmVndWxhcjtcbiAgICAgIGNvbG9yOiAkZ292dWstbGluay1jb2xvdXI7XG4gICAgfVxuXG4gICAgLy8gQWRkIHNwYWNlIGJldHdlZW4gdGhlIGljb24gYW5kIHRleHQuIEF2b2lkIGFwcGx5aW5nIHNwYWNpbmcgZGlyZWN0bHkgdG9cbiAgICAvLyB0aGUgaWNvbiBhcyB0aGUgdXNlIG9mIGB0cmFuc2Zvcm1gIHdpbGwgY2hhbmdlIHRoZSBwbGFjZW1lbnQgb2YgYW55XG4gICAgLy8gbWFyZ2lucy5cbiAgICAuZ292dWstYWNjb3JkaW9uX19zaG93LWFsbC10ZXh0LFxuICAgIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tdG9nZ2xlLXRleHQge1xuICAgICAgbWFyZ2luLWxlZnQ6IGdvdnVrLXNwYWNpbmcoMSk7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vIEJhY2tncm91bmQgY29sb3VyIGFkanVzdG1lbnQgd2hlbiB1c2VyIGNoYW5nZXMgY29sb3VycyBpbiBGaXJlZm94XG4gICAgLy9cbiAgICAvLyBXaGVuIHVzZXIgY2hhbmdlcyBjb2xvdXJzIGluIEZpcmVmb3gsIHRleHQgY29sb3VyIGluc2lkZSA8YnV0dG9uPiBpc1xuICAgIC8vIGFsd2F5cyBibGFjayAocmVnYXJkbGVzcyBvZiB0aGUgY3VzdG9tIGNvbG91cnMgdGhlIHVzZXIgaGFzIHNldCkuIFRoaXMgaXNcbiAgICAvLyBmaW5lIHdoZW4gdGhlIHRleHQgaW4gdGhlIGJ1dHRvbiBpcyBub3QgbmVzdGVkIGluc2lkZSBhbm90aGVyIGVsZW1lbnRcbiAgICAvLyBiZWNhdXNlIHdoZW4gdXNlciBjaGFuZ2VzIGNvbG91cnMgaW4gRmlyZWZveCwgdGhlIGltbWVkaWF0ZSBiYWNrZ3JvdW5kXG4gICAgLy8gY29sb3VyIG9mIGJ1dHRvbnMgaXMgYWx3YXlzIHdoaXRlIChhZ2FpbiwgcmVnYXJkbGVzcyBvZiB1c2VyJ3MgY3VzdG9tXG4gICAgLy8gY29sb3VycykuXG4gICAgLy9cbiAgICAvLyBIb3dldmVyLCB3aGVuIHRoZSB0ZXh0IGluc2lkZSA8YnV0dG9uPiBpcyB3cmFwcGVkIGluc2lkZSBhbm90aGVyIGVsZW1lbnRcbiAgICAvLyBBTkQgdGhhdCBlbGVtZW50IHNldHMgYSBiYWNrZ3JvdW5kIGNvbG91ciwgdGhlIHRleHQgY29sb3VyIGlzIHN0aWxsIGJsYWNrXG4gICAgLy8gYnV0IHRoZSBiYWNrZ3JvdW5kIG9mIHRoYXQgbmVzdGVkIGVsZW1lbnQgZ2V0cyB0aGUgdXNlcidzIGN1c3RvbVxuICAgIC8vIGJhY2tncm91bmQgY29sb3VyLiBXaGVuIHRoZSBjdXN0b20gYmFja2dyb3VuZCBpcyBhIGxpZ2h0ZXIgaHVlLCB0aGVcbiAgICAvLyBjb250cmFzdCBtaWdodCBiZSBzdWZmaWNpZW50LiBCdXQgaWYgdGhlIHVzZXIncyBjdXN0b20gYmFja2dyb3VuZCBjb2xvdXJcbiAgICAvLyBpcyBhIGRhcmtlciBjb2xvdXIsIHRoZSBjb250cmFzdCB3aXRoIHRoZSB0ZXh0IG1pZ2h0IG5vdCBiZSBzdWZmaWNpZW50LlxuICAgIC8vXG4gICAgLy8gVG8gZW5zdXJlIHN1ZmZpY2llbnQgY29udHJhc3QsIG92ZXJyaWRlIHRoZSBiYWNrZ3JvdW5kIGNvbG91ciBzZXQgYnkgdGhlXG4gICAgLy8gZm9jdXMgc3RhdGUgb24gdGhlIG5lc3RlZCBlbGVtZW50cyB0byBiZSB0cmFuc3BhcmVudC5cbiAgICAvL1xuICAgIC8vIEFsc28gb3ZlcnJpZGUgdGhlIGJhY2tncm91bmQgY29sb3VyIG9mIHRoZSBTaG93L0hpZGUgY2hldnJvbnMgd2hpY2ggc2V0IGFcbiAgICAvLyBiYWNrZ3JvdW5kIGNvbG91ciBvbiBob3Zlci5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gICAgICAuZ292dWstYWNjb3JkaW9uX19zaG93LWFsbDpob3ZlcixcbiAgICAgIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tYnV0dG9uOmhvdmVyIHtcbiAgICAgICAgLmdvdnVrLWFjY29yZGlvbi1uYXZfX2NoZXZyb24ge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5nb3Z1ay1hY2NvcmRpb25fX3Nob3ctYWxsOmZvY3VzLFxuICAgICAgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1idXR0b246Zm9jdXMge1xuICAgICAgICAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWhlYWRpbmctdGV4dC1mb2N1cyxcbiAgICAgICAgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1zdW1tYXJ5LWZvY3VzLFxuICAgICAgICAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLXRvZ2dsZS1mb2N1cyxcbiAgICAgICAgLmdvdnVrLWFjY29yZGlvbi1uYXZfX2NoZXZyb24ge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRm9yIGRldmljZXMgdGhhdCBjYW4ndCBob3ZlciBzdWNoIGFzIHRvdWNoIGRldmljZXMsXG4gICAgLy8gcmVtb3ZlIGhvdmVyIHN0YXRlIGFzIGl0IGNhbiBiZSBzdHVjayBpbiB0aGF0IHN0YXRlIChpT1MpLlxuICAgIEBtZWRpYSAoaG92ZXI6IG5vbmUpIHtcbiAgICAgIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24taGVhZGVyOmhvdmVyIHtcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGdvdnVrLWJvcmRlci1jb2xvdXI7XG5cbiAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAzcHggMCAwICRnb3Z1ay1saW5rLWNvbG91cjtcblxuICAgICAgICAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWJ1dHRvbiB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGdvdnVrLWJvcmRlci1jb2xvdXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyojIHNvdXJjZU1hcHBpbmdVUkw9X2luZGV4LnNjc3MubWFwICovXG4iLCJAaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvY29tcG9uZW50L2JhY2stbGlua1wiKSB7XG4gIC8vIENvbXBvbmVudCBmb250LXNpemUgb24gdGhlIEZyb250ZW5kICh1c2VkIGZvciBjYWxjdWxhdGlvbnMpXG4gICRmb250LXNpemU6IDE2O1xuXG4gIC8vIFNpemUgb2YgY2hldnJvbiAoZXhjbHVkaW5nIGJvcmRlcilcbiAgJGNoZXZyb24tc2l6ZTogZ292dWstZW0oN3B4LCAkZm9udC1zaXplKTtcblxuICAvLyBTaXplIG9mIGNoZXZyb24gYm9yZGVyXG4gICRjaGV2cm9uLWJvcmRlci1taW4td2lkdGg6IDFweDtcbiAgJGNoZXZyb24tYm9yZGVyLXdpZHRoOiBnb3Z1ay1lbSgkY2hldnJvbi1ib3JkZXItbWluLXdpZHRoLCAkZm9udC1zaXplKTtcblxuICAvLyBDb2xvdXIgb2YgY2hldnJvblxuICAkY2hldnJvbi1ib3JkZXItY29sb3VyOiAkZ292dWstc2Vjb25kYXJ5LXRleHQtY29sb3VyO1xuXG4gIC5nb3Z1ay1iYWNrLWxpbmsge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQtc2l6ZSgkc2l6ZTogJGZvbnQtc2l6ZSk7XG4gICAgQGluY2x1ZGUgZ292dWstbGluay1jb21tb247XG4gICAgQGluY2x1ZGUgZ292dWstbGluay1zdHlsZS10ZXh0O1xuXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIG1hcmdpbi10b3A6IGdvdnVrLXNwYWNpbmcoMyk7XG4gICAgbWFyZ2luLWJvdHRvbTogZ292dWstc3BhY2luZygzKTtcblxuICAgIC8vIEFsbG93IHNwYWNlIGZvciB0aGUgYXJyb3dcbiAgICBwYWRkaW5nLWxlZnQ6IGdvdnVrLWVtKDE0cHgsICRmb250LXNpemUpO1xuICB9XG5cbiAgLy8gUHJlcGVuZCBsZWZ0IHBvaW50aW5nIGNoZXZyb25cbiAgLmdvdnVrLWJhY2stbGluazo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgLy8gVmVydGljYWxseSBhbGlnbiB3aXRoIHRoZSBwYXJlbnQgZWxlbWVudFxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IGdvdnVrLWVtKDNweCwgJGZvbnQtc2l6ZSk7XG5cbiAgICB3aWR0aDogJGNoZXZyb24tc2l6ZTtcbiAgICBoZWlnaHQ6ICRjaGV2cm9uLXNpemU7XG5cbiAgICBtYXJnaW46IGF1dG8gMDtcblxuICAgIHRyYW5zZm9ybTogcm90YXRlKDIyNWRlZyk7XG5cbiAgICBib3JkZXI6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogJGNoZXZyb24tYm9yZGVyLW1pbi13aWR0aCAkY2hldnJvbi1ib3JkZXItbWluLXdpZHRoIDAgMDtcbiAgICBib3JkZXItY29sb3I6ICRjaGV2cm9uLWJvcmRlci1jb2xvdXI7XG5cbiAgICBAc3VwcG9ydHMgKGJvcmRlci13aWR0aDogdW5xdW90ZShcIm1heCgwcHgpXCIpKSB7XG4gICAgICAkYm9yZGVyLXdpZHRoLWV2YWw6IFwibWF4KCN7JGNoZXZyb24tYm9yZGVyLW1pbi13aWR0aH0sICN7JGNoZXZyb24tYm9yZGVyLXdpZHRofSlcIjtcblxuICAgICAgLy8gRW5zdXJlIHRoYXQgdGhlIGNoZXZyb24gbmV2ZXIgZ2V0cyBzbWFsbGVyIHRoYW4gMTZweFxuICAgICAgYm9yZGVyLXdpZHRoOiB1bnF1b3RlKCRib3JkZXItd2lkdGgtZXZhbCkgdW5xdW90ZSgkYm9yZGVyLXdpZHRoLWV2YWwpIDAgMDtcbiAgICAgIGZvbnQtc2l6ZTogdW5xdW90ZShcIm1heCgjeyRmb250LXNpemUgKiAxcHh9LCAxZW0pXCIpO1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1iYWNrLWxpbms6Zm9jdXM6OmJlZm9yZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZ292dWstZm9jdXMtdGV4dC1jb2xvdXI7XG4gIH1cblxuICAuZ292dWstYmFjay1saW5rOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMTRweDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IC0xNHB4O1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICAuZ292dWstYmFjay1saW5rLS1pbnZlcnNlIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLXN0eWxlLWludmVyc2U7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiBjdXJyZW50Y29sb3I7XG4gICAgfVxuICB9XG59XG5cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPV9pbmRleC5zY3NzLm1hcCAqL1xuIiwiQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL2NvbXBvbmVudC9icmVhZGNydW1ic1wiKSB7XG4gIC8vIENvbXBvbmVudCBmb250LXNpemUgb24gdGhlIEZyb250ZW5kICh1c2VkIGZvciBjYWxjdWxhdGlvbnMpXG4gICRmb250LXNpemU6IDE2O1xuXG4gIC8vIFNpemUgb2YgY2hldnJvbiAoZXhjbHVkaW5nIGJvcmRlcilcbiAgJGNoZXZyb24tc2l6ZTogZ292dWstZW0oN3B4LCAkZm9udC1zaXplKTtcblxuICAvLyBTaXplIG9mIGNoZXZyb24gYm9yZGVyXG4gICRjaGV2cm9uLWJvcmRlci1taW4td2lkdGg6IDFweDtcbiAgJGNoZXZyb24tYm9yZGVyLXdpZHRoOiBnb3Z1ay1lbSgkY2hldnJvbi1ib3JkZXItbWluLXdpZHRoLCAkZm9udC1zaXplKTtcblxuICAvLyBDb2xvdXIgb2YgY2hldnJvblxuICAkY2hldnJvbi1ib3JkZXItY29sb3VyOiAkZ292dWstc2Vjb25kYXJ5LXRleHQtY29sb3VyO1xuXG4gIC8vIENhbGN1bGF0ZWQgYWx0aXR1ZGUgKOKWs+KGlSkgb2YgdGhlIHJpZ2h0LWFuZ2xlZCBpc29zY2VsZXMgY2hldnJvbiB3aXRoIHNpZGVzXG4gIC8vIG9mIGxlbmd0aCA4ICg3cHggKyAxcHggYm9yZGVyKTpcbiAgLy9cbiAgLy8g4oiaKDjCsiArIDjCsikgKiAwLjUg4omFIDUuNjU1XG4gICRjaGV2cm9uLWFsdGl0dWRlLWNhbGN1bGF0ZWQ6IGdvdnVrLWVtKDUuNjU1cHgsICRmb250LXNpemUpO1xuXG4gIC5nb3Z1ay1icmVhZGNydW1icyB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogJGZvbnQtc2l6ZSk7XG4gICAgQGluY2x1ZGUgZ292dWstdGV4dC1jb2xvdXI7XG5cbiAgICBtYXJnaW4tdG9wOiBnb3Z1ay1zcGFjaW5nKDMpO1xuICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMik7XG4gIH1cblxuICAuZ292dWstYnJlYWRjcnVtYnNfX2xpc3Qge1xuICAgIEBpbmNsdWRlIGdvdnVrLWNsZWFyZml4O1xuXG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICB9XG5cbiAgLmdvdnVrLWJyZWFkY3J1bWJzX19saXN0LWl0ZW0ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDEpO1xuXG4gICAgLy8gQWRkIGJvdGggbWFyZ2luIGFuZCBwYWRkaW5nIHN1Y2ggdGhhdCB0aGUgY2hldnJvbiBhcHBlYXJzIGNlbnRyYWxseVxuICAgIC8vIGJldHdlZW4gZWFjaCBicmVhZGNydW1iIGl0ZW1cbiAgICBtYXJnaW4tbGVmdDogZ292dWstZW0oZ292dWstc3BhY2luZygyKSwgJGZvbnQtc2l6ZSk7XG4gICAgcGFkZGluZy1sZWZ0OiBnb3Z1ay1lbShnb3Z1ay1zcGFjaW5nKDIpLCAkZm9udC1zaXplKSArICRjaGV2cm9uLWFsdGl0dWRlLWNhbGN1bGF0ZWQ7XG5cbiAgICBmbG9hdDogbGVmdDtcblxuICAgIC8vIENyZWF0ZSBhIGNoZXZyb24gdXNpbmcgYSBib3ggd2l0aCBib3JkZXJzIG9uIHR3byBzaWRlcywgcm90YXRlZCA0NWRlZy5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG5cbiAgICAgIC8vIE9mZnNldCBieSB0aGUgZGlmZmVyZW5jZSBiZXR3ZWVuIHRoZSB3aWR0aCBvZiB0aGUgbm9uLXJvdGF0ZWQgc3F1YXJlXG4gICAgICAvLyBhbmQgaXRzIHdpZHRoIHdoZW4gcm90YXRlZFxuICAgICAgbGVmdDogKCgkY2hldnJvbi1hbHRpdHVkZS1jYWxjdWxhdGVkICogLTIpICsgJGNoZXZyb24tc2l6ZSArICRjaGV2cm9uLWJvcmRlci13aWR0aCk7XG5cbiAgICAgIHdpZHRoOiAkY2hldnJvbi1zaXplO1xuICAgICAgaGVpZ2h0OiAkY2hldnJvbi1zaXplO1xuXG4gICAgICBtYXJnaW46IGF1dG8gMDtcblxuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuXG4gICAgICBib3JkZXI6IHNvbGlkO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkY2hldnJvbi1ib3JkZXItbWluLXdpZHRoICRjaGV2cm9uLWJvcmRlci1taW4td2lkdGggMCAwO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY2hldnJvbi1ib3JkZXItY29sb3VyO1xuXG4gICAgICBAc3VwcG9ydHMgKGJvcmRlci13aWR0aDogdW5xdW90ZShcIm1heCgwcHgpXCIpKSB7XG4gICAgICAgICRib3JkZXItd2lkdGgtZXZhbDogXCJtYXgoI3skY2hldnJvbi1ib3JkZXItbWluLXdpZHRofSwgI3skY2hldnJvbi1ib3JkZXItd2lkdGh9KVwiO1xuXG4gICAgICAgIC8vIEVuc3VyZSB0aGF0IHRoZSBjaGV2cm9uIG5ldmVyIGdldHMgc21hbGxlciB0aGFuIDE2cHhcbiAgICAgICAgYm9yZGVyLXdpZHRoOiB1bnF1b3RlKCRib3JkZXItd2lkdGgtZXZhbCkgdW5xdW90ZSgkYm9yZGVyLXdpZHRoLWV2YWwpIDAgMDtcbiAgICAgICAgZm9udC1zaXplOiB1bnF1b3RlKFwibWF4KCN7JGZvbnQtc2l6ZSAqIDFweH0sIDFlbSlcIik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZ292dWstYnJlYWRjcnVtYnNfX2xpbmsge1xuICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstY29tbW9uO1xuICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstc3R5bGUtdGV4dDtcbiAgfVxuXG4gIC5nb3Z1ay1icmVhZGNydW1icy0tY29sbGFwc2Utb24tbW9iaWxlIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkdW50aWw6IHRhYmxldCkge1xuICAgICAgLmdvdnVrLWJyZWFkY3J1bWJzX19saXN0LWl0ZW0ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQsXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IGdvdnVrLWVtKDZweCwgJGZvbnQtc2l6ZSk7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5nb3Z1ay1icmVhZGNydW1ic19fbGlzdCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWJyZWFkY3J1bWJzLS1pbnZlcnNlIHtcbiAgICBjb2xvcjogZ292dWstY29sb3VyKFwid2hpdGVcIik7XG5cbiAgICAuZ292dWstYnJlYWRjcnVtYnNfX2xpbmsge1xuICAgICAgQGluY2x1ZGUgZ292dWstbGluay1zdHlsZS1pbnZlcnNlO1xuICAgIH1cblxuICAgIC5nb3Z1ay1icmVhZGNydW1ic19fbGlzdC1pdGVtOjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiBjdXJyZW50Y29sb3I7XG4gICAgfVxuICB9XG59XG5cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPV9pbmRleC5zY3NzLm1hcCAqL1xuIiwiLy8vL1xuLy8vIEBncm91cCBjb21wb25lbnRzL2J1dHRvblxuLy8vL1xuXG4vLy8gQnV0dG9uIGNvbXBvbmVudCBiYWNrZ3JvdW5kIGNvbG91clxuLy8vXG4vLy8gQHR5cGUgQ29sb3VyXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuJGdvdnVrLWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG91cjogZ292dWstY29sb3VyKFwiZ3JlZW5cIikgIWRlZmF1bHQ7XG5cbi8vLyBCdXR0b24gY29tcG9uZW50IHRleHQgY29sb3VyXG4vLy9cbi8vLyBAdHlwZSBDb2xvdXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG4kZ292dWstYnV0dG9uLXRleHQtY29sb3VyOiBnb3Z1ay1jb2xvdXIoXCJ3aGl0ZVwiKSAhZGVmYXVsdDtcblxuLy8vIEludmVydGVkIGJ1dHRvbiBjb21wb25lbnQgYmFja2dyb3VuZCBjb2xvdXJcbi8vL1xuLy8vIEB0eXBlIENvbG91clxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay1pbnZlcnNlLWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG91cjogZ292dWstY29sb3VyKFwid2hpdGVcIikgIWRlZmF1bHQ7XG5cbi8vLyBJbnZlcnRlZCBidXR0b24gY29tcG9uZW50IHRleHQgY29sb3VyXG4vLy9cbi8vLyBAdHlwZSBDb2xvdXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG4kZ292dWstaW52ZXJzZS1idXR0b24tdGV4dC1jb2xvdXI6ICRnb3Z1ay1icmFuZC1jb2xvdXIgIWRlZmF1bHQ7XG5cbkBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9jb21wb25lbnQvYnV0dG9uXCIpIHtcbiAgJGdvdnVrLWJ1dHRvbi1jb2xvdXI6ICRnb3Z1ay1idXR0b24tYmFja2dyb3VuZC1jb2xvdXI7XG4gICRnb3Z1ay1idXR0b24tdGV4dC1jb2xvdXI6ICRnb3Z1ay1idXR0b24tdGV4dC1jb2xvdXI7XG4gICRnb3Z1ay1idXR0b24taG92ZXItY29sb3VyOiBnb3Z1ay1zaGFkZSgkZ292dWstYnV0dG9uLWNvbG91ciwgMjAlKTtcbiAgJGdvdnVrLWJ1dHRvbi1zaGFkb3ctY29sb3VyOiBnb3Z1ay1zaGFkZSgkZ292dWstYnV0dG9uLWNvbG91ciwgNjAlKTtcblxuICAvLyBTZWNvbmRhcnkgYnV0dG9uIHZhcmlhYmxlc1xuICAkZ292dWstc2Vjb25kYXJ5LWJ1dHRvbi1jb2xvdXI6IGdvdnVrLWNvbG91cihcImxpZ2h0LWdyZXlcIik7XG4gICRnb3Z1ay1zZWNvbmRhcnktYnV0dG9uLXRleHQtY29sb3VyOiBnb3Z1ay1jb2xvdXIoXCJibGFja1wiKTtcbiAgJGdvdnVrLXNlY29uZGFyeS1idXR0b24taG92ZXItY29sb3VyOiBnb3Z1ay1zaGFkZSgkZ292dWstc2Vjb25kYXJ5LWJ1dHRvbi1jb2xvdXIsIDEwJSk7XG4gICRnb3Z1ay1zZWNvbmRhcnktYnV0dG9uLXNoYWRvdy1jb2xvdXI6IGdvdnVrLXNoYWRlKCRnb3Z1ay1zZWNvbmRhcnktYnV0dG9uLWNvbG91ciwgNDAlKTtcblxuICAvLyBXYXJuaW5nIGJ1dHRvbiB2YXJpYWJsZXNcbiAgJGdvdnVrLXdhcm5pbmctYnV0dG9uLWNvbG91cjogZ292dWstY29sb3VyKFwicmVkXCIpO1xuICAkZ292dWstd2FybmluZy1idXR0b24tdGV4dC1jb2xvdXI6IGdvdnVrLWNvbG91cihcIndoaXRlXCIpO1xuICAkZ292dWstd2FybmluZy1idXR0b24taG92ZXItY29sb3VyOiBnb3Z1ay1zaGFkZSgkZ292dWstd2FybmluZy1idXR0b24tY29sb3VyLCAyMCUpO1xuICAkZ292dWstd2FybmluZy1idXR0b24tc2hhZG93LWNvbG91cjogZ292dWstc2hhZGUoJGdvdnVrLXdhcm5pbmctYnV0dG9uLWNvbG91ciwgNjAlKTtcblxuICAvLyBJbnZlcnNlIGJ1dHRvbiB2YXJpYWJsZXNcbiAgJGdvdnVrLWludmVyc2UtYnV0dG9uLWNvbG91cjogJGdvdnVrLWludmVyc2UtYnV0dG9uLWJhY2tncm91bmQtY29sb3VyO1xuICAkZ292dWstaW52ZXJzZS1idXR0b24tdGV4dC1jb2xvdXI6ICRnb3Z1ay1pbnZlcnNlLWJ1dHRvbi10ZXh0LWNvbG91cjtcbiAgJGdvdnVrLWludmVyc2UtYnV0dG9uLWhvdmVyLWNvbG91cjogZ292dWstdGludCgkZ292dWstaW52ZXJzZS1idXR0b24tdGV4dC1jb2xvdXIsIDkwJSk7XG4gICRnb3Z1ay1pbnZlcnNlLWJ1dHRvbi1zaGFkb3ctY29sb3VyOiBnb3Z1ay1zaGFkZSgkZ292dWstaW52ZXJzZS1idXR0b24tdGV4dC1jb2xvdXIsIDMwJSk7XG5cbiAgLy8gQmVjYXVzZSB0aGUgc2hhZG93IChzMCkgaXMgdmlzdWFsbHkgJ3BhcnQgb2YnIHRoZSBidXR0b24sIHdlIG5lZWQgdG8gcmVkdWNlXG4gIC8vIHRoZSBoZWlnaHQgb2YgdGhlIGJ1dHRvbiB0byBjb21wZW5zYXRlIGJ5IGFkanVzdGluZyBpdHMgcGFkZGluZyAoczEpIGFuZFxuICAvLyBpbmNyZWFzZSB0aGUgYm90dG9tIG1hcmdpbiB0byBpbmNsdWRlIGl0IChzMikuXG4gICRidXR0b24tc2hhZG93LXNpemU6ICRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1lbGVtZW50O1xuXG4gIC5nb3Z1ay1idXR0b24ge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDE5LCAkbGluZS1oZWlnaHQ6IDE5cHgpO1xuXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDYsIFwiYm90dG9tXCIsICRhZGp1c3RtZW50OiAkYnV0dG9uLXNoYWRvdy1zaXplKTsgLy8gczJcbiAgICBwYWRkaW5nOiAoZ292dWstc3BhY2luZygyKSAtICRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1lbGVtZW50KSBnb3Z1ay1zcGFjaW5nKDIpXG4gICAgICAoZ292dWstc3BhY2luZygyKSAtICRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1lbGVtZW50IC0gKCRidXR0b24tc2hhZG93LXNpemUgLyAyKSk7IC8vIHMxXG4gICAgYm9yZGVyOiAkZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZWxlbWVudCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGNvbG9yOiAkZ292dWstYnV0dG9uLXRleHQtY29sb3VyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnb3Z1ay1idXR0b24tY29sb3VyO1xuICAgIGJveC1zaGFkb3c6IDAgJGJ1dHRvbi1zaGFkb3ctc2l6ZSAwICRnb3Z1ay1idXR0b24tc2hhZG93LWNvbG91cjsgLy8gczBcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuXG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IHRhYmxldCkge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuXG4gICAgLy8gRW5zdXJlIHRoYXQgYW55IGdsb2JhbCBsaW5rIHN0eWxlcyBhcmUgb3ZlcnJpZGRlblxuICAgICY6bGluayxcbiAgICAmOnZpc2l0ZWQsXG4gICAgJjphY3RpdmUsXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGdvdnVrLWJ1dHRvbi10ZXh0LWNvbG91cjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG5cbiAgICAvLyBGaXggdW53YW50ZWQgYnV0dG9uIHBhZGRpbmcgaW4gRmlyZWZveFxuICAgICY6Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRnb3Z1ay1idXR0b24taG92ZXItY29sb3VyO1xuICAgIH1cblxuICAgICY6YWN0aXZlIHtcbiAgICAgIC8vIEJ1bXAgdGhlIGJ1dHRvbiBkb3duIHNvIGl0IGxvb2tzIGxpa2UgaXRzIGJlaW5nIHByZXNzZWQgaW5cbiAgICAgIHRvcDogJGJ1dHRvbi1zaGFkb3ctc2l6ZTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGdvdnVrLWZvY3VzLWNvbG91cjtcbiAgICAgIG91dGxpbmU6ICRnb3Z1ay1mb2N1cy13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCAkZ292dWstZm9jdXMtY29sb3VyO1xuICAgIH1cblxuICAgICY6Zm9jdXM6bm90KDphY3RpdmUpOm5vdCg6aG92ZXIpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGdvdnVrLWZvY3VzLWNvbG91cjtcbiAgICAgIGNvbG9yOiAkZ292dWstZm9jdXMtdGV4dC1jb2xvdXI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ292dWstZm9jdXMtY29sb3VyO1xuICAgICAgYm94LXNoYWRvdzogMCAycHggMCAkZ292dWstZm9jdXMtdGV4dC1jb2xvdXI7XG4gICAgfVxuXG4gICAgLy8gVGhlIGZvbGxvd2luZyBhZGp1c3RtZW50cyBkbyBub3Qgd29yayBmb3IgPGlucHV0IHR5cGU9XCJidXR0b25cIj4gYXNcbiAgICAvLyBub24tY29udGFpbmVyIGVsZW1lbnRzIGNhbm5vdCBpbmNsdWRlIHBzZXVkbyBlbGVtZW50cyAoaS5lLiA6OmJlZm9yZSkuXG5cbiAgICAvLyBVc2UgYSBwc2V1ZG8gZWxlbWVudCB0byBleHBhbmQgdGhlIGNsaWNrIHRhcmdldCBhcmVhIHRvIGluY2x1ZGUgdGhlXG4gICAgLy8gYnV0dG9uJ3Mgc2hhZG93IGFzIHdlbGwsIGluIGNhc2UgdXNlcnMgdHJ5IHRvIGNsaWNrIGl0LlxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuICAgICAgdG9wOiAtJGdvdnVrLWJvcmRlci13aWR0aC1mb3JtLWVsZW1lbnQ7XG4gICAgICByaWdodDogLSRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1lbGVtZW50O1xuICAgICAgYm90dG9tOiAtKCRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1lbGVtZW50ICsgJGJ1dHRvbi1zaGFkb3ctc2l6ZSk7XG4gICAgICBsZWZ0OiAtJGdvdnVrLWJvcmRlci13aWR0aC1mb3JtLWVsZW1lbnQ7XG5cbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgIC8vIFdoZW4gdGhlIGJ1dHRvbiBpcyBhY3RpdmUgaXQgaXMgc2hpZnRlZCBkb3duIGJ5ICRidXR0b24tc2hhZG93LXNpemUgdG9cbiAgICAvLyBkZW5vdGUgYSAncHJlc3NlZCcgc3RhdGUuIElmIHRoZSB1c2VyIGhhcHBlbmVkIHRvIGNsaWNrIGF0IHRoZSB2ZXJ5IHRvcFxuICAgIC8vIG9mIHRoZSBidXR0b24sIHRoZWlyIG1vdXNlIGlzIG5vIGxvbmdlciBvdmVyIHRoZSBidXR0b24gKGJlY2F1c2UgaXQgaGFzXG4gICAgLy8gJ21vdmVkIGJlbmVhdGggdGhlbScpIGFuZCBzbyB0aGUgY2xpY2sgZXZlbnQgaXMgbm90IGZpcmVkLlxuICAgIC8vXG4gICAgLy8gVGhpcyBjb3JyZWN0cyB0aGF0IGJ5IHNoaWZ0aW5nIHRoZSB0b3Agb2YgdGhlIHBzZXVkbyBlbGVtZW50IHNvIHRoYXQgaXRcbiAgICAvLyBjb250aW51ZXMgdG8gY292ZXIgdGhlIGFyZWEgdGhhdCB0aGUgdXNlciBvcmlnaW5hbGx5IGNsaWNrZWQsIHdoaWNoIG1lYW5zXG4gICAgLy8gdGhlIGNsaWNrIGV2ZW50IGlzIHN0aWxsIGZpcmVkLlxuICAgIC8vXG4gICAgLy8g8J+OiVxuICAgICY6YWN0aXZlOjpiZWZvcmUge1xuICAgICAgdG9wOiAtKCRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1lbGVtZW50ICsgJGJ1dHRvbi1zaGFkb3ctc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWJ1dHRvbltkaXNhYmxlZF0ge1xuICAgIG9wYWNpdHk6ICgwLjUpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ292dWstYnV0dG9uLWNvbG91cjtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuXG4gICAgJjphY3RpdmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgYm94LXNoYWRvdzogMCAkYnV0dG9uLXNoYWRvdy1zaXplIDAgJGdvdnVrLWJ1dHRvbi1zaGFkb3ctY29sb3VyOyAvLyBzMFxuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1idXR0b24tLXNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdvdnVrLXNlY29uZGFyeS1idXR0b24tY29sb3VyO1xuICAgIGJveC1zaGFkb3c6IDAgJGJ1dHRvbi1zaGFkb3ctc2l6ZSAwICRnb3Z1ay1zZWNvbmRhcnktYnV0dG9uLXNoYWRvdy1jb2xvdXI7XG5cbiAgICAmLFxuICAgICY6bGluayxcbiAgICAmOnZpc2l0ZWQsXG4gICAgJjphY3RpdmUsXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGdvdnVrLXNlY29uZGFyeS1idXR0b24tdGV4dC1jb2xvdXI7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ292dWstc2Vjb25kYXJ5LWJ1dHRvbi1ob3Zlci1jb2xvdXI7XG5cbiAgICAgICZbZGlzYWJsZWRdIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdvdnVrLXNlY29uZGFyeS1idXR0b24tY29sb3VyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1idXR0b24tLXdhcm5pbmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnb3Z1ay13YXJuaW5nLWJ1dHRvbi1jb2xvdXI7XG4gICAgYm94LXNoYWRvdzogMCAkYnV0dG9uLXNoYWRvdy1zaXplIDAgJGdvdnVrLXdhcm5pbmctYnV0dG9uLXNoYWRvdy1jb2xvdXI7XG5cbiAgICAmLFxuICAgICY6bGluayxcbiAgICAmOnZpc2l0ZWQsXG4gICAgJjphY3RpdmUsXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGdvdnVrLXdhcm5pbmctYnV0dG9uLXRleHQtY29sb3VyO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdvdnVrLXdhcm5pbmctYnV0dG9uLWhvdmVyLWNvbG91cjtcblxuICAgICAgJltkaXNhYmxlZF0ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ292dWstd2FybmluZy1idXR0b24tY29sb3VyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1idXR0b24tLWludmVyc2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnb3Z1ay1pbnZlcnNlLWJ1dHRvbi1jb2xvdXI7XG4gICAgYm94LXNoYWRvdzogMCAkYnV0dG9uLXNoYWRvdy1zaXplIDAgJGdvdnVrLWludmVyc2UtYnV0dG9uLXNoYWRvdy1jb2xvdXI7XG5cbiAgICAmLFxuICAgICY6bGluayxcbiAgICAmOnZpc2l0ZWQsXG4gICAgJjphY3RpdmUsXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGdvdnVrLWludmVyc2UtYnV0dG9uLXRleHQtY29sb3VyO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdvdnVrLWludmVyc2UtYnV0dG9uLWhvdmVyLWNvbG91cjtcblxuICAgICAgJltkaXNhYmxlZF0ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ292dWstaW52ZXJzZS1idXR0b24tY29sb3VyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1idXR0b24tLXN0YXJ0IHtcbiAgICBAaW5jbHVkZSBnb3Z1ay10eXBvZ3JhcGh5LXdlaWdodC1ib2xkO1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQtc2l6ZSgkc2l6ZTogMjQsICRsaW5lLWhlaWdodDogMSk7XG5cbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBtaW4taGVpZ2h0OiBhdXRvO1xuXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cblxuICAuZ292dWstYnV0dG9uX19zdGFydC1pY29uIHtcbiAgICBtYXJnaW4tbGVmdDogZ292dWstc3BhY2luZygxKTtcblxuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiBkZXNrdG9wKSB7XG4gICAgICBtYXJnaW4tbGVmdDogZ292dWstc3BhY2luZygyKTtcbiAgICB9XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgLy8gV29yayBhcm91bmQgU1ZHcyBub3QgaW5oZXJpdGluZyBjb2xvciBmcm9tIHBhcmVudCBpbiBmb3JjZWQgY29sb3IgbW9kZVxuICAgIC8vIChodHRwczovL2dpdGh1Yi5jb20vdzNjL2Nzc3dnLWRyYWZ0cy9pc3N1ZXMvNjMxMClcbiAgICBmb3JjZWQtY29sb3ItYWRqdXN0OiBhdXRvO1xuICB9XG59XG5cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPV9pbmRleC5zY3NzLm1hcCAqL1xuIiwiQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL2NvbXBvbmVudC9lcnJvci1tZXNzYWdlXCIpIHtcbiAgLmdvdnVrLWVycm9yLW1lc3NhZ2Uge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDE5LCAkd2VpZ2h0OiBib2xkKTtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi10b3A6IDA7IC8vIFJlc2V0IGFueSBkZWZhdWx0IGJyb3dzZXIgbWFyZ2lucyBmb3IgcGFyYWdyYXBoc1xuICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMyk7XG4gICAgY2xlYXI6IGJvdGg7XG5cbiAgICBjb2xvcjogJGdvdnVrLWVycm9yLWNvbG91cjtcbiAgfVxufVxuXG4vKiMgc291cmNlTWFwcGluZ1VSTD1faW5kZXguc2Nzcy5tYXAgKi9cbiIsIkBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9jb21wb25lbnQvaGludFwiKSB7XG4gIC5nb3Z1ay1oaW50IHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiAxOSk7XG5cbiAgICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDMpO1xuXG4gICAgY29sb3I6ICRnb3Z1ay1zZWNvbmRhcnktdGV4dC1jb2xvdXI7XG4gIH1cblxuICAvLyBSZWR1Y2VzIG1hcmdpbi1ib3R0b20gb2YgaGludCB3aGVuIHVzZWQgYWZ0ZXIgdGhlIGRlZmF1bHQgbGFiZWwgKG5vIGNsYXNzKVxuICAvLyBvciBnb3Z1ay1sYWJlbC0tcyBmb3IgYmV0dGVyIHZlcnRpY2FsIGFsaWdubWVudC5cblxuICAvLyBUaGlzIGFkanVzdG1lbnQgd2lsbCBub3Qgd29yayB3aGVuIHRoZSBsYWJlbCBpcyBpbnNpZGUgdGhlIDxoMT4sIGhvd2V2ZXIgaXRcbiAgLy8gaXMgdW5saWtlbHkgdGhhdCB0aGUgZGVmYXVsdCBvciBnb3Z1ay1sYWJlbC0tcyBjbGFzcyB3b3VsZCBiZSB1c2VkIGluIHRoaXNcbiAgLy8gY2FzZS5cblxuICAvLyBUaGlzIGFkanVzdG1lbnQgd2lsbCBub3Qgd29yayBpbiBicm93c2VycyB0aGF0IGRvIG5vdCBzdXBwb3J0IDpub3QoKS5cbiAgLy8gVXNlcnMgd2l0aCB0aGVzZSBicm93c2VycyB3aWxsIHNlZSB0aGUgZGVmYXVsdCBzaXplIG1hcmdpbiAoNXB4IGxhcmdlcikuXG5cbiAgLmdvdnVrLWxhYmVsOm5vdCguZ292dWstbGFiZWwtLW0pOm5vdCguZ292dWstbGFiZWwtLWwpOm5vdCguZ292dWstbGFiZWwtLXhsKSArIC5nb3Z1ay1oaW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDIpO1xuICB9XG5cbiAgLy8gUmVkdWNlcyBtYXJnaW4tYm90dG9tIG9mIGhpbnQgd2hlbiB1c2VkIGFmdGVyIHRoZSBkZWZhdWx0IGxlZ2VuZCAobm8gY2xhc3MpXG4gIC8vIG9yIGdvdnVrLWZpZWxkc2V0X19sZWdlbmQtLXMgZm9yIGJldHRlciB2ZXJ0aWNhbCBhbGlnbm1lbnQuXG5cbiAgLy8gVGhpcyBhZGp1c3RtZW50IHdpbGwgbm90IHdvcmsgd2hlbiB0aGUgbGVnZW5kIGlzIG91dHNpZGUgdGhlIDxoMT4sIGhvd2V2ZXJcbiAgLy8gaXQgaXMgdW5saWtlbHkgdGhhdCB0aGUgZGVmYXVsdCBvciBnb3Z1ay1maWVsZHNldF9fbGVnZW5kLS1zIGNsYXNzIHdvdWxkIGJlXG4gIC8vIHVzZWQgaW4gdGhpcyBjYXNlLlxuXG4gIC8vIFRoaXMgYWRqdXN0bWVudCB3aWxsIG5vdCB3b3JrIGluIGJyb3dzZXJzIHRoYXQgZG8gbm90IHN1cHBvcnQgOm5vdCgpLlxuICAvLyBVc2VycyB3aXRoIHRoZXNlIGJyb3dzZXJzIHdpbGwgc2VlIHRoZSBkZWZhdWx0IHNpemUgbWFyZ2luICg1cHggbGFyZ2VyKS5cblxuICAvLyBwcmV0dGllci1pZ25vcmVcbiAgLmdvdnVrLWZpZWxkc2V0X19sZWdlbmQ6bm90KC5nb3Z1ay1maWVsZHNldF9fbGVnZW5kLS1tKTpub3QoLmdvdnVrLWZpZWxkc2V0X19sZWdlbmQtLWwpOm5vdCguZ292dWstZmllbGRzZXRfX2xlZ2VuZC0teGwpICsgLmdvdnVrLWhpbnQge1xuICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMik7XG4gIH1cblxuICAvLyBSZWR1Y2VzIHZpc3VhbCBzcGFjaW5nIG9mIGxlZ2VuZCB3aGVuIHRoZXJlIGlzIGEgaGludFxuICAuZ292dWstZmllbGRzZXRfX2xlZ2VuZCArIC5nb3Z1ay1oaW50IHtcbiAgICBtYXJnaW4tdG9wOiBnb3Z1ay1zcGFjaW5nKC0xKTtcbiAgfVxufVxuXG4vKiMgc291cmNlTWFwcGluZ1VSTD1faW5kZXguc2Nzcy5tYXAgKi9cbiIsIkBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9jb21wb25lbnQvbGFiZWxcIikge1xuICAuZ292dWstbGFiZWwge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDE5KTtcbiAgICBAaW5jbHVkZSBnb3Z1ay10ZXh0LWNvbG91cjtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgbWFyZ2luLWJvdHRvbTogZ292dWstc3BhY2luZygxKTtcbiAgfVxuXG4gIC8vIE1vZGlmaWVycyB0aGF0IG1ha2UgbGFiZWxzIGxvb2sgbW9yZSBsaWtlIHRoZWlyIGVxdWl2YWxlbnQgaGVhZGluZ3NcbiAgLmdvdnVrLWxhYmVsLS14bCxcbiAgLmdvdnVrLWxhYmVsLS1sLFxuICAuZ292dWstbGFiZWwtLW0ge1xuICAgIEBpbmNsdWRlIGdvdnVrLXR5cG9ncmFwaHktd2VpZ2h0LWJvbGQ7XG4gICAgbWFyZ2luLWJvdHRvbTogZ292dWstc3BhY2luZygzKTtcbiAgfVxuXG4gIC5nb3Z1ay1sYWJlbC0teGwge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQtc2l6ZSgkc2l6ZTogNDgpO1xuICB9XG5cbiAgLmdvdnVrLWxhYmVsLS1sIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250LXNpemUoJHNpemU6IDM2KTtcbiAgfVxuXG4gIC5nb3Z1ay1sYWJlbC0tbSB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udC1zaXplKCRzaXplOiAyNCk7XG4gIH1cblxuICAuZ292dWstbGFiZWwtLXMge1xuICAgIEBpbmNsdWRlIGdvdnVrLXR5cG9ncmFwaHktd2VpZ2h0LWJvbGQ7XG4gIH1cblxuICAvLyBXaGVuIHRoZSBsYWJlbCBpcyBuZXN0ZWQgaW5zaWRlIGEgaGVhZGluZywgb3ZlcnJpZGUgdGhlIGhlYWRpbmcgc28gdGhhdCBpdFxuICAvLyBkb2VzIG5vdCBoYXZlIGEgbWFyZ2luLiBFZmZlY3RpdmVseSB3ZSB3YW50IHRvIGJlIGFibGUgdG8gdHJlYXQgdGhlIGhlYWRpbmdcbiAgLy8gYXMgaWYgaXQgaXMgbm90IHRoZXJlLlxuICAvL1xuICAvLyBUaGlzIGJyZWFrcyBCRU0gY29udmVudGlvbnMgYmVjYXVzZSBpdCBleGlzdHMgYXMgYSBwYXJlbnQgb2YgdGhlICdibG9jaycsXG4gIC8vIHNvIHdlIGNhbid0IHJlYWxseSBjb25zaWRlciBhbiBlbGVtZW50LlxuICAuZ292dWstbGFiZWwtd3JhcHBlciB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPV9pbmRleC5zY3NzLm1hcCAqL1xuIiwiQGltcG9ydCBcIi4uL2Vycm9yLW1lc3NhZ2UvaW5kZXhcIjtcbkBpbXBvcnQgXCIuLi9oaW50L2luZGV4XCI7XG5AaW1wb3J0IFwiLi4vbGFiZWwvaW5kZXhcIjtcblxuQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL2NvbXBvbmVudC90ZXh0YXJlYVwiKSB7XG4gIC5nb3Z1ay10ZXh0YXJlYSB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTksICRsaW5lLWhlaWdodDogMS4yNSk7XG5cbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG4gICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNiwgXCJib3R0b21cIik7XG4gICAgcGFkZGluZzogZ292dWstc3BhY2luZygxKTtcblxuICAgIHJlc2l6ZTogdmVydGljYWw7XG5cbiAgICBib3JkZXI6ICRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1lbGVtZW50IHNvbGlkICRnb3Z1ay1pbnB1dC1ib3JkZXItY29sb3VyO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6ICRnb3Z1ay1mb2N1cy13aWR0aCBzb2xpZCAkZ292dWstZm9jdXMtY29sb3VyO1xuICAgICAgLy8gRW5zdXJlIG91dGxpbmUgYXBwZWFycyBvdXRzaWRlIG9mIHRoZSBlbGVtZW50XG4gICAgICBvdXRsaW5lLW9mZnNldDogMDtcbiAgICAgIC8vIERvdWJsZSB0aGUgYm9yZGVyIGJ5IGFkZGluZyBpdHMgd2lkdGggYWdhaW4uIFVzZSBgYm94LXNoYWRvd2AgdG8gZG9cbiAgICAgIC8vIHRoaXMgaW5zdGVhZCBvZiBjaGFuZ2luZyBgYm9yZGVyLXdpZHRoYCAod2hpY2ggY2hhbmdlcyBlbGVtZW50IHNpemUpXG4gICAgICAvLyBhbmQgc2luY2UgYG91dGxpbmVgIGlzIGFscmVhZHkgdXNlZCBmb3IgdGhlIHllbGxvdyBmb2N1cyBzdGF0ZS5cbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwICRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1lbGVtZW50O1xuICAgIH1cblxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLXRleHRhcmVhLS1lcnJvciB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZ292dWstZXJyb3ItY29sb3VyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICRnb3Z1ay1pbnB1dC1ib3JkZXItY29sb3VyO1xuICAgIH1cbiAgfVxufVxuXG4vKiMgc291cmNlTWFwcGluZ1VSTD1faW5kZXguc2Nzcy5tYXAgKi9cbiIsIkBpbXBvcnQgXCIuLi9lcnJvci1tZXNzYWdlL2luZGV4XCI7XG5AaW1wb3J0IFwiLi4vaGludC9pbmRleFwiO1xuQGltcG9ydCBcIi4uL2xhYmVsL2luZGV4XCI7XG5AaW1wb3J0IFwiLi4vdGV4dGFyZWEvaW5kZXhcIjtcblxuQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL2NvbXBvbmVudC9jaGFyYWN0ZXItY291bnRcIikge1xuICAuZ292dWstY2hhcmFjdGVyLWNvdW50IHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig2LCBcImJvdHRvbVwiKTtcblxuICAgIC5nb3Z1ay1mb3JtLWdyb3VwLFxuICAgIC5nb3Z1ay10ZXh0YXJlYSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDEpO1xuICAgIH1cblxuICAgIC8vIElmIHRoZSB0ZXh0YXJlYSBlbnRlcnMgdGhlIGVycm9yIHN0YXRlIHdoaWxzdCB0aGUgdXNlciBpcyBmb2N1c2VkIG9uIGl0LFxuICAgIC8vIHNob3cgdGhlIGVycm9yIHN0YXRlLiBUaGlzIHByZXNlbnRzIGZlZWRiYWNrIHRvIHRoZSB1c2VyIHRoYXQgdGhlIHZhbHVlXG4gICAgLy8gaGFzIGJlY29tZSBpbnZhbGlkIHdpdGhvdXQgbmVlZGluZyB0byBzZWUgdGhlIGNvdW50ZXIuXG4gICAgLmdvdnVrLXRleHRhcmVhLS1lcnJvcjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICRnb3Z1ay1lcnJvci1jb2xvdXI7XG4gICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAkZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZWxlbWVudCAkZ292dWstZXJyb3ItY29sb3VyO1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1jaGFyYWN0ZXItY291bnRfX21lc3NhZ2Uge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQtdGFidWxhci1udW1iZXJzO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIC8vIFplcm8td2lkdGggc3BhY2UgdGhhdCB3aWxsIHJlc2VydmUgdmVydGljYWwgc3BhY2Ugd2hlbiBubyBoaW50IGlzXG4gICAgICAvLyBwcm92aWRlZCBhczpcbiAgICAgIC8vIC0gc2V0dGluZyBhIG1pbi1oZWlnaHQgaXMgbm90IHBvc3NpYmxlIHdpdGhvdXQgYSBtYWdpYyBudW1iZXIgYmVjYXVzZVxuICAgICAgLy8gICB0aGUgbGluZS1oZWlnaHQgaXMgc2V0IGJ5IHRoZSBgZ292dWstZm9udGAgY2FsbCBhYm92ZVxuICAgICAgLy8gLSB1c2luZyBgOmVtcHR5YCBpcyBub3QgcG9zc2libGUgYXMgdGhlIGhpbnQgbWFjcm8gb3V0cHV0cyBsaW5lIGJyZWFrc1xuICAgICAgY29udGVudDogXCJcXDIwMEJcIjtcbiAgICB9XG4gIH1cblxuICAuZ292dWstY2hhcmFjdGVyLWNvdW50X19tZXNzYWdlLS1kaXNhYmxlZCB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG59XG5cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPV9pbmRleC5zY3NzLm1hcCAqL1xuIiwiQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL2NvbXBvbmVudC9maWVsZHNldFwiKSB7XG4gIC5nb3Z1ay1maWVsZHNldCB7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBAaW5jbHVkZSBnb3Z1ay1jbGVhcmZpeDtcbiAgfVxuXG4gIC8vIEZpeCBmb3IgRmlyZWZveCA8IDUzIChodHRwczovL2J1Z3ppbC5sYS81MDQ2MjIpXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLXR5cGUtbm8tdW5rbm93biAtLSBJZ25vcmUgJ3g6LW1vei1hbnktbGluaydcbiAgQHN1cHBvcnRzIG5vdCAoY2FyZXQtY29sb3I6IGF1dG8pIHtcbiAgICAuZ292dWstZmllbGRzZXQsXG4gICAgeDotbW96LWFueS1saW5rIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgfVxuICB9XG4gIC8vIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItdHlwZS1uby11bmtub3duXG5cbiAgLmdvdnVrLWZpZWxkc2V0X19sZWdlbmQge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDE5KTtcbiAgICBAaW5jbHVkZSBnb3Z1ay10ZXh0LWNvbG91cjtcblxuICAgIC8vIEZpeCBsZWdlbmQgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRVxuICAgIC8vIDEuIElFOS0xMSAmIEVkZ2UgMTItMTNcbiAgICAvLyAyLiBJRTgtMTFcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG4gICAgZGlzcGxheTogdGFibGU7IC8vIDJcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIDFcbiAgICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDIpO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvLyAxXG4gIH1cblxuICAvLyBNb2RpZmllcnMgdGhhdCBtYWtlIGxlZ2VuZHMgbG9vayBtb3JlIGxpa2UgdGhlaXIgZXF1aXZhbGVudCBoZWFkaW5nc1xuICAuZ292dWstZmllbGRzZXRfX2xlZ2VuZC0teGwsXG4gIC5nb3Z1ay1maWVsZHNldF9fbGVnZW5kLS1sLFxuICAuZ292dWstZmllbGRzZXRfX2xlZ2VuZC0tbSB7XG4gICAgQGluY2x1ZGUgZ292dWstdHlwb2dyYXBoeS13ZWlnaHQtYm9sZDtcbiAgICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDMpO1xuICB9XG5cbiAgLmdvdnVrLWZpZWxkc2V0X19sZWdlbmQtLXhsIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250LXNpemUoJHNpemU6IDQ4KTtcbiAgfVxuXG4gIC5nb3Z1ay1maWVsZHNldF9fbGVnZW5kLS1sIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250LXNpemUoJHNpemU6IDM2KTtcbiAgfVxuXG4gIC5nb3Z1ay1maWVsZHNldF9fbGVnZW5kLS1tIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250LXNpemUoJHNpemU6IDI0KTtcbiAgfVxuXG4gIC5nb3Z1ay1maWVsZHNldF9fbGVnZW5kLS1zIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay10eXBvZ3JhcGh5LXdlaWdodC1ib2xkO1xuICB9XG5cbiAgLy8gV2hlbiB0aGUgbGVnZW5kIGNvbnRhaW5zIGFuIEgxLCB3ZSB3YW50IHRoZSBIMSB0byBpbmhlcml0IGFsbCBzdHlsZXMgZnJvbVxuICAvLyB0aGUgbGVnZW5kLiBFZmZlY3RpdmVseSB0cmVhdCB0aGUgaGVhZGluZyBhcyBpZiBpdCBpcyBub3QgdGhlcmUuXG4gIC5nb3Z1ay1maWVsZHNldF9faGVhZGluZyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgfVxufVxuXG4vKiMgc291cmNlTWFwcGluZ1VSTD1faW5kZXguc2Nzcy5tYXAgKi9cbiIsIkBpbXBvcnQgXCIuLi9lcnJvci1tZXNzYWdlL2luZGV4XCI7XG5AaW1wb3J0IFwiLi4vZmllbGRzZXQvaW5kZXhcIjtcbkBpbXBvcnQgXCIuLi9oaW50L2luZGV4XCI7XG5AaW1wb3J0IFwiLi4vbGFiZWwvaW5kZXhcIjtcblxuQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL2NvbXBvbmVudC9jaGVja2JveGVzXCIpIHtcbiAgJGdvdnVrLXRvdWNoLXRhcmdldC1ndXR0ZXI6IDRweDtcbiAgJGdvdnVrLWNoZWNrYm94ZXMtc2l6ZTogNDBweDtcbiAgJGdvdnVrLXRvdWNoLXRhcmdldC1zaXplOiAoJGdvdnVrLWNoZWNrYm94ZXMtc2l6ZSArICRnb3Z1ay10b3VjaC10YXJnZXQtZ3V0dGVyKTtcbiAgJGdvdnVrLXNtYWxsLWNoZWNrYm94ZXMtc2l6ZTogMjRweDtcbiAgJGdvdnVrLWNoZWNrYm94ZXMtbGFiZWwtcGFkZGluZy1sZWZ0LXJpZ2h0OiBnb3Z1ay1zcGFjaW5nKDMpO1xuICAkZ292dWstY2hlY2tib3gtY2hlY2staG9yaXpvbnRhbC1wb3NpdGlvbjogMTBweDtcblxuICAuZ292dWstY2hlY2tib3hlc19faXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMik7XG4gIH1cblxuICAuZ292dWstY2hlY2tib3hlc19faXRlbTpsYXN0LWNoaWxkLFxuICAuZ292dWstY2hlY2tib3hlc19faXRlbTpsYXN0LW9mLXR5cGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAuZ292dWstY2hlY2tib3hlc19faW5wdXQge1xuICAgIC8vIEFsbG93IHRoZSBpbnB1dCB0byBzaXQgYWJvdmUgdGhlIGxhYmVsLCBlbmFibGluZyBpdHMgcHJvcGVyIGRldGVjdGlvblxuICAgIC8vIHdoZW4gZXhwbG9yaW5nIGJ5IHRvdWNoIG9yIHVzaW5nIGF1dG9tYXRpb24gdG9vbHMgbGlrZSBTZWxlbml1bVxuICAgIHotaW5kZXg6IDE7XG4gICAgd2lkdGg6ICRnb3Z1ay10b3VjaC10YXJnZXQtc2l6ZTtcbiAgICBoZWlnaHQ6ICRnb3Z1ay10b3VjaC10YXJnZXQtc2l6ZTtcbiAgICBtYXJnaW46IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cblxuICAuZ292dWstY2hlY2tib3hlc19fbGFiZWwge1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcblxuICAgIC8vIEVuc3VyZSB0aGF0IHRoZSB3aWR0aCBvZiB0aGUgbGFiZWwgaXMgbmV2ZXIgbW9yZSB0aGFuIHRoZSB3aWR0aCBvZiB0aGVcbiAgICAvLyBjb250YWluZXIgbWludXMgdGhlIGlucHV0IHdpZHRoIG1pbnVzIHRoZSBwYWRkaW5nIG9uIGVpdGhlciBzaWRlIG9mXG4gICAgLy8gdGhlIGxhYmVsLiBUaGlzIHByZXZlbnRzIHRoZSBsYWJlbCBmcm9tIGdvaW5nIG9udG8gdGhlIG5leHQgbGluZSBkdWUgdG9cbiAgICAvLyBfX2l0ZW0gdXNpbmcgZmxleC13cmFwIGJlY2F1c2Ugd2Ugd2FudCBoaW50cyBvbiBhIHNlcGFyYXRlIGxpbmUuXG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAjeygoJGdvdnVrLWNoZWNrYm94ZXMtbGFiZWwtcGFkZGluZy1sZWZ0LXJpZ2h0ICogMikgKyAkZ292dWstdG91Y2gtdGFyZ2V0LXNpemUpfSk7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nOiAoZ292dWstc3BhY2luZygxKSArICRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1lbGVtZW50KSBnb3Z1ay1zcGFjaW5nKDMpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAvLyByZW1vdmUgMzAwbXMgcGF1c2Ugb24gbW9iaWxlXG4gICAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG4gIH1cblxuICAvLyBbIF0gQ2hlY2sgYm94XG4gIC5nb3Z1ay1jaGVja2JveGVzX19sYWJlbDo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogKCRnb3Z1ay10b3VjaC10YXJnZXQtZ3V0dGVyIC8gMik7XG4gICAgbGVmdDogKCRnb3Z1ay10b3VjaC10YXJnZXQtZ3V0dGVyIC8gMik7XG4gICAgd2lkdGg6ICRnb3Z1ay1jaGVja2JveGVzLXNpemU7XG4gICAgaGVpZ2h0OiAkZ292dWstY2hlY2tib3hlcy1zaXplO1xuICAgIGJvcmRlcjogJGdvdnVrLWJvcmRlci13aWR0aC1mb3JtLWVsZW1lbnQgc29saWQgY3VycmVudGNvbG9yO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLy8g4pyUIENoZWNrIG1hcmtcbiAgLy9cbiAgLy8gVGhlIGNoZWNrIG1hcmsgaXMgYSBib3ggd2l0aCBhIGJvcmRlciBvbiB0aGUgbGVmdCBhbmQgYm90dG9tIHNpZGUgKOKUlOKUgOKUgCksXG4gIC8vIHJvdGF0ZWQgNDUgZGVncmVlc1xuICAuZ292dWstY2hlY2tib3hlc19fbGFiZWw6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICAgLy8gVXNlIFwibWFnaWMgbnVtYmVyc1wiIHRvIGRlZmluZSBzaGFwZSBhbmQgcG9zaXRpb24gb2YgY2hlY2sgbWFyayBiZWNhdXNlXG4gICAgLy8gdGhlIGNvbXBsZXhpdHkgb2YgdGhlIHNoYXBlIG1ha2VzIGl0IGRpZmZpY3VsdCB0byBjYWxjdWxhdGUgZHluYW1pY2FsbHkuXG4gICAgdG9wOiAxM3B4O1xuICAgIGxlZnQ6ICRnb3Z1ay1jaGVja2JveC1jaGVjay1ob3Jpem9udGFsLXBvc2l0aW9uO1xuICAgIHdpZHRoOiAyM3B4O1xuICAgIGhlaWdodDogMTJweDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgIGJvcmRlcjogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDAgNXB4IDVweDtcbiAgICAvLyBGaXggYnVnIGluIElFMTEgY2F1c2VkIGJ5IHRyYW5zZm9ybSByb3RhdGUgKC00NWRlZykuXG4gICAgLy8gU2VlOiBhbHBoYWdvdi9nb3Z1a19lbGVtZW50cy9pc3N1ZXMvNTE4XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgb3BhY2l0eTogMDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC5nb3Z1ay1jaGVja2JveGVzX19oaW50IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiBnb3Z1ay1zcGFjaW5nKC0xKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZ292dWstY2hlY2tib3hlcy1sYWJlbC1wYWRkaW5nLWxlZnQtcmlnaHQ7XG4gICAgcGFkZGluZy1sZWZ0OiAoJGdvdnVrLWNoZWNrYm94ZXMtbGFiZWwtcGFkZGluZy1sZWZ0LXJpZ2h0ICsgJGdvdnVrLXRvdWNoLXRhcmdldC1zaXplKTtcbiAgfVxuXG4gIC8vIFRoaXMgaXMgdG8gYnlwYXNzIGdvdnVrLWhpbnQncyBzcGVjaWZpY2l0eSBvbiBoaW50cyBmb2xsb3dpbmcgbGFiZWxzIGhhdmluZ1xuICAvLyBhIG1hcmdpbiBib3R0b20gb2YgMTBweCAoZ292dWstc3BhY2luZygyKSkuIEJlY2F1c2UgY2hlY2tib3hlcyBhcmUgZmxleGJveCxcbiAgLy8gdGhlIG1hcmdpbiBkb2Vzbid0IGNvbGxhcHNlIHNvIHdlIGhhdmUgdG8gZG8gdGhpcyBtYW51YWxseS5cbiAgLmdvdnVrLWxhYmVsOm5vdCguZ292dWstbGFiZWwtLW0pOm5vdCguZ292dWstbGFiZWwtLWwpOm5vdCguZ292dWstbGFiZWwtLXhsKSArIC5nb3Z1ay1jaGVja2JveGVzX19oaW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLy8gRm9jdXNlZCBzdGF0ZVxuICAuZ292dWstY2hlY2tib3hlc19faW5wdXQ6Zm9jdXMgKyAuZ292dWstY2hlY2tib3hlc19fbGFiZWw6OmJlZm9yZSB7XG4gICAgYm9yZGVyLXdpZHRoOiA0cHg7XG5cbiAgICAvLyBXaGVuIGNvbG91cnMgYXJlIG92ZXJyaWRkZW4sIHRoZSB5ZWxsb3cgYm94LXNoYWRvdyBiZWNvbWVzIGludmlzaWJsZVxuICAgIC8vIHdoaWNoIG1lYW5zIHRoZSBmb2N1cyBzdGF0ZSBpcyBsZXNzIG9idmlvdXMuIEJ5IGFkZGluZyBhIHRyYW5zcGFyZW50XG4gICAgLy8gb3V0bGluZSwgd2hpY2ggYmVjb21lcyBzb2xpZCAodGV4dC1jb2xvdXJlZCkgaW4gdGhhdCBjb250ZXh0LCB3ZSBlbnN1cmVcbiAgICAvLyB0aGUgZm9jdXMgcmVtYWlucyBjbGVhcmx5IHZpc2libGUuXG4gICAgb3V0bGluZTogJGdvdnVrLWZvY3VzLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIG91dGxpbmUtb2Zmc2V0OiAxcHg7XG5cbiAgICAvLyBXaGVuIGluIGFuIGV4cGxpY2l0IGZvcmNlZC1jb2xvciBtb2RlLCB3ZSBjYW4gdXNlIHRoZSBIaWdobGlnaHQgc3lzdGVtXG4gICAgLy8gY29sb3IgZm9yIHRoZSBvdXRsaW5lIHRvIGJldHRlciBtYXRjaCBmb2N1cyBzdGF0ZXMgb2YgbmF0aXZlIGNvbnRyb2xzXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gICAgICBvdXRsaW5lLWNvbG9yOiBIaWdobGlnaHQ7XG4gICAgfVxuXG4gICAgYm94LXNoYWRvdzogMCAwIDAgJGdvdnVrLWZvY3VzLXdpZHRoICRnb3Z1ay1mb2N1cy1jb2xvdXI7XG4gIH1cblxuICAvLyBTZWxlY3RlZCBzdGF0ZVxuICAuZ292dWstY2hlY2tib3hlc19faW5wdXQ6Y2hlY2tlZCArIC5nb3Z1ay1jaGVja2JveGVzX19sYWJlbDo6YWZ0ZXIge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAuZ292dWstY2hlY2tib3hlc19faW5wdXQ6ZGlzYWJsZWQsXG4gIC5nb3Z1ay1jaGVja2JveGVzX19pbnB1dDpkaXNhYmxlZCArIC5nb3Z1ay1jaGVja2JveGVzX19sYWJlbCB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgfVxuXG4gIC5nb3Z1ay1jaGVja2JveGVzX19pbnB1dDpkaXNhYmxlZCArIC5nb3Z1ay1jaGVja2JveGVzX19sYWJlbCxcbiAgLmdvdnVrLWNoZWNrYm94ZXNfX2lucHV0OmRpc2FibGVkIH4gLmdvdnVrLWhpbnQge1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBEaXZpZGVycyAoJ29yJylcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLmdvdnVrLWNoZWNrYm94ZXNfX2RpdmlkZXIge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDE5KTtcbiAgICBAaW5jbHVkZSBnb3Z1ay10ZXh0LWNvbG91cjtcbiAgICAkZ292dWstZGl2aWRlci1zaXplOiAkZ292dWstY2hlY2tib3hlcy1zaXplICFkZWZhdWx0O1xuICAgIHdpZHRoOiAkZ292dWstZGl2aWRlci1zaXplO1xuICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMik7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIENvbmRpdGlvbmFsIHJldmVhbHNcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gVGhlIG5hcnJvdyBib3JkZXIgaXMgdXNlZCBpbiB0aGUgY29uZGl0aW9uYWwgcmV2ZWFscyBiZWNhdXNlIHRoZSBib3JkZXIgaGFzXG4gIC8vIHRvIGJlIGFuIGV2ZW4gbnVtYmVyIGluIG9yZGVyIHRvIGJlIGNlbnRyZWQgdW5kZXIgdGhlIDQwcHggY2hlY2tib3ggb3IgcmFkaW8uXG4gICRjb25kaXRpb25hbC1ib3JkZXItd2lkdGg6ICRnb3Z1ay1ib3JkZXItd2lkdGgtbmFycm93O1xuICAvLyBDYWxjdWxhdGUgdGhlIGFtb3VudCBvZiBwYWRkaW5nIG5lZWRlZCB0byBrZWVwIHRoZSBib3JkZXIgY2VudGVyZWQgYWdhaW5zdCB0aGUgY2hlY2tib3guXG4gICRjb25kaXRpb25hbC1ib3JkZXItcGFkZGluZzogKCRnb3Z1ay10b3VjaC10YXJnZXQtc2l6ZSAvIDIpIC0gKCRjb25kaXRpb25hbC1ib3JkZXItd2lkdGggLyAyKTtcbiAgLy8gTW92ZSB0aGUgYm9yZGVyIGNlbnRlcmVkIHdpdGggdGhlIGNoZWNrYm94XG4gICRjb25kaXRpb25hbC1tYXJnaW4tbGVmdDogJGNvbmRpdGlvbmFsLWJvcmRlci1wYWRkaW5nO1xuICAvLyBNb3ZlIHRoZSBjb250ZW50cyBvZiB0aGUgY29uZGl0aW9uYWwgaW5saW5lIHdpdGggdGhlIGxhYmVsXG4gICRjb25kaXRpb25hbC1wYWRkaW5nLWxlZnQ6ICRjb25kaXRpb25hbC1ib3JkZXItcGFkZGluZyArICRnb3Z1ay1jaGVja2JveGVzLWxhYmVsLXBhZGRpbmctbGVmdC1yaWdodDtcblxuICAuZ292dWstY2hlY2tib3hlc19fY29uZGl0aW9uYWwge1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDQsIFwiYm90dG9tXCIpO1xuICAgIG1hcmdpbi1sZWZ0OiAkY29uZGl0aW9uYWwtbWFyZ2luLWxlZnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAkY29uZGl0aW9uYWwtcGFkZGluZy1sZWZ0O1xuICAgIGJvcmRlci1sZWZ0OiAkY29uZGl0aW9uYWwtYm9yZGVyLXdpZHRoIHNvbGlkICRnb3Z1ay1ib3JkZXItY29sb3VyO1xuXG4gICAgLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAmLS1oaWRkZW4ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmID4gOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gU21hbGwgY2hlY2tib3hlc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAuZ292dWstY2hlY2tib3hlcy0tc21hbGwge1xuICAgICRpbnB1dC1vZmZzZXQ6ICgkZ292dWstdG91Y2gtdGFyZ2V0LXNpemUgLSAkZ292dWstc21hbGwtY2hlY2tib3hlcy1zaXplKSAvIDI7XG5cbiAgICAuZ292dWstY2hlY2tib3hlc19faXRlbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC8vIFNoaWZ0IHRoZSB0b3VjaCB0YXJnZXQgaW50byB0aGUgbGVmdCBtYXJnaW4gc28gdGhhdCB0aGUgdmlzaWJsZSBlZGdlIG9mXG4gICAgLy8gdGhlIGNvbnRyb2wgaXMgYWxpZ25lZFxuICAgIC8vXG4gICAgLy8gICDilIZXaGF0IGNvbG91cnMgZG8geW91IGxpa2U/XG4gICAgLy8gIOKUjOKUhuKUgOKUgOKUgOKUkFxuICAgIC8vICDilILilIZbXSDilIIgUHVycGxlXG4gICAgLy8gIOKUlOKUhuKWsuKUgOKUgOKUmFxuICAgIC8vICDilrLilIbilJTilIAgQ2hlY2sgYm94IHBzZXVkbyBlbGVtZW50LCBhbGlnbmVkIHdpdGggbWFyZ2luXG4gICAgLy8gIOKUlOKUgOKUgOKUgCBUb3VjaCB0YXJnZXQgKGludmlzaWJsZSBpbnB1dCksIHNoaWZ0ZWQgaW50byB0aGUgbWFyZ2luXG4gICAgLmdvdnVrLWNoZWNrYm94ZXNfX2lucHV0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkaW5wdXQtb2Zmc2V0ICogLTE7XG4gICAgfVxuXG4gICAgLmdvdnVrLWNoZWNrYm94ZXNfX2xhYmVsIHtcbiAgICAgIC8vIENyZWF0ZSBhIHRpbnkgc3BhY2UgYmV0d2VlbiB0aGUgc21hbGwgY2hlY2tib3ggaG92ZXIgc3RhdGUgc28gdGhhdCBpdFxuICAgICAgLy8gZG9lc24ndCBjbGFzaCB3aXRoIHRoZSBsYWJlbFxuICAgICAgcGFkZGluZy1sZWZ0OiAxcHg7XG4gICAgfVxuXG4gICAgLy8gWyBdIENoZWNrIGJveFxuICAgIC8vXG4gICAgLy8gUmVkdWNlIHRoZSBzaXplIG9mIHRoZSBjaGVjayBib3ggWzFdLCB2ZXJ0aWNhbGx5IGNlbnRlciBpdCB3aXRoaW4gdGhlXG4gICAgLy8gdG91Y2ggdGFyZ2V0IFsyXVxuICAgIC8vIExlZnQgaGVyZSBpcyAwIGJlY2F1c2Ugd2UndmUgc2hpZnRlZCB0aGUgaW5wdXQgaW50byB0aGUgbGVmdCBtYXJnaW5cbiAgICAuZ292dWstY2hlY2tib3hlc19fbGFiZWw6OmJlZm9yZSB7XG4gICAgICB0b3A6ICRpbnB1dC1vZmZzZXQ7IC8vIDJcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogJGdvdnVrLXNtYWxsLWNoZWNrYm94ZXMtc2l6ZTsgLy8gMVxuICAgICAgaGVpZ2h0OiAkZ292dWstc21hbGwtY2hlY2tib3hlcy1zaXplOyAvLyAxXG4gICAgfVxuXG4gICAgLy8g4pyUIENoZWNrIG1hcmtcbiAgICAvL1xuICAgIC8vIFJlZHVjZSB0aGUgc2l6ZSBvZiB0aGUgY2hlY2sgbWFyayBhbmQgcmUtYWxpZ24gd2l0aGluIHRoZSBjaGVja2JveFxuICAgIC5nb3Z1ay1jaGVja2JveGVzX19sYWJlbDo6YWZ0ZXIge1xuICAgICAgdG9wOiAxN3B4O1xuXG4gICAgICAvLyBIb3Jpem9udGFsIHBvc2l0aW9uIGlzIGp1c3QgdGhlIG5vcm1hbCBzaXplZCBsZWZ0IHZhbHVlIGFjY291bnRpbmcgZm9yXG4gICAgICAvLyB0aGUgbmV3IHdpZHRoIG9mIHRoZSBzbWFsbGVyIGNoZWNrYm94XG4gICAgICBsZWZ0OiAoMTZweCAtICRnb3Z1ay1jaGVja2JveC1jaGVjay1ob3Jpem9udGFsLXBvc2l0aW9uKTtcbiAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgaGVpZ2h0OiA2LjVweDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAwIDNweCAzcHg7XG4gICAgfVxuXG4gICAgLy8gRml4IHBvc2l0aW9uIG9mIGhpbnQgd2l0aCBzbWFsbCBjaGVja2JveGVzXG4gICAgLy9cbiAgICAvLyBEbyBub3QgdXNlIGhpbnRzIHdpdGggc21hbGwgY2hlY2tib3hlcyDigJMgYmVjYXVzZSB0aGV5J3JlIHdpdGhpbiB0aGUgaW5wdXRcbiAgICAvLyB3cmFwcGVyIHRoZXkgdHJpZ2dlciB0aGUgaG92ZXIgc3RhdGUsIGJ1dCBjbGlja2luZyB0aGVtIGRvZXNuJ3QgYWN0dWFsbHlcbiAgICAvLyBhY3RpdmF0ZSB0aGUgY29udHJvbC5cbiAgICAvL1xuICAgIC8vIChJZiB5b3UgZG8gdXNlIHRoZW0sIHRoZXkgd29uJ3QgbG9vayBjb21wbGV0ZWx5IGJyb2tlbi4uLiBidXQgc2VyaW91c2x5LFxuICAgIC8vIGRvbid0IHVzZSB0aGVtKVxuICAgIC5nb3Z1ay1jaGVja2JveGVzX19oaW50IHtcbiAgICAgIHBhZGRpbmctbGVmdDogKCRnb3Z1ay1zbWFsbC1jaGVja2JveGVzLXNpemUgKyAkaW5wdXQtb2Zmc2V0KTtcbiAgICB9XG5cbiAgICAvLyBBbGlnbiBjb25kaXRpb25hbCByZXZlYWxzIHdpdGggc21hbGwgY2hlY2tib3hlc1xuICAgIC5nb3Z1ay1jaGVja2JveGVzX19jb25kaXRpb25hbCB7XG4gICAgICAkbWFyZ2luLWxlZnQ6ICgkZ292dWstc21hbGwtY2hlY2tib3hlcy1zaXplIC8gMikgLSAoJGNvbmRpdGlvbmFsLWJvcmRlci13aWR0aCAvIDIpO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRtYXJnaW4tbGVmdDtcbiAgICAgIHBhZGRpbmctbGVmdDogKCRnb3Z1ay10b3VjaC10YXJnZXQtc2l6ZSAtICRpbnB1dC1vZmZzZXQpIC0gKCRtYXJnaW4tbGVmdCArICRjb25kaXRpb25hbC1ib3JkZXItd2lkdGgpO1xuICAgIH1cblxuICAgIC5nb3Z1ay1jaGVja2JveGVzX19kaXZpZGVyIHtcbiAgICAgIHdpZHRoOiAkZ292dWstc21hbGwtY2hlY2tib3hlcy1zaXplO1xuICAgICAgbWFyZ2luLWJvdHRvbTogZ292dWstc3BhY2luZygxKTtcbiAgICB9XG5cbiAgICAvLyBIb3ZlciBzdGF0ZSBmb3Igc21hbGwgY2hlY2tib3hlcy5cbiAgICAvL1xuICAgIC8vIFdlIHVzZSBhIGhvdmVyIHN0YXRlIGZvciBzbWFsbCBjaGVja2JveGVzIGJlY2F1c2UgdGhlIHRvdWNoIHRhcmdldCBzaXplXG4gICAgLy8gaXMgc28gbXVjaCBsYXJnZXIgdGhhbiB0aGVpciB2aXNpYmxlIHNpemUsIGFuZCBzbyB3ZSBuZWVkIHRvIHByb3ZpZGVcbiAgICAvLyBmZWVkYmFjayB0byB0aGUgdXNlciBhcyB0byB3aGljaCBjaGVja2JveCB0aGV5IHdpbGwgc2VsZWN0IHdoZW4gdGhlaXJcbiAgICAvLyBjdXJzb3IgaXMgb3V0c2lkZSBvZiB0aGUgdmlzaWJsZSBhcmVhLlxuICAgIC5nb3Z1ay1jaGVja2JveGVzX19pdGVtOmhvdmVyIC5nb3Z1ay1jaGVja2JveGVzX19pbnB1dDpub3QoOmRpc2FibGVkKSArIC5nb3Z1ay1jaGVja2JveGVzX19sYWJlbDo6YmVmb3JlIHtcbiAgICAgIC8vIEZvcmNlZCBjb2xvdXJzIG1vZGVzIHRlbmQgdG8gaWdub3JlIGJveC1zaGFkb3cuXG4gICAgICAvLyBBcHBseSBhbiBvdXRsaW5lIGZvciB0aG9zZSBtb2RlcyB0byB1c2UgaW5zdGVhZC5cbiAgICAgIG91dGxpbmU6ICRnb3Z1ay1mb2N1cy13aWR0aCBkYXNoZWQgdHJhbnNwYXJlbnQ7XG4gICAgICBvdXRsaW5lLW9mZnNldDogMXB4O1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGdvdnVrLWhvdmVyLXdpZHRoICRnb3Z1ay1ob3Zlci1jb2xvdXI7XG4gICAgfVxuXG4gICAgLy8gQmVjYXVzZSB3ZSd2ZSBvdmVycmlkZGVuIHRoZSBib3JkZXItc2hhZG93IHByb3ZpZGVkIGJ5IHRoZSBmb2N1cyBzdGF0ZSxcbiAgICAvLyB3ZSBuZWVkIHRvIHJlZGVmaW5lIHRoYXQgdG9vLlxuICAgIC8vXG4gICAgLy8gV2UgdXNlIHR3byBib3ggc2hhZG93cywgb25lIHRoYXQgcmVzdG9yZXMgdGhlIG9yaWdpbmFsIGZvY3VzIHN0YXRlIFsxXVxuICAgIC8vIGFuZCBhbm90aGVyIHRoYXQgdGhlbiBhcHBsaWVzIHRoZSBob3ZlciBzdGF0ZSBbMl0uXG4gICAgLmdvdnVrLWNoZWNrYm94ZXNfX2l0ZW06aG92ZXIgLmdvdnVrLWNoZWNrYm94ZXNfX2lucHV0OmZvY3VzICsgLmdvdnVrLWNoZWNrYm94ZXNfX2xhYmVsOjpiZWZvcmUge1xuICAgICAgLy8gU2V0IGRpZmZlcmVudCBIQ00gY29sb3VyIHdoZW4gd2UgaGF2ZSBib3RoIGhvdmVyL2ZvY3VzIGFwcGxpZWQgYXQgb25jZVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gICAgICAgIG91dGxpbmUtY29sb3I6IEhpZ2hsaWdodDtcbiAgICAgIH1cbiAgICAgIC8vIHByZXR0aWVyLWlnbm9yZVxuICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgMCAwIDAgJGdvdnVrLWZvY3VzLXdpZHRoICRnb3Z1ay1mb2N1cy1jb2xvdXIsIC8vIDFcbiAgICAgICAgMCAwIDAgJGdvdnVrLWhvdmVyLXdpZHRoICRnb3Z1ay1ob3Zlci1jb2xvdXI7IC8vIDJcbiAgICB9XG5cbiAgICAvLyBGb3IgZGV2aWNlcyB0aGF0IGV4cGxpY2l0bHkgZG9uJ3Qgc3VwcG9ydCBob3ZlciwgZG9uJ3QgcHJvdmlkZSBhIGhvdmVyXG4gICAgLy8gc3RhdGUgKGUuZy4gb24gdG91Y2ggZGV2aWNlcyBsaWtlIGlPUykuXG4gICAgLy9cbiAgICAvLyBXZSBjYW4ndCB1c2UgYEBtZWRpYSAoaG92ZXI6IGhvdmVyKWAgYmVjYXVzZSB3ZSB3b3VsZG4ndCBnZXQgdGhlIGhvdmVyXG4gICAgLy8gc3RhdGUgaW4gYnJvd3NlcnMgdGhhdCBkb24ndCBzdXBwb3J0IGBAbWVkaWEgKGhvdmVyKWAgKGxpa2UgSW50ZXJuZXRcbiAgICAvLyBFeHBsb3Jlcikg4oCTIHNvIHdlIGhhdmUgdG8gJ3VuZG8nIHRoZSBob3ZlciBzdGF0ZSBpbnN0ZWFkLlxuICAgIEBtZWRpYSAoaG92ZXI6IG5vbmUpLCAocG9pbnRlcjogY29hcnNlKSB7XG4gICAgICAuZ292dWstY2hlY2tib3hlc19faXRlbTpob3ZlciAuZ292dWstY2hlY2tib3hlc19faW5wdXQ6bm90KDpkaXNhYmxlZCkgKyAuZ292dWstY2hlY2tib3hlc19fbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IGluaXRpYWw7XG4gICAgICB9XG5cbiAgICAgIC5nb3Z1ay1jaGVja2JveGVzX19pdGVtOmhvdmVyIC5nb3Z1ay1jaGVja2JveGVzX19pbnB1dDpmb2N1cyArIC5nb3Z1ay1jaGVja2JveGVzX19sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGdvdnVrLWZvY3VzLXdpZHRoICRnb3Z1ay1mb2N1cy1jb2xvdXI7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPV9pbmRleC5zY3NzLm1hcCAqL1xuIiwiQGltcG9ydCBcIi4uL2J1dHRvbi9pbmRleFwiO1xuXG5AaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvY29tcG9uZW50L2Nvb2tpZS1iYW5uZXJcIikge1xuICAvLyBUaGlzIG5lZWRzIHRvIGJlIGtlcHQgaW4gc3luYyB3aXRoIHRoZSBoZWFkZXIgY29tcG9uZW50J3Mgc3R5bGVzXG4gICRib3JkZXItYm90dG9tLXdpZHRoOiBnb3Z1ay1zcGFjaW5nKDIpO1xuXG4gIC5nb3Z1ay1jb29raWUtYmFubmVyIHtcbiAgICBwYWRkaW5nLXRvcDogZ292dWstc3BhY2luZyg0KTtcbiAgICAvLyBUaGUgY29tcG9uZW50IGRvZXMgbm90IHNldCBib3R0b20gc3BhY2luZy4gVGhlIGJvdHRvbSBzcGFjaW5nIHNob3VsZCBiZVxuICAgIC8vIGNyZWF0ZWQgYnkgdGhlIGl0ZW1zIGluc2lkZSB0aGUgY29tcG9uZW50LlxuXG4gICAgLy8gVmlzdWFsbHkgc2VwYXJhdGUgdGhlIGNvb2tpZSBiYW5uZXIgZnJvbSBjb250ZW50IHVuZGVybmVhdGggd2hlbiB1c2VyXG4gICAgLy8gY2hhbmdlcyBjb2xvdXJzIGluIHRoZWlyIGJyb3dzZXIuXG4gICAgYm9yZGVyLWJvdHRvbTogJGJvcmRlci1ib3R0b20td2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgICBAaW5jbHVkZSBfZ292dWstcmVicmFuZChcbiAgICAgIFwiYmFja2dyb3VuZC1jb2xvclwiLFxuICAgICAgJGdvdnVrLXRlbXBsYXRlLWJhY2tncm91bmQtY29sb3VyLFxuICAgICAgJF9nb3Z1ay1yZWJyYW5kLXRlbXBsYXRlLWJhY2tncm91bmQtY29sb3VyXG4gICAgKTtcbiAgfVxuXG4gIC8vIFN1cHBvcnQgb2xkZXIgYnJvd3NlcnMgd2hpY2ggZG9uJ3QgaGlkZSBlbGVtZW50cyB3aXRoIHRoZSBgaGlkZGVuYCBhdHRyaWJ1dGVcbiAgLy8gd2hlbiB1c2VyIGhpZGVzIHRoZSB3aG9sZSBjb29raWUgYmFubmVyIHdpdGggYSAnSGlkZScgYnV0dG9uLlxuICAuZ292dWstY29va2llLWJhbm5lcltoaWRkZW5dIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLmdvdnVrLWNvb2tpZS1iYW5uZXJfX21lc3NhZ2Uge1xuICAgIC8vIFJlbW92ZSB0aGUgZXh0cmEgaGVpZ2h0IGFkZGVkIGJ5IHRoZSBzZXBhcmF0b3IgYm9yZGVyLlxuICAgIG1hcmdpbi1ib3R0b206IC0kYm9yZGVyLWJvdHRvbS13aWR0aDtcblxuICAgICZbaGlkZGVuXSB7XG4gICAgICAvLyBTdXBwb3J0IG9sZGVyIGJyb3dzZXJzIHdoaWNoIGRvbid0IGhpZGUgZWxlbWVudHMgd2l0aCB0aGUgYGhpZGRlbmBcbiAgICAgIC8vIGF0dHJpYnV0ZSB3aGVuIHRoZSB2aXNpYmlsaXR5IG9mIGNvb2tpZSBhbmQgcmVwbGFjZW1lbnQgbWVzc2FnZXMgaXNcbiAgICAgIC8vIHRvZ2dsZWQuXG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgLy8gUmVtb3ZlIHRoZSBuYXRpdmUgdmlzaWJsZSBmb2N1cyBpbmRpY2F0b3Igd2hlbiB0aGUgZWxlbWVudCBpc1xuICAgICAgLy8gcHJvZ3JhbW1hdGljYWxseSBmb2N1c2VkLlxuICAgICAgLy9cbiAgICAgIC8vIFRoZSBmb2N1c2VkIGNvb2tpZSBiYW5uZXIgaXMgdGhlIGZpcnN0IGVsZW1lbnQgb24gdGhlIHBhZ2UgYW5kIHRoZSBsYXN0XG4gICAgICAvLyB0aGluZyB0aGUgdXNlciBpbnRlcmFjdGVkIHdpdGggcHJpb3IgdG8gaXQgZ2FpbmluZyBmb2N1cy4gV2UgdGhlcmVmb3JlXG4gICAgICAvLyBhc3N1bWUgdGhhdCBtb3ZpbmcgZm9jdXMgdG8gaXQgaXMgbm90IGdvaW5nIHRvIHN1cnByaXNlIHVzZXJzLCBhbmQgdGhhdFxuICAgICAgLy8gZ2l2aW5nIGl0IGEgdmlzaWJsZSBmb2N1cyBpbmRpY2F0b3IgY291bGQgYmUgbW9yZSBjb25mdXNpbmcgdGhhblxuICAgICAgLy8gaGVscGZ1bCwgZXNwZWNpYWxseSBhcyB0aGUgZWxlbWVudCBpcyBub3Qgbm9ybWFsbHkga2V5Ym9hcmQgb3BlcmFibGUuXG4gICAgICAvL1xuICAgICAgLy8gV2UgaGF2ZSBmbGFnZ2VkIHRoaXMgaW4gdGhlIHJlc2VhcmNoIHNlY3Rpb24gb2YgdGhlIGd1aWRhbmNlIGFzXG4gICAgICAvLyBzb21ldGhpbmcgdG8gbW9uaXRvci5cbiAgICAgIC8vXG4gICAgICAvLyBBIHJlbGF0ZWQgZGlzY3Vzc2lvbjogaHR0cHM6Ly9naXRodWIuY29tL3czYy93Y2FnL2lzc3Vlcy8xMDAxXG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4vKiMgc291cmNlTWFwcGluZ1VSTD1faW5kZXguc2Nzcy5tYXAgKi9cbiIsIkBpbXBvcnQgXCIuLi9lcnJvci1tZXNzYWdlL2luZGV4XCI7XG5AaW1wb3J0IFwiLi4vaGludC9pbmRleFwiO1xuQGltcG9ydCBcIi4uL2xhYmVsL2luZGV4XCI7XG5cbkBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9jb21wb25lbnQvaW5wdXRcIikge1xuICAuZ292dWstaW5wdXQge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDE5KTtcblxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBnb3Z1ay1weC10by1yZW0oNDBweCk7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nOiBnb3Z1ay1zcGFjaW5nKDEpO1xuICAgIC8vIFNldHRpbmcgYW55IGJhY2tncm91bmQtY29sb3IgbWFrZXMgdGV4dCBpbnZpc2libGUgd2hlbiBjaGFuZ2luZyBjb2xvdXJzXG4gICAgLy8gdG8gZGFyayBiYWNrZ3JvdW5kcyBpbiBGaXJlZm94IChodHRwczovL2J1Z3ppbC5sYS8xMzM1NDc2KS4gQXNcbiAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yIGFuZCBjb2xvciBuZWVkIHRvIGFsd2F5cyBiZSBzZXQgdG9nZXRoZXIsIGNvbG9yIHNob3VsZFxuICAgIC8vIG5vdCBiZSBzZXQgZWl0aGVyXG4gICAgYm9yZGVyOiAkZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZWxlbWVudCBzb2xpZCAkZ292dWstaW5wdXQtYm9yZGVyLWNvbG91cjtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgLy8gRGlzYWJsZSBpbm5lciBzaGFkb3cgYW5kIHJlbW92ZSByb3VuZGVkIGNvcm5lcnNcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiAkZ292dWstZm9jdXMtd2lkdGggc29saWQgJGdvdnVrLWZvY3VzLWNvbG91cjtcbiAgICAgIC8vIEVuc3VyZSBvdXRsaW5lIGFwcGVhcnMgb3V0c2lkZSBvZiB0aGUgZWxlbWVudFxuICAgICAgb3V0bGluZS1vZmZzZXQ6IDA7XG4gICAgICAvLyBEb3VibGUgdGhlIGJvcmRlciBieSBhZGRpbmcgaXRzIHdpZHRoIGFnYWluLiBVc2UgYGJveC1zaGFkb3dgIGZvciB0aGlzXG4gICAgICAvLyBpbnN0ZWFkIG9mIGNoYW5naW5nIGBib3JkZXItd2lkdGhgIC0gdGhpcyBpcyBmb3IgY29uc2lzdGVuY3kgd2l0aFxuICAgICAgLy8gY29tcG9uZW50cyBzdWNoIGFzIHRleHRhcmVhIHdoZXJlIHdlIGF2b2lkIGNoYW5naW5nIGBib3JkZXItd2lkdGhgIGFzXG4gICAgICAvLyBpdCB3aWxsIGNoYW5nZSB0aGUgZWxlbWVudCBzaXplLiBBbHNvLCBgb3V0bGluZWAgY2Fubm90IGJlIHV0aWxpc2VkXG4gICAgICAvLyBoZXJlIGFzIGl0IGlzIGFscmVhZHkgdXNlZCBmb3IgdGhlIHllbGxvdyBmb2N1cyBzdGF0ZS5cbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwICRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1lbGVtZW50O1xuICAgIH1cblxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWlucHV0Ojotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLFxuICAuZ292dWstaW5wdXQ6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuICAgIG1hcmdpbjogMDtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAuZ292dWstaW5wdXRbdHlwZT1cIm51bWJlclwiXSB7XG4gICAgLW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIH1cblxuICAuZ292dWstaW5wdXQtLWVycm9yIHtcbiAgICBib3JkZXItY29sb3I6ICRnb3Z1ay1lcnJvci1jb2xvdXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGdvdnVrLWlucHV0LWJvcmRlci1jb2xvdXI7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWlucHV0LS1leHRyYS1sZXR0ZXItc3BhY2luZyB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udC10YWJ1bGFyLW51bWJlcnM7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgfVxuXG4gIC8vIGVtIG1lYXN1cmVtZW50cyBhcmUgYmFzZWQgb24gdGhlIHBvaW50IHNpemUgb2YgdGhlIHR5cGVmYWNlXG4gIC8vIEV4dHJhIHNwYWNlIGlzIGFkZGVkIG9uIHRoZSByaWdodCB0byBhbGxvdyBmb3IgdGhlIFNhZmFyaSBwcmVmaWxsIGljb25cblxuICAuZ292dWstaW5wdXQtLXdpZHRoLTMwIHtcbiAgICBtYXgtd2lkdGg6IDI5LjVlbTtcbiAgfVxuXG4gIC5nb3Z1ay1pbnB1dC0td2lkdGgtMjAge1xuICAgIG1heC13aWR0aDogMjAuNWVtO1xuICB9XG5cbiAgLmdvdnVrLWlucHV0LS13aWR0aC0xMCB7XG4gICAgbWF4LXdpZHRoOiAxMS41ZW07XG4gIH1cblxuICAuZ292dWstaW5wdXQtLXdpZHRoLTUge1xuICAgIG1heC13aWR0aDogNS41ZW07XG4gIH1cblxuICAuZ292dWstaW5wdXQtLXdpZHRoLTQge1xuICAgIG1heC13aWR0aDogNC41ZW07XG4gIH1cblxuICAuZ292dWstaW5wdXQtLXdpZHRoLTMge1xuICAgIG1heC13aWR0aDogMy43NWVtO1xuICB9XG5cbiAgLmdvdnVrLWlucHV0LS13aWR0aC0yIHtcbiAgICBtYXgtd2lkdGg6IDIuNzVlbTtcbiAgfVxuXG4gIC5nb3Z1ay1pbnB1dF9fd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgIC5nb3Z1ay1pbnB1dCB7XG4gICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB9XG5cbiAgICAuZ292dWstaW5wdXQ6Zm9jdXMge1xuICAgICAgLy8gSGFjayB0byBzdG9wIGZvY3VzIHN0eWxlIGJlaW5nIG92ZXJsYXBwZWQgYnkgdGhlIHN1ZmZpeFxuICAgICAgei1pbmRleDogMTtcbiAgICB9XG5cbiAgICAvLyBTcGxpdCBwcmVmaXgvc3VmZml4IG9udG8gc2VwYXJhdGUgbGluZXMgb24gbmFycm93IHNjcmVlbnNcbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkdW50aWw6IG1vYmlsZSkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgIC5nb3Z1ay1pbnB1dCB7XG4gICAgICAgIC8vIFNldCBtYXgtd2lkdGggdG8gb3ZlcnJpZGUgcG90ZW50aWFsIHdpZHRoIG92ZXJyaWRlIGNsYXNzIG9uIHRoZSBpbnB1dFxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWlucHV0X19wcmVmaXgsXG4gIC5nb3Z1ay1pbnB1dF9fc3VmZml4IHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiAxOSk7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAvLyBVc2UgZmxleGJveCB0byBhbGlnbiB0ZXh0IHdpdGhpbiB0aGUgcHJlZml4IGFuZCBzdWZmaXhcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWluLXdpZHRoOiBnb3Z1ay1weC10by1yZW0oNDBweCk7XG4gICAgaGVpZ2h0OiBnb3Z1ay1weC10by1yZW0oNDBweCk7XG4gICAgcGFkZGluZzogZ292dWstc3BhY2luZygxKTtcbiAgICBib3JkZXI6ICRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1lbGVtZW50IHNvbGlkICRnb3Z1ay1pbnB1dC1ib3JkZXItY29sb3VyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGdvdnVrLWNvbG91cihcImxpZ2h0LWdyZXlcIik7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgLy8gRW1waGFzaXNlIG5vbi1lZGl0YWJsZSBzdGF0dXMgb2YgcHJlZml4ZXMgYW5kIHN1ZmZpeGVzXG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIC8vIFNwbGl0IHByZWZpeC9zdWZmaXggb250byBzZXBhcmF0ZSBsaW5lcyBvbiBuYXJyb3cgc2NyZWVuc1xuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCR1bnRpbDogbW9iaWxlKSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWlucHV0X19wcmVmaXgge1xuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCR1bnRpbDogbW9iaWxlKSB7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIH1cbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogbW9iaWxlKSB7XG4gICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gU3BsaXQgcHJlZml4L3N1ZmZpeCBvbnRvIHNlcGFyYXRlIGxpbmVzIG9uIG5hcnJvdyBzY3JlZW5zXG4gIC5nb3Z1ay1pbnB1dF9fc3VmZml4IHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkdW50aWw6IG1vYmlsZSkge1xuICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICB9XG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IG1vYmlsZSkge1xuICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPV9pbmRleC5zY3NzLm1hcCAqL1xuIiwiQGltcG9ydCBcIi4uL2Vycm9yLW1lc3NhZ2UvaW5kZXhcIjtcbkBpbXBvcnQgXCIuLi9pbnB1dC9pbmRleFwiO1xuQGltcG9ydCBcIi4uL2hpbnQvaW5kZXhcIjtcbkBpbXBvcnQgXCIuLi9sYWJlbC9pbmRleFwiO1xuQGltcG9ydCBcIi4uL2ZpZWxkc2V0L2luZGV4XCI7XG5cbkBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9jb21wb25lbnQvZGF0ZS1pbnB1dFwiKSB7XG4gIC5nb3Z1ay1kYXRlLWlucHV0IHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1jbGVhcmZpeDtcbiAgICBmb250LXNpemU6IDA7IC8vIHJlbW92ZXMgd2hpdGVzcGFjZSBjYXVzZWQgYnkgaW5saW5lLWJsb2NrXG4gIH1cblxuICAuZ292dWstZGF0ZS1pbnB1dF9faXRlbSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogZ292dWstc3BhY2luZyg0KTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLmdvdnVrLWRhdGUtaW5wdXRfX2xhYmVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC5nb3Z1ay1kYXRlLWlucHV0X19pbnB1dCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vKiMgc291cmNlTWFwcGluZ1VSTD1faW5kZXguc2Nzcy5tYXAgKi9cbiIsIkBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9jb21wb25lbnQvZGV0YWlsc1wiKSB7XG4gIC5nb3Z1ay1kZXRhaWxzIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiAxOSk7XG4gICAgQGluY2x1ZGUgZ292dWstdGV4dC1jb2xvdXI7XG4gICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNiwgXCJib3R0b21cIik7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC5nb3Z1ay1kZXRhaWxzX19zdW1tYXJ5IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC5nb3Z1ay1kZXRhaWxzW29wZW5dIC5nb3Z1ay1kZXRhaWxzX19zdW1tYXJ5IHtcbiAgICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDEpO1xuICB9XG5cbiAgLmdvdnVrLWRldGFpbHNfX3N1bW1hcnktdGV4dCB7XG4gICAgPiA6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG5cbiAgICA+IDpvbmx5LWNoaWxkLFxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAuZ292dWstZGV0YWlsc19fdGV4dCB7XG4gICAgcGFkZGluZy10b3A6IGdvdnVrLXNwYWNpbmcoMyk7XG4gICAgcGFkZGluZy1ib3R0b206IGdvdnVrLXNwYWNpbmcoMyk7XG4gICAgcGFkZGluZy1sZWZ0OiBnb3Z1ay1zcGFjaW5nKDQpO1xuICB9XG5cbiAgLmdvdnVrLWRldGFpbHNfX3RleHQgcCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDQpO1xuICB9XG5cbiAgLmdvdnVrLWRldGFpbHNfX3RleHQgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC8vIEhhY2sgdG8gdGFyZ2V0IElFOCAtIElFMTEgKGFuZCBSRUFMTFkgb2xkIEZpcmVmb3gpXG4gIC8vIFRoZXNlIGJyb3dzZXJzIGRvbid0IHN1cHBvcnQgdGhlIGRldGFpbHMgZWxlbWVudCwgc28gZmFsbCBiYWNrIHRvIGxvb2tpbmdcbiAgLy8gbGlrZSBpbnNldCB0ZXh0XG4gIEBtZWRpYSBzY3JlZW5cXDAge1xuICAgIC5nb3Z1ay1kZXRhaWxzIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAkZ292dWstYm9yZGVyLXdpZHRoLXdpZGUgc29saWQgJGdvdnVrLWJvcmRlci1jb2xvdXI7XG4gICAgfVxuXG4gICAgLmdvdnVrLWRldGFpbHNfX3N1bW1hcnkge1xuICAgICAgbWFyZ2luLXRvcDogZ292dWstc3BhY2luZygzKTtcbiAgICB9XG5cbiAgICAuZ292dWstZGV0YWlsc19fc3VtbWFyeS10ZXh0IHtcbiAgICAgIEBpbmNsdWRlIGdvdnVrLXR5cG9ncmFwaHktd2VpZ2h0LWJvbGQ7XG4gICAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig0LCBcImJvdHRvbVwiKTtcbiAgICAgIHBhZGRpbmctbGVmdDogZ292dWstc3BhY2luZyg0KTtcbiAgICB9XG4gIH1cblxuICAvLyBXZSB3cmFwIHN0eWxlcyBmb3IgbmV3ZXIgYnJvd3NlcnMgaW4gYSBmZWF0dXJlIHF1ZXJ5LCB3aGljaCBpcyBpZ25vcmVkIGJ5XG4gIC8vIG9sZGVyIGJyb3dzZXJzLCB3aGljaCBhbHdheXMgZXhwYW5kIHRoZSBkZXRhaWxzIGVsZW1lbnQuXG4gIC8vXG4gIC8vIEFkZGl0aW9uYWxseSwgLW1zLWltZS1hbGlnbiBpcyBvbmx5IHN1cHBvcnRlZCBieSBFZGdlIDEyIC0gMThcbiAgLy9cbiAgLy8gVGhpcyBlbnN1cmVzIHdlIGRvbid0IHVzZSB0aGVzZSBzdHlsZXMgaW4gYnJvd3NlcnMgd2hpY2g6XG4gIC8vICAgLSBzdXBwb3J0IEVTNiBtb2R1bGVzIGJ1dCBub3QgdGhlIDxkZXRhaWxzPiBlbGVtZW50IChFZGdlIDE2IC0gMTgpXG4gIC8vICAgLSBkbyBub3Qgc3VwcG9ydCBFUzYgbW9kdWxlcyBvciB0aGUgPGRldGFpbHM+IGVsZW1lbnQgKGVnLCBJRTgrKVxuICBAc3VwcG9ydHMgbm90ICgtbXMtaW1lLWFsaWduOiBhdXRvKSB7XG4gICAgLmdvdnVrLWRldGFpbHNfX3N1bW1hcnkge1xuICAgICAgLy8gQWJzb2x1dGVseSBwb3NpdGlvbiB0aGUgbWFya2VyIGFnYWluc3QgdGhpcyBlbGVtZW50XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIC8vIE1ha2UgdGhlIGZvY3VzIG91dGxpbmUgc2hyaW5rLXdyYXAgdGhlIHRleHQgY29udGVudCBvZiB0aGUgc3VtbWFyeVxuICAgICAgd2lkdGg6IC13ZWJraXQtZml0LWNvbnRlbnQ7XG4gICAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG5cbiAgICAgIC8vIEFsbG93IGZvciBhYnNvbHV0ZWx5IHBvc2l0aW9uZWQgbWFya2VyIGFuZCBhbGlnbiB3aXRoIGRpc2Nsb3NlZCB0ZXh0XG4gICAgICBwYWRkaW5nLWxlZnQ6IGdvdnVrLXNwYWNpbmcoNCkgKyAkZ292dWstYm9yZGVyLXdpZHRoO1xuXG4gICAgICAvLyBTdHlsZSB0aGUgc3VtbWFyeSB0byBsb29rIGxpa2UgYSBsaW5rLi4uXG4gICAgICBjb2xvcjogJGdvdnVrLWxpbmstY29sb3VyO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRnb3Z1ay1saW5rLWhvdmVyLWNvbG91cjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIEBpbmNsdWRlIGdvdnVrLWZvY3VzZWQtdGV4dDtcbiAgICAgIH1cbiAgICB9XG4gICAgLy8gLi4uYnV0IG9ubHkgdW5kZXJsaW5lIHRoZSB0ZXh0LCBub3QgdGhlIGFycm93XG4gICAgLmdvdnVrLWRldGFpbHNfX3N1bW1hcnktdGV4dCB7XG4gICAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLWRlY29yYXRpb247XG4gICAgfVxuXG4gICAgLmdvdnVrLWRldGFpbHNfX3N1bW1hcnk6aG92ZXIgLmdvdnVrLWRldGFpbHNfX3N1bW1hcnktdGV4dCB7XG4gICAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLWhvdmVyLWRlY29yYXRpb247XG4gICAgfVxuXG4gICAgLy8gUmVtb3ZlIHRoZSB1bmRlcmxpbmUgd2hlbiBmb2N1c3NlZCB0byBhdm9pZCBkdXBsaWNhdGUgYm9yZGVyc1xuICAgIC5nb3Z1ay1kZXRhaWxzX19zdW1tYXJ5OmZvY3VzIC5nb3Z1ay1kZXRhaWxzX19zdW1tYXJ5LXRleHQge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgIC8vIFJlbW92ZSB0aGUgZGVmYXVsdCBkZXRhaWxzIG1hcmtlciBzbyB3ZSBjYW4gc3R5bGUgb3VyIG93biBjb25zaXN0ZW50bHkgYW5kXG4gICAgLy8gZW5zdXJlIGl0IGRpc3BsYXlzIGluIEZpcmVmb3ggKHNlZSBpbXBsZW1lbnRhdGlvbi5tZCBmb3IgZGV0YWlscylcbiAgICAuZ292dWstZGV0YWlsc19fc3VtbWFyeTo6LXdlYmtpdC1kZXRhaWxzLW1hcmtlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC8vIEFwcGVuZCBvdXIgb3duIG9wZW4gLyBjbG9zZWQgbWFya2VyIHVzaW5nIGEgcHNldWRvLWVsZW1lbnRcbiAgICAuZ292dWstZGV0YWlsc19fc3VtbWFyeTo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgICAgIHRvcDogLTFweDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG5cbiAgICAgIG1hcmdpbjogYXV0bztcblxuICAgICAgQGluY2x1ZGUgZ292dWstc2hhcGUtYXJyb3coJGRpcmVjdGlvbjogcmlnaHQsICRiYXNlOiAxNHB4KTtcblxuICAgICAgLmdvdnVrLWRldGFpbHNbb3Blbl0gPiAmIHtcbiAgICAgICAgQGluY2x1ZGUgZ292dWstc2hhcGUtYXJyb3coJGRpcmVjdGlvbjogZG93biwgJGJhc2U6IDE0cHgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5nb3Z1ay1kZXRhaWxzX190ZXh0IHtcbiAgICAgIGJvcmRlci1sZWZ0OiAkZ292dWstYm9yZGVyLXdpZHRoIHNvbGlkICRnb3Z1ay1ib3JkZXItY29sb3VyO1xuICAgIH1cbiAgfVxufVxuXG4vKiMgc291cmNlTWFwcGluZ1VSTD1faW5kZXguc2Nzcy5tYXAgKi9cbiIsIi8vLy9cbi8vLyBAZ3JvdXAgaGVscGVycy9zaGFwZXNcbi8vLy9cblxuLy8vIENhbGN1bGF0ZSB0aGUgaGVpZ2h0IG9mIGFuIGVxdWlsYXRlcmFsIHRyaWFuZ2xlXG4vLy9cbi8vLyBNdWx0aXBseWluZyBoYWxmIHRoZSBsZW5ndGggb2YgdGhlIGJhc2Ugb2YgYW4gZXF1aWxhdGVyYWwgdHJpYW5nbGUgYnkgdGhlXG4vLy8gc3F1YXJlIHJvb3Qgb2YgdGhyZWUgZ2l2ZXMgdXMgaXRzIGhlaWdodC4gV2UgdXNlIDEuNzMyIGFzIGFuIGFwcHJveGltYXRpb24uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgLSBMZW5ndGggb2YgdGhlIGJhc2Ugb2YgdGhlIHRyaWFuZ2xlXG4vLy8gQHJldHVybiB7TnVtYmVyfSBDYWxjdWxhdGVkIGhlaWdodCBvZiB0aGUgdHJpYW5nbGVcbi8vLyBAYWNjZXNzIHByaXZhdGVcblxuQGZ1bmN0aW9uIF9nb3Z1ay1lcXVpbGF0ZXJhbC1oZWlnaHQoJGJhc2UpIHtcbiAgJHNxdWFyZS1yb290LW9mLXRocmVlOiAxLjczMjtcblxuICBAcmV0dXJuICgkYmFzZSAvIDIpICogJHNxdWFyZS1yb290LW9mLXRocmVlO1xufVxuXG4vLy8gQXJyb3cgbWl4aW5cbi8vL1xuLy8vIEdlbmVyYXRlIEFycm93cyAodHJpYW5nbGVzKSBieSB1c2luZyBhIG1peCBvZiB0cmFuc3BhcmVudCAoMSkgYW5kIGNvbG91cmVkXG4vLy8gYm9yZGVycy4gVGhlIGNvbG91cmVkIGJvcmRlcnMgaW5oZXJpdCB0aGUgdGV4dCBjb2xvdXIgb2YgdGhlIGVsZW1lbnQgKDIpLlxuLy8vXG4vLy8gRW5zdXJlIHRoZSBhcnJvdyBpcyByZW5kZXJlZCBjb3JyZWN0bHkgaWYgYnJvd3NlciBjb2xvdXJzIGFyZSBvdmVycmlkZGVuIGJ5XG4vLy8gcHJvdmlkaW5nIGEgY2xpcCBwYXRoICgzKS4gV2l0aG91dCB0aGlzIHRoZSB0cmFuc3BhcmVudCBib3JkZXJzIGFyZVxuLy8vIG92ZXJyaWRkZW4gdG8gYmVjb21lIHZpc2libGUgd2hpY2ggcmVzdWx0cyBpbiBhIHNxdWFyZS5cbi8vL1xuLy8vIFdlIG5lZWQgYm90aCBiZWNhdXNlIG9sZGVyIGJyb3dzZXJzIGRvIG5vdCBzdXBwb3J0IGNsaXAtcGF0aC5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZGlyZWN0aW9uIC0gRGlyZWN0aW9uIGZvciBhcnJvdzogdXAsIHJpZ2h0LCBkb3duLCBsZWZ0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIExlbmd0aCBvZiB0aGUgdHJpYW5nbGUgJ2Jhc2UnIHNpZGVcbi8vLyBAcGFyYW0ge051bWJlcn0gJGhlaWdodCBbbnVsbF0gLSBIZWlnaHQgb2YgdHJpYW5nbGUuIE9taXQgZm9yIGVxdWlsYXRlcmFsLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZGlzcGxheSBbYmxvY2tdIC0gQ1NTIGRpc3BsYXkgcHJvcGVydHkgb2YgdGhlIGFycm93XG4vLy9cbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG5AbWl4aW4gZ292dWstc2hhcGUtYXJyb3coJGRpcmVjdGlvbiwgJGJhc2UsICRoZWlnaHQ6IG51bGwsICRkaXNwbGF5OiBibG9jaykge1xuICBkaXNwbGF5OiAkZGlzcGxheTtcblxuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuXG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIDFcblxuICAkcGVycGVuZGljdWxhcjogJGJhc2UgLyAyO1xuXG4gIEBpZiBub3QgJGhlaWdodCB7XG4gICAgJGhlaWdodDogX2dvdnVrLWVxdWlsYXRlcmFsLWhlaWdodCgkYmFzZSk7XG4gIH1cblxuICBAaWYgJGRpcmVjdGlvbiA9PSBcInVwXCIge1xuICAgIC13ZWJraXQtY2xpcC1wYXRoOiBwb2x5Z29uKDUwJSAwJSwgMCUgMTAwJSwgMTAwJSAxMDAlKTtcbiAgICAgICAgICAgIGNsaXAtcGF0aDogcG9seWdvbig1MCUgMCUsIDAlIDEwMCUsIDEwMCUgMTAwJSk7IC8vIDNcblxuICAgIGJvcmRlci13aWR0aDogMCAkcGVycGVuZGljdWxhciAkaGVpZ2h0O1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IGluaGVyaXQ7IC8vIDJcbiAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwicmlnaHRcIiB7XG4gICAgLXdlYmtpdC1jbGlwLXBhdGg6IHBvbHlnb24oMCUgMCUsIDEwMCUgNTAlLCAwJSAxMDAlKTtcbiAgICAgICAgICAgIGNsaXAtcGF0aDogcG9seWdvbigwJSAwJSwgMTAwJSA1MCUsIDAlIDEwMCUpOyAvLyAzXG5cbiAgICBib3JkZXItd2lkdGg6ICRwZXJwZW5kaWN1bGFyIDAgJHBlcnBlbmRpY3VsYXIgJGhlaWdodDtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogaW5oZXJpdDsgLy8gMlxuICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gXCJkb3duXCIge1xuICAgIC13ZWJraXQtY2xpcC1wYXRoOiBwb2x5Z29uKDAlIDAlLCA1MCUgMTAwJSwgMTAwJSAwJSk7XG4gICAgICAgICAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCUgMCUsIDUwJSAxMDAlLCAxMDAlIDAlKTsgLy8gM1xuXG4gICAgYm9yZGVyLXdpZHRoOiAkaGVpZ2h0ICRwZXJwZW5kaWN1bGFyIDAgJHBlcnBlbmRpY3VsYXI7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogaW5oZXJpdDsgLy8gMlxuICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gXCJsZWZ0XCIge1xuICAgIC13ZWJraXQtY2xpcC1wYXRoOiBwb2x5Z29uKDAlIDUwJSwgMTAwJSAxMDAlLCAxMDAlIDAlKTtcbiAgICAgICAgICAgIGNsaXAtcGF0aDogcG9seWdvbigwJSA1MCUsIDEwMCUgMTAwJSwgMTAwJSAwJSk7IC8vIDNcblxuICAgIGJvcmRlci13aWR0aDogJHBlcnBlbmRpY3VsYXIgJGhlaWdodCAkcGVycGVuZGljdWxhciAwO1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogaW5oZXJpdDsgLy8gMlxuICB9IEBlbHNlIHtcbiAgICBAZXJyb3IgXCJJbnZhbGlkIGFycm93IGRpcmVjdGlvbjogZXhwZWN0ZWQgYHVwYCwgYHJpZ2h0YCwgYGRvd25gIG9yIGBsZWZ0YCwgZ290IGAjeyRkaXJlY3Rpb259YFwiO1xuICB9XG59XG5cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPV9zaGFwZS1hcnJvdy5zY3NzLm1hcCAqL1xuIiwiQGltcG9ydCBcIi4uLy4uL2NvcmUvbGlzdHNcIjtcblxuQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL2NvbXBvbmVudC9lcnJvci1zdW1tYXJ5XCIpIHtcbiAgLmdvdnVrLWVycm9yLXN1bW1hcnkge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDE5KTtcbiAgICBAaW5jbHVkZSBnb3Z1ay10ZXh0LWNvbG91cjtcbiAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLXBhZGRpbmcoNCk7XG4gICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oOCwgXCJib3R0b21cIik7XG5cbiAgICBib3JkZXI6ICRnb3Z1ay1ib3JkZXItd2lkdGggc29saWQgJGdvdnVrLWVycm9yLWNvbG91cjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogJGdvdnVrLWZvY3VzLXdpZHRoIHNvbGlkICRnb3Z1ay1mb2N1cy1jb2xvdXI7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWVycm9yLXN1bW1hcnlfX3RpdGxlIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250LXNpemUoJHNpemU6IDI0KTtcbiAgICBAaW5jbHVkZSBnb3Z1ay10eXBvZ3JhcGh5LXdlaWdodC1ib2xkO1xuXG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig0LCBcImJvdHRvbVwiKTtcbiAgfVxuXG4gIC5nb3Z1ay1lcnJvci1zdW1tYXJ5X19ib2R5IHtcbiAgICBwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgPiAqICsgKiB7XG4gICAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig0LCBcInRvcFwiKTtcbiAgICB9XG5cbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDEsIFwiYm90dG9tXCIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIENyb3NzLWNvbXBvbmVudCBjbGFzcyAtIGFkanVzdHMgc3R5bGluZyBvZiBsaXN0IGNvbXBvbmVudFxuICAuZ292dWstZXJyb3Itc3VtbWFyeV9fbGlzdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgYm90dG9tIG1hcmdpbiBmcm9tIHRoZSBsYXN0IGxpc3QgaXRlbVxuICAuZ292dWstZXJyb3Itc3VtbWFyeV9fbGlzdCBsaTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLmdvdnVrLWVycm9yLXN1bW1hcnlfX2xpc3QgYSB7XG4gICAgQGluY2x1ZGUgZ292dWstdHlwb2dyYXBoeS13ZWlnaHQtYm9sZDtcbiAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLWNvbW1vbjtcbiAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLXN0eWxlLWVycm9yO1xuICB9XG59XG5cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPV9pbmRleC5zY3NzLm1hcCAqL1xuIiwiQGltcG9ydCBcIi4uL2J1dHRvbi9pbmRleFwiO1xuXG5AaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvY29tcG9uZW50L2V4aXQtdGhpcy1wYWdlXCIpIHtcbiAgJGluZGljYXRvci1zaXplOiAwLjc1ZW07XG5cbiAgLmdvdnVrLWV4aXQtdGhpcy1wYWdlIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig4LCBcImJvdHRvbVwiKTtcbiAgICBwb3NpdGlvbjogLXdlYmtpdC1zdGlja3k7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB6LWluZGV4OiAxMDAwO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IHRhYmxldCkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWV4aXQtdGhpcy1wYWdlX19idXR0b24ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAuZ292dWstZXhpdC10aGlzLXBhZ2VfX2luZGljYXRvciB7XG4gICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1wYWRkaW5nKDIpO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6IDA7IC8vIHJlbW92ZXMgZXh0cmEgbmVnYXRpdmUgc3BhY2UgYmVsb3cgdGhlIGluZGljYXRvcnNcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cblxuICAuZ292dWstZXhpdC10aGlzLXBhZ2VfX2luZGljYXRvci0tdmlzaWJsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAuZ292dWstZXhpdC10aGlzLXBhZ2VfX2luZGljYXRvci1saWdodCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6ICRpbmRpY2F0b3Itc2l6ZTtcbiAgICBoZWlnaHQ6ICRpbmRpY2F0b3Itc2l6ZTtcbiAgICBtYXJnaW46IDAgMC4xMjVlbTtcbiAgICBib3JkZXItd2lkdGg6IDJweDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBib3JkZXItY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgfVxuXG4gIC5nb3Z1ay1leGl0LXRoaXMtcGFnZV9faW5kaWNhdG9yLWxpZ2h0LS1vbiB7XG4gICAgYm9yZGVyLXdpZHRoOiAkaW5kaWNhdG9yLXNpemUgLyAyO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgcHJpbnQge1xuICAgIC5nb3Z1ay1leGl0LXRoaXMtcGFnZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1leGl0LXRoaXMtcGFnZS1vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogOTk5OTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZ292dWstY29sb3VyKFwid2hpdGVcIik7XG4gIH1cblxuICAvLyBUaGlzIGNsYXNzIGlzIGFkZGVkIHRvIHRoZSBib2R5IHdoZW4gdGhlIEV4aXQgVGhpcyBQYWdlIGJ1dHRvbiBpcyBhY3RpdmF0ZWRcbiAgLy8gaW4gYWRkaXRpb24gdG8gdGhlIG92ZXJsYXkgdG8gYm90aCBibG9jayB0aGUgZW50aXJlIHNjcmVlbiBhbmQgaGlkZSBldmVyeXRoaW5nXG4gIC8vIHVuZGVybmVhdGggaXQuXG4gIC8vXG4gIC8vIFdlIGRvIHRoaXMgdG8gZW5zdXJlIHRoYXQgdXNlcnMgZG9uJ3QgcmlzayBpbnRlcmFjdGluZyB3aXRoIHRoZSBwYWdlIHVuZGVybmVhdGhcbiAgLy8gdGhlIG92ZXJsYXkgYmV0d2VlbiBhY3RpdmF0aW5nIHRoZSBidXR0b24gYW5kIG5hdmlnYXRpbmcgdG8gdGhlIG5leHQgcGFnZS5cbiAgLmdvdnVrLWV4aXQtdGhpcy1wYWdlLWhpZGUtY29udGVudCB7XG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgKiB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmdvdnVrLWV4aXQtdGhpcy1wYWdlLW92ZXJsYXkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuLyojIHNvdXJjZU1hcHBpbmdVUkw9X2luZGV4LnNjc3MubWFwICovXG4iLCJAaW1wb3J0IFwiLi4vZXJyb3ItbWVzc2FnZS9pbmRleFwiO1xuQGltcG9ydCBcIi4uL2hpbnQvaW5kZXhcIjtcbkBpbXBvcnQgXCIuLi9sYWJlbC9pbmRleFwiO1xuXG5AaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvY29tcG9uZW50L2ZpbGUtdXBsb2FkXCIpIHtcbiAgJGZpbGUtdXBsb2FkLWJvcmRlci13aWR0aDogMnB4O1xuICAkY29tcG9uZW50LXBhZGRpbmc6IGdvdnVrLXNwYWNpbmcoMSk7XG4gICRlbXB0eS1idXR0b24tYmFja2dyb3VuZC1jb2xvdXI6IGdvdnVrLWNvbG91cihcIndoaXRlXCIpO1xuICAkZW1wdHktcHNldWRvLWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG91cjogZ292dWstY29sb3VyKFwibGlnaHQtZ3JleVwiKTtcbiAgJGVtcHR5LXN0YXR1cy1iYWNrZ3JvdW5kLWNvbG91cjogZ292dWstdGludChnb3Z1ay1jb2xvdXIoXCJibHVlXCIpLCA3MCUpO1xuXG4gIC5nb3Z1ay1maWxlLXVwbG9hZCB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTkpO1xuICAgIEBpbmNsdWRlIGdvdnVrLXRleHQtY29sb3VyO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogLSRjb21wb25lbnQtcGFkZGluZztcbiAgICBwYWRkaW5nOiAkY29tcG9uZW50LXBhZGRpbmc7XG5cbiAgICAvLyBUaGUgZGVmYXVsdCBmaWxlIHVwbG9hZCBidXR0b24gaW4gU2FmYXJpIGRvZXMgbm90IHN1cHBvcnQgc2V0dGluZyBhXG4gICAgLy8gY3VzdG9tIGZvbnQtc2l6ZS4gU2V0IGAtd2Via2l0LWFwcGVhcmFuY2VgIHRvIGBidXR0b25gIHRvIGRyb3Agb3V0IG9mIHRoZVxuICAgIC8vIG5hdGl2ZSBhcHBlYXJhbmNlIHNvIHRoZSBmb250LXNpemUgaXMgc2V0IHRvIDE5cHhcbiAgICAvLyBodHRwczovL3dlYmtpdC5vcmcvYi8yMjQ3NDZcbiAgICAmOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgZm9udDogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6ICRnb3Z1ay1mb2N1cy13aWR0aCBzb2xpZCAkZ292dWstZm9jdXMtY29sb3VyO1xuICAgICAgLy8gVXNlIGBib3gtc2hhZG93YCB0byBhZGQgYm9yZGVyIGluc3RlYWQgb2YgY2hhbmdpbmcgYGJvcmRlci13aWR0aGBcbiAgICAgIC8vICh3aGljaCBjaGFuZ2VzIGVsZW1lbnQgc2l6ZSkgYW5kIHNpbmNlIGBvdXRsaW5lYCBpcyBhbHJlYWR5IHVzZWQgZm9yXG4gICAgICAvLyB0aGUgeWVsbG93IGZvY3VzIHN0YXRlLlxuICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgNHB4ICRnb3Z1ay1pbnB1dC1ib3JkZXItY29sb3VyO1xuICAgIH1cblxuICAgIC8vIFNldCBcImZvY3VzLXdpdGhpblwiIHRvIGZpeCBodHRwczovL2J1Z3ppbC5sYS8xNDMwMTk2IHNvIHRoYXQgY29tcG9uZW50XG4gICAgLy8gcmVjZWl2ZXMgZm9jdXMgaW4gRmlyZWZveC5cbiAgICAvLyBUaGlzIGNhbid0IGJlIHNldCB0b2dldGhlciB3aXRoIGA6Zm9jdXNgIGFzIGFsbCB2ZXJzaW9ucyBvZiBJRSBmYWlsXG4gICAgLy8gdG8gcmVjb2duaXNlIGBmb2N1cy13aXRoaW5gIGFuZCBkb24ndCBzZXQgYW55IHN0eWxlcyBmcm9tIHRoZSBibG9ja1xuICAgIC8vIHdoZW4gaXQncyBhIHNlbGVjdG9yLlxuICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgIG91dGxpbmU6ICRnb3Z1ay1mb2N1cy13aWR0aCBzb2xpZCAkZ292dWstZm9jdXMtY29sb3VyO1xuXG4gICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA0cHggJGdvdnVrLWlucHV0LWJvcmRlci1jb2xvdXI7XG4gICAgfVxuXG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1kcm9wLXpvbmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnb3Z1ay1ib2R5LWJhY2tncm91bmQtY29sb3VyO1xuICB9XG5cbiAgLy8gcmVxdWlyZWQgYmVjYXVzZSBkaXNhYmxpbmcgcG9pbnRlciBldmVudHNcbiAgLy8gb24gdGhlIGJ1dHRvbiBtZWFucyB0aGF0IHRoZSBjdXJzb3Igc3R5bGVcbiAgLy8gYmUgYXBwbGllZCBvbiB0aGUgYnV0dG9uIGl0c2VsZlxuICAuZ292dWstZHJvcC16b25lLS1kaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgfVxuXG4gIC5nb3Z1ay1maWxlLXVwbG9hZC1idXR0b25fX3BzZXVkby1idXR0b24ge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogZ292dWstc3BhY2luZygyKTtcbiAgICBtYXJnaW4tYm90dG9tOiAkZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZWxlbWVudCArIDE7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gIH1cblxuICAuZ292dWstZmlsZS11cGxvYWQtYnV0dG9uX19pbnN0cnVjdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogZ292dWstc3BhY2luZygyKSAtICgkZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZWxlbWVudCArIDEpO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuXG4gIC5nb3Z1ay1maWxlLXVwbG9hZC1idXR0b25fX3N0YXR1cyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogZ292dWstc3BhY2luZygyKTtcbiAgICBwYWRkaW5nOiBnb3Z1ay1zcGFjaW5nKDMpIGdvdnVrLXNwYWNpbmcoMik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZ292dWstY29sb3VyKFwid2hpdGVcIik7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuXG4gIC8vIGJ1Z3MgZG9jdW1lbnRlZCB3aXRoIGJ1dHRvbiB1c2luZyBmbGV4XG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MjZmxleGJ1Zy05XG4gIC8vIHNvIHdlIG5lZWQgYSBjb250YWluZXIgaGVyZVxuICAuZ292dWstZmlsZS11cGxvYWQtYnV0dG9uX19wc2V1ZG8tYnV0dG9uLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgLy8gYWxpZ24gdGhlIHBhZGRpbmcgdG8gYmUgc2FtZSBhcyBub3RpZmljYXRpb24gYmFubmVyIGFuZCBlcnJvciBzdW1tYXJ5IGFjY291bnRpbmcgZm9yIHRoZSB0aGlja2VyIGJvcmRlcnNcbiAgICBwYWRkaW5nOiAoZ292dWstc3BhY2luZygzKSArICRnb3Z1ay1ib3JkZXItd2lkdGggLSAkZmlsZS11cGxvYWQtYm9yZGVyLXdpZHRoKTtcbiAgICBib3JkZXI6ICRmaWxlLXVwbG9hZC1ib3JkZXItd2lkdGggZ292dWstY29sb3VyKFwibWlkLWdyZXlcIikgc29saWQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZ292dWstY29sb3VyKFwibGlnaHQtZ3JleVwiKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogdGFibGV0KSB7XG4gICAgICBwYWRkaW5nOiAoZ292dWstc3BhY2luZyg0KSArICRnb3Z1ay1ib3JkZXItd2lkdGggLSAkZmlsZS11cGxvYWQtYm9yZGVyLXdpZHRoKTtcbiAgICB9XG5cbiAgICAuZ292dWstZmlsZS11cGxvYWQtYnV0dG9uX19wc2V1ZG8tYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGdvdnVrLWNvbG91cihcIndoaXRlXCIpO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ292dWstdGludChnb3Z1ay1jb2xvdXIoXCJtaWQtZ3JleVwiKSwgMjAlKTtcblxuICAgICAgLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbl9fcHNldWRvLWJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGdvdnVrLXNoYWRlKGdvdnVrLWNvbG91cihcImxpZ2h0LWdyZXlcIiksIDEwJSk7XG4gICAgICB9XG5cbiAgICAgIC5nb3Z1ay1maWxlLXVwbG9hZC1idXR0b25fX3N0YXR1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGdvdnVrLXRpbnQoZ292dWstY29sb3VyKFwiYmx1ZVwiKSwgODAlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlcjogJGZpbGUtdXBsb2FkLWJvcmRlci13aWR0aCBzb2xpZCBnb3Z1ay1jb2xvdXIoXCJibGFja1wiKTtcbiAgICAgIG91dGxpbmU6ICRnb3Z1ay1mb2N1cy13aWR0aCBzb2xpZCAkZ292dWstZm9jdXMtY29sb3VyO1xuICAgICAgLy8gRW5zdXJlIG91dGxpbmUgYXBwZWFycyBvdXRzaWRlIG9mIHRoZSBlbGVtZW50XG4gICAgICBvdXRsaW5lLW9mZnNldDogMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGdvdnVrLXRpbnQoZ292dWstY29sb3VyKFwibWlkLWdyZXlcIiksIDIwJSk7XG4gICAgICAvLyBEb3VibGUgdGhlIGJvcmRlciBieSBhZGRpbmcgaXRzIHdpZHRoIGFnYWluLiBVc2UgYGJveC1zaGFkb3dgIGZvciB0aGlzXG4gICAgICAvLyBpbnN0ZWFkIG9mIGNoYW5naW5nIGBib3JkZXItd2lkdGhgIC0gdGhpcyBpcyBmb3IgY29uc2lzdGVuY3kgd2l0aFxuICAgICAgLy8gY29tcG9uZW50cyBzdWNoIGFzIHRleHRhcmVhIHdoZXJlIHdlIGF2b2lkIGNoYW5naW5nIGBib3JkZXItd2lkdGhgIGFzXG4gICAgICAvLyBpdCB3aWxsIGNoYW5nZSB0aGUgZWxlbWVudCBzaXplLiBBbHNvLCBgb3V0bGluZWAgY2Fubm90IGJlIHV0aWxpc2VkXG4gICAgICAvLyBoZXJlIGFzIGl0IGlzIGFscmVhZHkgdXNlZCBmb3IgdGhlIHllbGxvdyBmb2N1cyBzdGF0ZS5cbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwICRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1lbGVtZW50O1xuXG4gICAgICAuZ292dWstZmlsZS11cGxvYWQtYnV0dG9uX19wc2V1ZG8tYnV0dG9uIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdvdnVrLWZvY3VzLWNvbG91cjtcbiAgICAgICAgYm94LXNoYWRvdzogMCAycHggMCBnb3Z1ay1jb2xvdXIoXCJibGFja1wiKTtcbiAgICAgIH1cblxuICAgICAgJjpob3ZlciAuZ292dWstZmlsZS11cGxvYWQtYnV0dG9uX19wc2V1ZG8tYnV0dG9uIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkZ292dWstZm9jdXMtY29sb3VyO1xuICAgICAgICBvdXRsaW5lOiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGdvdnVrLWNvbG91cihcImxpZ2h0LWdyZXlcIik7XG4gICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCAkZ292dWstZm9jdXMtY29sb3VyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1maWxlLXVwbG9hZC1idXR0b24tLWVtcHR5IHtcbiAgICBib3JkZXItc3R5bGU6IGRhc2hlZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZW1wdHktYnV0dG9uLWJhY2tncm91bmQtY29sb3VyO1xuXG4gICAgLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbl9fcHNldWRvLWJ1dHRvbiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZW1wdHktcHNldWRvLWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG91cjtcbiAgICB9XG5cbiAgICAuZ292dWstZmlsZS11cGxvYWQtYnV0dG9uX19zdGF0dXMge1xuICAgICAgY29sb3I6IGdvdnVrLXNoYWRlKGdvdnVrLWNvbG91cihcImJsdWVcIiksIDYwJSk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZW1wdHktc3RhdHVzLWJhY2tncm91bmQtY29sb3VyO1xuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBnb3Z1ay1jb2xvdXIoXCJsaWdodC1ncmV5XCIpO1xuXG4gICAgICAuZ292dWstZmlsZS11cGxvYWQtYnV0dG9uX19zdGF0dXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBnb3Z1ay10aW50KGdvdnVrLWNvbG91cihcImJsdWVcIiksIDgwJSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbi0tZHJhZ2dpbmcge1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiBnb3Z1ay1jb2xvdXIoXCJibGFja1wiKTtcblxuICAgIC8vIGV4dHJhIHNwZWNpZmljaXR5IHRvIGFwcGx5IHdoZW5cbiAgICAvLyBlbXB0eVxuICAgICYuZ292dWstZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGdvdnVrLXRpbnQoZ292dWstY29sb3VyKFwibWlkLWdyZXlcIiksIDIwJSk7XG4gICAgfVxuXG4gICAgJi5nb3Z1ay1maWxlLXVwbG9hZC1idXR0b24tLWVtcHR5IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGdvdnVrLWNvbG91cihcImxpZ2h0LWdyZXlcIik7XG4gICAgfVxuXG4gICAgJi5nb3Z1ay1maWxlLXVwbG9hZC1idXR0b24tLWVtcHR5Om5vdCg6ZGlzYWJsZWQpIC5nb3Z1ay1maWxlLXVwbG9hZC1idXR0b25fX3N0YXR1cyxcbiAgICAmLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbi0tZW1wdHkgLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbl9fcHNldWRvLWJ1dHRvbiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBnb3Z1ay1jb2xvdXIoXCJ3aGl0ZVwiKTtcbiAgICB9XG5cbiAgICAuZ292dWstZmlsZS11cGxvYWQtYnV0dG9uX19wc2V1ZG8tYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGdvdnVrLXNoYWRlKGdvdnVrLWNvbG91cihcImxpZ2h0LWdyZXlcIiksIDEwJSk7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbjpkaXNhYmxlZCB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgb3BhY2l0eTogMC41O1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGVtcHR5LWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG91cjtcblxuICAgIC5nb3Z1ay1maWxlLXVwbG9hZC1idXR0b25fX3BzZXVkby1idXR0b24ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGVtcHR5LXBzZXVkby1idXR0b24tYmFja2dyb3VuZC1jb2xvdXI7XG4gICAgfVxuXG4gICAgLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbl9fc3RhdHVzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRlbXB0eS1zdGF0dXMtYmFja2dyb3VuZC1jb2xvdXI7XG4gICAgfVxuICB9XG59XG5cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPV9pbmRleC5zY3NzLm1hcCAqL1xuIiwiQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL2NvbXBvbmVudC9mb290ZXJcIikge1xuICAkZ292dWstZm9vdGVyLWJhY2tncm91bmQ6ICRnb3Z1ay10ZW1wbGF0ZS1iYWNrZ3JvdW5kLWNvbG91cjtcbiAgJGdvdnVrLWZvb3Rlci10ZXh0OiAkZ292dWstdGV4dC1jb2xvdXI7XG4gICRnb3Z1ay1mb290ZXItY29udGVudC1ib3JkZXI6ICRnb3Z1ay1ib3JkZXItY29sb3VyO1xuXG4gIC8vIFJveWFsIEFybXMgaW1hZ2UgZGltZW5zaW9uc1xuICAkZ292dWstZm9vdGVyLWNyZXN0LWltYWdlLXdpZHRoOiAxMjVweDtcbiAgJGdvdnVrLWZvb3Rlci1jcmVzdC1pbWFnZS1oZWlnaHQ6IDEwMnB4O1xuXG4gIC5nb3Z1ay1mb290ZXIge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IGlmKCRnb3Z1ay1uZXctdHlwb2dyYXBoeS1zY2FsZSwgMTksIDE2KSk7XG4gICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1wYWRkaW5nKDcsIFwidG9wXCIpO1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtcGFkZGluZyg1LCBcImJvdHRvbVwiKTtcblxuICAgIGJvcmRlci10b3A6IDEwcHggc29saWQgJGdvdnVrLWJyYW5kLWNvbG91cjtcbiAgICBjb2xvcjogJGdvdnVrLWZvb3Rlci10ZXh0O1xuICAgIEBpbmNsdWRlIF9nb3Z1ay1yZWJyYW5kKFxuICAgICAgXCJiYWNrZ3JvdW5kXCIsXG4gICAgICAkZnJvbTogJGdvdnVrLWZvb3Rlci1iYWNrZ3JvdW5kLFxuICAgICAgJHRvOiAkX2dvdnVrLXJlYnJhbmQtdGVtcGxhdGUtYmFja2dyb3VuZC1jb2xvdXJcbiAgICApO1xuICB9XG5cbiAgLmdvdnVrLWZvb3Rlcl9fY3Jvd24ge1xuICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoNSk7XG4gIH1cblxuICAuZ292dWstZm9vdGVyX19saW5rIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLWNvbW1vbjtcbiAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLXN0eWxlLXRleHQ7XG4gIH1cblxuICAuZ292dWstZm9vdGVyX19zZWN0aW9uLWJyZWFrIHtcbiAgICBtYXJnaW46IDA7IC8vIFJlc2V0IGA8aHI+YCBkZWZhdWx0IG1hcmdpbnNcbiAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig4LCBcImJvdHRvbVwiKTtcbiAgICBib3JkZXI6IDA7IC8vIFJlc2V0IGA8aHI+YCBkZWZhdWx0IGJvcmRlcnNcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG4gICAgQGluY2x1ZGUgX2dvdnVrLXJlYnJhbmQoXG4gICAgICBcImJvcmRlci1ib3R0b20tY29sb3JcIixcbiAgICAgICRmcm9tOiAkZ292dWstZm9vdGVyLWNvbnRlbnQtYm9yZGVyLFxuICAgICAgJHRvOiAkX2dvdnVrLXJlYnJhbmQtYm9yZGVyLWNvbG91ci1vbi1ibHVlLXRpbnQtOTVcbiAgICApO1xuICB9XG5cbiAgLmdvdnVrLWZvb3Rlcl9fbWV0YSB7XG4gICAgZGlzcGxheTogZmxleDsgLy8gU3VwcG9ydDogRmxleGJveFxuICAgIG1hcmdpbi1yaWdodDogLSRnb3Z1ay1ndXR0ZXItaGFsZjtcbiAgICBtYXJnaW4tbGVmdDogLSRnb3Z1ay1ndXR0ZXItaGFsZjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IC8vIFN1cHBvcnQ6IEZsZXhib3hcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IC8vIFN1cHBvcnQ6IEZsZXhib3hcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgLy8gU3VwcG9ydDogRmxleGJveFxuICB9XG5cbiAgLmdvdnVrLWZvb3Rlcl9fbWV0YS1pdGVtIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRnb3Z1ay1ndXR0ZXItaGFsZjtcbiAgICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDUpO1xuICAgIG1hcmdpbi1sZWZ0OiAkZ292dWstZ3V0dGVyLWhhbGY7XG4gIH1cblxuICAuZ292dWstZm9vdGVyX19tZXRhLWl0ZW0tLWdyb3cge1xuICAgIGZsZXg6IDE7IC8vIFN1cHBvcnQ6IEZsZXhib3hcbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkdW50aWw6IHRhYmxldCkge1xuICAgICAgZmxleC1iYXNpczogMzIwcHg7IC8vIFN1cHBvcnQ6IEZsZXhib3hcbiAgICB9XG4gIH1cblxuICAuZ292dWstZm9vdGVyX19saWNlbmNlLWxvZ28ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IGdvdnVrLXNwYWNpbmcoMik7XG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJHVudGlsOiBkZXNrdG9wKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDMpO1xuICAgIH1cbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIC8vIFdvcmsgYXJvdW5kIFNWR3Mgbm90IGluaGVyaXRpbmcgY29sb3IgZnJvbSBwYXJlbnQgaW4gZm9yY2VkIGNvbG9yIG1vZGVcbiAgICAvLyAoaHR0cHM6Ly9naXRodWIuY29tL3czYy9jc3N3Zy1kcmFmdHMvaXNzdWVzLzYzMTApXG4gICAgZm9yY2VkLWNvbG9yLWFkanVzdDogYXV0bztcbiAgfVxuXG4gIC5nb3Z1ay1mb290ZXJfX2xpY2VuY2UtZGVzY3JpcHRpb24ge1xuICAgIC8vIFRoaXMgbWFrZXMgdGhlIGxpY2Vuc2UgZGVzY3JpcHRpb24gcmVmbG93IHVuZGVyIHRoZSBsb2dvIHdoZW4gc3BhY2UgZ2V0cyB0b28gbmFycm93XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIC8vIFRoaXMgcHJldmVudHMgdGhlIGRlc2NyaXB0aW9uIGZyb20gaGF2aW5nIG9ycGhhbnMgd2hlbiBzcGFjZSBpcyBuYXJyb3cgZW5vdWdoXG4gICAgLy8gYW5kIG1ha2VzIHRoZSB0ZXh0IHJlZmxvdyBtb3JlIG5pY2VseVxuICAgIHRleHQtd3JhcDogYmFsYW5jZTtcbiAgfVxuXG4gIC5nb3Z1ay1mb290ZXJfX2NvcHlyaWdodC1sb2dvOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy10b3A6ICgkZ292dWstZm9vdGVyLWNyZXN0LWltYWdlLWhlaWdodCArIGdvdnVrLXNwYWNpbmcoMikpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGdvdnVrLWltYWdlLXVybChcImdvdnVrLWNyZXN0LnN2Z1wiKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSAwJTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICRnb3Z1ay1mb290ZXItY3Jlc3QtaW1hZ2Utd2lkdGggJGdvdnVrLWZvb3Rlci1jcmVzdC1pbWFnZS1oZWlnaHQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAvLyBXaGVyZSBwb3NzaWJsZSB1c2UgdGhlIGNyZXN0IGFzIGEgbWFzayBpbnN0ZWFkLiBUaGlzIGxldHMgdXMgdXNlXG4gICAgLy8gY3VycmVudENvbG9yLCBpbmNyZWFzaW5nIHRoZSBjb250cmFzdCBvZiB0aGUgaW1hZ2UgYW5kIG1hdGNoaW5nIHRoZVxuICAgIC8vIHVzZXIncyBwcmVmZXJlZCBmb3JlZ3JvdW5kIGNvbG91ciBpbiBlLmcuIGZvcmNlZCBjb2xvcnMgbW9kZS5cbiAgICAvLyBXZSB0ZXN0IGZvciBgbWFzay1wb3NpdGlvbmAgcmF0aGVyIHRoYW4gYG1hc2staW1hZ2VgIGJlY2F1c2Ugb2YgYSBmYWxzZVxuICAgIC8vIHBvc2l0aXZlIGluIEVkZ2UgMTcuXG4gICAgQHN1cHBvcnRzICgoLXdlYmtpdC1tYXNrLXBvc2l0aW9uOiBpbml0aWFsKSBvciAobWFzay1wb3NpdGlvbjogaW5pdGlhbCkpIHtcbiAgICAgIGJhY2tncm91bmQ6IGN1cnJlbnRjb2xvcjtcbiAgICAgIC13ZWJraXQtbWFzay1pbWFnZTogZ292dWstaW1hZ2UtdXJsKFwiZ292dWstY3Jlc3Quc3ZnXCIpO1xuICAgICAgICAgICAgICBtYXNrLWltYWdlOiBnb3Z1ay1pbWFnZS11cmwoXCJnb3Z1ay1jcmVzdC5zdmdcIik7XG4gICAgICAtd2Via2l0LW1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAtd2Via2l0LW1hc2stcG9zaXRpb246IDUwJSAwJTtcbiAgICAgICAgICAgICAgbWFzay1wb3NpdGlvbjogNTAlIDAlO1xuICAgICAgLXdlYmtpdC1tYXNrLXNpemU6ICRnb3Z1ay1mb290ZXItY3Jlc3QtaW1hZ2Utd2lkdGggJGdvdnVrLWZvb3Rlci1jcmVzdC1pbWFnZS1oZWlnaHQ7XG4gICAgICAgICAgICAgIG1hc2stc2l6ZTogJGdvdnVrLWZvb3Rlci1jcmVzdC1pbWFnZS13aWR0aCAkZ292dWstZm9vdGVyLWNyZXN0LWltYWdlLWhlaWdodDtcblxuICAgICAgLy8gY3VycmVudGNvbG9yIGRvZXNuJ3Qgc2VlbSB0byBiZSBjb21wdXRlZCBjb3JyZWN0bHkgaW4gZm9yY2VkIGNvbG9yc1xuICAgICAgLy8gbW9kZSBzbyBmb3JjZSB0aGUgYmFja2dyb3VuZCBjb2xvciB0byBtYXRjaCB0aGUgc3lzdGVtIGxpbmsgY29sb3JcbiAgICAgIC8vIChtYXRjaGluZyB0aGUgdGV4dCBpbiB0aGUgbGluaylcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGlua3RleHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWZvb3Rlcl9faW5saW5lLWxpc3Qge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogZ292dWstc3BhY2luZygzKTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLmdvdnVrLWZvb3Rlcl9fbWV0YS1jdXN0b20ge1xuICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoNCk7XG4gIH1cblxuICAuZ292dWstZm9vdGVyX19pbmxpbmUtbGlzdC1pdGVtIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiBnb3Z1ay1zcGFjaW5nKDMpO1xuICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMSk7XG4gIH1cblxuICAuZ292dWstZm9vdGVyX19oZWFkaW5nIHtcbiAgICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDYpO1xuICAgIHBhZGRpbmctYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDQpO1xuXG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJHVudGlsOiB0YWJsZXQpIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDIpO1xuICAgIH1cblxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcbiAgICBAaW5jbHVkZSBfZ292dWstcmVicmFuZChcbiAgICAgIFwiYm9yZGVyLWJvdHRvbS1jb2xvclwiLFxuICAgICAgJGZyb206ICRnb3Z1ay1mb290ZXItY29udGVudC1ib3JkZXIsXG4gICAgICAkdG86ICRfZ292dWstcmVicmFuZC1ib3JkZXItY29sb3VyLW9uLWJsdWUtdGludC05NVxuICAgICk7XG4gIH1cblxuICAuZ292dWstZm9vdGVyX19uYXZpZ2F0aW9uIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1jbGVhcmZpeDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0kZ292dWstZ3V0dGVyLWhhbGY7XG4gICAgbWFyZ2luLWxlZnQ6IC0kZ292dWstZ3V0dGVyLWhhbGY7XG4gIH1cblxuICAuZ292dWstZm9vdGVyX19zZWN0aW9uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogJGdvdnVrLWd1dHRlcjtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB9XG5cbiAgLmdvdnVrLWZvb3Rlcl9fbGlzdCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBjb2x1bW4tZ2FwOiAkZ292dWstZ3V0dGVyOyAvLyBTdXBwb3J0OiBDb2x1bW5zXG4gIH1cblxuICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogZGVza3RvcCkge1xuICAgIC5nb3Z1ay1mb290ZXJfX2xpc3QtLWNvbHVtbnMtMiB7XG4gICAgICBjb2x1bW4tY291bnQ6IDI7IC8vIFN1cHBvcnQ6IENvbHVtbnNcbiAgICB9XG5cbiAgICAuZ292dWstZm9vdGVyX19saXN0LS1jb2x1bW5zLTMge1xuICAgICAgY29sdW1uLWNvdW50OiAzOyAvLyBTdXBwb3J0OiBDb2x1bW5zXG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWZvb3Rlcl9fbGlzdC1pdGVtIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig0LCBcImJvdHRvbVwiKTtcbiAgfVxuXG4gIC5nb3Z1ay1mb290ZXJfX2xpc3QtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPV9pbmRleC5zY3NzLm1hcCAqL1xuIiwiQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL2NvbXBvbmVudC9oZWFkZXJcIikge1xuICAkZ292dWstaGVhZGVyLWJhY2tncm91bmQ6IGdvdnVrLWNvbG91cihcImJsYWNrXCIpO1xuICAkZ292dWstaGVhZGVyLWJvcmRlci1jb2xvcjogJGdvdnVrLWJyYW5kLWNvbG91cjtcbiAgJGdvdnVrLWhlYWRlci1ib3JkZXItd2lkdGg6IGdvdnVrLXNwYWNpbmcoMik7XG4gICRnb3Z1ay1oZWFkZXItdGV4dDogZ292dWstY29sb3VyKFwid2hpdGVcIik7XG4gICRnb3Z1ay1oZWFkZXItbGluay1hY3RpdmU6ICMxZDhmZWI7XG4gICRnb3Z1ay1oZWFkZXItbmF2LWl0ZW0tYm9yZGVyLWNvbG9yOiAjMmUzMTMzO1xuICAkZ292dWstaGVhZGVyLWxpbmstdW5kZXJsaW5lLXRoaWNrbmVzczogM3B4O1xuICAkZ292dWstaGVhZGVyLXZlcnRpY2FsLXNwYWNpbmctdmFsdWU6IDI7XG4gIC8vIFRoaXMgY3Jvd24gaGVpZ2h0IGlzIG9ubHkgdXNlZCB0byBjYWxjdWxhdGUgdG9wIG9mZnNldCBvZiBtb2JpbGUgbWVudSBidXR0b25cbiAgLy8gYXMgdGhlIGNyb3duIHN2ZyBoZWlnaHQgaXMgdGhlIG9ubHkgdGhpbmcgdGhhdCBjb250cm9scyB0aGUgaGVpZ2h0IG9mIHRoZSBoZWFkZXJcbiAgJGdvdnVrLWhlYWRlci1jcm93bi1oZWlnaHQ6IDMwcHg7XG4gICRnb3Z1ay1oZWFkZXItbWVudS1idXR0b24taGVpZ2h0OiAyNHB4O1xuICAkZ292dWstaGVhZGVyLW1lbnUtYnV0dG9uLXdpZHRoOiA4MHB4O1xuXG4gICRnb3Z1ay1oZWFkZXItcmVicmFuZC1iYWNrZ3JvdW5kOiAkZ292dWstYnJhbmQtY29sb3VyO1xuICAkZ292dWstaGVhZGVyLXJlYnJhbmQtbG9nby1ib3R0b20tbWFyZ2luOiAycHg7XG5cbiAgLmdvdnVrLWhlYWRlciB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTYsICRsaW5lLWhlaWdodDogMSk7XG5cbiAgICAvLyBBZGQgYSB0cmFuc3BhcmVudCBib3R0b20gYm9yZGVyIGZvciBmb3JjZWQtY29sb3VyIG1vZGVzXG4gICAgQGluY2x1ZGUgX2dvdnVrLXJlYnJhbmQoXG4gICAgICBcImJvcmRlci1ib3R0b21cIixcbiAgICAgICRmcm9tOiBnb3Z1ay1zcGFjaW5nKDIpIHNvbGlkIGdvdnVrLWNvbG91cihcIndoaXRlXCIpLFxuICAgICAgJHRvOiAxcHggc29saWQgdHJhbnNwYXJlbnRcbiAgICApO1xuICAgIEBpbmNsdWRlIF9nb3Z1ay1yZWJyYW5kKFwiYmFja2dyb3VuZFwiLCAkZnJvbTogJGdvdnVrLWhlYWRlci1iYWNrZ3JvdW5kLCAkdG86ICRnb3Z1ay1oZWFkZXItcmVicmFuZC1iYWNrZ3JvdW5kKTtcblxuICAgIGNvbG9yOiAkZ292dWstaGVhZGVyLXRleHQ7XG4gIH1cblxuICAuZ292dWstaGVhZGVyLS13aXRoLWpzLW5hdmlnYXRpb24ge1xuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCR1bnRpbDogZGVza3RvcCkge1xuICAgICAgLmdvdnVrLWhlYWRlcl9fbG9nbyB7XG4gICAgICAgIC8vIFByb3RlY3QgdGhlIGFic29sdXRlIHBvc2l0aW9uZWQgbWVudSBidXR0b24gZnJvbSBvdmVybGFwcGluZyB3aXRoIHRoZVxuICAgICAgICAvLyBsb2dvIHdpdGggcmlnaHQgcGFkZGluZyB1c2luZyB0aGUgYnV0dG9uJ3Mgd2lkdGhcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGdvdnVrLWhlYWRlci1tZW51LWJ1dHRvbi13aWR0aDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZ292dWstaGVhZGVyX19jb250YWluZXItLWZ1bGwtd2lkdGgge1xuICAgIHBhZGRpbmc6IDAgZ292dWstc3BhY2luZygzKTtcbiAgICBib3JkZXItY29sb3I6ICRnb3Z1ay1oZWFkZXItYm9yZGVyLWNvbG9yO1xuXG4gICAgLmdvdnVrLWhlYWRlcl9fbWVudS1idXR0b24ge1xuICAgICAgcmlnaHQ6IGdvdnVrLXNwYWNpbmcoMyk7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWhlYWRlcl9fY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1jbGVhcmZpeDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWJvdHRvbTogLSRnb3Z1ay1oZWFkZXItYm9yZGVyLXdpZHRoO1xuICAgIHBhZGRpbmctdG9wOiBnb3Z1ay1zcGFjaW5nKCRnb3Z1ay1oZWFkZXItdmVydGljYWwtc3BhY2luZy12YWx1ZSk7XG4gICAgYm9yZGVyLWJvdHRvbTogJGdvdnVrLWhlYWRlci1ib3JkZXItd2lkdGggc29saWQgJGdvdnVrLWhlYWRlci1ib3JkZXItY29sb3I7XG5cbiAgICBAaW5jbHVkZSBfZ292dWstcmVicmFuZCB7XG4gICAgICAvLyBSZW1vdmUgdGhlIHNwYWNlIGFsbG9jYXRlZCB0byB0aGUgYmx1ZSBiYXJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgIC8vIFJlbW92ZSBwYWRkaW5nIGFzIHRoZSBjaGlsZCBlbGVtZW50cyBhcmUgbm93IHJlc3BvbnNpYmxlIGZvciBzcGFjaW5nXG4gICAgICBwYWRkaW5nLXRvcDogMDtcblxuICAgICAgLy8gUmVtb3ZlIHRoZSBibHVlIGJhclxuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyBUT0RPOiBSZW1vdmUgdGhpcyB3aGVuIF9nb3Z1ay1yZWJyYW5kIGJlY29tZXMgdGhlIGRlZmF1bHRcbiAgLmdvdnVrLWhlYWRlci0tZnVsbC13aWR0aC1ib3JkZXIge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRnb3Z1ay1oZWFkZXItYm9yZGVyLWNvbG9yO1xuXG4gICAgLmdvdnVrLWhlYWRlcl9fY29udGFpbmVyIHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1oZWFkZXJfX2xvZ290eXBlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTNweDtcblxuICAgIC8vIEFkZCBhIGdhcCBhZnRlciB0aGUgbG9nbyBpbiBjYXNlIGl0J3MgZm9sbG93ZWQgYnkgYSBwcm9kdWN0IG5hbWUuIFRoaXNcbiAgICAvLyBnZXRzIHJlbW92ZWQgbGF0ZXIgaWYgdGhlIGxvZ290eXBlIGlzIGEgOmxhc3QtY2hpbGQuXG4gICAgbWFyZ2luLXJpZ2h0OiBnb3Z1ay1zcGFjaW5nKDEpO1xuICAgIGZpbGw6IGN1cnJlbnRjb2xvcjtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXG4gICAgLy8gUHJldmVudCByZWFkYWJpbGl0eSBiYWNrcGxhdGUgZnJvbSBvYnNjdXJpbmcgdW5kZXJsaW5lIGluIFdpbmRvd3MgSGlnaFxuICAgIC8vIENvbnRyYXN0IE1vZGVcbiAgICBAbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAgICAgZm9yY2VkLWNvbG9yLWFkanVzdDogbm9uZTtcbiAgICAgIGNvbG9yOiBsaW5rdGV4dDtcbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgdGhlIGdhcCBhZnRlciB0aGUgbG9nbyBpZiB0aGVyZSdzIG5vIHByb2R1Y3QgbmFtZSB0byBrZWVwIGhvdmVyXG4gICAgLy8gYW5kIGZvY3VzIHN0YXRlcyBuZWF0XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBfZ292dWstcmVicmFuZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGdvdnVrLXB4LXRvLXJlbSg3cHgpOyAvLyAxICdkb3QnXG4gICAgICBtYXJnaW4tYm90dG9tOiAkZ292dWstaGVhZGVyLXJlYnJhbmQtbG9nby1ib3R0b20tbWFyZ2luO1xuXG4gICAgICAvLyBSZW1vdmUgcmlnaHQtbWFyZ2luIGlmIHRoZXJlJ3Mgbm8gcHJvZHVjdCBuYW1lXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gQ29sb3VyIGluIHRoZSBEb3RcbiAgLmdvdnVrLWxvZ28tZG90IHtcbiAgICBmaWxsOiAjMDBmZmUwO1xuXG4gICAgLy8gT3ZlcnJpZGUgRG90IGNvbG91ciB3aGVuIHByaW50aW5nXG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJG1lZGlhLXR5cGU6IHByaW50KSB7XG4gICAgICBmaWxsOiBjdXJyZW50Y29sb3I7XG4gICAgfVxuXG4gICAgLy8gT3ZlcnJpZGUgRG90IGNvbG91ciBvbiBmb3JjZWQgY29sb3VycyBtb2RlXG4gICAgQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgICAgIGZpbGw6IGN1cnJlbnRjb2xvcjtcbiAgICB9XG5cbiAgICAvLyBPdmVycmlkZSBEb3QgY29sb3VyIG9uIGZvY3VzXG4gICAgOmZvY3VzICYge1xuICAgICAgZmlsbDogY3VycmVudGNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1oZWFkZXJfX3Byb2R1Y3QtbmFtZSB7XG4gICAgJHByb2R1Y3QtbmFtZS1vZmZzZXQ6IGlmKCRnb3Z1ay1uZXctdHlwb2dyYXBoeS1zY2FsZSwgN3B4LCAxMHB4KTtcbiAgICAkcHJvZHVjdC1uYW1lLW9mZnNldC10YWJsZXQ6IDVweDtcblxuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQtc2l6ZSgkc2l6ZTogMjQsICRsaW5lLWhlaWdodDogMSk7XG4gICAgQGluY2x1ZGUgZ292dWstdHlwb2dyYXBoeS13ZWlnaHQtcmVndWxhcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtdGFibGU7XG5cbiAgICAvLyBNYWludGFpbiBzcGFjZSBiZWxvdyBsb2dvIHdoZW4gd3JhcHBlZFxuICAgIG1hcmdpbi10b3A6ICRwcm9kdWN0LW5hbWUtb2Zmc2V0O1xuXG4gICAgLy8gRmlyZWZveCBwbGFjZXMgdGhlIEdPVi5VSyBsb2dvIG9uZSBwaXhlbCBoaWdoZXIsIGR1ZSB0byBob3cgaXQgcm91bmRzXG4gICAgLy8gc3VicGl4ZWxzLCBzbyBudWRnZSB0aGUgcHJvZHVjdCBuYW1lIGluIEZGIHRvIHN0aWxsIGJlIGFsaWduZWQuXG4gICAgQC1tb3otZG9jdW1lbnQgdXJsLXByZWZpeCgpIHtcbiAgICAgIG1hcmdpbi10b3A6ICRwcm9kdWN0LW5hbWUtb2Zmc2V0IC0gMC41cHg7XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gdmVydGljYWxseSB3aXRoIGxvZ28gd2hlbiBub3Qgd3JhcHBlZFxuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogdGFibGV0KSB7XG4gICAgICBtYXJnaW4tdG9wOiAkcHJvZHVjdC1uYW1lLW9mZnNldC10YWJsZXQ7XG4gICAgICBALW1vei1kb2N1bWVudCB1cmwtcHJlZml4KCkge1xuICAgICAgICBtYXJnaW4tdG9wOiAkcHJvZHVjdC1uYW1lLW9mZnNldC10YWJsZXQgLSAwLjVweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBfZ292dWstcmVicmFuZCB7XG4gICAgICAvLyBSZW1vdmUgdG9wIG1hcmdpblxuICAgICAgbWFyZ2luLXRvcDogMDtcblxuICAgICAgLy8gUmVtb3ZlIDFweCBmcm9tIHRoZSBib3R0b20gdG8gYWNjb3VudCBmb3IgdGhlIGZvbnQtc2l6ZSBiZWluZyAxcHhcbiAgICAgIC8vIGxhcmdlciB0aGFuIHRoZSBsb2dvIGhlaWdodC5cbiAgICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXB4LXRvLXJlbSgtMXB4KTtcblxuICAgICAgLy8gTWFnaWMgbnVtYmVyIGZvbnQtc2l6ZSB0aGF0IHZpc3VhbGx5IGFsaWducyB3aXRoIEdPVi5VSyBsb2dvLlxuICAgICAgLy8gQWxzbyBzdG9wcyByZWR1Y2luZyB0aGUgcHJvZHVjdCBuYW1lIHNpemUgb24gbmFycm93IHNjcmVlbnNcbiAgICAgIGZvbnQtc2l6ZTogZ292dWstcHgtdG8tcmVtKDMxcHgpO1xuXG4gICAgICAvLyBSZWR1Y2UgbGV0dGVyIHNwYWNpbmdcbiAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMTVlbTtcblxuICAgICAgLy8gUHJldmVudCBmb3JjZWQgY29sb3VyIG1vZGVzIGZyb20gYXBwbHlpbmcgYSBiYWNrZ3JvdW5kIGNvbG91ciBiZWhpbmRcbiAgICAgIC8vIHRoZSBwcm9kdWN0IG5hbWUsIHdoaWNoIGN1dHMgb2ZmIHRoZSB1bmRlcmxpbmUgdGhhdCBhcHBlYXJzIG9uIGhvdmVyLlxuICAgICAgZm9yY2VkLWNvbG9yLWFkanVzdDogbm9uZTtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAgICAgICBjb2xvcjogTGlua1RleHQ7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuXG4gICAgICAvLyBSZW1vdmUgdG9wIG1hcmdpbiBvbiB0aGUgYnJlYWtwb2ludHMgdG9vXG4gICAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogdGFibGV0KSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiBkZXNrdG9wKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWhlYWRlcl9fbGluayB7XG4gICAgLy8gQXZvaWQgdXNpbmcgdGhlIGBnb3Z1ay1saW5rLWNvbW1vbmAgbWl4aW4gYmVjYXVzZSB0aGUgbGlua3MgaW4gdGhlIGhlYWRlclxuICAgIC8vIGdldCBhIHNwZWNpYWwgdHJlYXRtZW50LCBiZWNhdXNlOlxuICAgIC8vXG4gICAgLy8gLSB1bmRlcmxpbmVzIGFyZSBvbmx5IHZpc2libGUgb24gaG92ZXJcbiAgICAvLyAtIGFsbCBsaW5rcyBnZXQgYSAzcHggdW5kZXJsaW5lIHJlZ2FyZGxlc3Mgb2YgdGV4dCBzaXplLCBhcyB0aGVyZSBhcmVcbiAgICAvLyAgIG11bHRpcGxlIGdyb3VwZWQgZWxlbWVudHMgY2xvc2UgdG8gb25lIGFub3RoZXIgYW5kIGhhdmluZyBzbGlnaHRseVxuICAgIC8vICAgZGlmZmVyZW50IHVuZGVybGluZSB3aWR0aHMgbG9va3MgdW5iYWxhbmNlZFxuICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstc3R5bGUtaW52ZXJzZTtcblxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiAkZ292dWstaGVhZGVyLWxpbmstdW5kZXJsaW5lLXRoaWNrbmVzcztcblxuICAgICAgQGlmICRnb3Z1ay1saW5rLXVuZGVybGluZS1vZmZzZXQge1xuICAgICAgICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6ICRnb3Z1ay1saW5rLXVuZGVybGluZS1vZmZzZXQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBnb3Z1ay1mb2N1c2VkLXRleHQ7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWhlYWRlcl9fbGluay0taG9tZXBhZ2Uge1xuICAgIC8vIEZvbnQgc2l6ZSBuZWVkcyB0byBiZSBzZXQgb24gdGhlIGxpbmsgc28gdGhhdCB0aGUgYm94IHNpemluZyBpcyBjb3JyZWN0XG4gICAgLy8gaW4gRmlyZWZveFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IGdvdnVrLXNwYWNpbmcoMik7XG4gICAgZm9udC1zaXplOiAzMHB4OyAvLyBXZSBkb24ndCBoYXZlIGEgbWl4aW4gdGhhdCBwcm9kdWNlcyAzMHB4IGZvbnQgc2l6ZVxuXG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IGRlc2t0b3ApIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICB9XG5cbiAgICAmOmxpbmssXG4gICAgJjp2aXNpdGVkIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6YWN0aXZlIHtcbiAgICAgIC8vIE5lZ2F0ZSB0aGUgYWRkZWQgYm9yZGVyXG4gICAgICBtYXJnaW4tYm90dG9tOiAkZ292dWstaGVhZGVyLWxpbmstdW5kZXJsaW5lLXRoaWNrbmVzcyAqIC0xO1xuICAgICAgYm9yZGVyLWJvdHRvbTogJGdvdnVrLWhlYWRlci1saW5rLXVuZGVybGluZS10aGlja25lc3Mgc29saWQ7XG4gICAgfVxuXG4gICAgLy8gUmVtb3ZlIGFueSBib3JkZXJzIHRoYXQgc2hvdyB3aGVuIGZvY3VzZWQgYW5kIGhvdmVyZWQuXG4gICAgJjpmb2N1cyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBfZ292dWstcmVicmFuZCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG5cbiAgICAgIC8vIFJlbW92ZSB3b3JkLXNwYWNpbmcgZnJvbSB3aXRoaW4gdGhlIGxvZ28gc28gd2UgY2FuIGlnbm9yZVxuICAgICAgLy8gd2hpdGVzcGFjZSBjaGFyYWN0ZXJzIGluIHRoZSBIVE1MXG4gICAgICB3b3JkLXNwYWNpbmc6IGdvdnVrLXB4LXRvLXJlbSgtNnB4KTtcblxuICAgICAgLy8gUmVzZXQgd29yZC1zcGFjaW5nIGZvciBjaGlsZCBlbGVtZW50c1xuICAgICAgPiAqIHtcbiAgICAgICAgd29yZC1zcGFjaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICAmOm5vdCg6Zm9jdXMpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdvdnVrLWhlYWRlci1yZWJyYW5kLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWhlYWRlcl9fc2VydmljZS1uYW1lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogZ292dWstc3BhY2luZygyKTtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250LXNpemUoJHNpemU6IDI0KTtcbiAgICBAaW5jbHVkZSBnb3Z1ay10eXBvZ3JhcGh5LXdlaWdodC1ib2xkO1xuXG4gICAgQGluY2x1ZGUgX2dvdnVrLXJlYnJhbmQge1xuICAgICAgLy8gQXBwbHkgbWFyZ2lucyB0byBpbnRlcm5hbCBlbGVtZW50cyB0byBlbXVsYXRlIHBhZGRpbmdcbiAgICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMyk7XG5cbiAgICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiBkZXNrdG9wKSB7XG4gICAgICAgIC8vIE1hZ2ljIG51bWJlciB0byBhbGlnbiBzZXJ2aWNlIG5hbWUgYmFzZWxpbmUgd2l0aCB0aGUgR09WLlVLIGxvZ29cbiAgICAgICAgJHNlcnZpY2UtbmFtZS1vZmZzZXQ6IDRweDtcblxuICAgICAgICBtYXJnaW46IChnb3Z1ay1zcGFjaW5nKDMpICsgJHNlcnZpY2UtbmFtZS1vZmZzZXQpIDAgKGdvdnVrLXNwYWNpbmcoMykgLSAkc2VydmljZS1uYW1lLW9mZnNldCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWhlYWRlcl9fbG9nbyxcbiAgLmdvdnVrLWhlYWRlcl9fY29udGVudCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuXG4gIC5nb3Z1ay1oZWFkZXJfX2xvZ28ge1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKCRnb3Z1ay1oZWFkZXItdmVydGljYWwtc3BhY2luZy12YWx1ZSwgXCJib3R0b21cIik7XG5cbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogZGVza3RvcCkge1xuICAgICAgd2lkdGg6IDMzLjMzJTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRnb3Z1ay1ndXR0ZXItaGFsZjtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcblxuICAgICAgLy8gUmVzZXQgZmxvYXQgd2hlbiBsb2dvIGlzIHRoZSBsYXN0IGNoaWxkLCB3aXRob3V0IGEgbmF2aWdhdGlvblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIF9nb3Z1ay1yZWJyYW5kIHtcbiAgICAgIC8vIEFwcGx5IG1hcmdpbnMgdG8gaW50ZXJuYWwgZWxlbWVudHMgdG8gZW11bGF0ZSBwYWRkaW5nXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAvLyBNYWdpYyBudW1iZXJzLCBzZXQgcGFkZGluZyB0byB2ZXJ0aWNhbGx5IGNlbnRyZSBhbGlnbiB0aGUgbG9nb1xuICAgICAgcGFkZGluZy10b3A6IDE2cHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTRweCAtICRnb3Z1ay1oZWFkZXItcmVicmFuZC1sb2dvLWJvdHRvbS1tYXJnaW47XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWhlYWRlcl9fY29udGVudCB7XG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IGRlc2t0b3ApIHtcbiAgICAgIHdpZHRoOiA2Ni42NiU7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRnb3Z1ay1ndXR0ZXItaGFsZjtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1oZWFkZXJfX21lbnUtYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiAxNik7XG4gICAgbWF4LXdpZHRoOiAkZ292dWstaGVhZGVyLW1lbnUtYnV0dG9uLXdpZHRoO1xuICAgIG1pbi1oZWlnaHQ6ICRnb3Z1ay1oZWFkZXItbWVudS1idXR0b24taGVpZ2h0O1xuICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMSk7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgY29sb3I6IGdvdnVrLWNvbG91cihcIndoaXRlXCIpO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgd29yZC1icmVhazogYnJlYWstYWxsO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb246IHNvbGlkIHVuZGVybGluZSAkZ292dWstaGVhZGVyLWxpbmstdW5kZXJsaW5lLXRoaWNrbmVzcztcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBzb2xpZCB1bmRlcmxpbmUgJGdvdnVrLWhlYWRlci1saW5rLXVuZGVybGluZS10aGlja25lc3M7XG5cbiAgICAgIEBpZiAkZ292dWstbGluay11bmRlcmxpbmUtb2Zmc2V0IHtcbiAgICAgICAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAkZ292dWstbGluay11bmRlcmxpbmUtb2Zmc2V0O1xuICAgICAgfVxuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZ292dWstZm9jdXNlZC10ZXh0O1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGdvdnVrLXNoYXBlLWFycm93KCRkaXJlY3Rpb246IGRvd24sICRiYXNlOiAxMHB4LCAkZGlzcGxheTogaW5saW5lLWJsb2NrKTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBtYXJnaW4tbGVmdDogZ292dWstc3BhY2luZygxKTtcbiAgICB9XG5cbiAgICAmW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBnb3Z1ay1zaGFwZS1hcnJvdygkZGlyZWN0aW9uOiB1cCwgJGJhc2U6IDEwcHgsICRkaXNwbGF5OiBpbmxpbmUtYmxvY2spO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiBtb2JpbGUpIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIC8vIGNhbGN1bGF0ZSB0b3Agb2Zmc2V0IGJ5OlxuICAgICAgLy8gLSBnZXR0aW5nIHRoZSB2ZXJ0aWNhbCBzcGFjaW5nIGZvciB0aGUgdG9wIGFuZCB0aGUgYm90dG9tIG9mIHRoZSBoZWFkZXJcbiAgICAgIC8vIC0gYWRkaW5nIHRoYXQgdG8gdGhlIGNyb3duIGhlaWdodFxuICAgICAgLy8gLSBkaXZpZGluZyBpdCBieSAyIHNvIHlvdSBoYXZlIHRoZSB2ZXJ0aWNhbCBjZW50cmUgb2YgdGhlIGhlYWRlclxuICAgICAgLy8gLSBzdWJ0cmFjdGluZyBoYWxmIHRoZSBoZWlnaHQgb2YgdGhlIG1lbnUgYnV0dG9uXG4gICAgICB0b3A6ICgoKGdvdnVrLXNwYWNpbmcoJGdvdnVrLWhlYWRlci12ZXJ0aWNhbC1zcGFjaW5nLXZhbHVlKSAqIDIpICsgJGdvdnVrLWhlYWRlci1jcm93bi1oZWlnaHQpIC8gMikgLVxuICAgICAgICAoJGdvdnVrLWhlYWRlci1tZW51LWJ1dHRvbi1oZWlnaHQgLyAyKTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiB0YWJsZXQpIHtcbiAgICAgIHRvcDogZ292dWstc3BhY2luZygzKTtcbiAgICB9XG5cbiAgICAuZ292dWstZnJvbnRlbmQtc3VwcG9ydGVkICYge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgJltoaWRkZW5dLFxuICAgIC5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQgJltoaWRkZW5dIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWhlYWRlcl9fbmF2aWdhdGlvbiB7XG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJHVudGlsOiBtb2JpbGUpIHtcbiAgICAgIEBpbmNsdWRlIF9nb3Z1ay1yZWJyYW5kIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IGdvdnVrLXNwYWNpbmcoMyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IGRlc2t0b3ApIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMik7XG5cbiAgICAgIEBpbmNsdWRlIF9nb3Z1ay1yZWJyYW5kIHtcbiAgICAgICAgLy8gTWFnaWMgbnVtYmVyIHNvIHRoYXQgdGhlIGJvdHRvbSBvZiB0aGUgbmF2IGxpbmtzIGFsaWducyB3aXRoIHRoZVxuICAgICAgICAvLyBiYXNlbGluZSBvZiB0aGUgR09WLlVLIGxvZ29cbiAgICAgICAgJG5hdmlnYXRpb24tb2Zmc2V0OiA3cHg7XG5cbiAgICAgICAgLy8gQXBwbHkgbWFyZ2lucyB0byBpbnRlcm5hbCBlbGVtZW50cyB0byBlbXVsYXRlIHBhZGRpbmdcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgcGFkZGluZzogKGdvdnVrLXNwYWNpbmcoMykgKyAkbmF2aWdhdGlvbi1vZmZzZXQpIDAgKGdvdnVrLXNwYWNpbmcoMykgLSAkbmF2aWdhdGlvbi1vZmZzZXQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1oZWFkZXJfX3NlcnZpY2UtbmFtZSArIC5nb3Z1ay1oZWFkZXJfX25hdmlnYXRpb24ge1xuICAgIEBpbmNsdWRlIF9nb3Z1ay1yZWJyYW5kIHtcbiAgICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiBkZXNrdG9wKSB7XG4gICAgICAgIC8vIElmIHRoZXJlJ3MgYm90aCBhIHNlcnZpY2UgbmFtZSBhbmQgbmF2aWdhdGlvbixcbiAgICAgICAgLy8gcmVtb3ZlIHRoZSBleHRyYSBwYWRkaW5nIGJldHdlZW4gdGhlbSBvbiBkZXNrdG9wXG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuXG4gICAgICAgIC8vIFJlc3RvcmUgdGhlIGZ1bGwgYm90dG9tIHBhZGRpbmcgYXMgdGhlIG5hdmlnYXRpb24gaXNuJ3Qgc3RhbmRhbG9uZVxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogZ292dWstc3BhY2luZygzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZ292dWstaGVhZGVyX19uYXZpZ2F0aW9uLWxpc3Qge1xuICAgIC8vIFJlc2V0IHVzZXItYWdlbnQgZGVmYXVsdCBsaXN0IHN0eWxlc1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAmW2hpZGRlbl0ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBfZ292dWstcmVicmFuZCB7XG4gICAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogbW9iaWxlLCAkdW50aWw6IGRlc2t0b3ApIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IGdvdnVrLXNwYWNpbmcoMyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWhlYWRlcl9fbmF2aWdhdGlvbi0tZW5kIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogZGVza3RvcCkge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogZ292dWstc3BhY2luZygxKSAwO1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWhlYWRlcl9fbmF2aWdhdGlvbi1pdGVtIHtcbiAgICBwYWRkaW5nOiBnb3Z1ay1zcGFjaW5nKDIpIDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRnb3Z1ay1oZWFkZXItbmF2LWl0ZW0tYm9yZGVyLWNvbG9yO1xuXG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IGRlc2t0b3ApIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDogZ292dWstc3BhY2luZygzKTtcbiAgICAgIHBhZGRpbmc6IGdvdnVrLXNwYWNpbmcoMSkgMDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQtc2l6ZSgkc2l6ZTogMTYpO1xuICAgICAgQGluY2x1ZGUgZ292dWstdHlwb2dyYXBoeS13ZWlnaHQtYm9sZDtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgX2dvdnVrLXJlYnJhbmQge1xuICAgICAgLy8gSW5jcmVhc2UgdG9wIHBhZGRpbmcgb2YgbmF2IGl0ZW1zLi4uXG4gICAgICBwYWRkaW5nLXRvcDogZ292dWstc3BhY2luZygzKTtcblxuICAgICAgLy8gLi4uZXhjZXB0IG9uIGRlc2t0b3BcbiAgICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiBkZXNrdG9wKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiBnb3Z1ay1zcGFjaW5nKDEpO1xuICAgICAgfVxuXG4gICAgICAvLyBDaGFuZ2UgdGhlIGRpdmlkaW5nIGxpbmUgY29sb3VyIGJldHdlZW4gbW9iaWxlIG5hdiBpdGVtc1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogZ292dWstY29sb3VyKFwid2hpdGVcIik7XG5cbiAgICAgIC8vIFJlZHVjZSBkZWZhdWx0IHdlaWdodCBvZiBsaW5rcyBzbyB0aGF0IHdlIGNhbiB1c2UgYm9sZCBmb3IgYWN0aXZlIG9uZXNcbiAgICAgIGEge1xuICAgICAgICBAaW5jbHVkZSBnb3Z1ay10eXBvZ3JhcGh5LXdlaWdodC1yZWd1bGFyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1oZWFkZXJfX25hdmlnYXRpb24taXRlbS0tYWN0aXZlIHtcbiAgICBhIHtcbiAgICAgIEBpbmNsdWRlIF9nb3Z1ay1yZWJyYW5kIHtcbiAgICAgICAgLy8gQ2hhbmdlIGFjdGl2ZSBsaW5rcyB0byB1c2UgYm9sZCB0ZXh0IGluc3RlYWQgb2YgY2hhbmdpbmcgY29sb3VyXG4gICAgICAgIEBpbmNsdWRlIGdvdnVrLXR5cG9ncmFwaHktd2VpZ2h0LWJvbGQ7XG4gICAgICB9XG5cbiAgICAgICY6bGluayxcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOnZpc2l0ZWQge1xuICAgICAgICBjb2xvcjogJGdvdnVrLWhlYWRlci1saW5rLWFjdGl2ZTtcblxuICAgICAgICBAaW5jbHVkZSBfZ292dWstcmVicmFuZCB7XG4gICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gV2hlbiBwcmludGluZywgdXNlIHRoZSBub3JtYWwgYmx1ZSBhcyB0aGlzIGNvbnRyYXN0cyBiZXR0ZXIgd2l0aCB0aGVcbiAgICAgIC8vIHdoaXRlIHByaW50aW5nIGhlYWRlclxuICAgICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJG1lZGlhLXR5cGU6IHByaW50KSB7XG4gICAgICAgIGNvbG9yOiAkZ292dWstYnJhbmQtY29sb3VyO1xuICAgICAgfVxuXG4gICAgICAvLyBXaGVuIGZvY3Vzc2VkLCB0aGUgdGV4dCBjb2xvdXIgbmVlZHMgdG8gYmUgZGFya2VyIHRvIGVuc3VyZSB0aGF0IGNvbG91clxuICAgICAgLy8gY29udHJhc3QgaXMgc3RpbGwgYWNjZXB0YWJsZVxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkZ292dWstZm9jdXMtdGV4dC1jb2xvdXI7XG5cbiAgICAgICAgQGluY2x1ZGUgX2dvdnVrLXJlYnJhbmQge1xuICAgICAgICAgIGNvbG9yOiAkZ292dWstZm9jdXMtdGV4dC1jb2xvdXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZ292dWstaGVhZGVyX19uYXZpZ2F0aW9uLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gIH1cblxuICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkbWVkaWEtdHlwZTogcHJpbnQpIHtcbiAgICAuZ292dWstaGVhZGVyIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgICBjb2xvcjogZ292dWstY29sb3VyKFwiYmxhY2tcIik7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAuZ292dWstaGVhZGVyX19saW5rIHtcbiAgICAgICY6bGluayxcbiAgICAgICY6dmlzaXRlZCB7XG4gICAgICAgIGNvbG9yOiBnb3Z1ay1jb2xvdXIoXCJibGFja1wiKTtcbiAgICAgIH1cblxuICAgICAgLy8gRG8gbm90IGFwcGVuZCBsaW5rIGhyZWYgdG8gR09WLlVLIGxpbmsgd2hlbiBwcmludGluZyAoZS5nLiAnKC8pJylcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyojIHNvdXJjZU1hcHBpbmdVUkw9X2luZGV4LnNjc3MubWFwICovXG4iLCJAaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvY29tcG9uZW50L2luc2V0LXRleHRcIikge1xuICAuZ292dWstaW5zZXQtdGV4dCB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTkpO1xuICAgIEBpbmNsdWRlIGdvdnVrLXRleHQtY29sb3VyO1xuICAgIHBhZGRpbmc6IGdvdnVrLXNwYWNpbmcoMyk7XG4gICAgLy8gTWFyZ2luIHRvcCBpbnRlbmRlZCB0byBjb2xsYXBzZVxuICAgIC8vIFRoaXMgYWRkcyBhbiBhZGRpdGlvbmFsIDEwcHggdG8gdGhlIHBhcmFncmFwaCBhYm92ZVxuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDYsIFwidG9wXCIpO1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDYsIFwiYm90dG9tXCIpO1xuXG4gICAgY2xlYXI6IGJvdGg7XG5cbiAgICBib3JkZXItbGVmdDogJGdvdnVrLWJvcmRlci13aWR0aC13aWRlIHNvbGlkICRnb3Z1ay1ib3JkZXItY29sb3VyO1xuXG4gICAgPiA6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG5cbiAgICA+IDpvbmx5LWNoaWxkLFxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cblxuLyojIHNvdXJjZU1hcHBpbmdVUkw9X2luZGV4LnNjc3MubWFwICovXG4iLCJAaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvY29tcG9uZW50L25vdGlmaWNhdGlvbi1iYW5uZXJcIikge1xuICAuZ292dWstbm90aWZpY2F0aW9uLWJhbm5lciB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTkpO1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDgsIFwiYm90dG9tXCIpO1xuXG4gICAgYm9yZGVyOiAkZ292dWstYm9yZGVyLXdpZHRoIHNvbGlkICRnb3Z1ay1icmFuZC1jb2xvdXI7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ292dWstYnJhbmQtY29sb3VyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiAkZ292dWstZm9jdXMtd2lkdGggc29saWQgJGdvdnVrLWZvY3VzLWNvbG91cjtcbiAgICB9XG4gIH1cblxuICAuZ292dWstbm90aWZpY2F0aW9uLWJhbm5lcl9faGVhZGVyIHtcbiAgICBwYWRkaW5nOiAycHggZ292dWstc3BhY2luZygzKSBnb3Z1ay1zcGFjaW5nKDEpO1xuXG4gICAgLy8gRW5zdXJlcyB0aGUgbm90aWZpY2F0aW9uIGhlYWRlciBhcHBlYXJzIHNlcGFyYXRlIHRvIHRoZSBub3RpZmljYXRpb24gYm9keVxuICAgIC8vIHRleHQgaW4gaGlnaCBjb250cmFzdCBtb2RlXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IHRhYmxldCkge1xuICAgICAgcGFkZGluZzogMnB4IGdvdnVrLXNwYWNpbmcoNCkgZ292dWstc3BhY2luZygxKTtcbiAgICB9XG4gIH1cblxuICAuZ292dWstbm90aWZpY2F0aW9uLWJhbm5lcl9fdGl0bGUge1xuICAgIC8vIFNldCB0aGUgc2l6ZSBhZ2FpbiBiZWNhdXNlIHRoaXMgZWxlbWVudCBpcyBhIGhlYWRpbmcgYW5kIHRoZSB1c2VyIGFnZW50XG4gICAgLy8gZm9udCBzaXplIG92ZXJyaWRlcyB0aGUgaW5oZXJpdGVkIGZvbnQgc2l6ZVxuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQtc2l6ZSgkc2l6ZTogMTkpO1xuICAgIEBpbmNsdWRlIGdvdnVrLXR5cG9ncmFwaHktd2VpZ2h0LWJvbGQ7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgY29sb3I6IGdvdnVrLWNvbG91cihcIndoaXRlXCIpO1xuICB9XG5cbiAgLmdvdnVrLW5vdGlmaWNhdGlvbi1iYW5uZXJfX2NvbnRlbnQge1xuICAgICRwYWRkaW5nLXRhYmxldDogZ292dWstc3BhY2luZyg0KTtcbiAgICBAaW5jbHVkZSBnb3Z1ay10ZXh0LWNvbG91cjtcbiAgICBwYWRkaW5nOiBnb3Z1ay1zcGFjaW5nKDMpO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdvdnVrLWJvZHktYmFja2dyb3VuZC1jb2xvdXI7XG5cbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogdGFibGV0KSB7XG4gICAgICBwYWRkaW5nOiAkcGFkZGluZy10YWJsZXQ7XG4gICAgfVxuXG4gICAgLy8gV3JhcCBjb250ZW50IGF0IHRoZSBzYW1lIHBsYWNlIHRoYXQgYSAyLzMgZ3JpZCBjb2x1bW4gZW5kcywgdG8gbWFpbnRhaW5cbiAgICAvLyBzaG9ydGVyIGxpbmUtbGVuZ3RocyB3aGVuIHRoZSBub3RpZmljYXRpb24gYmFubmVyIGlzIGZ1bGwgd2lkdGhcbiAgICA+ICoge1xuICAgICAgLy8gV2hlbiBlbGVtZW50cyBoYXZlIHRoZWlyIG93biBwYWRkaW5nIChsaWtlIGxpc3RzKSwgaW5jbHVkZSB0aGUgcGFkZGluZ1xuICAgICAgLy8gaW4gdGhlIG1heC13aWR0aCBjYWxjdWxhdGlvblxuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAgICAgLy8gQ2FsY3VsYXRlIHRoZSBpbnRlcm5hbCB3aWR0aCBvZiBhIHR3by10aGlyZHMgY29sdW1uLi4uXG4gICAgICAkdHdvLWNvbC13aWR0aDogKCRnb3Z1ay1wYWdlLXdpZHRoICogMiAvIDMpIC0gKCRnb3Z1ay1ndXR0ZXIgKiAxIC8gMyk7XG5cbiAgICAgIC8vIC4uLmFuZCB0aGVuIGZhY3RvciBpbiB0aGUgbGVmdCBib3JkZXIgYW5kIHBhZGRpbmdcbiAgICAgICRiYW5uZXItZXh0ZXJpb3I6ICgkcGFkZGluZy10YWJsZXQgKyAkZ292dWstYm9yZGVyLXdpZHRoKTtcbiAgICAgIG1heC13aWR0aDogJHR3by1jb2wtd2lkdGggLSAkYmFubmVyLWV4dGVyaW9yO1xuICAgIH1cblxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAuZ292dWstbm90aWZpY2F0aW9uLWJhbm5lcl9faGVhZGluZyB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udC1zaXplKCRzaXplOiAyNCk7XG4gICAgQGluY2x1ZGUgZ292dWstdHlwb2dyYXBoeS13ZWlnaHQtYm9sZDtcblxuICAgIG1hcmdpbjogMCAwIGdvdnVrLXNwYWNpbmcoMyk7XG5cbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLmdvdnVrLW5vdGlmaWNhdGlvbi1iYW5uZXJfX2xpbmsge1xuICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstY29tbW9uO1xuICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstc3R5bGUtbm8tdmlzaXRlZC1zdGF0ZTtcbiAgfVxuXG4gIC5nb3Z1ay1ub3RpZmljYXRpb24tYmFubmVyLS1zdWNjZXNzIHtcbiAgICBib3JkZXItY29sb3I6ICRnb3Z1ay1zdWNjZXNzLWNvbG91cjtcblxuICAgIGJhY2tncm91bmQtY29sb3I6ICRnb3Z1ay1zdWNjZXNzLWNvbG91cjtcblxuICAgIC5nb3Z1ay1ub3RpZmljYXRpb24tYmFubmVyX19saW5rIHtcbiAgICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstc3R5bGUtc3VjY2VzcztcbiAgICB9XG4gIH1cbn1cblxuLyojIHNvdXJjZU1hcHBpbmdVUkw9X2luZGV4LnNjc3MubWFwICovXG4iLCJAaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvY29tcG9uZW50L3BhZ2luYXRpb25cIikge1xuICAvLyBGbGV4Ym94IGVuaGFuY2VtZW50IGZvciBzbWFsbCBzY3JlZW4gdmlzdWFsIGRlc2lnblxuICAvLyBGYWxscyBiYWNrIHRvIGEgZmxvYXQ6IGxlZnQgbGF5b3V0IG9uIG5vbi1mbGV4IGJyb3dzZXJzXG4gIC5nb3Z1ay1wYWdpbmF0aW9uIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig2LCBcImJvdHRvbVwiKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogdGFibGV0KSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLXBhZ2luYXRpb25fX2xpc3Qge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIH1cblxuICAuZ292dWstcGFnaW5hdGlvbl9faXRlbSxcbiAgLmdvdnVrLXBhZ2luYXRpb25fX25leHQsXG4gIC5nb3Z1ay1wYWdpbmF0aW9uX19wcmV2IHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250KDE5KTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtaW4td2lkdGg6IDQ1cHg7XG4gICAgbWluLWhlaWdodDogNDVweDtcbiAgICBwYWRkaW5nOiBnb3Z1ay1zcGFjaW5nKDIpIGdvdnVrLXNwYWNpbmcoMyk7XG4gICAgZmxvYXQ6IGxlZnQ7IC8vIEZsb2F0IGlzIGlnbm9yZWQgaWYgZmxleCBpcyBhY3RpdmUgZm9yIHByZXYvbmV4dCBsaW5rc1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBnb3Z1ay1jb2xvdXIoXCJsaWdodC1ncmV5XCIpO1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1wYWdpbmF0aW9uX19pdGVtIHtcbiAgICAvLyBIaWRlIGl0ZW1zIG9uIHNtYWxsIHNjcmVlbnMgZXhjZXB0IHRoZSBwcmV2L25leHQgaXRlbXMsXG4gICAgLy8gbm9uLWxpbmsgaXRlbXMgYW5kIHRoZSBmaXJzdCBhbmQgbGFzdCBpdGVtc1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAvLyBDZW50ZXIgYWxpZ24gcGFnaW5hdGlvbiBsaW5rcyBpbiB0aGVpciBwYXJlbnQgbGlzdCBpdGVtIHNvIHRoYXQgdGhleVxuICAgIC8vIHZpc3VhbGx5IHNpdCBpbiB0aGUgbWlkZGxlIG9mIHRoZWlyIHRvdWNoIGFyZWFcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogdGFibGV0KSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICAuZ292dWstcGFnaW5hdGlvbl9fcHJldixcbiAgLmdvdnVrLXBhZ2luYXRpb25fX25leHQge1xuICAgIEBpbmNsdWRlIGdvdnVrLXR5cG9ncmFwaHktd2VpZ2h0LWJvbGQ7XG5cbiAgICAvLyBVc2UgZmxleCB0byBhdm9pZCBleHRyYSBzcGFjZSBiZWluZyBpbnRyb2R1Y2VkIHdoZW4gd2hpdGVzcGFjZSBleGlzdHNcbiAgICAvLyBiZXR3ZWVuIHRoZSBhcnJvdyBzdmcgYW5kIHRoZSBsaW5rIHRleHRcbiAgICAuZ292dWstcGFnaW5hdGlvbl9fbGluayB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gIH1cblxuICAuZ292dWstcGFnaW5hdGlvbl9fcHJldiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgLmdvdnVrLXBhZ2luYXRpb25fX25leHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cblxuICAvLyBPbmx5IHNob3cgZmlyc3QsIGxhc3QgYW5kIG5vbi1saW5rIGl0ZW1zIG9uIG1vYmlsZVxuICAuZ292dWstcGFnaW5hdGlvbl9faXRlbS0tY3VycmVudCxcbiAgLmdvdnVrLXBhZ2luYXRpb25fX2l0ZW0tLWVsbGlwc2VzLFxuICAuZ292dWstcGFnaW5hdGlvbl9faXRlbTpmaXJzdC1jaGlsZCxcbiAgLmdvdnVrLXBhZ2luYXRpb25fX2l0ZW06bGFzdC1jaGlsZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAuZ292dWstcGFnaW5hdGlvbl9faXRlbS0tY3VycmVudCB7XG4gICAgQGluY2x1ZGUgZ292dWstdHlwb2dyYXBoeS13ZWlnaHQtYm9sZDtcbiAgICBvdXRsaW5lOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdvdnVrLWxpbmstY29sb3VyO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ292dWstbGluay1jb2xvdXI7XG4gICAgfVxuXG4gICAgLmdvdnVrLXBhZ2luYXRpb25fX2xpbmsge1xuICAgICAgQGluY2x1ZGUgZ292dWstbGluay1zdHlsZS1pbnZlcnNlO1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1wYWdpbmF0aW9uX19pdGVtLS1lbGxpcHNlcyB7XG4gICAgQGluY2x1ZGUgZ292dWstdHlwb2dyYXBoeS13ZWlnaHQtYm9sZDtcbiAgICBjb2xvcjogJGdvdnVrLXNlY29uZGFyeS10ZXh0LWNvbG91cjtcblxuICAgIC8vIFJlbW92ZSBob3ZlciBzdGF0ZSBmb3IgZWxsaXBzaXMgaXRlbXMgYXMgdGhleSBkb24ndCBjb250YWluIGxpbmtzXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAuZ292dWstcGFnaW5hdGlvbl9fbGluayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWluLXdpZHRoOiBnb3Z1ay1zcGFjaW5nKDMpO1xuXG4gICAgLy8gSW5jcmVhc2UgdGhlIHRvdWNoIGFyZWEgZm9yIHRoZSBsaW5rIHRvIHRoZSBwYXJlbnQgZWxlbWVudC5cbiAgICBAbWVkaWEgc2NyZWVuIHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWRkIGxpbmsgaG92ZXIgZGVjb3JhdGlvbiB0byBwcmV2L25leHQgdGV4dCBpZiBubyBsYWJlbCBwcmVzZW50IG9uXG4gICAgLy8gcHJldi9uZXh0IG9ubHkgbW9kZSwgIHNvIHRoYXQgd2UgaGF2ZSBhIGhvdmVyIHN0YXRlIGluIGFsbCBjYXNlc1xuICAgICY6aG92ZXIsXG4gICAgJjphY3RpdmUge1xuICAgICAgLmdvdnVrLXBhZ2luYXRpb25fX2xpbmstdGl0bGUtLWRlY29yYXRlZCB7XG4gICAgICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstZGVjb3JhdGlvbjtcbiAgICAgIH1cblxuICAgICAgLmdvdnVrLXBhZ2luYXRpb25fX2xpbmstbGFiZWwsXG4gICAgICAuZ292dWstcGFnaW5hdGlvbl9fbGluay10aXRsZS0tZGVjb3JhdGVkIHtcbiAgICAgICAgQGluY2x1ZGUgZ292dWstbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgLmdvdnVrLXBhZ2luYXRpb25fX2ljb24ge1xuICAgICAgICBjb2xvcjogJGdvdnVrLWZvY3VzLXRleHQtY29sb3VyO1xuICAgICAgfVxuXG4gICAgICAuZ292dWstcGFnaW5hdGlvbl9fbGluay1sYWJlbCB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLmdvdnVrLXBhZ2luYXRpb25fX2xpbmstdGl0bGUtLWRlY29yYXRlZCB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZ292dWstcGFnaW5hdGlvbl9fbGluay1sYWJlbCB7XG4gICAgQGluY2x1ZGUgZ292dWstdHlwb2dyYXBoeS13ZWlnaHQtcmVndWxhcjtcbiAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLWRlY29yYXRpb247XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG5cbiAgLmdvdnVrLXBhZ2luYXRpb25fX2ljb24ge1xuICAgIC8vIFNldCBzaXplIHVzaW5nIHJlbXMgdG8gbWFrZSB0aGUgaWNvbiBzY2FsZSB3aXRoIHRleHRcbiAgICB3aWR0aDogZ292dWstcHgtdG8tcmVtKDE1cHgpO1xuICAgIGhlaWdodDogZ292dWstcHgtdG8tcmVtKDEzcHgpO1xuICAgIGNvbG9yOiAkZ292dWstc2Vjb25kYXJ5LXRleHQtY29sb3VyO1xuICAgIGZpbGw6IGN1cnJlbnRjb2xvcjtcbiAgICBmb3JjZWQtY29sb3ItYWRqdXN0OiBhdXRvO1xuICB9XG5cbiAgLmdvdnVrLXBhZ2luYXRpb25fX2ljb24tLXByZXYge1xuICAgIG1hcmdpbi1yaWdodDogZ292dWstc3BhY2luZygzKTtcbiAgfVxuXG4gIC5nb3Z1ay1wYWdpbmF0aW9uX19pY29uLS1uZXh0IHtcbiAgICBtYXJnaW4tbGVmdDogZ292dWstc3BhY2luZygzKTtcbiAgfVxuXG4gIC8vIEJsb2NrIG1vZGUgLSBwb3NpdGlvbiBwcmV2aW91cyBhbmQgbmV4dCBsaW5rcyBhYm92ZSBhbmQgYmVsb3cgbnVtYmVyc1xuICAuZ292dWstcGFnaW5hdGlvbi0tYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgLmdvdnVrLXBhZ2luYXRpb25fX25leHQsXG4gICAgLmdvdnVrLXBhZ2luYXRpb25fX3ByZXYge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgZmxvYXQ6IG5vbmU7XG5cbiAgICAgIC5nb3Z1ay1wYWdpbmF0aW9uX19saW5rIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5nb3Z1ay1wYWdpbmF0aW9uX19uZXh0IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IGdvdnVrLXNwYWNpbmcoMyk7XG4gICAgfVxuXG4gICAgLy8gT25seSBhcHBseSBhIGJvcmRlciBiZXR3ZWVuIHByZXYgYW5kIG5leHQgaWYgYm90aCBhcmUgcHJlc2VudFxuICAgIC5nb3Z1ay1wYWdpbmF0aW9uX19wcmV2ICsgLmdvdnVrLXBhZ2luYXRpb25fX25leHQge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRnb3Z1ay1ib3JkZXItY29sb3VyO1xuICAgIH1cblxuICAgIC8vIFNldCB0aGUgYWZ0ZXIgcHNldWRvIGVsZW1lbnQgdG8gYSBibG9jayB3aGljaCBtYWtlcyB0aGUgdGl0bGUgdmlzdWFsbHlcbiAgICAvLyBkaXNwbGF5IGFzIGJsb2NrIGxldmVsIHdoaWxzdCBwcm9ncmFtbWF0aWNhbGx5IGJlaW5nIGlubGluZS4gV2UgZG8gdGhpc1xuICAgIC8vIHRvIGdldCBhcm91bmQgYW4gTlZEQSBxdWlyayB3aGVyZSBhZGphY2VudCBibG9jayBsZXZlbCBlbGVtZW50cyBhcmVcbiAgICAvLyBhbHdheXMgcmVhZCBvdXQgc2VwYXJhdGVseVxuICAgIC5nb3Z1ay1wYWdpbmF0aW9uX19saW5rLXRpdGxlOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLmdvdnVrLXBhZ2luYXRpb25fX2xpbmsge1xuICAgICAgcGFkZGluZy1sZWZ0OiBnb3Z1ay1zcGFjaW5nKDYpO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgJjpub3QoOmZvY3VzKSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZ292dWstcGFnaW5hdGlvbl9faWNvbiB7XG4gICAgICAvLyBUaGlzIG1hZ2ljIG51bWJlciBpcyBicm91Z2h0IHRvIHlvdSBieSB0aGUgZm9sbG93aW5nIGVxdWF0aW9uOlxuICAgICAgLy8gKChsaW5lSGVpZ2h0IOKIkiBhcnJvd0hlaWdodCkgw7cgMikgw7cgZm9udFNpemVcbiAgICAgIC8vICgoMjUg4oiSIDEzKSDDtyAyKSDDtyAxOSA9IDAuMzI2ZW1cbiAgICAgIC8vXG4gICAgICAvLyBUaGlzIGNvdWxkIGhhdmUgYmVlbiBkb25lIHByb2dyYW1tYXRpY2FsbHkgYnV0IHdlIGRvbid0IGhhdmUgZnVuY3Rpb25zXG4gICAgICAvLyBmb3IgZ3JhYmJpbmcgdGhlIGxpbmUtaGVpZ2h0IG9mIHNwZWNpZmljIHR5cG9ncmFwaHkgc2l6ZXMganVzdCB5ZXQuXG4gICAgICBtYXJnaW4tdG9wOiAwLjMyNmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IGdvdnVrLXNwYWNpbmcoNikgKiAtMTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgfVxufVxuXG4vKiMgc291cmNlTWFwcGluZ1VSTD1faW5kZXguc2Nzcy5tYXAgKi9cbiIsIkBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9jb21wb25lbnQvcGFuZWxcIikge1xuICAuZ292dWstcGFuZWwge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDM2KTtcblxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbiAgICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDMpO1xuICAgIHBhZGRpbmc6IGdvdnVrLXNwYWNpbmcoNykgLSAkZ292dWstYm9yZGVyLXdpZHRoO1xuXG4gICAgYm9yZGVyOiAkZ292dWstYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJHVudGlsOiB0YWJsZXQpIHtcbiAgICAgIHBhZGRpbmc6IGdvdnVrLXNwYWNpbmcoaWYoJGdvdnVrLW5ldy10eXBvZ3JhcGh5LXNjYWxlLCA0LCAzKSkgLSAkZ292dWstYm9yZGVyLXdpZHRoO1xuXG4gICAgICAvLyBUaGlzIGlzIGFuIGlmLWFsbC1lbHNlLWZhaWxzIGF0dGVtcHQgdG8gc3RvcCBsb25nIHdvcmRzIGZyb21cbiAgICAgIC8vIG92ZXJmbG93aW5nIHRoZSBjb250YWluZXIgb24gdmVyeSBuYXJyb3cgdmlld3BvcnRzIGJ5IGZvcmNpbmcgdGhlbSB0b1xuICAgICAgLy8gYnJlYWsgYW5kIHdyYXAgaW5zdGVhZC4gVGhpcyBvdmVyZmxvd2luZyBpcyBtb3JlIGxpa2VseSB0byBoYXBwZW4gd2hlblxuICAgICAgLy8gdXNlciBpbmNyZWFzZXMgdGV4dCBzaXplIG9uIGEgbW9iaWxlIGVnLiB1c2luZyBpT1MgU2FmYXJpIHRleHQgcmVzaXplXG4gICAgICAvLyBjb250cm9scy5cbiAgICAgIC8vXG4gICAgICAvLyBUaGUgb3ZlcmZsb3dpbmcgaXMgYSBwYXJ0aWN1bGFyIHByb2JsZW0gd2l0aCB0aGUgcGFuZWwgY29tcG9uZW50IHNpbmNlXG4gICAgICAvLyBpdCB1c2VzIHdoaXRlIHRleHQ6IHdoZW4gdGhlIHRleHQgb3ZlcmZsb3dzIHRoZSBjb250YWluZXIsIGl0IGlzXG4gICAgICAvLyBpbnZpc2libGUgb24gdGhlIHdoaXRlIChwYWdlKSBiYWNrZ3JvdW5kLiBXaGVuIHRoZSB0ZXh0IGluIG91ciBvdGhlclxuICAgICAgLy8gY29tcG9uZW50cyBvdmVyZmxvdywgdGhlIHVzZXIgbWlnaHQgaGF2ZSB0byBzY3JvbGwgaG9yaXpvbnRhbGx5IHRvIHZpZXdcbiAgICAgIC8vIGl0IGJ1dCB0aGUgdGhlIHRleHQgcmVtYWlucyBsZWdpYmxlLlxuICAgICAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcblxuICAgICAgLy8gU3VwcG9ydCBJRSAoYXV0b3ByZWZpeGVyIGRvZXNuJ3QgYWRkIHRoaXMgYXMgaXQncyBub3QgYSBwcmVmaXgpXG4gICAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLXBhbmVsLS1jb25maXJtYXRpb24ge1xuICAgIGNvbG9yOiBnb3Z1ay1jb2xvdXIoXCJ3aGl0ZVwiKTtcbiAgICBiYWNrZ3JvdW5kOiBnb3Z1ay1jb2xvdXIoXCJncmVlblwiKTtcblxuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRtZWRpYS10eXBlOiBwcmludCkge1xuICAgICAgYm9yZGVyLWNvbG9yOiBjdXJyZW50Y29sb3I7XG4gICAgICBjb2xvcjogJGdvdnVrLXByaW50LXRleHQtY29sb3VyO1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuZ292dWstcGFuZWxfX3RpdGxlIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250LXNpemUoJHNpemU6IDQ4KTtcbiAgICBAaW5jbHVkZSBnb3Z1ay10eXBvZ3JhcGh5LXdlaWdodC1ib2xkO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogZ292dWstc3BhY2luZyg2KTtcbiAgfVxuXG4gIC5nb3Z1ay1wYW5lbF9fdGl0bGU6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vKiMgc291cmNlTWFwcGluZ1VSTD1faW5kZXguc2Nzcy5tYXAgKi9cbiIsIkBpbXBvcnQgXCIuLi9idXR0b24vaW5kZXhcIjtcbkBpbXBvcnQgXCIuLi9pbnB1dC9pbmRleFwiO1xuXG5AaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvY29tcG9uZW50L3Bhc3N3b3JkLWlucHV0XCIpIHtcbiAgLmdvdnVrLXBhc3N3b3JkLWlucHV0X193cmFwcGVyIHtcbiAgICAvLyBUaGlzIGVsZW1lbnQgaW5oZXJpdHMgc3R5bGVzIGZyb20gLmdvdnVrLWlucHV0X193cmFwcGVyLCBpbmNsdWRpbmc6XG4gICAgLy8gLSBiZWluZyBkaXNwbGF5OiBibG9jayB3aXRoIGNvbnRlbnRzIGluIGEgc3RhY2tlZCBjb2x1bW4gYmVsb3cgdGhlIG1vYmlsZVxuICAgIC8vICAgYnJlYWtwb2ludFxuICAgIC8vIC0gYmVpbmcgZGlzcGxheTogZmxleCBhYm92ZSB0aGUgbW9iaWxlIGJyZWFrcG9pbnRcblxuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiBtb2JpbGUpIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgIC8vIFRoZSBkZWZhdWx0IG9mIGBzdHJldGNoYCBtYWtlcyB0aGUgdG9nZ2xlIGJ1dHRvbiBhcHBlYXIgdGFsbGVyIHRoYW4gdGhlXG4gICAgICAvLyBpbnB1dCwgZHVlIHRvIHVzaW5nIGJveC1zaGFkb3csIHdoaWNoIHdlIGRvbid0IHBhcnRpY3VsYXJseSB3YW50IGluXG4gICAgICAvLyB0aGlzIHNpdHVhdGlvblxuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLXBhc3N3b3JkLWlucHV0X19pbnB1dCB7XG4gICAgLy8gSUUgMTEgYW5kIE1pY3Jvc29mdCBFZGdlIGNvbWVzIHdpdGggaXRzIG93biBwYXNzd29yZCByZXZlYWwgZnVuY3Rpb24uIFdlXG4gICAgLy8gd2FudCB0byBoaWRlIGl0LCBzbyB0aGF0IHRoZXJlIGFyZW4ndCB0d28gY29udHJvbHMgcHJlc2VudGVkIHRvIHRoZSB1c2VyXG4gICAgLy8gdGhhdCBkbyB0aGUgc2FtZSB0aGluZyBidXQgYXJlbid0IGluIHN5bmMgd2l0aCBvbmUgYW5vdGhlci4gVGhpcyBkb2Vzbid0XG4gICAgLy8gYWZmZWN0IHRoZSBmdW5jdGlvbiB0aGF0IGFsbG93cyBFZGdlIHVzZXJzIHRvIHRvZ2dsZSBwYXNzd29yZCB2aXNpYmlsaXR5XG4gICAgLy8gYnkgcHJlc3NpbmcgQWx0K0Y4LCB3aGljaCBjYW5ub3QgYmUgcHJvZ3JhbW1hdGljYWxseSBkaXNhYmxlZC5cbiAgICAmOjotbXMtcmV2ZWFsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLXBhc3N3b3JkLWlucHV0X190b2dnbGUge1xuICAgIC8vIEFkZCB0b3AgbWFyZ2luIHNvIHRoZSBidXR0b24gZG9lc24ndCBvYnNjdXJlIHRoZSBpbnB1dCdzIGZvY3VzIHN0eWxlXG4gICAgbWFyZ2luLXRvcDogZ292dWstc3BhY2luZygxKTtcblxuICAgIC8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbi1ib3R0b20gZnJvbSBidXR0b25cbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgLy8gSGlkZSB0aGUgYnV0dG9uIGJ5IGRlZmF1bHQsIEpTIHJlbW92ZXMgdGhpcyBhdHRyaWJ1dGVcbiAgICAmW2hpZGRlbl0ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogbW9iaWxlKSB7XG4gICAgICAvLyBCdXR0b25zIGFyZSBub3JtYWxseSAxMDAlIHdpZGUgb24gbW9iaWxlLCBidXQgd2UgZG9uJ3Qgd2FudCB0aGF0IGhlcmVcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICBmbGV4LWJhc2lzOiA1ZW07XG5cbiAgICAgIC8vIE1vdmUgdGhlIHNwYWNpbmcgZnJvbSB0b3AgdG8gdGhlIGxlZnRcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogZ292dWstc3BhY2luZygxKTtcbiAgICB9XG4gIH1cbn1cblxuLyojIHNvdXJjZU1hcHBpbmdVUkw9X2luZGV4LnNjc3MubWFwICovXG4iLCJAaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvY29tcG9uZW50L3RhZ1wiKSB7XG4gICRnb3Z1ay10YWctbWF4LXdpZHRoOiBpZihtYXAtaGFzLWtleSgkZ292dWstYnJlYWtwb2ludHMsIFwibW9iaWxlXCIpLCBtYXAtZ2V0KCRnb3Z1ay1icmVha3BvaW50cywgXCJtb2JpbGVcIikgLyAyLCAxNjBweCk7XG5cbiAgLmdvdnVrLXRhZyB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTkpO1xuXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgLy8gc2V0IGEgbWF4LXdpZHRoIGFsb25nIHdpdGggb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZCBiZWxvdyBmb3IgaW5zdGFuY2VzXG4gICAgLy8gd2hlcmUgYSB0YWcgaGFzIGEgc2luZ2xlIGxvbmcgd29yZCBhbmQgY291bGQgb3ZlcmZsb3cgaXRzIGJvdW5kYXJpZXMuXG4gICAgLy8gVGhlIG1heC13aWR0aCBpcyBuZWNlc3NhcnkgYXMgYnJlYWstd29yZCByZXF1aXJlcyBhIGJvdW5kaW5nIGJveCB0byBiYXNlXG4gICAgLy8gd2hlcmUgdG8gYnJlYWsgb2ZmIG9mLlxuICAgIG1heC13aWR0aDogJGdvdnVrLXRhZy1tYXgtd2lkdGg7XG5cbiAgICAvLyBUaGVzZSBuZWdhdGl2ZSBtYXJnaW5zIG1ha2Ugc3VyZSB0aGF0IHRoZSB0YWcgY29tcG9uZW50IGRvZXNu4oCZdCBpbmNyZWFzZVxuICAgIC8vIHRoZSBzaXplIG9mIGl0cyBjb250YWluZXIuIE90aGVyd2lzZSwgZm9yIGV4YW1wbGUsIGEgdGFibGUgcm93IGNvbnRhaW5pbmdcbiAgICAvLyBhIHRhZyB3aWxsIGJlIHRhbGxlciB0aGFuIG9uZSBjb250YWluaW5nIHBsYWluIHRleHQuXG4gICAgLy9cbiAgICAvLyBUaGUgbmVnYXRpdmUgbWFyZ2luIGFkZGVkIHRvIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXRjaGVzIHRoZSBleHRyYSBwYWRkaW5nXG4gICAgLy8gYWRkZWQuXG4gICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICBtYXJnaW4tYm90dG9tOiAtM3B4O1xuXG4gICAgcGFkZGluZy10b3A6IDJweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDNweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgICBjb2xvcjogZ292dWstc2hhZGUoZ292dWstY29sb3VyKFwiYmx1ZVwiKSwgNjAlKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBnb3Z1ay10aW50KGdvdnVrLWNvbG91cihcImJsdWVcIiksIDcwJSk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG5cbiAgICAvLyBXaGVuIGZvcmNlZCBjb2xvdXIgbW9kZSBpcyBhY3RpdmUsIGZvciBleGFtcGxlIHRvIHByb3ZpZGUgaGlnaCBjb250cmFzdCxcbiAgICAvLyB0aGUgYmFja2dyb3VuZCBjb2xvdXIgb2YgdGhlIHRhZyBpcyB0aGUgc2FtZSBhcyB0aGUgcmVzdCBvZiB0aGUgcGFnZS4gVG9cbiAgICAvLyBlbnN1cmUgdGhhdCB0aGUgdGFnIGlzIHBlcmNlaXZlZCBhcyBzZXBhcmF0ZSBmcm9tIGFueSBzdXJyb3VuZCB0ZXh0LCBpdFxuICAgIC8vIGlzIG1hZGUgYm9sZC5cbiAgICAvL1xuICAgIC8vIFRyYW5zcGFyZW50IG91dGxpbmVzIGFyZSBubyBsb25nZXIgYWRkZWQsIGFzIHRoZXkgbWFrZSB0aGUgVGFnIGxvb2tcbiAgICAvLyBpbmRpc3Rpbmd1aXNoYWJsZSBmcm9tIGEgYnV0dG9uIOKAkyBidXQgdGhlIHRhZyBpcyBub3QgaW50ZXJhY3RpdmUgaW4gdGhlXG4gICAgLy8gc2FtZSB3YXkuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLXRhZy0tZ3JleSB7XG4gICAgY29sb3I6IGdvdnVrLXNoYWRlKGdvdnVrLWNvbG91cihcImRhcmstZ3JleVwiKSwgNTAlKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBnb3Z1ay10aW50KGdvdnVrLWNvbG91cihcImRhcmstZ3JleVwiKSwgODUlKTtcbiAgfVxuXG4gIC5nb3Z1ay10YWctLXB1cnBsZSB7XG4gICAgY29sb3I6IGdvdnVrLXNoYWRlKGdvdnVrLWNvbG91cihcImJyaWdodC1wdXJwbGVcIiksIDUwJSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZ292dWstdGludChnb3Z1ay1jb2xvdXIoXCJicmlnaHQtcHVycGxlXCIpLCA4NSUpO1xuICB9XG5cbiAgLmdvdnVrLXRhZy0tdHVycXVvaXNlIHtcbiAgICBjb2xvcjogZ292dWstc2hhZGUoZ292dWstY29sb3VyKFwidHVycXVvaXNlXCIpLCA2MCUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGdvdnVrLXRpbnQoZ292dWstY29sb3VyKFwidHVycXVvaXNlXCIpLCA4MCUpO1xuICB9XG5cbiAgLmdvdnVrLXRhZy0tYmx1ZSB7XG4gICAgY29sb3I6IGdvdnVrLXNoYWRlKGdvdnVrLWNvbG91cihcImJsdWVcIiksIDYwJSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZ292dWstdGludChnb3Z1ay1jb2xvdXIoXCJibHVlXCIpLCA3MCUpO1xuICB9XG5cbiAgLmdvdnVrLXRhZy0tbGlnaHQtYmx1ZSB7XG4gICAgY29sb3I6IGdvdnVrLXNoYWRlKGdvdnVrLWNvbG91cihcImJsdWVcIiksIDYwJSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZ292dWstdGludChnb3Z1ay1jb2xvdXIoXCJibHVlXCIpLCA5MCUpO1xuICB9XG5cbiAgLmdvdnVrLXRhZy0teWVsbG93IHtcbiAgICBjb2xvcjogZ292dWstc2hhZGUoZ292dWstY29sb3VyKFwieWVsbG93XCIpLCA2NSUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGdvdnVrLXRpbnQoZ292dWstY29sb3VyKFwieWVsbG93XCIpLCA3NSUpO1xuICB9XG5cbiAgLmdvdnVrLXRhZy0tb3JhbmdlIHtcbiAgICBjb2xvcjogZ292dWstc2hhZGUoZ292dWstY29sb3VyKFwib3JhbmdlXCIpLCA1NSUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGdvdnVrLXRpbnQoZ292dWstY29sb3VyKFwib3JhbmdlXCIpLCA3MCUpO1xuICB9XG5cbiAgLmdvdnVrLXRhZy0tcmVkIHtcbiAgICBjb2xvcjogZ292dWstc2hhZGUoZ292dWstY29sb3VyKFwicmVkXCIpLCA4MCUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGdvdnVrLXRpbnQoZ292dWstY29sb3VyKFwicmVkXCIpLCA3NSUpO1xuICB9XG5cbiAgLmdvdnVrLXRhZy0tcGluayB7XG4gICAgY29sb3I6IGdvdnVrLXNoYWRlKGdvdnVrLWNvbG91cihcInBpbmtcIiksIDUwJSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZ292dWstdGludChnb3Z1ay1jb2xvdXIoXCJwaW5rXCIpLCA4NSUpO1xuICB9XG5cbiAgLmdvdnVrLXRhZy0tZ3JlZW4ge1xuICAgIGNvbG9yOiBnb3Z1ay1zaGFkZShnb3Z1ay1jb2xvdXIoXCJncmVlblwiKSwgMjAlKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBnb3Z1ay10aW50KGdvdnVrLWNvbG91cihcImdyZWVuXCIpLCA4MCUpO1xuICB9XG59XG5cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPV9pbmRleC5zY3NzLm1hcCAqL1xuIiwiQGltcG9ydCBcIi4uL3RhZy9pbmRleFwiO1xuXG5AaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvY29tcG9uZW50L3BoYXNlLWJhbm5lclwiKSB7XG4gIC5nb3Z1ay1waGFzZS1iYW5uZXIge1xuICAgIHBhZGRpbmctdG9wOiBnb3Z1ay1zcGFjaW5nKDIpO1xuICAgIHBhZGRpbmctYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDIpO1xuXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRnb3Z1ay1ib3JkZXItY29sb3VyO1xuICB9XG5cbiAgLmdvdnVrLXBoYXNlLWJhbm5lcl9fY29udGVudCB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTYpO1xuICAgIEBpbmNsdWRlIGdvdnVrLXRleHQtY29sb3VyO1xuXG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLmdvdnVrLXBoYXNlLWJhbm5lcl9fY29udGVudF9fdGFnIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250LXNpemUoJHNpemU6IDE2KTtcbiAgICBtYXJnaW4tcmlnaHQ6IGdvdnVrLXNwYWNpbmcoaWYoJGdvdnVrLW5ldy10eXBvZ3JhcGh5LXNjYWxlLCAzLCAyKSk7XG5cbiAgICBAaWYgJGdvdnVrLW5ldy10eXBvZ3JhcGh5LXNjYWxlIHtcbiAgICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiB0YWJsZXQpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBnb3Z1ay1zcGFjaW5nKDIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1waGFzZS1iYW5uZXJfX3RleHQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxufVxuXG4vKiMgc291cmNlTWFwcGluZ1VSTD1faW5kZXguc2Nzcy5tYXAgKi9cbiIsIkBpbXBvcnQgXCIuLi9lcnJvci1tZXNzYWdlL2luZGV4XCI7XG5AaW1wb3J0IFwiLi4vZmllbGRzZXQvaW5kZXhcIjtcbkBpbXBvcnQgXCIuLi9oaW50L2luZGV4XCI7XG5AaW1wb3J0IFwiLi4vbGFiZWwvaW5kZXhcIjtcblxuQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL2NvbXBvbmVudC9yYWRpb3NcIikge1xuICAkZ292dWstdG91Y2gtdGFyZ2V0LWd1dHRlcjogNHB4O1xuICAkZ292dWstcmFkaW9zLXNpemU6IDQwcHg7XG4gICRnb3Z1ay10b3VjaC10YXJnZXQtc2l6ZTogKCRnb3Z1ay1yYWRpb3Mtc2l6ZSArICRnb3Z1ay10b3VjaC10YXJnZXQtZ3V0dGVyKTtcbiAgJGdvdnVrLXNtYWxsLXJhZGlvcy1zaXplOiAyNHB4O1xuICAkZ292dWstcmFkaW9zLWxhYmVsLXBhZGRpbmctbGVmdC1yaWdodDogZ292dWstc3BhY2luZygzKTtcbiAgLy8gV2hlbiB0aGUgZGVmYXVsdCBmb2N1cyB3aWR0aCBpcyB1c2VkIG9uIGEgY3VydmVkIGVkZ2UgaXQgbG9va3MgdmlzdWFsbHlcbiAgLy8gc21hbGxlci4gU28gZm9yIHRoZSBjaXJjdWxhciByYWRpb3Mgd2UgYnVtcCB0aGUgZGVmYXVsdCB0byBtYWtlIGl0IGxvb2tcbiAgLy8gdmlzdWFsbHkgY29uc2lzdGVudC5cbiAgJGdvdnVrLXJhZGlvcy1mb2N1cy13aWR0aDogJGdvdnVrLWZvY3VzLXdpZHRoICsgMXB4O1xuXG4gIC5nb3Z1ay1yYWRpb3NfX2l0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDIpO1xuICB9XG5cbiAgLmdvdnVrLXJhZGlvc19faXRlbTpsYXN0LWNoaWxkLFxuICAuZ292dWstcmFkaW9zX19pdGVtOmxhc3Qtb2YtdHlwZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC5nb3Z1ay1yYWRpb3NfX2lucHV0IHtcbiAgICAvLyBBbGxvdyB0aGUgaW5wdXQgdG8gc2l0IGFib3ZlIHRoZSBsYWJlbCwgZW5hYmxpbmcgaXRzIHByb3BlciBkZXRlY3Rpb25cbiAgICAvLyB3aGVuIGV4cGxvcmluZyBieSB0b3VjaCBvciB1c2luZyBhdXRvbWF0aW9uIHRvb2xzIGxpa2UgU2VsZW5pdW1cbiAgICB6LWluZGV4OiAxO1xuICAgIHdpZHRoOiAkZ292dWstdG91Y2gtdGFyZ2V0LXNpemU7XG4gICAgaGVpZ2h0OiAkZ292dWstdG91Y2gtdGFyZ2V0LXNpemU7XG4gICAgbWFyZ2luOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgLmdvdnVrLXJhZGlvc19fbGFiZWwge1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcblxuICAgIC8vIEVuc3VyZSB0aGF0IHRoZSB3aWR0aCBvZiB0aGUgbGFiZWwgaXMgbmV2ZXIgbW9yZSB0aGFuIHRoZSB3aWR0aCBvZiB0aGVcbiAgICAvLyBjb250YWluZXIgbWludXMgdGhlIGlucHV0IHdpZHRoIG1pbnVzIHRoZSBwYWRkaW5nIG9uIGVpdGhlciBzaWRlIG9mXG4gICAgLy8gdGhlIGxhYmVsLiBUaGlzIHByZXZlbnRzIHRoZSBsYWJlbCBmcm9tIGdvaW5nIG9udG8gdGhlIG5leHQgbGluZSBkdWUgdG9cbiAgICAvLyBfX2l0ZW0gdXNpbmcgZmxleC13cmFwIGJlY2F1c2Ugd2Ugd2FudCBoaW50cyBvbiBhIHNlcGFyYXRlIGxpbmVcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtICN7KCRnb3Z1ay1yYWRpb3MtbGFiZWwtcGFkZGluZy1sZWZ0LXJpZ2h0ICsgJGdvdnVrLXRvdWNoLXRhcmdldC1zaXplICsgZ292dWstc3BhY2luZygzKSl9KTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmc6IChnb3Z1ay1zcGFjaW5nKDEpICsgJGdvdnVrLWJvcmRlci13aWR0aC1mb3JtLWVsZW1lbnQpIGdvdnVrLXNwYWNpbmcoMyk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIC8vIHJlbW92ZSAzMDBtcyBwYXVzZSBvbiBtb2JpbGVcbiAgICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgfVxuXG4gIC8vICggKSBSYWRpbyByaW5nXG4gIC5nb3Z1ay1yYWRpb3NfX2xhYmVsOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAoJGdvdnVrLXRvdWNoLXRhcmdldC1ndXR0ZXIgLyAyKTtcbiAgICBsZWZ0OiAoJGdvdnVrLXRvdWNoLXRhcmdldC1ndXR0ZXIgLyAyKTtcbiAgICB3aWR0aDogJGdvdnVrLXJhZGlvcy1zaXplO1xuICAgIGhlaWdodDogJGdvdnVrLXJhZGlvcy1zaXplO1xuICAgIGJvcmRlcjogJGdvdnVrLWJvcmRlci13aWR0aC1mb3JtLWVsZW1lbnQgc29saWQgY3VycmVudGNvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC8vICDigKIgIFJhZGlvIGJ1dHRvblxuICAvL1xuICAvLyBXZSBjcmVhdGUgdGhlICdidXR0b24nIGVudGlyZWx5IG91dCBvZiAnYm9yZGVyJyBzbyB0aGF0IHRoZXkgcmVtYWluXG4gIC8vICdmaWxsZWQnIGV2ZW4gd2hlbiBjb2xvdXJzIGFyZSBvdmVycmlkZGVuIGluIHRoZSBicm93c2VyLlxuICAuZ292dWstcmFkaW9zX19sYWJlbDo6YWZ0ZXIge1xuICAgICRyYWRpby1idXR0b24tc2l6ZTogZ292dWstc3BhY2luZygyKTtcblxuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICAgLy8gUG9zaXRpb25lZCBieSBnZXR0aW5nIGhhbGYgdGhlIHRvdWNoIHRhcmdldCwgc28gd2UgaGF2ZSB0aGUgY2VudHJlIG9mIHRoZVxuICAgIC8vIGlucHV0LCBhbmQgdGhlbiBtb3ZpbmcgYmFjayBieSB0aGUgYnV0dG9uJ3MgYm9yZGVyIHdpZHRoLCB0aHVzIHBvc2l0aW9uaW5nXG4gICAgLy8gdGhlIGNlbnRyZSBvZiB0aGUgYnV0dG9uIGluIHRoZSBjZW50cmUgb2YgdGhlIGlucHV0LlxuICAgIHRvcDogKCgkZ292dWstdG91Y2gtdGFyZ2V0LXNpemUgLyAyKSAtICRyYWRpby1idXR0b24tc2l6ZSk7XG4gICAgbGVmdDogKCgkZ292dWstdG91Y2gtdGFyZ2V0LXNpemUgLyAyKSAtICRyYWRpby1idXR0b24tc2l6ZSk7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogJHJhZGlvLWJ1dHRvbi1zaXplIHNvbGlkIGN1cnJlbnRjb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgb3BhY2l0eTogMDtcbiAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Y29sb3I7XG4gIH1cblxuICAuZ292dWstcmFkaW9zX19oaW50IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiBnb3Z1ay1zcGFjaW5nKC0xKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZ292dWstcmFkaW9zLWxhYmVsLXBhZGRpbmctbGVmdC1yaWdodDtcbiAgICBwYWRkaW5nLWxlZnQ6ICgkZ292dWstcmFkaW9zLWxhYmVsLXBhZGRpbmctbGVmdC1yaWdodCArICRnb3Z1ay10b3VjaC10YXJnZXQtc2l6ZSk7XG4gIH1cblxuICAvLyBUaGlzIGlzIHRvIGJ5cGFzcyBnb3Z1ay1oaW50J3Mgc3BlY2lmaWNpdHkgb24gaGludHMgZm9sbG93aW5nIGxhYmVscyBoYXZpbmdcbiAgLy8gYSBtYXJnaW4gYm90dG9tIG9mIDEwcHggKGdvdnVrLXNwYWNpbmcoMikpLiBCZWNhdXNlIHJhZGlvcyBhcmUgZmxleGJveCxcbiAgLy8gdGhlIG1hcmdpbiBkb2Vzbid0IGNvbGxhcHNlIHNvIHdlIGhhdmUgdG8gZG8gdGhpcyBtYW51YWxseS5cbiAgLmdvdnVrLWxhYmVsOm5vdCguZ292dWstbGFiZWwtLW0pOm5vdCguZ292dWstbGFiZWwtLWwpOm5vdCguZ292dWstbGFiZWwtLXhsKSArIC5nb3Z1ay1yYWRpb3NfX2hpbnQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAvLyBGb2N1c2VkIHN0YXRlXG4gIC5nb3Z1ay1yYWRpb3NfX2lucHV0OmZvY3VzICsgLmdvdnVrLXJhZGlvc19fbGFiZWw6OmJlZm9yZSB7XG4gICAgYm9yZGVyLXdpZHRoOiA0cHg7XG5cbiAgICAvLyBXaGVuIGNvbG91cnMgYXJlIG92ZXJyaWRkZW4sIHRoZSB5ZWxsb3cgYm94LXNoYWRvdyBiZWNvbWVzIGludmlzaWJsZVxuICAgIC8vIHdoaWNoIG1lYW5zIHRoZSBmb2N1cyBzdGF0ZSBpcyBsZXNzIG9idmlvdXMuIEJ5IGFkZGluZyBhIHRyYW5zcGFyZW50XG4gICAgLy8gb3V0bGluZSwgd2hpY2ggYmVjb21lcyBzb2xpZCAodGV4dC1jb2xvdXJlZCkgaW4gdGhhdCBjb250ZXh0LCB3ZSBlbnN1cmVcbiAgICAvLyB0aGUgZm9jdXMgcmVtYWlucyBjbGVhcmx5IHZpc2libGUuXG4gICAgb3V0bGluZTogJGdvdnVrLWZvY3VzLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIG91dGxpbmUtb2Zmc2V0OiAxcHg7XG5cbiAgICAvLyBXaGVuIGluIGFuIGV4cGxpY2l0IGZvcmNlZC1jb2xvciBtb2RlLCB3ZSBjYW4gdXNlIHRoZSBIaWdobGlnaHQgc3lzdGVtXG4gICAgLy8gY29sb3IgZm9yIHRoZSBvdXRsaW5lIHRvIGJldHRlciBtYXRjaCBmb2N1cyBzdGF0ZXMgb2YgbmF0aXZlIGNvbnRyb2xzXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gICAgICBvdXRsaW5lLWNvbG9yOiBIaWdobGlnaHQ7XG4gICAgfVxuXG4gICAgYm94LXNoYWRvdzogMCAwIDAgJGdvdnVrLXJhZGlvcy1mb2N1cy13aWR0aCAkZ292dWstZm9jdXMtY29sb3VyO1xuICB9XG5cbiAgLy8gU2VsZWN0ZWQgc3RhdGVcbiAgLmdvdnVrLXJhZGlvc19faW5wdXQ6Y2hlY2tlZCArIC5nb3Z1ay1yYWRpb3NfX2xhYmVsOjphZnRlciB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlXG4gIC5nb3Z1ay1yYWRpb3NfX2lucHV0OmRpc2FibGVkLFxuICAuZ292dWstcmFkaW9zX19pbnB1dDpkaXNhYmxlZCArIC5nb3Z1ay1yYWRpb3NfX2xhYmVsIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICB9XG5cbiAgLmdvdnVrLXJhZGlvc19faW5wdXQ6ZGlzYWJsZWQgKyAuZ292dWstcmFkaW9zX19sYWJlbCxcbiAgLmdvdnVrLXJhZGlvc19faW5wdXQ6ZGlzYWJsZWQgfiAuZ292dWstaGludCB7XG4gICAgb3BhY2l0eTogMC41O1xuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIElubGluZSByYWRpb3NcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLmdvdnVrLXJhZGlvcy0taW5saW5lIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogdGFibGV0KSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgICAgIC5nb3Z1ay1yYWRpb3NfX2l0ZW0ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGdvdnVrLXNwYWNpbmcoNCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIERpdmlkZXJzICgnb3InKVxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAuZ292dWstcmFkaW9zX19kaXZpZGVyIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiAxOSk7XG4gICAgQGluY2x1ZGUgZ292dWstdGV4dC1jb2xvdXI7XG4gICAgJGdvdnVrLWRpdmlkZXItc2l6ZTogJGdvdnVrLXJhZGlvcy1zaXplICFkZWZhdWx0O1xuICAgIHdpZHRoOiAkZ292dWstZGl2aWRlci1zaXplO1xuICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMik7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIENvbmRpdGlvbmFsIHJldmVhbHNcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gVGhlIG5hcnJvdyBib3JkZXIgaXMgdXNlZCBpbiB0aGUgY29uZGl0aW9uYWwgcmV2ZWFscyBiZWNhdXNlIHRoZSBib3JkZXIgaGFzXG4gIC8vIHRvIGJlIGFuIGV2ZW4gbnVtYmVyIGluIG9yZGVyIHRvIGJlIGNlbnRyZWQgdW5kZXIgdGhlIDQwcHggY2hlY2tib3ggcmFkaW8uXG4gICRjb25kaXRpb25hbC1ib3JkZXItd2lkdGg6ICRnb3Z1ay1ib3JkZXItd2lkdGgtbmFycm93O1xuICAvLyBDYWxjdWxhdGUgdGhlIGFtb3VudCBvZiBwYWRkaW5nIG5lZWRlZCB0byBrZWVwIHRoZSBib3JkZXIgY2VudGVyZWQgYWdhaW5zdFxuICAvLyB0aGUgcmFkaW9zLlxuICAkY29uZGl0aW9uYWwtYm9yZGVyLXBhZGRpbmc6ICgkZ292dWstdG91Y2gtdGFyZ2V0LXNpemUgLyAyKSAtICgkY29uZGl0aW9uYWwtYm9yZGVyLXdpZHRoIC8gMik7XG4gIC8vIE1vdmUgdGhlIGJvcmRlciBjZW50ZXJlZCB3aXRoIHRoZSByYWRpb3NcbiAgJGNvbmRpdGlvbmFsLW1hcmdpbi1sZWZ0OiAkY29uZGl0aW9uYWwtYm9yZGVyLXBhZGRpbmc7XG4gIC8vIE1vdmUgdGhlIGNvbnRlbnRzIG9mIHRoZSBjb25kaXRpb25hbCBpbmxpbmUgd2l0aCB0aGUgbGFiZWxcbiAgJGNvbmRpdGlvbmFsLXBhZGRpbmctbGVmdDogJGNvbmRpdGlvbmFsLWJvcmRlci1wYWRkaW5nICsgJGdvdnVrLXJhZGlvcy1sYWJlbC1wYWRkaW5nLWxlZnQtcmlnaHQ7XG5cbiAgLmdvdnVrLXJhZGlvc19fY29uZGl0aW9uYWwge1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDQsIFwiYm90dG9tXCIpO1xuICAgIG1hcmdpbi1sZWZ0OiAkY29uZGl0aW9uYWwtbWFyZ2luLWxlZnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAkY29uZGl0aW9uYWwtcGFkZGluZy1sZWZ0O1xuICAgIGJvcmRlci1sZWZ0OiAkY29uZGl0aW9uYWwtYm9yZGVyLXdpZHRoIHNvbGlkICRnb3Z1ay1ib3JkZXItY29sb3VyO1xuXG4gICAgLmdvdnVrLWZyb250ZW5kLXN1cHBvcnRlZCAmLS1oaWRkZW4ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmID4gOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gU21hbGwgY2hlY2tib3hlc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAuZ292dWstcmFkaW9zLS1zbWFsbCB7XG4gICAgJGlucHV0LW9mZnNldDogKCRnb3Z1ay10b3VjaC10YXJnZXQtc2l6ZSAtICRnb3Z1ay1zbWFsbC1yYWRpb3Mtc2l6ZSkgLyAyO1xuXG4gICAgLmdvdnVrLXJhZGlvc19faXRlbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC8vIFNoaWZ0IHRoZSB0b3VjaCB0YXJnZXQgaW50byB0aGUgbGVmdCBtYXJnaW4gc28gdGhhdCB0aGUgdmlzaWJsZSBlZGdlIG9mXG4gICAgLy8gdGhlIGNvbnRyb2wgaXMgYWxpZ25lZFxuICAgIC8vXG4gICAgLy8gICDilIZXaGljaCBjb2xvdXIgaXMgeW91ciBmYXZvdXJpdGU/XG4gICAgLy8gIOKUjOKUhuKUgOKUgOKUgOKUkFxuICAgIC8vICDilILilIYoKSDilIIgUHVycGxlXG4gICAgLy8gIOKUlOKUhuKWsuKUgOKUgOKUmFxuICAgIC8vICDilrLilIbilJTilIAgUmFkaW8gcHNldWRvIGVsZW1lbnQsIGFsaWduZWQgd2l0aCBtYXJnaW5cbiAgICAvLyAg4pSU4pSA4pSA4pSAIFRvdWNoIHRhcmdldCAoaW52aXNpYmxlIGlucHV0KSwgc2hpZnRlZCBpbnRvIHRoZSBtYXJnaW5cbiAgICAuZ292dWstcmFkaW9zX19pbnB1dCB7XG4gICAgICBtYXJnaW4tbGVmdDogJGlucHV0LW9mZnNldCAqIC0xO1xuICAgIH1cblxuICAgIC5nb3Z1ay1yYWRpb3NfX2xhYmVsIHtcbiAgICAgIC8vIENyZWF0ZSBhIHRpbnkgc3BhY2UgYmV0d2VlbiB0aGUgc21hbGwgcmFkaW8gaG92ZXIgc3RhdGUgc28gdGhhdCBpdFxuICAgICAgLy8gZG9lc24ndCBjbGFzaCB3aXRoIHRoZSBsYWJlbFxuICAgICAgcGFkZGluZy1sZWZ0OiAxcHg7XG4gICAgfVxuXG4gICAgLy8gKCApIFJhZGlvIHJpbmdcbiAgICAvL1xuICAgIC8vIFJlZHVjZSB0aGUgc2l6ZSBvZiB0aGUgY29udHJvbCBbMV0sIHZlcnRpY2FsbHkgY2VudGVyaW5nIGl0IHdpdGhpbiB0aGVcbiAgICAvLyB0b3VjaCB0YXJnZXQgWzJdXG4gICAgLy8gTGVmdCBoZXJlIGlzIDAgYmVjYXVzZSB3ZSd2ZSBzaGlmdGVkIHRoZSBpbnB1dCBpbnRvIHRoZSBsZWZ0IG1hcmdpblxuICAgIC5nb3Z1ay1yYWRpb3NfX2xhYmVsOjpiZWZvcmUge1xuICAgICAgdG9wOiAkaW5wdXQtb2Zmc2V0OyAvLyAyXG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6ICRnb3Z1ay1zbWFsbC1yYWRpb3Mtc2l6ZTsgLy8gMVxuICAgICAgaGVpZ2h0OiAkZ292dWstc21hbGwtcmFkaW9zLXNpemU7IC8vIDFcbiAgICB9XG5cbiAgICAvLyAg4oCiICBSYWRpbyBidXR0b25cbiAgICAvL1xuICAgIC8vIFJlZHVjZSB0aGUgc2l6ZSBvZiB0aGUgJ2J1dHRvbicgYW5kIGNlbnRlciBpdCB3aXRoaW4gdGhlIHJpbmdcbiAgICAuZ292dWstcmFkaW9zX19sYWJlbDo6YWZ0ZXIge1xuICAgICAgJHJhZGlvLWJ1dHRvbi1zaXplOiBnb3Z1ay1zcGFjaW5nKDEpO1xuXG4gICAgICAvLyBUaGUgc2FtZSBjYWxjdWxhdGlvbiBhcyBub3JtYWwgcmFkaW8gYnV0dG9ucyBidXQgcmVkdWNlIHRoZSBib3JkZXIgd2lkdGhcbiAgICAgIHRvcDogKCgkZ292dWstdG91Y2gtdGFyZ2V0LXNpemUgLyAyKSAtICRyYWRpby1idXR0b24tc2l6ZSk7XG4gICAgICBsZWZ0OiAoKCgkZ292dWstdG91Y2gtdGFyZ2V0LXNpemUgLyAyKSAtICRyYWRpby1idXR0b24tc2l6ZSkgLSAkaW5wdXQtb2Zmc2V0KTtcbiAgICAgIGJvcmRlci13aWR0aDogJHJhZGlvLWJ1dHRvbi1zaXplO1xuICAgIH1cblxuICAgIC8vIEZpeCBwb3NpdGlvbiBvZiBoaW50IHdpdGggc21hbGwgcmFkaW9zXG4gICAgLy9cbiAgICAvLyBEbyBub3QgdXNlIGhpbnRzIHdpdGggc21hbGwgcmFkaW9zIOKAkyBiZWNhdXNlIHRoZXkncmUgd2l0aGluIHRoZSBpbnB1dFxuICAgIC8vIHdyYXBwZXIgdGhleSB0cmlnZ2VyIHRoZSBob3ZlciBzdGF0ZSwgYnV0IGNsaWNraW5nIHRoZW0gZG9lc24ndCBhY3R1YWxseVxuICAgIC8vIGFjdGl2YXRlIHRoZSBjb250cm9sLlxuICAgIC8vXG4gICAgLy8gKElmIHlvdSBkbyB1c2UgdGhlbSwgdGhleSB3b24ndCBsb29rIGNvbXBsZXRlbHkgYnJva2VuLi4uIGJ1dCBzZXJpb3VzbHksXG4gICAgLy8gZG9uJ3QgdXNlIHRoZW0pXG4gICAgLmdvdnVrLXJhZGlvc19faGludCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICgkZ292dWstc21hbGwtcmFkaW9zLXNpemUgKyAkaW5wdXQtb2Zmc2V0KTtcbiAgICB9XG5cbiAgICAvLyBBbGlnbiBjb25kaXRpb25hbCByZXZlYWxzIHdpdGggc21hbGwgcmFkaW9zXG4gICAgLmdvdnVrLXJhZGlvc19fY29uZGl0aW9uYWwge1xuICAgICAgJG1hcmdpbi1sZWZ0OiAoJGdvdnVrLXNtYWxsLXJhZGlvcy1zaXplIC8gMikgLSAoJGNvbmRpdGlvbmFsLWJvcmRlci13aWR0aCAvIDIpO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRtYXJnaW4tbGVmdDtcbiAgICAgIHBhZGRpbmctbGVmdDogKCRnb3Z1ay10b3VjaC10YXJnZXQtc2l6ZSAtICRpbnB1dC1vZmZzZXQpIC0gKCRtYXJnaW4tbGVmdCArICRjb25kaXRpb25hbC1ib3JkZXItd2lkdGgpO1xuICAgIH1cblxuICAgIC5nb3Z1ay1yYWRpb3NfX2RpdmlkZXIge1xuICAgICAgd2lkdGg6ICRnb3Z1ay1zbWFsbC1yYWRpb3Mtc2l6ZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMSk7XG4gICAgfVxuXG4gICAgLy8gSG92ZXIgc3RhdGUgZm9yIHNtYWxsIHJhZGlvcy5cbiAgICAvL1xuICAgIC8vIFdlIHVzZSBhIGhvdmVyIHN0YXRlIGZvciBzbWFsbCByYWRpb3MgYmVjYXVzZSB0aGUgdG91Y2ggdGFyZ2V0IHNpemVcbiAgICAvLyBpcyBzbyBtdWNoIGxhcmdlciB0aGFuIHRoZWlyIHZpc2libGUgc2l6ZSwgYW5kIHNvIHdlIG5lZWQgdG8gcHJvdmlkZVxuICAgIC8vIGZlZWRiYWNrIHRvIHRoZSB1c2VyIGFzIHRvIHdoaWNoIHJhZGlvIHRoZXkgd2lsbCBzZWxlY3Qgd2hlbiB0aGVpclxuICAgIC8vIGN1cnNvciBpcyBvdXRzaWRlIG9mIHRoZSB2aXNpYmxlIGFyZWEuXG4gICAgLmdvdnVrLXJhZGlvc19faXRlbTpob3ZlciAuZ292dWstcmFkaW9zX19pbnB1dDpub3QoOmRpc2FibGVkKSArIC5nb3Z1ay1yYWRpb3NfX2xhYmVsOjpiZWZvcmUge1xuICAgICAgLy8gRm9yY2VkIGNvbG91cnMgbW9kZXMgdGVuZCB0byBpZ25vcmUgYm94LXNoYWRvdy5cbiAgICAgIC8vIEFwcGx5IGFuIG91dGxpbmUgZm9yIHRob3NlIG1vZGVzIHRvIHVzZSBpbnN0ZWFkLlxuICAgICAgb3V0bGluZTogJGdvdnVrLXJhZGlvcy1mb2N1cy13aWR0aCBkYXNoZWQgdHJhbnNwYXJlbnQ7XG4gICAgICBvdXRsaW5lLW9mZnNldDogMXB4O1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGdvdnVrLWhvdmVyLXdpZHRoICRnb3Z1ay1ob3Zlci1jb2xvdXI7XG4gICAgfVxuXG4gICAgLy8gQmVjYXVzZSB3ZSd2ZSBvdmVycmlkZGVuIHRoZSBib3JkZXItc2hhZG93IHByb3ZpZGVkIGJ5IHRoZSBmb2N1cyBzdGF0ZSxcbiAgICAvLyB3ZSBuZWVkIHRvIHJlZGVmaW5lIHRoYXQgdG9vLlxuICAgIC8vXG4gICAgLy8gV2UgdXNlIHR3byBib3ggc2hhZG93cywgb25lIHRoYXQgcmVzdG9yZXMgdGhlIG9yaWdpbmFsIGZvY3VzIHN0YXRlIFsxXVxuICAgIC8vIGFuZCBhbm90aGVyIHRoYXQgdGhlbiBhcHBsaWVzIHRoZSBob3ZlciBzdGF0ZSBbMl0uXG4gICAgLmdvdnVrLXJhZGlvc19faXRlbTpob3ZlciAuZ292dWstcmFkaW9zX19pbnB1dDpmb2N1cyArIC5nb3Z1ay1yYWRpb3NfX2xhYmVsOjpiZWZvcmUge1xuICAgICAgLy8gU2V0IGRpZmZlcmVudCBIQ00gY29sb3VyIHdoZW4gd2UgaGF2ZSBib3RoIGhvdmVyL2ZvY3VzIGFwcGxpZWQgYXQgb25jZVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gICAgICAgIG91dGxpbmUtY29sb3I6IEhpZ2hsaWdodDtcbiAgICAgIH1cbiAgICAgIC8vIHByZXR0aWVyLWlnbm9yZVxuICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgMCAwIDAgJGdvdnVrLXJhZGlvcy1mb2N1cy13aWR0aCAkZ292dWstZm9jdXMtY29sb3VyIC8vIDEsXG4gICAgICAgIDAgMCAwICRnb3Z1ay1ob3Zlci13aWR0aCAkZ292dWstaG92ZXItY29sb3VyOyAvLyAyXG4gICAgfVxuXG4gICAgLy8gRm9yIGRldmljZXMgdGhhdCBleHBsaWNpdGx5IGRvbid0IHN1cHBvcnQgaG92ZXIsIGRvbid0IHByb3ZpZGUgYSBob3ZlclxuICAgIC8vIHN0YXRlIChlLmcuIG9uIHRvdWNoIGRldmljZXMgbGlrZSBpT1MpLlxuICAgIC8vXG4gICAgLy8gV2UgY2FuJ3QgdXNlIGBAbWVkaWEgKGhvdmVyOiBob3ZlcilgIGJlY2F1c2Ugd2Ugd291bGRuJ3QgZ2V0IHRoZSBob3ZlclxuICAgIC8vIHN0YXRlIGluIGJyb3dzZXJzIHRoYXQgZG9uJ3Qgc3VwcG9ydCBgQG1lZGlhIChob3ZlcilgIChsaWtlIEludGVybmV0XG4gICAgLy8gRXhwbG9yZXIpIOKAkyBzbyB3ZSBoYXZlIHRvICd1bmRvJyB0aGUgaG92ZXIgc3RhdGUgaW5zdGVhZC5cbiAgICBAbWVkaWEgKGhvdmVyOiBub25lKSwgKHBvaW50ZXI6IGNvYXJzZSkge1xuICAgICAgLmdvdnVrLXJhZGlvc19faXRlbTpob3ZlciAuZ292dWstcmFkaW9zX19pbnB1dDpub3QoOmRpc2FibGVkKSArIC5nb3Z1ay1yYWRpb3NfX2xhYmVsOjpiZWZvcmUge1xuICAgICAgICBib3gtc2hhZG93OiBpbml0aWFsO1xuICAgICAgfVxuXG4gICAgICAuZ292dWstcmFkaW9zX19pdGVtOmhvdmVyIC5nb3Z1ay1yYWRpb3NfX2lucHV0OmZvY3VzICsgLmdvdnVrLXJhZGlvc19fbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRnb3Z1ay1yYWRpb3MtZm9jdXMtd2lkdGggJGdvdnVrLWZvY3VzLWNvbG91cjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyojIHNvdXJjZU1hcHBpbmdVUkw9X2luZGV4LnNjc3MubWFwICovXG4iLCJAaW1wb3J0IFwiLi4vZXJyb3ItbWVzc2FnZS9pbmRleFwiO1xuQGltcG9ydCBcIi4uL2hpbnQvaW5kZXhcIjtcbkBpbXBvcnQgXCIuLi9sYWJlbC9pbmRleFwiO1xuXG5AaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvY29tcG9uZW50L3NlbGVjdFwiKSB7XG4gIC5nb3Z1ay1zZWxlY3Qge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDE5LCAkbGluZS1oZWlnaHQ6IDEuMjUpO1xuXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAgIC8vIFRoaXMgbWluLXdpZHRoIHdhcyBjaG9zZW4gYmVjYXVzZTpcbiAgICAvLyAtIGl0IG1ha2VzIHRoZSBTZWxlY3Qgd2lkZXIgdGhhbiBpdCBpcyB0YWxsICh3aGljaCBpcyB3aGF0IHVzZXJzIGV4cGVjdClcbiAgICAvLyAtIDExLjVlbSBtYXRjaGVzIHRoZSAnbGVuZ3RoLTEwJyB2YXJpYW50IG9mIHRoZSBpbnB1dCBjb21wb25lbnRcbiAgICAvLyAtIGl0IGZpdHMgY29tZm9ydGFibHkgb24gc2NyZWVucyBhcyBuYXJyb3cgYXMgMjQwcHggd2lkZVxuICAgIG1pbi13aWR0aDogMTEuNWVtO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGdvdnVrLXB4LXRvLXJlbSg0MHB4KTtcbiAgICBwYWRkaW5nOiBnb3Z1ay1zcGFjaW5nKDEpO1xuICAgIGJvcmRlcjogJGdvdnVrLWJvcmRlci13aWR0aC1mb3JtLWVsZW1lbnQgc29saWQgJGdvdnVrLWlucHV0LWJvcmRlci1jb2xvdXI7XG5cbiAgICAvLyBEZWZhdWx0IHVzZXIgYWdlbnQgY29sb3VycyBmb3Igc2VsZWN0cyBjYW4gaGF2ZSBsb3cgY29udHJhc3QsXG4gICAgLy8gYW5kIG1heSBsb29rIGRpc2FibGVkICgjMjQzNSlcbiAgICBjb2xvcjogJGdvdnVrLXRleHQtY29sb3VyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGdvdnVrLWNvbG91cihcIndoaXRlXCIpO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiAkZ292dWstZm9jdXMtd2lkdGggc29saWQgJGdvdnVrLWZvY3VzLWNvbG91cjtcbiAgICAgIC8vIEVuc3VyZSBvdXRsaW5lIGFwcGVhcnMgb3V0c2lkZSBvZiB0aGUgZWxlbWVudFxuICAgICAgb3V0bGluZS1vZmZzZXQ6IDA7XG4gICAgICAvLyBEb3VibGUgdGhlIGJvcmRlciBieSBhZGRpbmcgaXRzIHdpZHRoIGFnYWluLiBVc2UgYGJveC1zaGFkb3dgIHRvIGRvXG4gICAgICAvLyB0aGlzIGluc3RlYWQgb2YgY2hhbmdpbmcgYGJvcmRlci13aWR0aGAgKHdoaWNoIGNoYW5nZXMgZWxlbWVudCBzaXplKVxuICAgICAgLy8gYW5kIHNpbmNlIGBvdXRsaW5lYCBpcyBhbHJlYWR5IHVzZWQgZm9yIHRoZSB5ZWxsb3cgZm9jdXMgc3RhdGUuXG4gICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAkZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZWxlbWVudDtcbiAgICB9XG5cbiAgICAmOmRpc2FibGVkIHtcbiAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB9XG4gIH1cblxuICAuZ292dWstc2VsZWN0IG9wdGlvbjphY3RpdmUsXG4gIC5nb3Z1ay1zZWxlY3Qgb3B0aW9uOmNoZWNrZWQsXG4gIC5nb3Z1ay1zZWxlY3Q6Zm9jdXM6Oi1tcy12YWx1ZSB7XG4gICAgY29sb3I6IGdvdnVrLWNvbG91cihcIndoaXRlXCIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGdvdnVrLWNvbG91cihcImJsdWVcIik7XG4gIH1cblxuICAuZ292dWstc2VsZWN0LS1lcnJvciB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZ292dWstZXJyb3ItY29sb3VyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICRnb3Z1ay1pbnB1dC1ib3JkZXItY29sb3VyO1xuICAgIH1cbiAgfVxufVxuXG4vKiMgc291cmNlTWFwcGluZ1VSTD1faW5kZXguc2Nzcy5tYXAgKi9cbiIsIkBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9jb21wb25lbnQvc2VydmljZS1uYXZpZ2F0aW9uXCIpIHtcbiAgJGdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbi1hY3RpdmUtbGluay1ib3JkZXItd2lkdGg6IGdvdnVrLXNwYWNpbmcoMSk7XG4gICRnb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb24tYmFja2dyb3VuZDogZ292dWstY29sb3VyKFwibGlnaHQtZ3JleVwiKTtcbiAgJGdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbi1ib3JkZXItY29sb3VyOiAkZ292dWstYm9yZGVyLWNvbG91cjtcblxuICAvLyBXZSBtYWtlIHRoZSBsaW5rIGNvbG91ciBhIGxpdHRsZSBkYXJrZXIgdGhhbiBub3JtYWwgaGVyZSBzbyB0aGF0IGl0IGhhc1xuICAvLyBiZXR0ZXIgcGVyY2VwdHVhbCBjb250cmFzdCB3aXRoIHRoZSBuYXZpZ2F0aW9uIGJhY2tncm91bmQuXG4gICRnb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb24tbGluay1jb2xvdXI6IGdvdnVrLXNoYWRlKCRnb3Z1ay1saW5rLWNvbG91ciwgMTAlKTtcblxuICAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uIHtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XG4gICAgQGluY2x1ZGUgX2dvdnVrLXJlYnJhbmQoXG4gICAgICBcImJvcmRlci1ib3R0b20tY29sb3JcIixcbiAgICAgICRmcm9tOiAkZ292dWstc2VydmljZS1uYXZpZ2F0aW9uLWJvcmRlci1jb2xvdXIsXG4gICAgICAkdG86ICRfZ292dWstcmVicmFuZC1ib3JkZXItY29sb3VyLW9uLWJsdWUtdGludC05NVxuICAgICk7XG4gICAgQGluY2x1ZGUgX2dvdnVrLXJlYnJhbmQoXG4gICAgICBcImJhY2tncm91bmQtY29sb3JcIixcbiAgICAgICRmcm9tOiAkZ292dWstc2VydmljZS1uYXZpZ2F0aW9uLWJhY2tncm91bmQsXG4gICAgICAkdG86ICRfZ292dWstcmVicmFuZC10ZW1wbGF0ZS1iYWNrZ3JvdW5kLWNvbG91clxuICAgICk7XG4gIH1cblxuICAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogc3RhcnQ7XG5cbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogdGFibGV0KSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgIH1cbiAgfVxuXG4gIC8vIFRoZXNlIHN0eWxlcyBhcmUgc2hhcmVkIGJldHdlZW4gbmF2IGl0ZW1zIGFuZCB0aGUgc2VydmljZSBuYW1lLCB0aGV5XG4gIC8vIGVuc3VyZSB0aGF0IGJvdGggb2YgdGhlbSByZW1haW4gdmVydGljYWxseSBhbGlnbmVkIHdpdGggb25lIGFub3RoZXJcbiAgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9faXRlbSxcbiAgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fc2VydmljZS1uYW1lIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiBnb3Z1ay1zcGFjaW5nKDIpIDA7XG4gICAgYm9yZGVyOiAwIHNvbGlkICRnb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb24tbGluay1jb2xvdXI7XG5cbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogdGFibGV0KSB7XG4gICAgICAvLyBpbmxpbmUtYmxvY2sgaXMgdXNlZCBhcyBhIGZhbGxiYWNrIGZvciBicm93c2VycyB0aGF0IGRvbid0IHN1cHBvcnQgZmxleGJveFxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHBhZGRpbmc6IGdvdnVrLXNwYWNpbmcoNCkgMDtcblxuICAgICAgQGluY2x1ZGUgX2dvdnVrLXJlYnJhbmQge1xuICAgICAgICBwYWRkaW5nOiBnb3Z1ay1zcGFjaW5nKDMpIDA7XG5cbiAgICAgICAgLy8gTW9yZSBtYWdpYyBudW1iZXJzIGFob3k6XG4gICAgICAgIC8vIDI5IGlzIHRoZSBkZXNpcmVkIGhlaWdodCBvZiB0aGUgZWxlbWVudCAoNjApLCBtaW51cyB0b3AgYW5kIGJvdHRvbVxuICAgICAgICAvLyBwYWRkaW5nICgyw5cxNSksIG1pbnVzIGJvdHRvbSBib3JkZXIgKDEpOyAxOSBpcyB0aGUgZm9udC1zaXplIGF0IHRoaXNcbiAgICAgICAgLy8gcG9pbnQuIFRoaXMgZ2l2ZXMgdXMgdGhlIHBlcmZlY3QgZnJhY3Rpb25hbCBsaW5lIGhlaWdodCB0byBtYWtlIHRoZVxuICAgICAgICAvLyBvdmVyYWxsIGNvbXBvbmVudCA2MHB4IGhpZ2hcbiAgICAgICAgbGluZS1oZWlnaHQ6ICgyOSAvIDE5KTtcbiAgICAgIH1cblxuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNiwgJGRpcmVjdGlvbjogcmlnaHQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgdG9wIG1hcmdpbiBvZiB0aGUgZmlyc3QgbmF2IGl0ZW0gaWYgdGhlcmUgaXMgYSBzZXJ2aWNlIG5hbWUgYnV0XG4gIC8vIHRoZXJlJ3Mgbm8gbWVudSBidXR0b24gKGVpdGhlciBiZWNhdXNlIGl0IGRvZXNuJ3QgZXhpc3Qgb3IgaXQncyBoaWRkZW4pXG4gIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX3NlcnZpY2UtbmFtZSArIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX3dyYXBwZXIge1xuICAgIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX2xpc3Q6Zmlyc3QtY2hpbGQsXG4gICAgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fdG9nZ2xlW2hpZGRlbl0gKyAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19saXN0IHtcbiAgICAgIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX2l0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX2l0ZW0tLWFjdGl2ZSB7XG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJHVudGlsOiB0YWJsZXQpIHtcbiAgICAgIC8vIE5lZ2F0aXZlIG9mZnNldCB0aGUgbGVmdCBtYXJnaW4gc28gd2UgY2FuIHBsYWNlIGEgY3VycmVudCBwYWdlIGluZGljYXRvclxuICAgICAgLy8gdG8gdGhlIGxlZnQgd2l0aG91dCBtaXNhbGlnbmluZyB0aGUgbGlzdCBpdGVtIHRleHQuXG4gICAgICBtYXJnaW4tbGVmdDogKChnb3Z1ay1zcGFjaW5nKDIpICsgJGdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbi1hY3RpdmUtbGluay1ib3JkZXItd2lkdGgpICogLTEpO1xuICAgICAgcGFkZGluZy1sZWZ0OiBnb3Z1ay1zcGFjaW5nKDIpO1xuICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6ICRnb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb24tYWN0aXZlLWxpbmstYm9yZGVyLXdpZHRoO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiB0YWJsZXQpIHtcbiAgICAgIEBpbmNsdWRlIF9nb3Z1ay1yZWJyYW5kKFxuICAgICAgICBcInBhZGRpbmctYm90dG9tXCIsXG4gICAgICAgICRmcm9tOiBnb3Z1ay1zcGFjaW5nKDQpIC0gJGdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbi1hY3RpdmUtbGluay1ib3JkZXItd2lkdGgsXG4gICAgICAgICR0bzogZ292dWstc3BhY2luZygzKSAtICRnb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb24tYWN0aXZlLWxpbmstYm9yZGVyLXdpZHRoXG4gICAgICApO1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogJGdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbi1hY3RpdmUtbGluay1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fbGluayB7XG4gICAgQGluY2x1ZGUgZ292dWstbGluay1jb21tb247XG4gICAgQGluY2x1ZGUgZ292dWstbGluay1zdHlsZS1uby11bmRlcmxpbmU7XG4gICAgQGluY2x1ZGUgZ292dWstbGluay1zdHlsZS1uby12aXNpdGVkLXN0YXRlO1xuXG4gICAgJjpub3QoOmhvdmVyKTpub3QoOmZvY3VzKSB7XG4gICAgICAvLyBXZSBzZXQgdGhlIGNvbG91ciBoZXJlIGFzIHdlIGRvbid0IHdhbnQgdG8gb3ZlcnJpZGUgdGhlIGhvdmVyIG9yXG4gICAgICAvLyBmb2N1cyBjb2xvdXJzXG4gICAgICBjb2xvcjogJGdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbi1saW5rLWNvbG91cjtcbiAgICB9XG4gIH1cblxuICAvL1xuICAvLyBTZXJ2aWNlIG5hbWUgc3BlY2lmaWMgY29kZVxuICAvL1xuXG4gIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX3NlcnZpY2UtbmFtZSB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTksICR3ZWlnaHQ6IGJvbGQpO1xuICB9XG5cbiAgLy8gQW5ub3lpbmdseSB0aGlzIHJlcXVpcmVzIGEgY29tcG91bmQgc2VsZWN0b3IgaW4gb3JkZXIgdG8gb3ZlcmNvbWUgdGhlXG4gIC8vIHNwZWNpZmljaXR5IG9mIHRoZSBvdGhlciBsaW5rIGNvbG91ciBvdmVycmlkZSB3ZSdyZSBkb2luZ1xuICAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19zZXJ2aWNlLW5hbWUgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fbGluayB7XG4gICAgQGluY2x1ZGUgZ292dWstbGluay1zdHlsZS10ZXh0O1xuICB9XG5cbiAgLy8gQWxsb3cgbmF2aWdhdGlvbiBzZWN0aW9uIHRvIGFsd2F5cyB0YWtlIHVwIG1heGltdW0gYXZhaWxhYmxlIHNwYWNlLFxuICAvLyByYXRoZXIgdGhhbiBzaXppbmcgdG8gZml0IHRoZSBjb250ZW50LiBUaGlzIG1ha2VzIGl0IGVhc2llciB0byByaWdodCBhbGlnblxuICAvLyBuYXYgaXRlbXMgYW5kIHVzZSBzbG90cy5cbiAgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fd3JhcHBlciB7XG4gICAgZmxleC1ncm93OiAxO1xuICB9XG5cbiAgLy9cbiAgLy8gTmF2aWdhdGlvbiBsaXN0IHNwZWNpZmljIGNvZGVcbiAgLy9cblxuICAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX190b2dnbGUge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDE5LCAkd2VpZ2h0OiBib2xkKTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBtYXJnaW46IGdvdnVrLXNwYWNpbmcoMikgMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBjb2xvcjogJGdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbi1saW5rLWNvbG91cjtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZ292dWstZm9jdXNlZC10ZXh0O1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGdvdnVrLXNoYXBlLWFycm93KCRkaXJlY3Rpb246IGRvd24sICRiYXNlOiAxMHB4LCAkZGlzcGxheTogaW5saW5lLWJsb2NrKTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBtYXJnaW4tbGVmdDogZ292dWstc3BhY2luZygxKTtcbiAgICB9XG5cbiAgICAmW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBnb3Z1ay1zaGFwZS1hcnJvdygkZGlyZWN0aW9uOiB1cCwgJGJhc2U6IDEwcHgsICRkaXNwbGF5OiBpbmxpbmUtYmxvY2spO1xuICAgIH1cblxuICAgIC8vIEVuc3VyZSB0aGUgYnV0dG9uIHN0YXlzIGhpZGRlbiBpZiB0aGUgaGlkZGVuIGF0dHJpYnV0ZSBpcyBwcmVzZW50XG4gICAgJltoaWRkZW5dIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLy8gSWYgd2UgaGF2ZSBib3RoIGEgc2VydmljZSBuYW1lIGFuZCBuYXZpZ2F0aW9uIHRvZ2dsZSwgcmVtb3ZlIHRoZVxuICAgIC8vIG1hcmdpbi10b3Agc28gdGhhdCB0aGVyZSBpc24ndCBhIGJ1bmNoIG9mIHNwYWNlIGJldHdlZW4gdGhlbVxuICAgIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX3NlcnZpY2UtbmFtZSArIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX3dyYXBwZXIgJiB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX2xpc3Qge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDE5KTtcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogZ292dWstc3BhY2luZygzKTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAvLyBNYWtlIHRoZSBuYXZpZ2F0aW9uIGxpc3QgYSBmbGV4Ym94LiBEb2luZyBzbyByZXNvbHZlcyBhIGNvdXBsZSBvZlxuICAgIC8vIGFjY2Vzc2liaWxpdHkgcHJvYmxlbXMgY2F1c2VkIGJ5IHRoZSBsaXN0IGl0ZW1zIGJlaW5nIGlubGluZS1ibG9ja3M6XG4gICAgLy8gLSBSZW1vdmVzIHRoZSBleHRyYSB3aGl0ZXNwYWNlIGZyb20gYmV0d2VlbiBlYWNoIGxpc3QgaXRlbSB0aGF0IHNjcmVlblxuICAgIC8vICAgcmVhZGVycyB3b3VsZCBwb2ludGxlc3NseSBhbm5vdW5jZS5cbiAgICAvLyAtIEZpeGVzIGFuIE5WREEgaXNzdWUgaW4gRmlyZWZveCBhbmQgQ2hyb21lIDw9IDEyNCB3aGVyZSBpdCB3b3VsZCByZWFkXG4gICAgLy8gICBhbGwgb2YgdGhlIGxpbmtzIGFzIGEgcnVuLW9uIHNlbnRlbmNlLlxuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiB0YWJsZXQpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAvLyBIb3dldmVyLi4uIElFMTEgdG90YWxseSB0cmlwcyBvdmVyIGZsZXhib3ggYW5kIGRvZXNuJ3Qgd3JhcCBhbnl0aGluZyxcbiAgICAgIC8vIG1ha2luZyBhbGwgb2YgdGhlIGl0ZW1zIGludG8gYSBzaW5nbGUsIGhvcml6b250YWxseSBzY3JvbGxpbmcgcm93LFxuICAgICAgLy8gd2hpY2ggaXMgbm8gZ29vZC4gVGhpcyBDU1MgaGFjayByZW1vdmVzIHRoZSBmbGV4Ym94IGRlZmluaXRpb24gZm9yXG4gICAgICAvLyBJRSA54oCTMTEsIHJldmVydGluZyBpdCB0byB0aGUgZmxhd2VkLCBidXQgT0ssIG5vbi1mbGV4Ym94IHZlcnNpb24uXG4gICAgICAvL1xuICAgICAgLy8gQ1NTIGhhY2sgZnJvbSBodHRwOi8vYnJvd3NlcmhhY2tzLmNvbS8jaGFjay1hNjBiMDNlMzAxYTY3Zjc2YTVhMjIyMjFjNzM5ZGM2NFxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMFxcMCkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBUaGlzIGlzIGEgPHN0cm9uZz4gZWxlbWVudCB0aGF0IGlzIHVzZWQgYXMgYSBmYWxsYmFjayBtZWNoYW5pc20gZm9yXG4gIC8vIHZpc3VhbGx5IGluZGljYXRpbmcgdGhlIGN1cnJlbnQgcGFnZSBpbiBzY2VuYXJpb3Mgd2hlcmUgQ1NTIGlzbid0XG4gIC8vIGF2YWlsYWJsZS4gV2UgZG9uJ3QgYWN0dWFsbHkgd2FudCBpdCB0byBiZSBib2xkIG5vcm1hbGx5LCBzbyBzZXQgaXQgdG9cbiAgLy8gaW5oZXJpdCB0aGUgcGFyZW50IGZvbnQtd2VpZ2h0LlxuICAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19hY3RpdmUtZmFsbGJhY2sge1xuICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gSW52ZXJ0ZWQgY29sb3VyIHNjaGVtZSBzdHlsZSBpbnRlbmRlZCBmb3IgcHJvZHVjdCBwYWdlc1xuICAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uLS1pbnZlcnNlIHtcbiAgICBAaW5jbHVkZSBfZ292dWstcmVicmFuZCB7XG4gICAgICAvLyBSZW1vdmUgYm90dG9tIGJvcmRlciB0byBhZGQgd2lkdGgtY29udGFpbmVyIG9uZXNcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ292dWstYnJhbmQtY29sb3VyO1xuXG4gICAgICAuZ292dWstd2lkdGgtY29udGFpbmVyIHtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAxcHggMDtcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkX2dvdnVrLXJlYnJhbmQtYm9yZGVyLWNvbG91ci1vbi1ibHVlLXRpbnQtOTU7XG4gICAgICB9XG5cbiAgICAgIC8vIFN1YnRyYWN0IDFweCBvZiBzcGFjZSB0byBhY2NvdW50IGZvciB0aGUgZXh0cmEgYm9yZGVyLXRvcFxuICAgICAgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fY29udGFpbmVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTFweDtcbiAgICAgIH1cblxuICAgICAgLy8gT3ZlcnJpZGUgdGhlICdhY3RpdmUnIGJvcmRlciBjb2xvdXJcbiAgICAgIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX2l0ZW0sXG4gICAgICAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19zZXJ2aWNlLW5hbWUge1xuICAgICAgICBib3JkZXItY29sb3I6IGdvdnVrLWNvbG91cihcIndoaXRlXCIpO1xuICAgICAgfVxuXG4gICAgICAvLyBPdmVycmlkZSBsaW5rIHN0eWxlc1xuICAgICAgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstc3R5bGUtaW52ZXJzZTtcbiAgICAgIH1cblxuICAgICAgLy8gT3ZlcnJpZGUgbW9iaWxlIG1lbnUgdG9nZ2xlIGNvbG91ciB3aGVuIG5vdCBmb2N1c2VkXG4gICAgICAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX190b2dnbGU6bm90KDpmb2N1cykge1xuICAgICAgICBjb2xvcjogZ292dWstY29sb3VyKFwid2hpdGVcIik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPV9pbmRleC5zY3NzLm1hcCAqL1xuIiwiQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL2NvbXBvbmVudC9za2lwLWxpbmtcIikge1xuICAuZ292dWstc2tpcC1saW5rIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay12aXN1YWxseS1oaWRkZW4tZm9jdXNhYmxlO1xuICAgIEBpbmNsdWRlIGdvdnVrLXR5cG9ncmFwaHktY29tbW9uO1xuICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstZGVjb3JhdGlvbjtcbiAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLXN0eWxlLXRleHQ7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udC1zaXplKCRzaXplOiAxNik7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiBnb3Z1ay1zcGFjaW5nKDIpIGdvdnVrLXNwYWNpbmcoMyk7XG5cbiAgICAvLyBSZXNwZWN0ICdkaXNwbGF5IGN1dG91dCcgc2FmZSBhcmVhIChhdm9pZHMgbm90Y2hlcyBhbmQgcm91bmRlZCBjb3JuZXJzKVxuICAgIEBzdXBwb3J0cyAocGFkZGluZzogdW5xdW90ZShcIm1heChjYWxjKDBweCkpXCIpKSB7XG4gICAgICAkcGFkZGluZy1zYWZlLWFyZWEtcmlnaHQ6IGNhbGMoI3tnb3Z1ay1zcGFjaW5nKDMpfSArIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpKTtcbiAgICAgICRwYWRkaW5nLXNhZmUtYXJlYS1sZWZ0OiBjYWxjKCN7Z292dWstc3BhY2luZygzKX0gKyBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpKTtcblxuICAgICAgLy8gVXNlIG1heCgpIHRvIHBpY2sgbGFyZ2VzdCBwYWRkaW5nLCBkZWZhdWx0IG9yIHdpdGggc2FmZSBhcmVhXG4gICAgICAvLyBFc2NhcGVkIGR1ZSB0byBTYXNzIG1heCgpIHZzLiBDU1MgbmF0aXZlIG1heCgpXG4gICAgICBwYWRkaW5nLXJpZ2h0OiB1bnF1b3RlKFwibWF4KCN7Z292dWstc3BhY2luZygzKX0sICN7JHBhZGRpbmctc2FmZS1hcmVhLXJpZ2h0fSlcIik7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHVucXVvdGUoXCJtYXgoI3tnb3Z1ay1zcGFjaW5nKDMpfSwgI3skcGFkZGluZy1zYWZlLWFyZWEtbGVmdH0pXCIpO1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogJGdvdnVrLWZvY3VzLXdpZHRoIHNvbGlkICRnb3Z1ay1mb2N1cy1jb2xvdXI7XG4gICAgICBvdXRsaW5lLW9mZnNldDogMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRnb3Z1ay1mb2N1cy1jb2xvdXI7XG5cbiAgICAgIC8vIFVuZG8gdW53YW50ZWQgY2hhbmdlcyB3aGVuIGdsb2JhbCBzdHlsZXMgYXJlIGVuYWJsZWRcbiAgICAgIEBpZiAkZ292dWstZ2xvYmFsLXN0eWxlcyB7XG4gICAgICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstZGVjb3JhdGlvbjtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZ292dWstc2tpcC1saW5rLWZvY3VzZWQtZWxlbWVudCB7XG4gICAgJjpmb2N1cyB7XG4gICAgICAvLyBSZW1vdmUgdGhlIG5hdGl2ZSB2aXNpYmxlIGZvY3VzIGluZGljYXRvciB3aGVuIHRoZSBlbGVtZW50IGlzXG4gICAgICAvLyBwcm9ncmFtbWF0aWNhbGx5IGZvY3VzZWQuXG4gICAgICAvL1xuICAgICAgLy8gV2Ugc2V0IHRoZSBmb2N1cyBvbiB0aGUgbGlua2VkIGVsZW1lbnQgKHRoaXMgaXMgdXN1YWxseSB0aGUgPG1haW4+XG4gICAgICAvLyBlbGVtZW50KSB3aGVuIHRoZSBza2lwIGxpbmsgaXMgYWN0aXZhdGVkIHRvIGltcHJvdmUgc2NyZWVuIHJlYWRlclxuICAgICAgLy8gYW5ub3VuY2VtZW50cy4gSG93ZXZlciwgd2UgcmVtb3ZlIHRoZSB2aXNpYmxlIGZvY3VzIGluZGljYXRvciBmcm9tIHRoZVxuICAgICAgLy8gbGlua2VkIGVsZW1lbnQgYmVjYXVzZSB0aGUgdXNlciBjYW5ub3QgaW50ZXJhY3Qgd2l0aCBpdC5cbiAgICAgIC8vXG4gICAgICAvLyBBIHJlbGF0ZWQgZGlzY3Vzc2lvbjogaHR0cHM6Ly9naXRodWIuY29tL3czYy93Y2FnL2lzc3Vlcy8xMDAxXG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4vKiMgc291cmNlTWFwcGluZ1VSTD1faW5kZXguc2Nzcy5tYXAgKi9cbiIsIi8vLy9cbi8vLyBAZ3JvdXAgaGVscGVycy9hY2Nlc3NpYmlsaXR5XG4vLy8vXG5cbi8vLyBIZWxwZXIgZnVuY3Rpb24gY29udGFpbmluZyB0aGUgY29tbW9uIGNvZGUgZm9yIHRoZSBmb2xsb3dpbmcgdHdvIG1peGluc1xuLy8vXG4vLy8gQGxpbmsgaHR0cHM6Ly9zbm9vay5jYS9hcmNoaXZlcy9odG1sX2FuZF9jc3MvaGlkaW5nLWNvbnRlbnQtZm9yLWFjY2Vzc2liaWxpdHlcbi8vLyAgIC0gSGlkaW5nIENvbnRlbnQgZm9yIEFjY2Vzc2liaWxpdHksIEpvbmF0aGFuIFNub29rLCBGZWJydWFyeSAyMDExXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvYmxvYi85ZjEzNjk1ZDIxZmY5MmM1NWM3OGRmYTlmMTZiYjAyYTFiNmU5MTFmL3NyYy9jc3MvbWFpbi5jc3MjTDEyMS1MMTU4XG4vLy8gICAtIGg1YnAvaHRtbDUtYm9pbGVycGxhdGUgLSBUaGFua3MhXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRpbXBvcnRhbnQgW3RydWVdIC0gV2hldGhlciB0byBtYXJrIGFzIGAhaW1wb3J0YW50YFxuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5cbkBtaXhpbiBfZ292dWstdmlzdWFsbHktaGlkZS1jb250ZW50KCRpbXBvcnRhbnQ6IHRydWUpIHtcbiAgcG9zaXRpb246IGFic29sdXRlIGlmKCRpbXBvcnRhbnQsICFpbXBvcnRhbnQsIG51bGwpO1xuXG4gIHdpZHRoOiAxcHggaWYoJGltcG9ydGFudCwgIWltcG9ydGFudCwgbnVsbCk7XG4gIGhlaWdodDogMXB4IGlmKCRpbXBvcnRhbnQsICFpbXBvcnRhbnQsIG51bGwpO1xuICAvLyBJZiBtYXJnaW4gaXMgc2V0IHRvIGEgbmVnYXRpdmUgdmFsdWUgaXQgY2FuIGNhdXNlIHRleHQgdG8gYmUgYW5ub3VuY2VkIGluXG4gIC8vIHRoZSB3cm9uZyBvcmRlciBpbiBWb2ljZU92ZXIgZm9yIE9TWFxuICBtYXJnaW46IDAgaWYoJGltcG9ydGFudCwgIWltcG9ydGFudCwgbnVsbCk7XG4gIHBhZGRpbmc6IDAgaWYoJGltcG9ydGFudCwgIWltcG9ydGFudCwgbnVsbCk7XG5cbiAgb3ZlcmZsb3c6IGhpZGRlbiBpZigkaW1wb3J0YW50LCAhaW1wb3J0YW50LCBudWxsKTtcblxuICAvLyBgY2xpcGAgaXMgbmVlZGVkIGZvciBJRTExIHN1cHBvcnRcbiAgY2xpcDogcmVjdCgwIDAgMCAwKSBpZigkaW1wb3J0YW50LCAhaW1wb3J0YW50LCBudWxsKTtcbiAgLXdlYmtpdC1jbGlwLXBhdGg6IGluc2V0KDUwJSkgaWYoJGltcG9ydGFudCwgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgICAgICAgY2xpcC1wYXRoOiBpbnNldCg1MCUpIGlmKCRpbXBvcnRhbnQsICFpbXBvcnRhbnQsIG51bGwpO1xuXG4gIGJvcmRlcjogMCBpZigkaW1wb3J0YW50LCAhaW1wb3J0YW50LCBudWxsKTtcblxuICAvLyBGb3IgbG9uZyBjb250ZW50LCBsaW5lIGZlZWRzIGFyZSBub3QgaW50ZXJwcmV0ZWQgYXMgc3BhY2VzIGFuZCBzbWFsbCB3aWR0aFxuICAvLyBjYXVzZXMgY29udGVudCB0byB3cmFwIDEgd29yZCBwZXIgbGluZTpcbiAgLy8gaHR0cHM6Ly9tZWRpdW0uY29tL0BqZXNzZWJlYWNoL2Jld2FyZS1zbXVzaGVkLW9mZi1zY3JlZW4tYWNjZXNzaWJsZS10ZXh0LTU5NTJhNGMyY2JmZVxuICB3aGl0ZS1zcGFjZTogbm93cmFwIGlmKCRpbXBvcnRhbnQsICFpbXBvcnRhbnQsIG51bGwpO1xuXG4gIC8vIFByZXZlbnQgdXNlcnMgZnJvbSBzZWxlY3Rpbmcgb3IgY29weWluZyB2aXN1YWxseS1oaWRkZW4gdGV4dC4gVGhpcyBwcmV2ZW50c1xuICAvLyBhIHVzZXIgdW5pbnRlbnRpb25hbGx5IGNvcHlpbmcgbW9yZSB0ZXh0IHRoYW4gdGhleSBpbnRlbmRlZCBhbmQgbmVlZGluZyB0b1xuICAvLyBtYW51YWxseSB0cmltIGl0IGRvd24gYWdhaW4uXG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi8vLyBIaWRlIGFuIGVsZW1lbnQgdmlzdWFsbHksIGJ1dCBoYXZlIGl0IGF2YWlsYWJsZSBmb3Igc2NyZWVuIHJlYWRlcnNcbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGltcG9ydGFudCBbdHJ1ZV0gLSBXaGV0aGVyIHRvIG1hcmsgYXMgYCFpbXBvcnRhbnRgXG4vLy9cbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG5AbWl4aW4gZ292dWstdmlzdWFsbHktaGlkZGVuKCRpbXBvcnRhbnQ6IHRydWUpIHtcbiAgQGluY2x1ZGUgX2dvdnVrLXZpc3VhbGx5LWhpZGUtY29udGVudCgkaW1wb3J0YW50OiAkaW1wb3J0YW50KTtcblxuICAvLyBBYnNvbHV0ZSBwb3NpdGlvbmluZyBoYXMgdGhlIHVuaW50ZW5kZWQgY29uc2VxdWVuY2Ugb2YgcmVtb3ZpbmcgYW55XG4gIC8vIHdoaXRlc3BhY2Ugc3Vycm91bmRpbmcgdmlzdWFsbHkgaGlkZGVuIHRleHQgZnJvbSB0aGUgYWNjZXNzaWJpbGl0eSB0cmVlLlxuICAvLyBJbnNlcnQgYSBzcGFjZSBjaGFyYWN0ZXIgYmVmb3JlIGFuZCBhZnRlciB2aXN1YWxseSBoaWRkZW4gdGV4dCB0byBzZXBhcmF0ZVxuICAvLyBpdCBmcm9tIGFueSB2aXNpYmxlIHRleHQgc3Vycm91bmRpbmcgaXQuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXDAwYTBcIjtcbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlxcMDBhMFwiO1xuICB9XG59XG5cbi8vLyBIaWRlIGFuIGVsZW1lbnQgdmlzdWFsbHksIGJ1dCBoYXZlIGl0IGF2YWlsYWJsZSBmb3Igc2NyZWVuIHJlYWRlcnMgd2hpbHN0XG4vLy8gYWxsb3dpbmcgdGhlIGVsZW1lbnQgdG8gYmUgZm9jdXNlZCB3aGVuIG5hdmlnYXRlZCB0byB2aWEgdGhlIGtleWJvYXJkIChlLmcuXG4vLy8gZm9yIHRoZSBza2lwIGxpbmspXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRpbXBvcnRhbnQgW3RydWVdIC0gV2hldGhlciB0byBtYXJrIGFzIGAhaW1wb3J0YW50YFxuLy8vXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuQG1peGluIGdvdnVrLXZpc3VhbGx5LWhpZGRlbi1mb2N1c2FibGUoJGltcG9ydGFudDogdHJ1ZSkge1xuICAvLyBJRSAxMSBkb2Vzbid0IHN1cHBvcnQgdGhlIGNvbWJpbmVkIGA6bm90KDphY3RpdmUsIDpmb2N1cylgIHN5bnRheC5cbiAgJjpub3QoOmFjdGl2ZSk6bm90KDpmb2N1cykge1xuICAgIEBpbmNsdWRlIF9nb3Z1ay12aXN1YWxseS1oaWRlLWNvbnRlbnQoJGltcG9ydGFudDogJGltcG9ydGFudCk7XG4gIH1cbn1cblxuLyojIHNvdXJjZU1hcHBpbmdVUkw9X3Zpc3VhbGx5LWhpZGRlbi5zY3NzLm1hcCAqL1xuIiwiQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL2NvbXBvbmVudC9zdW1tYXJ5LWxpc3RcIikge1xuICAuZ292dWstc3VtbWFyeS1saXN0IHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiAxOSk7XG4gICAgQGluY2x1ZGUgZ292dWstdGV4dC1jb2xvdXI7XG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IHRhYmxldCkge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRhYmxlLWxheW91dDogZml4ZWQ7IC8vIFJlcXVpcmVkIHRvIGFsbG93IHVzIHRvIHdyYXAgd29yZHMgdGhhdCBvdmVyZmxvdy5cbiAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgfVxuICAgIG1hcmdpbjogMDsgLy8gUmVzZXQgZGVmYXVsdCB1c2VyIGFnZW50IHN0eWxlc1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDYsIFwiYm90dG9tXCIpO1xuICB9XG5cbiAgLmdvdnVrLXN1bW1hcnktbGlzdF9fcm93IHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdvdnVrLWJvcmRlci1jb2xvdXI7XG5cbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkdW50aWw6IHRhYmxldCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogZ292dWstc3BhY2luZygzKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IHRhYmxldCkge1xuICAgICAgZGlzcGxheTogdGFibGUtcm93O1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlbW92ZSByaWdodCBwYWRkaW5nIGZyb20gdGhlIGxhc3QgY29sdW1uIGluIHRoZSByb3dcbiAgLmdvdnVrLXN1bW1hcnktbGlzdF9fcm93Om5vdCguZ292dWstc3VtbWFyeS1saXN0X19yb3ctLW5vLWFjdGlvbnMpID4gOmxhc3QtY2hpbGQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cblxuICAvLyBQcm92aWRlIGFuIGVtcHR5ICdjZWxsJyBmb3Igcm93cyB0aGF0IGRvbid0IGhhdmUgYWN0aW9ucyDigJMgb3RoZXJ3aXNlIHRoZVxuICAvLyBib3R0b20gYm9yZGVyIGlzIG5vdCBkcmF3biBmb3IgdGhhdCBwYXJ0IG9mIHRoZSByb3cgaW4gc29tZSBicm93c2Vycy5cbiAgLmdvdnVrLXN1bW1hcnktbGlzdF9fcm93LS1uby1hY3Rpb25zIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogdGFibGV0KSB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgIHdpZHRoOiAyMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLXN1bW1hcnktbGlzdF9fa2V5LFxuICAuZ292dWstc3VtbWFyeS1saXN0X192YWx1ZSxcbiAgLmdvdnVrLXN1bW1hcnktbGlzdF9fYWN0aW9ucyB7XG4gICAgbWFyZ2luOiAwOyAvLyBSZXNldCBkZWZhdWx0IHVzZXIgYWdlbnQgc3R5bGVzXG5cbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogdGFibGV0KSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgcGFkZGluZy10b3A6IGdvdnVrLXNwYWNpbmcoMik7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiBnb3Z1ay1zcGFjaW5nKDQpO1xuICAgICAgcGFkZGluZy1ib3R0b206IGdvdnVrLXNwYWNpbmcoMik7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLXN1bW1hcnktbGlzdF9fYWN0aW9ucyB7XG4gICAgbWFyZ2luLWJvdHRvbTogZ292dWstc3BhY2luZygzKTtcbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogdGFibGV0KSB7XG4gICAgICB3aWR0aDogMjAlO1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLXN1bW1hcnktbGlzdF9fa2V5LFxuICAuZ292dWstc3VtbWFyeS1saXN0X192YWx1ZSB7XG4gICAgLy8gQXV0b21hdGljIHdyYXBwaW5nIGZvciB1bmJyZWFrYWJsZSB0ZXh0IChlLmcuIFVSTHMpXG4gICAgd29yZC13cmFwOiBicmVhay13b3JkOyAvLyBGYWxsYmFjayBmb3Igb2xkZXIgYnJvd3NlcnMgb25seVxuICAgIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4gIH1cblxuICAuZ292dWstc3VtbWFyeS1saXN0X19rZXkge1xuICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMSk7XG4gICAgQGluY2x1ZGUgZ292dWstdHlwb2dyYXBoeS13ZWlnaHQtYm9sZDtcbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogdGFibGV0KSB7XG4gICAgICB3aWR0aDogMzAlO1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX3ZhbHVlIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkdW50aWw6IHRhYmxldCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogZ292dWstc3BhY2luZygzKTtcbiAgICB9XG4gIH1cblxuICAuZ292dWstc3VtbWFyeS1saXN0X192YWx1ZSA+IHAge1xuICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMik7XG4gIH1cblxuICAuZ292dWstc3VtbWFyeS1saXN0X192YWx1ZSA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLmdvdnVrLXN1bW1hcnktbGlzdF9fYWN0aW9ucy1saXN0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDA7IC8vIFJlc2V0IGRlZmF1bHQgdXNlciBhZ2VudCBzdHlsZXNcbiAgICBwYWRkaW5nOiAwOyAvLyBSZXNldCBkZWZhdWx0IHVzZXIgYWdlbnQgc3R5bGVzXG4gIH1cblxuICAuZ292dWstc3VtbWFyeS1saXN0X19hY3Rpb25zLWxpc3QtaXRlbSxcbiAgLmdvdnVrLXN1bW1hcnktY2FyZF9fYWN0aW9uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cblxuICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkdW50aWw6IHRhYmxldCkge1xuICAgIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX2FjdGlvbnMtbGlzdC1pdGVtLFxuICAgIC5nb3Z1ay1zdW1tYXJ5LWNhcmRfX2FjdGlvbiB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGdvdnVrLXNwYWNpbmcoMik7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiBnb3Z1ay1zcGFjaW5nKDIpO1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGdvdnVrLWJvcmRlci1jb2xvdXI7XG4gICAgfVxuXG4gICAgLmdvdnVrLXN1bW1hcnktbGlzdF9fYWN0aW9ucy1saXN0LWl0ZW06bGFzdC1jaGlsZCxcbiAgICAuZ292dWstc3VtbWFyeS1jYXJkX19hY3Rpb246bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiB0YWJsZXQpIHtcbiAgICAuZ292dWstc3VtbWFyeS1saXN0X19hY3Rpb25zLWxpc3QtaXRlbSxcbiAgICAuZ292dWstc3VtbWFyeS1jYXJkX19hY3Rpb24ge1xuICAgICAgbWFyZ2luLWxlZnQ6IGdvdnVrLXNwYWNpbmcoMik7XG4gICAgICBwYWRkaW5nLWxlZnQ6IGdvdnVrLXNwYWNpbmcoMik7XG4gICAgfVxuXG4gICAgLmdvdnVrLXN1bW1hcnktbGlzdF9fYWN0aW9ucy1saXN0LWl0ZW06bm90KDpmaXJzdC1jaGlsZCksXG4gICAgLmdvdnVrLXN1bW1hcnktY2FyZF9fYWN0aW9uOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGdvdnVrLWJvcmRlci1jb2xvdXI7XG4gICAgfVxuXG4gICAgLmdvdnVrLXN1bW1hcnktbGlzdF9fYWN0aW9ucy1saXN0LWl0ZW06Zmlyc3QtY2hpbGQsXG4gICAgLmdvdnVrLXN1bW1hcnktY2FyZF9fYWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIExhcmdlIGdyb3VwcyBvZiBhY3Rpb24gbGlua3MgbWF5IHdyYXAgb250byBtdWx0aXBsZSBsaW5lcy4gQmVjYXVzZSB0aGUgbGlua1xuICAvLyBmb2N1cyBzdHlsZXMgYXJlIGFwcGxpZWQgb3V0c2lkZSBvZiB0aGUgbGluaydzIGJvdW5kaW5nIGJveCwgdGhlcmUgYXJlXG4gIC8vIHNpdHVhdGlvbnMgd2hlcmUgdGhlIGZvY3VzIHN0eWxlIG9uIGEgbGluayBjYW4gYmUgb3ZlcmxhcHBlZCBieSBzdWJzZXF1ZW50XG4gIC8vIGxpbmtzLiBXZSBkb24ndCB3YW50IHRoaXMsIHNvIGxldCdzIGNyZWF0ZSBhIG5ldyBzdGFja2luZyBjb250ZXh0IG9uIGZvY3VzXG4gIC8vIHNvIHRoZSBsaW5rIGFsd2F5cyBhcHBlYXJzIHRvIGJlICdvbiB0b3AnLlxuICAuZ292dWstc3VtbWFyeS1saXN0X19hY3Rpb25zLWxpc3QtaXRlbSAuZ292dWstbGluazpmb2N1cyB7XG4gICAgaXNvbGF0aW9uOiBpc29sYXRlO1xuICB9XG5cbiAgLy8gTm8gYm9yZGVyIG9uIGVudGlyZSBzdW1tYXJ5IGxpc3RcbiAgLmdvdnVrLXN1bW1hcnktbGlzdC0tbm8tYm9yZGVyIHtcbiAgICAuZ292dWstc3VtbWFyeS1saXN0X19yb3cge1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cblxuICAgIC8vIEluY3JlYXNlIHBhZGRpbmcgYnkgMXB4IHRvIGNvbXBlbnNhdGUgZm9yICdtaXNzaW5nJyBib3JkZXJcbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogdGFibGV0KSB7XG4gICAgICAuZ292dWstc3VtbWFyeS1saXN0X19rZXksXG4gICAgICAuZ292dWstc3VtbWFyeS1saXN0X192YWx1ZSxcbiAgICAgIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX2FjdGlvbnMge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogZ292dWstc3BhY2luZygyKSArIDFweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBObyBib3JkZXIgb24gc3BlY2lmaWMgcm93c1xuICAuZ292dWstc3VtbWFyeS1saXN0X19yb3ctLW5vLWJvcmRlciB7XG4gICAgYm9yZGVyOiAwO1xuXG4gICAgLy8gSW5jcmVhc2UgcGFkZGluZyBieSAxcHggdG8gY29tcGVuc2F0ZSBmb3IgJ21pc3NpbmcnIGJvcmRlclxuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiB0YWJsZXQpIHtcbiAgICAgIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX2tleSxcbiAgICAgIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX3ZhbHVlLFxuICAgICAgLmdvdnVrLXN1bW1hcnktbGlzdF9fYWN0aW9ucyB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDIpICsgMXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIEFkZGl0aW9uYWwgYmxvY2sgZm9yIHRoZSBzdW1tYXJ5IGNhcmRcbiAgLmdvdnVrLXN1bW1hcnktY2FyZCB7XG4gICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNiwgXCJib3R0b21cIik7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGdvdnVrLWJvcmRlci1jb2xvdXI7XG4gIH1cblxuICAuZ292dWstc3VtbWFyeS1jYXJkX190aXRsZS13cmFwcGVyIHtcbiAgICBwYWRkaW5nOiBnb3Z1ay1zcGFjaW5nKDMpO1xuXG4gICAgLy8gRW5zdXJlcyB0aGUgY2FyZCBoZWFkZXIgYXBwZWFycyBzZXBhcmF0ZSB0byB0aGUgc3VtbWFyeSBsaXN0IGluIGZvcmNlZFxuICAgIC8vIGNvbG91cnMgbW9kZVxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBnb3Z1ay1jb2xvdXIoXCJsaWdodC1ncmV5XCIpO1xuXG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IFwidGFibGV0XCIpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIHBhZGRpbmc6IGdvdnVrLXNwYWNpbmcoMykgZ292dWstc3BhY2luZyg0KTtcbiAgICB9XG4gIH1cblxuICAuZ292dWstc3VtbWFyeS1jYXJkX190aXRsZSB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTksICR3ZWlnaHQ6IGJvbGQpO1xuICAgIEBpbmNsdWRlIGdvdnVrLXRleHQtY29sb3VyO1xuICAgIG1hcmdpbjogZ292dWstc3BhY2luZygxKSBnb3Z1ay1zcGFjaW5nKDQpIGdvdnVrLXNwYWNpbmcoMikgMDtcblxuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiBcInRhYmxldFwiKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDEpO1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1zdW1tYXJ5LWNhcmRfX2FjdGlvbnMge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQtc2l6ZSgkc2l6ZTogMTkpO1xuICAgIEBpbmNsdWRlIGdvdnVrLXR5cG9ncmFwaHktd2VpZ2h0LWJvbGQ7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgcm93LWdhcDogMTBweDtcbiAgICBtYXJnaW46IGdvdnVrLXNwYWNpbmcoMSkgMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogXCJ0YWJsZXRcIikge1xuICAgICAganVzdGlmeS1jb250ZW50OiByaWdodDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1zdW1tYXJ5LWNhcmRfX2FjdGlvbiB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuXG4gICAgLy8gV2UgdXNlIHRoZSBmb2xsb3dpbmcgbWVkaWEgcXVlcnkgdG8gdGFyZ2V0IElFMTEgYW5kIDEwIG9ubHkgdG8gYWRkIG1hcmdpblxuICAgIC8vIGJldHdlZW4gYWN0aW9ucy5cbiAgICAvL1xuICAgIC8vIFdlIGRvIHRoaXMgYmVjYXVzZSB3ZSdyZSB1c2luZyByb3ctZ2FwIHRvIGNyZWF0ZSBzcGFjZSBiZXR3ZWVuIGFjdGlvbnMgb25cbiAgICAvLyBtb3JlIGV2ZXJncmVlbiBicm93c2VycyB3aGljaCBJRSBkb2Vzbid0IHN1cHBvcnQuIEBzdXBwb3J0cyBjdXJyZW50bHkgaXNuJ3RcbiAgICAvLyBhIHZpYWJsZSBzb2x1dGlvbiwgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS93M2MvY3Nzd2ctZHJhZnRzL2lzc3Vlcy8zNTU5LlxuICAgIC8vXG4gICAgLy8gU29sdXRpb24gdGFrZW4gZnJvbSBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8xMTE3MzEwNi9hcHBseS1zdHlsZS1vbmx5LW9uLWllI2Fuc3dlci0zNjQ0ODg2MFxuICAgIC8vIHdoaWNoIGFsc28gaW5jbHVkZXMgYW4gZXhwbGFuYXRpb24gb2Ygd2h5IHRoaXMgd29ya3NcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogZ292dWstc3BhY2luZygxKTtcbiAgICB9XG4gIH1cblxuICAuZ292dWstc3VtbWFyeS1jYXJkX19hY3Rpb246bGFzdC1jaGlsZCB7XG4gICAgLy8gU2VlIGFib3ZlIGNvbW1lbnQgZm9yIHdoeSB0aGlzIGlzIGhlcmVcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAuZ292dWstc3VtbWFyeS1jYXJkX19jb250ZW50IHtcbiAgICBwYWRkaW5nOiBnb3Z1ay1zcGFjaW5nKDMpIGdvdnVrLXNwYWNpbmcoMykgMDtcblxuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiBcInRhYmxldFwiKSB7XG4gICAgICBwYWRkaW5nOiBnb3Z1ay1zcGFjaW5nKDMpIGdvdnVrLXNwYWNpbmcoNCk7XG4gICAgfVxuXG4gICAgLmdvdnVrLXN1bW1hcnktbGlzdCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX3JvdzpsYXN0LW9mLXR5cGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPV9pbmRleC5zY3NzLm1hcCAqL1xuIiwiQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL2NvbXBvbmVudC90YWJsZVwiKSB7XG4gIC5nb3Z1ay10YWJsZSB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTkpO1xuICAgIEBpbmNsdWRlIGdvdnVrLXRleHQtY29sb3VyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDYsIFwiYm90dG9tXCIpO1xuXG4gICAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgfVxuXG4gIEBpZiAkZ292dWstbmV3LXR5cG9ncmFwaHktc2NhbGUge1xuICAgIC8vIE1vZGlmaWVyIGZvciB0YWJsZXMgd2l0aCBhIGxvdCBvZiBkYXRhLiBUYWJsZXMgd2l0aCBsb3RzIG9mIGRhdGEgYmVuZWZpdFxuICAgIC8vIGZyb20gYSBzbWFsbGVyIGZvbnQgc2l6ZSBvbiBzbWFsbCBzY3JlZW5zLlxuICAgIC5nb3Z1ay10YWJsZS0tc21hbGwtdGV4dC11bnRpbC10YWJsZXQge1xuICAgICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJHVudGlsOiB0YWJsZXQpIHtcbiAgICAgICAgQGluY2x1ZGUgZ292dWstZm9udC1zaXplKCRzaXplOiAxNik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLXRhYmxlX19oZWFkZXIge1xuICAgIEBpbmNsdWRlIGdvdnVrLXR5cG9ncmFwaHktd2VpZ2h0LWJvbGQ7XG4gIH1cblxuICAuZ292dWstdGFibGVfX2hlYWRlcixcbiAgLmdvdnVrLXRhYmxlX19jZWxsIHtcbiAgICBwYWRkaW5nOiBnb3Z1ay1zcGFjaW5nKDIpIGdvdnVrLXNwYWNpbmcoNCkgZ292dWstc3BhY2luZygyKSAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ292dWstYm9yZGVyLWNvbG91cjtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIH1cblxuICAuZ292dWstdGFibGVfX2NlbGwtLW51bWVyaWMge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQtdGFidWxhci1udW1iZXJzO1xuICB9XG5cbiAgLmdvdnVrLXRhYmxlX19oZWFkZXItLW51bWVyaWMsXG4gIC5nb3Z1ay10YWJsZV9fY2VsbC0tbnVtZXJpYyB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cblxuICAuZ292dWstdGFibGVfX2hlYWRlcjpsYXN0LWNoaWxkLFxuICAuZ292dWstdGFibGVfX2NlbGw6bGFzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxuXG4gIC5nb3Z1ay10YWJsZV9fY2FwdGlvbiB7XG4gICAgQGluY2x1ZGUgZ292dWstdHlwb2dyYXBoeS13ZWlnaHQtYm9sZDtcblxuICAgIGRpc3BsYXk6IHRhYmxlLWNhcHRpb247XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuXG4gIC8vIE1vZGlmaWVycyB0aGF0IG1ha2UgY2FwdGlvbnMgbG9vayBtb3JlIGxpa2UgdGhlaXIgZXF1aXZhbGVudCBoZWFkaW5nc1xuICAuZ292dWstdGFibGVfX2NhcHRpb24tLXhsLFxuICAuZ292dWstdGFibGVfX2NhcHRpb24tLWwsXG4gIC5nb3Z1ay10YWJsZV9fY2FwdGlvbi0tbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogZ292dWstc3BhY2luZygzKTtcbiAgfVxuXG4gIC5nb3Z1ay10YWJsZV9fY2FwdGlvbi0teGwge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQtc2l6ZSgkc2l6ZTogNDgpO1xuICB9XG5cbiAgLmdvdnVrLXRhYmxlX19jYXB0aW9uLS1sIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250LXNpemUoJHNpemU6IDM2KTtcbiAgfVxuXG4gIC5nb3Z1ay10YWJsZV9fY2FwdGlvbi0tbSB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udC1zaXplKCRzaXplOiAyNCk7XG4gIH1cbn1cblxuLyojIHNvdXJjZU1hcHBpbmdVUkw9X2luZGV4LnNjc3MubWFwICovXG4iLCJAaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvY29tcG9uZW50L3RhYnNcIikge1xuICAuZ292dWstdGFicyB7XG4gICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oMSwgXCJ0b3BcIik7XG4gICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNiwgXCJib3R0b21cIik7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTkpO1xuICB9XG5cbiAgLmdvdnVrLXRhYnNfX3RpdGxlIHtcbiAgICAvLyBTZXQgdGhlIHNpemUgYW5kIHdlaWdodCBhZ2FpbiBiZWNhdXNlIHRoaXMgZWxlbWVudCBpcyBhIGhlYWRpbmcgYW5kIHRoZVxuICAgIC8vIHVzZXIgYWdlbnQgZm9udCBzaXplIG92ZXJyaWRlcyB0aGUgaW5oZXJpdGVkIGZvbnQgc2l6ZVxuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQtc2l6ZSgkc2l6ZTogMTkpO1xuICAgIEBpbmNsdWRlIGdvdnVrLXR5cG9ncmFwaHktd2VpZ2h0LXJlZ3VsYXI7XG4gICAgQGluY2x1ZGUgZ292dWstdGV4dC1jb2xvdXI7XG4gICAgbWFyZ2luLWJvdHRvbTogZ292dWstc3BhY2luZygyKTtcbiAgfVxuXG4gIC5nb3Z1ay10YWJzX19saXN0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDYsIFwiYm90dG9tXCIpO1xuICB9XG5cbiAgLmdvdnVrLXRhYnNfX2xpc3QtaXRlbSB7XG4gICAgbWFyZ2luLWxlZnQ6IGdvdnVrLXNwYWNpbmcoNSk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZ292dWstdGV4dC1jb2xvdXI7XG4gICAgICBjb250ZW50OiBcIlxcMjAxNCBcIjsgLy8gXCLigJQgXCJcbiAgICAgIG1hcmdpbi1sZWZ0OiBnb3Z1ay1zcGFjaW5nKC01KTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IGdvdnVrLXNwYWNpbmcoMSk7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLXRhYnNfX3RhYiB7XG4gICAgQGluY2x1ZGUgZ292dWstbGluay1jb21tb247XG4gICAgQGluY2x1ZGUgZ292dWstbGluay1zdHlsZS1kZWZhdWx0O1xuXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMik7XG4gIH1cblxuICAuZ292dWstdGFic19fcGFuZWwge1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDgsIFwiYm90dG9tXCIpO1xuICB9XG5cbiAgLy8gR09WLlVLIEZyb250ZW5kIEphdmFTY3JpcHQgZW5hYmxlZFxuICAuZ292dWstZnJvbnRlbmQtc3VwcG9ydGVkIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogdGFibGV0KSB7XG4gICAgICAuZ292dWstdGFic19fbGlzdCB7XG4gICAgICAgIEBpbmNsdWRlIGdvdnVrLWNsZWFyZml4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdvdnVrLWJvcmRlci1jb2xvdXI7XG4gICAgICB9XG5cbiAgICAgIC5nb3Z1ay10YWJzX190aXRsZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC5nb3Z1ay10YWJzX19saXN0LWl0ZW0ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBnb3Z1ay1zcGFjaW5nKDEpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgcGFkZGluZzogZ292dWstc3BhY2luZygyKSBnb3Z1ay1zcGFjaW5nKDQpO1xuXG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBnb3Z1ay1jb2xvdXIoXCJsaWdodC1ncmV5XCIpO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5nb3Z1ay10YWJzX19saXN0LWl0ZW0tLXNlbGVjdGVkIHtcbiAgICAgICAgJGJvcmRlci13aWR0aDogMXB4O1xuXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBtYXJnaW4tdG9wOiBnb3Z1ay1zcGFjaW5nKC0xKTtcblxuICAgICAgICAvLyBDb21wZW5zYXRpb24gZm9yIGJvcmRlciAob3RoZXJ3aXNlIHdlIGdldCBhIHNoaWZ0KVxuICAgICAgICBtYXJnaW4tYm90dG9tOiAtJGJvcmRlci13aWR0aDtcbiAgICAgICAgcGFkZGluZy10b3A6IGdvdnVrLXNwYWNpbmcoMykgLSAkYm9yZGVyLXdpZHRoO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiBnb3Z1ay1zcGFjaW5nKDQpIC0gJGJvcmRlci13aWR0aDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IGdvdnVrLXNwYWNpbmcoMykgKyAkYm9yZGVyLXdpZHRoO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IGdvdnVrLXNwYWNpbmcoNCkgLSAkYm9yZGVyLXdpZHRoO1xuXG4gICAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkZ292dWstYm9yZGVyLWNvbG91cjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcblxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ292dWstYm9keS1iYWNrZ3JvdW5kLWNvbG91cjtcblxuICAgICAgICAuZ292dWstdGFic19fdGFiIHtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmdvdnVrLXRhYnNfX3RhYiB7XG4gICAgICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstc3R5bGUtdGV4dDtcblxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmdvdnVrLXRhYnNfX3BhbmVsIHtcbiAgICAgICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oMCwgXCJib3R0b21cIik7XG4gICAgICAgIHBhZGRpbmc6IGdvdnVrLXNwYWNpbmcoNikgZ292dWstc3BhY2luZyg0KTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdvdnVrLWJvcmRlci1jb2xvdXI7XG4gICAgICAgIGJvcmRlci10b3A6IDA7XG5cbiAgICAgICAgJiA+IDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5nb3Z1ay10YWJzX19wYW5lbC0taGlkZGVuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyojIHNvdXJjZU1hcHBpbmdVUkw9X2luZGV4LnNjc3MubWFwICovXG4iLCJAaW1wb3J0IFwiLi4vdGFnL2luZGV4XCI7XG5cbkBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9jb21wb25lbnQvdGFzay1saXN0XCIpIHtcbiAgJGdvdnVrLXRhc2stbGlzdC1ob3Zlci1jb2xvdXI6IGdvdnVrLWNvbG91cihcImxpZ2h0LWdyZXlcIik7XG5cbiAgLmdvdnVrLXRhc2stbGlzdCB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTkpO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNiwgXCJib3R0b21cIik7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIH1cblxuICAvLyBUaGlzIHVzZXMgdGFibGUgbGF5b3V0IHNvIHRoYXQgdGhlIHRhc2sgbmFtZSBhbmQgc3RhdHVzIGFsd2F5cyBhcHBlYXJcbiAgLy8gc2lkZS1ieS1zaWRlLCB3aXRoIHRoZSB3aWR0aCBvZiBlYWNoICdjb2x1bW4nIGJlaW5nIGZsZXhpYmxlIGRlcGVuZGluZyB1cG9uXG4gIC8vIHRoZSBsZW5ndGggb2YgdGhlIHRhc2sgbmFtZXMgYW5kIHN0YXR1c2VzLlxuICAvL1xuICAvLyBUaGUgcG9zaXRpb24gaXMgc2V0IHRvICdyZWxhdGl2ZScgc28gdGhhbiBhbiBhYnNvbHV0ZWx5LXBvc2l0aW9uZWRcbiAgLy8gdHJhbnNwYXJlbnQgZWxlbWVudCBib3ggY2FuIGJlIGFkZGVkIHdpdGhpbiB0aGUgbGluayBzbyB0aGF0IHRoZSB3aG9sZSByb3dcbiAgLy8gY2FuIGJlIGNsaWNrYWJsZS5cbiAgLmdvdnVrLXRhc2stbGlzdF9faXRlbSB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZy10b3A6IGdvdnVrLXNwYWNpbmcoMik7XG4gICAgcGFkZGluZy1ib3R0b206IGdvdnVrLXNwYWNpbmcoMik7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRnb3Z1ay1ib3JkZXItY29sb3VyO1xuICB9XG5cbiAgLmdvdnVrLXRhc2stbGlzdF9faXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRnb3Z1ay1ib3JkZXItY29sb3VyO1xuICB9XG5cbiAgLy8gVGhpcyBjbGFzcyBpcyBhZGRlZCB0byB0aGUgPGxpPiBlbGVtZW50cyB3aGVyZSB0aGUgdGFzayBuYW1lIGlzIGEgbGluay4gVGhlXG4gIC8vIGJhY2tncm91bmQgaG92ZXIgY29sb3VyIGlzIGFkZGVkIHRvIGhlbHAgaW5kaWNhdGUgdGhhdCB0aGUgd2hvbGUgcm93IGlzXG4gIC8vIGNsaWNrYWJsZSwgcmF0aGVyIHRoYW4ganVzdCB0aGUgdmlzaWJsZSBsaW5rIHRleHQuXG4gIC5nb3Z1ay10YXNrLWxpc3RfX2l0ZW0tLXdpdGgtbGluazpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogJGdvdnVrLXRhc2stbGlzdC1ob3Zlci1jb2xvdXI7XG4gIH1cblxuICAuZ292dWstdGFzay1saXN0X19uYW1lLWFuZC1oaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgQGluY2x1ZGUgZ292dWstdGV4dC1jb2xvdXI7XG4gIH1cblxuICAuZ292dWstdGFzay1saXN0X19zdGF0dXMge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgcGFkZGluZy1sZWZ0OiBnb3Z1ay1zcGFjaW5nKDIpO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgQGluY2x1ZGUgZ292dWstdGV4dC1jb2xvdXI7XG4gIH1cblxuICAuZ292dWstdGFzay1saXN0X19zdGF0dXMtLWNhbm5vdC1zdGFydC15ZXQge1xuICAgIGNvbG9yOiAkZ292dWstc2Vjb25kYXJ5LXRleHQtY29sb3VyO1xuICB9XG5cbiAgLy8gVGhpcyBhZGRzIGFuIGVtcHR5IHRyYW5zcGFyZW50IGJveCBjb3ZlcmluZyB0aGUgd2hvbGUgcm93LCBpbmNsdWRpbmcgdGhlXG4gIC8vIHRhc2sgc3RhdHVzIGFuZCBhbnkgaGludCB0ZXh0LiBCZWNhdXNlIHRoaXMgaXMgZ2VuZXJhdGVkIHdpdGhpbiB0aGUgbGlua1xuICAvLyBlbGVtZW50LCB0aGlzIGFsbG93cyB0aGUgd2hvbGUgYXJlYSB0byBiZSBjbGlja2FibGUuXG4gIC5nb3Z1ay10YXNrLWxpc3RfX2xpbms6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICAuZ292dWstdGFzay1saXN0X19oaW50IHtcbiAgICBtYXJnaW4tdG9wOiBnb3Z1ay1zcGFjaW5nKDEpO1xuICAgIGNvbG9yOiAkZ292dWstc2Vjb25kYXJ5LXRleHQtY29sb3VyO1xuICB9XG59XG5cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPV9pbmRleC5zY3NzLm1hcCAqL1xuIiwiQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL2NvbXBvbmVudC93YXJuaW5nLXRleHRcIikge1xuICAuZ292dWstd2FybmluZy10ZXh0IHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiAxOSk7XG4gICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNiwgXCJib3R0b21cIik7XG4gICAgQGluY2x1ZGUgZ292dWstdHlwb2dyYXBoeS13ZWlnaHQtYm9sZDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogZ292dWstc3BhY2luZygyKSAwO1xuICB9XG5cbiAgLmdvdnVrLXdhcm5pbmctdGV4dF9faWNvbiB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuXG4gICAgbWluLXdpZHRoOiAzNXB4O1xuICAgIG1pbi1oZWlnaHQ6IDM1cHg7XG4gICAgbWFyZ2luLXRvcDogLTdweDtcblxuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiB0YWJsZXQpIHtcbiAgICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgfVxuXG4gICAgLy8gV2hlbiBhIHVzZXIgY3VzdG9taXNlcyB0aGVpciBjb2xvdXJzIHRoZSBiYWNrZ3JvdW5kIGNvbG91ciB3aWxsIG9mdGVuIGJlXG4gICAgLy8gcmVtb3ZlZC4gQWRkaW5nIGEgYm9yZGVyIHRvIHRoZSBjb21wb25lbnQga2VlcHMgaXQncyBzaGFwZSBhcyBhIGNpcmNsZS5cbiAgICBib3JkZXI6IDNweCBzb2xpZCAkZ292dWstdGV4dC1jb2xvdXI7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gICAgY29sb3I6ICRnb3Z1ay1ib2R5LWJhY2tncm91bmQtY29sb3VyO1xuICAgIGJhY2tncm91bmQ6ICRnb3Z1ay10ZXh0LWNvbG91cjtcblxuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICBsaW5lLWhlaWdodDogMjlweDtcblxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIC8vIFByZXZlbnQgdGhlIGV4Y2xhbWF0aW9uIG1hcmsgZnJvbSBiZWluZyBpbmNsdWRlZCB3aGVuIHRoZSB3YXJuaW5nIHRleHRcbiAgICAvLyBpcyBjb3BpZWQsIGZvciBleGFtcGxlLlxuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuXG4gICAgLy8gSW1wcm92ZSByZW5kZXJpbmcgaW4gV2luZG93cyBIaWdoIENvbnRyYXN0IE1vZGUgKEVkZ2UpLCB3aGVyZSBhXG4gICAgLy8gcmVhZGFiaWxpdHkgYmFja3BsYXRlIGJlaGluZCB0aGUgZXhjbGFtYXRpb24gbWFyayBvYnNjdXJlcyB0aGUgY2lyY2xlXG4gICAgZm9yY2VkLWNvbG9yLWFkanVzdDogbm9uZTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogd2luZG93VGV4dDtcbiAgICAgIGNvbG9yOiB3aW5kb3dUZXh0O1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLXdhcm5pbmctdGV4dF9fdGV4dCB7XG4gICAgQGluY2x1ZGUgZ292dWstdGV4dC1jb2xvdXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy1sZWZ0OiA0NXB4O1xuICAgIC8vIFdoaWxlIGA8c3Ryb25nPmAgaXMgc3R5bGVkIGBib2xkYCBvciBgYm9sZGVyYCBieSB1c2VyLWFnZW50c1xuICAgIC8vIHRoaXMgY2FuIGJlIHJlc2V0IGJ5IHRoZSBhcHAncyBzdHlsZXNoZWV0XG4gICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gIH1cbn1cblxuLyojIHNvdXJjZU1hcHBpbmdVUkw9X2luZGV4LnNjc3MubWFwICovXG4iLCJAaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvdXRpbGl0aWVzL3Zpc3VhbGx5LWhpZGRlblwiKSB7XG4gIC5nb3Z1ay12aXN1YWxseS1oaWRkZW4ge1xuICAgIEBpbmNsdWRlIGdvdnVrLXZpc3VhbGx5LWhpZGRlbjtcbiAgfVxuXG4gIC5nb3Z1ay12aXN1YWxseS1oaWRkZW4tZm9jdXNhYmxlIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay12aXN1YWxseS1oaWRkZW4tZm9jdXNhYmxlO1xuICB9XG59XG5cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPV92aXN1YWxseS1oaWRkZW4uc2Nzcy5tYXAgKi9cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL292ZXJyaWRlcy9kaXNwbGF5XCIpIHtcbiAgLmdvdnVrLVxcIS1kaXNwbGF5LWlubGluZSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZ292dWstXFwhLWRpc3BsYXktaW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5nb3Z1ay1cXCEtZGlzcGxheS1ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5nb3Z1ay1cXCEtZGlzcGxheS1ub25lIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkbWVkaWEtdHlwZTogcHJpbnQpIHtcbiAgICAuZ292dWstXFwhLWRpc3BsYXktbm9uZS1wcmludCB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPV9kaXNwbGF5LnNjc3MubWFwICovXG4iLCIvLy8vXG4vLy8gQGdyb3VwIG92ZXJyaWRlc1xuLy8vL1xuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8vIERpcmVjdGlvbnMgZm9yIHNwYWNpbmdcbi8vL1xuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuXG4kX3NwYWNpbmctZGlyZWN0aW9uczogKFwidG9wXCIsIFwicmlnaHRcIiwgXCJib3R0b21cIiwgXCJsZWZ0XCIpICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGUgcmVzcG9uc2l2ZSBzcGFjaW5nIG92ZXJyaWRlIGNsYXNzZXNcbi8vL1xuLy8vIEdlbmVyYXRlIHNwYWNpbmcgb3ZlcnJpZGUgY2xhc3NlcyBmb3IgdGhlIGdpdmVuIHByb3BlcnR5IChlLmcuIG1hcmdpbilcbi8vLyBmb3IgZWFjaCBwb2ludCBpbiB0aGUgcmVzcG9uc2l2ZSBzcGFjaW5nIHNjYWxlLlxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRwcm9wZXJ0eSAtIFByb3BlcnR5IHRvIGFkZCBzcGFjaW5nIHRvIChlLmcuICdtYXJnaW4nKVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzXG4vLy8gIC5nb3Z1ay1cXCEtbWFyZ2luLTQge1xuLy8vICAgIG1hcmdpbjogMTVweCAhaW1wb3J0YW50O1xuLy8vICB9XG4vLy9cbi8vLyAgQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuLy8vICAgIC5nb3Z1ay1cXCEtbWFyZ2luLTQge1xuLy8vICAgICAgbWFyZ2luOiAyMHB4ICFpbXBvcnRhbnQ7XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcblxuQG1peGluIF9nb3Z1ay1nZW5lcmF0ZS1yZXNwb25zaXZlLXNwYWNpbmctb3ZlcnJpZGVzKCRwcm9wZXJ0eSkge1xuICAvLyBGb3IgZWFjaCBwb2ludCBpbiB0aGUgc3BhY2luZyBzY2FsZSAoZGVmaW5lZCBpbiBzZXR0aW5ncyksIGNyZWF0ZSBhblxuICAvLyBvdmVycmlkZSB0aGF0IGFmZmVjdHMgYWxsIGRpcmVjdGlvbnMuLi5cbiAgQGVhY2ggJHNjYWxlLXBvaW50LCAkc2NhbGUtbWFwIGluICRnb3Z1ay1zcGFjaW5nLXJlc3BvbnNpdmUtc2NhbGUge1xuICAgIC5nb3Z1ay1cXCEtI3skcHJvcGVydHl9LSN7JHNjYWxlLXBvaW50fSB7XG4gICAgICBAaW5jbHVkZSBfZ292dWstcmVzcG9uc2l2ZS1zcGFjaW5nKCRzY2FsZS1wb2ludCwgJHByb3BlcnR5LCBcImFsbFwiLCB0cnVlKTtcbiAgICB9XG5cbiAgICAvLyAuLi4gYW5kIHRoZW4gYW4gb3ZlcnJpZGUgZm9yIGVhY2ggaW5kaXZpZHVhbCBkaXJlY3Rpb25cbiAgICBAZWFjaCAkZGlyZWN0aW9uIGluICRfc3BhY2luZy1kaXJlY3Rpb25zIHtcbiAgICAgIC5nb3Z1ay1cXCEtI3skcHJvcGVydHl9LSN7JGRpcmVjdGlvbn0tI3skc2NhbGUtcG9pbnR9IHtcbiAgICAgICAgQGluY2x1ZGUgX2dvdnVrLXJlc3BvbnNpdmUtc3BhY2luZygkc2NhbGUtcG9pbnQsICRwcm9wZXJ0eSwgJGRpcmVjdGlvbiwgdHJ1ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBHZW5lcmF0ZSBzdGF0aWMgc3BhY2luZyBvdmVycmlkZSBjbGFzc2VzXG4vLy9cbi8vLyBHZW5lcmF0ZSBzcGFjaW5nIG92ZXJyaWRlIGNsYXNzZXMgZm9yIHRoZSBnaXZlbiBwcm9wZXJ0eSAoZS5nLiBtYXJnaW4pXG4vLy8gZm9yIGVhY2ggcG9pbnQgaW4gdGhlIG5vbi1yZXNwb25zaXZlIHNwYWNpbmcgc2NhbGUuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHByb3BlcnR5IC0gUHJvcGVydHkgdG8gYWRkIHNwYWNpbmcgdG8gKGUuZy4gJ21hcmdpbicpXG4vLy9cbi8vLyBAZXhhbXBsZSBjc3Ncbi8vLyAgIC5nb3Z1ay1cXCEtc3RhdGljLW1hcmdpbi00IHtcbi8vLyAgICAgIG1hcmdpbjogMjBweCAhaW1wb3J0YW50O1xuLy8vICAgfVxuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gX2dvdnVrLWdlbmVyYXRlLXN0YXRpYy1zcGFjaW5nLW92ZXJyaWRlcygkcHJvcGVydHkpIHtcbiAgQGVhY2ggJHNwYWNpbmctcG9pbnQgaW4gbWFwLWtleXMoJGdvdnVrLXNwYWNpbmctcG9pbnRzKSB7XG4gICAgLmdvdnVrLVxcIS1zdGF0aWMtI3skcHJvcGVydHl9LSN7JHNwYWNpbmctcG9pbnR9IHtcbiAgICAgICN7JHByb3BlcnR5fTogZ292dWstc3BhY2luZygkc3BhY2luZy1wb2ludCkgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBAZWFjaCAkZGlyZWN0aW9uIGluICRfc3BhY2luZy1kaXJlY3Rpb25zIHtcbiAgICAgIC5nb3Z1ay1cXCEtc3RhdGljLSN7JHByb3BlcnR5fS0jeyRkaXJlY3Rpb259LSN7JHNwYWNpbmctcG9pbnR9IHtcbiAgICAgICAgI3skcHJvcGVydHl9LSN7JGRpcmVjdGlvbn06IGdvdnVrLXNwYWNpbmcoJHNwYWNpbmctcG9pbnQpICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9vdmVycmlkZXMvc3BhY2luZ1wiKSB7XG4gIEBpbmNsdWRlIF9nb3Z1ay1nZW5lcmF0ZS1yZXNwb25zaXZlLXNwYWNpbmctb3ZlcnJpZGVzKFwibWFyZ2luXCIpO1xuICBAaW5jbHVkZSBfZ292dWstZ2VuZXJhdGUtcmVzcG9uc2l2ZS1zcGFjaW5nLW92ZXJyaWRlcyhcInBhZGRpbmdcIik7XG5cbiAgQGluY2x1ZGUgX2dvdnVrLWdlbmVyYXRlLXN0YXRpYy1zcGFjaW5nLW92ZXJyaWRlcyhcIm1hcmdpblwiKTtcbiAgQGluY2x1ZGUgX2dvdnVrLWdlbmVyYXRlLXN0YXRpYy1zcGFjaW5nLW92ZXJyaWRlcyhcInBhZGRpbmdcIik7XG59XG5cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPV9zcGFjaW5nLnNjc3MubWFwICovXG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbkBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9vdmVycmlkZXMvdGV4dC1hbGlnblwiKSB7XG4gIC5nb3Z1ay1cXCEtdGV4dC1hbGlnbi1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZ292dWstXFwhLXRleHQtYWxpZ24tY2VudHJlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5nb3Z1ay1cXCEtdGV4dC1hbGlnbi1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKiMgc291cmNlTWFwcGluZ1VSTD1fdGV4dC1hbGlnbi5zY3NzLm1hcCAqL1xuIiwiQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL292ZXJyaWRlcy90eXBvZ3JhcGh5XCIpIHtcbiAgLy8gRm9udCBzaXplIGFuZCBsaW5lIGhlaWdodFxuXG4gIC8vIEdlbmVyYXRlIHR5cG9ncmFwaHkgb3ZlcnJpZGUgY2xhc3NlcyBmb3IgZWFjaCByZXNwb25zaXZlIGZvbnQgbWFwIGluIHRoZVxuICAvLyB0eXBvZ3JhcGh5IHNjYWxlIGVnIC5nb3Z1ay1cXCEtZm9udC1zaXplLTgwXG4gIC8vXG4gIC8vIGdvdnVrLSEtZm9udC1zaXplLTE0IGlzIGRlcHJlY2F0ZWRcbiAgQGVhY2ggJHNpemUsICRmb250LW1hcCBpbiAkZ292dWstdHlwb2dyYXBoeS1zY2FsZSB7XG4gICAgLmdvdnVrLVxcIS1mb250LXNpemUtI3skc2l6ZX0ge1xuICAgICAgJGZvbnQtbWFwOiBtYXAtZ2V0KCRnb3Z1ay10eXBvZ3JhcGh5LXNjYWxlLCAkc2l6ZSk7XG5cbiAgICAgIC8vIEFkZCB1bmRlcnNjb3JlIHRvIGRlcHJlY2F0ZWQgdHlwb2dyYXBoeSBzY2FsZSBrZXlzXG4gICAgICBAaWYgbWFwLWhhcy1rZXkoJGZvbnQtbWFwLCBcImRlcHJlY2F0aW9uXCIpIHtcbiAgICAgICAgJHNpemU6IF8jeyRzaXplfTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgZ292dWstZm9udC1zaXplKCRzaXplLCAkaW1wb3J0YW50OiB0cnVlKTtcbiAgICB9XG4gIH1cblxuICAvLyBXZWlnaHRzXG5cbiAgLmdvdnVrLVxcIS1mb250LXdlaWdodC1yZWd1bGFyIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay10eXBvZ3JhcGh5LXdlaWdodC1yZWd1bGFyKCRpbXBvcnRhbnQ6IHRydWUpO1xuICB9XG5cbiAgLmdvdnVrLVxcIS1mb250LXdlaWdodC1ib2xkIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay10eXBvZ3JhcGh5LXdlaWdodC1ib2xkKCRpbXBvcnRhbnQ6IHRydWUpO1xuICB9XG5cbiAgLy8gVHlwb2dyYXBoeSBoZWxwZXJzXG5cbiAgLmdvdnVrLVxcIS1mb250LXRhYnVsYXItbnVtYmVycyB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udC10YWJ1bGFyLW51bWJlcnMoJGltcG9ydGFudDogdHJ1ZSk7XG4gIH1cblxuICAuZ292dWstXFwhLXRleHQtYnJlYWstd29yZCB7XG4gICAgQGluY2x1ZGUgZ292dWstdGV4dC1icmVhay13b3JkKCRpbXBvcnRhbnQ6IHRydWUpO1xuICB9XG59XG5cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPV90eXBvZ3JhcGh5LnNjc3MubWFwICovXG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbkBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9vdmVycmlkZXMvd2lkdGhcIikge1xuICAuZ292dWstXFwhLXdpZHRoLWZ1bGwge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZ292dWstXFwhLXdpZHRoLXRocmVlLXF1YXJ0ZXJzIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IHRhYmxldCkge1xuICAgICAgd2lkdGg6IDc1JSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1cXCEtd2lkdGgtdHdvLXRoaXJkcyB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiB0YWJsZXQpIHtcbiAgICAgIHdpZHRoOiA2Ni42NiUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuZ292dWstXFwhLXdpZHRoLW9uZS1oYWxmIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IHRhYmxldCkge1xuICAgICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1cXCEtd2lkdGgtb25lLXRoaXJkIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IHRhYmxldCkge1xuICAgICAgd2lkdGg6IDMzLjMzJSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1cXCEtd2lkdGgtb25lLXF1YXJ0ZXIge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogdGFibGV0KSB7XG4gICAgICB3aWR0aDogMjUlICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPV93aWR0aC5zY3NzLm1hcCAqL1xuIiwiLmVscy1tb2JpbGUtb25seSB7XG4gIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiB0YWJsZXQpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5lbHMtbm9uLW1vYmlsZS1vbmx5IHtcbiAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJHVudGlsOiB0YWJsZXQpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCIvLyBnb3Z1ayBhbmQgcHJvamVjdCBjdXN0b20gaW5wdXQgc3R5bGVzXHJcblxyXG4uZ292dWstaW5wdXQge1xyXG4gICYtLXJlYWQtb25seSB7XHJcbiAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIHBhZGRpbmctbGVmdDogMDtcclxuXHJcbiAgICAmOmRpc2FibGVkIHtcclxuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgICAgY29sb3I6IGdvdnVrLWNvbG91cihcImJsYWNrXCIpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmdvdnVrLWlucHV0LS13aWR0aC03IHtcclxuICBtYXgtd2lkdGg6IDE0LjRleDtcclxufVxyXG5cclxuLmdvdnVrLWlucHV0LS13aWR0aC02IHtcclxuICBtYXgtd2lkdGg6IDEyLjZleDtcclxufVxyXG4iLCIuYXJyb3ctZGlyZWN0aW9uLWxhYmVsLWljb24ge1xyXG4gIGNvbG9yOiAjMDBBNjRGO1xyXG4gIHZlcnRpY2FsLWFsaWduOiAtNHB4O1xyXG4gIG1hcmdpbi1sZWZ0OiA1cHg7XHJcblxyXG4gICYtLWxhbXBzLXBhY2thZ2luZyB7XHJcbiAgICBjb2xvcjogIzAwOTY0MDtcclxuICB9XHJcbn1cclxuIiwiLmZkcy1zdWJuYXYge1xuICAkcm9vdDogJjtcbiAgbWFyZ2luLWJvdHRvbTogZ292dWstc3BhY2luZygwKTtcbiAgcGFkZGluZzogMCBnb3Z1ay1zcGFjaW5nKDMpIDAgMDtcblxuICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogdGFibGV0KSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgxNik7XG4gIH1cblxuICAmLS1zdGlja3kge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAwO1xuICB9XG5cbiAgJl9fc2VjdGlvbiB7XG4gICAgbWFyZ2luOiAwIDAgZ292dWstc3BhY2luZyg0KTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAgICYtaXRlbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDEpO1xuICAgICAgcGFkZGluZy10b3A6IGdvdnVrLXNwYWNpbmcoMSk7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogZ292dWstc3BhY2luZygxKTtcblxuICAgICAgJi0tY3VycmVudCB7XG4gICAgICAgICRfY3VycmVudC1pbmRpY2F0b3Itd2lkdGg6IDRweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0oZ292dWstc3BhY2luZygyKSArICRfY3VycmVudC1pbmRpY2F0b3Itd2lkdGgpO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IGdvdnVrLXNwYWNpbmcoMik7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAkX2N1cnJlbnQtaW5kaWNhdG9yLXdpZHRoIHNvbGlkIGdvdnVrLWNvbG91cihcImJsdWVcIik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGdvdnVrLWNvbG91cihcIndoaXRlXCIpO1xuXG4gICAgICAgICN7JHJvb3R9X19saW5rIHtcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYtLW5lc3RlZCB7XG4gICAgICBtYXJnaW4tdG9wOiBnb3Z1ay1zcGFjaW5nKDIpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogZ292dWstc3BhY2luZyg0KTtcblxuICAgICAgI3skcm9vdH1fX3NlY3Rpb24taXRlbTo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCLigJRcIjtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0oZ292dWstc3BhY2luZyg0KSk7XG4gICAgICAgIGNvbG9yOiBnb3Z1ay1jb2xvdXIoXCJkYXJrLWdyZXlcIik7XG4gICAgICB9XG5cbiAgICAgICN7JHJvb3R9X19saW5rIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2xpbmsge1xuICAgIHBhZGRpbmc6IDJweCAwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICY6bm90KDpmb2N1cyk6aG92ZXIge1xuICAgICAgY29sb3I6ICRnb3Z1ay1saW5rLWNvbG91cjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgfVxuXG4gICZfX3RoZW1lIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogZ292dWstc3BhY2luZygyKSBnb3Z1ay1zcGFjaW5nKDMpIGdvdnVrLXNwYWNpbmcoMikgMDtcbiAgICBjb2xvcjogZ292dWstY29sb3VyKFwiZGFyay1ncmV5XCIpO1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoMTkpO1xuICB9XG59XG4iLCIuZWxzLWNvZGUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTtcbiAgY29sb3I6ICNkMTMxMTg7IC8vIFRha2VuIGZyb20gR09WLlVLIERlc2lnbiBTeXN0ZW0gc3R5bGVzaGVldDsgbm90IHByZXNlbnQgaW4gdGhlIGdvdnVrIGNvbG91ciBwYWxldHRlXG4gIGJhY2tncm91bmQ6IGdvdnVrLWNvbG91cihcImxpZ2h0LWdyZXlcIik7XG5cbiAgJi0taW5saW5lIHtcbiAgICBwYWRkaW5nOiAwIGdvdnVrLXNwYWNpbmcoMSk7XG4gIH1cblxuICAmLS1ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2hpdGUtc3BhY2U6IHByZTtcbiAgICBwYWRkaW5nOiBnb3Z1ay1zcGFjaW5nKDMpO1xuICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgfVxufVxuIiwiLmVscy1hcGktc2NoZW1hLXRhYmxlIHtcclxuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xyXG5cclxuICBjb2RlIHtcclxuICAgIEBleHRlbmQgLmVscy1jb2RlO1xyXG4gICAgQGV4dGVuZCAuZWxzLWNvZGUtLWlubGluZTtcclxuICB9XHJcblxyXG4gICZfX3Byb3BlcnR5LWhlYWRlciB7XHJcbiAgICB3aWR0aDogMzAlO1xyXG4gIH1cclxuXHJcbiAgJl9fcHJvcGVydHktY2VsbCB7XHJcbiAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xyXG4gIH1cclxuXHJcbiAgJl9fZGVzY3JpcHRpb24taGVhZGVyIHtcclxuICAgIHdpZHRoOiA1OCU7XHJcbiAgfVxyXG5cclxuICAmX190eXBlLWhlYWRlciB7XHJcbiAgICB3aWR0aDogMTIlO1xyXG4gIH1cclxufVxyXG4iXX0= */
