/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}
body {
  line-height: 1;
}
ol, ul {
  list-style: none;
}
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}

@charset "UTF-8";
@-webkit-keyframes flash {
  0%,
  100% {
    -webkit-transform: scale(1);
            transform: scale(1); }
  50% {
    -webkit-transform: scale(1.04);
            transform: scale(1.04); }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1); } }
@keyframes flash {
  0%,
  100% {
    -webkit-transform: scale(1);
            transform: scale(1); }
  50% {
    -webkit-transform: scale(1.04);
            transform: scale(1.04); }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1); } }

@-webkit-keyframes pulse {
  0%,
  100% {
    -webkit-transform: scale(1);
            transform: scale(1); }
  30% {
    -webkit-transform: scale(1.2);
            transform: scale(1.2); } }

@keyframes pulse {
  0%,
  100% {
    -webkit-transform: scale(1);
            transform: scale(1); }
  30% {
    -webkit-transform: scale(1.2);
            transform: scale(1.2); } }

@-webkit-keyframes shake {
  0%,
  50%,
  85%,
  100% {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
  55% {
    -webkit-transform: translate3d(-20px, 0, 0);
            transform: translate3d(-20px, 0, 0); }
  65% {
    -webkit-transform: translate3d(-15px, 0, 0);
            transform: translate3d(-15px, 0, 0); }
  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
            transform: translate3d(-10px, 0, 0); }
  60% {
    -webkit-transform: translate3d(20px, 0, 0);
            transform: translate3d(20px, 0, 0); }
  70% {
    -webkit-transform: translate3d(15px, 0, 0);
            transform: translate3d(15px, 0, 0); }
  80% {
    -webkit-transform: translate3d(10px, 0, 0);
            transform: translate3d(10px, 0, 0); } }

@keyframes shake {
  0%,
  50%,
  85%,
  100% {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
  55% {
    -webkit-transform: translate3d(-20px, 0, 0);
            transform: translate3d(-20px, 0, 0); }
  65% {
    -webkit-transform: translate3d(-15px, 0, 0);
            transform: translate3d(-15px, 0, 0); }
  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
            transform: translate3d(-10px, 0, 0); }
  60% {
    -webkit-transform: translate3d(20px, 0, 0);
            transform: translate3d(20px, 0, 0); }
  70% {
    -webkit-transform: translate3d(15px, 0, 0);
            transform: translate3d(15px, 0, 0); }
  80% {
    -webkit-transform: translate3d(10px, 0, 0);
            transform: translate3d(10px, 0, 0); } }

@-webkit-keyframes tada-pause {
  0% {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1); }
  5%,
  10% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
            transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg); }
  15%,
  25%,
  35%,
  45% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
            transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg); }
  20%,
  30%,
  40% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
            transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg); }
  50%,
  100% {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1); } }

@keyframes tada-pause {
  0% {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1); }
  5%,
  10% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
            transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg); }
  15%,
  25%,
  35%,
  45% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
            transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg); }
  20%,
  30%,
  40% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
            transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg); }
  50%,
  100% {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1); } }

@-webkit-keyframes teeter-right {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0); }
  5%,
  95% {
    -webkit-transform: rotate(20deg);
            transform: rotate(20deg); }
  100% {
    -webkit-transform: rotate(0);
            transform: rotate(0); } }

@keyframes teeter-right {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0); }
  5%,
  95% {
    -webkit-transform: rotate(20deg);
            transform: rotate(20deg); }
  100% {
    -webkit-transform: rotate(0);
            transform: rotate(0); } }

@-webkit-keyframes updating {
  0%,
  100% {
    opacity: .5; }
  50% {
    opacity: .25; } }

@keyframes updating {
  0%,
  100% {
    opacity: .5; }
  50% {
    opacity: .25; } }

.badge {
  font-size: 10px;
  background-color: #939191;
  border-radius: 3px;
  color: #fff;
  font-weight: 700;
  letter-spacing: .05em;
  margin-left: .25em;
  padding: .25em .45em .25em .5em;
  text-transform: uppercase;
  vertical-align: 1px;
  white-space: nowrap; }
  @media only screen and (min-width: 375px) {
    .badge {
      font-size: 10px; } }
  @media only screen and (min-width: 532px) {
    .badge {
      font-size: 11px; } }
  @media only screen and (min-width: 768px) {
    .badge {
      font-size: 11px; } }
  @media only screen and (min-width: 1024px) {
    .badge {
      font-size: 12px; } }
  @media print {
    .badge {
      background-color: transparent;
      border: 1px solid #000;
      color: #000;
      padding-bottom: .1em;
      padding-top: .1em; } }
  .badge:first-child {
    margin-left: 0; }
    dd > .badge:first-child {
      vertical-align: -.3em; }
  .badge--complete {
    background-color: #3cb878; }
  .badge--error {
    background-color: #ea3f3f; }
  .badge--expired {
    background-color: #ccc; }
  .badge--featured {
    background-color: #00a7e0; }
  .badge--pv {
    background-color: transparent;
    border: 1px solid #5a6066;
    color: #5a6066;
    display: inline-block;
    font-weight: 400;
    line-height: 1.0625em;
    padding: .25em; }
    dd > .badge--pv:first-child {
      vertical-align: inherit; }
  .badge--special {
    background-color: #f66; }

.new-badge {
  background-color: #001f45;
  color: #fff;
  display: inline-block;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.3em;
  overflow: hidden;
  padding: .4em .8em; }
  .new-badge--special {
    background-color: #ffe0d8;
    color: #001f45; }

.button {
  font-size: 13px;
  background-color: #00a7e0;
  border: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  font-family: "Proxima Nova W01", "Helvetica Neue", Calibri, Helvetica, Arial, sans-serif;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.5em;
  margin: 0;
  overflow: hidden;
  padding: 0.93em 1.67em;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  -webkit-transition: color .2s ease-out, border .2s ease-out, background-color .2s ease-out;
  transition: color .2s ease-out, border .2s ease-out, background-color .2s ease-out;
  white-space: nowrap; }
  @media only screen and (min-width: 375px) {
    .button {
      font-size: 13px; } }
  @media only screen and (min-width: 532px) {
    .button {
      font-size: 14px; } }
  @media only screen and (min-width: 768px) {
    .button {
      font-size: 14px; } }
  @media only screen and (min-width: 1024px) {
    .button {
      font-size: 15px; } }
  .button::-moz-selection {
    background: transparent; }
  .button::selection {
    background: transparent; }
  .button:active {
    background-color: #005b7a; }
  .button:focus {
    -webkit-box-shadow: 0 10px 10px -10px rgba(0, 0, 0, 0.35);
            box-shadow: 0 10px 10px -10px rgba(0, 0, 0, 0.35); }
  .button:hover {
    background-color: #006dba; }

.button--discretionary {
  font-size: 11px;
  background-color: transparent;
  color: #00a7e0;
  padding: 1.2em 1.93em; }
  @media only screen and (min-width: 375px) {
    .button--discretionary {
      font-size: 11px; } }
  @media only screen and (min-width: 532px) {
    .button--discretionary {
      font-size: 12px; } }
  @media only screen and (min-width: 768px) {
    .button--discretionary {
      font-size: 12px; } }
  @media only screen and (min-width: 1024px) {
    .button--discretionary {
      font-size: 13px; } }
  .button--discretionary:focus {
    -webkit-box-shadow: none;
            box-shadow: none;
    text-shadow: 0 2px 3px rgba(0, 0, 0, 0.35); }
  .button--discretionary:hover {
    background-color: transparent;
    color: #006dba; }
  .button--discretionary.button--reversed {
    background-color: transparent;
    color: #fff; }
    .button--discretionary.button--reversed:hover {
      background-color: transparent;
      color: #00a7e0; }

.button--reversed {
  background-color: #fff;
  color: #00a7e0; }
  .button--reversed:active {
    background-color: #fff;
    color: #005b7a; }
  .button--reversed:focus {
    -webkit-box-shadow: none;
            box-shadow: none;
    outline: 2px solid #00a7e0; }
  .button--reversed:hover {
    background-color: #fff;
    color: #006dba; }

.button--special {
  background-color: #f66;
  color: #fff; }
  .button--special:active {
    background-color: red;
    color: #fff; }
  .button--special:hover {
    background-color: #cc5252;
    color: #fff; }

.button--stroked {
  background-color: transparent;
  border: 2px solid #00a7e0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #00a7e0;
  padding-bottom: calc(0.93em - 2px);
  padding-top: calc(0.93em - 2px); }
  .button--stroked:active {
    background-color: transparent;
    border-color: #005b7a;
    color: #005b7a; }
  .button--stroked:hover {
    background-color: transparent;
    border-color: #006dba;
    color: #006dba; }
  .button--stroked.button--reversed {
    border: 2px solid #fff;
    color: #fff; }
    .button--stroked.button--reversed:active {
      background-color: transparent;
      border-color: #cccccc;
      color: #cccccc; }
    .button--stroked.button--reversed:hover {
      background-color: transparent;
      border-color: #00a7e0;
      color: #00a7e0; }

.button-rounded {
  font-size: 16px;
  all: unset;
  background-color: #001f45;
  border-radius: 30px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.5em;
  padding: 0.7em 1.75em;
  text-align: center;
  text-transform: uppercase;
  -webkit-transition: background-color .2s ease-out;
  transition: background-color .2s ease-out; }
  @media only screen and (min-width: 375px) {
    .button-rounded {
      font-size: 16px; } }
  @media only screen and (min-width: 532px) {
    .button-rounded {
      font-size: 17px; } }
  @media only screen and (min-width: 768px) {
    .button-rounded {
      font-size: 17px; } }
  @media only screen and (min-width: 1024px) {
    .button-rounded {
      font-size: 18px; } }
  .button-rounded:disabled, .button-rounded.disabled {
    cursor: not-allowed; }
  .button-rounded:focus, .button-rounded:hover {
    background-color: #36d2b6; }

.button-rounded--s {
  font-size: 11px; }
  @media only screen and (min-width: 375px) {
    .button-rounded--s {
      font-size: 11px; } }
  @media only screen and (min-width: 532px) {
    .button-rounded--s {
      font-size: 12px; } }
  @media only screen and (min-width: 768px) {
    .button-rounded--s {
      font-size: 12px; } }
  @media only screen and (min-width: 1024px) {
    .button-rounded--s {
      font-size: 13px; } }

.button-rounded--secondary {
  background-color: transparent;
  border: 2px solid #001f45;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #001f45;
  padding-bottom: calc(0.7em - 2px);
  padding-top: calc(0.7em - 2px);
  -webkit-transition: border-color .2s ease-out;
  transition: border-color .2s ease-out; }
  .button-rounded--secondary:focus, .button-rounded--secondary:hover {
    background-color: transparent;
    border-color: #36d2b6; }

.button-note {
  font-size: 11px;
  color: #939191;
  padding-left: 1.5em; }
  @media only screen and (min-width: 375px) {
    .button-note {
      font-size: 11px; } }
  @media only screen and (min-width: 532px) {
    .button-note {
      font-size: 12px; } }
  @media only screen and (min-width: 768px) {
    .button-note {
      font-size: 12px; } }
  @media only screen and (min-width: 1024px) {
    .button-note {
      font-size: 13px; } }
  .button-note[data-behavior], .button-note[href] {
    color: #00a7e0;
    text-decoration: none;
    -webkit-transition: color .2s ease-out;
    transition: color .2s ease-out; }
    .button-note[data-behavior]:hover, .button-note[href]:hover {
      color: #006dba; }

.button-note-container {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.button--center {
  display: block;
  margin-left: auto;
  margin-right: auto; }
  @media only screen and (min-width: 532px) {
    .button--center {
      max-width: 370px;
      width: 100%; } }

.button--full {
  display: block;
  white-space: normal;
  width: 100%; }

.button--has-loader {
  /* sass-lint:disable-all

  example:

  <button class="button button--load loading">
    <span class="text">
      Submit
    </span>
    <span class="ellipsis-loader">
      <span class="dot"></span>
      <span class="dot"></span>
      <span class="dot"></span>
      <span class="text">Loading</span>
    </span>
  </button>

  sass-lint:enable-all */ }
  .button--has-loader .text {
    opacity: 1;
    -webkit-transition: opacity 0.5s cubic-bezier(0.19, 1, 0.22, 1);
    transition: opacity 0.5s cubic-bezier(0.19, 1, 0.22, 1); }
  .button--has-loader .ellipsis-loader {
    bottom: 0;
    height: 20px;
    left: 0;
    margin: auto;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    right: 0;
    top: 0;
    -webkit-transform: translate3d(0, 100%, 0);
            transform: translate3d(0, 100%, 0);
    -webkit-transition: opacity 0.5s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 0.5s cubic-bezier(0.19, 1, 0.22, 1);
    transition: opacity 0.5s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 0.5s cubic-bezier(0.19, 1, 0.22, 1);
    transition: opacity 0.5s cubic-bezier(0.19, 1, 0.22, 1), transform 0.5s cubic-bezier(0.19, 1, 0.22, 1);
    transition: opacity 0.5s cubic-bezier(0.19, 1, 0.22, 1), transform 0.5s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 0.5s cubic-bezier(0.19, 1, 0.22, 1); }

.button--has-loader.loading {
  background-color: #ccc;
  overflow: hidden;
  pointer-events: none;
  position: relative; }
  .button--has-loader.loading .text {
    opacity: 0; }
  .button--has-loader.loading .ellipsis-loader {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }

.button--icon {
  padding-left: 2.67em;
  position: relative; }
  .button--icon .ui-icon {
    bottom: 0;
    height: 2.67em;
    left: 0;
    margin-bottom: auto;
    margin-top: auto;
    position: absolute;
    top: 0;
    width: 2.67em; }

.button--l {
  padding-bottom: 1.13em;
  padding-top: 1.2em; }

.button--rounded-corners-l {
  border-radius: 9px; }

.button--rounded-corners-m {
  border-radius: 6px; }

.button--rounded-corners-s {
  border-radius: 3px; }

.button--s {
  font-size: 11px;
  padding: .55em 1.15em; }
  @media only screen and (min-width: 375px) {
    .button--s {
      font-size: 11px; } }
  @media only screen and (min-width: 532px) {
    .button--s {
      font-size: 12px; } }
  @media only screen and (min-width: 768px) {
    .button--s {
      font-size: 12px; } }
  @media only screen and (min-width: 1024px) {
    .button--s {
      font-size: 13px; } }
  .button--s.button--icon .ui-icon {
    height: 1.85em;
    width: 1.85em; }
  .button--s.button--stroked {
    padding-bottom: .4em;
    padding-top: .4em; }

.button--success {
  padding-left: 0; }
  .button--success .ui-icon {
    fill: #00a7e0;
    left: auto;
    right: 2em; }

@media only screen and (min-width: 0) and (max-width: 389px) {
  .button--wide {
    width: 100%; } }

@media only screen and (min-width: 390px) {
  .button--wide {
    min-width: 350px; } }

.button[disabled] {
  background-color: #ccc;
  color: #fff;
  cursor: not-allowed; }
  .button[disabled].button--discretionary {
    background-color: transparent;
    color: #ccc; }
  .button[disabled].button--reversed {
    background-color: #5a6066;
    color: #939191; }
  .button[disabled].button--stroked {
    background-color: transparent;
    border: 2px solid #ccc;
    color: #ccc; }

.button.error {
  -webkit-animation: shake 1s ease-out forwards;
          animation: shake 1s ease-out forwards;
  background-color: #ea3f3f;
  color: #fff; }
  .button.error:active, .button.error:hover {
    background-color: #ea3f3f; }
  .button.error.button--discretionary {
    background-color: transparent;
    color: #ea3f3f; }
  .button.error.button--stroked {
    background-color: transparent;
    border: 2px solid #ea3f3f;
    color: #ea3f3f; }

.card {
  background-color: #f2f4f5;
  color: #616060;
  margin-bottom: 20px;
  margin-top: 10px;
  max-width: 650px;
  min-height: 90px;
  padding-bottom: 30px;
  padding-left: 30px;
  padding-right: 30px;
  padding-top: 30px;
  position: relative; }
  @media only screen and (min-width: 650px) {
    .card {
      margin-left: auto;
      margin-right: auto; } }
  .card--full-width {
    max-width: none;
    padding-bottom: 40px;
    padding-top: 40px; }
    .card--full-width p {
      margin-left: auto;
      margin-right: auto;
      max-width: 35em; }
  .card--tight-top {
    margin-top: 0; }
  .card--with-icon {
    margin-top: 35px; }
  .card p {
    line-height: 1.5em; }
  .card .btn,
  .card .button {
    margin-top: 1.7em; }
  .card .heading {
    font-size: 13px;
    color: #616060;
    font-weight: 700;
    margin-bottom: .7em; }
    @media only screen and (min-width: 375px) {
      .card .heading {
        font-size: 13px; } }
    @media only screen and (min-width: 532px) {
      .card .heading {
        font-size: 14px; } }
    @media only screen and (min-width: 768px) {
      .card .heading {
        font-size: 14px; } }
    @media only screen and (min-width: 1024px) {
      .card .heading {
        font-size: 15px; } }
  .card .heading-l {
    font-size: 18px;
    color: #5a6066;
    font-weight: 700;
    margin-bottom: .8em; }
    @media only screen and (min-width: 375px) {
      .card .heading-l {
        font-size: 19px; } }
    @media only screen and (min-width: 532px) {
      .card .heading-l {
        font-size: 20px; } }
    @media only screen and (min-width: 768px) {
      .card .heading-l {
        font-size: 22px; } }
    @media only screen and (min-width: 1024px) {
      .card .heading-l {
        font-size: 24px; } }
  .card .pre-heading {
    font-size: 13px;
    color: #939191;
    font-weight: 700;
    letter-spacing: 0.1em;
    line-height: 1.5em;
    margin-bottom: 1em;
    text-transform: uppercase; }
    @media only screen and (min-width: 375px) {
      .card .pre-heading {
        font-size: 13px; } }
    @media only screen and (min-width: 532px) {
      .card .pre-heading {
        font-size: 14px; } }
    @media only screen and (min-width: 768px) {
      .card .pre-heading {
        font-size: 14px; } }
    @media only screen and (min-width: 1024px) {
      .card .pre-heading {
        font-size: 15px; } }
  .radio-and-label + .card {
    margin-top: 16px; }
  .card .seal-icon {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#3cb878), to(#297e52));
    background-image: linear-gradient(to bottom, #3cb878, #297e52);
    border-radius: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 50px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    left: 0;
    margin-left: auto;
    margin-right: auto;
    position: absolute;
    right: 0;
    top: 0;
    -webkit-transform: translate3d(0, -28px, 0);
            transform: translate3d(0, -28px, 0);
    width: 50px; }
    .card .seal-icon .check {
      fill: #fff;
      height: 22px;
      width: 22px; }
  .card .showroom-note {
    font-size: 12px; }

.card--extra-padding {
  padding-top: 40px; }
  @media only screen and (min-width: 768px) {
    .card--extra-padding {
      padding-bottom: 50px;
      padding-left: 70px;
      padding-right: 70px;
      padding-top: 50px; } }

.card--stroked {
  background-color: transparent;
  border: 4px solid #f2f4f5; }

.card--tight {
  padding-bottom: 10px;
  padding-left: 25px;
  padding-right: 25px;
  padding-top: 15px; }

.card.warning {
  background-color: #ffe7e9;
  margin-bottom: 0;
  margin-top: 1.5em; }
  .card.warning p {
    font-size: 13px; }
    @media only screen and (min-width: 375px) {
      .card.warning p {
        font-size: 13px; } }
    @media only screen and (min-width: 532px) {
      .card.warning p {
        font-size: 14px; } }
    @media only screen and (min-width: 768px) {
      .card.warning p {
        font-size: 14px; } }
    @media only screen and (min-width: 1024px) {
      .card.warning p {
        font-size: 15px; } }

.showroom-pickup-card {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: solid 4px #f2f4f5;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 1.5em;
  padding-bottom: 1.7em;
  padding-left: 1.7em;
  padding-right: 1.7em;
  padding-top: 1.9em;
  text-align: center; }
  @media only screen and (min-width: 768px) {
    .showroom-pickup-card {
      margin-bottom: 3.75em; } }
  .showroom-pickup-card .heading {
    font-size: 18px;
    color: #2e3134;
    font-weight: 700;
    margin-bottom: .6em; }
    @media only screen and (min-width: 375px) {
      .showroom-pickup-card .heading {
        font-size: 19px; } }
    @media only screen and (min-width: 532px) {
      .showroom-pickup-card .heading {
        font-size: 20px; } }
    @media only screen and (min-width: 768px) {
      .showroom-pickup-card .heading {
        font-size: 22px; } }
    @media only screen and (min-width: 1024px) {
      .showroom-pickup-card .heading {
        font-size: 24px; } }
  .showroom-pickup-card .message {
    font-size: 15px;
    line-height: 1.5em;
    padding-bottom: 1.8em; }
    @media only screen and (min-width: 375px) {
      .showroom-pickup-card .message {
        font-size: 15px; } }
    @media only screen and (min-width: 532px) {
      .showroom-pickup-card .message {
        font-size: 16px; } }
    @media only screen and (min-width: 768px) {
      .showroom-pickup-card .message {
        font-size: 16px; } }
    @media only screen and (min-width: 1024px) {
      .showroom-pickup-card .message {
        font-size: 16px; } }

.cart-summary {
  background-color: #fff; }
  @media only screen and (min-width: 0) and (max-width: 767px) {
    .cart-summary {
      border: 0;
      bottom: 0;
      left: 0;
      position: fixed;
      width: 100%;
      z-index: 10; }
      .cart-summary .charges,
      .cart-summary .credit,
      .cart-summary .discount,
      .cart-summary .products-empty-cart,
      .cart-summary .products-table,
      .cart-summary .promo-disclaimer {
        display: none; }
      .cart-summary.empty, .cart-summary.open {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        height: 100%;
        overflow-y: auto; }
        .cart-summary.empty .products-container, .cart-summary.open .products-container {
          -webkit-box-flex: 1;
              -ms-flex-positive: 1;
                  flex-grow: 1; }
      .cart-summary.empty .header {
        cursor: default; }
      .cart-summary.empty .products-container {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center; }
      .cart-summary.empty .products-empty-cart {
        display: block; }
      .cart-summary.open .ahem {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; }
      .cart-summary.open .chevron-tight {
        -webkit-transform: rotate(180deg);
                transform: rotate(180deg); }
      .cart-summary.open .charges {
        display: block; }
      .cart-summary.open .credit {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; }
      .cart-summary.open .discount {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; }
      .cart-summary.open .products-table {
        display: table; }
      .cart-summary.open .promo-disclaimer {
        display: block; } }

.cart-summary.empty .charges, .cart-summary.empty.open .charges {
  display: none; }

.cart-summary .ahem {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  @media only screen and (min-width: 0) and (max-width: 767px) {
    .cart-summary .ahem {
      border-top: 1px solid #d9d9d9;
      display: none;
      padding: 20px; } }
  @media only screen and (min-width: 768px) {
    .cart-summary .ahem {
      margin-top: 20px;
      padding-bottom: 20px; } }

@media only screen and (min-width: 0) and (max-width: 767px) {
  .cart-summary .charges {
    border-top: 1px solid #d9d9d9;
    padding-bottom: 10px;
    padding-top: 10px; } }

@media only screen and (min-width: 768px) {
  .cart-summary .charges {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    left: 4px;
    margin-bottom: 30px;
    margin-left: auto;
    margin-right: auto;
    right: 4px; } }

.cart-summary .charges.pending {
  -webkit-animation: updating 2s ease-out infinite;
          animation: updating 2s ease-out infinite; }

@media only screen and (min-width: 768px) {
  .cart-summary .charges.grand-total-only .grand-total {
    border-top: 0;
    margin-top: 0; } }

@media only screen and (min-width: 768px) {
  .cart-summary .charges.tax-is-included .line-item:nth-child(1) {
    margin-left: 16.66%; }
  .cart-summary .charges.tax-is-included .line-item:nth-child(2) {
    margin-right: 16.66%; } }

@media only screen and (min-width: 0) and (max-width: 767px) {
  .cart-summary .charges .key {
    color: #939191;
    display: block;
    -ms-flex-negative: 0;
        flex-shrink: 0; } }

@media only screen and (min-width: 768px) {
  .cart-summary .charges .key {
    font-size: 10px;
    color: #616060;
    letter-spacing: .08em;
    margin-top: 6px;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    text-transform: uppercase; } }
  @media only screen and (min-width: 768px) and (min-width: 375px) {
    .cart-summary .charges .key {
      font-size: 10px; } }
  @media only screen and (min-width: 768px) and (min-width: 532px) {
    .cart-summary .charges .key {
      font-size: 11px; } }
  @media only screen and (min-width: 768px) and (min-width: 768px) {
    .cart-summary .charges .key {
      font-size: 11px; } }
  @media only screen and (min-width: 768px) and (min-width: 1024px) {
    .cart-summary .charges .key {
      font-size: 12px; } }

.cart-summary .charges .grand-total,
.cart-summary .charges .line-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media only screen and (min-width: 0) and (max-width: 767px) {
    .cart-summary .charges .grand-total,
    .cart-summary .charges .line-item {
      font-size: 15px;
      padding: 10px 20px;
      width: 100%; } }
  @media only screen and (min-width: 0) and (max-width: 767px) and (min-width: 375px) {
    .cart-summary .charges .grand-total,
    .cart-summary .charges .line-item {
      font-size: 15px; } }
  @media only screen and (min-width: 0) and (max-width: 767px) and (min-width: 532px) {
    .cart-summary .charges .grand-total,
    .cart-summary .charges .line-item {
      font-size: 16px; } }
  @media only screen and (min-width: 0) and (max-width: 767px) and (min-width: 768px) {
    .cart-summary .charges .grand-total,
    .cart-summary .charges .line-item {
      font-size: 16px; } }
  @media only screen and (min-width: 0) and (max-width: 767px) and (min-width: 1024px) {
    .cart-summary .charges .grand-total,
    .cart-summary .charges .line-item {
      font-size: 16px; } }
  @media only screen and (min-width: 768px) {
    .cart-summary .charges .grand-total,
    .cart-summary .charges .line-item {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; } }

@media only screen and (min-width: 0) and (max-width: 767px) {
  .cart-summary .charges .grand-total .key,
  .cart-summary .charges .grand-total .value {
    color: #161a1d;
    font-weight: 700; } }

@media only screen and (min-width: 768px) {
  .cart-summary .charges .grand-total {
    border-top: 1px solid #d9d9d9;
    display: block;
    margin-top: 10px;
    padding: 15px;
    text-align: center;
    width: 100%; }
    .cart-summary .charges .grand-total .key,
    .cart-summary .charges .grand-total .value {
      font-size: 18px;
      display: inline;
      letter-spacing: 0;
      margin-left: .1em;
      margin-right: .1em;
      text-transform: none; } }
    @media only screen and (min-width: 768px) and (min-width: 375px) {
      .cart-summary .charges .grand-total .key,
      .cart-summary .charges .grand-total .value {
        font-size: 19px; } }
    @media only screen and (min-width: 768px) and (min-width: 532px) {
      .cart-summary .charges .grand-total .key,
      .cart-summary .charges .grand-total .value {
        font-size: 20px; } }
    @media only screen and (min-width: 768px) and (min-width: 768px) {
      .cart-summary .charges .grand-total .key,
      .cart-summary .charges .grand-total .value {
        font-size: 21px; } }
    @media only screen and (min-width: 768px) and (min-width: 1024px) {
      .cart-summary .charges .grand-total .key,
      .cart-summary .charges .grand-total .value {
        font-size: 24px; } }

@media only screen and (min-width: 768px) {
  .cart-summary .charges .line-item {
    padding: 10px;
    text-align: center;
    width: 33.33%; } }

@media only screen and (min-width: 0) and (max-width: 767px) {
  .cart-summary .charges .value {
    display: block;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    text-align: right; } }

@media only screen and (min-width: 768px) {
  .cart-summary .charges .value {
    font-size: 15px;
    color: #161a1d;
    font-weight: 700;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    text-transform: uppercase; } }
  @media only screen and (min-width: 768px) and (min-width: 375px) {
    .cart-summary .charges .value {
      font-size: 15px; } }
  @media only screen and (min-width: 768px) and (min-width: 532px) {
    .cart-summary .charges .value {
      font-size: 16px; } }
  @media only screen and (min-width: 768px) and (min-width: 768px) {
    .cart-summary .charges .value {
      font-size: 16px; } }
  @media only screen and (min-width: 768px) and (min-width: 1024px) {
    .cart-summary .charges .value {
      font-size: 16px; } }

.cart-summary .charges .value .badge {
  margin-right: 0.325em;
  -webkit-transform: translate3d(0, -2px, 0);
          transform: translate3d(0, -2px, 0); }

.cart-summary .chevron-tight {
  fill: #00a7e0;
  height: 8px;
  -webkit-transition: -webkit-transform .2s ease-out;
  transition: -webkit-transform .2s ease-out;
  transition: transform .2s ease-out;
  transition: transform .2s ease-out, -webkit-transform .2s ease-out;
  width: 8px; }

.cart-summary .discount {
  padding: 20px 20px 0; }
  .cart-summary .discount .line-item {
    margin-bottom: 5px;
    width: 100%; }
  @media only screen and (min-width: 0) and (max-width: 767px) {
    .cart-summary .discount {
      border-top: 1px solid #d9d9d9;
      padding-top: 20px; } }
  @media only screen and (min-width: 768px) {
    .cart-summary .discount {
      border-bottom: 1px solid #d9d9d9;
      margin-bottom: 10px;
      padding-top: 10px; } }
  .cart-summary .discount dl {
    display: grid;
    grid-template-columns: auto auto; }
  .cart-summary .discount dd {
    margin-bottom: 15px;
    text-align: right; }
  .cart-summary .discount .key,
  .cart-summary .discount .value {
    font-size: 15px;
    color: #616060; }
    @media only screen and (min-width: 375px) {
      .cart-summary .discount .key,
      .cart-summary .discount .value {
        font-size: 15px; } }
    @media only screen and (min-width: 532px) {
      .cart-summary .discount .key,
      .cart-summary .discount .value {
        font-size: 16px; } }
    @media only screen and (min-width: 768px) {
      .cart-summary .discount .key,
      .cart-summary .discount .value {
        font-size: 16px; } }
    @media only screen and (min-width: 1024px) {
      .cart-summary .discount .key,
      .cart-summary .discount .value {
        font-size: 16px; } }
  .cart-summary .discount .total {
    color: #161a1d;
    font-weight: 700; }

.cart-summary .header {
  background-color: #fff;
  border: 4px solid #00a7e0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-bottom: 10px;
  padding-left: 20px;
  padding-right: 20px;
  padding-top: 10px; }
  .cart-summary .header::before {
    -webkit-box-shadow: 0 -10px 15px rgba(0, 0, 0, 0.35);
            box-shadow: 0 -10px 15px rgba(0, 0, 0, 0.35);
    content: '';
    display: block;
    height: 20px;
    left: 5%;
    position: absolute;
    top: 12px;
    width: 90%;
    z-index: -1; }
  @media only screen and (min-width: 768px) {
    .cart-summary .header {
      display: none; } }
  .cart-summary .header .line-1 {
    font-size: 15px;
    color: #000;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 1.5em;
    text-transform: uppercase; }
    @media only screen and (min-width: 375px) {
      .cart-summary .header .line-1 {
        font-size: 15px; } }
    @media only screen and (min-width: 532px) {
      .cart-summary .header .line-1 {
        font-size: 16px; } }
    @media only screen and (min-width: 768px) {
      .cart-summary .header .line-1 {
        font-size: 16px; } }
    @media only screen and (min-width: 1024px) {
      .cart-summary .header .line-1 {
        font-size: 16px; } }
    .cart-summary .header .line-1.amount {
      letter-spacing: 0; }
  .cart-summary .header .items {
    padding-right: 20px;
    text-align: right; }
    @media only screen and (min-width: 414px) and (max-width: 767px) {
      .cart-summary .header .items {
        padding-right: 30px; } }
  .cart-summary .header .line-2 {
    font-size: 10px;
    color: #161a1d;
    letter-spacing: .1em;
    text-transform: uppercase; }
    @media only screen and (min-width: 375px) {
      .cart-summary .header .line-2 {
        font-size: 10px; } }
    @media only screen and (min-width: 532px) {
      .cart-summary .header .line-2 {
        font-size: 11px; } }
    @media only screen and (min-width: 768px) {
      .cart-summary .header .line-2 {
        font-size: 11px; } }
    @media only screen and (min-width: 1024px) {
      .cart-summary .header .line-2 {
        font-size: 12px; } }
  .cart-summary .header .note-symbol,
  .cart-summary .header .total-is-pending-symbol {
    margin-left: -.35em; }
  .cart-summary .header .total-container {
    text-align: right; }
  .cart-summary .header .your-order {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1; }

.cart-summary .pre-calculate-is-pending {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #f2f4f5;
  border-radius: 3px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  line-height: 1.3em;
  margin-bottom: 20px;
  margin-left: 20px;
  margin-right: 20px;
  margin-top: 20px;
  padding: 20px; }
  @media only screen and (min-width: 768px) {
    .cart-summary .pre-calculate-is-pending {
      margin-left: 0;
      margin-right: 0; } }
  .cart-summary .pre-calculate-is-pending .note {
    font-size: 11px;
    color: #616060;
    margin-top: 1.3em;
    padding-right: 0; }
    @media only screen and (min-width: 375px) {
      .cart-summary .pre-calculate-is-pending .note {
        font-size: 11px; } }
    @media only screen and (min-width: 532px) {
      .cart-summary .pre-calculate-is-pending .note {
        font-size: 12px; } }
    @media only screen and (min-width: 768px) {
      .cart-summary .pre-calculate-is-pending .note {
        font-size: 12px; } }
    @media only screen and (min-width: 1024px) {
      .cart-summary .pre-calculate-is-pending .note {
        font-size: 13px; } }

.cart-summary .products-container {
  position: relative;
  z-index: 1; }
  @media only screen and (min-width: 768px) {
    .cart-summary .products-container {
      margin-bottom: 20px; }
      .cart-summary .products-container::after {
        border: 4px solid #00a7e0;
        bottom: 0;
        content: '';
        left: 0;
        pointer-events: none;
        position: absolute;
        right: 0;
        top: 0;
        z-index: 3; }
      .cart-summary .products-container::before {
        bottom: 8px;
        -webkit-box-shadow: 0 10px 15px rgba(0, 0, 0, 0.35);
                box-shadow: 0 10px 15px rgba(0, 0, 0, 0.35);
        content: '';
        display: block;
        height: 20px;
        left: 5%;
        position: absolute;
        width: 90%;
        z-index: 2; }
      .cart-summary .products-container .products-empty-cart,
      .cart-summary .products-container .products-table {
        position: relative;
        z-index: 3; }
        .cart-summary .products-container .products-empty-cart:not(.require-sso),
        .cart-summary .products-container .products-table:not(.require-sso) {
          background-color: #fff; } }
  @media only screen and (min-width: 768px) and (max-width: 1023px) {
    .cart-summary .products-container .product-image-container {
      display: none; } }

.cart-summary .promo-disclaimer {
  font-size: 11px;
  background-color: #f2f4f5;
  border-radius: 3px;
  line-height: 1.3em;
  margin-bottom: 20px;
  margin-left: 20px;
  margin-right: 20px;
  padding: 20px;
  text-align: center; }
  @media only screen and (min-width: 375px) {
    .cart-summary .promo-disclaimer {
      font-size: 11px; } }
  @media only screen and (min-width: 532px) {
    .cart-summary .promo-disclaimer {
      font-size: 12px; } }
  @media only screen and (min-width: 768px) {
    .cart-summary .promo-disclaimer {
      font-size: 12px; } }
  @media only screen and (min-width: 1024px) {
    .cart-summary .promo-disclaimer {
      font-size: 13px; } }
  @media only screen and (min-width: 768px) {
    .cart-summary .promo-disclaimer {
      margin-left: 0;
      margin-right: 0; } }

@media only screen and (min-width: 768px) {
  .cart-summary .sticky {
    border-top: 1px solid #d9d9d9;
    padding-top: 10px; }
    .cart-summary .sticky.stuck {
      border-width: 0;
      position: fixed;
      top: 0; } }

.cart-summary .note,
.cart-summary .tax-is-included-note,
.cart-summary .total-is-pending-note {
  font-size: 13px;
  color: #939191;
  -webkit-box-flex: 1;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto; }
  @media only screen and (min-width: 375px) {
    .cart-summary .note,
    .cart-summary .tax-is-included-note,
    .cart-summary .total-is-pending-note {
      font-size: 13px; } }
  @media only screen and (min-width: 532px) {
    .cart-summary .note,
    .cart-summary .tax-is-included-note,
    .cart-summary .total-is-pending-note {
      font-size: 14px; } }
  @media only screen and (min-width: 768px) {
    .cart-summary .note,
    .cart-summary .tax-is-included-note,
    .cart-summary .total-is-pending-note {
      font-size: 14px; } }
  @media only screen and (min-width: 1024px) {
    .cart-summary .note,
    .cart-summary .tax-is-included-note,
    .cart-summary .total-is-pending-note {
      font-size: 15px; } }
  @media only screen and (min-width: 0) and (max-width: 767px) {
    .cart-summary .note,
    .cart-summary .tax-is-included-note,
    .cart-summary .total-is-pending-note {
      line-height: 1.5em;
      padding-right: 20px;
      text-align: right; } }
  @media only screen and (min-width: 768px) {
    .cart-summary .note,
    .cart-summary .tax-is-included-note,
    .cart-summary .total-is-pending-note {
      line-height: 1.3em;
      text-align: center;
      -webkit-transform: translateY(-25%);
              transform: translateY(-25%);
      width: 100%; } }

.cart-summary .toggle {
  color: #00a7e0; }

.cart-summary .total-is-pending-symbol {
  color: #939191; }
  @media only screen and (min-width: 768px) {
    .cart-summary .total-is-pending-symbol {
      margin-left: -.1em; } }

@media only screen and (min-width: 0) and (max-width: 767px) {
  .cart-summary-controls-1-col {
    display: block; } }

@media only screen and (min-width: 768px) {
  .cart-summary-controls-1-col {
    display: none; } }

.cart-summary-controls-1-col .ahem {
  border-bottom: 1px solid #d9d9d9;
  border-top: 1px solid #d9d9d9;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 50px;
  padding-bottom: 20px;
  padding-top: 20px; }

.cart-summary-controls-2-col {
  display: none; }
  @media only screen and (min-width: 768px) {
    .cart-summary-controls-2-col {
      display: block; } }

.contact-modal {
  -webkit-overflow-scrolling: touch;
  bottom: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  visibility: hidden;
  z-index: 30; }
  .contact-modal.show {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
    -webkit-transition: visibility 0s, opacity .2s ease-out;
    transition: visibility 0s, opacity .2s ease-out;
    visibility: visible; }
    .contact-modal.show .contact-tile-list .contact-tile {
      opacity: 1;
      -webkit-transform: translateY(0);
              transform: translateY(0); }

.contact-modal .bg {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%; }

.contact-modal .close {
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1; }

.contact-modal .content {
  overflow-x: hidden;
  overflow-y: auto;
  text-align: center; }

.contact-modal .contact-tile-list {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-left: -16px;
  margin-right: -16px; }
  @media only screen and (min-width: 608px) {
    .contact-modal .contact-tile-list {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: flex-start;
      margin-left: 0;
      max-width: 608px; } }
  @media only screen and (min-width: 912px) {
    .contact-modal .contact-tile-list {
      max-width: 912px; } }
  @media only screen and (min-width: 1216px) {
    .contact-modal .contact-tile-list {
      max-width: 1216px; } }
  .contact-modal .contact-tile-list .contact-tile {
    background-color: #fff;
    border-radius: 6px;
    -webkit-box-shadow: 0 10px 10px -10px rgba(0, 0, 0, 0.35);
            box-shadow: 0 10px 10px -10px rgba(0, 0, 0, 0.35);
    margin-bottom: 16px;
    min-height: 288px;
    opacity: 0;
    -webkit-transform: translateY(10%);
            transform: translateY(10%);
    -webkit-transition: opacity .2s ease-out, -webkit-transform .2s ease-out;
    transition: opacity .2s ease-out, -webkit-transform .2s ease-out;
    transition: opacity .2s ease-out, transform .2s ease-out;
    transition: opacity .2s ease-out, transform .2s ease-out, -webkit-transform .2s ease-out;
    width: 288px; }
    @media only screen and (min-width: 608px) {
      .contact-modal .contact-tile-list .contact-tile {
        margin-right: 16px; } }
    .contact-modal .contact-tile-list .contact-tile:nth-child(2) {
      -webkit-transition-delay: .05s;
              transition-delay: .05s; }
    .contact-modal .contact-tile-list .contact-tile:nth-child(3) {
      -webkit-transition-delay: .1s;
              transition-delay: .1s; }
    .contact-modal .contact-tile-list .contact-tile:nth-child(4) {
      -webkit-transition-delay: .2s;
              transition-delay: .2s; }
    .contact-modal .contact-tile-list .contact-tile:hover .contact-icon {
      fill: #36d2b6; }

.contact-modal .heading,
.contact-modal .sub-heading {
  font-size: 15px;
  line-height: 1.5em;
  -webkit-transition: -webkit-transform .2s ease-out;
  transition: -webkit-transform .2s ease-out;
  transition: transform .2s ease-out;
  transition: transform .2s ease-out, -webkit-transform .2s ease-out; }
  @media only screen and (min-width: 375px) {
    .contact-modal .heading,
    .contact-modal .sub-heading {
      font-size: 15px; } }
  @media only screen and (min-width: 532px) {
    .contact-modal .heading,
    .contact-modal .sub-heading {
      font-size: 16px; } }
  @media only screen and (min-width: 768px) {
    .contact-modal .heading,
    .contact-modal .sub-heading {
      font-size: 16px; } }
  @media only screen and (min-width: 1024px) {
    .contact-modal .heading,
    .contact-modal .sub-heading {
      font-size: 16px; } }

.contact-modal .heading {
  color: #2e3134;
  font-weight: 700; }

.contact-modal .heading-page {
  margin-top: 2em; }

.contact-modal .img {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 5px;
  width: 150px; }
  .contact-modal .img .contact-icon {
    fill: #001f45;
    -webkit-transition: fill .2s ease-out;
    transition: fill .2s ease-out; }

.contact-modal .info {
  display: block;
  padding-bottom: 35px;
  padding-left: 20px;
  padding-right: 20px;
  padding-top: 40px;
  position: relative;
  text-decoration: none;
  z-index: 4; }

.contact-modal .sub-heading {
  color: #5a6066; }

.error-page {
  bottom: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100%;
  left: 0;
  position: absolute;
  right: 0;
  top: 0; }

.error-page .body {
  font-size: 10px;
  color: #5a6066;
  line-height: 1.5em;
  max-width: 32em; }
  @media only screen and (min-width: 375px) {
    .error-page .body {
      font-size: 10px; } }
  @media only screen and (min-width: 532px) {
    .error-page .body {
      font-size: 11px; } }
  @media only screen and (min-width: 768px) {
    .error-page .body {
      font-size: 11px; } }
  @media only screen and (min-width: 1024px) {
    .error-page .body {
      font-size: 12px; } }

.error-page .column {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  @media only screen and (min-width: 768px) {
    .error-page .column.copy-container {
      padding-right: 40px; } }
  @media only screen and (min-width: 0) and (max-width: 767px) {
    .error-page .column.img-container {
      display: none; } }
  .error-page .column.img-container .img {
    height: auto;
    max-width: 350px;
    width: 100%; }

.error-page .error-footer {
  font-size: 12px;
  padding-bottom: 40px;
  padding-top: 40px; }

.error-page .header {
  margin-bottom: 40px;
  margin-top: 40px; }

.error-page .heading {
  font-size: 21px;
  color: #00a7e0;
  font-weight: 700;
  line-height: 1.2em;
  margin-bottom: .5em;
  max-width: 12em; }
  @media only screen and (min-width: 375px) {
    .error-page .heading {
      font-size: 22px; } }
  @media only screen and (min-width: 532px) {
    .error-page .heading {
      font-size: 24px; } }
  @media only screen and (min-width: 768px) {
    .error-page .heading {
      font-size: 28px; } }
  @media only screen and (min-width: 1024px) {
    .error-page .heading {
      font-size: 32px; } }

.error-page .logo {
  height: 33px;
  width: 175px; }

.error-page .main {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1; }
  .error-page .main .content-wrapper {
    width: 100%; }

.error-page .row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  min-height: calc(100vh - 205px); }
  .android .error-page .row,
  .ios .error-page .row {
    min-height: calc(100vh - 275px); }

.error-page .sub-heading {
  font-size: 18px;
  line-height: 1.2em;
  margin-bottom: 1.2em;
  max-width: 18em; }
  @media only screen and (min-width: 375px) {
    .error-page .sub-heading {
      font-size: 19px; } }
  @media only screen and (min-width: 532px) {
    .error-page .sub-heading {
      font-size: 20px; } }
  @media only screen and (min-width: 768px) {
    .error-page .sub-heading {
      font-size: 22px; } }
  @media only screen and (min-width: 1024px) {
    .error-page .sub-heading {
      font-size: 24px; } }

.footer {
  padding-bottom: 40px;
  padding-top: 20px;
  font-size: 10px;
  display: block;
  line-height: 1.5em;
  text-align: center; }
  @media only screen and (min-width: 532px) {
    .footer {
      padding-bottom: 60px; } }
  @media only screen and (min-width: 1024px) {
    .footer {
      padding-bottom: 80px; } }
  @media only screen and (min-width: 532px) {
    .footer {
      padding-top: 30px; } }
  @media only screen and (min-width: 1024px) {
    .footer {
      padding-top: 40px; } }
  @media only screen and (min-width: 375px) {
    .footer {
      font-size: 10px; } }
  @media only screen and (min-width: 532px) {
    .footer {
      font-size: 11px; } }
  @media only screen and (min-width: 768px) {
    .footer {
      font-size: 11px; } }
  @media only screen and (min-width: 1024px) {
    .footer {
      font-size: 12px; } }
  .footer.fixed {
    bottom: 0;
    position: fixed;
    width: 100%; }

.footer .copyright {
  padding-top: 10px;
  display: block; }
  @media only screen and (min-width: 532px) {
    .footer .copyright {
      padding-top: 15px; } }
  @media only screen and (min-width: 1024px) {
    .footer .copyright {
      padding-top: 20px; } }

.footer .dna-chain {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%; }

.footer .dna-chain-logo-mark {
  background-color: #fff;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: auto 60px;
  height: 60px;
  min-width: 100vw; }
  .webp .footer .dna-chain-logo-mark {
    background-image: url("../img/core/dna-chain-logo-mark.png.webp"); }
  .no-webp .footer .dna-chain-logo-mark {
    background-image: url("../img/core/dna-chain-logo-mark.png"); }
  @media only screen and (min-width: 320px) {
    .footer .dna-chain-logo-mark {
      background-size: auto 60px;
      min-width: 284px; } }

.footer .dna-chain-left,
.footer .dna-chain-right {
  background-repeat: repeat-x;
  background-size: auto 60px;
  height: 60px;
  width: 100%; }

.footer .dna-chain-left {
  background-position: center right; }
  .webp .footer .dna-chain-left {
    background-image: url("../img/core/dna-chain-left.png.webp"); }
  .no-webp .footer .dna-chain-left {
    background-image: url("../img/core/dna-chain-left.png"); }

.footer .dna-chain-right {
  background-position: center left; }
  .webp .footer .dna-chain-right {
    background-image: url("../img/core/dna-chain-right.png.webp"); }
  .no-webp .footer .dna-chain-right {
    background-image: url("../img/core/dna-chain-right.png"); }

.footer .link-list > .link-item {
  display: inline;
  margin-left: .25em;
  margin-right: .25em; }

.footer .link-list > .link-item > a {
  color: #616060;
  text-decoration: none;
  -webkit-transition: color .2s ease-out;
  transition: color .2s ease-out; }
  .footer .link-list > .link-item > a:active, .footer .link-list > .link-item > a:hover {
    color: #006dba; }

.checkbox-and-label,
.radio-and-label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative; }
  .block-label + .checkbox-and-label,
  .checkbox-and-label + .checkbox-and-label,
  .form-row + .checkbox-and-label,
  .radio-and-label + .checkbox-and-label, .block-label +
  .radio-and-label,
  .checkbox-and-label +
  .radio-and-label,
  .form-row +
  .radio-and-label,
  .radio-and-label +
  .radio-and-label {
    margin-top: 1em; }
  .checkbox-and-label .custom-checkbox,
  .checkbox-and-label .custom-radio,
  .radio-and-label .custom-checkbox,
  .radio-and-label .custom-radio {
    -webkit-transform: translate3d(0, 1px, 0);
            transform: translate3d(0, 1px, 0); }
    .checkbox-and-label .custom-checkbox.has-error .decoy,
    .checkbox-and-label .custom-radio.has-error .decoy,
    .radio-and-label .custom-checkbox.has-error .decoy,
    .radio-and-label .custom-radio.has-error .decoy {
      background-color: #ffe7e9;
      border-color: #ea3f3f; }
  .checkbox-and-label .decoy,
  .radio-and-label .decoy {
    background-color: #f2f4f5;
    border: 1px solid #ccc;
    display: inline-block;
    height: 16px;
    margin-right: 15px;
    position: relative;
    vertical-align: middle;
    width: 16px; }
  .checkbox-and-label .label,
  .radio-and-label .label {
    font-size: 13px;
    color: #616060;
    line-height: 1.5em; }
    @media only screen and (min-width: 375px) {
      .checkbox-and-label .label,
      .radio-and-label .label {
        font-size: 13px; } }
    @media only screen and (min-width: 532px) {
      .checkbox-and-label .label,
      .radio-and-label .label {
        font-size: 14px; } }
    @media only screen and (min-width: 768px) {
      .checkbox-and-label .label,
      .radio-and-label .label {
        font-size: 14px; } }
    @media only screen and (min-width: 1024px) {
      .checkbox-and-label .label,
      .radio-and-label .label {
        font-size: 15px; } }
    .checkbox-and-label .label.loading,
    .radio-and-label .label.loading {
      -webkit-animation: updating 2s ease-out infinite;
              animation: updating 2s ease-out infinite; }
    .checkbox-and-label .label .line-1,
    .checkbox-and-label .label .line-2,
    .radio-and-label .label .line-1,
    .radio-and-label .label .line-2 {
      display: block; }
    .checkbox-and-label .label .line-1,
    .radio-and-label .label .line-1 {
      font-size: 15px;
      color: #161a1d;
      font-weight: 700;
      letter-spacing: .07em;
      text-transform: uppercase; }
      @media only screen and (min-width: 375px) {
        .checkbox-and-label .label .line-1,
        .radio-and-label .label .line-1 {
          font-size: 15px; } }
      @media only screen and (min-width: 532px) {
        .checkbox-and-label .label .line-1,
        .radio-and-label .label .line-1 {
          font-size: 16px; } }
      @media only screen and (min-width: 768px) {
        .checkbox-and-label .label .line-1,
        .radio-and-label .label .line-1 {
          font-size: 16px; } }
      @media only screen and (min-width: 1024px) {
        .checkbox-and-label .label .line-1,
        .radio-and-label .label .line-1 {
          font-size: 16px; } }
    .checkbox-and-label .label .line-1 + .line-2,
    .radio-and-label .label .line-1 + .line-2 {
      margin-top: .25em; }

.input-checkbox {
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px; }
  .input-checkbox + .decoy {
    position: relative; }
    .input-checkbox + .decoy .check {
      display: block;
      fill: #006dba;
      height: 12px;
      left: 3px;
      position: absolute;
      top: 0;
      -webkit-transform: scale(0);
              transform: scale(0);
      -webkit-transition: -webkit-transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
      transition: -webkit-transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
      transition: transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
      transition: transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275), -webkit-transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
      width: 15px;
      z-index: 2; }
  .input-checkbox:checked + .decoy .check {
    -webkit-transform: scale(1);
            transform: scale(1); }
  .input-checkbox:focus + .decoy {
    -webkit-box-shadow: none;
            box-shadow: none;
    outline: 2px solid #00a7e0; }

.input-radio {
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px; }
  .input-radio + .decoy {
    border-radius: 50%; }
    .input-radio + .decoy::before {
      background-color: #006dba;
      border-radius: 50%;
      content: '';
      display: block;
      height: 8px;
      left: 3px;
      position: absolute;
      top: 3px;
      -webkit-transform: scale(0);
              transform: scale(0);
      -webkit-transition: -webkit-transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
      transition: -webkit-transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
      transition: transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
      transition: transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275), -webkit-transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
      width: 8px;
      z-index: 2; }
  .input-radio:checked + .decoy::before {
    -webkit-transform: scale(1);
            transform: scale(1); }
  .input-radio:focus + .decoy {
    -webkit-box-shadow: none;
            box-shadow: none;
    outline: 2px solid #00a7e0; }

.cvv-description {
  background-color: #fff;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: auto 85%;
  border: 1px solid #ccc;
  bottom: 0;
  height: 125px;
  opacity: 0;
  position: absolute;
  right: 0;
  -webkit-transform: translateY(110%);
          transform: translateY(110%);
  visibility: hidden;
  width: calc(100% - 2px);
  z-index: 1; }
  @media only screen and (min-width: 768px) {
    .cvv-description {
      background-size: 85% auto;
      height: 225px; } }
  .cvv-description::after {
    background: #fff;
    border-left: 1px solid #ccc;
    border-top: 1px solid #ccc;
    content: '';
    height: 10px;
    left: 10%;
    position: absolute;
    -webkit-transform: rotate(45deg) translateY(-9px);
            transform: rotate(45deg) translateY(-9px);
    width: 10px; }
  .cvv-description.show {
    opacity: 1;
    -webkit-transform: translateY(100%);
            transform: translateY(100%);
    -webkit-transition: opacity 0.5s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 0.5s cubic-bezier(0.19, 1, 0.22, 1);
    transition: opacity 0.5s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 0.5s cubic-bezier(0.19, 1, 0.22, 1);
    transition: opacity 0.5s cubic-bezier(0.19, 1, 0.22, 1), transform 0.5s cubic-bezier(0.19, 1, 0.22, 1);
    transition: opacity 0.5s cubic-bezier(0.19, 1, 0.22, 1), transform 0.5s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 0.5s cubic-bezier(0.19, 1, 0.22, 1);
    visibility: visible; }
  .webp .cvv-description.amex.en {
    background-image: url("../img/core/cvv-description-4-digit-en.jpg.webp"); }
  .no-webp .cvv-description.amex.en {
    background-image: url("../img/core/cvv-description-4-digit-en.jpg"); }
  .webp .cvv-description.amex.es {
    background-image: url("../img/core/cvv-description-4-digit-es.jpg.webp"); }
  .no-webp .cvv-description.amex.es {
    background-image: url("../img/core/cvv-description-4-digit-es.jpg"); }
  .webp .cvv-description.amex.fr {
    background-image: url("../img/core/cvv-description-4-digit-fr.jpg.webp"); }
  .no-webp .cvv-description.amex.fr {
    background-image: url("../img/core/cvv-description-4-digit-fr.jpg"); }
  .webp .cvv-description.amex.nl {
    background-image: url("../img/core/cvv-description-4-digit-nl.jpg.webp"); }
  .no-webp .cvv-description.amex.nl {
    background-image: url("../img/core/cvv-description-4-digit-nl.jpg"); }
  .webp .cvv-description.amex.zh {
    background-image: url("../img/core/cvv-description-4-digit-zh.jpg.webp"); }
  .no-webp .cvv-description.amex.zh {
    background-image: url("../img/core/cvv-description-4-digit-zh.jpg"); }
  .cvv-description.amex .text-3-digit {
    display: none; }
  .cvv-description.amex .text-4-digit {
    display: block; }
  .webp .cvv-description.en, .webp .cvv-description.discover.en, .webp .cvv-description.mastercard.en, .webp .cvv-description.visa.en {
    background-image: url("../img/core/cvv-description-3-digit-en.jpg.webp"); }
  .no-webp .cvv-description.en, .no-webp .cvv-description.discover.en, .no-webp .cvv-description.mastercard.en, .no-webp .cvv-description.visa.en {
    background-image: url("../img/core/cvv-description-3-digit-en.jpg"); }
  .webp .cvv-description.es, .webp .cvv-description.discover.es, .webp .cvv-description.mastercard.es, .webp .cvv-description.visa.es {
    background-image: url("../img/core/cvv-description-3-digit-es.jpg.webp"); }
  .no-webp .cvv-description.es, .no-webp .cvv-description.discover.es, .no-webp .cvv-description.mastercard.es, .no-webp .cvv-description.visa.es {
    background-image: url("../img/core/cvv-description-3-digit-es.jpg"); }
  .webp .cvv-description.fr, .webp .cvv-description.discover.fr, .webp .cvv-description.mastercard.fr, .webp .cvv-description.visa.fr {
    background-image: url("../img/core/cvv-description-3-digit-fr.jpg.webp"); }
  .no-webp .cvv-description.fr, .no-webp .cvv-description.discover.fr, .no-webp .cvv-description.mastercard.fr, .no-webp .cvv-description.visa.fr {
    background-image: url("../img/core/cvv-description-3-digit-fr.jpg"); }
  .webp .cvv-description.nl, .webp .cvv-description.discover.nl, .webp .cvv-description.mastercard.nl, .webp .cvv-description.visa.nl {
    background-image: url("../img/core/cvv-description-3-digit-nl.jpg.webp"); }
  .no-webp .cvv-description.nl, .no-webp .cvv-description.discover.nl, .no-webp .cvv-description.mastercard.nl, .no-webp .cvv-description.visa.nl {
    background-image: url("../img/core/cvv-description-3-digit-nl.jpg"); }
  .webp .cvv-description.zh, .webp .cvv-description.discover.zh, .webp .cvv-description.mastercard.zh, .webp .cvv-description.visa.zh {
    background-image: url("../img/core/cvv-description-3-digit-zh.jpg.webp"); }
  .no-webp .cvv-description.zh, .no-webp .cvv-description.discover.zh, .no-webp .cvv-description.mastercard.zh, .no-webp .cvv-description.visa.zh {
    background-image: url("../img/core/cvv-description-3-digit-zh.jpg"); }
  .cvv-description .text-4-digit {
    display: none; }

.cvv-hint {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-position: 16px center;
  background-repeat: no-repeat;
  color: #00a7e0;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 10px;
  font-weight: 700;
  height: 100%;
  left: 0;
  letter-spacing: .075em;
  padding-left: 70px;
  position: absolute;
  text-transform: uppercase;
  top: 0;
  -webkit-transition: color .2s ease-out;
  transition: color .2s ease-out;
  width: 100%; }
  .webp .cvv-hint {
    background-image: url("../img/core/cvv-hint-3-digit.png.webp"); }
  .no-webp .cvv-hint {
    background-image: url("../img/core/cvv-hint-3-digit.png"); }
  .cvv-hint:hover, .cvv-hint:active {
    color: #006dba; }
  .webp .cvv-hint.amex {
    background-image: url("../img/core/cvv-hint-4-digit.png.webp"); }
  .no-webp .cvv-hint.amex {
    background-image: url("../img/core/cvv-hint-4-digit.png"); }
  .webp .cvv-hint.discover, .webp .cvv-hint.mastercard, .webp .cvv-hint.visa {
    background-image: url("../img/core/cvv-hint-3-digit.png.webp"); }
  .no-webp .cvv-hint.discover, .no-webp .cvv-hint.mastercard, .no-webp .cvv-hint.visa {
    background-image: url("../img/core/cvv-hint-3-digit.png"); }
  .cvv-hint span {
    cursor: pointer; }

.credit-card-icon {
  display: inline-block;
  position: relative; }
  .credit-card-icon::after {
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain;
    bottom: 0;
    content: '';
    height: 20px;
    margin: auto;
    position: absolute;
    right: 0;
    top: 0;
    -webkit-transform: translateX(calc(100% + 10px));
            transform: translateX(calc(100% + 10px));
    width: 30px; }
    @media only screen and (min-width: 768px) and (max-width: 895px) {
      .credit-card-icon::after {
        display: none; } }
  .webp .credit-card-icon.amex::after {
    background-image: url("../img/core/cc-amex.png.webp"); }
  .no-webp .credit-card-icon.amex::after {
    background-image: url("../img/core/cc-amex.png"); }
  .webp .credit-card-icon.discover::after {
    background-image: url("../img/core/cc-discover.png.webp"); }
  .no-webp .credit-card-icon.discover::after {
    background-image: url("../img/core/cc-discover.png"); }
  .webp .credit-card-icon.mastercard::after {
    background-image: url("../img/core/cc-mastercard.png.webp"); }
  .no-webp .credit-card-icon.mastercard::after {
    background-image: url("../img/core/cc-mastercard.png"); }
  .webp .credit-card-icon.visa::after {
    background-image: url("../img/core/cc-visa.png.webp"); }
  .no-webp .credit-card-icon.visa::after {
    background-image: url("../img/core/cc-visa.png"); }

.credit-card-thumb {
  background-position: right center;
  background-repeat: no-repeat;
  background-size: auto 30px;
  height: 100%;
  position: absolute;
  right: 16px;
  top: 0;
  width: 50px; }
  .webp .credit-card-thumb.amex {
    background-image: url("../img/core/cc-amex.png.webp"); }
  .no-webp .credit-card-thumb.amex {
    background-image: url("../img/core/cc-amex.png"); }
  .webp .credit-card-thumb.discover {
    background-image: url("../img/core/cc-discover.png.webp"); }
  .no-webp .credit-card-thumb.discover {
    background-image: url("../img/core/cc-discover.png"); }
  .webp .credit-card-thumb.mastercard {
    background-image: url("../img/core/cc-mastercard.png.webp"); }
  .no-webp .credit-card-thumb.mastercard {
    background-image: url("../img/core/cc-mastercard.png"); }
  .webp .credit-card-thumb.visa {
    background-image: url("../img/core/cc-visa.png.webp"); }
  .no-webp .credit-card-thumb.visa {
    background-image: url("../img/core/cc-visa.png"); }
  .credit-card-thumb .form-column.has-error .credit-card-thumb .form-column {
    background-image: none; }

input[data-behavior~='disable-focus'],
select[data-behavior~='disable-focus'],
textarea[data-behavior~='disable-focus'] {
  pointer-events: none; }

.error-list {
  display: none; }
  .error-list:not(:empty):not(.hide) {
    background-color: #ea3f3f;
    border-radius: 6px;
    color: #fff;
    display: block;
    margin-bottom: 1em;
    padding: 16px; }
    .error-list:not(:empty):not(.hide).show {
      display: block; }
    .error-list:not(:empty):not(.hide) a {
      color: #fff;
      text-decoration: underline; }
    .error-list:not(:empty):not(.hide) .error-list-item {
      line-height: 1.3em;
      padding-bottom: .5em; }
      .error-list:not(:empty):not(.hide) .error-list-item:last-child {
        padding-bottom: 0; }

.form-module .success-list {
  display: none; }
  .form-module .success-list:not(:empty):not(.hide) {
    background-color: #3cb878;
    border-radius: 6px;
    color: #fff;
    display: block;
    margin-bottom: 1em;
    padding: 16px; }
    .form-module .success-list:not(:empty):not(.hide).show {
      display: block; }
    .form-module .success-list:not(:empty):not(.hide) a {
      color: #fff;
      text-decoration: underline; }
    .form-module .success-list:not(:empty):not(.hide) .successs-list-item {
      line-height: 1.3em;
      padding-bottom: .5em; }
      .form-module .success-list:not(:empty):not(.hide) .successs-list-item:last-child {
        padding-bottom: 0; }

.form-module {
  position: relative; }
  .form-module:last-child {
    margin-bottom: 0; }
  .form-module:not(:empty) {
    padding-bottom: 50px;
    padding-top: 10px; }
  .form-module.loading > [data-behavior='loader'] {
    opacity: 1;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    -webkit-transition: opacity 0.2s ease-out, -webkit-transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transition: opacity 0.2s ease-out, -webkit-transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transition: opacity 0.2s ease-out, transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transition: opacity 0.2s ease-out, transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94); }
    .form-module.loading > [data-behavior='loader'] .text {
      display: inline; }
  .form-module.loading > *:not([data-behavior='loader']) {
    opacity: .35;
    pointer-events: none;
    -webkit-transition-delay: 0;
            transition-delay: 0; }
  .form-module > [data-behavior='loader'] {
    left: 50%;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(-50%, 250%);
            transform: translate(-50%, 250%);
    -webkit-transition: opacity 0.2s ease-out, -webkit-transform 0.4s cubic-bezier(0.55, 0.085, 0.68, 0.53);
    transition: opacity 0.2s ease-out, -webkit-transform 0.4s cubic-bezier(0.55, 0.085, 0.68, 0.53);
    transition: opacity 0.2s ease-out, transform 0.4s cubic-bezier(0.55, 0.085, 0.68, 0.53);
    transition: opacity 0.2s ease-out, transform 0.4s cubic-bezier(0.55, 0.085, 0.68, 0.53), -webkit-transform 0.4s cubic-bezier(0.55, 0.085, 0.68, 0.53); }
    .form-module > [data-behavior='loader'] .text {
      display: none; }
  .form-module > *:not([data-behavior='loader']) {
    opacity: 1;
    -webkit-transition: opacity .2s ease-out .4s;
    transition: opacity .2s ease-out .4s; }
  .form-module dd:last-child {
    margin-bottom: 0; }

.form-module--conditional {
  opacity: .5;
  -webkit-transition: opacity .2s ease-out;
  transition: opacity .2s ease-out; }
  .form-module--conditional .error-list {
    display: none; }
  .form-module--conditional.checked {
    opacity: 1; }
    .form-module--conditional.checked .error-list:not(:empty) {
      display: block; }

.form-section {
  margin-bottom: 30px; }
  .form-section:last-child {
    margin-bottom: 0; }

.form-container {
  margin-bottom: 40px; }
  @media only screen and (min-width: 532px) {
    .form-container {
      margin-bottom: 60px; } }
  @media only screen and (min-width: 1024px) {
    .form-container {
      margin-bottom: 80px; } }
  .form-container .border {
    background-color: #fff;
    border: 0 solid #ccc;
    z-index: 2; }
    .form-container .border--transparent {
      border-color: transparent; }
    .form-container .border.top {
      border-top-width: 1px; }
    .form-container .border.right {
      border-right-width: 1px; }
    .form-container .border.bottom {
      border-bottom-width: 1px; }
    .form-container .border.left {
      border-left-width: 1px; }
  .form-container .copy {
    color: #616060;
    font-size: 16px;
    line-height: 1.5em;
    margin-bottom: 30px;
    margin-top: 10px; }
  .form-container .discretionary {
    font-size: 10px;
    color: #616060;
    line-height: 1.5em;
    margin-top: 1.9em; }
    @media only screen and (min-width: 375px) {
      .form-container .discretionary {
        font-size: 10px; } }
    @media only screen and (min-width: 532px) {
      .form-container .discretionary {
        font-size: 11px; } }
    @media only screen and (min-width: 768px) {
      .form-container .discretionary {
        font-size: 11px; } }
    @media only screen and (min-width: 1024px) {
      .form-container .discretionary {
        font-size: 12px; } }
  .form-container .help-block {
    display: none; }
  .form-container .intro-paragraph {
    color: #5a6066;
    font-size: 13px;
    line-height: 1.5em;
    margin-bottom: 20px; }
  .form-container .conditional.hide {
    display: none; }

.form-row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
  position: relative; }
  .form-row.focus {
    z-index: 2; }
  .form-row.margin-top {
    margin-top: 20px; }
  .form-row.read-only,
  .form-row.read-only .border {
    background-color: #f2f4f5;
    border-color: #e5e5e5; }
  .form-row .form-column {
    overflow: hidden;
    position: relative;
    z-index: 1; }
    .form-row .form-column--flex {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; }
      .form-row .form-column--flex * {
        -webkit-box-flex: 0;
            -ms-flex: 0 0 auto;
                flex: 0 0 auto; }
      .form-row .form-column--flex .flexible {
        -webkit-box-flex: 1;
            -ms-flex: 1 1 auto;
                flex: 1 1 auto; }
    .form-row .form-column--overflow {
      overflow: visible; }
    .form-row .form-column.focus {
      border-color: transparent;
      -webkit-box-shadow: 0 0 0 1px #006dba;
              box-shadow: 0 0 0 1px #006dba;
      z-index: 3; }
    .form-row .form-column.has-error {
      background-color: #ffe7e9; }

.label-float {
  color: #006dba;
  font-size: 11px;
  font-weight: 700;
  left: 16px;
  letter-spacing: .05em;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  text-transform: uppercase;
  top: 0;
  -webkit-transform: translateY(18px);
          transform: translateY(18px);
  z-index: 1; }
  .label-float.is-required::after {
    content: ' *'; }
  .label-float.is-required ~ input::-webkit-input-placeholder::after {
    content: ' *'; }
  .label-float.is-required ~ input::-moz-placeholder::after {
    content: ' *'; }
  .label-float.is-required ~ input::-ms-input-placeholder::after {
    content: ' *'; }
  .label-float.is-required ~ input::placeholder::after {
    content: ' *'; }
  .form-column.has-value .label-float {
    opacity: 1;
    -webkit-transform: translateY(13px);
            transform: translateY(13px);
    -webkit-transition: opacity .2s ease-out, -webkit-transform .2s ease-out;
    transition: opacity .2s ease-out, -webkit-transform .2s ease-out;
    transition: opacity .2s ease-out, transform .2s ease-out;
    transition: opacity .2s ease-out, transform .2s ease-out, -webkit-transform .2s ease-out; }

.block-label {
  border: 1px solid #ccc;
  line-height: 1.5em;
  margin-bottom: 0;
  padding-bottom: 16px;
  padding-left: 16px;
  padding-right: 16px;
  padding-top: 16px; }
  .radio-and-label + .block-label {
    margin-top: 10px; }
  .block-label .label {
    cursor: pointer;
    display: inline-block;
    width: 100%; }
  .block-label .custom-checkbox {
    margin-top: 20px; }

.shipping-cost {
  display: inline;
  float: right;
  font-weight: 700; }
  .shipping-cost .free-shipping {
    text-transform: uppercase; }

.custom-select {
  cursor: pointer;
  height: 58px;
  position: relative;
  width: 100%; }
  .custom-select--filled {
    background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#f2f4f5));
    background-image: linear-gradient(to bottom, #fff, #f2f4f5);
    border: 1px solid #ccc; }
  .custom-select:hover .select-chevron {
    opacity: 1; }
  .column > .custom-select {
    height: 60px; }
  .custom-select.has-error {
    background-color: #ffe7e9; }
  .custom-select select {
    -webkit-appearance: menulist-button;
    cursor: pointer;
    display: block;
    height: 100%;
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 2; }
    .ios .custom-select select {
      font-size: 16px; }
  .custom-select .decoy {
    color: #939191;
    height: 58px;
    line-height: 58px;
    padding: 0 40px 0 16px;
    position: relative; }
    .form-column.has-value .custom-select .decoy .text {
      color: #161a1d;
      -webkit-transform: translate3d(0, 10px, 0);
              transform: translate3d(0, 10px, 0); }
    .custom-select .decoy .text {
      overflow: hidden;
      text-overflow: ellipsis;
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
      -webkit-transition: -webkit-transform .2s ease-out;
      transition: -webkit-transform .2s ease-out;
      transition: transform .2s ease-out;
      transition: transform .2s ease-out, -webkit-transform .2s ease-out;
      white-space: nowrap; }
  .custom-select .select-chevron {
    display: block;
    height: 7px;
    margin-top: -3.5px;
    opacity: .5;
    position: absolute;
    right: 1em;
    top: 50%;
    -webkit-transition: opacity 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955);
    transition: opacity 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955);
    width: 11px;
    z-index: 1; }

.custom-select--tight {
  height: 40px; }
  .custom-select--tight .decoy {
    line-height: 40px;
    padding-bottom: 0;
    padding-top: 0; }

.select {
  background-color: #fff;
  border-bottom: 1px solid #777;
  border-left: 1px solid #b3b3b3;
  border-right: 1px solid #777;
  border-top: 1px solid #ccc;
  color: #939191;
  font-family: "Proxima Nova W01", "Helvetica Neue", Calibri, Helvetica, Arial, sans-serif;
  font-size: 1rem;
  padding: 1px 3px; }

.spinner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 44px;
  width: 80px; }
  .spinner input,
  .spinner .minus,
  .spinner .plus {
    background-color: #f2f4f5;
    border: 1px solid #d9d9d9;
    height: 44px;
    line-height: 40px;
    text-align: center; }
  .spinner input {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    font-family: "Proxima Nova W01", "Helvetica Neue", Calibri, Helvetica, Arial, sans-serif;
    margin-left: 0;
    margin-right: 0;
    min-width: 30px;
    padding-bottom: 0;
    padding-top: 0;
    -webkit-transition: background-color .2s ease-out;
    transition: background-color .2s ease-out; }
    .spinner input:focus, .spinner input:focus:hover {
      background-color: #fff;
      border-color: #00a7e0;
      outline: none; }
    .spinner input:hover {
      background-color: #f2f4f5; }
    .spinner input[type='number'] {
      -webkit-appearance: none;
      -moz-appearance: textfield;
      border-radius: 0; }
      .spinner input[type='number']::-webkit-inner-spin-button, .spinner input[type='number']::-webkit-outer-spin-button {
        -webkit-appearance: none;
        margin: 0; }
  .spinner .minus,
  .spinner .plus {
    cursor: pointer;
    -ms-flex-preferred-size: 22px;
        flex-basis: 22px;
    position: relative;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none; }
    .spinner .minus::after, .spinner .minus::before,
    .spinner .plus::after,
    .spinner .plus::before {
      background-color: #616060;
      bottom: 0;
      content: '';
      display: block;
      left: 0;
      margin: auto;
      position: absolute;
      right: 0;
      top: 0; }
    .spinner .minus:hover,
    .spinner .plus:hover {
      background-color: #ccc; }
    .spinner .minus.disabled,
    .spinner .plus.disabled {
      cursor: not-allowed;
      opacity: .5; }
      .spinner .minus.disabled:hover,
      .spinner .plus.disabled:hover {
        background-color: #f2f4f5; }
  .spinner .minus {
    border-right-width: 0; }
    .spinner .minus::after {
      height: 1px;
      width: 5px; }
    .spinner .minus::before {
      display: none; }
  .spinner .plus {
    border-left-width: 0; }
    .spinner .plus::after {
      height: 1px;
      width: 7px; }
    .spinner .plus::before {
      height: 7px;
      width: 1px; }

.spinner--bright input,
.spinner--bright .minus,
.spinner--bright .plus {
  background-color: #fff; }

.spinner--l {
  height: 50px;
  min-width: 10px;
  width: 100px; }
  .spinner--l input,
  .spinner--l .minus,
  .spinner--l .plus {
    color: #2e3134;
    font-size: 16px;
    height: 50px;
    line-height: 50px; }
  .spinner--l input {
    min-width: 40px; }
  .spinner--l .minus:hover,
  .spinner--l .plus:hover {
    background-color: #f2f4f5; }

.spinner--s {
  height: 30px;
  min-width: 10px;
  width: 4.5em; }
  .spinner--s input,
  .spinner--s .minus,
  .spinner--s .plus {
    height: 30px;
    line-height: 30px; }
  .spinner--s input {
    min-width: 25px; }

.hide-webkit-buttons::-webkit-auto-fill-button, .hide-webkit-buttons::-webkit-contacts-auto-fill-button {
  display: none !important; }

.input-text {
  background-color: transparent;
  border: 0;
  border-radius: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  color: #2e3134;
  font-family: "Proxima Nova W01", "Helvetica Neue", Calibri, Helvetica, Arial, sans-serif;
  font-size: 16px;
  height: 28px;
  margin-bottom: 10px;
  margin-top: 10px;
  padding: 0 16px;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  -webkit-transition: -webkit-transform .2s ease-out;
  transition: -webkit-transform .2s ease-out;
  transition: transform .2s ease-out;
  transition: transform .2s ease-out, -webkit-transform .2s ease-out;
  width: 100%; }
  .input-text:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 1000px #fff inset;
    -webkit-text-fill-color: inherit !important;
    border: 0;
    -webkit-transition: background-color 5000s ease-in-out 0s;
    transition: background-color 5000s ease-in-out 0s; }
  .form-column.has-value .input-text {
    -webkit-transform: translate3d(0, 10px, 0);
            transform: translate3d(0, 10px, 0); }
    .form-column.has-value .input-text::-webkit-contacts-auto-fill-button {
      -webkit-transform: translate3d(0, -10px, 0);
              transform: translate3d(0, -10px, 0); }
    .form-column.has-value .input-text::-webkit-auto-fill-button, .form-column.has-value .input-text::-webkit-credentials-auto-fill-button {
      -webkit-transform: translate3d(0, -10px, 0);
              transform: translate3d(0, -10px, 0); }
  .input-text:focus {
    color: #161a1d;
    outline: none; }
  .input-text::-webkit-input-placeholder {
    color: #939191; }
  .input-text::-moz-placeholder {
    color: #939191; }
  .input-text::-ms-input-placeholder {
    color: #939191; }
  .input-text::placeholder {
    color: #939191; }
  .input-text::-moz-placeholder {
    opacity: 1; }
  .input-text::-webkit-autofill {
    -webkit-box-shadow: 0 0 0 30px white inset;
    height: 39px;
    position: relative;
    top: 9px; }
  .input-text::-ms-clear {
    display: none; }
  .input-text--tight {
    padding-left: 0;
    padding-right: 0; }
  .input-text--tight-left {
    padding-left: 0; }
  .input-text--tight-right {
    padding-right: 0; }
  .input-text.hide {
    display: none; }

.input-text-static {
  color: #939191;
  font-size: 16px;
  height: 38px;
  line-height: 38px;
  margin-bottom: 10px;
  margin-top: 10px;
  pointer-events: none;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0); }
  .form-column.has-value .input-text-static {
    -webkit-transform: translate3d(0, 10px, 0);
            transform: translate3d(0, 10px, 0); }
  .edge [data-behavior~='auto-size'] + .input-text-static,
  .ios [data-behavior~='auto-size'] + .input-text-static {
    -webkit-transform: translate3d(-2px, 0, 0);
            transform: translate3d(-2px, 0, 0); }
  .edge .form-column.has-value [data-behavior~='auto-size'] + .input-text-static,
  .ios .form-column.has-value [data-behavior~='auto-size'] + .input-text-static {
    -webkit-transform: translate3d(-2px, 10px, 0);
            transform: translate3d(-2px, 10px, 0); }
  .input-text-static.has-value {
    color: #2e3134; }

.input-text--textarea {
  height: 116px;
  line-height: 1.5em;
  padding-bottom: 20px;
  padding-left: 16px;
  padding-right: 16px;
  padding-top: 20px;
  resize: none; }

.password-toggle {
  -ms-flex-item-align: center;
      align-self: center;
  background: none;
  border: 0;
  color: #006dba;
  cursor: pointer;
  line-height: 32px;
  margin-right: 16px;
  text-decoration: none;
  white-space: nowrap; }
  .password-toggle:hover {
    background-color: transparent; }
  .password-toggle:active {
    -webkit-box-shadow: none;
            box-shadow: none;
    top: 50%; }

.header-bar {
  background-color: #161a1d;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 40px;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  letter-spacing: 0.1em;
  max-height: 40px;
  width: 100%; }
  .header-bar .header-copy {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 12px;
    -ms-flex-pack: distribute;
        justify-content: space-around;
    padding-left: 20px;
    padding-right: 20px;
    position: relative;
    text-transform: uppercase; }

.header-bar .avatar {
  height: 40px;
  width: 40px; }

.header-column {
  font-size: 10px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-transform: uppercase;
  z-index: 1; }
  @media only screen and (min-width: 375px) {
    .header-column {
      font-size: 10px; } }
  @media only screen and (min-width: 532px) {
    .header-column {
      font-size: 11px; } }
  @media only screen and (min-width: 768px) {
    .header-column {
      font-size: 11px; } }
  @media only screen and (min-width: 1024px) {
    .header-column {
      font-size: 12px; } }
  .header-column[data-behavior], .header-column[href] {
    text-decoration: none;
    -webkit-transition: background-color .2s ease-out;
    transition: background-color .2s ease-out; }
    .header-column[data-behavior]:hover, .header-column[data-behavior]:active, .header-column[href]:hover, .header-column[href]:active {
      background-color: #36d2b6; }
  .header-column.header-main {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1; }

.header-column .copy {
  color: #fff;
  white-space: nowrap; }

.header-column.border-left {
  border-left: 1px solid #5a6066; }

.header-column.border-right {
  border-right: 1px solid #5a6066; }

.header-column.cart {
  border-left: 1px solid #5a6066;
  font-weight: 700;
  padding-right: 1em; }
  @media only screen and (min-width: 768px) {
    .header-column.cart {
      padding-right: 1.5em; } }
  .header-column.cart:hover .total {
    background-color: #fff;
    color: #00a7e0; }
  .header-column.cart .copy {
    padding-left: 1.5em; }
    @media only screen and (min-width: 0) and (max-width: 767px) {
      .header-column.cart .copy {
        display: none; } }
  .header-column.cart .total {
    background-color: #00a7e0;
    border-radius: 6px;
    color: #fff;
    letter-spacing: 0;
    padding: .4em .7em;
    -webkit-transition: background-color .2s ease-out, color .2s ease-out;
    transition: background-color .2s ease-out, color .2s ease-out; }
  .header-column.cart--error .total {
    background-color: #ea3f3f; }

@media only screen and (min-width: 768px) {
  .header-column.account {
    padding-right: 5px; } }

.header-column.account .copy {
  padding-left: 1.2em; }
  @media only screen and (min-width: 0) and (max-width: 767px) {
    .header-column.account .copy {
      display: none; } }

.header-column .flag {
  margin: 0 15px;
  width: 16px; }

.header-column.sponsor .copy {
  padding: 0 .92em; }
  @media only screen and (min-width: 0) and (max-width: 767px) {
    .header-column.sponsor .copy {
      display: none; } }

* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

html.no-scroll {
  overflow: hidden; }
  html.no-scroll body {
    overflow: hidden; }

label[for]:not([for='']) {
  cursor: pointer; }

.app-download-link-list .app-download-link {
  display: inline-block;
  margin: 0 5px;
  overflow: hidden;
  width: 175px; }
  @media only screen and (min-width: 0) and (max-width: 531px) {
    .app-download-link-list .app-download-link:nth-child(2n+1) {
      margin-bottom: 10px; } }
  .app-download-link-list .app-download-link .img {
    height: 54px;
    width: 175px; }
  .app-download-link-list .app-download-link .link {
    display: inline-block; }

.avatar {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #f2f4f5;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 50px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  overflow: hidden;
  position: relative;
  width: 50px; }
  .avatar:not(.avatar--full) {
    border-radius: 50%; }

.avatar .image {
  background-repeat: no-repeat;
  background-size: cover;
  bottom: 0;
  height: 100%;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
  z-index: 2; }

.avatar .initials {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .05em;
  margin-right: -.025em;
  text-transform: uppercase;
  z-index: 1; }
  .avatar .initials,
  a .avatar .initials {
    color: #616060; }

.content-wrapper {
  padding-left: 20px;
  padding-right: 20px;
  display: block;
  margin-left: auto;
  margin-right: auto;
  max-width: 1280px; }
  @media only screen and (min-width: 532px) {
    .content-wrapper {
      padding-left: 30px;
      padding-right: 30px; } }
  @media only screen and (min-width: 1024px) {
    .content-wrapper {
      padding-left: 40px;
      padding-right: 40px; } }

@media only screen and (min-width: 1408px) {
  .content-wrapper--fluid {
    max-width: calc(100vw - (15px * 4 * 2)); } }

.content-wrapper--full-bleed {
  padding-left: 0;
  padding-right: 0; }

.content-wrapper--narrow {
  max-width: 896px; }

.hide {
  display: none; }

.hide-by-default:not(.show) {
  display: none; }

.hr-inline {
  border: 0;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  height: 2px;
  margin-left: 10px;
  position: relative; }
  .hr-inline::after {
    background-color: #d9d9d9;
    content: '';
    height: 1px;
    left: 0;
    position: absolute;
    top: calc(50% - 1px);
    width: 100%; }
    @media print {
      .hr-inline::after {
        background-color: transparent;
        border-top: 1px solid #000;
        top: calc(50% - 3px); } }

.payment-note {
  background-color: #f2f4f5;
  color: #616060;
  font-size: 12px;
  margin-top: 10px;
  padding: 20px 30px; }

.layout-two-column {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }
  @media only screen and (min-width: 896px) {
    .layout-two-column {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between; } }
  .layout-two-column--center {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .layout-two-column--wrap {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .layout-two-column--wrap .layout-column {
      margin-bottom: 20px; }
      @media only screen and (min-width: 532px) {
        .layout-two-column--wrap .layout-column {
          margin-bottom: 30px; } }
      @media only screen and (min-width: 1024px) {
        .layout-two-column--wrap .layout-column {
          margin-bottom: 40px; } }
  .layout-two-column .layout-column:only-child {
    width: 100%; }
  @media only screen and (min-width: 896px) {
    .layout-two-column .layout-column {
      width: calc(50% - 25px); } }
  @media only screen and (min-width: 896px) {
    .layout-two-column .layout-column--margin-l {
      margin-bottom: 0;
      width: calc(50% - 50px); } }

@media only screen and (min-width: 1024px) {
  .layout-two-column--weighted .layout-column:first-child {
    padding-left: 10%; } }

.offscreen {
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px; }

.pagination-nav {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 40px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .pagination-nav .link {
    background-color: rgba(0, 0, 0, 0.35);
    border: 1px solid transparent;
    border-radius: 50%;
    cursor: pointer;
    display: inline-block;
    height: 8px;
    margin-left: 4px;
    margin-right: 4px;
    -webkit-transition: background-color .2s ease-out, border-color .2s ease-out;
    transition: background-color .2s ease-out, border-color .2s ease-out;
    width: 8px; }
    .pagination-nav .link.active {
      -webkit-animation: pulse .2s ease-out 1;
              animation: pulse .2s ease-out 1;
      background-color: #000;
      border-color: #000; }
    .pagination-nav .link .text {
      clip: rect(1px, 1px, 1px, 1px);
      height: 1px;
      overflow: hidden;
      position: absolute;
      white-space: nowrap;
      width: 1px; }

.pagination-nav--reversed .link {
  background-color: rgba(255, 255, 255, 0.35); }
  .pagination-nav--reversed .link.active {
    background-color: #fff;
    border-color: #fff; }

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

[v-cloak] {
  display: none !important; }

.ellipsis-loader .dot {
  -webkit-animation-duration: 1.5s;
          animation-duration: 1.5s;
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
  -webkit-animation-name: ellipsis-loader;
          animation-name: ellipsis-loader;
  -webkit-animation-timing-function: ease(out-quad);
          animation-timing-function: ease(out-quad);
  background-color: #00a7e0;
  border-radius: 50%;
  display: inline-block;
  height: 6px;
  margin-left: 1px;
  margin-right: 1px;
  opacity: 0;
  width: 6px; }
  .ellipsis-loader .dot:nth-child(2) {
    -webkit-animation-delay: 0.3s;
            animation-delay: 0.3s; }
  .ellipsis-loader .dot:nth-child(3) {
    -webkit-animation-delay: 0.6s;
            animation-delay: 0.6s; }

.ellipsis-loader .text {
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px; }

.ellipsis-loader--reversed .dot {
  background-color: #fff; }

@-webkit-keyframes ellipsis-loader {
  0% {
    opacity: .5;
    -webkit-transform: scale(0.5);
            transform: scale(0.5); }
  35% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1); }
  100% {
    opacity: 0;
    -webkit-transform: scale(0);
            transform: scale(0); } }

@keyframes ellipsis-loader {
  0% {
    opacity: .5;
    -webkit-transform: scale(0.5);
            transform: scale(0.5); }
  35% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1); }
  100% {
    opacity: 0;
    -webkit-transform: scale(0);
            transform: scale(0); } }

.modal {
  -webkit-overflow-scrolling: touch;
  background-color: #fff;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  left: 0;
  margin: auto;
  max-height: 100%;
  max-width: 500px;
  opacity: 0;
  overflow-y: auto;
  padding-bottom: 40px;
  padding-left: 20px;
  padding-right: 20px;
  padding-top: 20px;
  position: fixed;
  right: 0;
  top: 0;
  -webkit-transform: translateY(30px);
          transform: translateY(30px);
  -webkit-transition: opacity .2s ease-out, visibility 0s .2s, -webkit-transform .2s ease-out;
  transition: opacity .2s ease-out, visibility 0s .2s, -webkit-transform .2s ease-out;
  transition: opacity .2s ease-out, transform .2s ease-out, visibility 0s .2s;
  transition: opacity .2s ease-out, transform .2s ease-out, visibility 0s .2s, -webkit-transform .2s ease-out;
  visibility: hidden;
  width: 100%;
  z-index: 30; }
  @media only screen and (min-width: 768px) {
    .modal {
      max-height: 95vh;
      max-width: 700px;
      top: 2.5vh; } }
  @media only screen and (min-width: 768px) {
    .modal {
      padding-top: 40px; } }
  .modal.show {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
    -webkit-transition: visibility 0s, opacity .2s ease-out, -webkit-transform .2s ease-out;
    transition: visibility 0s, opacity .2s ease-out, -webkit-transform .2s ease-out;
    transition: visibility 0s, opacity .2s ease-out, transform .2s ease-out;
    transition: visibility 0s, opacity .2s ease-out, transform .2s ease-out, -webkit-transform .2s ease-out;
    visibility: visible; }
  .modal .heading {
    font-size: 21px;
    color: #00a7e0;
    font-weight: 300;
    line-height: 1.5em;
    margin-bottom: 40px;
    padding-left: 20px;
    padding-right: 20px; }
    @media only screen and (min-width: 375px) {
      .modal .heading {
        font-size: 22px; } }
    @media only screen and (min-width: 532px) {
      .modal .heading {
        font-size: 24px; } }
    @media only screen and (min-width: 768px) {
      .modal .heading {
        font-size: 28px; } }
    @media only screen and (min-width: 1024px) {
      .modal .heading {
        font-size: 32px; } }
    @media only screen and (min-width: 532px) {
      .modal .heading {
        text-align: center; } }

.modal .form-container {
  margin-bottom: 0; }

.modal-column {
  margin-bottom: 40px; }
  @media only screen and (min-width: 768px) {
    .modal-column {
      -ms-flex-preferred-size: calc(50% - 10px);
          flex-basis: calc(50% - 10px);
      margin-bottom: 0; } }
  .modal-column.checked .mirror-checked {
    -webkit-animation: flash .2s ease-out;
            animation: flash .2s ease-out;
    display: block;
    opacity: 1;
    -webkit-transition-duration: .1s;
            transition-duration: .1s;
    -webkit-transition-timing-function: ease-in;
            transition-timing-function: ease-in; }

@media only screen and (min-width: 768px) {
  .modal-column--full {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%; } }

@media only screen and (min-width: 768px) {
  .modal-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 40px; } }

.modal-row .form-module {
  padding-bottom: 0; }

.modal-row .hide-if-unchecked {
  display: none; }

.modal-row .mirror-checked {
  opacity: .35;
  -webkit-transition: opacity .2s ease-out;
  transition: opacity .2s ease-out; }

.overlay {
  background-color: #000;
  height: 100%;
  left: 0;
  opacity: 0;
  overflow-x: hidden;
  position: fixed;
  top: 0;
  -webkit-transition: .2s opacity ease-out, 0s visibility .2s;
  transition: .2s opacity ease-out, 0s visibility .2s;
  visibility: hidden;
  width: 100%;
  z-index: 20; }
  .overlay.invisible {
    background-color: transparent; }
  .overlay.light {
    background-color: #fff; }
    .overlay.light.show {
      opacity: .95; }
  .overlay.show {
    opacity: .8;
    -webkit-transition: 0s visibility, .2s opacity ease-out;
    transition: 0s visibility, .2s opacity ease-out;
    visibility: visible; }

[data-behavior~='blur-behind-overlay'] {
  -webkit-transition: -webkit-filter .2s ease-out;
  transition: -webkit-filter .2s ease-out;
  transition: filter .2s ease-out;
  transition: filter .2s ease-out, -webkit-filter .2s ease-out; }
  [data-behavior~='blur-behind-overlay'].blurred {
    -webkit-filter: blur(5px);
            filter: blur(5px); }

.processing-modal {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100%;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  left: 0;
  opacity: 0;
  padding-left: 20px;
  padding-right: 20px;
  position: fixed;
  top: 0;
  -webkit-transform: scale(2);
          transform: scale(2);
  -webkit-transition: opacity 0.4s cubic-bezier(0.19, 1, 0.22, 1), visibility 0s 0.4s, -webkit-transform 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  transition: opacity 0.4s cubic-bezier(0.19, 1, 0.22, 1), visibility 0s 0.4s, -webkit-transform 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  transition: opacity 0.4s cubic-bezier(0.19, 1, 0.22, 1), transform 0.4s cubic-bezier(0.19, 1, 0.22, 1), visibility 0s 0.4s;
  transition: opacity 0.4s cubic-bezier(0.19, 1, 0.22, 1), transform 0.4s cubic-bezier(0.19, 1, 0.22, 1), visibility 0s 0.4s, -webkit-transform 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  visibility: hidden;
  width: 100%;
  z-index: 30; }
  .processing-modal.show {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-transition: visibility 0s, opacity .4s ease-out, -webkit-transform .4s ease-out;
    transition: visibility 0s, opacity .4s ease-out, -webkit-transform .4s ease-out;
    transition: visibility 0s, opacity .4s ease-out, transform .4s ease-out;
    transition: visibility 0s, opacity .4s ease-out, transform .4s ease-out, -webkit-transform .4s ease-out;
    visibility: visible; }
  .processing-modal .button,
  .processing-modal .btn {
    margin-bottom: 35px; }
    .processing-modal .button.hidden,
    .processing-modal .btn.hidden {
      visibility: hidden; }
  .processing-modal .heading {
    font-size: 18px;
    color: #616060;
    line-height: 1.3em;
    margin-bottom: 2.5em;
    max-width: 17em;
    text-align: center; }
    @media only screen and (min-width: 375px) {
      .processing-modal .heading {
        font-size: 19px; } }
    @media only screen and (min-width: 532px) {
      .processing-modal .heading {
        font-size: 20px; } }
    @media only screen and (min-width: 768px) {
      .processing-modal .heading {
        font-size: 21px; } }
    @media only screen and (min-width: 1024px) {
      .processing-modal .heading {
        font-size: 24px; } }
  @media only screen and (min-width: 0) and (max-width: 767px) {
    .processing-modal .img {
      width: 150px; } }
  @media only screen and (min-width: 768px) and (max-width: 1023px) {
    .processing-modal .img {
      width: 225px; } }

.product-claim-statement {
  margin-bottom: 30px;
  margin-top: 30px;
  font-size: 10px;
  border: 1px solid #e5e5e5;
  line-height: 1.3em;
  margin-bottom: 1.5em;
  margin-top: 1.5em;
  padding: 0.86667em 1.3em;
  text-align: center; }
  @media only screen and (min-width: 532px) {
    .product-claim-statement {
      margin-bottom: 45px;
      margin-top: 45px; } }
  @media only screen and (min-width: 1024px) {
    .product-claim-statement {
      margin-bottom: 60px;
      margin-top: 60px; } }
  @media only screen and (min-width: 375px) {
    .product-claim-statement {
      font-size: 10px; } }
  @media only screen and (min-width: 532px) {
    .product-claim-statement {
      font-size: 11px; } }
  @media only screen and (min-width: 768px) {
    .product-claim-statement {
      font-size: 11px; } }
  @media only screen and (min-width: 1024px) {
    .product-claim-statement {
      font-size: 12px; } }
  .product-claim-statement:empty {
    display: none; }

.products-empty-cart {
  font-size: 13px;
  color: #616060;
  line-height: 1.5em;
  padding-bottom: 4em;
  padding-left: 1.5em;
  padding-right: 1.5em;
  padding-top: 4em;
  text-align: center; }
  @media only screen and (min-width: 375px) {
    .products-empty-cart {
      font-size: 13px; } }
  @media only screen and (min-width: 532px) {
    .products-empty-cart {
      font-size: 14px; } }
  @media only screen and (min-width: 768px) {
    .products-empty-cart {
      font-size: 14px; } }
  @media only screen and (min-width: 1024px) {
    .products-empty-cart {
      font-size: 15px; } }
  .products-empty-cart .heading {
    font-size: 15px;
    color: #161a1d;
    font-weight: 700;
    letter-spacing: 0.1em;
    margin-bottom: .3em;
    text-transform: uppercase; }
    @media only screen and (min-width: 375px) {
      .products-empty-cart .heading {
        font-size: 15px; } }
    @media only screen and (min-width: 532px) {
      .products-empty-cart .heading {
        font-size: 16px; } }
    @media only screen and (min-width: 768px) {
      .products-empty-cart .heading {
        font-size: 16px; } }
    @media only screen and (min-width: 1024px) {
      .products-empty-cart .heading {
        font-size: 16px; } }
  .products-empty-cart .btn,
  .products-empty-cart .button {
    margin-top: 2em; }

.products-table {
  width: 100%; }
  @media only screen and (min-width: 768px) {
    .products-table {
      padding-bottom: 10px;
      padding-top: 10px; } }
  .products-table td,
  .products-table th {
    text-align: left;
    vertical-align: bottom; }
  .products-table .line-1 {
    font-size: 15px;
    color: #161a1d;
    font-weight: 700;
    text-transform: uppercase; }
    @media only screen and (min-width: 375px) {
      .products-table .line-1 {
        font-size: 15px; } }
    @media only screen and (min-width: 532px) {
      .products-table .line-1 {
        font-size: 16px; } }
    @media only screen and (min-width: 768px) {
      .products-table .line-1 {
        font-size: 16px; } }
    @media only screen and (min-width: 1024px) {
      .products-table .line-1 {
        font-size: 16px; } }
    .products-table .line-1 .ui-icon {
      display: inline-block;
      margin-bottom: -14px;
      margin-right: -10px;
      margin-top: -14px; }
    .products-table .line-1 .ui-icon-subscription {
      fill: #f66; }
  .products-table .line-2 {
    font-size: 13px;
    color: #616060;
    margin-top: 6px; }
    @media only screen and (min-width: 375px) {
      .products-table .line-2 {
        font-size: 13px; } }
    @media only screen and (min-width: 532px) {
      .products-table .line-2 {
        font-size: 14px; } }
    @media only screen and (min-width: 768px) {
      .products-table .line-2 {
        font-size: 14px; } }
    @media only screen and (min-width: 1024px) {
      .products-table .line-2 {
        font-size: 15px; } }
    .products-table .line-2--choice {
      font-size: 10px;
      color: #00a7e0;
      cursor: pointer;
      -webkit-transition: color .2s ease-out;
      transition: color .2s ease-out; }
      @media only screen and (min-width: 375px) {
        .products-table .line-2--choice {
          font-size: 10px; } }
      @media only screen and (min-width: 532px) {
        .products-table .line-2--choice {
          font-size: 11px; } }
      @media only screen and (min-width: 768px) {
        .products-table .line-2--choice {
          font-size: 11px; } }
      @media only screen and (min-width: 1024px) {
        .products-table .line-2--choice {
          font-size: 12px; } }
      .products-table .line-2--choice:focus {
        color: #006dba;
        outline: 0; }
      .products-table .line-2--choice:hover, .products-table .line-2--choice:active {
        color: #006dba; }
        .products-table .line-2--choice:hover .caret, .products-table .line-2--choice:active .caret {
          -webkit-animation: teeter-right .2s linear 1;
                  animation: teeter-right .2s linear 1;
          fill: #006dba; }
    .products-table .line-2--label {
      font-size: 10px;
      text-transform: uppercase; }
      @media only screen and (min-width: 375px) {
        .products-table .line-2--label {
          font-size: 10px; } }
      @media only screen and (min-width: 532px) {
        .products-table .line-2--label {
          font-size: 11px; } }
      @media only screen and (min-width: 768px) {
        .products-table .line-2--label {
          font-size: 11px; } }
      @media only screen and (min-width: 1024px) {
        .products-table .line-2--label {
          font-size: 12px; } }
    .products-table .line-2--read-only {
      font-size: 10px; }
      @media only screen and (min-width: 375px) {
        .products-table .line-2--read-only {
          font-size: 10px; } }
      @media only screen and (min-width: 532px) {
        .products-table .line-2--read-only {
          font-size: 11px; } }
      @media only screen and (min-width: 768px) {
        .products-table .line-2--read-only {
          font-size: 11px; } }
      @media only screen and (min-width: 1024px) {
        .products-table .line-2--read-only {
          font-size: 12px; } }
    .products-table .line-2.a {
      color: #616060;
      cursor: pointer;
      display: block;
      -webkit-transition: color .2s ease-out;
      transition: color .2s ease-out; }
      .products-table .line-2.a:hover, .products-table .line-2.a:active {
        color: #00a7e0; }
  .products-table .price-container {
    padding-bottom: 20px;
    padding-right: 20px;
    padding-top: 15px;
    text-align: right;
    width: 70px; }
    @media only screen and (min-width: 0) and (max-width: 413px) {
      .products-table .price-container {
        padding-right: 10px; } }
    @media only screen and (min-width: 1024px) {
      .products-table .price-container {
        padding-left: 20px; } }
    .products-table .price-container.has-frequency {
      vertical-align: bottom; }
      .products-table .price-container.has-frequency .select-wrapper {
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: end;
            -ms-flex-pack: end;
                justify-content: flex-end;
        position: relative; }
        @media only screen and (min-width: 768px) {
          .products-table .price-container.has-frequency .select-wrapper {
            margin-right: -12px; } }
    .products-table .price-container .badge {
      margin-right: 0.325em; }
    .products-table .price-container .best-price {
      cursor: pointer;
      display: inline-block; }
      .products-table .price-container .best-price:hover {
        -webkit-animation: 2s tada-pause infinite;
                animation: 2s tada-pause infinite; }
    .products-table .price-container .caret {
      fill: #616060;
      height: 8px;
      margin-left: 4px;
      -webkit-transition: fill .2s ease-out;
      transition: fill .2s ease-out;
      width: 8px; }
    .products-table .price-container .frequency {
      height: 1em;
      line-height: 1em;
      vertical-align: top;
      white-space: pre; }
    .products-table .price-container .line-1 {
      white-space: nowrap; }
      @media only screen and (min-width: 0) and (max-width: 319px) {
        .products-table .price-container .line-1 {
          display: grid;
          grid-template-columns: auto; }
          .products-table .price-container .line-1 .badge {
            display: inline-block;
            margin-bottom: 0.75em; } }
    .products-table .price-container .pre-discount {
      font-size: 11px;
      color: #616060;
      display: block;
      font-weight: normal;
      margin-bottom: 3px;
      text-decoration: line-through; }
      @media only screen and (min-width: 375px) {
        .products-table .price-container .pre-discount {
          font-size: 11px; } }
      @media only screen and (min-width: 532px) {
        .products-table .price-container .pre-discount {
          font-size: 12px; } }
      @media only screen and (min-width: 768px) {
        .products-table .price-container .pre-discount {
          font-size: 12px; } }
      @media only screen and (min-width: 1024px) {
        .products-table .price-container .pre-discount {
          font-size: 13px; } }
  .products-table .product-ahem-container {
    padding-bottom: 15px;
    padding-left: 10px;
    vertical-align: middle; }
  .products-table .product-badge-container {
    padding-bottom: 15px;
    text-align: center;
    vertical-align: middle; }
  .products-table .product-image-container {
    height: 70px;
    vertical-align: middle;
    width: 70px; }
    @media only screen and (min-width: 0) and (max-width: 413px) {
      .products-table .product-image-container {
        display: none; } }
    @media only screen and (min-width: 1146px) {
      .products-table .product-image-container {
        padding-left: 10px;
        width: 80px; } }
    .products-table .product-image-container img {
      height: auto;
      width: 100%; }
  .products-table .product-text-container {
    padding-bottom: 20px;
    padding-left: 10px;
    padding-right: 10px;
    padding-top: 15px; }
    @media only screen and (min-width: 768px) and (max-width: 1145px) {
      .products-table .product-text-container {
        padding-left: 20px; } }
  .products-table .product-row {
    border-bottom: 1px solid #d9d9d9; }
    .products-table .product-row:last-of-type {
      border-bottom: 0; }
    .products-table .product-row.removing td,
    .products-table .product-row.removing th {
      opacity: 0;
      -webkit-transition: opacity .4s ease-out;
      transition: opacity .4s ease-out; }
  .products-table .quantity-container {
    padding-bottom: 20px;
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 15px;
    text-align: center; }
    .products-table .quantity-container .line-2--label {
      text-transform: inherit; }
  .products-table .select-wrapper {
    position: relative; }
    .products-table .select-wrapper .decoy {
      height: 1em;
      line-height: 1em;
      vertical-align: top;
      white-space: pre; }
    .products-table .select-wrapper select {
      cursor: pointer;
      display: block;
      height: 100%;
      left: 0;
      opacity: 0;
      position: absolute;
      top: 0;
      width: 100%;
      z-index: 2; }
      .ios .products-table .select-wrapper select {
        font-size: 16px; }
      .products-table .select-wrapper select:focus + .decoy {
        -webkit-box-shadow: none;
                box-shadow: none;
        color: #006dba; }
  .products-table .spinner-container {
    height: 60px;
    padding-bottom: 20px;
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 15px;
    text-align: center;
    width: 4.5em; }
    @media only screen and (min-width: 0) and (max-width: 413px) {
      .products-table .spinner-container {
        padding-left: 10px;
        padding-right: 10px; } }
    .products-table .spinner-container .spinner {
      margin-left: auto;
      margin-right: auto; }

.products-table .badge-row th {
  text-align: center; }

.products-table .badge-row .badge {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  display: inline-block;
  line-height: 1.5em; }

.products-table + .require-sso {
  border-top: 1px solid #d9d9d9; }

.require-sso {
  background-color: #f2f4f5;
  padding-top: 0; }

.require-sso .line-2--label {
  white-space: nowrap; }

.require-sso .spinner input,
.require-sso .spinner .minus,
.require-sso .spinner .plus {
  background-color: #fff; }

.status-message {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-bottom: 50px;
  margin-top: 10px; }
  @media only screen and (min-width: 768px) {
    .status-message {
      margin-bottom: 100px;
      margin-top: 20px; } }
  .status-message .heading {
    font-size: 18px;
    color: #616060;
    line-height: 1.3em;
    margin-bottom: 2.5em;
    max-width: 24em;
    text-align: center; }
    @media only screen and (min-width: 375px) {
      .status-message .heading {
        font-size: 19px; } }
    @media only screen and (min-width: 532px) {
      .status-message .heading {
        font-size: 20px; } }
    @media only screen and (min-width: 768px) {
      .status-message .heading {
        font-size: 21px; } }
    @media only screen and (min-width: 1024px) {
      .status-message .heading {
        font-size: 24px; } }
  .status-message .img {
    height: 225px;
    width: 225px; }
    @media only screen and (min-width: 768px) {
      .status-message .img {
        height: 250px;
        width: 250px; } }
  .status-message .p {
    margin-bottom: 1em;
    text-align: center; }

a[data-behavior] {
  cursor: pointer; }

body {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  color: #616060;
  font-display: swap;
  font-family: "Proxima Nova W01", "Helvetica Neue", Calibri, Helvetica, Arial, sans-serif; }

.font-size-debug h1,
.font-size-debug h2,
.font-size-debug h3,
.font-size-debug h4,
.font-size-debug h5,
.font-size-debug h6,
.font-size-debug p {
  margin-bottom: 1em; }

.font-size-debug p {
  line-height: 1.5em; }

.font-size-debug .h-xxl {
  font-size: 32px; }
  @media only screen and (min-width: 375px) {
    .font-size-debug .h-xxl {
      font-size: 48px; } }
  @media only screen and (min-width: 532px) {
    .font-size-debug .h-xxl {
      font-size: 56px; } }
  @media only screen and (min-width: 768px) {
    .font-size-debug .h-xxl {
      font-size: 72px; } }
  @media only screen and (min-width: 1024px) {
    .font-size-debug .h-xxl {
      font-size: 100px; } }

.font-size-debug .h-xl {
  font-size: 28px; }
  @media only screen and (min-width: 375px) {
    .font-size-debug .h-xl {
      font-size: 36px; } }
  @media only screen and (min-width: 532px) {
    .font-size-debug .h-xl {
      font-size: 48px; } }
  @media only screen and (min-width: 768px) {
    .font-size-debug .h-xl {
      font-size: 60px; } }
  @media only screen and (min-width: 1024px) {
    .font-size-debug .h-xl {
      font-size: 72px; } }

.font-size-debug .h-l {
  font-size: 24px; }
  @media only screen and (min-width: 375px) {
    .font-size-debug .h-l {
      font-size: 28px; } }
  @media only screen and (min-width: 532px) {
    .font-size-debug .h-l {
      font-size: 32px; } }
  @media only screen and (min-width: 768px) {
    .font-size-debug .h-l {
      font-size: 40px; } }
  @media only screen and (min-width: 1024px) {
    .font-size-debug .h-l {
      font-size: 48px; } }

.font-size-debug .h {
  font-size: 21px; }
  @media only screen and (min-width: 375px) {
    .font-size-debug .h {
      font-size: 22px; } }
  @media only screen and (min-width: 532px) {
    .font-size-debug .h {
      font-size: 24px; } }
  @media only screen and (min-width: 768px) {
    .font-size-debug .h {
      font-size: 28px; } }
  @media only screen and (min-width: 1024px) {
    .font-size-debug .h {
      font-size: 32px; } }

.font-size-debug .h-s {
  font-size: 18px; }
  @media only screen and (min-width: 375px) {
    .font-size-debug .h-s {
      font-size: 19px; } }
  @media only screen and (min-width: 532px) {
    .font-size-debug .h-s {
      font-size: 20px; } }
  @media only screen and (min-width: 768px) {
    .font-size-debug .h-s {
      font-size: 22px; } }
  @media only screen and (min-width: 1024px) {
    .font-size-debug .h-s {
      font-size: 24px; } }

.font-size-debug .h-xs {
  font-size: 16px; }
  @media only screen and (min-width: 375px) {
    .font-size-debug .h-xs {
      font-size: 16px; } }
  @media only screen and (min-width: 532px) {
    .font-size-debug .h-xs {
      font-size: 17px; } }
  @media only screen and (min-width: 768px) {
    .font-size-debug .h-xs {
      font-size: 17px; } }
  @media only screen and (min-width: 1024px) {
    .font-size-debug .h-xs {
      font-size: 18px; } }

.font-size-debug .h-xxs {
  font-size: 15px; }
  @media only screen and (min-width: 375px) {
    .font-size-debug .h-xxs {
      font-size: 15px; } }
  @media only screen and (min-width: 532px) {
    .font-size-debug .h-xxs {
      font-size: 15px; } }
  @media only screen and (min-width: 768px) {
    .font-size-debug .h-xxs {
      font-size: 16px; } }
  @media only screen and (min-width: 1024px) {
    .font-size-debug .h-xxs {
      font-size: 16px; } }

.font-size-debug .p-xxl {
  font-size: 21px; }
  @media only screen and (min-width: 375px) {
    .font-size-debug .p-xxl {
      font-size: 22px; } }
  @media only screen and (min-width: 532px) {
    .font-size-debug .p-xxl {
      font-size: 24px; } }
  @media only screen and (min-width: 768px) {
    .font-size-debug .p-xxl {
      font-size: 28px; } }
  @media only screen and (min-width: 1024px) {
    .font-size-debug .p-xxl {
      font-size: 32px; } }

.font-size-debug .p-xl {
  font-size: 18px; }
  @media only screen and (min-width: 375px) {
    .font-size-debug .p-xl {
      font-size: 19px; } }
  @media only screen and (min-width: 532px) {
    .font-size-debug .p-xl {
      font-size: 20px; } }
  @media only screen and (min-width: 768px) {
    .font-size-debug .p-xl {
      font-size: 21px; } }
  @media only screen and (min-width: 1024px) {
    .font-size-debug .p-xl {
      font-size: 24px; } }

.font-size-debug .p-l {
  font-size: 16px; }
  @media only screen and (min-width: 375px) {
    .font-size-debug .p-l {
      font-size: 16px; } }
  @media only screen and (min-width: 532px) {
    .font-size-debug .p-l {
      font-size: 17px; } }
  @media only screen and (min-width: 768px) {
    .font-size-debug .p-l {
      font-size: 17px; } }
  @media only screen and (min-width: 1024px) {
    .font-size-debug .p-l {
      font-size: 18px; } }

.font-size-debug .p {
  font-size: 15px; }
  @media only screen and (min-width: 375px) {
    .font-size-debug .p {
      font-size: 15px; } }
  @media only screen and (min-width: 532px) {
    .font-size-debug .p {
      font-size: 16px; } }
  @media only screen and (min-width: 768px) {
    .font-size-debug .p {
      font-size: 16px; } }
  @media only screen and (min-width: 1024px) {
    .font-size-debug .p {
      font-size: 16px; } }

.font-size-debug .p-s {
  font-size: 13px; }
  @media only screen and (min-width: 375px) {
    .font-size-debug .p-s {
      font-size: 13px; } }
  @media only screen and (min-width: 532px) {
    .font-size-debug .p-s {
      font-size: 14px; } }
  @media only screen and (min-width: 768px) {
    .font-size-debug .p-s {
      font-size: 14px; } }
  @media only screen and (min-width: 1024px) {
    .font-size-debug .p-s {
      font-size: 15px; } }

.font-size-debug .p-xs {
  font-size: 11px; }
  @media only screen and (min-width: 375px) {
    .font-size-debug .p-xs {
      font-size: 11px; } }
  @media only screen and (min-width: 532px) {
    .font-size-debug .p-xs {
      font-size: 12px; } }
  @media only screen and (min-width: 768px) {
    .font-size-debug .p-xs {
      font-size: 12px; } }
  @media only screen and (min-width: 1024px) {
    .font-size-debug .p-xs {
      font-size: 13px; } }

.font-size-debug .p-xxs {
  font-size: 10px; }
  @media only screen and (min-width: 375px) {
    .font-size-debug .p-xxs {
      font-size: 10px; } }
  @media only screen and (min-width: 532px) {
    .font-size-debug .p-xxs {
      font-size: 11px; } }
  @media only screen and (min-width: 768px) {
    .font-size-debug .p-xxs {
      font-size: 11px; } }
  @media only screen and (min-width: 1024px) {
    .font-size-debug .p-xxs {
      font-size: 12px; } }

.ahem {
  font-size: 10px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  line-height: 1.5em; }
  @media only screen and (min-width: 375px) {
    .ahem {
      font-size: 10px; } }
  @media only screen and (min-width: 532px) {
    .ahem {
      font-size: 11px; } }
  @media only screen and (min-width: 768px) {
    .ahem {
      font-size: 11px; } }
  @media only screen and (min-width: 1024px) {
    .ahem {
      font-size: 12px; } }
  .ahem.pending {
    -webkit-animation: updating 2s ease-out infinite;
            animation: updating 2s ease-out infinite; }
  .ahem .a {
    color: #00a7e0;
    text-decoration: underline; }
  .ahem .badge {
    margin-right: .8em; }

.footnote {
  font-size: 10px;
  color: #616060;
  line-height: 1.5em;
  margin-bottom: 30px;
  margin-top: 10px; }
  @media only screen and (min-width: 375px) {
    .footnote {
      font-size: 10px; } }
  @media only screen and (min-width: 532px) {
    .footnote {
      font-size: 11px; } }
  @media only screen and (min-width: 768px) {
    .footnote {
      font-size: 11px; } }
  @media only screen and (min-width: 1024px) {
    .footnote {
      font-size: 12px; } }
  .footnote.after-form {
    margin-top: 20px; }

.heading-page {
  font-size: 21px;
  color: #00a7e0;
  font-weight: 300;
  line-height: 1.2em;
  margin-bottom: 2em;
  margin-top: 1em;
  text-align: center;
  width: 100%; }
  @media only screen and (min-width: 375px) {
    .heading-page {
      font-size: 22px; } }
  @media only screen and (min-width: 532px) {
    .heading-page {
      font-size: 24px; } }
  @media only screen and (min-width: 768px) {
    .heading-page {
      font-size: 28px; } }
  @media only screen and (min-width: 1024px) {
    .heading-page {
      font-size: 32px; } }
  .heading-page--margin-top {
    margin-top: 2em; }
  .heading-page--reversed {
    color: #fff; }

@media print {
  .hidden-at-print {
    display: none; } }

.section-heading-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 20px; }
  @media only screen and (min-width: 768px) {
    .section-heading-container {
      margin-bottom: 30px; } }
  .section-heading-container .section-heading {
    font-size: 13px;
    color: #5a6066;
    font-weight: 700;
    letter-spacing: .02em; }
    @media only screen and (min-width: 375px) {
      .section-heading-container .section-heading {
        font-size: 13px; } }
    @media only screen and (min-width: 532px) {
      .section-heading-container .section-heading {
        font-size: 14px; } }
    @media only screen and (min-width: 768px) {
      .section-heading-container .section-heading {
        font-size: 14px; } }
    @media only screen and (min-width: 1024px) {
      .section-heading-container .section-heading {
        font-size: 15px; } }
    @media print {
      .section-heading-container .section-heading {
        color: #000;
        font-size: 9pt; } }

.section-heading-container--tight {
  margin-bottom: 10px; }
  @media only screen and (min-width: 768px) {
    .section-heading-container--tight {
      margin-bottom: 20px; } }

.sub-heading-page {
  font-size: 15px;
  line-height: 1.5em;
  margin-bottom: 1em;
  text-align: center; }
  @media only screen and (min-width: 375px) {
    .sub-heading-page {
      font-size: 15px; } }
  @media only screen and (min-width: 532px) {
    .sub-heading-page {
      font-size: 15px; } }
  @media only screen and (min-width: 768px) {
    .sub-heading-page {
      font-size: 16px; } }
  @media only screen and (min-width: 1024px) {
    .sub-heading-page {
      font-size: 16px; } }
  .sub-heading-page .id-number {
    font-size: 18px;
    font-weight: 700; }
    @media only screen and (min-width: 375px) {
      .sub-heading-page .id-number {
        font-size: 19px; } }
    @media only screen and (min-width: 532px) {
      .sub-heading-page .id-number {
        font-size: 20px; } }
    @media only screen and (min-width: 768px) {
      .sub-heading-page .id-number {
        font-size: 21px; } }
    @media only screen and (min-width: 1024px) {
      .sub-heading-page .id-number {
        font-size: 24px; } }
  .heading-page + .sub-heading-page {
    margin-top: -1.5em; }
    @media only screen and (min-width: 768px) {
      .heading-page + .sub-heading-page {
        margin-top: -2.5em; } }

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

.ui-icon {
  display: inline-block;
  fill: #616060;
  height: 40px;
  -webkit-transition: fill .2s ease-out, -webkit-transform .2s ease-out;
  transition: fill .2s ease-out, -webkit-transform .2s ease-out;
  transition: fill .2s ease-out, transform .2s ease-out;
  transition: fill .2s ease-out, transform .2s ease-out, -webkit-transform .2s ease-out;
  width: 40px; }
  .ui-icon-button .ui-icon {
    fill: #00a7e0; }
    .ui-icon-button .ui-icon:active, .ui-icon-button .ui-icon:hover {
      fill: #006dba; }
  .ui-icon-button[disabled] .ui-icon, .ui-icon-button[disabled] .ui-icon:active, .ui-icon-button[disabled] .ui-icon:hover {
    fill: #ccc; }

.ui-icon--reversed {
  fill: #fff; }
  .ui-icon-button .ui-icon--reversed {
    background-color: transparent;
    fill: #fff;
    -webkit-transition: background-color .2s ease-out;
    transition: background-color .2s ease-out; }
    .ui-icon-button .ui-icon--reversed:hover, .ui-icon-button .ui-icon--reversed:active {
      background-color: #00a7e0;
      fill: #fff; }

.ui-icon--dark {
  fill: #161a1d; }
  .ui-icon--dark:hover {
    fill: black; }

.ui-icon--s {
  height: 24px;
  width: 24px; }

.ui-icon--m {
  height: 32px;
  width: 32px; }

.ui-icon--l {
  height: 48px;
  width: 48px; }

.ui-icon--xl {
  height: 64px;
  width: 64px; }

.ui-icon--xxl {
  height: 80px;
  width: 80px; }

.ui-icon--bg-round {
  background-color: rgba(242, 244, 245, 0.85);
  border-radius: 50%;
  -webkit-transition: background-color .2s ease-in-out;
  transition: background-color .2s ease-in-out; }
  .ui-icon--bg-round:hover {
    background-color: #d9d9d9; }

.ui-icon-chevron {
  -webkit-transform: rotate(0);
          transform: rotate(0); }

.ui-icon-chevron--left {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg); }

.ui-icon-chevron--right {
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg); }

.ui-icon-chevron--up {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg); }

.ui-icon-button {
  background-color: transparent;
  border: 0;
  display: inline-block;
  margin: 0;
  outline: 0;
  padding: 0; }
  .ui-icon-button.pointer, .ui-icon-button[href], .ui-icon-button[data-behavior] {
    cursor: pointer; }
  .ui-icon-button[disabled] {
    cursor: not-allowed; }

a.vanilla, a[class=''], a:not([class]) {
  color: #00a7e0;
  cursor: pointer;
  text-decoration: underline;
  -webkit-transition: color .2s ease-out;
  transition: color .2s ease-out; }
  a.vanilla:hover, a[class='']:hover, a:not([class]):hover {
    color: #006dba; }

abbr.vanilla, abbr[class=''], abbr:not([class]) {
  text-decoration: none; }

acronym.vanilla, acronym[class=''], acronym:not([class]) {
  border-bottom: 0;
  cursor: inherit;
  text-decoration: none; }

b.vanilla, b[class=''], b:not([class]),
strong.vanilla,
strong[class=''],
strong:not([class]) {
  font-weight: 700; }

dl.vanilla dd, dl[class=''] dd, dl:not([class]) dd {
  font-size: 15px;
  color: #2e3134;
  line-height: 1.3em;
  margin-bottom: 1.25em; }
  @media only screen and (min-width: 375px) {
    dl.vanilla dd, dl[class=''] dd, dl:not([class]) dd {
      font-size: 15px; } }
  @media only screen and (min-width: 532px) {
    dl.vanilla dd, dl[class=''] dd, dl:not([class]) dd {
      font-size: 16px; } }
  @media only screen and (min-width: 768px) {
    dl.vanilla dd, dl[class=''] dd, dl:not([class]) dd {
      font-size: 16px; } }
  @media only screen and (min-width: 1024px) {
    dl.vanilla dd, dl[class=''] dd, dl:not([class]) dd {
      font-size: 16px; } }
  @media print {
    dl.vanilla dd, dl[class=''] dd, dl:not([class]) dd {
      color: #000;
      font-size: 10pt; } }

dl.vanilla dt, dl[class=''] dt, dl:not([class]) dt {
  font-size: 10px;
  color: #939191;
  font-weight: 400;
  margin-bottom: .2em; }
  @media only screen and (min-width: 375px) {
    dl.vanilla dt, dl[class=''] dt, dl:not([class]) dt {
      font-size: 10px; } }
  @media only screen and (min-width: 532px) {
    dl.vanilla dt, dl[class=''] dt, dl:not([class]) dt {
      font-size: 11px; } }
  @media only screen and (min-width: 768px) {
    dl.vanilla dt, dl[class=''] dt, dl:not([class]) dt {
      font-size: 11px; } }
  @media only screen and (min-width: 1024px) {
    dl.vanilla dt, dl[class=''] dt, dl:not([class]) dt {
      font-size: 12px; } }
  @media print {
    dl.vanilla dt, dl[class=''] dt, dl:not([class]) dt {
      font-size: 8pt; } }

h1.vanilla, h1[class=''], h1:not([class]) {
  font-size: 28px; }
  @media only screen and (min-width: 375px) {
    h1.vanilla, h1[class=''], h1:not([class]) {
      font-size: 36px; } }
  @media only screen and (min-width: 532px) {
    h1.vanilla, h1[class=''], h1:not([class]) {
      font-size: 48px; } }
  @media only screen and (min-width: 768px) {
    h1.vanilla, h1[class=''], h1:not([class]) {
      font-size: 60px; } }
  @media only screen and (min-width: 1024px) {
    h1.vanilla, h1[class=''], h1:not([class]) {
      font-size: 72px; } }

h2.vanilla, h2[class=''], h2:not([class]) {
  font-size: 24px; }
  @media only screen and (min-width: 375px) {
    h2.vanilla, h2[class=''], h2:not([class]) {
      font-size: 28px; } }
  @media only screen and (min-width: 532px) {
    h2.vanilla, h2[class=''], h2:not([class]) {
      font-size: 32px; } }
  @media only screen and (min-width: 768px) {
    h2.vanilla, h2[class=''], h2:not([class]) {
      font-size: 40px; } }
  @media only screen and (min-width: 1024px) {
    h2.vanilla, h2[class=''], h2:not([class]) {
      font-size: 48px; } }

h3.vanilla, h3[class=''], h3:not([class]) {
  font-size: 21px; }
  @media only screen and (min-width: 375px) {
    h3.vanilla, h3[class=''], h3:not([class]) {
      font-size: 22px; } }
  @media only screen and (min-width: 532px) {
    h3.vanilla, h3[class=''], h3:not([class]) {
      font-size: 24px; } }
  @media only screen and (min-width: 768px) {
    h3.vanilla, h3[class=''], h3:not([class]) {
      font-size: 28px; } }
  @media only screen and (min-width: 1024px) {
    h3.vanilla, h3[class=''], h3:not([class]) {
      font-size: 32px; } }

h4.vanilla, h4[class=''], h4:not([class]) {
  font-size: 18px; }
  @media only screen and (min-width: 375px) {
    h4.vanilla, h4[class=''], h4:not([class]) {
      font-size: 19px; } }
  @media only screen and (min-width: 532px) {
    h4.vanilla, h4[class=''], h4:not([class]) {
      font-size: 20px; } }
  @media only screen and (min-width: 768px) {
    h4.vanilla, h4[class=''], h4:not([class]) {
      font-size: 22px; } }
  @media only screen and (min-width: 1024px) {
    h4.vanilla, h4[class=''], h4:not([class]) {
      font-size: 24px; } }

h5.vanilla, h5[class=''], h5:not([class]) {
  font-size: 16px; }
  @media only screen and (min-width: 375px) {
    h5.vanilla, h5[class=''], h5:not([class]) {
      font-size: 16px; } }
  @media only screen and (min-width: 532px) {
    h5.vanilla, h5[class=''], h5:not([class]) {
      font-size: 17px; } }
  @media only screen and (min-width: 768px) {
    h5.vanilla, h5[class=''], h5:not([class]) {
      font-size: 17px; } }
  @media only screen and (min-width: 1024px) {
    h5.vanilla, h5[class=''], h5:not([class]) {
      font-size: 18px; } }

h6.vanilla, h6[class=''], h6:not([class]) {
  font-size: 15px; }
  @media only screen and (min-width: 375px) {
    h6.vanilla, h6[class=''], h6:not([class]) {
      font-size: 15px; } }
  @media only screen and (min-width: 532px) {
    h6.vanilla, h6[class=''], h6:not([class]) {
      font-size: 15px; } }
  @media only screen and (min-width: 768px) {
    h6.vanilla, h6[class=''], h6:not([class]) {
      font-size: 16px; } }
  @media only screen and (min-width: 1024px) {
    h6.vanilla, h6[class=''], h6:not([class]) {
      font-size: 16px; } }

p.vanilla, p[class=''], p:not([class]) {
  font-size: 15px;
  line-height: 1.5em;
  margin-bottom: 0.75em; }
  @media only screen and (min-width: 375px) {
    p.vanilla, p[class=''], p:not([class]) {
      font-size: 15px; } }
  @media only screen and (min-width: 532px) {
    p.vanilla, p[class=''], p:not([class]) {
      font-size: 16px; } }
  @media only screen and (min-width: 768px) {
    p.vanilla, p[class=''], p:not([class]) {
      font-size: 16px; } }
  @media only screen and (min-width: 1024px) {
    p.vanilla, p[class=''], p:not([class]) {
      font-size: 16px; } }

section.vanilla, section[class=''], section:not([class]) {
  margin-bottom: 20px;
  margin-top: 20px; }
  @media only screen and (min-width: 532px) {
    section.vanilla, section[class=''], section:not([class]) {
      margin-bottom: 30px;
      margin-top: 30px; } }
  @media only screen and (min-width: 1024px) {
    section.vanilla, section[class=''], section:not([class]) {
      margin-bottom: 40px;
      margin-top: 40px; } }

ul.vanilla, ul[class=''], ul:not([class]) {
  list-style: none outside; }
  ul.vanilla li, ul[class=''] li, ul:not([class]) li {
    line-height: 1.5em;
    padding-bottom: .75em;
    padding-left: 1em;
    position: relative; }
    ul.vanilla li::before, ul[class=''] li::before, ul:not([class]) li::before {
      content: '•';
      display: block;
      left: 0;
      position: absolute; }
    ul.vanilla li:last-child, ul[class=''] li:last-child, ul:not([class]) li:last-child {
      padding-bottom: 0; }

.cc-type-options .input-radio + .decoy::before {
  background: #001f45; }

.cc-type-options .key {
  color: #161a1d;
  font-weight: 700; }

.cc-type-options .radio-and-label {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .cc-type-options .radio-and-label:hover {
    cursor: pointer; }

.cc-type-options .radio-and-label .custom-radio {
  -webkit-transform: none;
          transform: none; }

.cc-type-options .radio-wrapper {
  margin: 0 auto;
  max-width: 455px;
  width: 100%; }

.cc-type-options .radio-wrapper fieldset {
  margin-bottom: 50px; }

.cc-type-options .section-heading {
  font-weight: 600; }

.empty-cart .layout-two-column {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .empty-cart .layout-two-column .cart-summary-controls-1-col {
    display: initial; }
  .empty-cart .layout-two-column .layout-column {
    padding-left: 5%;
    padding-right: 5%; }
    .empty-cart .layout-two-column .layout-column:only-child {
      max-width: 600px; }

.heading-page {
  margin-top: 2em; }


/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxpYi5jc3MiLCJhcHAuY3NzIiwiLi4vLi4vLi4vbHYtY29yZS9jc3MvYXBwL19jb3JlLWFuaW1hdGlvbi5zY3NzIiwiLi4vLi4vLi4vbHYtY29yZS9jc3MvYXBwL19jb3JlLWJhZGdlLnNjc3MiLCIuLi8uLi8uLi9sdi1jb3JlL2Nzcy9hcHAvX2NvcmUtcmVxdWlyZWQtbWl4aW5zLnNjc3MiLCIuLi8uLi8uLi9sdi1jb3JlL2Nzcy9hcHAvX2NvcmUtcmVxdWlyZWQtc2V0dGluZ3Muc2NzcyIsIi4uLy4uLy4uL2x2LWNvcmUvY3NzL2FwcC9fY29yZS1idXR0b24tYmFzZS5zY3NzIiwiLi4vLi4vLi4vbHYtY29yZS9jc3MvYXBwL19jb3JlLXJlcXVpcmVkLWZ1bmN0aW9ucy5zY3NzIiwiLi4vLi4vLi4vbHYtY29yZS9jc3MvYXBwL19jb3JlLWJ1dHRvbi1sYXlvdXQuc2NzcyIsIi4uLy4uLy4uL2x2LWNvcmUvY3NzL2FwcC9fY29yZS1idXR0b24tbW9kaWZpZXJzLnNjc3MiLCIuLi8uLi8uLi9sdi1jb3JlL2Nzcy9hcHAvX2NvcmUtYnV0dG9uLXN0YXRlcy5zY3NzIiwiLi4vLi4vLi4vbHYtY29yZS9jc3MvYXBwL19jb3JlLWNhcmQuc2NzcyIsIl9wYXRjaC1jb3JlLWNhcnQtc3VtbWFyeS5zY3NzIiwiLi4vLi4vLi4vbHYtY29yZS9jc3MvYXBwL19jb3JlLWNvbnRhY3QtbW9kYWwuc2NzcyIsIi4uLy4uLy4uL2x2LWNvcmUvY3NzL2FwcC9fY29yZS1lcnJvci1wYWdlLnNjc3MiLCIuLi8uLi8uLi9sdi1jb3JlL2Nzcy9hcHAvX2NvcmUtZm9vdGVyLnNjc3MiLCIuLi8uLi8uLi9sdi1jb3JlL2Nzcy9hcHAvX2NvcmUtZm9ybS1jaGVja2JveC1yYWRpby5zY3NzIiwiLi4vLi4vLi4vbHYtY29yZS9jc3MvYXBwL19jb3JlLWZvcm0tY3JlZGl0LWNhcmQuc2NzcyIsIi4uLy4uLy4uL2x2LWNvcmUvY3NzL2FwcC9fY29yZS1mb3JtLWxheW91dC5zY3NzIiwiLi4vLi4vLi4vbHYtY29yZS9jc3MvYXBwL19jb3JlLWZvcm0tc2VsZWN0LnNjc3MiLCIuLi8uLi8uLi9sdi1jb3JlL2Nzcy9hcHAvX2NvcmUtZm9ybS1zcGlubmVyLnNjc3MiLCIuLi8uLi8uLi9sdi1jb3JlL2Nzcy9hcHAvX2NvcmUtZm9ybS10ZXh0LnNjc3MiLCIuLi8uLi8uLi9sdi1jb3JlL2Nzcy9hcHAvX2NvcmUtaGVhZGVyLWJhci5zY3NzIiwiLi4vLi4vLi4vbHYtY29yZS9jc3MvYXBwL19jb3JlLWxheW91dC5zY3NzIiwiLi4vLi4vLi4vbHYtY29yZS9jc3MvYXBwL19jb3JlLWxvYWRlci5zY3NzIiwiLi4vLi4vLi4vbHYtY29yZS9jc3MvYXBwL19jb3JlLW1vZGFsLnNjc3MiLCIuLi8uLi8uLi9sdi1jb3JlL2Nzcy9hcHAvX2NvcmUtb3ZlcmxheS5zY3NzIiwiLi4vLi4vLi4vbHYtY29yZS9jc3MvYXBwL19jb3JlLXByb2Nlc3NpbmctbW9kYWwuc2NzcyIsIi4uLy4uLy4uL2x2LWNvcmUvY3NzL2FwcC9fY29yZS1wcm9kdWN0LWNsYWltLXN0YXRlbWVudC5zY3NzIiwiLi4vLi4vLi4vbHYtY29yZS9jc3MvYXBwL19jb3JlLXByb2R1Y3RzLXRhYmxlLnNjc3MiLCIuLi8uLi8uLi9sdi1jb3JlL2Nzcy9hcHAvX2NvcmUtc3RhdHVzLW1lc3NhZ2Uuc2NzcyIsIi4uLy4uLy4uL2x2LWNvcmUvY3NzL2FwcC9fY29yZS10eXBvZ3JhcGh5LnNjc3MiLCIuLi8uLi8uLi9sdi1jb3JlL2Nzcy9hcHAvX2NvcmUtdWktaWNvbi5zY3NzIiwiLi4vLi4vLi4vbHYtY29yZS9jc3MvYXBwL19jb3JlLXZhbmlsbGEuc2NzcyIsIl9wYXkuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtB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O0lQdU5JLGdCQ1pVO0lNbEtWLGVOV2E7SU1WYixpQkFBZ0I7SUFDaEIsb0JBQW1CLEVBQ3BCO0lQTEM7TU92Q0o7UVB5Tk0sZ0JDZGMsRU0vSmpCLEVBQUE7SVBMQztNT3ZDSjtRUDROTSxnQkNqQm9CLEVNL0p2QixFQUFBO0lQTEM7TU92Q0o7UVArTk0sZ0JDcEIwQixFTS9KN0IsRUFBQTtJUExDO01PdkNKO1FQa09NLGdCQ3ZCZ0MsRU0vSm5DLEVBQUE7RUE1Q0g7SVB1TkksZ0JDckJVO0lNbkpWLGVOTWE7SU1MYixpQkFBZ0I7SUFDaEIsb0JBQW1CLEVBQ3BCO0lQWEM7TU92Q0o7UVB5Tk0sZ0JDdkJjLEVNaEpqQixFQUFBO0lQWEM7TU92Q0o7UVA0Tk0sZ0JDMUJvQixFTWhKdkIsRUFBQTtJUFhDO01PdkNKO1FQK05NLGdCQzdCMEIsRU1oSjdCLEVBQUE7SVBYQztNT3ZDSjtRUGtPTSxnQkNoQ2dDLEVNaEpuQyxFQUFBO0VBbERIO0lQdU5JLGdCQ1pVO0lNdEpWLGVORmM7SU1HZCxpQkFBZ0I7SUFDaEIsc0JOdUdZO0lNdEdaLG1CTjhHTTtJTTdHTixtQkFBa0I7SUFDbEIsMEJBQXlCLEVBQzFCO0lQcEJDO01PdkNKO1FQeU5NLGdCQ2RjLEVNaEpqQixFQUFBO0lQcEJDO01PdkNKO1FQNE5NLGdCQ2pCb0IsRU1oSnZCLEVBQUE7SVBwQkM7TU92Q0o7UVArTk0sZ0JDcEIwQixFTWhKN0IsRUFBQTtJUHBCQztNT3ZDSjtRUGtPTSxnQkN2QmdDLEVNaEpuQyxFQUFBO0VBQ0Q7SUFDRSxpQkFBZ0IsRUFDakI7RUE5REg7SUFnRUksMEJBQW1CO1FBQW5CLHVCQUFtQjtZQUFuQixvQkFBbUI7SUFDbkIsOEZBQXFGO0lBQXJGLCtEQUFxRjtJQUNyRixtQkFBa0I7SUFDbEIscUJBQWE7SUFBYixxQkFBYTtJQUFiLGNBQWE7SUFDYixhQUFZO0lBQ1oseUJBQXVCO1FBQXZCLHNCQUF1QjtZQUF2Qix3QkFBdUI7SUFDdkIsUUFBTztJQUNQLGtCQUFpQjtJQUNqQixtQkFBa0I7SUFDbEIsbUJBQWtCO0lBQ2xC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a0RKO01SZ0lNLGdCQ1pjLEVPaEVqQixFQUFBO0VSdEdDO0lRa0RKO01SbUlNLGdCQ2ZvQixFT2hFdkIsRUFBQTtFUnRHQztJUWtESjtNUnNJTSxnQkNsQjBCLEVPaEU3QixFQUFBO0VSdEdDO0lRa0RKO01SeUlNLGdCQ3JCZ0MsRU9oRW5DLEVBQUE7O0FBcERIOztFQXVESSxxQkFBYTtFQUFiLHFCQUFhO0VBQWIsY0FBYSxFQVNkO0VSdkhDO0lRdURKOztNUjhISSxnQkNiVTtNT3ZEUixtQkFBa0I7TUFDbEIsWUFBVyxFQUtkLEVBQUE7RVJsSEM7SVFrREo7O01SZ0lNLGdCQ2ZjLEVPakRqQixFQUFBO0VSbEhDO0lRa0RKOztNUm1JTSxnQkNsQm9CLEVPakR2QixFQUFBO0VSbEhDO0lRa0RKOztNUnNJTSxnQkNyQjBCLEVPakQ3QixFQUFBO0VSbEhDO0lRa0RKOztNUnlJTSxnQkN4QmdDLEVPakRuQyxFQUFBO0VSbEhDO0lRa0RKOztNQThETSw2QkFBc0I7TUFBdEIsOEJBQXNCO1VBQXRCLDJCQUFzQjtjQUF0Qix1QkFBc0IsRUFFekIsRUFBQTs7QVJ2SEM7RVF1REo7O0lBcUVRLGVQN0hTO0lPOEhULGlCQUFnQixFQUNqQixFQUFBOztBUnpISDtFUWtESjtJQTBFTSw4QlBsSGU7SU9tSGYsZUFBYztJQUNkLGlCQUFnQjtJQUNoQixjQUFhO0lBQ2IsbUJBQWtCO0lBQ2xCLFlBQVcsRUFXZDtJQTFGSDs7TVI4SEksZ0JDZlU7TU81Qk4sZ0JBQWU7TUFDZixrQkFBaUI7TUFDakIsa0JBQWlCO01BQ2pCLG1CQUFrQjtNQUNsQixxQkFBb0IsRUFDckIsRUFBQTtJUjFJSDtNUWtESjs7UVJnSU0sZ0JDakJjLEVPdkJiLEVBQUE7SVIxSUg7TVFrREo7O1FSbUlNLGdCQ3BCb0IsRU92Qm5CLEVBQUE7SVIxSUg7TVFrREo7O1FSc0lNLGdCQ3ZCMEIsRU92QnpCLEVBQUE7SVIxSUg7TVFrREo7O1FSeUlNLGdCQzFCZ0MsRU92Qi9CLEVBQUE7O0FSMUlIO0VRa0RKO0lBNkZNLGNBQWE7SUFDYixtQkFBa0I7SUFD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QVUsRUFJWDtRQWxDTDs7VUFnQ1EsdUJQbFFNLEVPbVFQLEVBQUE7RVIxVUg7SVF5U0o7TUFzQ00sY0FBYSxFQUNkLEVBQUE7O0FBSUw7RVIvSkksZ0JDWFU7RU80S1osMEJQOVFlO0VPK1FmLG1CUDNXTTtFTzRXTixtQlBuTmM7RU9vTmQsb0JBQW1CO0VBQ25CLGtCQUFpQjtFQUNqQixtQkFBa0I7RUFDbEIsY0FBYTtFQUNiLG1CQUFrQixFQUtuQjtFUjdWRztJUStVSjtNUjdKTSxnQkNiYyxFT3dMbkIsRUFBQTtFUjdWRztJUStVSjtNUjFKTSxnQkNoQm9CLEVPd0x6QixFQUFBO0VSN1ZHO0lRK1VKO01SdkpNLGdCQ25CMEIsRU93TC9CLEVBQUE7RVI3Vkc7SVErVUo7TVJwSk0sZ0JDdEJnQyxFT3dMckMsRUFBQTtFUjdWRztJUStVSjtNQVdJLGVBQWM7TUFDZCxnQkFBZSxFQUVsQixFQUFBOztBUjdWRztFUStWSjtJQUVJLDhCUHZWaUI7SU93VmpCLGtCQUFpQixFQU9wQjtJQVZEO01BS00sZ0JBQWU7TUFDZixnQkFBZTtNQUNmLE9BQU0sRUFDUCxFQUFBOztBQUlMOzs7RVIzTEksZ0JDWlU7RU8yTVosZVBuV2dCO0VPb1doQixvQkFBYztNQUFkLG1CQUFjO1VBQWQsZUFBYyxFQVlmO0VSNVhHO0lRMldKOzs7TVJ6TE0sZ0JDZGMsRU93Tm5CLEVBQUE7RVI1WEc7SVEyV0o7OztNUnRMTSxnQkNqQm9CLEVPd056QixFQUFBO0VSNVhHO0lRMldKOzs7TVJuTE0sZ0JDcEIwQixFT3dOL0IsRUFBQTtFUjVYRztJUTJXSjs7O01SaExNLGdCQ3ZCZ0MsRU93TnJDLEVBQUE7RVJqWUc7SVFnWEo7OztNQU9JLG1CUG5QTTtNT29QTixvQkFBbUI7TUFDbkIsa0JBQWlCLEVBUXBCLEVBQUE7RVI1WEc7SVEyV0o7OztNQVlJLG1CUHZQWTtNT3dQWixtQkFBa0I7TUFDbEIsb0NBQTJCO2NBQTNCLDRCQUEyQjtNQUMzQixZQUFXLEVBRWQsRUFBQTs7QUFFRDtFQUNFLGVQaFllLEVPaVloQjs7QUFFRDtFQUNFLGVQ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QXVFO0lBQXZFLHdHQUF1RTtJQUN2RSxvQkFBbUIsRUFDcEI7RUF2Qkg7O0lBMEJJLG9CQUFtQixFQUlwQjtJQTlCSDs7TUE0Qk0sbUJBQWtCLEVBQ25CO0VBN0JMO0l2QnVOSSxnQkNmVTtJc0J2S1YsZXRCbUJhO0lzQmxCYixtQnRCcUlZO0lzQnBJWixxQkFBb0I7SUFDcEIsZ0JBQWU7SUFDZixtQkFBa0IsRUFDbkI7SXZCQ0M7TXVCdkNKO1F2QnlOTSxnQkNqQmMsRXNCbEtqQixFQUFBO0l2QkNDO011QnZDSjtRdkI0Tk0sZ0JDcEJvQixFc0JsS3ZCLEVBQUE7SXZCQ0M7TXVCdkNKO1F2QitOTSxnQkN2QjBCLEVzQmxLN0IsRUFBQTtJdkJDQztNdUJ2Q0o7UXZCa09NLGdCQzFCZ0MsRXNCbEtuQyxFQUFBO0V2QkpDO0l1QmxDSjtNQXlDTSxhQUFZLEVBS2YsRUFBQTtFdkJaQztJdUJsQ0o7TUE0Q00sYUFBWSxFQUVmLEVBQUE7O0FDOUNIO0V4QjBMSSxvQkFBc0M7RUFBdEMsaUJBQXNDO0VBNkJ0QyxnQkNWVTtFdUIxTVosMEJ2QndHYztFdUJ2R2QsbUJ2Qm1LYztFdUJsS2QscUJ2QmlLUTtFdUJoS1Isa0J2QmdLUTtFdUIvSlIseUJ2QmdLYztFdUIvSmQsbUJBQWtCLEVBSW5CO0V4QjJCRztJd0J2Q0o7TXhCOExNLG9CQUFzQztNQUF0QyxpQkFBc0MsRXdCbEwzQyxFQUFBO0V4QjJCRztJd0J2Q0o7TXhCbU1NLG9CQUFzQztNQUF0QyxpQkFBc0MsRXdCdkwzQyxFQUFBO0V4QjJCRztJd0J2Q0o7TXhCeU5NLGdCQ1pjLEV1QmpNbkIsRUFBQTtFeEIyQkc7SXdCdkNKO014QjROTSxnQkNmb0IsRXVCak16QixFQUFBO0V4QjJCRztJd0J2Q0o7TXhCK05NLGdCQ2xCMEIsRXVCak0vQixFQUFBO0V4QjJCRztJd0J2Q0o7TXhCa09NLGdCQ3JCZ0MsRXVCak1yQyxFQUFBO0VBWkQ7SUFVSSxjQUFhLEVBQ2Q7O0FDWEg7RXpCdU5JLGdCQ1pVO0V3QnpNWixleEJrRGU7RXdCakRmLG1CeEJtS1E7RXdCbEtSLG9CQUFtQjtFQUNuQixvQkFBbUI7RUFDbkIscUJBQW9CO0VBQ3BCLGlCQUFnQjtFQUNoQixtQkFBa0IsRUFhbkI7RXpCa0JHO0l5QnZDSjtNekJ5Tk0sZ0JDZGMsRXdCdExuQixFQUFBO0V6QmtCRztJeUJ2Q0o7TXpCNE5NLGdCQ2pCb0IsRXdCdEx6QixFQUFBO0V6QmtCRztJeUJ2Q0o7TXpCK05NLGdCQ3BCMEIsRXdCdEwvQixFQUFBO0V6QmtCRztJeUJ2Q0o7TXpCa09NLGdCQ3ZCZ0MsRXdCdExyQyxFQUFBO0VBckJEO0l6QnVOSSxnQkNiVTtJd0IvTFYsZXhCc0JhO0l3QnJCYixpQkFBZ0I7SUFDaEIsc0J4QmlKWTtJd0JoSlosb0JBQW1CO0lBQ25CLDBCQUF5QixFQUMxQjtJekJ1QkM7TXlCdkNKO1F6QnlOTSxnQkNmYyxFd0IxTGpCLEVBQUE7SXpCdUJDO015QnZDSjtRekI0Tk0sZ0JDbEJvQixFd0IxTHZCLEVBQUE7SXpCdUJDO015QnZDSjtRekIrTk0sZ0JDckIwQixFd0IxTDdCLEVBQUE7SXpCdUJDO015QnZDSjtRekJrT00sZ0JDeEJnQyxFd0IxTG5DLEVBQUE7RUFoQkg7O0lBbUJJLGdCQUFlLEVBQ2hCOztBQUdIO0VBR0UsWUFBVyxFQTJPWjtFekI5Tkc7SXlCaEJKO01BS0kscUJBQW9CO01BQ3BCLGtCQUFpQixFQXdPcEIsRUFBQTtFQTlPRDs7SUFVSSxpQkFBZ0I7SUFDaEIsdUJBQXNCLEVBQ3ZCO0VBWkg7SXpCZ01JLGdCQ2JVO0l3QnBLVixleEJMYTtJd0JNYixpQkFBZ0I7SUFDaEIsMEJBQXlCLEVBVTFCO0l6QlhDO015QmhCSjtRekJrTU0sZ0JDZmMsRXdCeEpqQixFQUFBO0l6QlhDO015QmhCSjtRekJxTU0sZ0JDbEJvQixFd0J4SnZCLEVBQUE7SXpCWEM7TXlCaEJKO1F6QndNTSxnQkNyQjBCLEV3QnhKN0IsRUFBQTtJekJYQztNeUJoQko7UXpCMk1NLGdCQ3hCZ0MsRXdCeEpuQyxFQUFBO0lBM0JIO01BbUJNLHNCQUFxQjtNQUNyQixxQkFBb0I7TUFDcEIsb0JBQW1CO01BQ25CLGtCQUFpQixFQUNsQjtJQXZCTDtNQXlCTSxXeEJxRFEsRXdCcERUO0VBMUJMO0l6QmdNSSxnQkNaVTtJd0J0SlYsZXhCRGE7SXdCRWIsZ0JBQWUsRUFvQ2hCO0l6Qm5EQztNeUJoQko7UXpCa01NLGdCQ2RjLEV3QmpIakIsRUFBQTtJekJuREM7TXlCaEJKO1F6QnFNTSxnQkNqQm9CLEV3QmpIdkIsRUFBQTtJekJuREM7TXlCaEJKO1F6QndNTSxnQkNwQjBCLEV3QmpIN0IsRUFBQTtJekJuREM7TXlCaEJKO1F6QjJNTSxnQkN2QmdDLEV3QmpIbkMsRUFBQTtJQW5FSDtNekJnTUksZ0JDVlU7TXdCcEpSLGV4Qm5CVztNd0JvQlgsZ0JBQWU7TUFDZix1Q0FBOEI7TUFBOUIsK0JBQThCLEVBYS9CO016QmpDRDtReUJoQko7VXpCa01NLGdCQ1pjLEV3QnJJZixFQUFBO016QmpDRDtReUJoQko7VXpCcU1NLGdCQ2ZvQixFd0JySXJCLEVBQUE7TXpCakNEO1F5QmhCSjtVekJ3TU0sZ0JDbEIwQixFd0JySTNCLEVBQUE7TXpCakNEO1F5QmhCSjtVekIyTU0sZ0JDckJnQyxFd0JySWpDLEVBQUE7TUFqREw7UUFzQ1EsZXhCdEJTO1F3QnVCVCxXQUFVLEVBQ1g7TUF4Q1A7UUEyQ1EsZXhCM0JTLEV3QmdDVjtRQWhEUDtVQTZDVSw2Q0FBb0M7a0JBQXBDLHFDQUFvQztVQUNwQyxjeEI5Qk8sRXdCK0JSO0lBL0NUO016QmdNSSxnQkNWVTtNd0JsSVIsMEJBQXlCLEVBQzFCO016QnJDRDtReUJoQko7VXpCa01NLGdCQ1pjLEV3QmpJZixFQUFBO016QnJDRDtReUJoQko7VXpCcU1NLGdCQ2ZvQixFd0JqSXJCLEVBQUE7TXpCckNEO1F5QmhCSjtVekJ3TU0sZ0JDbEIwQixFd0JqSTNCLEVBQUE7TXpCckNEO1F5QmhCSjtVekIyTU0sZ0JDckJnQyxFd0JqSWpDLEVBQUE7SUFyREw7TXpCZ01JLGdCQ1ZVLEV3QjlIVDtNekJ4Q0Q7UXlCaEJKO1V6QmtNTSxnQkNaYyxFd0I5SGYsRUFBQTtNekJ4Q0Q7UXlCaEJKO1V6QnFNTSxnQkNmb0IsRXdCOUhyQixFQUFBO016QnhDRDtReUJoQko7VXpCd01NLGdCQ2xCMEIsRXdCOUgzQixFQUFBO016QnhDRDtReUJoQko7VXpCMk1NLGdCQ3JCZ0MsRXdCOUhqQyxFQUFBO0lBeERMO01BMERNLGV4QjdCVztNd0I4QlgsZ0JBQWU7TUFDZixlQUFjO01BQ2QsdUNBQThCO01BQTlCLCtCQUE4QixFQUsvQjtNQWxFTDtRQWdFUSxleEJqRFMsRXdCa0RWO0VBakVQO0lBcUVJLHFCQXBFd0I7SUFxRXhCLG9CQUFtQjtJQUNuQixrQkFyRXFCO0lBc0VyQixrQkFBaUI7SUFDakIsWUFBVyxFQThEWjtJekI1SEM7TXlCWEo7UUEyRU0sb0JBQW1CLEVBNER0QixFQUFBO0l6QnZIQztNeUJoQko7UUE4RU0sbUJBQWtCLEVBeURyQixFQUFBO0lBdklIO01BaUZNLHVCQUFzQixFQVV2QjtNQTNGTDtRQW1GUSwwQkFBbUI7WUFBbkIsdUJBQW1CO2dCQUFuQixvQkFBbUI7UUFDbkIscUJBQWE7UUFBYixxQkFBYTtRQUFiLGNBQWE7UUFDYixzQkFBeUI7WUFBekIsbUJBQXlCO2dCQUF6QiwwQkFBeUI7UUFDekIsbUJBQWtCLEVBSW5CO1F6QjFFSDtVeUJoQko7WUF3RlUsb0JBQW1CLEVBRXRCLEVBQUE7SUExRlA7TUE2Rk0sc0JBQXNDLEVBQ3ZDO0lBOUZMO01BZ0dNLGdCQUFlO01BQ2Ysc0JBQXFCLEVBSXRCO01BckdMO1FBbUdRLDBDQUFpQztnQkFBakMsa0NBQWlDLEVBQ2xDO0lBcEdQO01BdUdNLGN4QjFFVztNd0IyRVgsWUFBVztNQUNYLGlCQUFnQjtNQUNoQixzQ0FBNkI7TUFBN0IsOEJBQTZCO01BQzdCLFdBQVUsRUFDWDtJQTVHTDtNQThHTSxZQUFXO01BQ1gsaUJBQWdCO01BQ2hCLG9CQUFtQjtNQUNuQixpQkFBZ0IsRUFDakI7SUFsSEw7TUFvSE0sb0JBQW1CLEVBVXBCO016Qm5IRDtReUJYSjtVQXVIUSxjQUFhO1VBQ2IsNEJBQTJCLEVBTTlCO1VBOUhMO1lBMEhVLHNCQUFxQjtZQUNyQixzQkFBaUMsRUFDbEMsRUFBQTtJQTVIVDtNekJnTUksZ0JDWFU7TXdCcERSLGV4QnBHVztNd0JxR1gsZUFBYztNQUNkLG9CQUFtQjtNQUNuQixtQkFBa0I7TUFDbEIsOEJBQTZCLEVBQzlCO016QnRIRDtReUJoQko7VXpCa01NLGdCQ2JjLEV3Qi9DZixFQUFBO016QnRIRDtReUJoQko7VXpCcU1NLGdCQ2hCb0IsRXdCL0NyQixFQUFBO016QnRIRDtReUJoQko7VXpCd01NLGdCQ25CMEIsRXdCL0MzQixFQUFBO016QnRIRDtReUJoQko7VXpCMk1NLGdCQ3RCZ0MsRXdCL0NqQyxFQUFBO0VBdElMO0lBeUlJLHFCQUFvQjtJQUNwQixtQkFBa0I7SUFDbEIsdUJBQXNCLEVBQ3ZCO0VBNUlIO0lBOElJLHFCQUFvQjtJQUNwQixtQkFBa0I7SUFDbEIsdUJBQXNCLEVBQ3ZCO0VBakpIO0lBbUpJLGFBQVk7SUFDWix1QkFBc0I7SUFDdEIsWUFBVyxFQVlaO0l6QnRKQztNeUJYSjtRQXVKTSxjQUFhLEVBVWhCLEVBQUE7SXpCakpDO015QmhCSjtRQTBKTSxtQkFBa0I7UUFDbEIsWUFBVyxFQU1kLEVBQUE7SUFqS0g7TUE4Sk0sYUFBWTtNQUNaLFlBQVcsRUFDWjtFQWhLTDtJQW1LSSxxQkFsS3dCO0lBbUt4QixtQkFBa0I7SUFDbEIsb0JBQW1CO0lBQ25CLGtCQXBLcUIsRUF3S3RCO0l6Qi9KQztNeUJYSjtRQXdLTSxtQkFBa0IsRUFFckIsRUFBQTtFQTFLSDtJQTRLSSxpQ3hCbEppQixFd0I2SmxCO0lBdkxIO01BOEtNLGlCQUFnQixFQUNqQjtJQS9LTDs7TUFtTFEsV0FBVTtNQUNWLHlDQUFnQztNQUFoQyxpQ0FBZ0MsRUFDakM7RUFyTFA7SUF5TEkscUJBeEx3QjtJQXlMeEIsbUJBQWtCO0lBQ2xCLG9CQUFtQjtJQUNuQixrQkExTHFCO0lBMkxyQixtQkFBa0IsRUFJbkI7SUFqTUg7TUErTE0sd0JBQXVCLEVBQ3hCO0VBaE1MO0lBbU1JLG1CQUFrQixFQXlCbkI7SUE1Tkg7TUFxTU0sWUFBVztNQUNYLGlCQUFnQjtNQUNoQixvQkFBbUI7TUFDbkIsaUJBQWdCLEVBQ2pCO0lBek1MO01BMk1NLGdCQUFlO01BQ2YsZUFBYztNQUNkLGFBQVk7TUFDWixRQUFPO01BQ1AsV0FBVTtNQUNWLG1CQUFrQjtNQUNsQixPQUFNO01BQ04sWUFBVztNQUNYLFdBQVUsRUFRWDtNQWpCRDtRQVdJLGdCQUFlLEVBQ2hCO01BdE5QO1FBd05RLHlCQUFnQjtnQkFBaEIsaUJBQWdCO1FBQ2hCLGV4QnpNUyxFd0IwTVY7RUExTlA7SUE4TkksYUFBWTtJQUNaLHFCQTlOd0I7SUErTnhCLG1CQUFrQjtJQUNsQixvQkFBbUI7SUFDbkIsa0JBaE9xQjtJQWlPckIsbUJBQWtCO0lBQ2xCLGFBQVksRUFTYjtJekJsT0M7TXlCWEo7UUFzT00sbUJBQWtCO1FBQ2xCLG9CQUFtQixFQU10QixFQUFBO0lBN09IO01BME9NLGtCQUFpQjtNQUNqQixtQkFBa0IsRUFDbkI7O0FBSUw7RUFFSSxtQkFBa0IsRUFDbkI7O0FBSEg7RUFLSSwwQkFBeUI7RUFDekIsMkJBQTBCO0VBQzFCLHNCQUFxQjtFQUNyQixtQkFBa0IsRUFDbkI7O0FBSUg7RUFDRSw4QnhCcE9tQixFd0JxT3BCOztBQUVEO0VBQ0UsMEJ4Qi9LZTtFd0JnTGYsZUFBYyxFQUNmOztBQUVEO0VBQ0Usb0JBQW1CLEVBQ3BCOztBQUVEOzs7RUFJSSx1QnhCNUxVLEV3QjZMWDs7QUN0U0g7RUFDRSwwQkFBbUI7TUFBbkIsdUJBQW1CO1VBQW5CLG9CQUFtQjtFQUNuQixxQkFBYTtFQUFiLHFCQUFhO0VBQWIsY0FBYTtFQUNiLDZCQUFzQjtFQUF0Qiw4QkFBc0I7TUFBdEIsMkJBQXNCO1VBQXRCLHVCQUFzQjtFQUN0QixvQkFBbUI7RUFDbkIsaUJBQWdCLEVBeUJqQjtFMUJTRztJMEJ2Q0o7TUFPSSxxQkFBb0I7TUFDcEIsaUJBQWdCLEVBc0JuQixFQUFBO0VBOUJEO0kxQnVOSSxnQkNmVTtJeUI1TFYsZXpCd0NhO0l5QnZDYixtQnpCMEpZO0l5QnpKWixxQkFBb0I7SUFDcEIsZ0JBQWU7SUFDZixtQkFBa0IsRUFDbkI7STFCc0JDO00wQnZDSjtRMUJ5Tk0sZ0JDakJjLEV5QnZMakIsRUFBQTtJMUJzQkM7TTBCdkNKO1ExQjROTSxnQkNwQm9CLEV5QnZMdkIsRUFBQTtJMUJzQkM7TTBCdkNKO1ExQitOTSxnQkN2QjBCLEV5QnZMN0IsRUFBQTtJMUJzQkM7TTBCdkNKO1ExQmtPTSxnQkMxQmdDLEV5QnZMbkMsRUFBQTtFQWpCSDtJQW1CSSxjQUFhO0lBQ2IsYUFBWSxFQUtiO0kxQmNDO00wQnZDSjtRQXNCTSxjQUFhO1FBQ2IsYUFBWSxFQUVmLEVBQUE7RUF6Qkg7SUEyQkksbUJBQWtCO0lBQ2xCLG1CQUFrQixFQUNuQjs7QUM3Qkg7RUFFSSxnQkFBZSxFQUNoQjs7QUFHSDtFM0IrSkksbUNBQWtDO0VBQ2xDLG9DQUFtQztFMkI5SnJDLGUxQjRDZTtFMEIzQ2YsbUJBQWtCO0VBQ2xCLHlGeEJxQ3dELEV3QnBDekQ7O0FBT0Q7Ozs7Ozs7RUFRSSxtQkFBa0IsRUFDbkI7O0FBVEg7RUFXSSxtQjFCeUlNLEUwQnhJUDs7QUFaSDtFM0JxTUksZ0JDekJVLEUwQjVKVDtFM0JLRDtJMkJyQko7TTNCdU1NLGdCQzNCYyxFMEI1SmYsRUFBQTtFM0JLRDtJMkJyQko7TTNCME1NLGdCQzlCb0IsRTBCNUpyQixFQUFBO0UzQktEO0kyQnJCSjtNM0I2TU0sZ0JDakMwQixFMEI1SjNCLEVBQUE7RTNCS0Q7STJCckJKO00zQmdOTSxpQkNwQ2lDLEUwQjVKbEMsRUFBQTs7QUFoQkw7RTNCcU1JLGdCQ3hCVSxFMEI3SlQ7RTNCS0Q7STJCckJKO00zQnVNTSxnQkMxQmMsRTBCN0pmLEVBQUE7RTNCS0Q7STJCckJKO00zQjBNTSxnQkM3Qm9CLEUwQjdKckIsRUFBQTtFM0JLRDtJMkJyQko7TTNCNk1NLGdCQ2hDMEIsRTBCN0ozQixFQUFBO0UzQktEO0kyQnJCSjtNM0JnTk0sZ0JDbkNnQyxFMEI3SmpDLEVBQUE7O0FBaEJMO0UzQnFNSSxnQkN2QlUsRTBCOUpUO0UzQktEO0kyQnJCSjtNM0J1TU0sZ0JDekJjLEUwQjlKZixFQUFBO0UzQktEO0kyQnJCSjtNM0IwTU0sZ0JDNUJvQixFMEI5SnJCLEVBQUE7RTNCS0Q7STJCckJKO00zQjZNTSxnQkMvQjBCLEUwQjlKM0IsRUFBQTtFM0JLRDtJMkJyQko7TTNCZ05NLGdCQ2xDZ0MsRTBCOUpqQyxFQUFBOztBQWhCTDtFM0JxTUksZ0JDdEJVLEUwQi9KVDtFM0JLRDtJMkJyQko7TTNCdU1NLGdCQ3hCYyxFMEIvSmYsRUFBQTtFM0JLRDtJMkJyQko7TTNCME1NLGdCQzNCb0IsRTBCL0pyQixFQUFBO0UzQktEO0kyQnJCSjtNM0I2TU0sZ0JDOUIwQixFMEIvSjNCLEVBQUE7RTNCS0Q7STJCckJKO00zQmdOTSxnQkNqQ2dDLEUwQi9KakMsRUFBQTs7QUFoQkw7RTNCcU1JLGdCQ3JCVSxFMEJoS1Q7RTNCS0Q7STJCckJKO00zQnVNTSxnQkN2QmMsRTBCaEtmLEVBQUE7RTNCS0Q7STJCckJKO00zQjBNTSxnQkMxQm9CLEUwQmhLckIsRUFBQTtFM0JLRDtJMkJyQko7TTNCNk1NLGdCQzdCMEIsRTBCaEszQixFQUFBO0UzQktEO0kyQnJCSjtNM0JnTk0sZ0JDaENnQyxFMEJoS2pDLEVBQUE7O0FBaEJMO0UzQnFNSSxnQkNwQlUsRTBCaktUO0UzQktEO0kyQnJCSjtNM0J1TU0sZ0JDdEJjLEUwQmpLZixFQUFBO0UzQktEO0kyQnJCSjtNM0IwTU0sZ0JDekJvQixFMEJqS3JCLEVBQUE7RTNCS0Q7STJCckJKO00zQjZNTSxnQkM1QjBCLEUwQmpLM0IsRUFBQTtFM0JLRDtJMkJyQko7TTNCZ05NLGdCQy9CZ0MsRTBCaktqQyxFQUFBOztBQWhCTDtFM0JxTUksZ0JDbkJVLEUwQmxLVDtFM0JLRDtJMkJyQko7TTNCdU1NLGdCQ3JCYyxFMEJsS2YsRUFBQTtFM0JLRDtJMkJyQko7TTNCME1NLGdCQ3hCb0IsRTBCbEtyQixFQUFBO0UzQktEO0kyQnJCSjtNM0I2TU0sZ0JDM0IwQixFMEJsSzNCLEVBQUE7RTNCS0Q7STJCckJKO00zQmdOTSxnQkM5QmdDLEUwQmxLakMsRUFBQTs7QUFoQkw7RTNCcU1JLGdCQ2hCVSxFMEJyS1Q7RTNCS0Q7STJCckJKO00zQnVNTSxnQkNsQmMsRTBCcktmLEVBQUE7RTNCS0Q7STJCckJKO00zQjBNTSxnQkNyQm9CLEUwQnJLckIsRUFBQTtFM0JLRDtJMkJyQko7TTNCNk1NLGdCQ3hCMEIsRTBCckszQixFQUFBO0UzQktEO0kyQnJCSjtNM0JnTk0sZ0JDM0JnQyxFMEJyS2pDLEVBQUE7O0FBaEJMO0UzQnFNSSxnQkNmVSxFMEJ0S1Q7RTNCS0Q7STJCckJKO00zQnVNTSxnQkNqQmMsRTBCdEtmLEVBQUE7RTNCS0Q7STJCckJKO00zQjBNTSxnQkNwQm9CLEUwQnRLckIsRUFBQTtFM0JLRDtJMkJyQko7TTNCNk1NLGdCQ3ZCMEIsRTBCdEszQixFQUFBO0UzQktEO0kyQnJCSjtNM0JnTk0sZ0JDMUJnQyxFMEJ0S2pDLEVBQUE7O0FBaEJMO0UzQnFNSSxnQkNkVSxFMEJ2S1Q7RTNCS0Q7STJCckJKO00zQnVNTSxnQkNoQmMsRTBCdktmLEVBQUE7RTNCS0Q7STJCckJKO00zQjBNTSxnQkNuQm9CLEUwQnZLckIsRUFBQTtFM0JLRDtJMkJyQko7TTNCNk1NLGdCQ3RCMEIsRTBCdkszQixFQUFBO0UzQktEO0kyQnJCSjtNM0JnTk0sZ0JDekJnQyxFMEJ2S2pDLEVBQUE7O0FBaEJMO0UzQnFNSSxnQkNiVSxFMEJ4S1Q7RTNCS0Q7STJCckJKO00zQnVNTSxnQkNmYyxFMEJ4S2YsRUFBQTtFM0JLRDtJMkJyQko7TTNCME1NLGdCQ2xCb0IsRTBCeEtyQixFQUFBO0UzQktEO0kyQnJCSjtNM0I2TU0sZ0JDckIwQixFMEJ4SzNCLEVBQUE7RTNCS0Q7STJCckJKO00zQmdOTSxnQkN4QmdDLEUwQnhLakMsRUFBQTs7QUFoQkw7RTNCcU1JLGdCQ1pVLEUwQnpLVDtFM0JLRDtJMkJyQko7TTNCdU1NLGdCQ2RjLEUwQnpLZixFQUFBO0UzQktEO0kyQnJCSjtNM0IwTU0sZ0JDakJvQixFMEJ6S3JCLEVBQUE7RTNCS0Q7STJCckJKO00zQjZNTSxnQkNwQjBCLEUwQnpLM0IsRUFBQTtFM0JLRDtJMkJyQko7TTNCZ05NLGdCQ3ZCZ0MsRTBCektqQyxFQUFBOztBQWhCTDtFM0JxTUksZ0JDWFUsRTBCMUtUO0UzQktEO0kyQnJCSjtNM0J1TU0sZ0JDYmMsRTBCMUtmLEVBQUE7RTNCS0Q7STJCckJKO00zQjBNTSxnQkNoQm9CLEUwQjFLckIsRUFBQTtFM0JLRDtJMkJyQko7TTNCNk1NLGdCQ25CMEIsRTBCMUszQixFQUFBO0UzQktEO0kyQnJCSjtNM0JnTk0sZ0JDdEJnQyxFMEIxS2pDLEVBQUE7O0FBaEJMO0UzQnFNSSxnQkNWVSxFMEIzS1Q7RTNCS0Q7STJCckJKO00zQnVNTSxnQkNaYyxFMEIzS2YsRUFBQTtFM0JLRDtJMkJyQko7TTNCME1NLGdCQ2ZvQixFMEIzS3JCLEVBQUE7RTNCS0Q7STJCckJKO00zQjZNTSxnQkNsQjBCLEUwQjNLM0IsRUFBQTtFM0JLRDtJMkJyQko7TTNCZ05NLGdCQ3JCZ0MsRTBCM0tqQyxFQUFBOztBQVFMO0UzQjZLSSxnQkNWVTtFMEJqS1osMEJBQW1CO01BQW5CLHVCQUFtQjtVQUFuQixvQkFBbUI7RUFDbkIscUJBQWE7RUFBYixxQkFBYTtFQUFiLGNBQWE7RUFDYixtQjFCd0hRLEUwQjdHVDtFM0JsQkc7STJCR0o7TTNCK0tNLGdCQ1pjLEUwQnBKbkIsRUFBQTtFM0JsQkc7STJCR0o7TTNCa0xNLGdCQ2ZvQixFMEJwSnpCLEVBQUE7RTNCbEJHO0kyQkdKO00zQnFMTSxnQkNsQjBCLEUwQnBKL0IsRUFBQTtFM0JsQkc7STJCR0o7TTNCd0xNLGdCQ3JCZ0MsRTBCcEpyQyxFQUFBO0VBZkQ7SUFNSSxpREFBd0M7WUFBeEMseUNBQXdDLEVBQ3pDO0VBUEg7SUFTSSxlMUJiYTtJMEJjYiwyQkFBMEIsRUFDM0I7RUFYSDtJQWFJLG1CQUFrQixFQUNuQjs7QUFHSDtFM0I0SkksZ0JDVlU7RTBCaEpaLGUxQlRlO0UwQlVmLG1CMUJ3R1E7RTBCdkdSLG9CQUFtQjtFQUNuQixpQkFBZ0IsRUFJakI7RTNCN0JHO0kyQm9CSjtNM0I4Sk0sZ0JDWmMsRTBCekluQixFQUFBO0UzQjdCRztJMkJvQko7TTNCaUtNLGdCQ2ZvQixFMEJ6SXpCLEVBQUE7RTNCN0JHO0kyQm9CSjtNM0JvS00sZ0JDbEIwQixFMEJ6SS9CLEVBQUE7RTNCN0JHO0kyQm9CSjtNM0J1S00sZ0JDckJnQyxFMEJ6SXJDLEVBQUE7RUFURDtJQU9JLGlCQUFnQixFQUNqQjs7QUFHSDtFM0JpSkksZ0JDdEJVO0UwQnpIWixlMUJsQ2U7RTBCbUNmLGlCQUFnQjtFQUNoQixtQjFCMEZRO0UwQnpGUixtQkFBa0I7RUFDbEIsZ0JBQWU7RUFDZixtQkFBa0I7RUFDbEIsWUFBVyxFQU9aO0UzQjlDRztJMkIrQko7TTNCbUpNLGdCQ3hCYyxFMEI1R25CLEVBQUE7RTNCOUNHO0kyQitCSjtNM0JzSk0sZ0JDM0JvQixFMEI1R3pCLEVBQUE7RTNCOUNHO0kyQitCSjtNM0J5Sk0sZ0JDOUIwQixFMEI1Ry9CLEVBQUE7RTNCOUNHO0kyQitCSjtNM0I0Sk0sZ0JDakNnQyxFMEI1R3JDLEVBQUE7RUFOQztJQUNFLGdCQUFlLEVBQ2hCO0VBQ0Q7SUFDRSxZMUJzQlUsRTBCckJYOztBQUlEO0VBREY7SUFFSSxjQUFhLEVBRWhCLEVBQUE7O0FBRUQ7RUFDRSxxQkFBYTtFQUFiLHFCQUFhO0VBQWIsY0FBYTtFQUNiLG9CQUFtQixFQWVwQjtFM0J2RUc7STJCc0RKO01BSUksb0JBQW1CLEVBYXRCLEVBQUE7RUFqQkQ7STNCMEhJLGdCQ1pVO0kwQnJHVixlMUJqRGE7STBCa0RiLGlCQUFnQjtJQUNoQixzQkFBcUIsRUFLdEI7STNCdEVDO00yQnNESjtRM0I0SE0sZ0JDZGMsRTBCOUZqQixFQUFBO0kzQnRFQztNMkJzREo7UTNCK0hNLGdCQ2pCb0IsRTBCOUZ2QixFQUFBO0kzQnRFQztNMkJzREo7UTNCa0lNLGdCQ3BCMEIsRTBCOUY3QixFQUFBO0kzQnRFQztNMkJzREo7UTNCcUlNLGdCQ3ZCZ0MsRTBCOUZuQyxFQUFBO0lBSkM7TUFaSjtRQWFNLFkxQjFFUTtRMEIyRVIsZUFBYyxFQUVqQixFQUFBOztBQUdIO0VBQ0Usb0JBQW1CLEVBSXBCO0UzQjlFRztJMkJ5RUo7TUFHSSxvQkFBbUIsRUFFdEIsRUFBQTs7QUFFRDtFM0JnR0ksZ0JDbkJVO0UwQjNFWixtQjFCNkNRO0UwQjVDUixtQkFBa0I7RUFDbEIsbUJBQWtCLEVBV25CO0UzQi9GRztJMkJnRko7TTNCa0dNLGdCQ3JCYyxFMEI5RG5CLEVBQUE7RTNCL0ZHO0kyQmdGSjtNM0JxR00sZ0JDeEJvQixFMEI5RHpCLEVBQUE7RTNCL0ZHO0kyQmdGSjtNM0J3R00sZ0JDM0IwQixFMEI5RC9CLEVBQUE7RTNCL0ZHO0kyQmdGSjtNM0IyR00sZ0JDOUJnQyxFMEI5RHJDLEVBQUE7RUFmRDtJM0JnR0ksZ0JDZlU7STBCMUVWLGlCQUFnQixFQUNqQjtJM0J4RkM7TTJCZ0ZKO1EzQmtHTSxnQkNqQmMsRTBCekVqQixFQUFBO0kzQnhGQztNMkJnRko7UTNCcUdNLGdCQ3BCb0IsRTBCekV2QixFQUFBO0kzQnhGQztNMkJnRko7UTNCd0dNLGdCQ3ZCMEIsRTBCekU3QixFQUFBO0kzQnhGQztNMkJnRko7UTNCMkdNLGdCQzFCZ0MsRTBCekVuQyxFQUFBO0VBQ0Q7SUFDRSxtQkFBa0IsRUFJbkI7STNCOUZDO00yQnlGRjtRQUdJLG1CQUFrQixFQUVyQixFQUFBOztBQUdIO0VBQ0UsbUJBQWtCLEVBQ25COztBQ3pJRDtFQUNFLHNCQUFxQjtFQUNyQixjM0JpRGU7RTJCaERmLGFBQVk7RUFDWixzRUFBcUQ7RUFBckQsOERBQXFEO0VBQXJELHNEQUFxRDtFQUFyRCxzRkFBcUQ7RUFDckQsWUFBVyxFQWVaO0VBZEM7SUFDRSxjM0I4QmEsRTJCekJkO0lBTkQ7TUFJSSxjM0I0QlcsRTJCM0JaO0VBRUg7SUFJSSxXM0JnQ1csRTJCL0JaOztBQUtMO0VBQ0UsVzNCZ0ZZLEUyQnJFYjtFQVZDO0lBQ0UsOEJBQTZCO0lBQzdCLFczQjZFVTtJMkI1RVYsa0RBQXlDO0lBQXpDLDBDQUF5QyxFQU0xQztJQVREO01BTUksMEIzQk1XO00yQkxYLFczQndFUSxFMkJ2RVQ7O0FBSUw7RUFDRSxjM0JOZSxFMkJVaEI7RUFMRDtJQUdJ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O0U2Qi9JSDtJQUlNLG1CNUJzREk7STRCckRKLHNCQUFxQjtJQUNyQixrQkFBaUI7SUFDakIsbUJBQWtCLEVBVW5CO0lBakJMO01BU1EsYUFBUztNQUNULGVBQWM7TUFDZCxRQUFPO01BQ1AsbUJBQWtCLEVBQ25CO0lBYlA7TUFlUSxrQkFBaUIsRUFDbEI7O0FDNUhQO0VBR00sb0I3QjhFVyxFNkI3RVo7O0FBSkw7RUFPSSxlN0IwQmE7RTZCekJiLGlCQUFnQixFQUNqQjs7QUFUSDtFQVdJLDBCQUFtQjtNQUFuQix1QkFBbUI7VUFBbkIsb0JBQW1CLEVBSXBCO0VBZkg7SUFhTSxnQkFBZSxFQUNoQjs7QUFkTDtFQWlCSSx3QkFBZTtVQUFmLGdCQUFlLEVBQ2hCOztBQWxCSDtFQW9CSSxlQUFjO0VBQ2QsaUJBQWdCO0VBQ2hCLFlBQVcsRUFDWjs7QUF2Qkg7RUF5Qkksb0JBQW1CLEVBQ3BCOztBQTFCSDtFQTRCSSxpQkFBZ0IsRUFDakI7O0FBR0g7RUFDRSx5QkFBdUI7TUFBdkIsc0JBQXVCO1VBQXZCLHdCQUF1QixFQVl4QjtFQWJEO0lBSUksaUJBQWdCLEVBQ2pCO0VBTEg7SUFPSSxpQkFBZ0I7SUFDaEIsa0JBQWlCLEVBSWxCO0lBWkg7TUFVTSxpQkFBZ0IsRUFDakI7O0FBSUw7RUFDRSxnQkFBZSxFQUNoQiIsImZpbGUiOiJjb21iaW5lZC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBodHRwOi8vbWV5ZXJ3ZWIuY29tL2VyaWMvdG9vbHMvY3NzL3Jlc2V0L1xyXG4gICB2Mi4wIHwgMjAxMTAxMjZcclxuICAgTGljZW5zZTogbm9uZSAocHVibGljIGRvbWFpbilcclxuKi9cclxuXHJcbmh0bWwsIGJvZHksIGRpdiwgc3BhbiwgYXBwbGV0LCBvYmplY3QsIGlmcmFtZSxcclxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCwgYmxvY2txdW90ZSwgcHJlLFxyXG5hLCBhYmJyLCBhY3JvbnltLCBhZGRyZXNzLCBiaWcsIGNpdGUsIGNvZGUsXHJcbmRlbCwgZGZuLCBlbSwgaW1nLCBpbnMsIGtiZCwgcSwgcywgc2FtcCxcclxuc21hbGwsIHN0cmlrZSwgc3Ryb25nLCBzdWIsIHN1cCwgdHQsIHZhcixcclxuYiwgdSwgaSwgY2VudGVyLFxyXG5kbCwgZHQsIGRkLCBvbCwgdWwsIGxpLFxyXG5maWVsZHNldCwgZm9ybSwgbGFiZWwsIGxlZ2VuZCxcclxudGFibGUsIGNhcHRpb24sIHRib2R5LCB0Zm9vdCwgdGhlYWQsIHRyLCB0aCwgdGQsXHJcbmFydGljbGUsIGFzaWRlLCBjYW52YXMsIGRldGFpbHMsIGVtYmVkLFxyXG5maWd1cmUsIGZpZ2NhcHRpb24sIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsXHJcbm1lbnUsIG5hdiwgb3V0cHV0LCBydWJ5LCBzZWN0aW9uLCBzdW1tYXJ5LFxyXG50aW1lLCBtYXJrLCBhdWRpbywgdmlkZW8ge1xyXG4gIG1hcmdpbjogMDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIGJvcmRlcjogMDtcclxuICBmb250LXNpemU6IDEwMCU7XHJcbiAgZm9udDogaW5oZXJpdDtcclxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XHJcbn1cclxuLyogSFRNTDUgZGlzcGxheS1yb2xlIHJlc2V0IGZvciBvbGRlciBicm93c2VycyAqL1xyXG5hcnRpY2xlLCBhc2lkZSwgZGV0YWlscywgZmlnY2FwdGlvbiwgZmlndXJlLFxyXG5mb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtZW51LCBuYXYsIHNlY3Rpb24ge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcbmJvZHkge1xyXG4gIGxpbmUtaGVpZ2h0OiAxO1xyXG59XHJcbm9sLCB1bCB7XHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxufVxyXG5ibG9ja3F1b3RlLCBxIHtcclxuICBxdW90ZXM6IG5vbmU7XHJcbn1cclxuYmxvY2txdW90ZTpiZWZvcmUsIGJsb2NrcXVvdGU6YWZ0ZXIsXHJcbnE6YmVmb3JlLCBxOmFmdGVyIHtcclxuICBjb250ZW50OiAnJztcclxuICBjb250ZW50OiBub25lO1xyXG59XHJcbnRhYmxlIHtcclxuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xyXG4gIGJvcmRlci1zcGFjaW5nOiAwO1xyXG59XHJcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcbkBrZXlmcmFtZXMgZmxhc2gge1xuICAwJSxcbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNCk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfSB9XG5cbkBrZXlmcmFtZXMgcHVsc2Uge1xuICAwJSxcbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxuICAzMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yKTsgfSB9XG5cbkBrZXlmcmFtZXMgc2hha2Uge1xuICAwJSxcbiAgNTAlLFxuICA4NSUsXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cbiAgNTUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMHB4LCAwLCAwKTsgfVxuICA2NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTE1cHgsIDAsIDApOyB9XG4gIDc1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7IH1cbiAgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwcHgsIDAsIDApOyB9XG4gIDcwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxNXB4LCAwLCAwKTsgfVxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHRhZGEtcGF1c2Uge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOyB9XG4gIDUlLFxuICAxMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjksIDAuOSwgMC45KSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7IH1cbiAgMTUlLFxuICAyNSUsXG4gIDM1JSxcbiAgNDUlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7IH1cbiAgMjAlLFxuICAzMCUsXG4gIDQwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTsgfVxuICA1MCUsXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTsgfSB9XG5cbkBrZXlmcmFtZXMgdGVldGVyLXJpZ2h0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApOyB9XG4gIDUlLFxuICA5NSUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDIwZGVnKTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTsgfSB9XG5cbkBrZXlmcmFtZXMgdXBkYXRpbmcge1xuICAwJSxcbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogLjU7IH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAuMjU7IH0gfVxuXG4uYmFkZ2Uge1xuICBmb250LXNpemU6IDEwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5MzkxOTE7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxldHRlci1zcGFjaW5nOiAuMDVlbTtcbiAgbWFyZ2luLWxlZnQ6IC4yNWVtO1xuICBwYWRkaW5nOiAuMjVlbSAuNDVlbSAuMjVlbSAuNWVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB2ZXJ0aWNhbC1hbGlnbjogMXB4O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAuYmFkZ2Uge1xuICAgICAgZm9udC1zaXplOiAxMHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5iYWRnZSB7XG4gICAgICBmb250LXNpemU6IDExcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmJhZGdlIHtcbiAgICAgIGZvbnQtc2l6ZTogMTFweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmJhZGdlIHtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDsgfSB9XG4gIEBtZWRpYSBwcmludCB7XG4gICAgLmJhZGdlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDtcbiAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IC4xZW07XG4gICAgICBwYWRkaW5nLXRvcDogLjFlbTsgfSB9XG4gIC5iYWRnZTpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICBkZCA+IC5iYWRnZTpmaXJzdC1jaGlsZCB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogLS4zZW07IH1cbiAgLmJhZGdlLS1jb21wbGV0ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNjYjg3ODsgfVxuICAuYmFkZ2UtLWVycm9yIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWEzZjNmOyB9XG4gIC5iYWRnZS0tZXhwaXJlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NjYzsgfVxuICAuYmFkZ2UtLWZlYXR1cmVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhN2UwOyB9XG4gIC5iYWRnZS0tcHYge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM1YTYwNjY7XG4gICAgY29sb3I6ICM1YTYwNjY7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMDYyNWVtO1xuICAgIHBhZGRpbmc6IC4yNWVtOyB9XG4gICAgZGQgPiAuYmFkZ2UtLXB2OmZpcnN0LWNoaWxkIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBpbmhlcml0OyB9XG4gIC5iYWRnZS0tc3BlY2lhbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2NjsgfVxuXG4ubmV3LWJhZGdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMWY0NTtcbiAgY29sb3I6ICNmZmY7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjNlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogLjRlbSAuOGVtOyB9XG4gIC5uZXctYmFkZ2UtLXNwZWNpYWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmUwZDg7XG4gICAgY29sb3I6ICMwMDFmNDU7IH1cblxuLmJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwYTdlMDtcbiAgYm9yZGVyOiAwO1xuICBib3gtc2hhZG93OiBub25lO1xuICBjb2xvcjogI2ZmZjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBcIlByb3hpbWEgTm92YSBXMDFcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBDYWxpYnJpLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwLjkzZW0gMS42N2VtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdHJhbnNpdGlvbjogY29sb3IgLjJzIGVhc2Utb3V0LCBib3JkZXIgLjJzIGVhc2Utb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLW91dDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgLmJ1dHRvbiB7XG4gICAgICBmb250LXNpemU6IDEzcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmJ1dHRvbiB7XG4gICAgICBmb250LXNpemU6IDE0cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmJ1dHRvbiB7XG4gICAgICBmb250LXNpemU6IDE0cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5idXR0b24ge1xuICAgICAgZm9udC1zaXplOiAxNXB4OyB9IH1cbiAgLmJ1dHRvbjo6c2VsZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICAuYnV0dG9uOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNWI3YTsgfVxuICAuYnV0dG9uOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAwIDEwcHggMTBweCAtMTBweCByZ2JhKDAsIDAsIDAsIDAuMzUpOyB9XG4gIC5idXR0b246aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDZkYmE7IH1cblxuLmJ1dHRvbi0tZGlzY3JldGlvbmFyeSB7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjMDBhN2UwO1xuICBwYWRkaW5nOiAxLjJlbSAxLjkzZW07IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgIC5idXR0b24tLWRpc2NyZXRpb25hcnkge1xuICAgICAgZm9udC1zaXplOiAxMXB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5idXR0b24tLWRpc2NyZXRpb25hcnkge1xuICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5idXR0b24tLWRpc2NyZXRpb25hcnkge1xuICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuYnV0dG9uLS1kaXNjcmV0aW9uYXJ5IHtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDsgfSB9XG4gIC5idXR0b24tLWRpc2NyZXRpb25hcnk6Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgdGV4dC1zaGFkb3c6IDAgMnB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMzUpOyB9XG4gIC5idXR0b24tLWRpc2NyZXRpb25hcnk6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjMDA2ZGJhOyB9XG4gIC5idXR0b24tLWRpc2NyZXRpb25hcnkuYnV0dG9uLS1yZXZlcnNlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICAuYnV0dG9uLS1kaXNjcmV0aW9uYXJ5LmJ1dHRvbi0tcmV2ZXJzZWQ6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBjb2xvcjogIzAwYTdlMDsgfVxuXG4uYnV0dG9uLS1yZXZlcnNlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGNvbG9yOiAjMDBhN2UwOyB9XG4gIC5idXR0b24tLXJldmVyc2VkOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBjb2xvcjogIzAwNWI3YTsgfVxuICAuYnV0dG9uLS1yZXZlcnNlZDpmb2N1cyB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBvdXRsaW5lOiAycHggc29saWQgIzAwYTdlMDsgfVxuICAuYnV0dG9uLS1yZXZlcnNlZDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBjb2xvcjogIzAwNmRiYTsgfVxuXG4uYnV0dG9uLS1zcGVjaWFsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y2NjtcbiAgY29sb3I6ICNmZmY7IH1cbiAgLmJ1dHRvbi0tc3BlY2lhbDphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAuYnV0dG9uLS1zcGVjaWFsOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M1MjUyO1xuICAgIGNvbG9yOiAjZmZmOyB9XG5cbi5idXR0b24tLXN0cm9rZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAycHggc29saWQgIzAwYTdlMDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY29sb3I6ICMwMGE3ZTA7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDAuOTNlbSAtIDJweCk7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDAuOTNlbSAtIDJweCk7IH1cbiAgLmJ1dHRvbi0tc3Ryb2tlZDphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogIzAwNWI3YTtcbiAgICBjb2xvcjogIzAwNWI3YTsgfVxuICAuYnV0dG9uLS1zdHJva2VkOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6ICMwMDZkYmE7XG4gICAgY29sb3I6ICMwMDZkYmE7IH1cbiAgLmJ1dHRvbi0tc3Ryb2tlZC5idXR0b24tLXJldmVyc2VkIHtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjZmZmO1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLmJ1dHRvbi0tc3Ryb2tlZC5idXR0b24tLXJldmVyc2VkOmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogI2NjY2NjYztcbiAgICAgIGNvbG9yOiAjY2NjY2NjOyB9XG4gICAgLmJ1dHRvbi0tc3Ryb2tlZC5idXR0b24tLXJldmVyc2VkOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMDBhN2UwO1xuICAgICAgY29sb3I6ICMwMGE3ZTA7IH1cblxuLmJ1dHRvbi1yb3VuZGVkIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBhbGw6IHVuc2V0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAxZjQ1O1xuICBib3JkZXItcmFkaXVzOiAzMHB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjb2xvcjogI2ZmZjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICBwYWRkaW5nOiAwLjdlbSAxLjc1ZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1vdXQ7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgIC5idXR0b24tcm91bmRlZCB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmJ1dHRvbi1yb3VuZGVkIHtcbiAgICAgIGZvbnQtc2l6ZTogMTdweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuYnV0dG9uLXJvdW5kZWQge1xuICAgICAgZm9udC1zaXplOiAxN3B4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuYnV0dG9uLXJvdW5kZWQge1xuICAgICAgZm9udC1zaXplOiAxOHB4OyB9IH1cbiAgLmJ1dHRvbi1yb3VuZGVkOmRpc2FibGVkLCAuYnV0dG9uLXJvdW5kZWQuZGlzYWJsZWQge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgLmJ1dHRvbi1yb3VuZGVkOmZvY3VzLCAuYnV0dG9uLXJvdW5kZWQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzNmQyYjY7IH1cblxuLmJ1dHRvbi1yb3VuZGVkLS1zIHtcbiAgZm9udC1zaXplOiAxMXB4OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAuYnV0dG9uLXJvdW5kZWQtLXMge1xuICAgICAgZm9udC1zaXplOiAxMXB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5idXR0b24tcm91bmRlZC0tcyB7XG4gICAgICBmb250LXNpemU6IDEycHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmJ1dHRvbi1yb3VuZGVkLS1zIHtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmJ1dHRvbi1yb3VuZGVkLS1zIHtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDsgfSB9XG5cbi5idXR0b24tcm91bmRlZC0tc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMnB4IHNvbGlkICMwMDFmNDU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNvbG9yOiAjMDAxZjQ1O1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygwLjdlbSAtIDJweCk7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDAuN2VtIC0gMnB4KTtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIC4ycyBlYXNlLW91dDsgfVxuICAuYnV0dG9uLXJvdW5kZWQtLXNlY29uZGFyeTpmb2N1cywgLmJ1dHRvbi1yb3VuZGVkLS1zZWNvbmRhcnk6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogIzM2ZDJiNjsgfVxuXG4uYnV0dG9uLW5vdGUge1xuICBmb250LXNpemU6IDExcHg7XG4gIGNvbG9yOiAjOTM5MTkxO1xuICBwYWRkaW5nLWxlZnQ6IDEuNWVtOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAuYnV0dG9uLW5vdGUge1xuICAgICAgZm9udC1zaXplOiAxMXB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5idXR0b24tbm90ZSB7XG4gICAgICBmb250LXNpemU6IDEycHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmJ1dHRvbi1ub3RlIHtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmJ1dHRvbi1ub3RlIHtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDsgfSB9XG4gIC5idXR0b24tbm90ZVtkYXRhLWJlaGF2aW9yXSwgLmJ1dHRvbi1ub3RlW2hyZWZdIHtcbiAgICBjb2xvcjogIzAwYTdlMDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgLjJzIGVhc2Utb3V0OyB9XG4gICAgLmJ1dHRvbi1ub3RlW2RhdGEtYmVoYXZpb3JdOmhvdmVyLCAuYnV0dG9uLW5vdGVbaHJlZl06aG92ZXIge1xuICAgICAgY29sb3I6ICMwMDZkYmE7IH1cblxuLmJ1dHRvbi1ub3RlLWNvbnRhaW5lciB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7IH1cblxuLmJ1dHRvbi0tY2VudGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5idXR0b24tLWNlbnRlciB7XG4gICAgICBtYXgtd2lkdGg6IDM3MHB4O1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4uYnV0dG9uLS1mdWxsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5idXR0b24tLWhhcy1sb2FkZXIge1xuICAvKiBzYXNzLWxpbnQ6ZGlzYWJsZS1hbGxcclxuXHJcbiAgZXhhbXBsZTpcclxuXHJcbiAgPGJ1dHRvbiBjbGFzcz1cImJ1dHRvbiBidXR0b24tLWxvYWQgbG9hZGluZ1wiPlxyXG4gICAgPHNwYW4gY2xhc3M9XCJ0ZXh0XCI+XHJcbiAgICAgIFN1Ym1pdFxyXG4gICAgPC9zcGFuPlxyXG4gICAgPHNwYW4gY2xhc3M9XCJlbGxpcHNpcy1sb2FkZXJcIj5cclxuICAgICAgPHNwYW4gY2xhc3M9XCJkb3RcIj48L3NwYW4+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwiZG90XCI+PC9zcGFuPlxyXG4gICAgICA8c3BhbiBjbGFzcz1cImRvdFwiPjwvc3Bhbj5cclxuICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0XCI+TG9hZGluZzwvc3Bhbj5cclxuICAgIDwvc3Bhbj5cclxuICA8L2J1dHRvbj5cclxuXHJcbiAgc2Fzcy1saW50OmVuYWJsZS1hbGwgKi8gfVxuICAuYnV0dG9uLS1oYXMtbG9hZGVyIC50ZXh0IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSk7IH1cbiAgLmJ1dHRvbi0taGFzLWxvYWRlciAuZWxsaXBzaXMtbG9hZGVyIHtcbiAgICBib3R0b206IDA7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSksIHRyYW5zZm9ybSAwLjVzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTsgfVxuXG4uYnV0dG9uLS1oYXMtbG9hZGVyLmxvYWRpbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5idXR0b24tLWhhcy1sb2FkZXIubG9hZGluZyAudGV4dCB7XG4gICAgb3BhY2l0eTogMDsgfVxuICAuYnV0dG9uLS1oYXMtbG9hZGVyLmxvYWRpbmcgLmVsbGlwc2lzLWxvYWRlciB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9XG5cbi5idXR0b24tLWljb24ge1xuICBwYWRkaW5nLWxlZnQ6IDIuNjdlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5idXR0b24tLWljb24gLnVpLWljb24ge1xuICAgIGJvdHRvbTogMDtcbiAgICBoZWlnaHQ6IDIuNjdlbTtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbi1ib3R0b206IGF1dG87XG4gICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAyLjY3ZW07IH1cblxuLmJ1dHRvbi0tbCB7XG4gIHBhZGRpbmctYm90dG9tOiAxLjEzZW07XG4gIHBhZGRpbmctdG9wOiAxLjJlbTsgfVxuXG4uYnV0dG9uLS1yb3VuZGVkLWNvcm5lcnMtbCB7XG4gIGJvcmRlci1yYWRpdXM6IDlweDsgfVxuXG4uYnV0dG9uLS1yb3VuZGVkLWNvcm5lcnMtbSB7XG4gIGJvcmRlci1yYWRpdXM6IDZweDsgfVxuXG4uYnV0dG9uLS1yb3VuZGVkLWNvcm5lcnMtcyB7XG4gIGJvcmRlci1yYWRpdXM6IDNweDsgfVxuXG4uYnV0dG9uLS1zIHtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBwYWRkaW5nOiAuNTVlbSAxLjE1ZW07IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgIC5idXR0b24tLXMge1xuICAgICAgZm9udC1zaXplOiAxMXB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5idXR0b24tLXMge1xuICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5idXR0b24tLXMge1xuICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuYnV0dG9uLS1zIHtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDsgfSB9XG4gIC5idXR0b24tLXMuYnV0dG9uLS1pY29uIC51aS1pY29uIHtcbiAgICBoZWlnaHQ6IDEuODVlbTtcbiAgICB3aWR0aDogMS44NWVtOyB9XG4gIC5idXR0b24tLXMuYnV0dG9uLS1zdHJva2VkIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogLjRlbTtcbiAgICBwYWRkaW5nLXRvcDogLjRlbTsgfVxuXG4uYnV0dG9uLS1zdWNjZXNzIHtcbiAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5idXR0b24tLXN1Y2Nlc3MgLnVpLWljb24ge1xuICAgIGZpbGw6ICMwMGE3ZTA7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMmVtOyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkgYW5kIChtYXgtd2lkdGg6IDM4OXB4KSB7XG4gIC5idXR0b24tLXdpZGUge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzOTBweCkge1xuICAuYnV0dG9uLS13aWRlIHtcbiAgICBtaW4td2lkdGg6IDM1MHB4OyB9IH1cblxuLmJ1dHRvbltkaXNhYmxlZF0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjO1xuICBjb2xvcjogI2ZmZjtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAuYnV0dG9uW2Rpc2FibGVkXS5idXR0b24tLWRpc2NyZXRpb25hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjY2NjOyB9XG4gIC5idXR0b25bZGlzYWJsZWRdLmJ1dHRvbi0tcmV2ZXJzZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTYwNjY7XG4gICAgY29sb3I6ICM5MzkxOTE7IH1cbiAgLmJ1dHRvbltkaXNhYmxlZF0uYnV0dG9uLS1zdHJva2VkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjY2NjO1xuICAgIGNvbG9yOiAjY2NjOyB9XG5cbi5idXR0b24uZXJyb3Ige1xuICBhbmltYXRpb246IHNoYWtlIDFzIGVhc2Utb3V0IGZvcndhcmRzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWEzZjNmO1xuICBjb2xvcjogI2ZmZjsgfVxuICAuYnV0dG9uLmVycm9yOmFjdGl2ZSwgLmJ1dHRvbi5lcnJvcjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VhM2YzZjsgfVxuICAuYnV0dG9uLmVycm9yLmJ1dHRvbi0tZGlzY3JldGlvbmFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICNlYTNmM2Y7IH1cbiAgLmJ1dHRvbi5lcnJvci5idXR0b24tLXN0cm9rZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICNlYTNmM2Y7XG4gICAgY29sb3I6ICNlYTNmM2Y7IH1cblxuLmNhcmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmNGY1O1xuICBjb2xvcjogIzYxNjA2MDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgbWF4LXdpZHRoOiA2NTBweDtcbiAgbWluLWhlaWdodDogOTBweDtcbiAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gIHBhZGRpbmctbGVmdDogMzBweDtcbiAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgcGFkZGluZy10b3A6IDMwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY1MHB4KSB7XG4gICAgLmNhcmQge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH0gfVxuICAuY2FyZC0tZnVsbC13aWR0aCB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgIHBhZGRpbmctdG9wOiA0MHB4OyB9XG4gICAgLmNhcmQtLWZ1bGwtd2lkdGggcCB7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1heC13aWR0aDogMzVlbTsgfVxuICAuY2FyZC0tdGlnaHQtdG9wIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIC5jYXJkLS13aXRoLWljb24ge1xuICAgIG1hcmdpbi10b3A6IDM1cHg7IH1cbiAgLmNhcmQgcCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNWVtOyB9XG4gIC5jYXJkIC5idG4sXG4gIC5jYXJkIC5idXR0b24ge1xuICAgIG1hcmdpbi10b3A6IDEuN2VtOyB9XG4gIC5jYXJkIC5oZWFkaW5nIHtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgY29sb3I6ICM2MTYwNjA7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBtYXJnaW4tYm90dG9tOiAuN2VtOyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgICAgLmNhcmQgLmhlYWRpbmcge1xuICAgICAgICBmb250LXNpemU6IDEzcHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAgIC5jYXJkIC5oZWFkaW5nIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAuY2FyZCAuaGVhZGluZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5jYXJkIC5oZWFkaW5nIHtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4OyB9IH1cbiAgLmNhcmQgLmhlYWRpbmctbCB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGNvbG9yOiAjNWE2MDY2O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogLjhlbTsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAgIC5jYXJkIC5oZWFkaW5nLWwge1xuICAgICAgICBmb250LXNpemU6IDE5cHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAgIC5jYXJkIC5oZWFkaW5nLWwge1xuICAgICAgICBmb250LXNpemU6IDIwcHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5jYXJkIC5oZWFkaW5nLWwge1xuICAgICAgICBmb250LXNpemU6IDIycHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuY2FyZCAuaGVhZGluZy1sIHtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4OyB9IH1cbiAgLmNhcmQgLnByZS1oZWFkaW5nIHtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgY29sb3I6ICM5MzkxOTE7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgICAgLmNhcmQgLnByZS1oZWFkaW5nIHtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgICAuY2FyZCAucHJlLWhlYWRpbmcge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5jYXJkIC5wcmUtaGVhZGluZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5jYXJkIC5wcmUtaGVhZGluZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDsgfSB9XG4gIC5yYWRpby1hbmQtbGFiZWwgKyAuY2FyZCB7XG4gICAgbWFyZ2luLXRvcDogMTZweDsgfVxuICAuY2FyZCAuc2VhbC1pY29uIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICMzY2I4NzgsICMyOTdlNTIpO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGhlaWdodDogNTBweDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTI4cHgsIDApO1xuICAgIHdpZHRoOiA1MHB4OyB9XG4gICAgLmNhcmQgLnNlYWwtaWNvbiAuY2hlY2sge1xuICAgICAgZmlsbDogI2ZmZjtcbiAgICAgIGhlaWdodDogMjJweDtcbiAgICAgIHdpZHRoOiAyMnB4OyB9XG4gIC5jYXJkIC5zaG93cm9vbS1ub3RlIHtcbiAgICBmb250LXNpemU6IDEycHg7IH1cblxuLmNhcmQtLWV4dHJhLXBhZGRpbmcge1xuICBwYWRkaW5nLXRvcDogNDBweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmNhcmQtLWV4dHJhLXBhZGRpbmcge1xuICAgICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDcwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA3MHB4O1xuICAgICAgcGFkZGluZy10b3A6IDUwcHg7IH0gfVxuXG4uY2FyZC0tc3Ryb2tlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDRweCBzb2xpZCAjZjJmNGY1OyB9XG5cbi5jYXJkLS10aWdodCB7XG4gIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gIHBhZGRpbmctdG9wOiAxNXB4OyB9XG5cbi5jYXJkLndhcm5pbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlN2U5O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tdG9wOiAxLjVlbTsgfVxuICAuY2FyZC53YXJuaW5nIHAge1xuICAgIGZvbnQtc2l6ZTogMTNweDsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAgIC5jYXJkLndhcm5pbmcgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgICAgLmNhcmQud2FybmluZyBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAuY2FyZC53YXJuaW5nIHAge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuY2FyZC53YXJuaW5nIHAge1xuICAgICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuXG4uc2hvd3Jvb20tcGlja3VwLWNhcmQge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXI6IHNvbGlkIDRweCAjZjJmNGY1O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIG1hcmdpbi1ib3R0b206IDEuNWVtO1xuICBwYWRkaW5nLWJvdHRvbTogMS43ZW07XG4gIHBhZGRpbmctbGVmdDogMS43ZW07XG4gIHBhZGRpbmctcmlnaHQ6IDEuN2VtO1xuICBwYWRkaW5nLXRvcDogMS45ZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLnNob3dyb29tLXBpY2t1cC1jYXJkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMuNzVlbTsgfSB9XG4gIC5zaG93cm9vbS1waWNrdXAtY2FyZCAuaGVhZGluZyB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGNvbG9yOiAjMmUzMTM0O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogLjZlbTsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAgIC5zaG93cm9vbS1waWNrdXAtY2FyZCAuaGVhZGluZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTlweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgICAgLnNob3dyb29tLXBpY2t1cC1jYXJkIC5oZWFkaW5nIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAuc2hvd3Jvb20tcGlja3VwLWNhcmQgLmhlYWRpbmcge1xuICAgICAgICBmb250LXNpemU6IDIycHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuc2hvd3Jvb20tcGlja3VwLWNhcmQgLmhlYWRpbmcge1xuICAgICAgICBmb250LXNpemU6IDI0cHg7IH0gfVxuICAuc2hvd3Jvb20tcGlja3VwLWNhcmQgLm1lc3NhZ2Uge1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgcGFkZGluZy1ib3R0b206IDEuOGVtOyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgICAgLnNob3dyb29tLXBpY2t1cC1jYXJkIC5tZXNzYWdlIHtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgICAuc2hvd3Jvb20tcGlja3VwLWNhcmQgLm1lc3NhZ2Uge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5zaG93cm9vbS1waWNrdXAtY2FyZCAubWVzc2FnZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5zaG93cm9vbS1waWNrdXAtY2FyZCAubWVzc2FnZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG5cbi5jYXJ0LXN1bW1hcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmNhcnQtc3VtbWFyeSB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB6LWluZGV4OiAxMDsgfVxuICAgICAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyxcbiAgICAgIC5jYXJ0LXN1bW1hcnkgLmNyZWRpdCxcbiAgICAgIC5jYXJ0LXN1bW1hcnkgLmRpc2NvdW50LFxuICAgICAgLmNhcnQtc3VtbWFyeSAucHJvZHVjdHMtZW1wdHktY2FydCxcbiAgICAgIC5jYXJ0LXN1bW1hcnkgLnByb2R1Y3RzLXRhYmxlLFxuICAgICAgLmNhcnQtc3VtbWFyeSAucHJvbW8tZGlzY2xhaW1lciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC5jYXJ0LXN1bW1hcnkuZW1wdHksIC5jYXJ0LXN1bW1hcnkub3BlbiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bzsgfVxuICAgICAgICAuY2FydC1zdW1tYXJ5LmVtcHR5IC5wcm9kdWN0cy1jb250YWluZXIsIC5jYXJ0LXN1bW1hcnkub3BlbiAucHJvZHVjdHMtY29udGFpbmVyIHtcbiAgICAgICAgICBmbGV4LWdyb3c6IDE7IH1cbiAgICAgIC5jYXJ0LXN1bW1hcnkuZW1wdHkgLmhlYWRlciB7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDsgfVxuICAgICAgLmNhcnQtc3VtbWFyeS5lbXB0eSAucHJvZHVjdHMtY29udGFpbmVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAgIC5jYXJ0LXN1bW1hcnkuZW1wdHkgLnByb2R1Y3RzLWVtcHR5LWNhcnQge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgLmNhcnQtc3VtbWFyeS5vcGVuIC5haGVtIHtcbiAgICAgICAgZGlzcGxheTogZmxleDsgfVxuICAgICAgLmNhcnQtc3VtbWFyeS5vcGVuIC5jaGV2cm9uLXRpZ2h0IHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfVxuICAgICAgLmNhcnQtc3VtbWFyeS5vcGVuIC5jaGFyZ2VzIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC5jYXJ0LXN1bW1hcnkub3BlbiAuY3JlZGl0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDsgfVxuICAgICAgLmNhcnQtc3VtbWFyeS5vcGVuIC5kaXNjb3VudCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgICAgIC5jYXJ0LXN1bW1hcnkub3BlbiAucHJvZHVjdHMtdGFibGUge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAgICAgLmNhcnQtc3VtbWFyeS5vcGVuIC5wcm9tby1kaXNjbGFpbWVyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4uY2FydC1zdW1tYXJ5LmVtcHR5IC5jaGFyZ2VzLCAuY2FydC1zdW1tYXJ5LmVtcHR5Lm9wZW4gLmNoYXJnZXMge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5jYXJ0LXN1bW1hcnkgLmFoZW0ge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5jYXJ0LXN1bW1hcnkgLmFoZW0ge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkOWQ5ZDk7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgcGFkZGluZzogMjBweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuY2FydC1zdW1tYXJ5IC5haGVtIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5jYXJ0LXN1bW1hcnkgLmNoYXJnZXMge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZDlkOWQ5O1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgIHBhZGRpbmctdG9wOiAxMHB4OyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY2FydC1zdW1tYXJ5IC5jaGFyZ2VzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBsZWZ0OiA0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgcmlnaHQ6IDRweDsgfSB9XG5cbi5jYXJ0LXN1bW1hcnkgLmNoYXJnZXMucGVuZGluZyB7XG4gIGFuaW1hdGlvbjogdXBkYXRpbmcgMnMgZWFzZS1vdXQgaW5maW5pdGU7IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY2FydC1zdW1tYXJ5IC5jaGFyZ2VzLmdyYW5kLXRvdGFsLW9ubHkgLmdyYW5kLXRvdGFsIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jYXJ0LXN1bW1hcnkgLmNoYXJnZXMudGF4LWlzLWluY2x1ZGVkIC5saW5lLWl0ZW06bnRoLWNoaWxkKDEpIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjYlOyB9XG4gIC5jYXJ0LXN1bW1hcnkgLmNoYXJnZXMudGF4LWlzLWluY2x1ZGVkIC5saW5lLWl0ZW06bnRoLWNoaWxkKDIpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE2LjY2JTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5jYXJ0LXN1bW1hcnkgLmNoYXJnZXMgLmtleSB7XG4gICAgY29sb3I6ICM5MzkxOTE7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxleC1zaHJpbms6IDA7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jYXJ0LXN1bW1hcnkgLmNoYXJnZXMgLmtleSB7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICAgIGNvbG9yOiAjNjE2MDYwO1xuICAgIGxldHRlci1zcGFjaW5nOiAuMDhlbTtcbiAgICBtYXJnaW4tdG9wOiA2cHg7XG4gICAgb3JkZXI6IDI7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgIC5jYXJ0LXN1bW1hcnkgLmNoYXJnZXMgLmtleSB7XG4gICAgICBmb250LXNpemU6IDEwcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAuY2FydC1zdW1tYXJ5IC5jaGFyZ2VzIC5rZXkge1xuICAgICAgZm9udC1zaXplOiAxMXB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyAua2V5IHtcbiAgICAgIGZvbnQtc2l6ZTogMTFweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuY2FydC1zdW1tYXJ5IC5jaGFyZ2VzIC5rZXkge1xuICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cblxuLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyAuZ3JhbmQtdG90YWwsXG4uY2FydC1zdW1tYXJ5IC5jaGFyZ2VzIC5saW5lLWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyAuZ3JhbmQtdG90YWwsXG4gICAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyAubGluZS1pdGVtIHtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKSBhbmQgKG1heC13aWR0aDogNzY3cHgpIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgIC5jYXJ0LXN1bW1hcnkgLmNoYXJnZXMgLmdyYW5kLXRvdGFsLFxuICAgIC5jYXJ0LXN1bW1hcnkgLmNoYXJnZXMgLmxpbmUtaXRlbSB7XG4gICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApIGFuZCAobWF4LXdpZHRoOiA3NjdweCkgYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyAuZ3JhbmQtdG90YWwsXG4gICAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyAubGluZS1pdGVtIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuY2FydC1zdW1tYXJ5IC5jaGFyZ2VzIC5ncmFuZC10b3RhbCxcbiAgICAuY2FydC1zdW1tYXJ5IC5jaGFyZ2VzIC5saW5lLWl0ZW0ge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKSBhbmQgKG1heC13aWR0aDogNzY3cHgpIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuY2FydC1zdW1tYXJ5IC5jaGFyZ2VzIC5ncmFuZC10b3RhbCxcbiAgICAuY2FydC1zdW1tYXJ5IC5jaGFyZ2VzIC5saW5lLWl0ZW0ge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5jYXJ0LXN1bW1hcnkgLmNoYXJnZXMgLmdyYW5kLXRvdGFsLFxuICAgIC5jYXJ0LXN1bW1hcnkgLmNoYXJnZXMgLmxpbmUtaXRlbSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyAuZ3JhbmQtdG90YWwgLmtleSxcbiAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyAuZ3JhbmQtdG90YWwgLnZhbHVlIHtcbiAgICBjb2xvcjogIzE2MWExZDtcbiAgICBmb250LXdlaWdodDogNzAwOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY2FydC1zdW1tYXJ5IC5jaGFyZ2VzIC5ncmFuZC10b3RhbCB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkOWQ5ZDk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBwYWRkaW5nOiAxNXB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5jYXJ0LXN1bW1hcnkgLmNoYXJnZXMgLmdyYW5kLXRvdGFsIC5rZXksXG4gICAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyAuZ3JhbmQtdG90YWwgLnZhbHVlIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IC4xZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IC4xZW07XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgICAuY2FydC1zdW1tYXJ5IC5jaGFyZ2VzIC5ncmFuZC10b3RhbCAua2V5LFxuICAgICAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyAuZ3JhbmQtdG90YWwgLnZhbHVlIHtcbiAgICAgICAgZm9udC1zaXplOiAxOXB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAgIC5jYXJ0LXN1bW1hcnkgLmNoYXJnZXMgLmdyYW5kLXRvdGFsIC5rZXksXG4gICAgICAuY2FydC1zdW1tYXJ5IC5jaGFyZ2VzIC5ncmFuZC10b3RhbCAudmFsdWUge1xuICAgICAgICBmb250LXNpemU6IDIwcHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyAuZ3JhbmQtdG90YWwgLmtleSxcbiAgICAgIC5jYXJ0LXN1bW1hcnkgLmNoYXJnZXMgLmdyYW5kLXRvdGFsIC52YWx1ZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjFweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyAuZ3JhbmQtdG90YWwgLmtleSxcbiAgICAgIC5jYXJ0LXN1bW1hcnkgLmNoYXJnZXMgLmdyYW5kLXRvdGFsIC52YWx1ZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyAubGluZS1pdGVtIHtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMzMuMzMlOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyAudmFsdWUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsZXg6IDE7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jYXJ0LXN1bW1hcnkgLmNoYXJnZXMgLnZhbHVlIHtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgY29sb3I6ICMxNjFhMWQ7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBvcmRlcjogMTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyAudmFsdWUge1xuICAgICAgZm9udC1zaXplOiAxNXB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyAudmFsdWUge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyAudmFsdWUge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5jYXJ0LXN1bW1hcnkgLmNoYXJnZXMgLnZhbHVlIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG5cbi5jYXJ0LXN1bW1hcnkgLmNoYXJnZXMgLnZhbHVlIC5iYWRnZSB7XG4gIG1hcmdpbi1yaWdodDogMC4zMjVlbTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMnB4LCAwKTsgfVxuXG4uY2FydC1zdW1tYXJ5IC5jaGV2cm9uLXRpZ2h0IHtcbiAgZmlsbDogIzAwYTdlMDtcbiAgaGVpZ2h0OiA4cHg7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMnMgZWFzZS1vdXQ7XG4gIHdpZHRoOiA4cHg7IH1cblxuLmNhcnQtc3VtbWFyeSAuZGlzY291bnQge1xuICBwYWRkaW5nOiAyMHB4IDIwcHggMDsgfVxuICAuY2FydC1zdW1tYXJ5IC5kaXNjb3VudCAubGluZS1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuY2FydC1zdW1tYXJ5IC5kaXNjb3VudCB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2Q5ZDlkOTtcbiAgICAgIHBhZGRpbmctdG9wOiAyMHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5jYXJ0LXN1bW1hcnkgLmRpc2NvdW50IHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDlkOWQ5O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgIHBhZGRpbmctdG9wOiAxMHB4OyB9IH1cbiAgLmNhcnQtc3VtbWFyeSAuZGlzY291bnQgZGwge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIGF1dG87IH1cbiAgLmNhcnQtc3VtbWFyeSAuZGlzY291bnQgZGQge1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLmNhcnQtc3VtbWFyeSAuZGlzY291bnQgLmtleSxcbiAgLmNhcnQtc3VtbWFyeSAuZGlzY291bnQgLnZhbHVlIHtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgY29sb3I6ICM2MTYwNjA7IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgICAuY2FydC1zdW1tYXJ5IC5kaXNjb3VudCAua2V5LFxuICAgICAgLmNhcnQtc3VtbWFyeSAuZGlzY291bnQgLnZhbHVlIHtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgICAuY2FydC1zdW1tYXJ5IC5kaXNjb3VudCAua2V5LFxuICAgICAgLmNhcnQtc3VtbWFyeSAuZGlzY291bnQgLnZhbHVlIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAuY2FydC1zdW1tYXJ5IC5kaXNjb3VudCAua2V5LFxuICAgICAgLmNhcnQtc3VtbWFyeSAuZGlzY291bnQgLnZhbHVlIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLmNhcnQtc3VtbWFyeSAuZGlzY291bnQgLmtleSxcbiAgICAgIC5jYXJ0LXN1bW1hcnkgLmRpc2NvdW50IC52YWx1ZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gIC5jYXJ0LXN1bW1hcnkgLmRpc2NvdW50IC50b3RhbCB7XG4gICAgY29sb3I6ICMxNjFhMWQ7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG4uY2FydC1zdW1tYXJ5IC5oZWFkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDRweCBzb2xpZCAjMDBhN2UwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICBwYWRkaW5nLXRvcDogMTBweDsgfVxuICAuY2FydC1zdW1tYXJ5IC5oZWFkZXI6OmJlZm9yZSB7XG4gICAgYm94LXNoYWRvdzogMCAtMTBweCAxNXB4IHJnYmEoMCwgMCwgMCwgMC4zNSk7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIGxlZnQ6IDUlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEycHg7XG4gICAgd2lkdGg6IDkwJTtcbiAgICB6LWluZGV4OiAtMTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmNhcnQtc3VtbWFyeSAuaGVhZGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAuY2FydC1zdW1tYXJ5IC5oZWFkZXIgLmxpbmUtMSB7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC4xZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgICAuY2FydC1zdW1tYXJ5IC5oZWFkZXIgLmxpbmUtMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgICAgLmNhcnQtc3VtbWFyeSAuaGVhZGVyIC5saW5lLTEge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5jYXJ0LXN1bW1hcnkgLmhlYWRlciAubGluZS0xIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLmNhcnQtc3VtbWFyeSAuaGVhZGVyIC5saW5lLTEge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICAgIC5jYXJ0LXN1bW1hcnkgLmhlYWRlciAubGluZS0xLmFtb3VudCB7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMDsgfVxuICAuY2FydC1zdW1tYXJ5IC5oZWFkZXIgLml0ZW1zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MTRweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuY2FydC1zdW1tYXJ5IC5oZWFkZXIgLml0ZW1zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMzBweDsgfSB9XG4gIC5jYXJ0LXN1bW1hcnkgLmhlYWRlciAubGluZS0yIHtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gICAgY29sb3I6ICMxNjFhMWQ7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC4xZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAgIC5jYXJ0LXN1bW1hcnkgLmhlYWRlciAubGluZS0yIHtcbiAgICAgICAgZm9udC1zaXplOiAxMHB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgICAuY2FydC1zdW1tYXJ5IC5oZWFkZXIgLmxpbmUtMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTFweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLmNhcnQtc3VtbWFyeSAuaGVhZGVyIC5saW5lLTIge1xuICAgICAgICBmb250LXNpemU6IDExcHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuY2FydC1zdW1tYXJ5IC5oZWFkZXIgLmxpbmUtMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDsgfSB9XG4gIC5jYXJ0LXN1bW1hcnkgLmhlYWRlciAubm90ZS1zeW1ib2wsXG4gIC5jYXJ0LXN1bW1hcnkgLmhlYWRlciAudG90YWwtaXMtcGVuZGluZy1zeW1ib2wge1xuICAgIG1hcmdpbi1sZWZ0OiAtLjM1ZW07IH1cbiAgLmNhcnQtc3VtbWFyeSAuaGVhZGVyIC50b3RhbC1jb250YWluZXIge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5jYXJ0LXN1bW1hcnkgLmhlYWRlciAueW91ci1vcmRlciB7XG4gICAgZmxleDogMTsgfVxuXG4uY2FydC1zdW1tYXJ5IC5wcmUtY2FsY3VsYXRlLWlzLXBlbmRpbmcge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmNGY1O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGxpbmUtaGVpZ2h0OiAxLjNlbTtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgcGFkZGluZzogMjBweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmNhcnQtc3VtbWFyeSAucHJlLWNhbGN1bGF0ZS1pcy1wZW5kaW5nIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgLmNhcnQtc3VtbWFyeSAucHJlLWNhbGN1bGF0ZS1pcy1wZW5kaW5nIC5ub3RlIHtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgY29sb3I6ICM2MTYwNjA7XG4gICAgbWFyZ2luLXRvcDogMS4zZW07XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAgIC5jYXJ0LXN1bW1hcnkgLnByZS1jYWxjdWxhdGUtaXMtcGVuZGluZyAubm90ZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTFweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgICAgLmNhcnQtc3VtbWFyeSAucHJlLWNhbGN1bGF0ZS1pcy1wZW5kaW5nIC5ub3RlIHtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAuY2FydC1zdW1tYXJ5IC5wcmUtY2FsY3VsYXRlLWlzLXBlbmRpbmcgLm5vdGUge1xuICAgICAgICBmb250LXNpemU6IDEycHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuY2FydC1zdW1tYXJ5IC5wcmUtY2FsY3VsYXRlLWlzLXBlbmRpbmcgLm5vdGUge1xuICAgICAgICBmb250LXNpemU6IDEzcHg7IH0gfVxuXG4uY2FydC1zdW1tYXJ5IC5wcm9kdWN0cy1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5jYXJ0LXN1bW1hcnkgLnByb2R1Y3RzLWNvbnRhaW5lciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgICAuY2FydC1zdW1tYXJ5IC5wcm9kdWN0cy1jb250YWluZXI6OmFmdGVyIHtcbiAgICAgICAgYm9yZGVyOiA0cHggc29saWQgIzAwYTdlMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgei1pbmRleDogMzsgfVxuICAgICAgLmNhcnQtc3VtbWFyeSAucHJvZHVjdHMtY29udGFpbmVyOjpiZWZvcmUge1xuICAgICAgICBib3R0b206IDhweDtcbiAgICAgICAgYm94LXNoYWRvdzogMCAxMHB4IDE1cHggcmdiYSgwLCAwLCAwLCAwLjM1KTtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIGxlZnQ6IDUlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgIHotaW5kZXg6IDI7IH1cbiAgICAgIC5jYXJ0LXN1bW1hcnkgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtZW1wdHktY2FydCxcbiAgICAgIC5jYXJ0LXN1bW1hcnkgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtdGFibGUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDM7IH1cbiAgICAgICAgLmNhcnQtc3VtbWFyeSAucHJvZHVjdHMtY29udGFpbmVyIC5wcm9kdWN0cy1lbXB0eS1jYXJ0Om5vdCgucmVxdWlyZS1zc28pLFxuICAgICAgICAuY2FydC1zdW1tYXJ5IC5wcm9kdWN0cy1jb250YWluZXIgLnByb2R1Y3RzLXRhYmxlOm5vdCgucmVxdWlyZS1zc28pIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAgIC5jYXJ0LXN1bW1hcnkgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdC1pbWFnZS1jb250YWluZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5jYXJ0LXN1bW1hcnkgLnByb21vLWRpc2NsYWltZXIge1xuICBmb250LXNpemU6IDExcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmY0ZjU7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgbGluZS1oZWlnaHQ6IDEuM2VtO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBtYXJnaW4tbGVmdDogMjBweDtcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICBwYWRkaW5nOiAyMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgIC5jYXJ0LXN1bW1hcnkgLnByb21vLWRpc2NsYWltZXIge1xuICAgICAgZm9udC1zaXplOiAxMXB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5jYXJ0LXN1bW1hcnkgLnByb21vLWRpc2NsYWltZXIge1xuICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5jYXJ0LXN1bW1hcnkgLnByb21vLWRpc2NsYWltZXIge1xuICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuY2FydC1zdW1tYXJ5IC5wcm9tby1kaXNjbGFpbWVyIHtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuY2FydC1zdW1tYXJ5IC5wcm9tby1kaXNjbGFpbWVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY2FydC1zdW1tYXJ5IC5zdGlja3kge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZDlkOWQ5O1xuICAgIHBhZGRpbmctdG9wOiAxMHB4OyB9XG4gICAgLmNhcnQtc3VtbWFyeSAuc3RpY2t5LnN0dWNrIHtcbiAgICAgIGJvcmRlci13aWR0aDogMDtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIHRvcDogMDsgfSB9XG5cbi5jYXJ0LXN1bW1hcnkgLm5vdGUsXG4uY2FydC1zdW1tYXJ5IC50YXgtaXMtaW5jbHVkZWQtbm90ZSxcbi5jYXJ0LXN1bW1hcnkgLnRvdGFsLWlzLXBlbmRpbmctbm90ZSB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgY29sb3I6ICM5MzkxOTE7XG4gIGZsZXg6IDEgMCBhdXRvOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAuY2FydC1zdW1tYXJ5IC5ub3RlLFxuICAgIC5jYXJ0LXN1bW1hcnkgLnRheC1pcy1pbmNsdWRlZC1ub3RlLFxuICAgIC5jYXJ0LXN1bW1hcnkgLnRvdGFsLWlzLXBlbmRpbmctbm90ZSB7XG4gICAgICBmb250LXNpemU6IDEzcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmNhcnQtc3VtbWFyeSAubm90ZSxcbiAgICAuY2FydC1zdW1tYXJ5IC50YXgtaXMtaW5jbHVkZWQtbm90ZSxcbiAgICAuY2FydC1zdW1tYXJ5IC50b3RhbC1pcy1wZW5kaW5nLW5vdGUge1xuICAgICAgZm9udC1zaXplOiAxNHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5jYXJ0LXN1bW1hcnkgLm5vdGUsXG4gICAgLmNhcnQtc3VtbWFyeSAudGF4LWlzLWluY2x1ZGVkLW5vdGUsXG4gICAgLmNhcnQtc3VtbWFyeSAudG90YWwtaXMtcGVuZGluZy1ub3RlIHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmNhcnQtc3VtbWFyeSAubm90ZSxcbiAgICAuY2FydC1zdW1tYXJ5IC50YXgtaXMtaW5jbHVkZWQtbm90ZSxcbiAgICAuY2FydC1zdW1tYXJ5IC50b3RhbC1pcy1wZW5kaW5nLW5vdGUge1xuICAgICAgZm9udC1zaXplOiAxNXB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuY2FydC1zdW1tYXJ5IC5ub3RlLFxuICAgIC5jYXJ0LXN1bW1hcnkgLnRheC1pcy1pbmNsdWRlZC1ub3RlLFxuICAgIC5jYXJ0LXN1bW1hcnkgLnRvdGFsLWlzLXBlbmRpbmctbm90ZSB7XG4gICAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmNhcnQtc3VtbWFyeSAubm90ZSxcbiAgICAuY2FydC1zdW1tYXJ5IC50YXgtaXMtaW5jbHVkZWQtbm90ZSxcbiAgICAuY2FydC1zdW1tYXJ5IC50b3RhbC1pcy1wZW5kaW5nLW5vdGUge1xuICAgICAgbGluZS1oZWlnaHQ6IDEuM2VtO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNSUpO1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4uY2FydC1zdW1tYXJ5IC50b2dnbGUge1xuICBjb2xvcjogIzAwYTdlMDsgfVxuXG4uY2FydC1zdW1tYXJ5IC50b3RhbC1pcy1wZW5kaW5nLXN5bWJvbCB7XG4gIGNvbG9yOiAjOTM5MTkxOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuY2FydC1zdW1tYXJ5IC50b3RhbC1pcy1wZW5kaW5nLXN5bWJvbCB7XG4gICAgICBtYXJnaW4tbGVmdDogLS4xZW07IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuY2FydC1zdW1tYXJ5LWNvbnRyb2xzLTEtY29sIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNhcnQtc3VtbWFyeS1jb250cm9scy0xLWNvbCB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5jYXJ0LXN1bW1hcnktY29udHJvbHMtMS1jb2wgLmFoZW0ge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q5ZDlkOTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkOWQ5ZDk7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgcGFkZGluZy10b3A6IDIwcHg7IH1cblxuLmNhcnQtc3VtbWFyeS1jb250cm9scy0yLWNvbCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5jYXJ0LXN1bW1hcnktY29udHJvbHMtMi1jb2wge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4uY29udGFjdC1tb2RhbCB7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgYm90dG9tOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHotaW5kZXg6IDMwOyB9XG4gIC5jb250YWN0LW1vZGFsLnNob3cge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zaXRpb246IHZpc2liaWxpdHkgMHMsIG9wYWNpdHkgLjJzIGVhc2Utb3V0O1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAuY29udGFjdC1tb2RhbC5zaG93IC5jb250YWN0LXRpbGUtbGlzdCAuY29udGFjdC10aWxlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cblxuLmNvbnRhY3QtbW9kYWwgLmJnIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmNvbnRhY3QtbW9kYWwgLmNsb3NlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAxOyB9XG5cbi5jb250YWN0LW1vZGFsIC5jb250ZW50IHtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmNvbnRhY3QtbW9kYWwgLmNvbnRhY3QtdGlsZS1saXN0IHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbi1sZWZ0OiAtMTZweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMTZweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwOHB4KSB7XG4gICAgLmNvbnRhY3QtbW9kYWwgLmNvbnRhY3QtdGlsZS1saXN0IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1heC13aWR0aDogNjA4cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkxMnB4KSB7XG4gICAgLmNvbnRhY3QtbW9kYWwgLmNvbnRhY3QtdGlsZS1saXN0IHtcbiAgICAgIG1heC13aWR0aDogOTEycHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMTZweCkge1xuICAgIC5jb250YWN0LW1vZGFsIC5jb250YWN0LXRpbGUtbGlzdCB7XG4gICAgICBtYXgtd2lkdGg6IDEyMTZweDsgfSB9XG4gIC5jb250YWN0LW1vZGFsIC5jb250YWN0LXRpbGUtbGlzdCAuY29udGFjdC10aWxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBib3gtc2hhZG93OiAwIDEwcHggMTBweCAtMTBweCByZ2JhKDAsIDAsIDAsIDAuMzUpO1xuICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gICAgbWluLWhlaWdodDogMjg4cHg7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAlKTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLW91dCwgdHJhbnNmb3JtIC4ycyBlYXNlLW91dDtcbiAgICB3aWR0aDogMjg4cHg7IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwOHB4KSB7XG4gICAgICAuY29udGFjdC1tb2RhbCAuY29udGFjdC10aWxlLWxpc3QgLmNvbnRhY3QtdGlsZSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTZweDsgfSB9XG4gICAgLmNvbnRhY3QtbW9kYWwgLmNvbnRhY3QtdGlsZS1saXN0IC5jb250YWN0LXRpbGU6bnRoLWNoaWxkKDIpIHtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IC4wNXM7IH1cbiAgICAuY29udGFjdC1tb2RhbCAuY29udGFjdC10aWxlLWxpc3QgLmNvbnRhY3QtdGlsZTpudGgtY2hpbGQoMykge1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogLjFzOyB9XG4gICAgLmNvbnRhY3QtbW9kYWwgLmNvbnRhY3QtdGlsZS1saXN0IC5jb250YWN0LXRpbGU6bnRoLWNoaWxkKDQpIHtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IC4yczsgfVxuICAgIC5jb250YWN0LW1vZGFsIC5jb250YWN0LXRpbGUtbGlzdCAuY29udGFjdC10aWxlOmhvdmVyIC5jb250YWN0LWljb24ge1xuICAgICAgZmlsbDogIzM2ZDJiNjsgfVxuXG4uY29udGFjdC1tb2RhbCAuaGVhZGluZyxcbi5jb250YWN0LW1vZGFsIC5zdWItaGVhZGluZyB7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzIGVhc2Utb3V0OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAuY29udGFjdC1tb2RhbCAuaGVhZGluZyxcbiAgICAuY29udGFjdC1tb2RhbCAuc3ViLWhlYWRpbmcge1xuICAgICAgZm9udC1zaXplOiAxNXB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5jb250YWN0LW1vZGFsIC5oZWFkaW5nLFxuICAgIC5jb250YWN0LW1vZGFsIC5zdWItaGVhZGluZyB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmNvbnRhY3QtbW9kYWwgLmhlYWRpbmcsXG4gICAgLmNvbnRhY3QtbW9kYWwgLnN1Yi1oZWFkaW5nIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmNvbnRhY3QtbW9kYWwgLmhlYWRpbmcsXG4gICAgLmNvbnRhY3QtbW9kYWwgLnN1Yi1oZWFkaW5nIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG5cbi5jb250YWN0LW1vZGFsIC5oZWFkaW5nIHtcbiAgY29sb3I6ICMyZTMxMzQ7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuLmNvbnRhY3QtbW9kYWwgLmhlYWRpbmctcGFnZSB7XG4gIG1hcmdpbi10b3A6IDJlbTsgfVxuXG4uY29udGFjdC1tb2RhbCAuaW1nIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gIHdpZHRoOiAxNTBweDsgfVxuICAuY29udGFjdC1tb2RhbCAuaW1nIC5jb250YWN0LWljb24ge1xuICAgIGZpbGw6ICMwMDFmNDU7XG4gICAgdHJhbnNpdGlvbjogZmlsbCAuMnMgZWFzZS1vdXQ7IH1cblxuLmNvbnRhY3QtbW9kYWwgLmluZm8ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy1ib3R0b206IDM1cHg7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgcGFkZGluZy10b3A6IDQwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB6LWluZGV4OiA0OyB9XG5cbi5jb250YWN0LW1vZGFsIC5zdWItaGVhZGluZyB7XG4gIGNvbG9yOiAjNWE2MDY2OyB9XG5cbi5lcnJvci1wYWdlIHtcbiAgYm90dG9tOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDsgfVxuXG4uZXJyb3ItcGFnZSAuYm9keSB7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgY29sb3I6ICM1YTYwNjY7XG4gIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgbWF4LXdpZHRoOiAzMmVtOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAuZXJyb3ItcGFnZSAuYm9keSB7XG4gICAgICBmb250LXNpemU6IDEwcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmVycm9yLXBhZ2UgLmJvZHkge1xuICAgICAgZm9udC1zaXplOiAxMXB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5lcnJvci1wYWdlIC5ib2R5IHtcbiAgICAgIGZvbnQtc2l6ZTogMTFweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmVycm9yLXBhZ2UgLmJvZHkge1xuICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cblxuLmVycm9yLXBhZ2UgLmNvbHVtbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuZXJyb3ItcGFnZSAuY29sdW1uLmNvcHktY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5lcnJvci1wYWdlIC5jb2x1bW4uaW1nLWNvbnRhaW5lciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLmVycm9yLXBhZ2UgLmNvbHVtbi5pbWctY29udGFpbmVyIC5pbWcge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDM1MHB4O1xuICAgIHdpZHRoOiAxMDAlOyB9XG5cbi5lcnJvci1wYWdlIC5lcnJvci1mb290ZXIge1xuICBmb250LXNpemU6IDEycHg7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICBwYWRkaW5nLXRvcDogNDBweDsgfVxuXG4uZXJyb3ItcGFnZSAuaGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgbWFyZ2luLXRvcDogNDBweDsgfVxuXG4uZXJyb3ItcGFnZSAuaGVhZGluZyB7XG4gIGZvbnQtc2l6ZTogMjFweDtcbiAgY29sb3I6ICMwMGE3ZTA7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgbWFyZ2luLWJvdHRvbTogLjVlbTtcbiAgbWF4LXdpZHRoOiAxMmVtOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAuZXJyb3ItcGFnZSAuaGVhZGluZyB7XG4gICAgICBmb250LXNpemU6IDIycHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmVycm9yLXBhZ2UgLmhlYWRpbmcge1xuICAgICAgZm9udC1zaXplOiAyNHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5lcnJvci1wYWdlIC5oZWFkaW5nIHtcbiAgICAgIGZvbnQtc2l6ZTogMjhweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmVycm9yLXBhZ2UgLmhlYWRpbmcge1xuICAgICAgZm9udC1zaXplOiAzMnB4OyB9IH1cblxuLmVycm9yLXBhZ2UgLmxvZ28ge1xuICBoZWlnaHQ6IDMzcHg7XG4gIHdpZHRoOiAxNzVweDsgfVxuXG4uZXJyb3ItcGFnZSAubWFpbiB7XG4gIGZsZXg6IDE7IH1cbiAgLmVycm9yLXBhZ2UgLm1haW4gLmNvbnRlbnQtd3JhcHBlciB7XG4gICAgd2lkdGg6IDEwMCU7IH1cblxuLmVycm9yLXBhZ2UgLnJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSAyMDVweCk7IH1cbiAgLmFuZHJvaWQgLmVycm9yLXBhZ2UgLnJvdyxcbiAgLmlvcyAuZXJyb3ItcGFnZSAucm93IHtcbiAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gMjc1cHgpOyB9XG5cbi5lcnJvci1wYWdlIC5zdWItaGVhZGluZyB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjJlbTtcbiAgbWF4LXdpZHRoOiAxOGVtOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAuZXJyb3ItcGFnZSAuc3ViLWhlYWRpbmcge1xuICAgICAgZm9udC1zaXplOiAxOXB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5lcnJvci1wYWdlIC5zdWItaGVhZGluZyB7XG4gICAgICBmb250LXNpemU6IDIwcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmVycm9yLXBhZ2UgLnN1Yi1oZWFkaW5nIHtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmVycm9yLXBhZ2UgLnN1Yi1oZWFkaW5nIHtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDsgfSB9XG5cbi5mb290ZXIge1xuICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAuZm9vdGVyIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA2MHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuZm9vdGVyIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA4MHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5mb290ZXIge1xuICAgICAgcGFkZGluZy10b3A6IDMwcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5mb290ZXIge1xuICAgICAgcGFkZGluZy10b3A6IDQwcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgLmZvb3RlciB7XG4gICAgICBmb250LXNpemU6IDEwcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmZvb3RlciB7XG4gICAgICBmb250LXNpemU6IDExcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmZvb3RlciB7XG4gICAgICBmb250LXNpemU6IDExcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5mb290ZXIge1xuICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgLmZvb3Rlci5maXhlZCB7XG4gICAgYm90dG9tOiAwO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB3aWR0aDogMTAwJTsgfVxuXG4uZm9vdGVyIC5jb3B5cmlnaHQge1xuICBwYWRkaW5nLXRvcDogMTBweDtcbiAgZGlzcGxheTogYmxvY2s7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5mb290ZXIgLmNvcHlyaWdodCB7XG4gICAgICBwYWRkaW5nLXRvcDogMTVweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmZvb3RlciAuY29weXJpZ2h0IHtcbiAgICAgIHBhZGRpbmctdG9wOiAyMHB4OyB9IH1cblxuLmZvb3RlciAuZG5hLWNoYWluIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmZvb3RlciAuZG5hLWNoYWluLWxvZ28tbWFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogYXV0byA2MHB4O1xuICBoZWlnaHQ6IDYwcHg7XG4gIG1pbi13aWR0aDogMTAwdnc7IH1cbiAgLndlYnAgLmZvb3RlciAuZG5hLWNoYWluLWxvZ28tbWFyayB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NvcmUvZG5hLWNoYWluLWxvZ28tbWFyay5wbmcud2VicFwiKTsgfVxuICAubm8td2VicCAuZm9vdGVyIC5kbmEtY2hhaW4tbG9nby1tYXJrIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29yZS9kbmEtY2hhaW4tbG9nby1tYXJrLnBuZ1wiKTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMyMHB4KSB7XG4gICAgLmZvb3RlciAuZG5hLWNoYWluLWxvZ28tbWFyayB7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gNjBweDtcbiAgICAgIG1pbi13aWR0aDogMjg0cHg7IH0gfVxuXG4uZm9vdGVyIC5kbmEtY2hhaW4tbGVmdCxcbi5mb290ZXIgLmRuYS1jaGFpbi1yaWdodCB7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDYwcHg7XG4gIGhlaWdodDogNjBweDtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmZvb3RlciAuZG5hLWNoYWluLWxlZnQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQ7IH1cbiAgLndlYnAgLmZvb3RlciAuZG5hLWNoYWluLWxlZnQge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2RuYS1jaGFpbi1sZWZ0LnBuZy53ZWJwXCIpOyB9XG4gIC5uby13ZWJwIC5mb290ZXIgLmRuYS1jaGFpbi1sZWZ0IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29yZS9kbmEtY2hhaW4tbGVmdC5wbmdcIik7IH1cblxuLmZvb3RlciAuZG5hLWNoYWluLXJpZ2h0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGxlZnQ7IH1cbiAgLndlYnAgLmZvb3RlciAuZG5hLWNoYWluLXJpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29yZS9kbmEtY2hhaW4tcmlnaHQucG5nLndlYnBcIik7IH1cbiAgLm5vLXdlYnAgLmZvb3RlciAuZG5hLWNoYWluLXJpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29yZS9kbmEtY2hhaW4tcmlnaHQucG5nXCIpOyB9XG5cbi5mb290ZXIgLmxpbmstbGlzdCA+IC5saW5rLWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIG1hcmdpbi1sZWZ0OiAuMjVlbTtcbiAgbWFyZ2luLXJpZ2h0OiAuMjVlbTsgfVxuXG4uZm9vdGVyIC5saW5rLWxpc3QgPiAubGluay1pdGVtID4gYSB7XG4gIGNvbG9yOiAjNjE2MDYwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIC4ycyBlYXNlLW91dDsgfVxuICAuZm9vdGVyIC5saW5rLWxpc3QgPiAubGluay1pdGVtID4gYTphY3RpdmUsIC5mb290ZXIgLmxpbmstbGlzdCA+IC5saW5rLWl0ZW0gPiBhOmhvdmVyIHtcbiAgICBjb2xvcjogIzAwNmRiYTsgfVxuXG4uY2hlY2tib3gtYW5kLWxhYmVsLFxuLnJhZGlvLWFuZC1sYWJlbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuYmxvY2stbGFiZWwgKyAuY2hlY2tib3gtYW5kLWxhYmVsLFxuICAuY2hlY2tib3gtYW5kLWxhYmVsICsgLmNoZWNrYm94LWFuZC1sYWJlbCxcbiAgLmZvcm0tcm93ICsgLmNoZWNrYm94LWFuZC1sYWJlbCxcbiAgLnJhZGlvLWFuZC1sYWJlbCArIC5jaGVja2JveC1hbmQtbGFiZWwsIC5ibG9jay1sYWJlbCArXG4gIC5yYWRpby1hbmQtbGFiZWwsXG4gIC5jaGVja2JveC1hbmQtbGFiZWwgK1xuICAucmFkaW8tYW5kLWxhYmVsLFxuICAuZm9ybS1yb3cgK1xuICAucmFkaW8tYW5kLWxhYmVsLFxuICAucmFkaW8tYW5kLWxhYmVsICtcbiAgLnJhZGlvLWFuZC1sYWJlbCB7XG4gICAgbWFyZ2luLXRvcDogMWVtOyB9XG4gIC5jaGVja2JveC1hbmQtbGFiZWwgLmN1c3RvbS1jaGVja2JveCxcbiAgLmNoZWNrYm94LWFuZC1sYWJlbCAuY3VzdG9tLXJhZGlvLFxuICAucmFkaW8tYW5kLWxhYmVsIC5jdXN0b20tY2hlY2tib3gsXG4gIC5yYWRpby1hbmQtbGFiZWwgLmN1c3RvbS1yYWRpbyB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxcHgsIDApOyB9XG4gICAgLmNoZWNrYm94LWFuZC1sYWJlbCAuY3VzdG9tLWNoZWNrYm94Lmhhcy1lcnJvciAuZGVjb3ksXG4gICAgLmNoZWNrYm94LWFuZC1sYWJlbCAuY3VzdG9tLXJhZGlvLmhhcy1lcnJvciAuZGVjb3ksXG4gICAgLnJhZGlvLWFuZC1sYWJlbCAuY3VzdG9tLWNoZWNrYm94Lmhhcy1lcnJvciAuZGVjb3ksXG4gICAgLnJhZGlvLWFuZC1sYWJlbCAuY3VzdG9tLXJhZGlvLmhhcy1lcnJvciAuZGVjb3kge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZTdlOTtcbiAgICAgIGJvcmRlci1jb2xvcjogI2VhM2YzZjsgfVxuICAuY2hlY2tib3gtYW5kLWxhYmVsIC5kZWNveSxcbiAgLnJhZGlvLWFuZC1sYWJlbCAuZGVjb3kge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmY0ZjU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB3aWR0aDogMTZweDsgfVxuICAuY2hlY2tib3gtYW5kLWxhYmVsIC5sYWJlbCxcbiAgLnJhZGlvLWFuZC1sYWJlbCAubGFiZWwge1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBjb2xvcjogIzYxNjA2MDtcbiAgICBsaW5lLWhlaWdodDogMS41ZW07IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgICAuY2hlY2tib3gtYW5kLWxhYmVsIC5sYWJlbCxcbiAgICAgIC5yYWRpby1hbmQtbGFiZWwgLmxhYmVsIHtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgICAuY2hlY2tib3gtYW5kLWxhYmVsIC5sYWJlbCxcbiAgICAgIC5yYWRpby1hbmQtbGFiZWwgLmxhYmVsIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAuY2hlY2tib3gtYW5kLWxhYmVsIC5sYWJlbCxcbiAgICAgIC5yYWRpby1hbmQtbGFiZWwgLmxhYmVsIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLmNoZWNrYm94LWFuZC1sYWJlbCAubGFiZWwsXG4gICAgICAucmFkaW8tYW5kLWxhYmVsIC5sYWJlbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDsgfSB9XG4gICAgLmNoZWNrYm94LWFuZC1sYWJlbCAubGFiZWwubG9hZGluZyxcbiAgICAucmFkaW8tYW5kLWxhYmVsIC5sYWJlbC5sb2FkaW5nIHtcbiAgICAgIGFuaW1hdGlvbjogdXBkYXRpbmcgMnMgZWFzZS1vdXQgaW5maW5pdGU7IH1cbiAgICAuY2hlY2tib3gtYW5kLWxhYmVsIC5sYWJlbCAubGluZS0xLFxuICAgIC5jaGVja2JveC1hbmQtbGFiZWwgLmxhYmVsIC5saW5lLTIsXG4gICAgLnJhZGlvLWFuZC1sYWJlbCAubGFiZWwgLmxpbmUtMSxcbiAgICAucmFkaW8tYW5kLWxhYmVsIC5sYWJlbCAubGluZS0yIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLmNoZWNrYm94LWFuZC1sYWJlbCAubGFiZWwgLmxpbmUtMSxcbiAgICAucmFkaW8tYW5kLWxhYmVsIC5sYWJlbCAubGluZS0xIHtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIGNvbG9yOiAjMTYxYTFkO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAuMDdlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAgICAgLmNoZWNrYm94LWFuZC1sYWJlbCAubGFiZWwgLmxpbmUtMSxcbiAgICAgICAgLnJhZGlvLWFuZC1sYWJlbCAubGFiZWwgLmxpbmUtMSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNXB4OyB9IH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAgICAgLmNoZWNrYm94LWFuZC1sYWJlbCAubGFiZWwgLmxpbmUtMSxcbiAgICAgICAgLnJhZGlvLWFuZC1sYWJlbCAubGFiZWwgLmxpbmUtMSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgLmNoZWNrYm94LWFuZC1sYWJlbCAubGFiZWwgLmxpbmUtMSxcbiAgICAgICAgLnJhZGlvLWFuZC1sYWJlbCAubGFiZWwgLmxpbmUtMSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgIC5jaGVja2JveC1hbmQtbGFiZWwgLmxhYmVsIC5saW5lLTEsXG4gICAgICAgIC5yYWRpby1hbmQtbGFiZWwgLmxhYmVsIC5saW5lLTEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gICAgLmNoZWNrYm94LWFuZC1sYWJlbCAubGFiZWwgLmxpbmUtMSArIC5saW5lLTIsXG4gICAgLnJhZGlvLWFuZC1sYWJlbCAubGFiZWwgLmxpbmUtMSArIC5saW5lLTIge1xuICAgICAgbWFyZ2luLXRvcDogLjI1ZW07IH1cblxuLmlucHV0LWNoZWNrYm94IHtcbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICBoZWlnaHQ6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB3aWR0aDogMXB4OyB9XG4gIC5pbnB1dC1jaGVja2JveCArIC5kZWNveSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmlucHV0LWNoZWNrYm94ICsgLmRlY295IC5jaGVjayB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZpbGw6ICMwMDZkYmE7XG4gICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICBsZWZ0OiAzcHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMS4yNzUpO1xuICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICB6LWluZGV4OiAyOyB9XG4gIC5pbnB1dC1jaGVja2JveDpjaGVja2VkICsgLmRlY295IC5jaGVjayB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxuICAuaW5wdXQtY2hlY2tib3g6Zm9jdXMgKyAuZGVjb3kge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgb3V0bGluZTogMnB4IHNvbGlkICMwMGE3ZTA7IH1cblxuLmlucHV0LXJhZGlvIHtcbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICBoZWlnaHQ6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB3aWR0aDogMXB4OyB9XG4gIC5pbnB1dC1yYWRpbyArIC5kZWNveSB7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gICAgLmlucHV0LXJhZGlvICsgLmRlY295OjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNmRiYTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDhweDtcbiAgICAgIGxlZnQ6IDNweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogM3B4O1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEuMjc1KTtcbiAgICAgIHdpZHRoOiA4cHg7XG4gICAgICB6LWluZGV4OiAyOyB9XG4gIC5pbnB1dC1yYWRpbzpjaGVja2VkICsgLmRlY295OjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cbiAgLmlucHV0LXJhZGlvOmZvY3VzICsgLmRlY295IHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIG91dGxpbmU6IDJweCBzb2xpZCAjMDBhN2UwOyB9XG5cbi5jdnYtZGVzY3JpcHRpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gODUlO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICBib3R0b206IDA7XG4gIGhlaWdodDogMTI1cHg7XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMTAlKTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB3aWR0aDogY2FsYygxMDAlIC0gMnB4KTtcbiAgei1pbmRleDogMTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmN2di1kZXNjcmlwdGlvbiB7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDg1JSBhdXRvO1xuICAgICAgaGVpZ2h0OiAyMjVweDsgfSB9XG4gIC5jdnYtZGVzY3JpcHRpb246OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2NjYztcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2NjYztcbiAgICBjb250ZW50OiAnJztcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgbGVmdDogMTAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlWSgtOXB4KTtcbiAgICB3aWR0aDogMTBweDsgfVxuICAuY3Z2LWRlc2NyaXB0aW9uLnNob3cge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSksIHRyYW5zZm9ybSAwLjVzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gIC53ZWJwIC5jdnYtZGVzY3JpcHRpb24uYW1leC5lbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NvcmUvY3Z2LWRlc2NyaXB0aW9uLTQtZGlnaXQtZW4uanBnLndlYnBcIik7IH1cbiAgLm5vLXdlYnAgLmN2di1kZXNjcmlwdGlvbi5hbWV4LmVuIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29yZS9jdnYtZGVzY3JpcHRpb24tNC1kaWdpdC1lbi5qcGdcIik7IH1cbiAgLndlYnAgLmN2di1kZXNjcmlwdGlvbi5hbWV4LmVzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29yZS9jdnYtZGVzY3JpcHRpb24tNC1kaWdpdC1lcy5qcGcud2VicFwiKTsgfVxuICAubm8td2VicCAuY3Z2LWRlc2NyaXB0aW9uLmFtZXguZXMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2N2di1kZXNjcmlwdGlvbi00LWRpZ2l0LWVzLmpwZ1wiKTsgfVxuICAud2VicCAuY3Z2LWRlc2NyaXB0aW9uLmFtZXguZnIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2N2di1kZXNjcmlwdGlvbi00LWRpZ2l0LWZyLmpwZy53ZWJwXCIpOyB9XG4gIC5uby13ZWJwIC5jdnYtZGVzY3JpcHRpb24uYW1leC5mciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NvcmUvY3Z2LWRlc2NyaXB0aW9uLTQtZGlnaXQtZnIuanBnXCIpOyB9XG4gIC53ZWJwIC5jdnYtZGVzY3JpcHRpb24uYW1leC5ubCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NvcmUvY3Z2LWRlc2NyaXB0aW9uLTQtZGlnaXQtbmwuanBnLndlYnBcIik7IH1cbiAgLm5vLXdlYnAgLmN2di1kZXNjcmlwdGlvbi5hbWV4Lm5sIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29yZS9jdnYtZGVzY3JpcHRpb24tNC1kaWdpdC1ubC5qcGdcIik7IH1cbiAgLndlYnAgLmN2di1kZXNjcmlwdGlvbi5hbWV4LnpoIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29yZS9jdnYtZGVzY3JpcHRpb24tNC1kaWdpdC16aC5qcGcud2VicFwiKTsgfVxuICAubm8td2VicCAuY3Z2LWRlc2NyaXB0aW9uLmFtZXguemgge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2N2di1kZXNjcmlwdGlvbi00LWRpZ2l0LXpoLmpwZ1wiKTsgfVxuICAuY3Z2LWRlc2NyaXB0aW9uLmFtZXggLnRleHQtMy1kaWdpdCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuY3Z2LWRlc2NyaXB0aW9uLmFtZXggLnRleHQtNC1kaWdpdCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLndlYnAgLmN2di1kZXNjcmlwdGlvbi5lbiwgLndlYnAgLmN2di1kZXNjcmlwdGlvbi5kaXNjb3Zlci5lbiwgLndlYnAgLmN2di1kZXNjcmlwdGlvbi5tYXN0ZXJjYXJkLmVuLCAud2VicCAuY3Z2LWRlc2NyaXB0aW9uLnZpc2EuZW4ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2N2di1kZXNjcmlwdGlvbi0zLWRpZ2l0LWVuLmpwZy53ZWJwXCIpOyB9XG4gIC5uby13ZWJwIC5jdnYtZGVzY3JpcHRpb24uZW4sIC5uby13ZWJwIC5jdnYtZGVzY3JpcHRpb24uZGlzY292ZXIuZW4sIC5uby13ZWJwIC5jdnYtZGVzY3JpcHRpb24ubWFzdGVyY2FyZC5lbiwgLm5vLXdlYnAgLmN2di1kZXNjcmlwdGlvbi52aXNhLmVuIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29yZS9jdnYtZGVzY3JpcHRpb24tMy1kaWdpdC1lbi5qcGdcIik7IH1cbiAgLndlYnAgLmN2di1kZXNjcmlwdGlvbi5lcywgLndlYnAgLmN2di1kZXNjcmlwdGlvbi5kaXNjb3Zlci5lcywgLndlYnAgLmN2di1kZXNjcmlwdGlvbi5tYXN0ZXJjYXJkLmVzLCAud2VicCAuY3Z2LWRlc2NyaXB0aW9uLnZpc2EuZXMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2N2di1kZXNjcmlwdGlvbi0zLWRpZ2l0LWVzLmpwZy53ZWJwXCIpOyB9XG4gIC5uby13ZWJwIC5jdnYtZGVzY3JpcHRpb24uZXMsIC5uby13ZWJwIC5jdnYtZGVzY3JpcHRpb24uZGlzY292ZXIuZXMsIC5uby13ZWJwIC5jdnYtZGVzY3JpcHRpb24ubWFzdGVyY2FyZC5lcywgLm5vLXdlYnAgLmN2di1kZXNjcmlwdGlvbi52aXNhLmVzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29yZS9jdnYtZGVzY3JpcHRpb24tMy1kaWdpdC1lcy5qcGdcIik7IH1cbiAgLndlYnAgLmN2di1kZXNjcmlwdGlvbi5mciwgLndlYnAgLmN2di1kZXNjcmlwdGlvbi5kaXNjb3Zlci5mciwgLndlYnAgLmN2di1kZXNjcmlwdGlvbi5tYXN0ZXJjYXJkLmZyLCAud2VicCAuY3Z2LWRlc2NyaXB0aW9uLnZpc2EuZnIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2N2di1kZXNjcmlwdGlvbi0zLWRpZ2l0LWZyLmpwZy53ZWJwXCIpOyB9XG4gIC5uby13ZWJwIC5jdnYtZGVzY3JpcHRpb24uZnIsIC5uby13ZWJwIC5jdnYtZGVzY3JpcHRpb24uZGlzY292ZXIuZnIsIC5uby13ZWJwIC5jdnYtZGVzY3JpcHRpb24ubWFzdGVyY2FyZC5mciwgLm5vLXdlYnAgLmN2di1kZXNjcmlwdGlvbi52aXNhLmZyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29yZS9jdnYtZGVzY3JpcHRpb24tMy1kaWdpdC1mci5qcGdcIik7IH1cbiAgLndlYnAgLmN2di1kZXNjcmlwdGlvbi5ubCwgLndlYnAgLmN2di1kZXNjcmlwdGlvbi5kaXNjb3Zlci5ubCwgLndlYnAgLmN2di1kZXNjcmlwdGlvbi5tYXN0ZXJjYXJkLm5sLCAud2VicCAuY3Z2LWRlc2NyaXB0aW9uLnZpc2Eubmwge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2N2di1kZXNjcmlwdGlvbi0zLWRpZ2l0LW5sLmpwZy53ZWJwXCIpOyB9XG4gIC5uby13ZWJwIC5jdnYtZGVzY3JpcHRpb24ubmwsIC5uby13ZWJwIC5jdnYtZGVzY3JpcHRpb24uZGlzY292ZXIubmwsIC5uby13ZWJwIC5jdnYtZGVzY3JpcHRpb24ubWFzdGVyY2FyZC5ubCwgLm5vLXdlYnAgLmN2di1kZXNjcmlwdGlvbi52aXNhLm5sIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29yZS9jdnYtZGVzY3JpcHRpb24tMy1kaWdpdC1ubC5qcGdcIik7IH1cbiAgLndlYnAgLmN2di1kZXNjcmlwdGlvbi56aCwgLndlYnAgLmN2di1kZXNjcmlwdGlvbi5kaXNjb3Zlci56aCwgLndlYnAgLmN2di1kZXNjcmlwdGlvbi5tYXN0ZXJjYXJkLnpoLCAud2VicCAuY3Z2LWRlc2NyaXB0aW9uLnZpc2Euemgge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2N2di1kZXNjcmlwdGlvbi0zLWRpZ2l0LXpoLmpwZy53ZWJwXCIpOyB9XG4gIC5uby13ZWJwIC5jdnYtZGVzY3JpcHRpb24uemgsIC5uby13ZWJwIC5jdnYtZGVzY3JpcHRpb24uZGlzY292ZXIuemgsIC5uby13ZWJwIC5jdnYtZGVzY3JpcHRpb24ubWFzdGVyY2FyZC56aCwgLm5vLXdlYnAgLmN2di1kZXNjcmlwdGlvbi52aXNhLnpoIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29yZS9jdnYtZGVzY3JpcHRpb24tMy1kaWdpdC16aC5qcGdcIik7IH1cbiAgLmN2di1kZXNjcmlwdGlvbiAudGV4dC00LWRpZ2l0IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbi5jdnYtaGludCB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDE2cHggY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBjb2xvcjogIzAwYTdlMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmb250LXNpemU6IDEwcHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC4wNzVlbTtcbiAgcGFkZGluZy1sZWZ0OiA3MHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRvcDogMDtcbiAgdHJhbnNpdGlvbjogY29sb3IgLjJzIGVhc2Utb3V0O1xuICB3aWR0aDogMTAwJTsgfVxuICAud2VicCAuY3Z2LWhpbnQge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2N2di1oaW50LTMtZGlnaXQucG5nLndlYnBcIik7IH1cbiAgLm5vLXdlYnAgLmN2di1oaW50IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29yZS9jdnYtaGludC0zLWRpZ2l0LnBuZ1wiKTsgfVxuICAuY3Z2LWhpbnQ6aG92ZXIsIC5jdnYtaGludDphY3RpdmUge1xuICAgIGNvbG9yOiAjMDA2ZGJhOyB9XG4gIC53ZWJwIC5jdnYtaGludC5hbWV4IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29yZS9jdnYtaGludC00LWRpZ2l0LnBuZy53ZWJwXCIpOyB9XG4gIC5uby13ZWJwIC5jdnYtaGludC5hbWV4IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29yZS9jdnYtaGludC00LWRpZ2l0LnBuZ1wiKTsgfVxuICAud2VicCAuY3Z2LWhpbnQuZGlzY292ZXIsIC53ZWJwIC5jdnYtaGludC5tYXN0ZXJjYXJkLCAud2VicCAuY3Z2LWhpbnQudmlzYSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NvcmUvY3Z2LWhpbnQtMy1kaWdpdC5wbmcud2VicFwiKTsgfVxuICAubm8td2VicCAuY3Z2LWhpbnQuZGlzY292ZXIsIC5uby13ZWJwIC5jdnYtaGludC5tYXN0ZXJjYXJkLCAubm8td2VicCAuY3Z2LWhpbnQudmlzYSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NvcmUvY3Z2LWhpbnQtMy1kaWdpdC5wbmdcIik7IH1cbiAgLmN2di1oaW50IHNwYW4ge1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4uY3JlZGl0LWNhcmQtaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5jcmVkaXQtY2FyZC1pY29uOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgYm90dG9tOiAwO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGhlaWdodDogMjBweDtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygxMDAlICsgMTBweCkpO1xuICAgIHdpZHRoOiAzMHB4OyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDg5NXB4KSB7XG4gICAgICAuY3JlZGl0LWNhcmQtaWNvbjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLndlYnAgLmNyZWRpdC1jYXJkLWljb24uYW1leDo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2NjLWFtZXgucG5nLndlYnBcIik7IH1cbiAgLm5vLXdlYnAgLmNyZWRpdC1jYXJkLWljb24uYW1leDo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2NjLWFtZXgucG5nXCIpOyB9XG4gIC53ZWJwIC5jcmVkaXQtY2FyZC1pY29uLmRpc2NvdmVyOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NvcmUvY2MtZGlzY292ZXIucG5nLndlYnBcIik7IH1cbiAgLm5vLXdlYnAgLmNyZWRpdC1jYXJkLWljb24uZGlzY292ZXI6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29yZS9jYy1kaXNjb3Zlci5wbmdcIik7IH1cbiAgLndlYnAgLmNyZWRpdC1jYXJkLWljb24ubWFzdGVyY2FyZDo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2NjLW1hc3RlcmNhcmQucG5nLndlYnBcIik7IH1cbiAgLm5vLXdlYnAgLmNyZWRpdC1jYXJkLWljb24ubWFzdGVyY2FyZDo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2NjLW1hc3RlcmNhcmQucG5nXCIpOyB9XG4gIC53ZWJwIC5jcmVkaXQtY2FyZC1pY29uLnZpc2E6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29yZS9jYy12aXNhLnBuZy53ZWJwXCIpOyB9XG4gIC5uby13ZWJwIC5jcmVkaXQtY2FyZC1pY29uLnZpc2E6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29yZS9jYy12aXNhLnBuZ1wiKTsgfVxuXG4uY3JlZGl0LWNhcmQtdGh1bWIge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogYXV0byAzMHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDE2cHg7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDUwcHg7IH1cbiAgLndlYnAgLmNyZWRpdC1jYXJkLXRodW1iLmFtZXgge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2NjLWFtZXgucG5nLndlYnBcIik7IH1cbiAgLm5vLXdlYnAgLmNyZWRpdC1jYXJkLXRodW1iLmFtZXgge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2NjLWFtZXgucG5nXCIpOyB9XG4gIC53ZWJwIC5jcmVkaXQtY2FyZC10aHVtYi5kaXNjb3ZlciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NvcmUvY2MtZGlzY292ZXIucG5nLndlYnBcIik7IH1cbiAgLm5vLXdlYnAgLmNyZWRpdC1jYXJkLXRodW1iLmRpc2NvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29yZS9jYy1kaXNjb3Zlci5wbmdcIik7IH1cbiAgLndlYnAgLmNyZWRpdC1jYXJkLXRodW1iLm1hc3RlcmNhcmQge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2NjLW1hc3RlcmNhcmQucG5nLndlYnBcIik7IH1cbiAgLm5vLXdlYnAgLmNyZWRpdC1jYXJkLXRodW1iLm1hc3RlcmNhcmQge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2NjLW1hc3RlcmNhcmQucG5nXCIpOyB9XG4gIC53ZWJwIC5jcmVkaXQtY2FyZC10aHVtYi52aXNhIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29yZS9jYy12aXNhLnBuZy53ZWJwXCIpOyB9XG4gIC5uby13ZWJwIC5jcmVkaXQtY2FyZC10aHVtYi52aXNhIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29yZS9jYy12aXNhLnBuZ1wiKTsgfVxuICAuY3JlZGl0LWNhcmQtdGh1bWIgLmZvcm0tY29sdW1uLmhhcy1lcnJvciAuY3JlZGl0LWNhcmQtdGh1bWIgLmZvcm0tY29sdW1uIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG5cbmlucHV0W2RhdGEtYmVoYXZpb3J+PSdkaXNhYmxlLWZvY3VzJ10sXG5zZWxlY3RbZGF0YS1iZWhhdmlvcn49J2Rpc2FibGUtZm9jdXMnXSxcbnRleHRhcmVhW2RhdGEtYmVoYXZpb3J+PSdkaXNhYmxlLWZvY3VzJ10ge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4uZXJyb3ItbGlzdCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmVycm9yLWxpc3Q6bm90KDplbXB0eSk6bm90KC5oaWRlKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VhM2YzZjtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgIHBhZGRpbmc6IDE2cHg7IH1cbiAgICAuZXJyb3ItbGlzdDpub3QoOmVtcHR5KTpub3QoLmhpZGUpLnNob3cge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAuZXJyb3ItbGlzdDpub3QoOmVtcHR5KTpub3QoLmhpZGUpIGEge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAgIC5lcnJvci1saXN0Om5vdCg6ZW1wdHkpOm5vdCguaGlkZSkgLmVycm9yLWxpc3QtaXRlbSB7XG4gICAgICBsaW5lLWhlaWdodDogMS4zZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogLjVlbTsgfVxuICAgICAgLmVycm9yLWxpc3Q6bm90KDplbXB0eSk6bm90KC5oaWRlKSAuZXJyb3ItbGlzdC1pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuXG4uZm9ybS1tb2R1bGUgLnN1Y2Nlc3MtbGlzdCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmZvcm0tbW9kdWxlIC5zdWNjZXNzLWxpc3Q6bm90KDplbXB0eSk6bm90KC5oaWRlKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNjYjg3ODtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgIHBhZGRpbmc6IDE2cHg7IH1cbiAgICAuZm9ybS1tb2R1bGUgLnN1Y2Nlc3MtbGlzdDpub3QoOmVtcHR5KTpub3QoLmhpZGUpLnNob3cge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAuZm9ybS1tb2R1bGUgLnN1Y2Nlc3MtbGlzdDpub3QoOmVtcHR5KTpub3QoLmhpZGUpIGEge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAgIC5mb3JtLW1vZHVsZSAuc3VjY2Vzcy1saXN0Om5vdCg6ZW1wdHkpOm5vdCguaGlkZSkgLnN1Y2Nlc3NzLWxpc3QtaXRlbSB7XG4gICAgICBsaW5lLWhlaWdodDogMS4zZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogLjVlbTsgfVxuICAgICAgLmZvcm0tbW9kdWxlIC5zdWNjZXNzLWxpc3Q6bm90KDplbXB0eSk6bm90KC5oaWRlKSAuc3VjY2Vzc3MtbGlzdC1pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuXG4uZm9ybS1tb2R1bGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmZvcm0tbW9kdWxlOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmZvcm0tbW9kdWxlOm5vdCg6ZW1wdHkpIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgICBwYWRkaW5nLXRvcDogMTBweDsgfVxuICAuZm9ybS1tb2R1bGUubG9hZGluZyA+IFtkYXRhLWJlaGF2aW9yPSdsb2FkZXInXSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZS1vdXQsIHRyYW5zZm9ybSAwLjRzIGN1YmljLWJlemllcigwLjI1LCAwLjQ2LCAwLjQ1LCAwLjk0KTsgfVxuICAgIC5mb3JtLW1vZHVsZS5sb2FkaW5nID4gW2RhdGEtYmVoYXZpb3I9J2xvYWRlciddIC50ZXh0IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZTsgfVxuICAuZm9ybS1tb2R1bGUubG9hZGluZyA+ICo6bm90KFtkYXRhLWJlaGF2aW9yPSdsb2FkZXInXSkge1xuICAgIG9wYWNpdHk6IC4zNTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG4gIC5mb3JtLW1vZHVsZSA+IFtkYXRhLWJlaGF2aW9yPSdsb2FkZXInXSB7XG4gICAgbGVmdDogNTAlO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDI1MCUpO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLW91dCwgdHJhbnNmb3JtIDAuNHMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDg1LCAwLjY4LCAwLjUzKTsgfVxuICAgIC5mb3JtLW1vZHVsZSA+IFtkYXRhLWJlaGF2aW9yPSdsb2FkZXInXSAudGV4dCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5mb3JtLW1vZHVsZSA+ICo6bm90KFtkYXRhLWJlaGF2aW9yPSdsb2FkZXInXSkge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgZWFzZS1vdXQgLjRzOyB9XG4gIC5mb3JtLW1vZHVsZSBkZDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5mb3JtLW1vZHVsZS0tY29uZGl0aW9uYWwge1xuICBvcGFjaXR5OiAuNTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgZWFzZS1vdXQ7IH1cbiAgLmZvcm0tbW9kdWxlLS1jb25kaXRpb25hbCAuZXJyb3ItbGlzdCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuZm9ybS1tb2R1bGUtLWNvbmRpdGlvbmFsLmNoZWNrZWQge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgICAuZm9ybS1tb2R1bGUtLWNvbmRpdGlvbmFsLmNoZWNrZWQgLmVycm9yLWxpc3Q6bm90KDplbXB0eSkge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cblxuLmZvcm0tc2VjdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgLmZvcm0tc2VjdGlvbjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5mb3JtLWNvbnRhaW5lciB7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5mb3JtLWNvbnRhaW5lciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2MHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuZm9ybS1jb250YWluZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogODBweDsgfSB9XG4gIC5mb3JtLWNvbnRhaW5lciAuYm9yZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJvcmRlcjogMCBzb2xpZCAjY2NjO1xuICAgIHotaW5kZXg6IDI7IH1cbiAgICAuZm9ybS1jb250YWluZXIgLmJvcmRlci0tdHJhbnNwYXJlbnQge1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5mb3JtLWNvbnRhaW5lciAuYm9yZGVyLnRvcCB7XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7IH1cbiAgICAuZm9ybS1jb250YWluZXIgLmJvcmRlci5yaWdodCB7XG4gICAgICBib3JkZXItcmlnaHQtd2lkdGg6IDFweDsgfVxuICAgIC5mb3JtLWNvbnRhaW5lciAuYm9yZGVyLmJvdHRvbSB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7IH1cbiAgICAuZm9ybS1jb250YWluZXIgLmJvcmRlci5sZWZ0IHtcbiAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAxcHg7IH1cbiAgLmZvcm0tY29udGFpbmVyIC5jb3B5IHtcbiAgICBjb2xvcjogIzYxNjA2MDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgbWFyZ2luLXRvcDogMTBweDsgfVxuICAuZm9ybS1jb250YWluZXIgLmRpc2NyZXRpb25hcnkge1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICBjb2xvcjogIzYxNjA2MDtcbiAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgbWFyZ2luLXRvcDogMS45ZW07IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgICAuZm9ybS1jb250YWluZXIgLmRpc2NyZXRpb25hcnkge1xuICAgICAgICBmb250LXNpemU6IDEwcHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAgIC5mb3JtLWNvbnRhaW5lciAuZGlzY3JldGlvbmFyeSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTFweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLmZvcm0tY29udGFpbmVyIC5kaXNjcmV0aW9uYXJ5IHtcbiAgICAgICAgZm9udC1zaXplOiAxMXB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLmZvcm0tY29udGFpbmVyIC5kaXNjcmV0aW9uYXJ5IHtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgLmZvcm0tY29udGFpbmVyIC5oZWxwLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5mb3JtLWNvbnRhaW5lciAuaW50cm8tcGFyYWdyYXBoIHtcbiAgICBjb2xvcjogIzVhNjA2NjtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgLmZvcm0tY29udGFpbmVyIC5jb25kaXRpb25hbC5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbi5mb3JtLXJvdyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMCwgMWZyKSk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuZm9ybS1yb3cuZm9jdXMge1xuICAgIHotaW5kZXg6IDI7IH1cbiAgLmZvcm0tcm93Lm1hcmdpbi10b3Age1xuICAgIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgLmZvcm0tcm93LnJlYWQtb25seSxcbiAgLmZvcm0tcm93LnJlYWQtb25seSAuYm9yZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmNGY1O1xuICAgIGJvcmRlci1jb2xvcjogI2U1ZTVlNTsgfVxuICAuZm9ybS1yb3cgLmZvcm0tY29sdW1uIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxOyB9XG4gICAgLmZvcm0tcm93IC5mb3JtLWNvbHVtbi0tZmxleCB7XG4gICAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgICAuZm9ybS1yb3cgLmZvcm0tY29sdW1uLS1mbGV4ICoge1xuICAgICAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAgICAgLmZvcm0tcm93IC5mb3JtLWNvbHVtbi0tZmxleCAuZmxleGlibGUge1xuICAgICAgICBmbGV4OiAxIDEgYXV0bzsgfVxuICAgIC5mb3JtLXJvdyAuZm9ybS1jb2x1bW4tLW92ZXJmbG93IHtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlOyB9XG4gICAgLmZvcm0tcm93IC5mb3JtLWNvbHVtbi5mb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICMwMDZkYmE7XG4gICAgICB6LWluZGV4OiAzOyB9XG4gICAgLmZvcm0tcm93IC5mb3JtLWNvbHVtbi5oYXMtZXJyb3Ige1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZTdlOTsgfVxuXG4ubGFiZWwtZmxvYXQge1xuICBjb2xvcjogIzAwNmRiYTtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBsZWZ0OiAxNnB4O1xuICBsZXR0ZXItc3BhY2luZzogLjA1ZW07XG4gIG9wYWNpdHk6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRvcDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE4cHgpO1xuICB6LWluZGV4OiAxOyB9XG4gIC5sYWJlbC1mbG9hdC5pcy1yZXF1aXJlZDo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcgKic7IH1cbiAgLmxhYmVsLWZsb2F0LmlzLXJlcXVpcmVkIH4gaW5wdXQ6OnBsYWNlaG9sZGVyOjphZnRlciB7XG4gICAgY29udGVudDogJyAqJzsgfVxuICAuZm9ybS1jb2x1bW4uaGFzLXZhbHVlIC5sYWJlbC1mbG9hdCB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTNweCk7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgZWFzZS1vdXQsIHRyYW5zZm9ybSAuMnMgZWFzZS1vdXQ7IH1cblxuLmJsb2NrLWxhYmVsIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMTZweDtcbiAgcGFkZGluZy1sZWZ0OiAxNnB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxNnB4O1xuICBwYWRkaW5nLXRvcDogMTZweDsgfVxuICAucmFkaW8tYW5kLWxhYmVsICsgLmJsb2NrLWxhYmVsIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4OyB9XG4gIC5ibG9jay1sYWJlbCAubGFiZWwge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmJsb2NrLWxhYmVsIC5jdXN0b20tY2hlY2tib3gge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7IH1cblxuLnNoaXBwaW5nLWNvc3Qge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGZsb2F0OiByaWdodDtcbiAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAuc2hpcHBpbmctY29zdCAuZnJlZS1zaGlwcGluZyB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4uY3VzdG9tLXNlbGVjdCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgaGVpZ2h0OiA1OHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5jdXN0b20tc2VsZWN0LS1maWxsZWQge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNmZmYsICNmMmY0ZjUpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7IH1cbiAgLmN1c3RvbS1zZWxlY3Q6aG92ZXIgLnNlbGVjdC1jaGV2cm9uIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIC5jb2x1bW4gPiAuY3VzdG9tLXNlbGVjdCB7XG4gICAgaGVpZ2h0OiA2MHB4OyB9XG4gIC5jdXN0b20tc2VsZWN0Lmhhcy1lcnJvciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZTdlOTsgfVxuICAuY3VzdG9tLXNlbGVjdCBzZWxlY3Qge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbWVudWxpc3QtYnV0dG9uO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogMjsgfVxuICAgIC5pb3MgLmN1c3RvbS1zZWxlY3Qgc2VsZWN0IHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfVxuICAuY3VzdG9tLXNlbGVjdCAuZGVjb3kge1xuICAgIGNvbG9yOiAjOTM5MTkxO1xuICAgIGhlaWdodDogNThweDtcbiAgICBsaW5lLWhlaWdodDogNThweDtcbiAgICBwYWRkaW5nOiAwIDQwcHggMCAxNnB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5mb3JtLWNvbHVtbi5oYXMtdmFsdWUgLmN1c3RvbS1zZWxlY3QgLmRlY295IC50ZXh0IHtcbiAgICAgIGNvbG9yOiAjMTYxYTFkO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTsgfVxuICAgIC5jdXN0b20tc2VsZWN0IC5kZWNveSAudGV4dCB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycyBlYXNlLW91dDtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgLmN1c3RvbS1zZWxlY3QgLnNlbGVjdC1jaGV2cm9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDdweDtcbiAgICBtYXJnaW4tdG9wOiAtMy41cHg7XG4gICAgb3BhY2l0eTogLjU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxZW07XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGN1YmljLWJlemllcigwLjQ1NSwgMC4wMywgMC41MTUsIDAuOTU1KTtcbiAgICB3aWR0aDogMTFweDtcbiAgICB6LWluZGV4OiAxOyB9XG5cbi5jdXN0b20tc2VsZWN0LS10aWdodCB7XG4gIGhlaWdodDogNDBweDsgfVxuICAuY3VzdG9tLXNlbGVjdC0tdGlnaHQgLmRlY295IHtcbiAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLXRvcDogMDsgfVxuXG4uc2VsZWN0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM3Nzc7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2IzYjNiMztcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzc3NztcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjY2M7XG4gIGNvbG9yOiAjOTM5MTkxO1xuICBmb250LWZhbWlseTogXCJQcm94aW1hIE5vdmEgVzAxXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgQ2FsaWJyaSwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBwYWRkaW5nOiAxcHggM3B4OyB9XG5cbi5zcGlubmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiA0NHB4O1xuICB3aWR0aDogODBweDsgfVxuICAuc3Bpbm5lciBpbnB1dCxcbiAgLnNwaW5uZXIgLm1pbnVzLFxuICAuc3Bpbm5lciAucGx1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjRmNTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZDlkOWQ5O1xuICAgIGhlaWdodDogNDRweDtcbiAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnNwaW5uZXIgaW5wdXQge1xuICAgIGZsZXg6IDE7XG4gICAgZm9udC1mYW1pbHk6IFwiUHJveGltYSBOb3ZhIFcwMVwiLCBcIkhlbHZldGljYSBOZXVlXCIsIENhbGlicmksIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1pbi13aWR0aDogMzBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLW91dDsgfVxuICAgIC5zcGlubmVyIGlucHV0OmZvY3VzLCAuc3Bpbm5lciBpbnB1dDpmb2N1czpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMDBhN2UwO1xuICAgICAgb3V0bGluZTogbm9uZTsgfVxuICAgIC5zcGlubmVyIGlucHV0OmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmY0ZjU7IH1cbiAgICAuc3Bpbm5lciBpbnB1dFt0eXBlPSdudW1iZXInXSB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgICAgIC5zcGlubmVyIGlucHV0W3R5cGU9J251bWJlciddOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLCAuc3Bpbm5lciBpbnB1dFt0eXBlPSdudW1iZXInXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwOyB9XG4gIC5zcGlubmVyIC5taW51cyxcbiAgLnNwaW5uZXIgLnBsdXMge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmbGV4LWJhc2lzOiAyMnB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuICAgIC5zcGlubmVyIC5taW51czo6YWZ0ZXIsIC5zcGlubmVyIC5taW51czo6YmVmb3JlLFxuICAgIC5zcGlubmVyIC5wbHVzOjphZnRlcixcbiAgICAuc3Bpbm5lciAucGx1czo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM2MTYwNjA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbGVmdDogMDtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdG9wOiAwOyB9XG4gICAgLnNwaW5uZXIgLm1pbnVzOmhvdmVyLFxuICAgIC5zcGlubmVyIC5wbHVzOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjY2M7IH1cbiAgICAuc3Bpbm5lciAubWludXMuZGlzYWJsZWQsXG4gICAgLnNwaW5uZXIgLnBsdXMuZGlzYWJsZWQge1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgIG9wYWNpdHk6IC41OyB9XG4gICAgICAuc3Bpbm5lciAubWludXMuZGlzYWJsZWQ6aG92ZXIsXG4gICAgICAuc3Bpbm5lciAucGx1cy5kaXNhYmxlZDpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmY0ZjU7IH1cbiAgLnNwaW5uZXIgLm1pbnVzIHtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7IH1cbiAgICAuc3Bpbm5lciAubWludXM6OmFmdGVyIHtcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgd2lkdGg6IDVweDsgfVxuICAgIC5zcGlubmVyIC5taW51czo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnNwaW5uZXIgLnBsdXMge1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwOyB9XG4gICAgLnNwaW5uZXIgLnBsdXM6OmFmdGVyIHtcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgd2lkdGg6IDdweDsgfVxuICAgIC5zcGlubmVyIC5wbHVzOjpiZWZvcmUge1xuICAgICAgaGVpZ2h0OiA3cHg7XG4gICAgICB3aWR0aDogMXB4OyB9XG5cbi5zcGlubmVyLS1icmlnaHQgaW5wdXQsXG4uc3Bpbm5lci0tYnJpZ2h0IC5taW51cyxcbi5zcGlubmVyLS1icmlnaHQgLnBsdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG5cbi5zcGlubmVyLS1sIHtcbiAgaGVpZ2h0OiA1MHB4O1xuICBtaW4td2lkdGg6IDEwcHg7XG4gIHdpZHRoOiAxMDBweDsgfVxuICAuc3Bpbm5lci0tbCBpbnB1dCxcbiAgLnNwaW5uZXItLWwgLm1pbnVzLFxuICAuc3Bpbm5lci0tbCAucGx1cyB7XG4gICAgY29sb3I6ICMyZTMxMzQ7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGhlaWdodDogNTBweDtcbiAgICBsaW5lLWhlaWdodDogNTBweDsgfVxuICAuc3Bpbm5lci0tbCBpbnB1dCB7XG4gICAgbWluLXdpZHRoOiA0MHB4OyB9XG4gIC5zcGlubmVyLS1sIC5taW51czpob3ZlcixcbiAgLnNwaW5uZXItLWwgLnBsdXM6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmY0ZjU7IH1cblxuLnNwaW5uZXItLXMge1xuICBoZWlnaHQ6IDMwcHg7XG4gIG1pbi13aWR0aDogMTBweDtcbiAgd2lkdGg6IDQuNWVtOyB9XG4gIC5zcGlubmVyLS1zIGlucHV0LFxuICAuc3Bpbm5lci0tcyAubWludXMsXG4gIC5zcGlubmVyLS1zIC5wbHVzIHtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDMwcHg7IH1cbiAgLnNwaW5uZXItLXMgaW5wdXQge1xuICAgIG1pbi13aWR0aDogMjVweDsgfVxuXG4uaGlkZS13ZWJraXQtYnV0dG9uczo6LXdlYmtpdC1hdXRvLWZpbGwtYnV0dG9uLCAuaGlkZS13ZWJraXQtYnV0dG9uczo6LXdlYmtpdC1jb250YWN0cy1hdXRvLWZpbGwtYnV0dG9uIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5pbnB1dC10ZXh0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgY29sb3I6ICMyZTMxMzQ7XG4gIGZvbnQtZmFtaWx5OiBcIlByb3hpbWEgTm92YSBXMDFcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBDYWxpYnJpLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGhlaWdodDogMjhweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgcGFkZGluZzogMCAxNnB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzIGVhc2Utb3V0O1xuICB3aWR0aDogMTAwJTsgfVxuICAuaW5wdXQtdGV4dDotd2Via2l0LWF1dG9maWxsIHtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAwIDEwMDBweCAjZmZmIGluc2V0O1xuICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAwO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgNTAwMHMgZWFzZS1pbi1vdXQgMHM7IH1cbiAgLmZvcm0tY29sdW1uLmhhcy12YWx1ZSAuaW5wdXQtdGV4dCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTsgfVxuICAgIC5mb3JtLWNvbHVtbi5oYXMtdmFsdWUgLmlucHV0LXRleHQ6Oi13ZWJraXQtY29udGFjdHMtYXV0by1maWxsLWJ1dHRvbiB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTsgfVxuICAgIC5mb3JtLWNvbHVtbi5oYXMtdmFsdWUgLmlucHV0LXRleHQ6Oi13ZWJraXQtYXV0by1maWxsLWJ1dHRvbiwgLmZvcm0tY29sdW1uLmhhcy12YWx1ZSAuaW5wdXQtdGV4dDo6LXdlYmtpdC1jcmVkZW50aWFscy1hdXRvLWZpbGwtYnV0dG9uIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApOyB9XG4gIC5pbnB1dC10ZXh0OmZvY3VzIHtcbiAgICBjb2xvcjogIzE2MWExZDtcbiAgICBvdXRsaW5lOiBub25lOyB9XG4gIC5pbnB1dC10ZXh0OjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICM5MzkxOTE7IH1cbiAgLmlucHV0LXRleHQ6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgLmlucHV0LXRleHQ6Oi13ZWJraXQtYXV0b2ZpbGwge1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDAgMzBweCB3aGl0ZSBpbnNldDtcbiAgICBoZWlnaHQ6IDM5cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogOXB4OyB9XG4gIC5pbnB1dC10ZXh0OjotbXMtY2xlYXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmlucHV0LXRleHQtLXRpZ2h0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAuaW5wdXQtdGV4dC0tdGlnaHQtbGVmdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5pbnB1dC10ZXh0LS10aWdodC1yaWdodCB7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAuaW5wdXQtdGV4dC5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbi5pbnB1dC10ZXh0LXN0YXRpYyB7XG4gIGNvbG9yOiAjOTM5MTkxO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGhlaWdodDogMzhweDtcbiAgbGluZS1oZWlnaHQ6IDM4cHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9XG4gIC5mb3JtLWNvbHVtbi5oYXMtdmFsdWUgLmlucHV0LXRleHQtc3RhdGljIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApOyB9XG4gIC5lZGdlIFtkYXRhLWJlaGF2aW9yfj0nYXV0by1zaXplJ10gKyAuaW5wdXQtdGV4dC1zdGF0aWMsXG4gIC5pb3MgW2RhdGEtYmVoYXZpb3J+PSdhdXRvLXNpemUnXSArIC5pbnB1dC10ZXh0LXN0YXRpYyB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMnB4LCAwLCAwKTsgfVxuICAuZWRnZSAuZm9ybS1jb2x1bW4uaGFzLXZhbHVlIFtkYXRhLWJlaGF2aW9yfj0nYXV0by1zaXplJ10gKyAuaW5wdXQtdGV4dC1zdGF0aWMsXG4gIC5pb3MgLmZvcm0tY29sdW1uLmhhcy12YWx1ZSBbZGF0YS1iZWhhdmlvcn49J2F1dG8tc2l6ZSddICsgLmlucHV0LXRleHQtc3RhdGljIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0ycHgsIDEwcHgsIDApOyB9XG4gIC5pbnB1dC10ZXh0LXN0YXRpYy5oYXMtdmFsdWUge1xuICAgIGNvbG9yOiAjMmUzMTM0OyB9XG5cbi5pbnB1dC10ZXh0LS10ZXh0YXJlYSB7XG4gIGhlaWdodDogMTE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIHBhZGRpbmctbGVmdDogMTZweDtcbiAgcGFkZGluZy1yaWdodDogMTZweDtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHJlc2l6ZTogbm9uZTsgfVxuXG4ucGFzc3dvcmQtdG9nZ2xlIHtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIGNvbG9yOiAjMDA2ZGJhO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAucGFzc3dvcmQtdG9nZ2xlOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAucGFzc3dvcmQtdG9nZ2xlOmFjdGl2ZSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB0b3A6IDUwJTsgfVxuXG4uaGVhZGVyLWJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNjFhMWQ7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogNDBweDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG4gIG1heC1oZWlnaHQ6IDQwcHg7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5oZWFkZXItYmFyIC5oZWFkZXItY29weSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4uaGVhZGVyLWJhciAuYXZhdGFyIHtcbiAgaGVpZ2h0OiA0MHB4O1xuICB3aWR0aDogNDBweDsgfVxuXG4uaGVhZGVyLWNvbHVtbiB7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgei1pbmRleDogMTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgLmhlYWRlci1jb2x1bW4ge1xuICAgICAgZm9udC1zaXplOiAxMHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5oZWFkZXItY29sdW1uIHtcbiAgICAgIGZvbnQtc2l6ZTogMTFweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuaGVhZGVyLWNvbHVtbiB7XG4gICAgICBmb250LXNpemU6IDExcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5oZWFkZXItY29sdW1uIHtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDsgfSB9XG4gIC5oZWFkZXItY29sdW1uW2RhdGEtYmVoYXZpb3JdLCAuaGVhZGVyLWNvbHVtbltocmVmXSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2Utb3V0OyB9XG4gICAgLmhlYWRlci1jb2x1bW5bZGF0YS1iZWhhdmlvcl06aG92ZXIsIC5oZWFkZXItY29sdW1uW2RhdGEtYmVoYXZpb3JdOmFjdGl2ZSwgLmhlYWRlci1jb2x1bW5baHJlZl06aG92ZXIsIC5oZWFkZXItY29sdW1uW2hyZWZdOmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzZkMmI2OyB9XG4gIC5oZWFkZXItY29sdW1uLmhlYWRlci1tYWluIHtcbiAgICBmbGV4OiAxOyB9XG5cbi5oZWFkZXItY29sdW1uIC5jb3B5IHtcbiAgY29sb3I6ICNmZmY7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLmhlYWRlci1jb2x1bW4uYm9yZGVyLWxlZnQge1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICM1YTYwNjY7IH1cblxuLmhlYWRlci1jb2x1bW4uYm9yZGVyLXJpZ2h0IHtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzVhNjA2NjsgfVxuXG4uaGVhZGVyLWNvbHVtbi5jYXJ0IHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjNWE2MDY2O1xuICBmb250LXdlaWdodDogNzAwO1xuICBwYWRkaW5nLXJpZ2h0OiAxZW07IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5oZWFkZXItY29sdW1uLmNhcnQge1xuICAgICAgcGFkZGluZy1yaWdodDogMS41ZW07IH0gfVxuICAuaGVhZGVyLWNvbHVtbi5jYXJ0OmhvdmVyIC50b3RhbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBjb2xvcjogIzAwYTdlMDsgfVxuICAuaGVhZGVyLWNvbHVtbi5jYXJ0IC5jb3B5IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNWVtOyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5oZWFkZXItY29sdW1uLmNhcnQgLmNvcHkge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLmhlYWRlci1jb2x1bW4uY2FydCAudG90YWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGE3ZTA7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgIHBhZGRpbmc6IC40ZW0gLjdlbTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLW91dCwgY29sb3IgLjJzIGVhc2Utb3V0OyB9XG4gIC5oZWFkZXItY29sdW1uLmNhcnQtLWVycm9yIC50b3RhbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VhM2YzZjsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItY29sdW1uLmFjY291bnQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDVweDsgfSB9XG5cbi5oZWFkZXItY29sdW1uLmFjY291bnQgLmNvcHkge1xuICBwYWRkaW5nLWxlZnQ6IDEuMmVtOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmhlYWRlci1jb2x1bW4uYWNjb3VudCAuY29weSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmhlYWRlci1jb2x1bW4gLmZsYWcge1xuICBtYXJnaW46IDAgMTVweDtcbiAgd2lkdGg6IDE2cHg7IH1cblxuLmhlYWRlci1jb2x1bW4uc3BvbnNvciAuY29weSB7XG4gIHBhZGRpbmc6IDAgLjkyZW07IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuaGVhZGVyLWNvbHVtbi5zcG9uc29yIC5jb3B5IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4qIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG5odG1sLm5vLXNjcm9sbCB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgaHRtbC5uby1zY3JvbGwgYm9keSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG5sYWJlbFtmb3JdOm5vdChbZm9yPScnXSkge1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLmFwcC1kb3dubG9hZC1saW5rLWxpc3QgLmFwcC1kb3dubG9hZC1saW5rIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDAgNXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMTc1cHg7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKSBhbmQgKG1heC13aWR0aDogNTMxcHgpIHtcbiAgICAuYXBwLWRvd25sb2FkLWxpbmstbGlzdCAuYXBwLWRvd25sb2FkLWxpbms6bnRoLWNoaWxkKDJuKzEpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH0gfVxuICAuYXBwLWRvd25sb2FkLWxpbmstbGlzdCAuYXBwLWRvd25sb2FkLWxpbmsgLmltZyB7XG4gICAgaGVpZ2h0OiA1NHB4O1xuICAgIHdpZHRoOiAxNzVweDsgfVxuICAuYXBwLWRvd25sb2FkLWxpbmstbGlzdCAuYXBwLWRvd25sb2FkLWxpbmsgLmxpbmsge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4uYXZhdGFyIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjRmNTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogNTBweDsgfVxuICAuYXZhdGFyOm5vdCguYXZhdGFyLS1mdWxsKSB7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG5cbi5hdmF0YXIgLmltYWdlIHtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYm90dG9tOiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbjogYXV0bztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMjsgfVxuXG4uYXZhdGFyIC5pbml0aWFscyB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC4wNWVtO1xuICBtYXJnaW4tcmlnaHQ6IC0uMDI1ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHotaW5kZXg6IDE7IH1cbiAgLmF2YXRhciAuaW5pdGlhbHMsXG4gIGEgLmF2YXRhciAuaW5pdGlhbHMge1xuICAgIGNvbG9yOiAjNjE2MDYwOyB9XG5cbi5jb250ZW50LXdyYXBwZXIge1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6IDEyODBweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmNvbnRlbnQtd3JhcHBlciB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuY29udGVudC13cmFwcGVyIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE0MDhweCkge1xuICAuY29udGVudC13cmFwcGVyLS1mbHVpZCB7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMHZ3IC0gKDE1cHggKiA0ICogMikpOyB9IH1cblxuLmNvbnRlbnQtd3JhcHBlci0tZnVsbC1ibGVlZCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDsgfVxuXG4uY29udGVudC13cmFwcGVyLS1uYXJyb3cge1xuICBtYXgtd2lkdGg6IDg5NnB4OyB9XG5cbi5oaWRlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uaGlkZS1ieS1kZWZhdWx0Om5vdCguc2hvdykge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5oci1pbmxpbmUge1xuICBib3JkZXI6IDA7XG4gIGZsZXg6IDE7XG4gIGhlaWdodDogMnB4O1xuICBtYXJnaW4tbGVmdDogMTBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5oci1pbmxpbmU6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDlkOWQ5O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGhlaWdodDogMXB4O1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogY2FsYyg1MCUgLSAxcHgpO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgQG1lZGlhIHByaW50IHtcbiAgICAgIC5oci1pbmxpbmU6OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMDAwO1xuICAgICAgICB0b3A6IGNhbGMoNTAlIC0gM3B4KTsgfSB9XG5cbi5wYXltZW50LW5vdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmNGY1O1xuICBjb2xvcjogIzYxNjA2MDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBwYWRkaW5nOiAyMHB4IDMwcHg7IH1cblxuLmxheW91dC10d28tY29sdW1uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg5NnB4KSB7XG4gICAgLmxheW91dC10d28tY29sdW1uIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH0gfVxuICAubGF5b3V0LXR3by1jb2x1bW4tLWNlbnRlciB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLmxheW91dC10d28tY29sdW1uLS13cmFwIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubGF5b3V0LXR3by1jb2x1bW4tLXdyYXAgLmxheW91dC1jb2x1bW4ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgICAgICAubGF5b3V0LXR3by1jb2x1bW4tLXdyYXAgLmxheW91dC1jb2x1bW4ge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH0gfVxuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgLmxheW91dC10d28tY29sdW1uLS13cmFwIC5sYXlvdXQtY29sdW1uIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9IH1cbiAgLmxheW91dC10d28tY29sdW1uIC5sYXlvdXQtY29sdW1uOm9ubHktY2hpbGQge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODk2cHgpIHtcbiAgICAubGF5b3V0LXR3by1jb2x1bW4gLmxheW91dC1jb2x1bW4ge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMjVweCk7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg5NnB4KSB7XG4gICAgLmxheW91dC10d28tY29sdW1uIC5sYXlvdXQtY29sdW1uLS1tYXJnaW4tbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gNTBweCk7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAubGF5b3V0LXR3by1jb2x1bW4tLXdlaWdodGVkIC5sYXlvdXQtY29sdW1uOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwJTsgfSB9XG5cbi5vZmZzY3JlZW4ge1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIGhlaWdodDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHdpZHRoOiAxcHg7IH1cblxuLnBhZ2luYXRpb24tbmF2IHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAucGFnaW5hdGlvbi1uYXYgLmxpbmsge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zNSk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiA4cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLW91dCwgYm9yZGVyLWNvbG9yIC4ycyBlYXNlLW91dDtcbiAgICB3aWR0aDogOHB4OyB9XG4gICAgLnBhZ2luYXRpb24tbmF2IC5saW5rLmFjdGl2ZSB7XG4gICAgICBhbmltYXRpb246IHB1bHNlIC4ycyBlYXNlLW91dCAxO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgICAgIGJvcmRlci1jb2xvcjogIzAwMDsgfVxuICAgIC5wYWdpbmF0aW9uLW5hdiAubGluayAudGV4dCB7XG4gICAgICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgd2lkdGg6IDFweDsgfVxuXG4ucGFnaW5hdGlvbi1uYXYtLXJldmVyc2VkIC5saW5rIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM1KTsgfVxuICAucGFnaW5hdGlvbi1uYXYtLXJldmVyc2VkIC5saW5rLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBib3JkZXItY29sb3I6ICNmZmY7IH1cblxuLnRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cblt2LWNsb2FrXSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4uZWxsaXBzaXMtbG9hZGVyIC5kb3Qge1xuICBhbmltYXRpb24tZHVyYXRpb246IDEuNXM7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICBhbmltYXRpb24tbmFtZTogZWxsaXBzaXMtbG9hZGVyO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlKG91dC1xdWFkKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwYTdlMDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogNnB4O1xuICBtYXJnaW4tbGVmdDogMXB4O1xuICBtYXJnaW4tcmlnaHQ6IDFweDtcbiAgb3BhY2l0eTogMDtcbiAgd2lkdGg6IDZweDsgfVxuICAuZWxsaXBzaXMtbG9hZGVyIC5kb3Q6bnRoLWNoaWxkKDIpIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuM3M7IH1cbiAgLmVsbGlwc2lzLWxvYWRlciAuZG90Om50aC1jaGlsZCgzKSB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAwLjZzOyB9XG5cbi5lbGxpcHNpcy1sb2FkZXIgLnRleHQge1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIGhlaWdodDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHdpZHRoOiAxcHg7IH1cblxuLmVsbGlwc2lzLWxvYWRlci0tcmV2ZXJzZWQgLmRvdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cblxuQGtleWZyYW1lcyBlbGxpcHNpcy1sb2FkZXIge1xuICAwJSB7XG4gICAgb3BhY2l0eTogLjU7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjUpOyB9XG4gIDM1JSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTsgfSB9XG5cbi5tb2RhbCB7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbjogYXV0bztcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgbWF4LXdpZHRoOiA1MDBweDtcbiAgb3BhY2l0eTogMDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwcHgpO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLW91dCwgdHJhbnNmb3JtIC4ycyBlYXNlLW91dCwgdmlzaWJpbGl0eSAwcyAuMnM7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDMwOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAubW9kYWwge1xuICAgICAgbWF4LWhlaWdodDogOTV2aDtcbiAgICAgIG1heC13aWR0aDogNzAwcHg7XG4gICAgICB0b3A6IDIuNXZoOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5tb2RhbCB7XG4gICAgICBwYWRkaW5nLXRvcDogNDBweDsgfSB9XG4gIC5tb2RhbC5zaG93IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDBzLCBvcGFjaXR5IC4ycyBlYXNlLW91dCwgdHJhbnNmb3JtIC4ycyBlYXNlLW91dDtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gIC5tb2RhbCAuaGVhZGluZyB7XG4gICAgZm9udC1zaXplOiAyMXB4O1xuICAgIGNvbG9yOiAjMDBhN2UwO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgICAubW9kYWwgLmhlYWRpbmcge1xuICAgICAgICBmb250LXNpemU6IDIycHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAgIC5tb2RhbCAuaGVhZGluZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLm1vZGFsIC5oZWFkaW5nIHtcbiAgICAgICAgZm9udC1zaXplOiAyOHB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLm1vZGFsIC5oZWFkaW5nIHtcbiAgICAgICAgZm9udC1zaXplOiAzMnB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgICAubW9kYWwgLmhlYWRpbmcge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG4ubW9kYWwgLmZvcm0tY29udGFpbmVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ubW9kYWwtY29sdW1uIHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLm1vZGFsLWNvbHVtbiB7XG4gICAgICBmbGV4LWJhc2lzOiBjYWxjKDUwJSAtIDEwcHgpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIC5tb2RhbC1jb2x1bW4uY2hlY2tlZCAubWlycm9yLWNoZWNrZWQge1xuICAgIGFuaW1hdGlvbjogZmxhc2ggLjJzIGVhc2Utb3V0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogLjFzO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1vZGFsLWNvbHVtbi0tZnVsbCB7XG4gICAgZmxleC1iYXNpczogMTAwJTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1vZGFsLXJvdyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDsgfSB9XG5cbi5tb2RhbC1yb3cgLmZvcm0tbW9kdWxlIHtcbiAgcGFkZGluZy1ib3R0b206IDA7IH1cblxuLm1vZGFsLXJvdyAuaGlkZS1pZi11bmNoZWNrZWQge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5tb2RhbC1yb3cgLm1pcnJvci1jaGVja2VkIHtcbiAgb3BhY2l0eTogLjM1O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLW91dDsgfVxuXG4ub3ZlcmxheSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgb3BhY2l0eTogMDtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgdHJhbnNpdGlvbjogLjJzIG9wYWNpdHkgZWFzZS1vdXQsIDBzIHZpc2liaWxpdHkgLjJzO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAyMDsgfVxuICAub3ZlcmxheS5pbnZpc2libGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5vdmVybGF5LmxpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gICAgLm92ZXJsYXkubGlnaHQuc2hvdyB7XG4gICAgICBvcGFjaXR5OiAuOTU7IH1cbiAgLm92ZXJsYXkuc2hvdyB7XG4gICAgb3BhY2l0eTogLjg7XG4gICAgdHJhbnNpdGlvbjogMHMgdmlzaWJpbGl0eSwgLjJzIG9wYWNpdHkgZWFzZS1vdXQ7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuXG5bZGF0YS1iZWhhdmlvcn49J2JsdXItYmVoaW5kLW92ZXJsYXknXSB7XG4gIHRyYW5zaXRpb246IGZpbHRlciAuMnMgZWFzZS1vdXQ7IH1cbiAgW2RhdGEtYmVoYXZpb3J+PSdibHVyLWJlaGluZC1vdmVybGF5J10uYmx1cnJlZCB7XG4gICAgZmlsdGVyOiBibHVyKDVweCk7IH1cblxuLnByb2Nlc3NpbmctbW9kYWwge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBsZWZ0OiAwO1xuICBvcGFjaXR5OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICB0cmFuc2Zvcm06IHNjYWxlKDIpO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNHMgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpLCB0cmFuc2Zvcm0gMC40cyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSksIHZpc2liaWxpdHkgMHMgMC40cztcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMzA7IH1cbiAgLnByb2Nlc3NpbmctbW9kYWwuc2hvdyB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zaXRpb246IHZpc2liaWxpdHkgMHMsIG9wYWNpdHkgLjRzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gLjRzIGVhc2Utb3V0O1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgLnByb2Nlc3NpbmctbW9kYWwgLmJ1dHRvbixcbiAgLnByb2Nlc3NpbmctbW9kYWwgLmJ0biB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzVweDsgfVxuICAgIC5wcm9jZXNzaW5nLW1vZGFsIC5idXR0b24uaGlkZGVuLFxuICAgIC5wcm9jZXNzaW5nLW1vZGFsIC5idG4uaGlkZGVuIHtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAucHJvY2Vzc2luZy1tb2RhbCAuaGVhZGluZyB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGNvbG9yOiAjNjE2MDYwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjNlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjVlbTtcbiAgICBtYXgtd2lkdGg6IDE3ZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgICAgLnByb2Nlc3NpbmctbW9kYWwgLmhlYWRpbmcge1xuICAgICAgICBmb250LXNpemU6IDE5cHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAgIC5wcm9jZXNzaW5nLW1vZGFsIC5oZWFkaW5nIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAucHJvY2Vzc2luZy1tb2RhbCAuaGVhZGluZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjFweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5wcm9jZXNzaW5nLW1vZGFsIC5oZWFkaW5nIHtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAucHJvY2Vzc2luZy1tb2RhbCAuaW1nIHtcbiAgICAgIHdpZHRoOiAxNTBweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgICAucHJvY2Vzc2luZy1tb2RhbCAuaW1nIHtcbiAgICAgIHdpZHRoOiAyMjVweDsgfSB9XG5cbi5wcm9kdWN0LWNsYWltLXN0YXRlbWVudCB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U1ZTVlNTtcbiAgbGluZS1oZWlnaHQ6IDEuM2VtO1xuICBtYXJnaW4tYm90dG9tOiAxLjVlbTtcbiAgbWFyZ2luLXRvcDogMS41ZW07XG4gIHBhZGRpbmc6IDAuODY2NjdlbSAxLjNlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAucHJvZHVjdC1jbGFpbS1zdGF0ZW1lbnQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgICAgIG1hcmdpbi10b3A6IDQ1cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5wcm9kdWN0LWNsYWltLXN0YXRlbWVudCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgICAgbWFyZ2luLXRvcDogNjBweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAucHJvZHVjdC1jbGFpbS1zdGF0ZW1lbnQge1xuICAgICAgZm9udC1zaXplOiAxMHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5wcm9kdWN0LWNsYWltLXN0YXRlbWVudCB7XG4gICAgICBmb250LXNpemU6IDExcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLnByb2R1Y3QtY2xhaW0tc3RhdGVtZW50IHtcbiAgICAgIGZvbnQtc2l6ZTogMTFweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLnByb2R1Y3QtY2xhaW0tc3RhdGVtZW50IHtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDsgfSB9XG4gIC5wcm9kdWN0LWNsYWltLXN0YXRlbWVudDplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4ucHJvZHVjdHMtZW1wdHktY2FydCB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgY29sb3I6ICM2MTYwNjA7XG4gIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgcGFkZGluZy1ib3R0b206IDRlbTtcbiAgcGFkZGluZy1sZWZ0OiAxLjVlbTtcbiAgcGFkZGluZy1yaWdodDogMS41ZW07XG4gIHBhZGRpbmctdG9wOiA0ZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgLnByb2R1Y3RzLWVtcHR5LWNhcnQge1xuICAgICAgZm9udC1zaXplOiAxM3B4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5wcm9kdWN0cy1lbXB0eS1jYXJ0IHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAucHJvZHVjdHMtZW1wdHktY2FydCB7XG4gICAgICBmb250LXNpemU6IDE0cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5wcm9kdWN0cy1lbXB0eS1jYXJ0IHtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDsgfSB9XG4gIC5wcm9kdWN0cy1lbXB0eS1jYXJ0IC5oZWFkaW5nIHtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgY29sb3I6ICMxNjFhMWQ7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG4gICAgbWFyZ2luLWJvdHRvbTogLjNlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgICAgLnByb2R1Y3RzLWVtcHR5LWNhcnQgLmhlYWRpbmcge1xuICAgICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAgIC5wcm9kdWN0cy1lbXB0eS1jYXJ0IC5oZWFkaW5nIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAucHJvZHVjdHMtZW1wdHktY2FydCAuaGVhZGluZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5wcm9kdWN0cy1lbXB0eS1jYXJ0IC5oZWFkaW5nIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgLnByb2R1Y3RzLWVtcHR5LWNhcnQgLmJ0bixcbiAgLnByb2R1Y3RzLWVtcHR5LWNhcnQgLmJ1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogMmVtOyB9XG5cbi5wcm9kdWN0cy10YWJsZSB7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAucHJvZHVjdHMtdGFibGUge1xuICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICBwYWRkaW5nLXRvcDogMTBweDsgfSB9XG4gIC5wcm9kdWN0cy10YWJsZSB0ZCxcbiAgLnByb2R1Y3RzLXRhYmxlIHRoIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207IH1cbiAgLnByb2R1Y3RzLXRhYmxlIC5saW5lLTEge1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBjb2xvcjogIzE2MWExZDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgICAucHJvZHVjdHMtdGFibGUgLmxpbmUtMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgICAgLnByb2R1Y3RzLXRhYmxlIC5saW5lLTEge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5wcm9kdWN0cy10YWJsZSAubGluZS0xIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLnByb2R1Y3RzLXRhYmxlIC5saW5lLTEge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICAgIC5wcm9kdWN0cy10YWJsZSAubGluZS0xIC51aS1pY29uIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IC0xNHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcbiAgICAgIG1hcmdpbi10b3A6IC0xNHB4OyB9XG4gICAgLnByb2R1Y3RzLXRhYmxlIC5saW5lLTEgLnVpLWljb24tc3Vic2NyaXB0aW9uIHtcbiAgICAgIGZpbGw6ICNmNjY7IH1cbiAgLnByb2R1Y3RzLXRhYmxlIC5saW5lLTIge1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBjb2xvcjogIzYxNjA2MDtcbiAgICBtYXJnaW4tdG9wOiA2cHg7IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgICAucHJvZHVjdHMtdGFibGUgLmxpbmUtMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgICAgLnByb2R1Y3RzLXRhYmxlIC5saW5lLTIge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5wcm9kdWN0cy10YWJsZSAubGluZS0yIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLnByb2R1Y3RzLXRhYmxlIC5saW5lLTIge1xuICAgICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuICAgIC5wcm9kdWN0cy10YWJsZSAubGluZS0yLS1jaG9pY2Uge1xuICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgY29sb3I6ICMwMGE3ZTA7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciAuMnMgZWFzZS1vdXQ7IH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAgICAgLnByb2R1Y3RzLXRhYmxlIC5saW5lLTItLWNob2ljZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMHB4OyB9IH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAgICAgLnByb2R1Y3RzLXRhYmxlIC5saW5lLTItLWNob2ljZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMXB4OyB9IH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgLnByb2R1Y3RzLXRhYmxlIC5saW5lLTItLWNob2ljZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMXB4OyB9IH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgIC5wcm9kdWN0cy10YWJsZSAubGluZS0yLS1jaG9pY2Uge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDsgfSB9XG4gICAgICAucHJvZHVjdHMtdGFibGUgLmxpbmUtMi0tY2hvaWNlOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICMwMDZkYmE7XG4gICAgICAgIG91dGxpbmU6IDA7IH1cbiAgICAgIC5wcm9kdWN0cy10YWJsZSAubGluZS0yLS1jaG9pY2U6aG92ZXIsIC5wcm9kdWN0cy10YWJsZSAubGluZS0yLS1jaG9pY2U6YWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICMwMDZkYmE7IH1cbiAgICAgICAgLnByb2R1Y3RzLXRhYmxlIC5saW5lLTItLWNob2ljZTpob3ZlciAuY2FyZXQsIC5wcm9kdWN0cy10YWJsZSAubGluZS0yLS1jaG9pY2U6YWN0aXZlIC5jYXJldCB7XG4gICAgICAgICAgYW5pbWF0aW9uOiB0ZWV0ZXItcmlnaHQgLjJzIGxpbmVhciAxO1xuICAgICAgICAgIGZpbGw6ICMwMDZkYmE7IH1cbiAgICAucHJvZHVjdHMtdGFibGUgLmxpbmUtMi0tbGFiZWwge1xuICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgICAgICAucHJvZHVjdHMtdGFibGUgLmxpbmUtMi0tbGFiZWwge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDsgfSB9XG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgICAgIC5wcm9kdWN0cy10YWJsZSAubGluZS0yLS1sYWJlbCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMXB4OyB9IH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgLnByb2R1Y3RzLXRhYmxlIC5saW5lLTItLWxhYmVsIHtcbiAgICAgICAgICBmb250LXNpemU6IDExcHg7IH0gfVxuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgLnByb2R1Y3RzLXRhYmxlIC5saW5lLTItLWxhYmVsIHtcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7IH0gfVxuICAgIC5wcm9kdWN0cy10YWJsZSAubGluZS0yLS1yZWFkLW9ubHkge1xuICAgICAgZm9udC1zaXplOiAxMHB4OyB9XG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgICAgIC5wcm9kdWN0cy10YWJsZSAubGluZS0yLS1yZWFkLW9ubHkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDsgfSB9XG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgICAgIC5wcm9kdWN0cy10YWJsZSAubGluZS0yLS1yZWFkLW9ubHkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDsgfSB9XG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIC5wcm9kdWN0cy10YWJsZSAubGluZS0yLS1yZWFkLW9ubHkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDsgfSB9XG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAucHJvZHVjdHMtdGFibGUgLmxpbmUtMi0tcmVhZC1vbmx5IHtcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7IH0gfVxuICAgIC5wcm9kdWN0cy10YWJsZSAubGluZS0yLmEge1xuICAgICAgY29sb3I6ICM2MTYwNjA7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIC4ycyBlYXNlLW91dDsgfVxuICAgICAgLnByb2R1Y3RzLXRhYmxlIC5saW5lLTIuYTpob3ZlciwgLnByb2R1Y3RzLXRhYmxlIC5saW5lLTIuYTphY3RpdmUge1xuICAgICAgICBjb2xvcjogIzAwYTdlMDsgfVxuICAucHJvZHVjdHMtdGFibGUgLnByaWNlLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB3aWR0aDogNzBweDsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkgYW5kIChtYXgtd2lkdGg6IDQxM3B4KSB7XG4gICAgICAucHJvZHVjdHMtdGFibGUgLnByaWNlLWNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAucHJvZHVjdHMtdGFibGUgLnByaWNlLWNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDsgfSB9XG4gICAgLnByb2R1Y3RzLXRhYmxlIC5wcmljZS1jb250YWluZXIuaGFzLWZyZXF1ZW5jeSB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tOyB9XG4gICAgICAucHJvZHVjdHMtdGFibGUgLnByaWNlLWNvbnRhaW5lci5oYXMtZnJlcXVlbmN5IC5zZWxlY3Qtd3JhcHBlciB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgLnByb2R1Y3RzLXRhYmxlIC5wcmljZS1jb250YWluZXIuaGFzLWZyZXF1ZW5jeSAuc2VsZWN0LXdyYXBwZXIge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTJweDsgfSB9XG4gICAgLnByb2R1Y3RzLXRhYmxlIC5wcmljZS1jb250YWluZXIgLmJhZGdlIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMC4zMjVlbTsgfVxuICAgIC5wcm9kdWN0cy10YWJsZSAucHJpY2UtY29udGFpbmVyIC5iZXN0LXByaWNlIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgLnByb2R1Y3RzLXRhYmxlIC5wcmljZS1jb250YWluZXIgLmJlc3QtcHJpY2U6aG92ZXIge1xuICAgICAgICBhbmltYXRpb246IDJzIHRhZGEtcGF1c2UgaW5maW5pdGU7IH1cbiAgICAucHJvZHVjdHMtdGFibGUgLnByaWNlLWNvbnRhaW5lciAuY2FyZXQge1xuICAgICAgZmlsbDogIzYxNjA2MDtcbiAgICAgIGhlaWdodDogOHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgICAgIHRyYW5zaXRpb246IGZpbGwgLjJzIGVhc2Utb3V0O1xuICAgICAgd2lkdGg6IDhweDsgfVxuICAgIC5wcm9kdWN0cy10YWJsZSAucHJpY2UtY29udGFpbmVyIC5mcmVxdWVuY3kge1xuICAgICAgaGVpZ2h0OiAxZW07XG4gICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIHdoaXRlLXNwYWNlOiBwcmU7IH1cbiAgICAucHJvZHVjdHMtdGFibGUgLnByaWNlLWNvbnRhaW5lciAubGluZS0xIHtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkgYW5kIChtYXgtd2lkdGg6IDMxOXB4KSB7XG4gICAgICAgIC5wcm9kdWN0cy10YWJsZSAucHJpY2UtY29udGFpbmVyIC5saW5lLTEge1xuICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvOyB9XG4gICAgICAgICAgLnByb2R1Y3RzLXRhYmxlIC5wcmljZS1jb250YWluZXIgLmxpbmUtMSAuYmFkZ2Uge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC43NWVtOyB9IH1cbiAgICAucHJvZHVjdHMtdGFibGUgLnByaWNlLWNvbnRhaW5lciAucHJlLWRpc2NvdW50IHtcbiAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgIGNvbG9yOiAjNjE2MDYwO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgbWFyZ2luLWJvdHRvbTogM3B4O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7IH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAgICAgLnByb2R1Y3RzLXRhYmxlIC5wcmljZS1jb250YWluZXIgLnByZS1kaXNjb3VudCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMXB4OyB9IH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAgICAgLnByb2R1Y3RzLXRhYmxlIC5wcmljZS1jb250YWluZXIgLnByZS1kaXNjb3VudCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgLnByb2R1Y3RzLXRhYmxlIC5wcmljZS1jb250YWluZXIgLnByZS1kaXNjb3VudCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgIC5wcm9kdWN0cy10YWJsZSAucHJpY2UtY29udGFpbmVyIC5wcmUtZGlzY291bnQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDsgfSB9XG4gIC5wcm9kdWN0cy10YWJsZSAucHJvZHVjdC1haGVtLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgLnByb2R1Y3RzLXRhYmxlIC5wcm9kdWN0LWJhZGdlLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgLnByb2R1Y3RzLXRhYmxlIC5wcm9kdWN0LWltYWdlLWNvbnRhaW5lciB7XG4gICAgaGVpZ2h0OiA3MHB4O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgd2lkdGg6IDcwcHg7IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApIGFuZCAobWF4LXdpZHRoOiA0MTNweCkge1xuICAgICAgLnByb2R1Y3RzLXRhYmxlIC5wcm9kdWN0LWltYWdlLWNvbnRhaW5lciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE0NnB4KSB7XG4gICAgICAucHJvZHVjdHMtdGFibGUgLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICB3aWR0aDogODBweDsgfSB9XG4gICAgLnByb2R1Y3RzLXRhYmxlIC5wcm9kdWN0LWltYWdlLWNvbnRhaW5lciBpbWcge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgLnByb2R1Y3RzLXRhYmxlIC5wcm9kdWN0LXRleHQtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICBwYWRkaW5nLXRvcDogMTVweDsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxMTQ1cHgpIHtcbiAgICAgIC5wcm9kdWN0cy10YWJsZSAucHJvZHVjdC10ZXh0LWNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDsgfSB9XG4gIC5wcm9kdWN0cy10YWJsZSAucHJvZHVjdC1yb3cge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDlkOWQ5OyB9XG4gICAgLnByb2R1Y3RzLXRhYmxlIC5wcm9kdWN0LXJvdzpsYXN0LW9mLXR5cGUge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDsgfVxuICAgIC5wcm9kdWN0cy10YWJsZSAucHJvZHVjdC1yb3cucmVtb3ZpbmcgdGQsXG4gICAgLnByb2R1Y3RzLXRhYmxlIC5wcm9kdWN0LXJvdy5yZW1vdmluZyB0aCB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNHMgZWFzZS1vdXQ7IH1cbiAgLnByb2R1Y3RzLXRhYmxlIC5xdWFudGl0eS1jb250YWluZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIHBhZGRpbmctdG9wOiAxNXB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5wcm9kdWN0cy10YWJsZSAucXVhbnRpdHktY29udGFpbmVyIC5saW5lLTItLWxhYmVsIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0OyB9XG4gIC5wcm9kdWN0cy10YWJsZSAuc2VsZWN0LXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5wcm9kdWN0cy10YWJsZSAuc2VsZWN0LXdyYXBwZXIgLmRlY295IHtcbiAgICAgIGhlaWdodDogMWVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICB3aGl0ZS1zcGFjZTogcHJlOyB9XG4gICAgLnByb2R1Y3RzLXRhYmxlIC5zZWxlY3Qtd3JhcHBlciBzZWxlY3Qge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgei1pbmRleDogMjsgfVxuICAgICAgLmlvcyAucHJvZHVjdHMtdGFibGUgLnNlbGVjdC13cmFwcGVyIHNlbGVjdCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfVxuICAgICAgLnByb2R1Y3RzLXRhYmxlIC5zZWxlY3Qtd3JhcHBlciBzZWxlY3Q6Zm9jdXMgKyAuZGVjb3kge1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBjb2xvcjogIzAwNmRiYTsgfVxuICAucHJvZHVjdHMtdGFibGUgLnNwaW5uZXItY29udGFpbmVyIHtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiA0LjVlbTsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkgYW5kIChtYXgtd2lkdGg6IDQxM3B4KSB7XG4gICAgICAucHJvZHVjdHMtdGFibGUgLnNwaW5uZXItY29udGFpbmVyIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4OyB9IH1cbiAgICAucHJvZHVjdHMtdGFibGUgLnNwaW5uZXItY29udGFpbmVyIC5zcGlubmVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG5cbi5wcm9kdWN0cy10YWJsZSAuYmFkZ2Utcm93IHRoIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5wcm9kdWN0cy10YWJsZSAuYmFkZ2Utcm93IC5iYWRnZSB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxLjVlbTsgfVxuXG4ucHJvZHVjdHMtdGFibGUgKyAucmVxdWlyZS1zc28ge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2Q5ZDlkOTsgfVxuXG4ucmVxdWlyZS1zc28ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmNGY1O1xuICBwYWRkaW5nLXRvcDogMDsgfVxuXG4ucmVxdWlyZS1zc28gLmxpbmUtMi0tbGFiZWwge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi5yZXF1aXJlLXNzbyAuc3Bpbm5lciBpbnB1dCxcbi5yZXF1aXJlLXNzbyAuc3Bpbm5lciAubWludXMsXG4ucmVxdWlyZS1zc28gLnNwaW5uZXIgLnBsdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG5cbi5zdGF0dXMtbWVzc2FnZSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gIG1hcmdpbi10b3A6IDEwcHg7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5zdGF0dXMtbWVzc2FnZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMDBweDtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH0gfVxuICAuc3RhdHVzLW1lc3NhZ2UgLmhlYWRpbmcge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBjb2xvcjogIzYxNjA2MDtcbiAgICBsaW5lLWhlaWdodDogMS4zZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMi41ZW07XG4gICAgbWF4LXdpZHRoOiAyNGVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAgIC5zdGF0dXMtbWVzc2FnZSAuaGVhZGluZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTlweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgICAgLnN0YXR1cy1tZXNzYWdlIC5oZWFkaW5nIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAuc3RhdHVzLW1lc3NhZ2UgLmhlYWRpbmcge1xuICAgICAgICBmb250LXNpemU6IDIxcHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuc3RhdHVzLW1lc3NhZ2UgLmhlYWRpbmcge1xuICAgICAgICBmb250LXNpemU6IDI0cHg7IH0gfVxuICAuc3RhdHVzLW1lc3NhZ2UgLmltZyB7XG4gICAgaGVpZ2h0OiAyMjVweDtcbiAgICB3aWR0aDogMjI1cHg7IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAuc3RhdHVzLW1lc3NhZ2UgLmltZyB7XG4gICAgICAgIGhlaWdodDogMjUwcHg7XG4gICAgICAgIHdpZHRoOiAyNTBweDsgfSB9XG4gIC5zdGF0dXMtbWVzc2FnZSAucCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG5hW2RhdGEtYmVoYXZpb3JdIHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbmJvZHkge1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgY29sb3I6ICM2MTYwNjA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgZm9udC1mYW1pbHk6IFwiUHJveGltYSBOb3ZhIFcwMVwiLCBcIkhlbHZldGljYSBOZXVlXCIsIENhbGlicmksIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7IH1cblxuLmZvbnQtc2l6ZS1kZWJ1ZyBoMSxcbi5mb250LXNpemUtZGVidWcgaDIsXG4uZm9udC1zaXplLWRlYnVnIGgzLFxuLmZvbnQtc2l6ZS1kZWJ1ZyBoNCxcbi5mb250LXNpemUtZGVidWcgaDUsXG4uZm9udC1zaXplLWRlYnVnIGg2LFxuLmZvbnQtc2l6ZS1kZWJ1ZyBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMWVtOyB9XG5cbi5mb250LXNpemUtZGVidWcgcCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjVlbTsgfVxuXG4uZm9udC1zaXplLWRlYnVnIC5oLXh4bCB7XG4gIGZvbnQtc2l6ZTogMzJweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAuaC14eGwge1xuICAgICAgZm9udC1zaXplOiA0OHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLmgteHhsIHtcbiAgICAgIGZvbnQtc2l6ZTogNTZweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5oLXh4bCB7XG4gICAgICBmb250LXNpemU6IDcycHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLmgteHhsIHtcbiAgICAgIGZvbnQtc2l6ZTogMTAwcHg7IH0gfVxuXG4uZm9udC1zaXplLWRlYnVnIC5oLXhsIHtcbiAgZm9udC1zaXplOiAyOHB4OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5oLXhsIHtcbiAgICAgIGZvbnQtc2l6ZTogMzZweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5oLXhsIHtcbiAgICAgIGZvbnQtc2l6ZTogNDhweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5oLXhsIHtcbiAgICAgIGZvbnQtc2l6ZTogNjBweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAuaC14bCB7XG4gICAgICBmb250LXNpemU6IDcycHg7IH0gfVxuXG4uZm9udC1zaXplLWRlYnVnIC5oLWwge1xuICBmb250LXNpemU6IDI0cHg7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLmgtbCB7XG4gICAgICBmb250LXNpemU6IDI4cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAuaC1sIHtcbiAgICAgIGZvbnQtc2l6ZTogMzJweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5oLWwge1xuICAgICAgZm9udC1zaXplOiA0MHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5oLWwge1xuICAgICAgZm9udC1zaXplOiA0OHB4OyB9IH1cblxuLmZvbnQtc2l6ZS1kZWJ1ZyAuaCB7XG4gIGZvbnQtc2l6ZTogMjFweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAuaCB7XG4gICAgICBmb250LXNpemU6IDIycHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAuaCB7XG4gICAgICBmb250LXNpemU6IDI0cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAuaCB7XG4gICAgICBmb250LXNpemU6IDI4cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLmgge1xuICAgICAgZm9udC1zaXplOiAzMnB4OyB9IH1cblxuLmZvbnQtc2l6ZS1kZWJ1ZyAuaC1zIHtcbiAgZm9udC1zaXplOiAxOHB4OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5oLXMge1xuICAgICAgZm9udC1zaXplOiAxOXB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLmgtcyB7XG4gICAgICBmb250LXNpemU6IDIwcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAuaC1zIHtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAuaC1zIHtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDsgfSB9XG5cbi5mb250LXNpemUtZGVidWcgLmgteHMge1xuICBmb250LXNpemU6IDE2cHg7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLmgteHMge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLmgteHMge1xuICAgICAgZm9udC1zaXplOiAxN3B4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLmgteHMge1xuICAgICAgZm9udC1zaXplOiAxN3B4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5oLXhzIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDsgfSB9XG5cbi5mb250LXNpemUtZGVidWcgLmgteHhzIHtcbiAgZm9udC1zaXplOiAxNXB4OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5oLXh4cyB7XG4gICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAuaC14eHMge1xuICAgICAgZm9udC1zaXplOiAxNXB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLmgteHhzIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAuaC14eHMge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cblxuLmZvbnQtc2l6ZS1kZWJ1ZyAucC14eGwge1xuICBmb250LXNpemU6IDIxcHg7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLnAteHhsIHtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5wLXh4bCB7XG4gICAgICBmb250LXNpemU6IDI0cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAucC14eGwge1xuICAgICAgZm9udC1zaXplOiAyOHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5wLXh4bCB7XG4gICAgICBmb250LXNpemU6IDMycHg7IH0gfVxuXG4uZm9udC1zaXplLWRlYnVnIC5wLXhsIHtcbiAgZm9udC1zaXplOiAxOHB4OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5wLXhsIHtcbiAgICAgIGZvbnQtc2l6ZTogMTlweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5wLXhsIHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5wLXhsIHtcbiAgICAgIGZvbnQtc2l6ZTogMjFweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAucC14bCB7XG4gICAgICBmb250LXNpemU6IDI0cHg7IH0gfVxuXG4uZm9udC1zaXplLWRlYnVnIC5wLWwge1xuICBmb250LXNpemU6IDE2cHg7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLnAtbCB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAucC1sIHtcbiAgICAgIGZvbnQtc2l6ZTogMTdweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5wLWwge1xuICAgICAgZm9udC1zaXplOiAxN3B4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5wLWwge1xuICAgICAgZm9udC1zaXplOiAxOHB4OyB9IH1cblxuLmZvbnQtc2l6ZS1kZWJ1ZyAucCB7XG4gIGZvbnQtc2l6ZTogMTVweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAucCB7XG4gICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAucCB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAucCB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLnAge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cblxuLmZvbnQtc2l6ZS1kZWJ1ZyAucC1zIHtcbiAgZm9udC1zaXplOiAxM3B4OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5wLXMge1xuICAgICAgZm9udC1zaXplOiAxM3B4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLnAtcyB7XG4gICAgICBmb250LXNpemU6IDE0cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAucC1zIHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAucC1zIHtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDsgfSB9XG5cbi5mb250LXNpemUtZGVidWcgLnAteHMge1xuICBmb250LXNpemU6IDExcHg7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLnAteHMge1xuICAgICAgZm9udC1zaXplOiAxMXB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLnAteHMge1xuICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLnAteHMge1xuICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5wLXhzIHtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDsgfSB9XG5cbi5mb250LXNpemUtZGVidWcgLnAteHhzIHtcbiAgZm9udC1zaXplOiAxMHB4OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5wLXh4cyB7XG4gICAgICBmb250LXNpemU6IDEwcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAucC14eHMge1xuICAgICAgZm9udC1zaXplOiAxMXB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLnAteHhzIHtcbiAgICAgIGZvbnQtc2l6ZTogMTFweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAucC14eHMge1xuICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cblxuLmFoZW0ge1xuICBmb250LXNpemU6IDEwcHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGxpbmUtaGVpZ2h0OiAxLjVlbTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgLmFoZW0ge1xuICAgICAgZm9udC1zaXplOiAxMHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5haGVtIHtcbiAgICAgIGZvbnQtc2l6ZTogMTFweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuYWhlbSB7XG4gICAgICBmb250LXNpemU6IDExcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5haGVtIHtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDsgfSB9XG4gIC5haGVtLnBlbmRpbmcge1xuICAgIGFuaW1hdGlvbjogdXBkYXRpbmcgMnMgZWFzZS1vdXQgaW5maW5pdGU7IH1cbiAgLmFoZW0gLmEge1xuICAgIGNvbG9yOiAjMDBhN2UwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIC5haGVtIC5iYWRnZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAuOGVtOyB9XG5cbi5mb290bm90ZSB7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgY29sb3I6ICM2MTYwNjA7XG4gIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgbWFyZ2luLXRvcDogMTBweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgLmZvb3Rub3RlIHtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAuZm9vdG5vdGUge1xuICAgICAgZm9udC1zaXplOiAxMXB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5mb290bm90ZSB7XG4gICAgICBmb250LXNpemU6IDExcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5mb290bm90ZSB7XG4gICAgICBmb250LXNpemU6IDEycHg7IH0gfVxuICAuZm9vdG5vdGUuYWZ0ZXItZm9ybSB7XG4gICAgbWFyZ2luLXRvcDogMjBweDsgfVxuXG4uaGVhZGluZy1wYWdlIHtcbiAgZm9udC1zaXplOiAyMXB4O1xuICBjb2xvcjogIzAwYTdlMDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICBtYXJnaW4tYm90dG9tOiAyZW07XG4gIG1hcmdpbi10b3A6IDFlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgLmhlYWRpbmctcGFnZSB7XG4gICAgICBmb250LXNpemU6IDIycHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmhlYWRpbmctcGFnZSB7XG4gICAgICBmb250LXNpemU6IDI0cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmhlYWRpbmctcGFnZSB7XG4gICAgICBmb250LXNpemU6IDI4cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5oZWFkaW5nLXBhZ2Uge1xuICAgICAgZm9udC1zaXplOiAzMnB4OyB9IH1cbiAgLmhlYWRpbmctcGFnZS0tbWFyZ2luLXRvcCB7XG4gICAgbWFyZ2luLXRvcDogMmVtOyB9XG4gIC5oZWFkaW5nLXBhZ2UtLXJldmVyc2VkIHtcbiAgICBjb2xvcjogI2ZmZjsgfVxuXG5AbWVkaWEgcHJpbnQge1xuICAuaGlkZGVuLWF0LXByaW50IHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLnNlY3Rpb24taGVhZGluZy1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuc2VjdGlvbi1oZWFkaW5nLWNvbnRhaW5lciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9IH1cbiAgLnNlY3Rpb24taGVhZGluZy1jb250YWluZXIgLnNlY3Rpb24taGVhZGluZyB7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGNvbG9yOiAjNWE2MDY2O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC4wMmVtOyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgICAgLnNlY3Rpb24taGVhZGluZy1jb250YWluZXIgLnNlY3Rpb24taGVhZGluZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgICAgLnNlY3Rpb24taGVhZGluZy1jb250YWluZXIgLnNlY3Rpb24taGVhZGluZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLnNlY3Rpb24taGVhZGluZy1jb250YWluZXIgLnNlY3Rpb24taGVhZGluZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5zZWN0aW9uLWhlYWRpbmctY29udGFpbmVyIC5zZWN0aW9uLWhlYWRpbmcge1xuICAgICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuICAgIEBtZWRpYSBwcmludCB7XG4gICAgICAuc2VjdGlvbi1oZWFkaW5nLWNvbnRhaW5lciAuc2VjdGlvbi1oZWFkaW5nIHtcbiAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgIGZvbnQtc2l6ZTogOXB0OyB9IH1cblxuLnNlY3Rpb24taGVhZGluZy1jb250YWluZXItLXRpZ2h0IHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLnNlY3Rpb24taGVhZGluZy1jb250YWluZXItLXRpZ2h0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH0gfVxuXG4uc3ViLWhlYWRpbmctcGFnZSB7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgLnN1Yi1oZWFkaW5nLXBhZ2Uge1xuICAgICAgZm9udC1zaXplOiAxNXB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5zdWItaGVhZGluZy1wYWdlIHtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuc3ViLWhlYWRpbmctcGFnZSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5zdWItaGVhZGluZy1wYWdlIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gIC5zdWItaGVhZGluZy1wYWdlIC5pZC1udW1iZXIge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBmb250LXdlaWdodDogNzAwOyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgICAgLnN1Yi1oZWFkaW5nLXBhZ2UgLmlkLW51bWJlciB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTlweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgICAgLnN1Yi1oZWFkaW5nLXBhZ2UgLmlkLW51bWJlciB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLnN1Yi1oZWFkaW5nLXBhZ2UgLmlkLW51bWJlciB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjFweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5zdWItaGVhZGluZy1wYWdlIC5pZC1udW1iZXIge1xuICAgICAgICBmb250LXNpemU6IDI0cHg7IH0gfVxuICAuaGVhZGluZy1wYWdlICsgLnN1Yi1oZWFkaW5nLXBhZ2Uge1xuICAgIG1hcmdpbi10b3A6IC0xLjVlbTsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5oZWFkaW5nLXBhZ2UgKyAuc3ViLWhlYWRpbmctcGFnZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0yLjVlbTsgfSB9XG5cbi50ZXh0LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4udWktaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmlsbDogIzYxNjA2MDtcbiAgaGVpZ2h0OiA0MHB4O1xuICB0cmFuc2l0aW9uOiBmaWxsIC4ycyBlYXNlLW91dCwgdHJhbnNmb3JtIC4ycyBlYXNlLW91dDtcbiAgd2lkdGg6IDQwcHg7IH1cbiAgLnVpLWljb24tYnV0dG9uIC51aS1pY29uIHtcbiAgICBmaWxsOiAjMDBhN2UwOyB9XG4gICAgLnVpLWljb24tYnV0dG9uIC51aS1pY29uOmFjdGl2ZSwgLnVpLWljb24tYnV0dG9uIC51aS1pY29uOmhvdmVyIHtcbiAgICAgIGZpbGw6ICMwMDZkYmE7IH1cbiAgLnVpLWljb24tYnV0dG9uW2Rpc2FibGVkXSAudWktaWNvbiwgLnVpLWljb24tYnV0dG9uW2Rpc2FibGVkXSAudWktaWNvbjphY3RpdmUsIC51aS1pY29uLWJ1dHRvbltkaXNhYmxlZF0gLnVpLWljb246aG92ZXIge1xuICAgIGZpbGw6ICNjY2M7IH1cblxuLnVpLWljb24tLXJldmVyc2VkIHtcbiAgZmlsbDogI2ZmZjsgfVxuICAudWktaWNvbi1idXR0b24gLnVpLWljb24tLXJldmVyc2VkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBmaWxsOiAjZmZmO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2Utb3V0OyB9XG4gICAgLnVpLWljb24tYnV0dG9uIC51aS1pY29uLS1yZXZlcnNlZDpob3ZlciwgLnVpLWljb24tYnV0dG9uIC51aS1pY29uLS1yZXZlcnNlZDphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwYTdlMDtcbiAgICAgIGZpbGw6ICNmZmY7IH1cblxuLnVpLWljb24tLWRhcmsge1xuICBmaWxsOiAjMTYxYTFkOyB9XG4gIC51aS1pY29uLS1kYXJrOmhvdmVyIHtcbiAgICBmaWxsOiBibGFjazsgfVxuXG4udWktaWNvbi0tcyB7XG4gIGhlaWdodDogMjRweDtcbiAgd2lkdGg6IDI0cHg7IH1cblxuLnVpLWljb24tLW0ge1xuICBoZWlnaHQ6IDMycHg7XG4gIHdpZHRoOiAzMnB4OyB9XG5cbi51aS1pY29uLS1sIHtcbiAgaGVpZ2h0OiA0OHB4O1xuICB3aWR0aDogNDhweDsgfVxuXG4udWktaWNvbi0teGwge1xuICBoZWlnaHQ6IDY0cHg7XG4gIHdpZHRoOiA2NHB4OyB9XG5cbi51aS1pY29uLS14eGwge1xuICBoZWlnaHQ6IDgwcHg7XG4gIHdpZHRoOiA4MHB4OyB9XG5cbi51aS1pY29uLS1iZy1yb3VuZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQyLCAyNDQsIDI0NSwgMC44NSk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1pbi1vdXQ7IH1cbiAgLnVpLWljb24tLWJnLXJvdW5kOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDlkOWQ5OyB9XG5cbi51aS1pY29uLWNoZXZyb24ge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTsgfVxuXG4udWktaWNvbi1jaGV2cm9uLS1sZWZ0IHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpOyB9XG5cbi51aS1pY29uLWNoZXZyb24tLXJpZ2h0IHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTsgfVxuXG4udWktaWNvbi1jaGV2cm9uLS11cCB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH1cblxuLnVpLWljb24tYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDA7XG4gIG91dGxpbmU6IDA7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLnVpLWljb24tYnV0dG9uLnBvaW50ZXIsIC51aS1pY29uLWJ1dHRvbltocmVmXSwgLnVpLWljb24tYnV0dG9uW2RhdGEtYmVoYXZpb3JdIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLnVpLWljb24tYnV0dG9uW2Rpc2FibGVkXSB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG5hLnZhbmlsbGEsIGFbY2xhc3M9JyddLCBhOm5vdChbY2xhc3NdKSB7XG4gIGNvbG9yOiAjMDBhN2UwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB0cmFuc2l0aW9uOiBjb2xvciAuMnMgZWFzZS1vdXQ7IH1cbiAgYS52YW5pbGxhOmhvdmVyLCBhW2NsYXNzPScnXTpob3ZlciwgYTpub3QoW2NsYXNzXSk6aG92ZXIge1xuICAgIGNvbG9yOiAjMDA2ZGJhOyB9XG5cbmFiYnIudmFuaWxsYSwgYWJicltjbGFzcz0nJ10sIGFiYnI6bm90KFtjbGFzc10pIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbmFjcm9ueW0udmFuaWxsYSwgYWNyb255bVtjbGFzcz0nJ10sIGFjcm9ueW06bm90KFtjbGFzc10pIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgY3Vyc29yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuYi52YW5pbGxhLCBiW2NsYXNzPScnXSwgYjpub3QoW2NsYXNzXSksXG5zdHJvbmcudmFuaWxsYSxcbnN0cm9uZ1tjbGFzcz0nJ10sXG5zdHJvbmc6bm90KFtjbGFzc10pIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG5kbC52YW5pbGxhIGRkLCBkbFtjbGFzcz0nJ10gZGQsIGRsOm5vdChbY2xhc3NdKSBkZCB7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgY29sb3I6ICMyZTMxMzQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjNlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNWVtOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICBkbC52YW5pbGxhIGRkLCBkbFtjbGFzcz0nJ10gZGQsIGRsOm5vdChbY2xhc3NdKSBkZCB7XG4gICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgZGwudmFuaWxsYSBkZCwgZGxbY2xhc3M9JyddIGRkLCBkbDpub3QoW2NsYXNzXSkgZGQge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGRsLnZhbmlsbGEgZGQsIGRsW2NsYXNzPScnXSBkZCwgZGw6bm90KFtjbGFzc10pIGRkIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgZGwudmFuaWxsYSBkZCwgZGxbY2xhc3M9JyddIGRkLCBkbDpub3QoW2NsYXNzXSkgZGQge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgQG1lZGlhIHByaW50IHtcbiAgICBkbC52YW5pbGxhIGRkLCBkbFtjbGFzcz0nJ10gZGQsIGRsOm5vdChbY2xhc3NdKSBkZCB7XG4gICAgICBjb2xvcjogIzAwMDtcbiAgICAgIGZvbnQtc2l6ZTogMTBwdDsgfSB9XG5cbmRsLnZhbmlsbGEgZHQsIGRsW2NsYXNzPScnXSBkdCwgZGw6bm90KFtjbGFzc10pIGR0IHtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBjb2xvcjogIzkzOTE5MTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbWFyZ2luLWJvdHRvbTogLjJlbTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgZGwudmFuaWxsYSBkdCwgZGxbY2xhc3M9JyddIGR0LCBkbDpub3QoW2NsYXNzXSkgZHQge1xuICAgICAgZm9udC1zaXplOiAxMHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIGRsLnZhbmlsbGEgZHQsIGRsW2NsYXNzPScnXSBkdCwgZGw6bm90KFtjbGFzc10pIGR0IHtcbiAgICAgIGZvbnQtc2l6ZTogMTFweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBkbC52YW5pbGxhIGR0LCBkbFtjbGFzcz0nJ10gZHQsIGRsOm5vdChbY2xhc3NdKSBkdCB7XG4gICAgICBmb250LXNpemU6IDExcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIGRsLnZhbmlsbGEgZHQsIGRsW2NsYXNzPScnXSBkdCwgZGw6bm90KFtjbGFzc10pIGR0IHtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDsgfSB9XG4gIEBtZWRpYSBwcmludCB7XG4gICAgZGwudmFuaWxsYSBkdCwgZGxbY2xhc3M9JyddIGR0LCBkbDpub3QoW2NsYXNzXSkgZHQge1xuICAgICAgZm9udC1zaXplOiA4cHQ7IH0gfVxuXG5oMS52YW5pbGxhLCBoMVtjbGFzcz0nJ10sIGgxOm5vdChbY2xhc3NdKSB7XG4gIGZvbnQtc2l6ZTogMjhweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgaDEudmFuaWxsYSwgaDFbY2xhc3M9JyddLCBoMTpub3QoW2NsYXNzXSkge1xuICAgICAgZm9udC1zaXplOiAzNnB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIGgxLnZhbmlsbGEsIGgxW2NsYXNzPScnXSwgaDE6bm90KFtjbGFzc10pIHtcbiAgICAgIGZvbnQtc2l6ZTogNDhweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBoMS52YW5pbGxhLCBoMVtjbGFzcz0nJ10sIGgxOm5vdChbY2xhc3NdKSB7XG4gICAgICBmb250LXNpemU6IDYwcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIGgxLnZhbmlsbGEsIGgxW2NsYXNzPScnXSwgaDE6bm90KFtjbGFzc10pIHtcbiAgICAgIGZvbnQtc2l6ZTogNzJweDsgfSB9XG5cbmgyLnZhbmlsbGEsIGgyW2NsYXNzPScnXSwgaDI6bm90KFtjbGFzc10pIHtcbiAgZm9udC1zaXplOiAyNHB4OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICBoMi52YW5pbGxhLCBoMltjbGFzcz0nJ10sIGgyOm5vdChbY2xhc3NdKSB7XG4gICAgICBmb250LXNpemU6IDI4cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgaDIudmFuaWxsYSwgaDJbY2xhc3M9JyddLCBoMjpub3QoW2NsYXNzXSkge1xuICAgICAgZm9udC1zaXplOiAzMnB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGgyLnZhbmlsbGEsIGgyW2NsYXNzPScnXSwgaDI6bm90KFtjbGFzc10pIHtcbiAgICAgIGZvbnQtc2l6ZTogNDBweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgaDIudmFuaWxsYSwgaDJbY2xhc3M9JyddLCBoMjpub3QoW2NsYXNzXSkge1xuICAgICAgZm9udC1zaXplOiA0OHB4OyB9IH1cblxuaDMudmFuaWxsYSwgaDNbY2xhc3M9JyddLCBoMzpub3QoW2NsYXNzXSkge1xuICBmb250LXNpemU6IDIxcHg7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgIGgzLnZhbmlsbGEsIGgzW2NsYXNzPScnXSwgaDM6bm90KFtjbGFzc10pIHtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICBoMy52YW5pbGxhLCBoM1tjbGFzcz0nJ10sIGgzOm5vdChbY2xhc3NdKSB7XG4gICAgICBmb250LXNpemU6IDI0cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgaDMudmFuaWxsYSwgaDNbY2xhc3M9JyddLCBoMzpub3QoW2NsYXNzXSkge1xuICAgICAgZm9udC1zaXplOiAyOHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICBoMy52YW5pbGxhLCBoM1tjbGFzcz0nJ10sIGgzOm5vdChbY2xhc3NdKSB7XG4gICAgICBmb250LXNpemU6IDMycHg7IH0gfVxuXG5oNC52YW5pbGxhLCBoNFtjbGFzcz0nJ10sIGg0Om5vdChbY2xhc3NdKSB7XG4gIGZvbnQtc2l6ZTogMThweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgaDQudmFuaWxsYSwgaDRbY2xhc3M9JyddLCBoNDpub3QoW2NsYXNzXSkge1xuICAgICAgZm9udC1zaXplOiAxOXB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIGg0LnZhbmlsbGEsIGg0W2NsYXNzPScnXSwgaDQ6bm90KFtjbGFzc10pIHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBoNC52YW5pbGxhLCBoNFtjbGFzcz0nJ10sIGg0Om5vdChbY2xhc3NdKSB7XG4gICAgICBmb250LXNpemU6IDIycHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIGg0LnZhbmlsbGEsIGg0W2NsYXNzPScnXSwgaDQ6bm90KFtjbGFzc10pIHtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDsgfSB9XG5cbmg1LnZhbmlsbGEsIGg1W2NsYXNzPScnXSwgaDU6bm90KFtjbGFzc10pIHtcbiAgZm9udC1zaXplOiAxNnB4OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICBoNS52YW5pbGxhLCBoNVtjbGFzcz0nJ10sIGg1Om5vdChbY2xhc3NdKSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgaDUudmFuaWxsYSwgaDVbY2xhc3M9JyddLCBoNTpub3QoW2NsYXNzXSkge1xuICAgICAgZm9udC1zaXplOiAxN3B4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGg1LnZhbmlsbGEsIGg1W2NsYXNzPScnXSwgaDU6bm90KFtjbGFzc10pIHtcbiAgICAgIGZvbnQtc2l6ZTogMTdweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgaDUudmFuaWxsYSwgaDVbY2xhc3M9JyddLCBoNTpub3QoW2NsYXNzXSkge1xuICAgICAgZm9udC1zaXplOiAxOHB4OyB9IH1cblxuaDYudmFuaWxsYSwgaDZbY2xhc3M9JyddLCBoNjpub3QoW2NsYXNzXSkge1xuICBmb250LXNpemU6IDE1cHg7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgIGg2LnZhbmlsbGEsIGg2W2NsYXNzPScnXSwgaDY6bm90KFtjbGFzc10pIHtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICBoNi52YW5pbGxhLCBoNltjbGFzcz0nJ10sIGg2Om5vdChbY2xhc3NdKSB7XG4gICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgaDYudmFuaWxsYSwgaDZbY2xhc3M9JyddLCBoNjpub3QoW2NsYXNzXSkge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICBoNi52YW5pbGxhLCBoNltjbGFzcz0nJ10sIGg2Om5vdChbY2xhc3NdKSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuXG5wLnZhbmlsbGEsIHBbY2xhc3M9JyddLCBwOm5vdChbY2xhc3NdKSB7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjc1ZW07IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgIHAudmFuaWxsYSwgcFtjbGFzcz0nJ10sIHA6bm90KFtjbGFzc10pIHtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICBwLnZhbmlsbGEsIHBbY2xhc3M9JyddLCBwOm5vdChbY2xhc3NdKSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgcC52YW5pbGxhLCBwW2NsYXNzPScnXSwgcDpub3QoW2NsYXNzXSkge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICBwLnZhbmlsbGEsIHBbY2xhc3M9JyddLCBwOm5vdChbY2xhc3NdKSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuXG5zZWN0aW9uLnZhbmlsbGEsIHNlY3Rpb25bY2xhc3M9JyddLCBzZWN0aW9uOm5vdChbY2xhc3NdKSB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIHNlY3Rpb24udmFuaWxsYSwgc2VjdGlvbltjbGFzcz0nJ10sIHNlY3Rpb246bm90KFtjbGFzc10pIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICBzZWN0aW9uLnZhbmlsbGEsIHNlY3Rpb25bY2xhc3M9JyddLCBzZWN0aW9uOm5vdChbY2xhc3NdKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgbWFyZ2luLXRvcDogNDBweDsgfSB9XG5cbnVsLnZhbmlsbGEsIHVsW2NsYXNzPScnXSwgdWw6bm90KFtjbGFzc10pIHtcbiAgbGlzdC1zdHlsZTogbm9uZSBvdXRzaWRlOyB9XG4gIHVsLnZhbmlsbGEgbGksIHVsW2NsYXNzPScnXSBsaSwgdWw6bm90KFtjbGFzc10pIGxpIHtcbiAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgcGFkZGluZy1ib3R0b206IC43NWVtO1xuICAgIHBhZGRpbmctbGVmdDogMWVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIHVsLnZhbmlsbGEgbGk6OmJlZm9yZSwgdWxbY2xhc3M9JyddIGxpOjpiZWZvcmUsIHVsOm5vdChbY2xhc3NdKSBsaTo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICfigKInO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gICAgdWwudmFuaWxsYSBsaTpsYXN0LWNoaWxkLCB1bFtjbGFzcz0nJ10gbGk6bGFzdC1jaGlsZCwgdWw6bm90KFtjbGFzc10pIGxpOmxhc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7IH1cblxuLmNjLXR5cGUtb3B0aW9ucyAuaW5wdXQtcmFkaW8gKyAuZGVjb3k6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6ICMwMDFmNDU7IH1cblxuLmNjLXR5cGUtb3B0aW9ucyAua2V5IHtcbiAgY29sb3I6ICMxNjFhMWQ7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuLmNjLXR5cGUtb3B0aW9ucyAucmFkaW8tYW5kLWxhYmVsIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuY2MtdHlwZS1vcHRpb25zIC5yYWRpby1hbmQtbGFiZWw6aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4uY2MtdHlwZS1vcHRpb25zIC5yYWRpby1hbmQtbGFiZWwgLmN1c3RvbS1yYWRpbyB7XG4gIHRyYW5zZm9ybTogbm9uZTsgfVxuXG4uY2MtdHlwZS1vcHRpb25zIC5yYWRpby13cmFwcGVyIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogNDU1cHg7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5jYy10eXBlLW9wdGlvbnMgLnJhZGlvLXdyYXBwZXIgZmllbGRzZXQge1xuICBtYXJnaW4tYm90dG9tOiA1MHB4OyB9XG5cbi5jYy10eXBlLW9wdGlvbnMgLnNlY3Rpb24taGVhZGluZyB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7IH1cblxuLmVtcHR5LWNhcnQgLmxheW91dC10d28tY29sdW1uIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLmVtcHR5LWNhcnQgLmxheW91dC10d28tY29sdW1uIC5jYXJ0LXN1bW1hcnktY29udHJvbHMtMS1jb2wge1xuICAgIGRpc3BsYXk6IGluaXRpYWw7IH1cbiAgLmVtcHR5LWNhcnQgLmxheW91dC10d28tY29sdW1uIC5sYXlvdXQtY29sdW1uIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDUlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDUlOyB9XG4gICAgLmVtcHR5LWNhcnQgLmxheW91dC10d28tY29sdW1uIC5sYXlvdXQtY29sdW1uOm9ubHktY2hpbGQge1xuICAgICAgbWF4LXdpZHRoOiA2MDBweDsgfVxuXG4uaGVhZGluZy1wYWdlIHtcbiAgbWFyZ2luLXRvcDogMmVtOyB9XG4iLCIvL1xyXG4vLyBjb3JlIChvcHRpb25hbCkgYW5pbWF0aW9uXHJcbi8vIOKAosKgZm9yIGdlbmVyaWMgYW5pbWF0aW9ucyAvIG5vdCBpbnRlbmRlZCBmb3Igc3BlY2lmaWMgYW5pbWF0aW9uc1xyXG4vL1xyXG5cclxuQGtleWZyYW1lcyBmbGFzaCB7XHJcbiAgMCUsXHJcbiAgMTAwJSB7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gIH1cclxuICA1MCUge1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA0KTtcclxuICB9XHJcbiAgMTAwJSB7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBwdWxzZSB7XHJcbiAgMCUsXHJcbiAgMTAwJSB7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gIH1cclxuICAzMCUge1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBzaGFrZSB7XHJcbiAgMCUsXHJcbiAgNTAlLFxyXG4gIDg1JSxcclxuICAxMDAlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgfVxyXG4gIDU1JSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMHB4LCAwLCAwKTtcclxuICB9XHJcbiAgNjUlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTE1cHgsIDAsIDApO1xyXG4gIH1cclxuICA3NSUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XHJcbiAgfVxyXG4gIDYwJSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwcHgsIDAsIDApO1xyXG4gIH1cclxuICA3MCUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxNXB4LCAwLCAwKTtcclxuICB9XHJcbiAgODAlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHRhZGEtcGF1c2Uge1xyXG4gIDAlIHtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICB9XHJcbiAgNSUsXHJcbiAgMTAlIHtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XHJcbiAgfVxyXG4gIDE1JSxcclxuICAyNSUsXHJcbiAgMzUlLFxyXG4gIDQ1JSB7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7XHJcbiAgfVxyXG4gIDIwJSxcclxuICAzMCUsXHJcbiAgNDAlIHtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XHJcbiAgfVxyXG4gIDUwJSxcclxuICAxMDAlIHtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgdGVldGVyLXJpZ2h0IHtcclxuICAwJSB7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcclxuICB9XHJcbiAgNSUsXHJcbiAgOTUlIHtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlKDIwZGVnKTtcclxuICB9XHJcbiAgMTAwJSB7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgdXBkYXRpbmcge1xyXG4gIDAlLFxyXG4gIDEwMCUge1xyXG4gICAgb3BhY2l0eTogLjU7XHJcbiAgfVxyXG4gIDUwJSB7XHJcbiAgICBvcGFjaXR5OiAuMjU7XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIGNvcmUgKG9wdGlvbmFsKSBiYWRnZSBzdHlsZXNcclxuLy9cclxuXHJcbi5iYWRnZSB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUocC14eHMpO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGdyYXksIGxpZ2h0KTtcclxuICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgY29sb3I6IGNvbG9yKHdoaXRlKTtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG4gIGxldHRlci1zcGFjaW5nOiAuMDVlbTtcclxuICBtYXJnaW4tbGVmdDogLjI1ZW07XHJcbiAgcGFkZGluZzogLjI1ZW0gLjQ1ZW0gLjI1ZW0gLjVlbTtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIHZlcnRpY2FsLWFsaWduOiAxcHg7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICBAbWVkaWEgcHJpbnQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCBjb2xvcihibGFjayk7XHJcbiAgICBjb2xvcjogY29sb3IoYmxhY2spO1xyXG4gICAgcGFkZGluZy1ib3R0b206IC4xZW07XHJcbiAgICBwYWRkaW5nLXRvcDogLjFlbTtcclxuICB9XHJcbiAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgIGRkID4gJiB7XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAtLjNlbTtcclxuICAgIH1cclxuICB9XHJcbiAgJi0tY29tcGxldGUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoZ3JlZW4pO1xyXG4gIH1cclxuICAmLS1lcnJvciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihlcnJvcik7XHJcbiAgfVxyXG4gICYtLWV4cGlyZWQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoZ3JheSwgeC1saWdodCk7XHJcbiAgfVxyXG4gICYtLWZlYXR1cmVkIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGJsdWUpO1xyXG4gIH1cclxuICAmLS1wdiB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIGNvbG9yKGdyYXksIGRhcmspO1xyXG4gICAgY29sb3I6IGNvbG9yKGdyYXksIGRhcmspO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgIGxpbmUtaGVpZ2h0OiBsaW5lLWhlaWdodChoLXRpZ2h0KTtcclxuICAgIHBhZGRpbmc6IC4yNWVtO1xyXG4gICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgIGRkID4gJiB7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IGluaGVyaXQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi0tc3BlY2lhbCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihzcGVjaWFsKTtcclxuICB9XHJcbn1cclxuXHJcbi5uZXctYmFkZ2Uge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKG1pZG5pZ2h0KTtcclxuICBjb2xvcjogY29sb3Iod2hpdGUpO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBmb250LXNpemU6IDEycHg7XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICBsZXR0ZXItc3BhY2luZzogbGV0dGVyLXNwYWNpbmcoZXhwYW5kZWQpO1xyXG4gIGxpbmUtaGVpZ2h0OiBsaW5lLWhlaWdodChwLXRpZ2h0KTtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHBhZGRpbmc6IC40ZW0gLjhlbTtcclxuICAmLS1zcGVjaWFsIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKG1lbG9uLCB4LWxpZ2h0KTtcclxuICAgIGNvbG9yOiBjb2xvcihtaWRuaWdodCk7XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIGNvcmUgcmVxdWlyZWQgbWl4aW5zLCBhbHBoYWJldGljYWxcclxuLy9cclxuXHJcbi8vIGdlbmVyYXRlIG1lZGlhIHF1ZXJpZXMgZm9yIHRhcmdldGluZyBhIG1pbi1hc3BlY3QgcmF0aW9cclxuQG1peGluIGFzcGVjdC1yYXRpby1taW4oJGhvcml6b250YWwsICR2ZXJ0aWNhbCkge1xyXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1hc3BlY3QtcmF0aW86ICRob3Jpem9udGFsICN7Jy8nfSAkdmVydGljYWwpIHtcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxufVxyXG5cclxuLy8gZ2VuZXJhdGUgbWVkaWEgcXVlcmllcyBmb3IgdGFyZ2V0aW5nIGEgbWF4LWFzcGVjdCByYXRpb1xyXG5AbWl4aW4gYXNwZWN0LXJhdGlvLW1heCgkaG9yaXpvbnRhbCwgJHZlcnRpY2FsKSB7XHJcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LWFzcGVjdC1yYXRpbzogJGhvcml6b250YWwgI3snLyd9ICR2ZXJ0aWNhbCkge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBiYWNrZ3JvdW5kIGltYWdlIG1heWJlIHdlYnBcclxuQG1peGluIGJhY2tncm91bmQtaW1hZ2UtbWF5YmUtd2VicCgkc3JjKSB7XHJcbiAgLndlYnAgJiB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJHNyYyArICcud2VicCcpO1xyXG4gIH1cclxuICAubm8td2VicCAmIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkc3JjKTtcclxuICB9XHJcbn1cclxuXHJcbi8vIGdlbmVyYXRlIG1lZGlhIHF1ZXJpZXMgZm9yIHRhcmdldGluZyB3aWR0aHNcclxuQG1peGluIGJyZWFrcG9pbnQoJG1pbi13aWR0aCwgJG1heC13aWR0aDogbnVsbCwgJHVzZS1uYW1lZC13aWR0aHM6IHRydWUpIHtcclxuICBAaWYgKCR1c2UtbmFtZWQtd2lkdGhzKSB7XHJcbiAgICAkbWluLXdpZHRoOiB3aWR0aCgkbWluLXdpZHRoKTtcclxuICAgIEBpZiAoJG1heC13aWR0aCkge1xyXG4gICAgICAkbWF4LXdpZHRoOiB3aWR0aCgkbWF4LXdpZHRoKTtcclxuICAgIH1cclxuICB9XHJcbiAgQGlmICgkbWF4LXdpZHRoKSB7XHJcbiAgICAkbWF4LXdpZHRoOiAkbWF4LXdpZHRoIC0gMTtcclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1pbi13aWR0aCkgYW5kIChtYXgtd2lkdGg6ICRtYXgtd2lkdGgpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBlbHNlIHtcclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1pbi13aWR0aCkge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBidG4tY29sb3JzKCRjb2xvci1tYXApIHtcclxuICAvLyBjb25maWd1cmFibGUgb3B0aW9ucyB0byBiZSB1c2VkIHdpdGggdGhpcyBtaXhpblxyXG4gIC8vIHRleHRcclxuICAvLyB0ZXh0LWhvdmVyXHJcbiAgLy8gdGV4dC1hY3RpdmVcclxuICAvLyBiZy1jb2xvclxyXG4gIC8vIGJnLWNvbG9yLWhvdmVyXHJcbiAgLy8gYmctY29sb3ItYWN0aXZlXHJcbiAgQGlmICggJGNvbG9yLW1hcCApIHtcclxuICAgIC8vIGNoYW5nZSBiYWNrZ3JvdW5kIGNvbG9yXHJcbiAgICBAaWYgbWFwLWdldCgkY29sb3ItbWFwLCBiZy1jb2xvcikge1xyXG4gICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJGNvbG9yLW1hcCwgYmctY29sb3IpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAvLyBjaGFuZ2UgYmFja2dyb3VuZCBjb2xvciBvbiBhY3RpdmVcclxuICAgIEBpZiBtYXAtZ2V0KCRjb2xvci1tYXAsIGJnLWNvbG9yLWFjdGl2ZSkge1xyXG4gICAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJGNvbG9yLW1hcCwgYmctY29sb3ItYWN0aXZlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC8vIGlmIGFuIGFjdGl2ZSBzdGF0ZSBpc24ndCBzZXQsIHV0aWxpemUgZGVmYXVsdCBjb2xvciBkYXJrZW5lZFxyXG4gICAgQGVsc2Uge1xyXG4gICAgICAkYmctY29sb3ItYWN0aXZlOiBtYXAtZ2V0KCRjb2xvci1tYXAsIGJnLWNvbG9yKTtcclxuICAgICAgJjphY3RpdmUge1xyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJnLWNvbG9yLWFjdGl2ZSwgMjAlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC8vIGNoYW5nZSBiYWNrZ3JvdW5kIGNvbG9yIG9uIGZvY3VzXHJcbiAgICBAaWYgbWFwLWdldCgkY29sb3ItbWFwLCBiZy1jb2xvci1mb2N1cykge1xyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkY29sb3ItbWFwLCBiZy1jb2xvci1mb2N1cyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAvLyBpZiBhIGZvY3VzIHN0YXRlIGlzbid0IHNldCwgdXRpbGl6ZSBkZWZhdWx0IGNvbG9yIGRhcmtlbmVkXHJcbiAgICBAZWxzZSB7XHJcbiAgICAgICRiZy1jb2xvci1mb2N1czogbWFwLWdldCgkY29sb3ItbWFwLCBiZy1jb2xvcik7XHJcbiAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJnLWNvbG9yLWZvY3VzLCAxMCUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy8gY2hhbmdlIGJhY2tncm91bmQgY29sb3Igb24gaG92ZXJcclxuICAgIEBpZiBtYXAtZ2V0KCRjb2xvci1tYXAsIGJnLWNvbG9yLWhvdmVyKSB7XHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjb2xvci1tYXAsIGJnLWNvbG9yLWhvdmVyKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC8vIGNoYW5nZSB0ZXh0IGNvbG9yXHJcbiAgICBAaWYgbWFwLWdldCgkY29sb3ItbWFwLCB0ZXh0KSB7XHJcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvci1tYXAsIHRleHQpO1xyXG4gICAgfVxyXG4gICAgLy8gY2hhbmdlIHRleHQgY29sb3Igb24gYWN0aXZlXHJcbiAgICBAaWYgbWFwLWdldCgkY29sb3ItbWFwLCB0ZXh0LWFjdGl2ZSkge1xyXG4gICAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9yLW1hcCwgdGV4dC1hY3RpdmUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAvLyBjaGFuZ2UgdGV4dCBjb2xvciBvbiBob3ZlclxyXG4gICAgQGlmIG1hcC1nZXQoJGNvbG9yLW1hcCwgdGV4dC1ob3Zlcikge1xyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogbWFwLWdldCgkY29sb3ItbWFwLCB0ZXh0LWhvdmVyKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBAZWxzZSB7XHJcbiAgICBAd2FybiAnT29wcywgeW91IGRpZG5cXCd0IHByb3ZpZGUgYSBidG4tY29sb3IgcGFyYW1ldGVyJztcclxuICB9XHJcbn1cclxuXHJcbi8vIGNvbnN0cmFpbiBwcm9wb3J0aW9uc1xyXG5AbWl4aW4gY29uc3RyYWluLXByb3BvcnRpb25zKCR3aWR0aCwgJGhlaWdodC1wZXJjZW50KSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgd2lkdGg6ICR3aWR0aDtcclxuICAmOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBhZGRpbmctdG9wOiAkaGVpZ2h0LXBlcmNlbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gZm9jdXMtZGVmYXVsdC1zdHlsZXMge1xyXG4gIG91dGxpbmUtY29sb3I6IEhpZ2hsaWdodDtcclxuICBvdXRsaW5lLXN0eWxlOiBhdXRvO1xyXG4gIG91dGxpbmUtd2lkdGg6IDVweDtcclxuICB6LWluZGV4OiAyO1xyXG59XHJcblxyXG4vLyBnZW5lcmF0ZSBhIEBmb250LWZhY2UgcnVsZVxyXG5AbWl4aW4gZm9udC1mYWNlKCRmYW1pbHksICRwYXRoLCAkd2VpZ2h0OiA0MDAsICRzdHlsZTogbm9ybWFsLCAkZXh0czogZW90IHdvZmYyIHdvZmYgdHRmIHN2Zykge1xyXG4gICRleHQtbW9kczogKCBlb3Q6ICc/Jywgc3ZnOiAnIycgKyBzdHItcmVwbGFjZSgkZmFtaWx5LCAnICcsICcnKSApO1xyXG4gICRmb3JtYXRzOiAoIG90ZjogJ29wZW50eXBlJywgdHRmOiAndHJ1ZXR5cGUnICk7XHJcbiAgJHNyYzogbnVsbDtcclxuICBAZWFjaCAkZXh0IGluICRleHRzIHtcclxuICAgICRleHQtbW9kOiBpZihtYXAtaGFzLWtleSgkZXh0LW1vZHMsICRleHQpLCAkZXh0ICsgbWFwLWdldCgkZXh0LW1vZHMsICRleHQpLCAkZXh0KTtcclxuICAgICRmb3JtYXQ6IGlmKG1hcC1oYXMta2V5KCRmb3JtYXRzLCAkZXh0KSwgbWFwLWdldCgkZm9ybWF0cywgJGV4dCksICRleHQpO1xyXG4gICAgJHNyYzogYXBwZW5kKCRzcmMsIHVybChxdW90ZSgkcGF0aCArICcuJyArICRleHQtbW9kKSkgZm9ybWF0KHF1b3RlKCRmb3JtYXQpKSwgY29tbWEpO1xyXG4gIH1cclxuICBAZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiBxdW90ZSgkZmFtaWx5KTtcclxuICAgIGZvbnQtc3R5bGU6ICRzdHlsZTtcclxuICAgIGZvbnQtd2VpZ2h0OiAkd2VpZ2h0O1xyXG4gICAgc3JjOiAkc3JjO1xyXG4gIH1cclxufVxyXG5cclxuLy8gdHVybiBmb250LXNtb290aGluZyBvbiBvciBvZmZcclxuQG1peGluIGZvbnQtc21vb3RoaW5nKCRlbmFibGU6IHRydWUpIHtcclxuICBAaWYgKCRlbmFibGUpIHtcclxuICAgIC8vIGRpc2FibGUgYWxsIHZlbmRvciBwcmVmaXggZXJyb3JzLCB3ZSBrbm93IHdoYXQncyB1cFxyXG4gICAgLy8gc2Fzcy1saW50OmRpc2FibGUtYmxvY2sgbm8tdmVuZG9yLXByZWZpeGVzXHJcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgfVxyXG4gIEBlbHNlIHtcclxuICAgIC8vIGRpc2FibGUgYWxsIHZlbmRvciBwcmVmaXggZXJyb3JzLCB3ZSBrbm93IHdoYXQncyB1cFxyXG4gICAgLy8gc2Fzcy1saW50OmRpc2FibGUtYmxvY2sgbm8tdmVuZG9yLXByZWZpeGVzXHJcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogYXV0bztcclxuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IHN1YnBpeGVsLWFudGlhbGlhc2VkO1xyXG4gIH1cclxufVxyXG5cclxuLy8gZ2VuZXJhdGUgbWVkaWEgcXVlcnkgZm9yIHRhcmdldGluZyBsYW5kc2NhcGUgb3JpZW50YXRpb25zXHJcbkBtaXhpbiBsYW5kc2NhcGUge1xyXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxufVxyXG5cclxuLy8gZ2VuZXJhdGUgc3R5bGVzIHRvIG1hdGNoIGd1dHRlciBzaXplIHRvICRwcm9wZXJ0aWVzXHJcbkBtaXhpbiBtYXRjaC1ndXR0ZXItc2l6ZSgkcHJvcGVydGllcywgJHNjYWxlOiAxKSB7XHJcbiAgQGVhY2ggJHByb3BlcnR5IGluICRwcm9wZXJ0aWVzIHtcclxuICAgICN7JHByb3BlcnR5fTogd2lkdGgoZ3V0dGVyLXMpICogJHNjYWxlO1xyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZS14bCkge1xyXG4gICAgQGVhY2ggJHByb3BlcnR5IGluICRwcm9wZXJ0aWVzIHtcclxuICAgICAgI3skcHJvcGVydHl9OiB3aWR0aChndXR0ZXItbSkgKiAkc2NhbGU7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xyXG4gICAgQGVhY2ggJHByb3BlcnR5IGluICRwcm9wZXJ0aWVzIHtcclxuICAgICAgI3skcHJvcGVydHl9OiB3aWR0aChndXR0ZXItbCkgKiAkc2NhbGU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBoaWRlIGZyb20gdmlzaWJsZSBkaXNwbGF5IGJ1dCByZW1haW4gYXZhaWxhYmxlIGZvciBzY3JlZW4gcmVhZGVyc1xyXG4vLyAoaHR0cHM6Ly9kZXZlbG9wZXIucGFjaWVsbG9ncm91cC5jb20vYmxvZy8yMDEyLzA1L2h0bWw1LWFjY2Vzc2liaWxpdHktY2hvcHMtaGlkZGVuLWFuZC1hcmlhLWhpZGRlbi8pXHJcbkBtaXhpbiBvZmZzY3JlZW4ge1xyXG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcclxuICBoZWlnaHQ6IDFweDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIHdpZHRoOiAxcHg7XHJcbn1cclxuXHJcbi8vIGdlbmVyYXRlIHJlc3BvbnNpdmUgZm9udCBzaXplc1xyXG5AbWl4aW4gcmVzcG9uc2l2ZS1mb250LXNpemUoJHJlc3BvbnNpdmUtZm9udC1zaXplKSB7XHJcbiAgJHJlc3BvbnNpdmUtZm9udC1zaXplOiByZXNwb25zaXZlLWZvbnQtc2l6ZSgkcmVzcG9uc2l2ZS1mb250LXNpemUpO1xyXG4gIEBpZiAkcmVzcG9uc2l2ZS1mb250LXNpemUge1xyXG4gICAgZm9udC1zaXplOiBudGgoJHJlc3BvbnNpdmUtZm9udC1zaXplLCAxKTtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogbnRoKCRyZXNwb25zaXZlLWZvbnQtc2l6ZSwgMik7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZS14bCkge1xyXG4gICAgICBmb250LXNpemU6IG50aCgkcmVzcG9uc2l2ZS1mb250LXNpemUsIDMpO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcclxuICAgICAgZm9udC1zaXplOiBudGgoJHJlc3BvbnNpdmUtZm9udC1zaXplLCA0KTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xyXG4gICAgICBmb250LXNpemU6IG50aCgkcmVzcG9uc2l2ZS1mb250LXNpemUsIDUpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1peGluIHNlbGVjdGlvbi10cmFuc3BhcmVudCB7XHJcbiAgJjo6c2VsZWN0aW9uIHtcclxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gIH1cclxufVxyXG5cclxuLy8gZ2VuZXJhdGUgdW5ib3VuZGVkIGRvdHNcclxuLy8gKiByZXF1aXJlcyBib3RoIHJvdyBhbmQgY29sdW1uIGlucHV0c1xyXG4vLyAqICRyb3cgaXMgdGhlIG51bWJlciBvZiBkb3RzIGFjcm9zcyBhbmQgJGNvbHVtbiBpcyB0aGUgbnVtYmVyIG9mIGRvdHMgZG93blxyXG5AbWl4aW4gdW5ib3VuZGVkLWRvdHMtZ3JpZCgkcm93LCAkY29sdW1uKSB7XHJcbiAgaGVpZ2h0OiAkY29sdW1uICogd2lkdGgodW5ib3VuZGVkLWRvdCk7XHJcbiAgd2lkdGg6ICRyb3cgKiB3aWR0aCh1bmJvdW5kZWQtZG90KTtcclxufVxyXG5cclxuLy8gdGFyZ2V0IGVsZW1lbnRzIHdpdGhvdXQgYSBjbGFzcyBvciB3aXRoIHRoZSBjbGFzcyAndmFuaWxsYSdcclxuQG1peGluIHZhbmlsbGEge1xyXG4gICYudmFuaWxsYSxcclxuICAmW2NsYXNzPScnXSxcclxuICAmOm5vdChbY2xhc3NdKSB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcbn1cclxuXHJcbi8vIGdlbmVyYXRlIG1lZGlhIHF1ZXJpZXMgZm9yIHRhcmdldGluZyBoZWlnaHRzXHJcbkBtaXhpbiB2ZXJ0aWNhbC1icmVha3BvaW50KCRtaW4taGVpZ2h0LCAkbWF4LWhlaWdodDogbnVsbCwgJHVzZS1uYW1lZC1oZWlnaHRzOiB0cnVlKSB7XHJcbiAgQGlmICgkdXNlLW5hbWVkLWhlaWdodHMpIHtcclxuICAgICRtaW4taGVpZ2h0OiBoZWlnaHQoJG1pbi1oZWlnaHQpO1xyXG4gICAgQGlmICgkbWF4LWhlaWdodCkge1xyXG4gICAgICAkbWF4LWhlaWdodDogaGVpZ2h0KCRtYXgtaGVpZ2h0KTtcclxuICAgIH1cclxuICB9XHJcbiAgQGlmICgkbWF4LWhlaWdodCkge1xyXG4gICAgJG1heC1oZWlnaHQ6ICRtYXgtaGVpZ2h0IC0gMTtcclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1oZWlnaHQ6ICRtaW4taGVpZ2h0KSBhbmQgKG1heC1oZWlnaHQ6ICRtYXgtaGVpZ2h0KSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH1cclxuICBAZWxzZSB7XHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4taGVpZ2h0OiAkbWluLWhlaWdodCkge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gY29yZSByZXF1aXJlZCBzZXR0aW5nc1xyXG4vLyAqwqBjb3JlICRjb2xvcnMsICRlYXNpbmdzLCAkZm9udHMsICRoZWlnaHRzLCAkc3BhY2luZ3MsICR3aWR0aHMgYW5kICR6LWluZGV4ZXNcclxuLy8gKsKgaW50ZW5kZWQgdG8gYmUgZXh0ZW5kZWQgb3Igb3ZlcndyaXR0ZW4gaW4gcHJvcGVydGllcyB1c2luZyBjb3JlXHJcbi8vICrCoGV4dGVuZCBjb3JlIHNldHRpbmdzIHdpdGggbWFwLWV4dGVuZCBmdW5jdGlvblxyXG4vL1xyXG5cclxuLy8gZXhhbXBsZTogZXh0ZW5kIGEgc2V0dGluZ3MgbWFwIHdpdGggYWRkaXRpb25hbCBrZXkgdmFsdWUgcGFpcnNcclxuLy8gJGNvbG9yczogbWFwLWV4dGVuZCgkY29sb3JzLCAoXHJcbi8vICAgbmV3LWNvbG9yOiAoXHJcbi8vICAgICBiYXNlOiAjZDg1MTQxLFxyXG4vLyAgICAgZGFyazogI2IxNDQzNixcclxuLy8gICApLFxyXG4vLyApKTtcclxuXHJcbi8vIGJvcmRlciByYWRpaVxyXG4vLyDigKIgYm9yZGVyIHJhZGlpIHNob3VsZHUgYmUgZGVjbGFyZWQgZnJvbSBzbWFsbGVzdCB0byBsYXJnZXN0LCB0b3AgdG8gYm90dG9tXHJcbiRib3JkZXItcmFkaWk6IChcclxuICBzOiAzcHgsXHJcbiAgbTogNnB4LFxyXG4gIGw6IDlweCxcclxuKTtcclxuXHJcbi8vIGJveCBzaGFkb3dzXHJcbi8vIOKAoiBib3ggc2hhZG93IHZhcmlhbnRzIHNob3VsZCBiZSBkZWNsYXJlZCBmcm9tIHNtYWxsZXN0IHRvIGxhcmdlc3QsIHRvcCB0byBib3R0b21cclxuJGJveC1zaGFkb3ctc2l6ZXM6IChcclxuICBzOiAwIDEwcHggMTBweCAtMTBweCxcclxuICBtOiAwIDI1cHggMjVweCAtMjVweCxcclxuICBsOiAwIDUwcHggNTBweCAtNTBweCxcclxuKTtcclxuXHJcbi8vIGNvbG9yc1xyXG4vLyDigKIgY29sb3IgdmFyaWFudHMgc2hvdWxkIGJlIGRlY2xhcmVkIGZyb20gbGlnaHRlc3QgdG8gZGFya2VzdCwgdG9wIHRvIGJvdHRvbVxyXG4vLyDigKIgb25seSBibGFjayBhbmQgd2hpdGUgbWF5IGhhdmUgbmVhciBhbmQgb2ZmIGNvbG9yc1xyXG4kY29sb3JzOiAoXHJcbiAgYmxhY2s6IChcclxuICAgIGJhc2U6ICMwMDAsXHJcbiAgICBuZWFyOiAjMTYxYTFkLFxyXG4gICksXHJcbiAgYmx1ZTogKFxyXG4gICAgeC1saWdodDogI2JjZWVmZSxcclxuICAgIGxpZ2h0OiAjODdlMWZmLFxyXG4gICAgYmFzZTogIzAwYTdlMCxcclxuICAgIGRhcms6ICMwMDZkYmEsXHJcbiAgKSxcclxuICBibHVlLWFsdDogKFxyXG4gICAgYmFzZTogIzAwMjg1NSxcclxuICApLFxyXG4gIGVycm9yOiAoXHJcbiAgICBiYXNlOiAjZWEzZjNmLFxyXG4gICAgbGlnaHQ6ICNmZmU3ZTksXHJcbiAgKSxcclxuICBncmF5OiAoXHJcbiAgICB4eC1saWdodDogI2Q5ZDlkOSxcclxuICAgIHgtbGlnaHQ6ICNjY2MsXHJcbiAgICBsaWdodDogIzkzOTE5MSxcclxuICAgIGJhc2U6ICM2MTYwNjAsXHJcbiAgICBkYXJrOiAjNWE2MDY2LFxyXG4gICAgeC1kYXJrOiAjMmUzMTM0LFxyXG4gICAgbmVhcjogI2QyZDdkOSxcclxuICApLFxyXG4gIGdyZWVuOiAoXHJcbiAgICBiYXNlOiAjM2NiODc4LFxyXG4gICksXHJcbiAgbWFyYXNjaGlubzogKFxyXG4gICAgeC1saWdodDogI2ZmZTZlNixcclxuICAgIGxpZ2h0OiAjZjBhOGE4LFxyXG4gICAgYmFzZTogI2RiMmI0ZSxcclxuICAgIG5lYXI6ICNlNmJhYjEsXHJcbiAgKSxcclxuICBtYXJpbmU6IChcclxuICAgIGxpZ2h0OiAjNzJjNWZkLFxyXG4gICAgYmFzZTogIzAwOTlkYyxcclxuICAgIG5lYXI6ICNkMWVjZjUsXHJcbiAgKSxcclxuICBtZWxvbjogKFxyXG4gICAgeHgtbGlnaHQ6ICNmMmQ4ZDEsXHJcbiAgICB4LWxpZ2h0OiAjZmZlMGQ4LFxyXG4gICAgbGlnaHQ6ICNmZmI0YTgsXHJcbiAgICBiYXNlOiAjZmQ0MTI0LFxyXG4gICAgbmVhcjogI2Y1YzVjMSxcclxuICApLFxyXG4gIG1pZG5pZ2h0OiAoXHJcbiAgICB4LWxpZ2h0OiAjYjllM2ZlLFxyXG4gICAgbGlnaHQ6ICM1NGE2ZGIsXHJcbiAgICBiYXNlOiAjMDAxZjQ1LFxyXG4gICAgbmVhcjogI2NlZTZmNSxcclxuICApLFxyXG4gIG1pbnR5OiAoXHJcbiAgICB4LWxpZ2h0OiAjZGFmNWYwLFxyXG4gICAgbGlnaHQ6ICNiNmU4ZGYsXHJcbiAgICBiYXNlOiAjMzZkMmI2LFxyXG4gICAgbmVhcjogI2M0ZTFkYyxcclxuICApLFxyXG4gIG11c3RhcmQ6IChcclxuICAgIHgtbGlnaHQ6ICNmZmYwY2UsXHJcbiAgICBsaWdodDogI2Y1ZTJiNixcclxuICAgIGJhc2U6ICNmY2FlMjksXHJcbiAgICBuZWFyOiAjZWZkN2ExLFxyXG4gICksXHJcbiAgc2hhZG93OiAoXHJcbiAgICBiYXNlOiByZ2JhKDAsIDAsIDAsIC4yKSxcclxuICAgIGRhcms6IHJnYmEoMCwgMCwgMCwgLjM1KSxcclxuICApLFxyXG4gIHNwZWNpYWw6IChcclxuICAgIGJhc2U6ICNmNjYsXHJcbiAgICBkYXJrOiAjY2M1MjUyLFxyXG4gICksXHJcbiAgd2hpdGU6IChcclxuICAgIGJhc2U6ICNmZmYsXHJcbiAgICBuZWFyOiAjZjJmNGY1LFxyXG4gICAgb2ZmOiAjZTVlNWU1LFxyXG4gICksXHJcbik7XHJcblxyXG4vLyBlYXNpbmdzXHJcbi8vICogZnJvbSBbZWFzaW5ncy5uZXRdKGh0dHA6Ly9lYXNpbmdzLm5ldClcclxuJGVhc2luZ3M6IChcclxuICBpbi1iYWNrOiBjdWJpYy1iZXppZXIoLjYsIC0uMjgsIC43MzUsIC4wNDUpLFxyXG4gIGluLWNpcmM6IGN1YmljLWJlemllciguNiwgLjA0LCAuOTgsIC4zMzUpLFxyXG4gIGluLWN1YmljOiBjdWJpYy1iZXppZXIoLjU1LCAuMDU1LCAuNjc1LCAuMTkpLFxyXG4gIGluLWV4cG86IGN1YmljLWJlemllciguOTUsIC4wNSwgLjc5NSwgLjAzNSksXHJcbiAgaW4tcXVhZDogY3ViaWMtYmV6aWVyKC41NSwgLjA4NSwgLjY4LCAuNTMpLFxyXG4gIGluLXF1YXJ0OiBjdWJpYy1iZXppZXIoLjg5NSwgLjAzLCAuNjg1LCAuMjIpLFxyXG4gIGluLXF1aW50OiBjdWJpYy1iZXppZXIoLjc1NSwgLjA1LCAuODU1LCAuMDYpLFxyXG4gIGluLXNpbmU6IGN1YmljLWJlemllciguNDcsIDAsIC43NDUsIC43MTUpLFxyXG4gIGluLW91dC1iYWNrOiBjdWJpYy1iZXppZXIoLjY4LCAtLjU1LCAuMjY1LCAxLjU1KSxcclxuICBpbi1vdXQtY2lyYzogY3ViaWMtYmV6aWVyKC43ODUsIC4xMzUsIC4xNSwgLjg2KSxcclxuICBpbi1vdXQtY3ViaWM6IGN1YmljLWJlemllciguNjQ1LCAuMDQ1LCAuMzU1LCAxKSxcclxuICBpbi1vdXQtZXhwbzogY3ViaWMtYmV6aWVyKDEsIDAsIDAsIDEpLFxyXG4gIGluLW91dC1xdWFkOiBjdWJpYy1iZXppZXIoLjQ1NSwgLjAzLCAuNTE1LCAuOTU1KSxcclxuICBpbi1vdXQtcXVhcnQ6IGN1YmljLWJlemllciguNzcsIDAsIC4xNzUsIDEpLFxyXG4gIGluLW91dC1xdWludDogY3ViaWMtYmV6aWVyKC44NiwgMCwgLjA3LCAxKSxcclxuICBpbi1vdXQtc2luZTogY3ViaWMtYmV6aWVyKC40NDUsIC4wNSwgLjU1LCAuOTUpLFxyXG4gIG91dC1iYWNrOiBjdWJpYy1iZXppZXIoLjE3NSwgLjg4NSwgLjMyLCAxLjI3NSksXHJcbiAgb3V0LWNpcmM6IGN1YmljLWJlemllciguMDc1LCAuODIsIC4xNjUsIDEpLFxyXG4gIG91dC1jdWJpYzogY3ViaWMtYmV6aWVyKC4yMTUsIC42MSwgLjM1NSwgMSksXHJcbiAgb3V0LWV4cG86IGN1YmljLWJlemllciguMTksIDEsIC4yMiwgMSksXHJcbiAgb3V0LXF1YWQ6IGN1YmljLWJlemllciguMjUsIC40NiwgLjQ1LCAuOTQpLFxyXG4gIG91dC1xdWFydDogY3ViaWMtYmV6aWVyKC4xNjUsIC44NCwgLjQ0LCAxKSxcclxuICBvdXQtcXVpbnQ6IGN1YmljLWJlemllciguMjMsIDEsIC4zMiwgMSksXHJcbiAgb3V0LXNpbmU6IGN1YmljLWJlemllciguMzksIC41NzUsIC41NjUsIDEpLFxyXG4pO1xyXG5cclxuLy8gZm9udCBmYW1pbGVzXHJcbiRmb250LWZhbWlsaWVzOiAoXHJcbiAgbW9ubzogJ1wiQW5kYWxlIE1vbm9cIiwgQ291cmllciBOZXcsIG1vbm9zcGFjZScsXHJcbiAgc2FuczogJ1wiUHJveGltYSBOb3ZhIFcwMVwiLCBcIkhlbHZldGljYSBOZXVlXCIsIENhbGlicmksIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWYnLFxyXG4gIHNlcmlmOiAnXCJRdWFydG8gQVwiLCBcIlF1YXJ0byBCXCIsIEdlb3JnaWEsIHNlcmlmJyxcclxuKTtcclxuXHJcbi8vIG5hbWVkIGhlaWdodHNcclxuLy8gKiBjdXJyZW50bHkgbm8gY29yZSBuYW1lZCBoZWlnaHRzXHJcbiRoZWlnaHRzOiAoXHJcbik7XHJcblxyXG4vLyBsZXR0ZXIgc3BhY2luZ3NcclxuJGxldHRlci1zcGFjaW5nczogKFxyXG4gIGNvbmRlbnNlZDogLS4wMmVtLFxyXG4gIGV4cGFuZGVkLXh4czogLjAxMjVlbSxcclxuICBleHBhbmRlZC14czogLjAyNWVtLFxyXG4gIGV4cGFuZGVkLXM6IC4wNWVtLFxyXG4gIGV4cGFuZGVkOiAuMWVtLFxyXG4gIC8vIGV4cGFuZGVkLXhsOiAsXHJcbik7XHJcblxyXG4vLyBsaW5lIGhlaWdodHNcclxuJGxpbmUtaGVpZ2h0czogKFxyXG4gIGg6IDEuMmVtLFxyXG4gIGgtdGlnaHQ6IDEuMDYyNWVtLFxyXG4gIHA6IDEuNWVtLFxyXG4gIHAtdGlnaHQ6IDEuM2VtLFxyXG4pO1xyXG5cclxuLy8gdGhlIGJhc2UgcGF0aCB0byBwcm94aW1hIGZvbnRzXHJcbiRwcm94aW1hLWJhc2UtcGF0aDogJ2h0dHBzOi8vY2RuLmxpZmV2YW50YWdlLmNvbS9maWxlcy9mb250L3Byb3hpbWEtbm92YS8nICFkZWZhdWx0O1xyXG5cclxuLy8gd2hpY2ggY3V0cyBvZiBwcm94aW1hIG5vdmEgdG8gaW5jbHVkZVxyXG4kcHJveGltYS1mb250LWZhY2VzOiAoXHJcbiAgLy8gMTAwOiAoJ25vcm1hbCcsICdpdGFsaWMnKSxcclxuICAzMDA6ICgnbm9ybWFsJywgJ2l0YWxpYycpLFxyXG4gIDQwMDogKCdub3JtYWwnLCAnaXRhbGljJyksXHJcbiAgLy8gNTAwOiAoJ25vcm1hbCcsICdpdGFsaWMnKSxcclxuICAvLyA2MDA6ICgnbm9ybWFsJywgJ2l0YWxpYycpLFxyXG4gIDcwMDogKCdub3JtYWwnLCAnaXRhbGljJyksXHJcbiAgODAwOiAoJ25vcm1hbCcsICdpdGFsaWMnKSxcclxuICAvLyA5MDA6ICgnbm9ybWFsJywgJ2l0YWxpYycpLFxyXG4pICFkZWZhdWx0O1xyXG5cclxuLy8gcmVzcG9uc2l2ZSBmb250IHNpemVzXHJcbi8vIHNpemUtbmFtZTogKEB6ZXJvLCBAbW9iaWxlLCBAbW9iaWxlLXhsLCBAdGFibGV0LCBAZGVza3RvcClcclxuJHJlc3BvbnNpdmUtZm9udC1zaXplczogKFxyXG5cclxuICAvLyBoZWFkZXIgc2l6ZXNcclxuICBoLXh4bDogKDMycHgsIDQ4cHgsIDU2cHgsIDcycHgsIDEwMHB4KSxcclxuICBoLXhsOiAgKDI4cHgsIDM2cHgsIDQ4cHgsIDYwcHgsIDcycHgpLFxyXG4gIGgtbDogICAoMjRweCwgMjhweCwgMzJweCwgNDBweCwgNDhweCksXHJcbiAgaDogICAgICgyMXB4LCAyMnB4LCAyNHB4LCAyOHB4LCAzMnB4KSxcclxuICBoLXM6ICAgKDE4cHgsIDE5cHgsIDIwcHgsIDIycHgsIDI0cHgpLFxyXG4gIGgteHM6ICAoMTZweCwgMTZweCwgMTdweCwgMTdweCwgMThweCksXHJcbiAgaC14eHM6ICgxNXB4LCAxNXB4LCAxNXB4LCAxNnB4LCAxNnB4KSxcclxuXHJcbiAgLy8gcGFyYWdyYXBoIHNpemVzXHJcbiAgcC14eGw6ICgyMXB4LCAyMnB4LCAyNHB4LCAyOHB4LCAzMnB4KSxcclxuICBwLXhsOiAgKDE4cHgsIDE5cHgsIDIwcHgsIDIxcHgsIDI0cHgpLFxyXG4gIHAtbDogICAoMTZweCwgMTZweCwgMTdweCwgMTdweCwgMThweCksXHJcbiAgcDogICAgICgxNXB4LCAxNXB4LCAxNnB4LCAxNnB4LCAxNnB4KSxcclxuICBwLXM6ICAgKDEzcHgsIDEzcHgsIDE0cHgsIDE0cHgsIDE1cHgpLFxyXG4gIHAteHM6ICAoMTFweCwgMTFweCwgMTJweCwgMTJweCwgMTNweCksXHJcbiAgcC14eHM6ICgxMHB4LCAxMHB4LCAxMXB4LCAxMXB4LCAxMnB4KSxcclxuXHJcbik7XHJcblxyXG4vLyBuYW1lZCBzcGFjaW5nc1xyXG4kc3BhY2luZ3M6IChcclxuICBzOiA1cHgsXHJcbiAgbTogMTBweCxcclxuICBsOiAyMHB4LFxyXG4gIHhsOiAzMHB4LFxyXG4gIHh4bDogNDBweCxcclxuKTtcclxuXHJcbi8vIG5hbWVkIHdpZHRoc1xyXG4kd2lkdGhzOiAoXHJcbiAgemVybzogMCxcclxuICBndXR0ZXItZmx1aWQtczogNXB4LFxyXG4gIGd1dHRlci1mbHVpZC1tOiAxMHB4LFxyXG4gIGd1dHRlci1mbHVpZC1sOiAxNXB4LFxyXG4gIGd1dHRlci1zOiAyMHB4LFxyXG4gIGd1dHRlci1tOiAzMHB4LFxyXG4gIGd1dHRlci1sOiA0MHB4LFxyXG4gIGd1dHRlci14bDogNTBweCxcclxuICBtb2JpbGUtczogMzIwcHgsXHJcbiAgbW9iaWxlOiAzNzVweCxcclxuICBtb2JpbGUtbDogNDE0cHgsXHJcbiAgbW9iaWxlLXhsOiA1MzJweCxcclxuICB0YWJsZXQtczogNjUwcHgsXHJcbiAgdGFibGV0OiA3NjhweCxcclxuICB0YWJsZXQtbDogODk2cHgsXHJcbiAgZGVza3RvcDogMTAyNHB4LFxyXG4gIGRlc2t0b3AtbDogMTE0NnB4LFxyXG4gIGRlc2t0b3AteGw6IDEyNjhweCxcclxuICBtYXgtd2lkdGgtbmFycm93OiA4OTZweCwgLy8gODE2ICsgKGd1dHRlci1sICogMilcclxuICBtYXgtd2lkdGg6IDEyODBweCwgLy8gMTIwMCArIChndXR0ZXItbCAqIDIpXHJcbiAgbWF4LXdpZHRoLWZsdWlkOiAxNDA4cHgsIC8vIDEyODAgKyAoKGd1dHRlci1mbHVpZC1sICogNCkgKiAyKVxyXG4gIG1heC13aWR0aC1wcm9kdWN0cy13YWxsOiAxNjI1cHgsXHJcbiAgdW5ib3VuZGVkLWRvdDogMjBweCxcclxuKTtcclxuXHJcbi8vIHotaW5kZXhlc1xyXG4kei1pbmRleGVzOiAoXHJcbiAgY2FydC1zdW1tYXJ5OiAxMCxcclxuICBjaGF0OiAxNSxcclxuICBvdmVybGF5OiAyMCxcclxuICBtb2RhbDogMzAsXHJcbik7XHJcbiIsIi8vXHJcbi8vIGNvcmUgKG9wdGlvbmFsKSBidXR0b24gYmFzZVxyXG4vL1xyXG5cclxuLy8gYnV0dG9uIHNldHRpbmdzXHJcbiRidXR0b24tcm91bmRlZC1wYWRkaW5nLXRvcC1ib3R0b206IC43ZW07XHJcbiRidXR0b24tcGFkZGluZy10b3AtYm90dG9tOiAuOTNlbTtcclxuJGJ1dHRvbi1wYWRkaW5nLXJpZ2h0LWxlZnQ6IDEuNjdlbTtcclxuXHJcbi5idXR0b24ge1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKHAtcyk7XHJcbiAgQGluY2x1ZGUgc2VsZWN0aW9uLXRyYW5zcGFyZW50O1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGJsdWUpO1xyXG4gIGJvcmRlcjogMDtcclxuICBib3gtc2hhZG93OiBub25lO1xyXG4gIGNvbG9yOiBjb2xvcih3aGl0ZSk7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBmb250LWZhbWlseTogZm9udC1mYW1pbHkoc2Fucyk7XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICBsZXR0ZXItc3BhY2luZzogbGV0dGVyLXNwYWNpbmcoZXhwYW5kZWQpO1xyXG4gIC8vIGxpbmUtaGVpZ2h0IGlzIG5lY2Vzc2FyeSB0byBrZWVwIHRoZSBidXR0b24gaGVpZ2h0IGNvbnNpc3RlbnQgYmV0d2VlbiBgPGJ1dHRvbj5gcyBhbmQgYDxhPmBzLlxyXG4gIGxpbmUtaGVpZ2h0OiAxLjVlbTtcclxuICBtYXJnaW46IDA7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBwYWRkaW5nOiAkYnV0dG9uLXBhZGRpbmctdG9wLWJvdHRvbSAkYnV0dG9uLXBhZGRpbmctcmlnaHQtbGVmdDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgdHJhbnNpdGlvbjogY29sb3IgLjJzIGVhc2Utb3V0LCBib3JkZXIgLjJzIGVhc2Utb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLW91dDtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICY6YWN0aXZlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihjb2xvcihibHVlKSwgMjAlKTtcclxuICB9XHJcbiAgJjpmb2N1cyB7XHJcbiAgICBib3gtc2hhZG93OiBib3gtc2hhZG93LXNpemUocykgY29sb3Ioc2hhZG93LCBkYXJrKTtcclxuICB9XHJcbiAgJjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihibHVlLCBkYXJrKTtcclxuICB9XHJcbn1cclxuXHJcbi5idXR0b24tLWRpc2NyZXRpb25hcnkge1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKHAteHMpO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIGNvbG9yOiBjb2xvcihibHVlKTtcclxuICBwYWRkaW5nOiAxLjJlbSAxLjkzZW07XHJcbiAgJjpmb2N1cyB7XHJcbiAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgdGV4dC1zaGFkb3c6IDAgMnB4IDNweCBjb2xvcihzaGFkb3csIGRhcmspO1xyXG4gIH1cclxuICAmOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgY29sb3I6IGNvbG9yKGJsdWUsIGRhcmspO1xyXG4gIH1cclxuICAmLmJ1dHRvbi0tcmV2ZXJzZWQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBjb2xvcjogY29sb3Iod2hpdGUpO1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICBjb2xvcjogY29sb3IoYmx1ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uYnV0dG9uLS1yZXZlcnNlZCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUpO1xyXG4gIGNvbG9yOiBjb2xvcihibHVlKTtcclxuICAmOmFjdGl2ZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSk7XHJcbiAgICBjb2xvcjogZGFya2VuKGNvbG9yKGJsdWUpLCAyMCUpO1xyXG4gIH1cclxuICAmOmZvY3VzIHtcclxuICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICBvdXRsaW5lOiAycHggc29saWQgY29sb3IoYmx1ZSk7XHJcbiAgfVxyXG4gICY6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUpO1xyXG4gICAgY29sb3I6IGNvbG9yKGJsdWUsIGRhcmspO1xyXG4gIH1cclxufVxyXG5cclxuLmJ1dHRvbi0tc3BlY2lhbCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Ioc3BlY2lhbCk7XHJcbiAgY29sb3I6IGNvbG9yKHdoaXRlKTtcclxuICAmOmFjdGl2ZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oY29sb3Ioc3BlY2lhbCksIDIwJSk7XHJcbiAgICBjb2xvcjogY29sb3Iod2hpdGUpO1xyXG4gIH1cclxuICAmOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHNwZWNpYWwsIGRhcmspO1xyXG4gICAgY29sb3I6IGNvbG9yKHdoaXRlKTtcclxuICB9XHJcbn1cclxuXHJcbi5idXR0b24tLXN0cm9rZWQge1xyXG4gIC8vIHRoZSBwYWRkaW5nIGJvdHRvbSBhbmQgdG9wIG5lZWRzIHRvIGJlIHNsaWdodGx5IHNtYWxsZXIgdG8gYWNjb21vZGF0ZSBmb3IgdGhlIDJweCBib3JkZXJcclxuICAkcGFkZGluZzogY2FsYygjeyRidXR0b24tcGFkZGluZy10b3AtYm90dG9tfSAtIDJweCk7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyOiAycHggc29saWQgY29sb3IoYmx1ZSk7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICBjb2xvcjogY29sb3IoYmx1ZSk7XHJcbiAgcGFkZGluZy1ib3R0b206ICRwYWRkaW5nO1xyXG4gIHBhZGRpbmctdG9wOiAkcGFkZGluZztcclxuICAmOmFjdGl2ZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKGNvbG9yKGJsdWUpLCAyMCUpO1xyXG4gICAgY29sb3I6IGRhcmtlbihjb2xvcihibHVlKSwgMjAlKTtcclxuICB9XHJcbiAgJjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlci1jb2xvcjogY29sb3IoYmx1ZSwgZGFyayk7XHJcbiAgICBjb2xvcjogY29sb3IoYmx1ZSwgZGFyayk7XHJcbiAgfVxyXG4gICYuYnV0dG9uLS1yZXZlcnNlZCB7XHJcbiAgICBib3JkZXI6IDJweCBzb2xpZCBjb2xvcih3aGl0ZSk7XHJcbiAgICBjb2xvcjogY29sb3Iod2hpdGUpO1xyXG4gICAgJjphY3RpdmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oY29sb3Iod2hpdGUpLCAyMCUpO1xyXG4gICAgICBjb2xvcjogZGFya2VuKGNvbG9yKHdoaXRlKSwgMjAlKTtcclxuICAgIH1cclxuICAgICY6aG92ZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgYm9yZGVyLWNvbG9yOiBjb2xvcihibHVlKTtcclxuICAgICAgY29sb3I6IGNvbG9yKGJsdWUpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmJ1dHRvbi1yb3VuZGVkIHtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwLWwpO1xyXG4gIGFsbDogdW5zZXQ7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IobWlkbmlnaHQpO1xyXG4gIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICBjb2xvcjogY29sb3Iod2hpdGUpO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICBsZXR0ZXItc3BhY2luZzogbGV0dGVyLXNwYWNpbmcoZXhwYW5kZWQpO1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjVlbTtcclxuICBwYWRkaW5nOiAkYnV0dG9uLXJvdW5kZWQtcGFkZGluZy10b3AtYm90dG9tIDEuNzVlbTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLW91dDtcclxuICAmOmRpc2FibGVkLFxyXG4gICYuZGlzYWJsZWQge1xyXG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcclxuICB9XHJcbiAgJjpmb2N1cyxcclxuICAmOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKG1pbnR5KTtcclxuICB9XHJcbn1cclxuXHJcbi5idXR0b24tcm91bmRlZC0tcyB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUocC14cyk7XHJcbn1cclxuXHJcbi5idXR0b24tcm91bmRlZC0tc2Vjb25kYXJ5IHtcclxuICAvLyB0aGUgcGFkZGluZyBib3R0b20gYW5kIHRvcCBuZWVkcyB0byBiZSBzbGlnaHRseSBzbWFsbGVyIHRvIGFjY29tb2RhdGUgZm9yIHRoZSAycHggYm9yZGVyXHJcbiAgJHBhZGRpbmc6IGNhbGMoI3skYnV0dG9uLXJvdW5kZWQtcGFkZGluZy10b3AtYm90dG9tfSAtIDJweCk7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyOiAycHggc29saWQgY29sb3IobWlkbmlnaHQpO1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgY29sb3I6IGNvbG9yKG1pZG5pZ2h0KTtcclxuICBwYWRkaW5nLWJvdHRvbTogJHBhZGRpbmc7XHJcbiAgcGFkZGluZy10b3A6ICRwYWRkaW5nO1xyXG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAuMnMgZWFzZS1vdXQ7XHJcbiAgJjpmb2N1cyxcclxuICAmOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyLWNvbG9yOiBjb2xvcihtaW50eSk7XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIGNvcmUgcmVxdWlyZWQgZnVuY3Rpb25zXHJcbi8vXHJcblxyXG4vLyByZXR1cm4gYSBib3JkZXItcmFkaXVzZXMgbWFwIHZhbHVlXHJcbkBmdW5jdGlvbiBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzOiBtLCAkYm9yZGVyLXJhZGlpOiAkYm9yZGVyLXJhZGlpKSB7XHJcbiAgQGlmIG1hcC1oYXMta2V5KCRib3JkZXItcmFkaWksICRib3JkZXItcmFkaXVzKSB7XHJcbiAgICBAcmV0dXJuIG1hcC1nZXQoJGJvcmRlci1yYWRpaSwgJGJvcmRlci1yYWRpdXMpO1xyXG4gIH1cclxuICBAZWxzZSB7XHJcbiAgICBAd2FybiAnYm9yZGVyLXJhZGl1cygjeyRib3JkZXItcmFkaXVzfSkgaXMgbm90IGEgdmFsaWQgYm94IHNoYWRvdyBzaXplJztcclxuICAgIEByZXR1cm4gJ2ludmFsaWQtYm9yZGVyLXJhZGl1cy1tYXAtc2V0dGluZyc7XHJcbiAgfVxyXG59XHJcblxyXG4vLyByZXR1cm4gYSBib3gtc2hhZG93LXNpemVzIG1hcCB2YWx1ZVxyXG5AZnVuY3Rpb24gYm94LXNoYWRvdy1zaXplKCRib3gtc2hhZG93LXNpemUsICRib3gtc2hhZG93LXNpemVzOiAkYm94LXNoYWRvdy1zaXplcykge1xyXG4gIEBpZiBtYXAtaGFzLWtleSgkYm94LXNoYWRvdy1zaXplcywgJGJveC1zaGFkb3ctc2l6ZSkge1xyXG4gICAgQHJldHVybiBtYXAtZ2V0KCRib3gtc2hhZG93LXNpemVzLCAkYm94LXNoYWRvdy1zaXplKTtcclxuICB9XHJcbiAgQGVsc2Uge1xyXG4gICAgQHdhcm4gJ2JveC1zaGFkb3ctc2l6ZSgjeyRib3gtc2hhZG93LXNpemV9KSBpcyBub3QgYSB2YWxpZCBib3ggc2hhZG93IHNpemUnO1xyXG4gICAgQHJldHVybiAnaW52YWxpZC1ib3gtc2hhZG93LXNpemUtbWFwLXNldHRpbmcnO1xyXG4gIH1cclxufVxyXG5cclxuLy8gcmV0dXJuIGEgY29sb3IgbWFwIHZhbHVlLCBkZWZhdWx0IHRvIHRoZSBzZXR0aW5ncyBjb2xvciBtYXBcclxuQGZ1bmN0aW9uIGNvbG9yKCRjb2xvciwgJHZhbHVlOiBiYXNlLCAkY29sb3JzOiAkY29sb3JzKSB7XHJcbiAgQGlmIG1hcC1oYXMta2V5KCRjb2xvcnMsICRjb2xvcikgYW5kIG1hcC1oYXMta2V5KG1hcC1nZXQoJGNvbG9ycywgJGNvbG9yKSwgJHZhbHVlKSB7XHJcbiAgICBAcmV0dXJuIG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAkY29sb3IpLCAkdmFsdWUpO1xyXG4gIH1cclxuICBAZWxzZSB7XHJcbiAgICBAd2FybiAnY29sb3IoI3skY29sb3J9LCAjeyR2YWx1ZX0pIGlzIG5vdCBhIHZhbGlkIGNvbG9yIG1hcCBzZXR0aW5nJztcclxuICAgIEByZXR1cm4gJ2ludmFsaWQtY29sb3ItbWFwLXNldHRpbmcnO1xyXG4gIH1cclxufVxyXG5cclxuLy8gcmV0dXJuIGFuIGVhc2luZyBtYXAgdmFsdWUsIGRlZmF1bHQgdG8gdGhlIHNldHRpbmdzIGVhc2luZyBtYXBcclxuQGZ1bmN0aW9uIGVhc2luZygkZWFzaW5nLCAkZWFzaW5nczogJGVhc2luZ3MpIHtcclxuICBAaWYgbWFwLWhhcy1rZXkoJGVhc2luZ3MsICRlYXNpbmcpIHtcclxuICAgIEByZXR1cm4gbWFwLWdldCgkZWFzaW5ncywgJGVhc2luZyk7XHJcbiAgfVxyXG4gIEBlbHNlIHtcclxuICAgIEB3YXJuICdlYXNpbmcoI3skZWFzaW5nfSkgaXMgbm90IGEgdmFsaWQgZWFzaW5nIG1hcCBzZXR0aW5nJztcclxuICAgIEByZXR1cm4gJ2ludmFsaWQtZWFzaW5nLW1hcC1zZXR0aW5nJztcclxuICB9XHJcbn1cclxuXHJcbi8vIHJldHVybiBhIGZvbnQgbWFwIHZhbHVlLCBkZWZhdWx0IHRvIHRoZSBzZXR0aW5ncyBmb250cyBtYXBcclxuQGZ1bmN0aW9uIGZvbnQtZmFtaWx5KCRmb250LWZhbWlseSwgJGZvbnQtZmFtaWxpZXM6ICRmb250LWZhbWlsaWVzKSB7XHJcbiAgQGlmIG1hcC1oYXMta2V5KCRmb250LWZhbWlsaWVzLCAkZm9udC1mYW1pbHkpIHtcclxuICAgIEByZXR1cm4gdW5xdW90ZShtYXAtZ2V0KCRmb250LWZhbWlsaWVzLCAkZm9udC1mYW1pbHkpKTtcclxuICB9XHJcbiAgQGVsc2Uge1xyXG4gICAgQHdhcm4gJ2ZvbnQtZmFtaWx5KCN7JGZvbnQtZmFtaWx5fSkgaXMgbm90IGEgdmFsaWQgZm9udC1mYW1pbGllcyBtYXAgc2V0dGluZyc7XHJcbiAgICBAcmV0dXJuICdpbnZhbGlkLWZvbnQtbWFwLXNldHRpbmcnO1xyXG4gIH1cclxufVxyXG5cclxuLy8gcmV0dXJuIGEgbmFtZWQgaGVpZ2h0IG1hcCB2YWx1ZSwgZGVmYXVsdCB0byB0aGUgc2V0dGluZ3MgaGVpZ2h0cyBtYXBcclxuQGZ1bmN0aW9uIGhlaWdodCgkaGVpZ2h0LCAkaGVpZ2h0czogJGhlaWdodHMpIHtcclxuICBAaWYgbWFwLWhhcy1rZXkoJGhlaWdodHMsICRoZWlnaHQpIHtcclxuICAgIEByZXR1cm4gbWFwLWdldCgkaGVpZ2h0cywgJGhlaWdodCk7XHJcbiAgfVxyXG4gIEBlbHNlIHtcclxuICAgIEB3YXJuICdoZWlnaHQoI3skaGVpZ2h0fSkgaXMgbm90IGEgdmFsaWQgaGVpZ2h0IG1hcCBzZXR0aW5nJztcclxuICAgIEByZXR1cm4gJ2ludmFsaWQtaGVpZ2h0LW1hcC1zZXR0aW5nJztcclxuICB9XHJcbn1cclxuXHJcbi8vIHJldHVybiBhIGxldHRlci1zcGFjaW5nIG1hcCB2YWx1ZSwgZGVmYXVsdCB0byB0aGUgc2V0dGluZ3MgbGV0dGVyLXNwYWNpbmcgbWFwXHJcbkBmdW5jdGlvbiBsZXR0ZXItc3BhY2luZygkbGV0dGVyLXNwYWNpbmcsICRsZXR0ZXItc3BhY2luZ3M6ICRsZXR0ZXItc3BhY2luZ3MpIHtcclxuICBAaWYgbWFwLWhhcy1rZXkoJGxldHRlci1zcGFjaW5ncywgJGxldHRlci1zcGFjaW5nKSB7XHJcbiAgICBAcmV0dXJuIG1hcC1nZXQoJGxldHRlci1zcGFjaW5ncywgJGxldHRlci1zcGFjaW5nKTtcclxuICB9XHJcbiAgQGVsc2Uge1xyXG4gICAgQHdhcm4gJ2xldHRlci1zcGFjaW5nKCN7JGxldHRlci1zcGFjaW5nfSkgaXMgbm90IGEgdmFsaWQgbGV0dGVyLXNwYWNpbmcnO1xyXG4gICAgQHJldHVybiAnaW52YWxpZC1sZXR0ZXItc3BhY2luZy1tYXAtc2V0dGluZyc7XHJcbiAgfVxyXG59XHJcblxyXG4vLyByZXR1cm4gYSBsaW5lLWhlaWdodCBtYXAgdmFsdWUsIGRlZmF1bHQgdG8gdGhlIHNldHRpbmdzIGxpbmUtaGVpZ2h0IG1hcFxyXG5AZnVuY3Rpb24gbGluZS1oZWlnaHQoJGxpbmUtaGVpZ2h0LCAkbGluZS1oZWlnaHRzOiAkbGluZS1oZWlnaHRzKSB7XHJcbiAgQGlmIG1hcC1oYXMta2V5KCRsaW5lLWhlaWdodHMsICRsaW5lLWhlaWdodCkge1xyXG4gICAgQHJldHVybiBtYXAtZ2V0KCRsaW5lLWhlaWdodHMsICRsaW5lLWhlaWdodCk7XHJcbiAgfVxyXG4gIEBlbHNlIHtcclxuICAgIEB3YXJuICdsaW5lLWhlaWdodCgjeyRsaW5lLWhlaWdodH0pIGlzIG5vdCBhIHZhbGlkIGxpbmUtaGVpZ2h0JztcclxuICAgIEByZXR1cm4gJ2ludmFsaWQtbGluZS1oZWlnaHQtbWFwLXNldHRpbmcnO1xyXG4gIH1cclxufVxyXG5cclxuLy8gbWFwIGV4dGVuZFxyXG4vLyAqIG1vZGlmaWVkIGZyb20gdmlhIGh0dHBzOi8vd3d3LnNpdGVwb2ludC5jb20vZXh0cmEtbWFwLWZ1bmN0aW9ucy1zYXNzL1xyXG4vLyAqIGRlZXAgZXh0ZW5kcyBvbmx5XHJcbkBmdW5jdGlvbiBtYXAtZXh0ZW5kKCRtYXAsICRtYXBzLi4uKSB7XHJcbiAgLy8gbG9vcCB0aHJvdWdoICRtYXBzLi4uXHJcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCBsZW5ndGgoJG1hcHMpIHtcclxuICAgIC8vIHN0b3JlIGN1cnJlbnQgbWFwXHJcbiAgICAkY3VycmVudDogbnRoKCRtYXBzLCAkaSk7XHJcbiAgICAvLyBsb29wIHRocm91Z2ggYWxsIGtleSBwYWlycyBpbiBjdXJyZW50IG1hcFxyXG4gICAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRjdXJyZW50IHtcclxuICAgICAgLy8gaWYgdmFsdWUgaXMgYSBuZXN0ZWQgbWFwIGFuZCBzYW1lIGtleSBmcm9tIG1hcCBpcyBhIG5lc3RlZCBtYXAgYXMgd2VsbFxyXG4gICAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdtYXAnIGFuZCB0eXBlLW9mKG1hcC1nZXQoJG1hcCwgJGtleSkpID09ICdtYXAnIHtcclxuICAgICAgICAvLyByZWN1cnNpdmUgZXh0ZW5kXHJcbiAgICAgICAgJHZhbHVlOiBtYXAtZXh0ZW5kKG1hcC1nZXQoJG1hcCwgJGtleSksICR2YWx1ZSk7XHJcbiAgICAgIH1cclxuICAgICAgLy8gbWVyZ2UgY3VycmVudCBrZXkgcGFpciB3aXRoIG1hcFxyXG4gICAgICAkbWFwOiBtYXAtbWVyZ2UoJG1hcCwgKCRrZXk6ICR2YWx1ZSkpO1xyXG4gICAgfVxyXG4gIH1cclxuICAvLyByZXR1cm5cclxuICBAcmV0dXJuICRtYXA7XHJcbn1cclxuXHJcbi8vIHJldHVybiBhIHJlc3BvbnNpdmUgZm9udCBzaXplIG1hcFxyXG5AZnVuY3Rpb24gcmVzcG9uc2l2ZS1mb250LXNpemUoJHJlc3BvbnNpdmUtZm9udC1zaXplLCAkcmVzcG9uc2l2ZS1mb250LXNpemVzOiAkcmVzcG9uc2l2ZS1mb250LXNpemVzKSB7XHJcbiAgQGlmIG1hcC1oYXMta2V5KCRyZXNwb25zaXZlLWZvbnQtc2l6ZXMsICRyZXNwb25zaXZlLWZvbnQtc2l6ZSkge1xyXG4gICAgQHJldHVybiBtYXAtZ2V0KCRyZXNwb25zaXZlLWZvbnQtc2l6ZXMsICRyZXNwb25zaXZlLWZvbnQtc2l6ZSk7XHJcbiAgfVxyXG4gIEBlbHNlIHtcclxuICAgIEB3YXJuICdyZXNwb25zaXZlLWZvbnQtc2l6ZSgjeyRyZXNwb25zaXZlLWZvbnQtc2l6ZX0pIGlzIG5vdCBhIHZhbGlkIHJlc3BvbnNpdmUtZm9udC1zaXplJztcclxuICAgIEByZXR1cm4gJ2ludmFsaWQtZm9udC1zaXplLWxpc3Qtc2V0dGluZyc7XHJcbiAgfVxyXG59XHJcblxyXG4vLyByZXR1cm4gYSBuYW1lZCBzcGFjaW5nIG1hcCB2YWx1ZSwgZGVmYXVsdCB0byB0aGUgc2V0dGluZ3Mgc3BhY2luZ3MgbWFwXHJcbkBmdW5jdGlvbiBzcGFjaW5nKCRzcGFjaW5nLCAkc3BhY2luZ3M6ICRzcGFjaW5ncykge1xyXG4gIEBpZiBtYXAtaGFzLWtleSgkc3BhY2luZ3MsICRzcGFjaW5nKSB7XHJcbiAgICBAcmV0dXJuIG1hcC1nZXQoJHNwYWNpbmdzLCAkc3BhY2luZyk7XHJcbiAgfVxyXG4gIEBlbHNlIHtcclxuICAgIEB3YXJuICdzcGFjaW5nKCN7JHNwYWNpbmd9KSBpcyBub3QgYSB2YWxpZCBzcGFjaW5nIG1hcCBzZXR0aW5nJztcclxuICAgIEByZXR1cm4gJ2ludmFsaWQtc3BhY2UtbWFwLXNldHRpbmcnO1xyXG4gIH1cclxufVxyXG5cclxuLy8gcmV0dXJuIGEgc3RyaW5nIHdpdGggJHNlYXJjaCByZXBsYWNlZCB3aXRoICRyZXBsYWNlXHJcbkBmdW5jdGlvbiBzdHItcmVwbGFjZSgkc3RyaW5nLCAkc2VhcmNoLCAkcmVwbGFjZTogJycpIHtcclxuICAkaW5kZXg6IHN0ci1pbmRleCgkc3RyaW5nLCAkc2VhcmNoKTtcclxuICBAaWYgJGluZGV4IHtcclxuICAgIEByZXR1cm4gc3RyLXNsaWNlKCRzdHJpbmcsIDEsICRpbmRleCAtIDEpICsgJHJlcGxhY2UgKyBzdHItcmVwbGFjZShzdHItc2xpY2UoJHN0cmluZywgJGluZGV4ICsgc3RyLWxlbmd0aCgkc2VhcmNoKSksICRzZWFyY2gsICRyZXBsYWNlKTtcclxuICB9XHJcbiAgQHJldHVybiAkc3RyaW5nO1xyXG59XHJcblxyXG4vLyByZXR1cm4gYSBuYW1lZCB3aWR0aCBtYXAgdmFsdWUsIGRlZmF1bHQgdG8gdGhlIHNldHRpbmdzIHdpZHRocyBtYXBcclxuQGZ1bmN0aW9uIHdpZHRoKCR3aWR0aCwgJHdpZHRoczogJHdpZHRocykge1xyXG4gIEBpZiBtYXAtaGFzLWtleSgkd2lkdGhzLCAkd2lkdGgpIHtcclxuICAgIEByZXR1cm4gbWFwLWdldCgkd2lkdGhzLCAkd2lkdGgpO1xyXG4gIH1cclxuICBAZWxzZSB7XHJcbiAgICBAd2FybiAnd2lkdGgoI3skd2lkdGh9KSBpcyBub3QgYSB2YWxpZCB3aWR0aCBtYXAgc2V0dGluZyc7XHJcbiAgICBAcmV0dXJuICdpbnZhbGlkLXdpZHRoLW1hcC1zZXR0aW5nJztcclxuICB9XHJcbn1cclxuXHJcbi8vIHJldHVybiBhIHotaW5kZXggbWFwIHZhbHVlLCBkZWZhdWx0IHRvIHRoZSBzZXR0aW5ncyB6LWluZGV4ZXMgbWFwXHJcbkBmdW5jdGlvbiB6LWluZGV4KCR6LWluZGV4LCAkei1pbmRleGVzOiAkei1pbmRleGVzKSB7XHJcbiAgQGlmIG1hcC1oYXMta2V5KCR6LWluZGV4ZXMsICR6LWluZGV4KSB7XHJcbiAgICBAcmV0dXJuIG1hcC1nZXQoJHotaW5kZXhlcywgJHotaW5kZXgpO1xyXG4gIH1cclxuICBAZWxzZSB7XHJcbiAgICBAd2FybiAnei1pbmRleCgjeyR6LWluZGV4fSkgaXMgbm90IGEgdmFsaWQgei1pbmRleCc7XHJcbiAgICBAcmV0dXJuICdpbnZhbGlkLXotaW5kZXgtbWFwLXNldHRpbmcnO1xyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBjb3JlIChvcHRpb25hbCkgYnV0dG9uIGxheW91dFxyXG4vL1xyXG5cclxuLmJ1dHRvbi1ub3RlIHtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwLXhzKTtcclxuICBjb2xvcjogY29sb3IoZ3JheSwgbGlnaHQpO1xyXG4gIHBhZGRpbmctbGVmdDogMS41ZW07XHJcbiAgJltkYXRhLWJlaGF2aW9yXSxcclxuICAmW2hyZWZdIHtcclxuICAgIGNvbG9yOiBjb2xvcihibHVlKTtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIHRyYW5zaXRpb246IGNvbG9yIC4ycyBlYXNlLW91dDtcclxuICAgICY6aG92ZXIge1xyXG4gICAgICBjb2xvcjogY29sb3IoYmx1ZSwgZGFyayk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uYnV0dG9uLW5vdGUtY29udGFpbmVyIHtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbn1cclxuIiwiLy9cclxuLy8gY29yZSAob3B0aW9uYWwpIGJ1dHRvbiBtb2RpZmllcnNcclxuLy9cclxuXHJcbi5idXR0b24tLWNlbnRlciB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlLXhsKSB7XHJcbiAgICBtYXgtd2lkdGg6IDM3MHB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG59XHJcblxyXG4uYnV0dG9uLS1mdWxsIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uYnV0dG9uLS1oYXMtbG9hZGVyIHtcclxuICAvLyBjb3JlIGJ1dHRvbiBsb2FkXHJcbiAgLy8gKiB0aGlzIG1vZGlmaWVyIGNsYXNzIHdpbGwgZ2l2ZSBhIGJ1dHRvbiB0aGUgYWJpbGl0eSB0byBwdWxsIGluIHRoZSBlbGlwc2lzIGxvYWRpbmcgYW5pbWF0aW9uXHJcbiAgLy8gKiBgY29yZS1sb2FkZXIuc2Nzc2AgaXMgcmVxdWlyZWQgZm9yIHRoaXMgbW9kaWZpZXIgY2xhc3MgdG8gZnVuY3Rpb24gcHJvcGVybHlcclxuXHJcbiAgLyogc2Fzcy1saW50OmRpc2FibGUtYWxsXHJcblxyXG4gIGV4YW1wbGU6XHJcblxyXG4gIDxidXR0b24gY2xhc3M9XCJidXR0b24gYnV0dG9uLS1sb2FkIGxvYWRpbmdcIj5cclxuICAgIDxzcGFuIGNsYXNzPVwidGV4dFwiPlxyXG4gICAgICBTdWJtaXRcclxuICAgIDwvc3Bhbj5cclxuICAgIDxzcGFuIGNsYXNzPVwiZWxsaXBzaXMtbG9hZGVyXCI+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwiZG90XCI+PC9zcGFuPlxyXG4gICAgICA8c3BhbiBjbGFzcz1cImRvdFwiPjwvc3Bhbj5cclxuICAgICAgPHNwYW4gY2xhc3M9XCJkb3RcIj48L3NwYW4+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwidGV4dFwiPkxvYWRpbmc8L3NwYW4+XHJcbiAgICA8L3NwYW4+XHJcbiAgPC9idXR0b24+XHJcblxyXG4gIHNhc3MtbGludDplbmFibGUtYWxsICovXHJcblxyXG4gICRlYXNpbmc6IGVhc2luZyhvdXQtZXhwbyk7XHJcbiAgLnRleHQge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjVzICRlYXNpbmc7XHJcbiAgfVxyXG4gIC5lbGxpcHNpcy1sb2FkZXIge1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgbGVmdDogMDtcclxuICAgIG1hcmdpbjogYXV0bztcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcclxuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjVzICRlYXNpbmcsIHRyYW5zZm9ybSAuNXMgJGVhc2luZztcclxuICB9XHJcbn1cclxuXHJcbi5idXR0b24tLWhhcy1sb2FkZXIubG9hZGluZyB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoZ3JheSwgeC1saWdodCk7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgLy8gQFRPRE8gaXMgdGhlcmUgYSBiZXR0ZXIgd2F5IHRvIGRvIHRoaXMgZm9yIGFjY2Vzc2liaWxpdHlcclxuICAudGV4dCB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxuICAuZWxsaXBzaXMtbG9hZGVyIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gIH1cclxufVxyXG5cclxuLmJ1dHRvbi0taWNvbiB7XHJcbiAgcGFkZGluZy1sZWZ0OiAyLjY3ZW07XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIC51aS1pY29uIHtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGhlaWdodDogMi42N2VtO1xyXG4gICAgbGVmdDogMDtcclxuICAgIG1hcmdpbi1ib3R0b206IGF1dG87XHJcbiAgICBtYXJnaW4tdG9wOiBhdXRvO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgd2lkdGg6IDIuNjdlbTtcclxuICB9XHJcbn1cclxuXHJcbi5idXR0b24tLWwge1xyXG4gIHBhZGRpbmctYm90dG9tOiAxLjEzZW07XHJcbiAgcGFkZGluZy10b3A6IDEuMmVtO1xyXG59XHJcblxyXG4uYnV0dG9uLS1yb3VuZGVkLWNvcm5lcnMtbCB7XHJcbiAgYm9yZGVyLXJhZGl1czogYm9yZGVyLXJhZGl1cyhsKTtcclxufVxyXG5cclxuLmJ1dHRvbi0tcm91bmRlZC1jb3JuZXJzLW0ge1xyXG4gIGJvcmRlci1yYWRpdXM6IGJvcmRlci1yYWRpdXMobSk7XHJcbn1cclxuXHJcbi5idXR0b24tLXJvdW5kZWQtY29ybmVycy1zIHtcclxuICBib3JkZXItcmFkaXVzOiBib3JkZXItcmFkaXVzKHMpO1xyXG59XHJcblxyXG5cclxuLmJ1dHRvbi0tcyB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUocC14cyk7XHJcbiAgcGFkZGluZzogLjU1ZW0gMS4xNWVtO1xyXG4gICYuYnV0dG9uLS1pY29uIHtcclxuICAgIC51aS1pY29uIHtcclxuICAgICAgaGVpZ2h0OiAxLjg1ZW07XHJcbiAgICAgIHdpZHRoOiAxLjg1ZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICYuYnV0dG9uLS1zdHJva2VkIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAuNGVtO1xyXG4gICAgcGFkZGluZy10b3A6IC40ZW07XHJcbiAgfVxyXG59XHJcblxyXG4uYnV0dG9uLS1zdWNjZXNzIHtcclxuICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgLnVpLWljb24ge1xyXG4gICAgZmlsbDogY29sb3IoYmx1ZSk7XHJcbiAgICBsZWZ0OiBhdXRvO1xyXG4gICAgcmlnaHQ6IDJlbTtcclxuICB9XHJcbn1cclxuXHJcbi5idXR0b24tLXdpZGUge1xyXG4gIC8vIEBOT1RFLCB0aGUgbWluL21heCBzdHlsZXMgYXJlIGEgbGl0dGxlIGZyYWdpbGUgLyBhc3N1bWUgdGhlIGJ1dHRvbiBpcyBpbnNpZGUgYSBjb250ZW50LXdyYXBwZXJcclxuICAkbWluLXdpZHRoOiAzNTBweDtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KDAsICRtaW4td2lkdGggKyAod2lkdGgoZ3V0dGVyLXMpICogMiksIGZhbHNlKSB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgzOTBweCwgZmFsc2UsIGZhbHNlKSB7XHJcbiAgICBtaW4td2lkdGg6ICRtaW4td2lkdGg7XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIGNvcmUgKG9wdGlvbmFsKSBidXR0b24gc3RhdGVzXHJcbi8vXHJcblxyXG4uYnV0dG9uW2Rpc2FibGVkXSB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgZm9yY2UtYXR0cmlidXRlLW5lc3RpbmdcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihncmF5LCB4LWxpZ2h0KTtcclxuICBjb2xvcjogY29sb3Iod2hpdGUpO1xyXG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcbiAgJi5idXR0b24tLWRpc2NyZXRpb25hcnkge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBjb2xvcjogY29sb3IoZ3JheSwgeC1saWdodCk7XHJcbiAgfVxyXG4gICYuYnV0dG9uLS1yZXZlcnNlZCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihncmF5LCBkYXJrKTtcclxuICAgIGNvbG9yOiBjb2xvcihncmF5LCBsaWdodCk7XHJcbiAgfVxyXG4gICYuYnV0dG9uLS1zdHJva2VkIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyOiAycHggc29saWQgY29sb3IoZ3JheSwgeC1saWdodCk7XHJcbiAgICBjb2xvcjogY29sb3IoZ3JheSwgeC1saWdodCk7XHJcbiAgfVxyXG59XHJcblxyXG4uYnV0dG9uLmVycm9yIHtcclxuICBhbmltYXRpb246IHNoYWtlIDFzIGVhc2Utb3V0IGZvcndhcmRzO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGVycm9yKTtcclxuICBjb2xvcjogY29sb3Iod2hpdGUpO1xyXG4gICY6YWN0aXZlLFxyXG4gICY6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoZXJyb3IpO1xyXG4gIH1cclxuICAmLmJ1dHRvbi0tZGlzY3JldGlvbmFyeSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGNvbG9yOiBjb2xvcihlcnJvcik7XHJcbiAgfVxyXG4gICYuYnV0dG9uLS1zdHJva2VkIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyOiAycHggc29saWQgY29sb3IoZXJyb3IpO1xyXG4gICAgY29sb3I6IGNvbG9yKGVycm9yKTtcclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gY29yZSAob3B0aW9uYWwpIGNhcmRcclxuLy9cclxuXHJcbi5jYXJkIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSwgbmVhcik7XHJcbiAgY29sb3I6IGNvbG9yKGdyYXkpO1xyXG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgbWFyZ2luLXRvcDogMTBweDtcclxuICBtYXgtd2lkdGg6IHdpZHRoKHRhYmxldC1zKTtcclxuICBtaW4taGVpZ2h0OiA5MHB4O1xyXG4gIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG4gIHBhZGRpbmctbGVmdDogMzBweDtcclxuICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xyXG4gIHBhZGRpbmctdG9wOiAzMHB4O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldC1zKSB7XHJcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICB9XHJcbiAgJi0tZnVsbC13aWR0aCB7XHJcbiAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcclxuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xyXG4gICAgcCB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAgIG1heC13aWR0aDogMzVlbTtcclxuICAgIH1cclxuICB9XHJcbiAgJi0tdGlnaHQtdG9wIHtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgfVxyXG4gICYtLXdpdGgtaWNvbiB7XHJcbiAgICBtYXJnaW4tdG9wOiAzNXB4O1xyXG4gIH1cclxuICBwIHtcclxuICAgIGxpbmUtaGVpZ2h0OiBsaW5lLWhlaWdodChwKTtcclxuICB9XHJcbiAgLmJ0bixcclxuICAuYnV0dG9uIHtcclxuICAgIG1hcmdpbi10b3A6IDEuN2VtO1xyXG4gIH1cclxuICAuaGVhZGluZyB7XHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwLXMpO1xyXG4gICAgY29sb3I6IGNvbG9yKGdyYXkpO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIG1hcmdpbi1ib3R0b206IC43ZW07XHJcbiAgfVxyXG4gIC5oZWFkaW5nLWwge1xyXG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUoaC1zKTtcclxuICAgIGNvbG9yOiBjb2xvcihncmF5LCBkYXJrKTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAuOGVtO1xyXG4gIH1cclxuICAucHJlLWhlYWRpbmcge1xyXG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUocC1zKTtcclxuICAgIGNvbG9yOiBjb2xvcihncmF5LCBsaWdodCk7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IGxldHRlci1zcGFjaW5nKGV4cGFuZGVkKTtcclxuICAgIGxpbmUtaGVpZ2h0OiBsaW5lLWhlaWdodChwKTtcclxuICAgIG1hcmdpbi1ib3R0b206IDFlbTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgfVxyXG4gIC5yYWRpby1hbmQtbGFiZWwgKyAmIHtcclxuICAgIG1hcmdpbi10b3A6IDE2cHg7XHJcbiAgfVxyXG4gIC5zZWFsLWljb24ge1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIGNvbG9yKGdyZWVuKSwgZGFya2VuKGNvbG9yKGdyZWVuKSwgMTUlKSk7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgaGVpZ2h0OiA1MHB4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICByaWdodDogMDtcclxuICAgIHRvcDogMDtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTI4cHgsIDApO1xyXG4gICAgd2lkdGg6IDUwcHg7XHJcbiAgICAuY2hlY2sge1xyXG4gICAgICBmaWxsOiBjb2xvcih3aGl0ZSk7XHJcbiAgICAgIGhlaWdodDogMjJweDtcclxuICAgICAgd2lkdGg6IDIycHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5zaG93cm9vbS1ub3RlIHtcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICB9XHJcbn1cclxuXHJcbi5jYXJkLS1leHRyYS1wYWRkaW5nIHtcclxuICBwYWRkaW5nLXRvcDogNDBweDtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDcwcHg7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiA3MHB4O1xyXG4gICAgcGFkZGluZy10b3A6IDUwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4uY2FyZC0tc3Ryb2tlZCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyOiA0cHggc29saWQgY29sb3Iod2hpdGUsIG5lYXIpO1xyXG59XHJcblxyXG4uY2FyZC0tdGlnaHQge1xyXG4gIHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG4gIHBhZGRpbmctbGVmdDogMjVweDtcclxuICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xyXG4gIHBhZGRpbmctdG9wOiAxNXB4O1xyXG59XHJcblxyXG4vLyB0aGUgYXNzdW1wdGlvbiBpcyB0aGF0IHRoaXMgd2lsbCBjb21lIGxhc3Qgd2l0aGluIGEgZmllbGRzZXQuZm9ybS1tb2R1bGUsIGhlbmNlIG5vIG1hcmdpbi1ib3R0b21cclxuLmNhcmQud2FybmluZyB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoZXJyb3IsIGxpZ2h0KTtcclxuICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIG1hcmdpbi10b3A6IDEuNWVtO1xyXG4gIHAge1xyXG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUocC1zKTtcclxuICB9XHJcbn1cclxuXHJcbi5zaG93cm9vbS1waWNrdXAtY2FyZCB7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBib3JkZXI6IHNvbGlkIDRweCBjb2xvcih3aGl0ZSwgbmVhcik7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICBtYXJnaW4tYm90dG9tOiAxLjVlbTtcclxuICBwYWRkaW5nLWJvdHRvbTogMS43ZW07XHJcbiAgcGFkZGluZy1sZWZ0OiAxLjdlbTtcclxuICBwYWRkaW5nLXJpZ2h0OiAxLjdlbTtcclxuICBwYWRkaW5nLXRvcDogMS45ZW07XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAzLjc1ZW07XHJcbiAgfVxyXG4gIC5oZWFkaW5nIHtcclxuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKGgtcyk7XHJcbiAgICBjb2xvcjogY29sb3IoZ3JheSwgeC1kYXJrKTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAuNmVtO1xyXG4gIH1cclxuICAubWVzc2FnZSB7XHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwKTtcclxuICAgIGxpbmUtaGVpZ2h0OiBsaW5lLWhlaWdodChwKTtcclxuICAgIHBhZGRpbmctYm90dG9tOiAxLjhlbTtcclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gcGF0Y2ggY29yZSBjYXJ0IHN1bW1hcnkgc3R5bGVzXHJcbi8vICogdGhpcyB0ZW1wb3JhcmlseSBicmluZ3MgdGhlIGxhdGVzdCBjYXJ0IHN1bW1hcnkgc3R5bGVzIGluIHcvb3V0IGhhdmluZyB0byB1cGRhdGUgY29yZVxyXG4vL1xyXG5cclxuLmNhcnQtc3VtbWFyeSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUpO1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoemVybywgdGFibGV0KSB7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICB6LWluZGV4OiB6LWluZGV4KGNhcnQtc3VtbWFyeSk7XHJcbiAgICAuY2hhcmdlcyxcclxuICAgIC5jcmVkaXQsXHJcbiAgICAuZGlzY291bnQsXHJcbiAgICAucHJvZHVjdHMtZW1wdHktY2FydCxcclxuICAgIC5wcm9kdWN0cy10YWJsZSxcclxuICAgIC5wcm9tby1kaXNjbGFpbWVyIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICAgICYuZW1wdHksXHJcbiAgICAmLm9wZW4ge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgICAgIC5wcm9kdWN0cy1jb250YWluZXIge1xyXG4gICAgICAgIGZsZXgtZ3JvdzogMTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5lbXB0eSB7XHJcbiAgICAgIC5oZWFkZXIge1xyXG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcclxuICAgICAgfVxyXG4gICAgICAucHJvZHVjdHMtY29udGFpbmVyIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgIH1cclxuICAgICAgLnByb2R1Y3RzLWVtcHR5LWNhcnQge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLm9wZW4ge1xyXG4gICAgICAuYWhlbSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgfVxyXG4gICAgICAuY2hldnJvbi10aWdodCB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgfVxyXG4gICAgICAuY2hhcmdlcyB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuICAgICAgLmNyZWRpdCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgfVxyXG4gICAgICAuZGlzY291bnQge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIH1cclxuICAgICAgLnByb2R1Y3RzLXRhYmxlIHtcclxuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgICAgfVxyXG4gICAgICAucHJvbW8tZGlzY2xhaW1lciB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5jYXJ0LXN1bW1hcnkuZW1wdHkge1xyXG4gICYsXHJcbiAgJi5vcGVuIHtcclxuICAgIC5jaGFyZ2VzIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5jYXJ0LXN1bW1hcnkgLmFoZW0ge1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoemVybywgdGFibGV0KSB7XHJcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgY29sb3IoZ3JheSwgeHgtbGlnaHQpO1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XHJcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4uY2FydC1zdW1tYXJ5IC5jaGFyZ2VzIHtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KHplcm8sIHRhYmxldCkge1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGNvbG9yKGdyYXksIHh4LWxpZ2h0KTtcclxuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG4gICAgcGFkZGluZy10b3A6IDEwcHg7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgbGVmdDogNHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgcmlnaHQ6IDRweDtcclxuICB9XHJcbiAgJi5wZW5kaW5nIHtcclxuICAgIGFuaW1hdGlvbjogdXBkYXRpbmcgMnMgZWFzZS1vdXQgaW5maW5pdGU7XHJcbiAgfVxyXG4gICYuZ3JhbmQtdG90YWwtb25seSB7XHJcbiAgICAuZ3JhbmQtdG90YWwge1xyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xyXG4gICAgICAgIGJvcmRlci10b3A6IDA7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLnRheC1pcy1pbmNsdWRlZCB7XHJcbiAgICAubGluZS1pdGVtIHtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcclxuICAgICAgICAmOm50aC1jaGlsZCgxKSB7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDogIDE2LjY2JTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpudGgtY2hpbGQoMikge1xyXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNi42NiU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5rZXkge1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh6ZXJvLCB0YWJsZXQpIHtcclxuICAgICAgY29sb3I6IGNvbG9yKGdyYXksIGxpZ2h0KTtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcclxuICAgICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUocC14eHMpO1xyXG4gICAgICBjb2xvcjogY29sb3IoZ3JheSk7XHJcbiAgICAgIGxldHRlci1zcGFjaW5nOiAuMDhlbTtcclxuICAgICAgbWFyZ2luLXRvcDogNnB4O1xyXG4gICAgICBvcmRlcjogMjtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIH1cclxuICB9XHJcbiAgLmdyYW5kLXRvdGFsLFxyXG4gIC5saW5lLWl0ZW0ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoemVybywgdGFibGV0KSB7XHJcbiAgICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKHApO1xyXG4gICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIH1cclxuICB9XHJcbiAgLmdyYW5kLXRvdGFsIHtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoemVybywgdGFibGV0KSB7XHJcbiAgICAgIC5rZXksXHJcbiAgICAgIC52YWx1ZSB7XHJcbiAgICAgICAgY29sb3I6IGNvbG9yKGJsYWNrLCBuZWFyKTtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xyXG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgY29sb3IoZ3JheSwgeHgtbGlnaHQpO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgcGFkZGluZzogMTVweDtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgLmtleSxcclxuICAgICAgLnZhbHVlIHtcclxuICAgICAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwLXhsKTtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC4xZW07XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAuMWVtO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5saW5lLWl0ZW0ge1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcclxuICAgICAgcGFkZGluZzogMTBweDtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICB3aWR0aDogMzMuMzMlO1xyXG4gICAgfVxyXG4gIH1cclxuICAudmFsdWUge1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh6ZXJvLCB0YWJsZXQpIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGZsZXg6IDE7XHJcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcclxuICAgICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUocCk7XHJcbiAgICAgIGNvbG9yOiBjb2xvcihibGFjaywgbmVhcik7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgIG9yZGVyOiAxO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgfVxyXG4gICAgLmJhZGdlIHtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiBsaW5lLWhlaWdodChwLXRpZ2h0KSAvIDQ7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTJweCwgMCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uY2FydC1zdW1tYXJ5IC5jaGV2cm9uLXRpZ2h0IHtcclxuICBmaWxsOiBjb2xvcihibHVlKTtcclxuICBoZWlnaHQ6IDhweDtcclxuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzIGVhc2Utb3V0O1xyXG4gIHdpZHRoOiA4cHg7XHJcbn1cclxuXHJcbi5jYXJ0LXN1bW1hcnkgLmRpc2NvdW50IHtcclxuICBwYWRkaW5nOiAyMHB4IDIwcHggMDtcclxuICAubGluZS1pdGVtIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50KHplcm8sIHRhYmxldCkge1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGNvbG9yKGdyYXksIHh4LWxpZ2h0KTtcclxuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGNvbG9yKGdyYXksIHh4LWxpZ2h0KTtcclxuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcclxuICB9XHJcbiAgZGwge1xyXG4gICAgZGlzcGxheTogZ3JpZDtcclxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBhdXRvO1xyXG4gIH1cclxuICBkZCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgfVxyXG4gIC5rZXksXHJcbiAgLnZhbHVlIHtcclxuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKHApO1xyXG4gICAgY29sb3I6IGNvbG9yKGdyYXksIGJhc2UpO1xyXG4gIH1cclxuICAudG90YWwge1xyXG4gICAgY29sb3I6IGNvbG9yKGJsYWNrLCBuZWFyKTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcblxyXG4gIH1cclxufVxyXG5cclxuLmNhcnQtc3VtbWFyeSAuaGVhZGVyIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSk7XHJcbiAgYm9yZGVyOiA0cHggc29saWQgY29sb3IoYmx1ZSk7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgcGFkZGluZy1yaWdodDogMjBweDtcclxuICBwYWRkaW5nLXRvcDogMTBweDtcclxuICAmOjpiZWZvcmUge1xyXG4gICAgYm94LXNoYWRvdzogMCAtMTBweCAxNXB4IHJnYmEoMCwgMCwgMCwgLjM1KTtcclxuICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICBsZWZ0OiA1JTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMTJweDtcclxuICAgIHdpZHRoOiA5MCU7XHJcbiAgICB6LWluZGV4OiAtMTtcclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG4gIC5saW5lLTEge1xyXG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUocCk7XHJcbiAgICBjb2xvcjogY29sb3IoYmxhY2spO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIGxldHRlci1zcGFjaW5nOiAuMWVtO1xyXG4gICAgbGluZS1oZWlnaHQ6IGxpbmUtaGVpZ2h0KHApO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICYuYW1vdW50IHtcclxuICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5pdGVtcyB7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xyXG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZS1sLCB0YWJsZXQpIHtcclxuICAgICAgcGFkZGluZy1yaWdodDogMzBweDtcclxuICAgIH1cclxuICB9XHJcbiAgLmxpbmUtMiB7XHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwLXh4cyk7XHJcbiAgICBjb2xvcjogY29sb3IoYmxhY2ssIG5lYXIpO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IC4xZW07XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIH1cclxuICAubm90ZS1zeW1ib2wsXHJcbiAgLnRvdGFsLWlzLXBlbmRpbmctc3ltYm9sIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAtLjM1ZW07XHJcbiAgfVxyXG4gIC50b3RhbC1jb250YWluZXIge1xyXG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgfVxyXG4gIC55b3VyLW9yZGVyIHtcclxuICAgIGZsZXg6IDE7XHJcbiAgfVxyXG59XHJcblxyXG4uY2FydC1zdW1tYXJ5IC5wcmUtY2FsY3VsYXRlLWlzLXBlbmRpbmcge1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUsIG5lYXIpO1xyXG4gIGJvcmRlci1yYWRpdXM6IGJvcmRlci1yYWRpdXMocyk7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gIGxpbmUtaGVpZ2h0OiBsaW5lLWhlaWdodChwLXRpZ2h0KTtcclxuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gIG1hcmdpbi1sZWZ0OiAyMHB4O1xyXG4gIG1hcmdpbi1yaWdodDogMjBweDtcclxuICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gIHBhZGRpbmc6IDIwcHg7XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gIH1cclxuICAubm90ZSB7XHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwLXhzKTtcclxuICAgIGNvbG9yOiBjb2xvcihncmF5KTtcclxuICAgIG1hcmdpbi10b3A6IGxpbmUtaGVpZ2h0KHAtdGlnaHQpO1xyXG4gICAgcGFkZGluZy1yaWdodDogMDtcclxuICB9XHJcbn1cclxuXHJcbi5jYXJ0LXN1bW1hcnkgLnByb2R1Y3RzLWNvbnRhaW5lciB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHotaW5kZXg6IDE7XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgIGJvcmRlcjogNHB4IHNvbGlkIGNvbG9yKGJsdWUpO1xyXG4gICAgICBib3R0b206IDA7XHJcbiAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICByaWdodDogMDtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICB6LWluZGV4OiAzO1xyXG4gICAgfVxyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYm90dG9tOiA4cHg7XHJcbiAgICAgIGJveC1zaGFkb3c6IDAgMTBweCAxNXB4IHJnYmEoMCwgMCwgMCwgLjM1KTtcclxuICAgICAgY29udGVudDogJyc7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgIGxlZnQ6IDUlO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHdpZHRoOiA5MCU7XHJcbiAgICAgIHotaW5kZXg6IDI7XHJcbiAgICB9XHJcbiAgICAucHJvZHVjdHMtZW1wdHktY2FydCxcclxuICAgIC5wcm9kdWN0cy10YWJsZSB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgei1pbmRleDogMztcclxuICAgICAgJjpub3QoLnJlcXVpcmUtc3NvKSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0LCBkZXNrdG9wKSB7XHJcbiAgICAucHJvZHVjdC1pbWFnZS1jb250YWluZXIge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmNhcnQtc3VtbWFyeSAucHJvbW8tZGlzY2xhaW1lciB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUocC14cyk7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUsIG5lYXIpO1xyXG4gIGJvcmRlci1yYWRpdXM6IGJvcmRlci1yYWRpdXMocyk7XHJcbiAgbGluZS1oZWlnaHQ6IGxpbmUtaGVpZ2h0KHAtdGlnaHQpO1xyXG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgbWFyZ2luLWxlZnQ6IDIwcHg7XHJcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xyXG4gIHBhZGRpbmc6IDIwcHg7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XHJcbiAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgIG1hcmdpbi1yaWdodDogMDtcclxuICB9XHJcbn1cclxuXHJcbi5jYXJ0LXN1bW1hcnkgLnN0aWNreSB7XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBjb2xvcihncmF5LCB4eC1saWdodCk7XHJcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcclxuICAgICYuc3R1Y2sge1xyXG4gICAgICBib3JkZXItd2lkdGg6IDA7XHJcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmNhcnQtc3VtbWFyeSAubm90ZSxcclxuLmNhcnQtc3VtbWFyeSAudGF4LWlzLWluY2x1ZGVkLW5vdGUsXHJcbi5jYXJ0LXN1bW1hcnkgLnRvdGFsLWlzLXBlbmRpbmctbm90ZSB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUocC1zKTtcclxuICBjb2xvcjogY29sb3IoZ3JheSwgbGlnaHQpO1xyXG4gIGZsZXg6IDEgMCBhdXRvO1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoemVybywgdGFibGV0KSB7XHJcbiAgICBsaW5lLWhlaWdodDogbGluZS1oZWlnaHQocCk7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xyXG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XHJcbiAgICBsaW5lLWhlaWdodDogbGluZS1oZWlnaHQocC10aWdodCk7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1JSk7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcbn1cclxuXHJcbi5jYXJ0LXN1bW1hcnkgLnRvZ2dsZSB7XHJcbiAgY29sb3I6IGNvbG9yKGJsdWUpO1xyXG59XHJcblxyXG4uY2FydC1zdW1tYXJ5IC50b3RhbC1pcy1wZW5kaW5nLXN5bWJvbCB7XHJcbiAgY29sb3I6IGNvbG9yKGdyYXksIGxpZ2h0KTtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xyXG4gICAgbWFyZ2luLWxlZnQ6IC0uMWVtO1xyXG4gIH1cclxufVxyXG5cclxuLmNhcnQtc3VtbWFyeS1jb250cm9scy0xLWNvbCB7XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh6ZXJvLCB0YWJsZXQpIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbiAgLmFoZW0ge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGNvbG9yKGdyYXksIHh4LWxpZ2h0KTtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBjb2xvcihncmF5LCB4eC1saWdodCk7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcclxuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xyXG4gIH1cclxufVxyXG5cclxuLmNhcnQtc3VtbWFyeS1jb250cm9scy0yLWNvbCB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIGNvcmUgKG9wdGlvbmFsKSBjb250YWN0IG1vZGFsXHJcbi8vXHJcblxyXG4uY29udGFjdC1tb2RhbCB7XHJcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xyXG4gIGJvdHRvbTogMDtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgbGVmdDogMDtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgdG9wOiAwO1xyXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICB6LWluZGV4OiB6LWluZGV4KG1vZGFsKTtcclxuICAmLnNob3cge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICAgIHRyYW5zaXRpb246IHZpc2liaWxpdHkgMHMsIG9wYWNpdHkgLjJzIGVhc2Utb3V0O1xyXG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgIC5jb250YWN0LXRpbGUtbGlzdCAuY29udGFjdC10aWxlIHtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmNvbnRhY3QtbW9kYWwgLmJnIHtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgbGVmdDogMDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAwO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uY29udGFjdC1tb2RhbCAuY2xvc2Uge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICByaWdodDogMDtcclxuICB0b3A6IDA7XHJcbiAgei1pbmRleDogMTtcclxufVxyXG5cclxuLmNvbnRhY3QtbW9kYWwgLmNvbnRlbnQge1xyXG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcclxuICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLmNvbnRhY3QtbW9kYWwgLmNvbnRhY3QtdGlsZS1saXN0IHtcclxuICAkZ3V0dGVyLXdpZHRoOiAxNnB4O1xyXG4gICR0aWxlLXdpZHRoOiAyODhweDtcclxuICAkY29sLTItYXQ6ICgkdGlsZS13aWR0aCAqIDIpICsgKCRndXR0ZXItd2lkdGggKiAyKTtcclxuICAkY29sLTMtYXQ6ICgkdGlsZS13aWR0aCAqIDMpICsgKCRndXR0ZXItd2lkdGggKiAzKTtcclxuICAkY29sLTQtYXQ6ICgkdGlsZS13aWR0aCAqIDQpICsgKCRndXR0ZXItd2lkdGggKiA0KTtcclxuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gIGZsZXgtd3JhcDogd3JhcDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICBtYXJnaW4tbGVmdDogJGd1dHRlci13aWR0aCAqIC0xO1xyXG4gIG1hcmdpbi1yaWdodDogJGd1dHRlci13aWR0aCAqIC0xO1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGNvbC0yLWF0LCBudWxsLCBmYWxzZSkge1xyXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgbWF4LXdpZHRoOiAkY29sLTItYXQ7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGNvbC0zLWF0LCBudWxsLCBmYWxzZSkge1xyXG4gICAgbWF4LXdpZHRoOiAkY29sLTMtYXQ7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGNvbC00LWF0LCBudWxsLCBmYWxzZSkge1xyXG4gICAgbWF4LXdpZHRoOiAkY29sLTQtYXQ7XHJcbiAgfVxyXG4gIC5jb250YWN0LXRpbGUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogYm9yZGVyLXJhZGl1cyhtKTtcclxuICAgIGJveC1zaGFkb3c6IGJveC1zaGFkb3ctc2l6ZShzKSBjb2xvcihzaGFkb3csIGRhcmspO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogJGd1dHRlci13aWR0aDtcclxuICAgIG1pbi1oZWlnaHQ6ICR0aWxlLXdpZHRoO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMCUpO1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgZWFzZS1vdXQsIHRyYW5zZm9ybSAuMnMgZWFzZS1vdXQ7XHJcbiAgICB3aWR0aDogJHRpbGUtd2lkdGg7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRjb2wtMi1hdCwgbnVsbCwgZmFsc2UpIHtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAkZ3V0dGVyLXdpZHRoO1xyXG4gICAgfVxyXG4gICAgJjpudGgtY2hpbGQoMikge1xyXG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAuMDVzO1xyXG4gICAgfVxyXG4gICAgJjpudGgtY2hpbGQoMykge1xyXG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAuMXM7XHJcbiAgICB9XHJcbiAgICAmOm50aC1jaGlsZCg0KSB7XHJcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IC4ycztcclxuICAgIH1cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAuY29udGFjdC1pY29uIHtcclxuICAgICAgICBmaWxsOiBjb2xvcihtaW50eSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5jb250YWN0LW1vZGFsIC5oZWFkaW5nLFxyXG4uY29udGFjdC1tb2RhbCAuc3ViLWhlYWRpbmcge1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKHApO1xyXG4gIGxpbmUtaGVpZ2h0OiBsaW5lLWhlaWdodChwKTtcclxuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzIGVhc2Utb3V0O1xyXG59XHJcblxyXG4uY29udGFjdC1tb2RhbCAuaGVhZGluZyB7XHJcbiAgY29sb3I6IGNvbG9yKGdyYXksIHgtZGFyayk7XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxufVxyXG5cclxuLmNvbnRhY3QtbW9kYWwgLmhlYWRpbmctcGFnZSB7XHJcbiAgbWFyZ2luLXRvcDogMmVtO1xyXG59XHJcblxyXG4uY29udGFjdC1tb2RhbCAuaW1nIHtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gIHBhZGRpbmctYm90dG9tOiA1cHg7XHJcbiAgd2lkdGg6IDE1MHB4O1xyXG4gIC5jb250YWN0LWljb24ge1xyXG4gICAgZmlsbDogY29sb3IobWlkbmlnaHQpO1xyXG4gICAgdHJhbnNpdGlvbjogZmlsbCAuMnMgZWFzZS1vdXQ7XHJcbiAgfVxyXG59XHJcblxyXG4uY29udGFjdC1tb2RhbCAuaW5mbyB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgcGFkZGluZy1ib3R0b206IDM1cHg7XHJcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcbiAgcGFkZGluZy10b3A6IDQwcHg7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB6LWluZGV4OiA0O1xyXG59XHJcblxyXG4uY29udGFjdC1tb2RhbCAuc3ViLWhlYWRpbmcge1xyXG4gIGNvbG9yOiBjb2xvcihncmF5LCBkYXJrKTtcclxufVxyXG4iLCIvL1xyXG4vLyBjb3JlIChvcHRpb25hbCkgZXJyb3IgcGFnZVxyXG4vLyAqIGxldmVyYWdlcyBib2R5IGAuaW9zYCBhbmQgYC5hbmRyb2lkYCBjbGFzc2VzIGFkZGVkIGJ5IGBjb3JlLWJyb3dzZXIuanNgXHJcbi8vXHJcblxyXG4uZXJyb3ItcGFnZSB7XHJcbiAgYm90dG9tOiAwO1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgbGVmdDogMDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgdG9wOiAwO1xyXG59XHJcblxyXG4uZXJyb3ItcGFnZSAuYm9keSB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUocC14eHMpO1xyXG4gIGNvbG9yOiBjb2xvcihncmF5LCBkYXJrKTtcclxuICBsaW5lLWhlaWdodDogbGluZS1oZWlnaHQocCk7XHJcbiAgbWF4LXdpZHRoOiAzMmVtO1xyXG59XHJcblxyXG4uZXJyb3ItcGFnZSAuY29sdW1uIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgJi5jb3B5LWNvbnRhaW5lciB7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xyXG4gICAgfVxyXG4gIH1cclxuICAmLmltZy1jb250YWluZXIge1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh6ZXJvLCB0YWJsZXQpIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICAgIC5pbWcge1xyXG4gICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgIG1heC13aWR0aDogMzUwcHg7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmVycm9yLXBhZ2UgLmVycm9yLWZvb3RlciB7XHJcbiAgZm9udC1zaXplOiAxMnB4O1xyXG4gIHBhZGRpbmctYm90dG9tOiA0MHB4O1xyXG4gIHBhZGRpbmctdG9wOiA0MHB4O1xyXG59XHJcblxyXG4uZXJyb3ItcGFnZSAuaGVhZGVyIHtcclxuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gIG1hcmdpbi10b3A6IDQwcHg7XHJcbn1cclxuXHJcbi5lcnJvci1wYWdlIC5oZWFkaW5nIHtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShoKTtcclxuICBjb2xvcjogY29sb3IoYmx1ZSk7XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICBsaW5lLWhlaWdodDogbGluZS1oZWlnaHQoaCk7XHJcbiAgbWFyZ2luLWJvdHRvbTogLjVlbTtcclxuICBtYXgtd2lkdGg6IDEyZW07XHJcbn1cclxuXHJcbi5lcnJvci1wYWdlIC5sb2dvIHtcclxuICBoZWlnaHQ6IDMzcHg7XHJcbiAgd2lkdGg6IDE3NXB4O1xyXG59XHJcblxyXG4uZXJyb3ItcGFnZSAubWFpbiB7XHJcbiAgZmxleDogMTtcclxuICAuY29udGVudC13cmFwcGVyIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxufVxyXG5cclxuLmVycm9yLXBhZ2UgLnJvdyB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gMjA1cHgpO1xyXG4gIC5hbmRyb2lkICYsXHJcbiAgLmlvcyAmIHtcclxuICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSAyNzVweCk7XHJcbiAgfVxyXG59XHJcblxyXG4uZXJyb3ItcGFnZSAuc3ViLWhlYWRpbmcge1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKGgtcyk7XHJcbiAgbGluZS1oZWlnaHQ6IGxpbmUtaGVpZ2h0KGgpO1xyXG4gIG1hcmdpbi1ib3R0b206IDEuMmVtO1xyXG4gIG1heC13aWR0aDogMThlbTtcclxufVxyXG4iLCIvL1xyXG4vLyBjb3JlIChvcHRpb25hbCkgZm9vdGVyXHJcbi8vXHJcblxyXG4uZm9vdGVyIHtcclxuICBAaW5jbHVkZSBtYXRjaC1ndXR0ZXItc2l6ZShwYWRkaW5nLWJvdHRvbSwgMik7XHJcbiAgQGluY2x1ZGUgbWF0Y2gtZ3V0dGVyLXNpemUocGFkZGluZy10b3ApO1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKHAteHhzKTtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBsaW5lLWhlaWdodDogbGluZS1oZWlnaHQocCk7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICYuZml4ZWQge1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG59XHJcblxyXG4uZm9vdGVyIC5jb3B5cmlnaHQge1xyXG4gIEBpbmNsdWRlIG1hdGNoLWd1dHRlci1zaXplKHBhZGRpbmctdG9wLCAuNSk7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5mb290ZXIgLmRuYS1jaGFpbiB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLmZvb3RlciAuZG5hLWNoYWluLWxvZ28tbWFyayB7XHJcbiAgQGluY2x1ZGUgYmFja2dyb3VuZC1pbWFnZS1tYXliZS13ZWJwKCcuLi9pbWcvY29yZS9kbmEtY2hhaW4tbG9nby1tYXJrLnBuZycpO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHdoaXRlKTtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDYwcHg7XHJcbiAgaGVpZ2h0OiA2MHB4O1xyXG4gIG1pbi13aWR0aDogMTAwdnc7XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUtcykge1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDYwcHg7XHJcbiAgICBtaW4td2lkdGg6IDI4NHB4O1xyXG4gIH1cclxufVxyXG5cclxuLmZvb3RlciAuZG5hLWNoYWluLWxlZnQsXHJcbi5mb290ZXIgLmRuYS1jaGFpbi1yaWdodCB7XHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xyXG4gIGJhY2tncm91bmQtc2l6ZTogYXV0byA2MHB4O1xyXG4gIGhlaWdodDogNjBweDtcclxuICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLmZvb3RlciAuZG5hLWNoYWluLWxlZnQge1xyXG4gIEBpbmNsdWRlIGJhY2tncm91bmQtaW1hZ2UtbWF5YmUtd2VicCgnLi4vaW1nL2NvcmUvZG5hLWNoYWluLWxlZnQucG5nJyk7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHJpZ2h0O1xyXG59XHJcblxyXG4uZm9vdGVyIC5kbmEtY2hhaW4tcmlnaHQge1xyXG4gIEBpbmNsdWRlIGJhY2tncm91bmQtaW1hZ2UtbWF5YmUtd2VicCgnLi4vaW1nL2NvcmUvZG5hLWNoYWluLXJpZ2h0LnBuZycpO1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBsZWZ0O1xyXG59XHJcblxyXG4uZm9vdGVyIC5saW5rLWxpc3Qge1xyXG4gID4gLmxpbmstaXRlbSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICBtYXJnaW4tbGVmdDogLjI1ZW07XHJcbiAgICBtYXJnaW4tcmlnaHQ6IC4yNWVtO1xyXG4gIH1cclxuICA+IC5saW5rLWl0ZW0gPiBhIHtcclxuICAgIGNvbG9yOiBjb2xvcihncmF5KTtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIHRyYW5zaXRpb246IGNvbG9yIC4ycyBlYXNlLW91dDtcclxuICAgICY6YWN0aXZlLFxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGNvbG9yOiBjb2xvcihibHVlLCBkYXJrKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gY29yZSAob3B0aW9uYWwpIGZvcm0gY2hlY2tib3ggYW5kIHJhZGlvc1xyXG4vL1xyXG5cclxuLmNoZWNrYm94LWFuZC1sYWJlbCxcclxuLnJhZGlvLWFuZC1sYWJlbCB7XHJcbiAgJHNpemU6IDE2O1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIC5ibG9jay1sYWJlbCArICYsXHJcbiAgLmNoZWNrYm94LWFuZC1sYWJlbCArICYsXHJcbiAgLmZvcm0tcm93ICsgJixcclxuICAucmFkaW8tYW5kLWxhYmVsICsgJiB7XHJcbiAgICBtYXJnaW4tdG9wOiAxZW07XHJcbiAgfVxyXG4gIC5jdXN0b20tY2hlY2tib3gsXHJcbiAgLmN1c3RvbS1yYWRpbyB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDFweCwgMCk7XHJcbiAgICAmLmhhcy1lcnJvciB7XHJcbiAgICAgIC5kZWNveSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoZXJyb3IsIGxpZ2h0KTtcclxuICAgICAgICBib3JkZXItY29sb3I6IGNvbG9yKGVycm9yKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAuZGVjb3kge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUsIG5lYXIpO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgY29sb3IoZ3JheSwgeC1saWdodCk7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBoZWlnaHQ6ICRzaXplICsgcHg7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgd2lkdGg6ICRzaXplICsgcHg7XHJcbiAgfVxyXG4gIC5sYWJlbCB7XHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwLXMpO1xyXG4gICAgY29sb3I6IGNvbG9yKGdyYXkpO1xyXG4gICAgbGluZS1oZWlnaHQ6IGxpbmUtaGVpZ2h0KHApO1xyXG4gICAgJi5sb2FkaW5nIHtcclxuICAgICAgYW5pbWF0aW9uOiB1cGRhdGluZyAycyBlYXNlLW91dCBpbmZpbml0ZTtcclxuICAgIH1cclxuICAgIC5saW5lLTEsXHJcbiAgICAubGluZS0yIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbiAgICAubGluZS0xIHtcclxuICAgICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUocCk7XHJcbiAgICAgIGNvbG9yOiBjb2xvcihibGFjaywgbmVhcik7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgIGxldHRlci1zcGFjaW5nOiAuMDdlbTtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIH1cclxuICAgIC5saW5lLTEgKyAubGluZS0yIHtcclxuICAgICAgbWFyZ2luLXRvcDogLjI1ZW07XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uaW5wdXQtY2hlY2tib3gge1xyXG4gIEBpbmNsdWRlIG9mZnNjcmVlbjtcclxuICAmICsgLmRlY295IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIC5jaGVjayB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBmaWxsOiBjb2xvcihibHVlLCBkYXJrKTtcclxuICAgICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgICBsZWZ0OiAzcHg7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzIGVhc2luZyhvdXQtYmFjayk7XHJcbiAgICAgIHdpZHRoOiAxNXB4O1xyXG4gICAgICB6LWluZGV4OiAyO1xyXG4gICAgfVxyXG4gIH1cclxuICAmOmNoZWNrZWQgKyAuZGVjb3kge1xyXG4gICAgLmNoZWNrIHtcclxuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgIH1cclxuICB9XHJcbiAgJjpmb2N1cyArIC5kZWNveSB7XHJcbiAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgb3V0bGluZTogMnB4IHNvbGlkIGNvbG9yKGJsdWUpO1xyXG4gIH1cclxufVxyXG5cclxuLmlucHV0LXJhZGlvIHtcclxuICBAaW5jbHVkZSBvZmZzY3JlZW47XHJcbiAgJHNpemU6IDE2O1xyXG4gICYgKyAuZGVjb3kge1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoYmx1ZSwgZGFyayk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgY29udGVudDogJyc7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBoZWlnaHQ6ICgkc2l6ZSAtIDgpICsgcHg7XHJcbiAgICAgIGxlZnQ6IDNweDtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDNweDtcclxuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycyBlYXNpbmcob3V0LWJhY2spO1xyXG4gICAgICB3aWR0aDogKCRzaXplIC0gOCkgKyBweDtcclxuICAgICAgei1pbmRleDogMjtcclxuICAgIH1cclxuICB9XHJcbiAgJjpjaGVja2VkICsgLmRlY295IHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gICY6Zm9jdXMgKyAuZGVjb3kge1xyXG4gICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgIG91dGxpbmU6IDJweCBzb2xpZCBjb2xvcihibHVlKTtcclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gY29yZSAob3B0aW9uYWwpIGZvcm0gY3JlZGl0IGNhcmRcclxuLy9cclxuXHJcbi5jdnYtZGVzY3JpcHRpb24ge1xyXG4gICRlYXNpbmc6IGVhc2luZyhvdXQtZXhwbyk7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUpO1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gODUlO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIGNvbG9yKGdyYXksIHgtbGlnaHQpO1xyXG4gIGJvdHRvbTogMDtcclxuICBoZWlnaHQ6IDEyNXB4O1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMTAlKTtcclxuICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDJweCk7XHJcbiAgei1pbmRleDogMTtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiA4NSUgYXV0bztcclxuICAgIGhlaWdodDogMjI1cHg7XHJcbiAgfVxyXG4gICY6OmFmdGVyIHtcclxuICAgIGJhY2tncm91bmQ6IGNvbG9yKHdoaXRlKTtcclxuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgY29sb3IoZ3JheSwgeC1saWdodCk7XHJcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgY29sb3IoZ3JheSwgeC1saWdodCk7XHJcbiAgICBjb250ZW50OiAnJztcclxuICAgIGhlaWdodDogMTBweDtcclxuICAgIGxlZnQ6IDEwJTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGVZKC05cHgpO1xyXG4gICAgd2lkdGg6IDEwcHg7XHJcbiAgfVxyXG4gICYuc2hvdyB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNXMgJGVhc2luZywgdHJhbnNmb3JtIC41cyAkZWFzaW5nO1xyXG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICB9XHJcbiAgJi5hbWV4IHtcclxuICAgICYuZW4ge1xyXG4gICAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWltYWdlLW1heWJlLXdlYnAoJy4uL2ltZy9jb3JlL2N2di1kZXNjcmlwdGlvbi00LWRpZ2l0LWVuLmpwZycpO1xyXG4gICAgfVxyXG4gICAgJi5lcyB7XHJcbiAgICAgIEBpbmNsdWRlIGJhY2tncm91bmQtaW1hZ2UtbWF5YmUtd2VicCgnLi4vaW1nL2NvcmUvY3Z2LWRlc2NyaXB0aW9uLTQtZGlnaXQtZXMuanBnJyk7XHJcbiAgICB9XHJcbiAgICAmLmZyIHtcclxuICAgICAgQGluY2x1ZGUgYmFja2dyb3VuZC1pbWFnZS1tYXliZS13ZWJwKCcuLi9pbWcvY29yZS9jdnYtZGVzY3JpcHRpb24tNC1kaWdpdC1mci5qcGcnKTtcclxuICAgIH1cclxuICAgICYubmwge1xyXG4gICAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWltYWdlLW1heWJlLXdlYnAoJy4uL2ltZy9jb3JlL2N2di1kZXNjcmlwdGlvbi00LWRpZ2l0LW5sLmpwZycpO1xyXG4gICAgfVxyXG4gICAgJi56aCB7XHJcbiAgICAgIEBpbmNsdWRlIGJhY2tncm91bmQtaW1hZ2UtbWF5YmUtd2VicCgnLi4vaW1nL2NvcmUvY3Z2LWRlc2NyaXB0aW9uLTQtZGlnaXQtemguanBnJyk7XHJcbiAgICB9XHJcbiAgICAudGV4dC0zLWRpZ2l0IHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICAgIC50ZXh0LTQtZGlnaXQge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuICB9XHJcbiAgJixcclxuICAmLmRpc2NvdmVyLFxyXG4gICYubWFzdGVyY2FyZCxcclxuICAmLnZpc2Ege1xyXG4gICAgJi5lbiB7XHJcbiAgICAgIEBpbmNsdWRlIGJhY2tncm91bmQtaW1hZ2UtbWF5YmUtd2VicCgnLi4vaW1nL2NvcmUvY3Z2LWRlc2NyaXB0aW9uLTMtZGlnaXQtZW4uanBnJyk7XHJcbiAgICB9XHJcbiAgICAmLmVzIHtcclxuICAgICAgQGluY2x1ZGUgYmFja2dyb3VuZC1pbWFnZS1tYXliZS13ZWJwKCcuLi9pbWcvY29yZS9jdnYtZGVzY3JpcHRpb24tMy1kaWdpdC1lcy5qcGcnKTtcclxuICAgIH1cclxuICAgICYuZnIge1xyXG4gICAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWltYWdlLW1heWJlLXdlYnAoJy4uL2ltZy9jb3JlL2N2di1kZXNjcmlwdGlvbi0zLWRpZ2l0LWZyLmpwZycpO1xyXG4gICAgfVxyXG4gICAgJi5ubCB7XHJcbiAgICAgIEBpbmNsdWRlIGJhY2tncm91bmQtaW1hZ2UtbWF5YmUtd2VicCgnLi4vaW1nL2NvcmUvY3Z2LWRlc2NyaXB0aW9uLTMtZGlnaXQtbmwuanBnJyk7XHJcbiAgICB9XHJcbiAgICAmLnpoIHtcclxuICAgICAgQGluY2x1ZGUgYmFja2dyb3VuZC1pbWFnZS1tYXliZS13ZWJwKCcuLi9pbWcvY29yZS9jdnYtZGVzY3JpcHRpb24tMy1kaWdpdC16aC5qcGcnKTtcclxuICAgIH1cclxuICB9XHJcbiAgLnRleHQtNC1kaWdpdCB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuLmN2di1oaW50IHtcclxuICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWltYWdlLW1heWJlLXdlYnAoJy4uL2ltZy9jb3JlL2N2di1oaW50LTMtZGlnaXQucG5nJyk7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxNnB4IGNlbnRlcjtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIGNvbG9yOiBjb2xvcihibHVlKTtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmb250LXNpemU6IDEwcHg7XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgbGVmdDogMDtcclxuICBsZXR0ZXItc3BhY2luZzogLjA3NWVtO1xyXG4gIHBhZGRpbmctbGVmdDogNzBweDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICB0b3A6IDA7XHJcbiAgdHJhbnNpdGlvbjogY29sb3IgLjJzIGVhc2Utb3V0O1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gICY6aG92ZXIsXHJcbiAgJjphY3RpdmUge1xyXG4gICAgY29sb3I6IGNvbG9yKGJsdWUsIGRhcmspO1xyXG4gIH1cclxuICAmLmFtZXgge1xyXG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZC1pbWFnZS1tYXliZS13ZWJwKCcuLi9pbWcvY29yZS9jdnYtaGludC00LWRpZ2l0LnBuZycpO1xyXG4gIH1cclxuICAmLmRpc2NvdmVyLFxyXG4gICYubWFzdGVyY2FyZCxcclxuICAmLnZpc2Ege1xyXG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZC1pbWFnZS1tYXliZS13ZWJwKCcuLi9pbWcvY29yZS9jdnYtaGludC0zLWRpZ2l0LnBuZycpO1xyXG4gIH1cclxuICBzcGFuIHtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICB9XHJcbn1cclxuXHJcbi5jcmVkaXQtY2FyZC1pY29uIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICY6OmFmdGVyIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICB0b3A6IDA7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygxMDAlICsgMTBweCkpO1xyXG4gICAgd2lkdGg6IDMwcHg7XHJcbiAgICAvLyByZW1vdmUgd2hlbiBncmlkIGlzIHN1cGVyIHRpZ2h0IG9uIHRhYmxldFxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQsIHRhYmxldC1sKSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYuYW1leCB7XHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgIEBpbmNsdWRlIGJhY2tncm91bmQtaW1hZ2UtbWF5YmUtd2VicCgnLi4vaW1nL2NvcmUvY2MtYW1leC5wbmcnKTtcclxuICAgIH1cclxuICB9XHJcbiAgJi5kaXNjb3ZlciB7XHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgIEBpbmNsdWRlIGJhY2tncm91bmQtaW1hZ2UtbWF5YmUtd2VicCgnLi4vaW1nL2NvcmUvY2MtZGlzY292ZXIucG5nJyk7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYubWFzdGVyY2FyZCB7XHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgIEBpbmNsdWRlIGJhY2tncm91bmQtaW1hZ2UtbWF5YmUtd2VicCgnLi4vaW1nL2NvcmUvY2MtbWFzdGVyY2FyZC5wbmcnKTtcclxuICAgIH1cclxuICB9XHJcbiAgJi52aXNhIHtcclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgQGluY2x1ZGUgYmFja2dyb3VuZC1pbWFnZS1tYXliZS13ZWJwKCcuLi9pbWcvY29yZS9jYy12aXNhLnBuZycpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmNyZWRpdC1jYXJkLXRodW1iIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXI7XHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMzBweDtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHJpZ2h0OiAxNnB4O1xyXG4gIHRvcDogMDtcclxuICB3aWR0aDogNTBweDtcclxuICAmLmFtZXgge1xyXG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZC1pbWFnZS1tYXliZS13ZWJwKCcuLi9pbWcvY29yZS9jYy1hbWV4LnBuZycpO1xyXG4gIH1cclxuICAmLmRpc2NvdmVyIHtcclxuICAgIEBpbmNsdWRlIGJhY2tncm91bmQtaW1hZ2UtbWF5YmUtd2VicCgnLi4vaW1nL2NvcmUvY2MtZGlzY292ZXIucG5nJyk7XHJcbiAgfVxyXG4gICYubWFzdGVyY2FyZCB7XHJcbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWltYWdlLW1heWJlLXdlYnAoJy4uL2ltZy9jb3JlL2NjLW1hc3RlcmNhcmQucG5nJyk7XHJcbiAgfVxyXG4gICYudmlzYSB7XHJcbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWltYWdlLW1heWJlLXdlYnAoJy4uL2ltZy9jb3JlL2NjLXZpc2EucG5nJyk7XHJcbiAgfVxyXG4gIC5mb3JtLWNvbHVtbiB7XHJcbiAgICAmLmhhcy1lcnJvciAmIHtcclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gY29yZSAob3B0aW9uYWwpIGZvcm0gbGF5b3V0XHJcbi8vXHJcblxyXG5pbnB1dCxcclxuc2VsZWN0LFxyXG50ZXh0YXJlYSB7XHJcbiAgJltkYXRhLWJlaGF2aW9yfj0nZGlzYWJsZS1mb2N1cyddIHtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuLmVycm9yLWxpc3Qge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbiAgJjpub3QoOmVtcHR5KTpub3QoLmhpZGUpIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBmb3JjZS1wc2V1ZG8tbmVzdGluZ1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoZXJyb3IpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogYm9yZGVyLXJhZGl1cyhtKTtcclxuICAgIGNvbG9yOiBjb2xvcih3aGl0ZSk7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbi1ib3R0b206IDFlbTtcclxuICAgIHBhZGRpbmc6IDE2cHg7XHJcbiAgICAmLnNob3cge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuICAgIGEge1xyXG4gICAgICBjb2xvcjogY29sb3Iod2hpdGUpO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgIH1cclxuICAgIC5lcnJvci1saXN0LWl0ZW0ge1xyXG4gICAgICBsaW5lLWhlaWdodDogbGluZS1oZWlnaHQocC10aWdodCk7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiAuNWVtO1xyXG4gICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uZm9ybS1tb2R1bGUgLnN1Y2Nlc3MtbGlzdCB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuICAmOm5vdCg6ZW1wdHkpOm5vdCguaGlkZSkgeyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIGZvcmNlLXBzZXVkby1uZXN0aW5nXHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihncmVlbik7XHJcbiAgICBib3JkZXItcmFkaXVzOiBib3JkZXItcmFkaXVzKG0pO1xyXG4gICAgY29sb3I6IGNvbG9yKHdoaXRlKTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xyXG4gICAgcGFkZGluZzogMTZweDtcclxuICAgICYuc2hvdyB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG4gICAgYSB7XHJcbiAgICAgIGNvbG9yOiBjb2xvcih3aGl0ZSk7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgfVxyXG4gICAgLnN1Y2Nlc3NzLWxpc3QtaXRlbSB7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBsaW5lLWhlaWdodChwLXRpZ2h0KTtcclxuICAgICAgcGFkZGluZy1ib3R0b206IC41ZW07XHJcbiAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5mb3JtLW1vZHVsZSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICY6bGFzdC1jaGlsZCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIH1cclxuICAmOm5vdCg6ZW1wdHkpIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xyXG4gICAgcGFkZGluZy10b3A6IDEwcHg7XHJcbiAgfVxyXG4gICYubG9hZGluZyB7XHJcbiAgICAmID4gW2RhdGEtYmVoYXZpb3I9J2xvYWRlciddIHtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gLjRzIGVhc2luZyhvdXQtcXVhZCk7XHJcbiAgICAgIC50ZXh0IHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYgPiAqIHtcclxuICAgICAgJjpub3QoW2RhdGEtYmVoYXZpb3I9J2xvYWRlciddKSB7XHJcbiAgICAgICAgb3BhY2l0eTogLjM1O1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJiA+IFtkYXRhLWJlaGF2aW9yPSdsb2FkZXInXSB7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDI1MCUpO1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgZWFzZS1vdXQsIHRyYW5zZm9ybSAuNHMgZWFzaW5nKGluLXF1YWQpO1xyXG4gICAgLnRleHQge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuICAmID4gKiB7XHJcbiAgICAmOm5vdChbZGF0YS1iZWhhdmlvcj0nbG9hZGVyJ10pIHtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgZWFzZS1vdXQgLjRzO1xyXG4gICAgfVxyXG4gIH1cclxuICBkZCB7XHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmZvcm0tbW9kdWxlLS1jb25kaXRpb25hbCB7XHJcbiAgb3BhY2l0eTogLjU7XHJcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgZWFzZS1vdXQ7XHJcbiAgLmVycm9yLWxpc3Qge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbiAgJi5jaGVja2VkIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAuZXJyb3ItbGlzdCB7XHJcbiAgICAgICY6bm90KDplbXB0eSkge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uZm9ybS1zZWN0aW9uIHtcclxuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICY6bGFzdC1jaGlsZCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIH1cclxufVxyXG5cclxuLmZvcm0tY29udGFpbmVyIHtcclxuICBAaW5jbHVkZSBtYXRjaC1ndXR0ZXItc2l6ZShtYXJnaW4tYm90dG9tLCAyKTtcclxuICAkaW5wdXQtcGFkOiAxNnB4OyAvLyBEZWZhdWx0IHBhZGRpbmcgZm9yIGlucHV0c1xyXG4gIC5ib3JkZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUpO1xyXG4gICAgYm9yZGVyOiAwIHNvbGlkIGNvbG9yKGdyYXksIHgtbGlnaHQpO1xyXG4gICAgLy8gdGhpcyBuZWVkcyB0byBiZSBhdCBsZWFzdCB6LWluZGV4OiAyOyB0byBrZWVwIHRoZSBmb3JtIGlucHV0IGhpbnRzIGFib3ZlIHRoZSBidXR0b25zXHJcbiAgICB6LWluZGV4OiAyO1xyXG4gICAgLy8gdGhpcyBpcyBuZWVkZWQgZm9yIHByb3BlciBzcGFjaW5nIHdoZW4gYSBjb2x1bW4gZG9lc24ndCBoYXZlIGEgYm9yZGVyXHJcbiAgICAmLS10cmFuc3BhcmVudCB7XHJcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICB9XHJcbiAgICAmLnRvcCB7XHJcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDtcclxuICAgIH1cclxuICAgICYucmlnaHQge1xyXG4gICAgICBib3JkZXItcmlnaHQtd2lkdGg6IDFweDtcclxuICAgIH1cclxuICAgICYuYm90dG9tIHtcclxuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4O1xyXG4gICAgfVxyXG4gICAgJi5sZWZ0IHtcclxuICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDtcclxuICAgIH1cclxuICB9XHJcbiAgLmNvcHkge1xyXG4gICAgY29sb3I6IGNvbG9yKGdyYXkpO1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IGxpbmUtaGVpZ2h0KHApO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgfVxyXG4gIC5kaXNjcmV0aW9uYXJ5IHtcclxuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKHAteHhzKTtcclxuICAgIGNvbG9yOiBjb2xvcihncmF5KTtcclxuICAgIGxpbmUtaGVpZ2h0OiBsaW5lLWhlaWdodChwKTtcclxuICAgIG1hcmdpbi10b3A6IDEuOWVtO1xyXG4gIH1cclxuICAuaGVscC1ibG9jayB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuICAuaW50cm8tcGFyYWdyYXBoIHtcclxuICAgIGNvbG9yOiBjb2xvcihncmF5LCBkYXJrKTtcclxuICAgIGZvbnQtc2l6ZTogMTNweDtcclxuICAgIGxpbmUtaGVpZ2h0OiBsaW5lLWhlaWdodChwKTtcclxuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgfVxyXG4gIC5jb25kaXRpb25hbCB7XHJcbiAgICAmLmhpZGUge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmZvcm0tcm93IHtcclxuICBkaXNwbGF5OiBncmlkO1xyXG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMCwgMWZyKSk7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICYuZm9jdXMge1xyXG4gICAgei1pbmRleDogMjtcclxuICB9XHJcbiAgJi5tYXJnaW4tdG9wIHtcclxuICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgfVxyXG4gICYucmVhZC1vbmx5LFxyXG4gICYucmVhZC1vbmx5IC5ib3JkZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUsIG5lYXIpO1xyXG4gICAgYm9yZGVyLWNvbG9yOiBjb2xvcih3aGl0ZSwgb2ZmKTtcclxuICB9XHJcbiAgLmZvcm0tY29sdW1uIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgJi0tZmxleCB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICoge1xyXG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgICB9XHJcbiAgICAgIC5mbGV4aWJsZSB7XHJcbiAgICAgICAgZmxleDogMSAxIGF1dG87XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYtLW92ZXJmbG93IHtcclxuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XHJcbiAgICB9XHJcbiAgICAmLmZvY3VzIHtcclxuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgYm94LXNoYWRvdzogMCAwIDAgMXB4IGNvbG9yKGJsdWUsIGRhcmspO1xyXG4gICAgICB6LWluZGV4OiAzO1xyXG4gICAgfVxyXG4gICAgJi5oYXMtZXJyb3Ige1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihlcnJvciwgbGlnaHQpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmxhYmVsLWZsb2F0IHtcclxuICAkaW5wdXQtcGFkOiAxNnB4OyAvLyBkZWZhdWx0IHBhZGRpbmcgZm9yIGlucHV0c1xyXG4gIGNvbG9yOiBjb2xvcihibHVlLCBkYXJrKTtcclxuICBmb250LXNpemU6IDExcHg7XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICBsZWZ0OiAkaW5wdXQtcGFkO1xyXG4gIGxldHRlci1zcGFjaW5nOiAuMDVlbTtcclxuICBvcGFjaXR5OiAwO1xyXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIHRvcDogMDtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMThweCk7XHJcbiAgei1pbmRleDogMTtcclxuICAmLmlzLXJlcXVpcmVkIHtcclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgY29udGVudDogJyAqJztcclxuICAgIH1cclxuICB9XHJcbiAgJi5pcy1yZXF1aXJlZCB+IGlucHV0IHtcclxuICAgICY6OnBsYWNlaG9sZGVyIHtcclxuICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6ICcgKic7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLmZvcm0tY29sdW1uLmhhcy12YWx1ZSAmIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTNweCk7XHJcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLW91dCwgdHJhbnNmb3JtIC4ycyBlYXNlLW91dDtcclxuICB9XHJcbn1cclxuXHJcbi5ibG9jay1sYWJlbCB7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgY29sb3IoZ3JheSwgeC1saWdodCk7XHJcbiAgbGluZS1oZWlnaHQ6IGxpbmUtaGVpZ2h0KHApO1xyXG4gIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgcGFkZGluZy1ib3R0b206IDE2cHg7XHJcbiAgcGFkZGluZy1sZWZ0OiAxNnB4O1xyXG4gIHBhZGRpbmctcmlnaHQ6IDE2cHg7XHJcbiAgcGFkZGluZy10b3A6IDE2cHg7XHJcbiAgLnJhZGlvLWFuZC1sYWJlbCArICYge1xyXG4gICAgbWFyZ2luLXRvcDogMTBweDtcclxuICB9XHJcbiAgLmxhYmVsIHtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuICAuY3VzdG9tLWNoZWNrYm94IHtcclxuICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4uc2hpcHBpbmctY29zdCB7XHJcbiAgZGlzcGxheTogaW5saW5lO1xyXG4gIGZsb2F0OiByaWdodDtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG4gIC5mcmVlLXNoaXBwaW5nIHtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIGNvcmUgKG9wdGlvbmFsKSBmb3JtIHNlbGVjdFxyXG4vL1xyXG5cclxuLmN1c3RvbS1zZWxlY3Qge1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBoZWlnaHQ6IDU4cHg7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gICYtLWZpbGxlZCB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCBjb2xvcih3aGl0ZSksIGNvbG9yKHdoaXRlLCBuZWFyKSk7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCBjb2xvcihncmF5LCB4LWxpZ2h0KTtcclxuICB9XHJcbiAgJjpob3ZlciB7XHJcbiAgICAuc2VsZWN0LWNoZXZyb24ge1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gIH1cclxuICAuY29sdW1uID4gJiB7XHJcbiAgICBoZWlnaHQ6IDYwcHg7XHJcbiAgfVxyXG4gICYuaGFzLWVycm9yIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGVycm9yLCBsaWdodCk7XHJcbiAgfVxyXG4gIHNlbGVjdCB7XHJcbiAgICAvLyBkaXNhYmxlIGFsbCB2ZW5kb3IgcHJlZml4IGVycm9ycywgd2Uga25vdyB3aGF0J3MgdXBcclxuICAgIC8vIHNhc3MtbGludDpkaXNhYmxlLWJsb2NrIG5vLXZlbmRvci1wcmVmaXhlc1xyXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBtZW51bGlzdC1idXR0b247XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICB6LWluZGV4OiAyO1xyXG4gICAgLmlvcyAmIHtcclxuICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgfVxyXG4gIH1cclxuICAuZGVjb3kge1xyXG4gICAgY29sb3I6IGNvbG9yKGdyYXksIGxpZ2h0KTtcclxuICAgIGhlaWdodDogNThweDtcclxuICAgIGxpbmUtaGVpZ2h0OiA1OHB4O1xyXG4gICAgcGFkZGluZzogMCA0MHB4IDAgMTZweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIC5mb3JtLWNvbHVtbi5oYXMtdmFsdWUgJiB7XHJcbiAgICAgIC50ZXh0IHtcclxuICAgICAgICBjb2xvcjogY29sb3IoYmxhY2ssIG5lYXIpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC50ZXh0IHtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMnMgZWFzZS1vdXQ7XHJcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5zZWxlY3QtY2hldnJvbiB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGhlaWdodDogN3B4O1xyXG4gICAgbWFyZ2luLXRvcDogLTMuNXB4O1xyXG4gICAgb3BhY2l0eTogLjU7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICByaWdodDogMWVtO1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNpbmcoaW4tb3V0LXF1YWQpO1xyXG4gICAgd2lkdGg6IDExcHg7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gIH1cclxufVxyXG5cclxuLmN1c3RvbS1zZWxlY3QtLXRpZ2h0IHtcclxuICBoZWlnaHQ6IDQwcHg7XHJcbiAgLmRlY295IHtcclxuICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICBwYWRkaW5nLXRvcDogMDtcclxuICB9XHJcbn1cclxuXHJcbi5zZWxlY3Qge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM3Nzc7XHJcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjYjNiM2IzO1xyXG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM3Nzc7XHJcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjY2M7XHJcbiAgY29sb3I6IGNvbG9yKGdyYXksIGxpZ2h0KTtcclxuICBmb250LWZhbWlseTogZm9udC1mYW1pbHkoc2Fucyk7XHJcbiAgZm9udC1zaXplOiAxcmVtO1xyXG4gIHBhZGRpbmc6IDFweCAzcHg7XHJcbn1cclxuIiwiLy9cclxuLy8gY29yZSAob3B0aW9uYWwpIGZvcm0gc3Bpbm5lclxyXG4vL1xyXG5cclxuLnNwaW5uZXIge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgaGVpZ2h0OiA0NHB4O1xyXG4gIHdpZHRoOiA4MHB4O1xyXG4gIGlucHV0LFxyXG4gIC5taW51cyxcclxuICAucGx1cyB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSwgbmVhcik7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCBjb2xvcihncmF5LCB4eC1saWdodCk7XHJcbiAgICBoZWlnaHQ6IDQ0cHg7XHJcbiAgICBsaW5lLWhlaWdodDogNDBweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB9XHJcbiAgaW5wdXQge1xyXG4gICAgZmxleDogMTtcclxuICAgIGZvbnQtZmFtaWx5OiBmb250LWZhbWlseShzYW5zKTtcclxuICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgbWluLXdpZHRoOiAzMHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2Utb3V0O1xyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgICYsXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHdoaXRlKTtcclxuICAgICAgICBib3JkZXItY29sb3I6IGNvbG9yKGJsdWUpO1xyXG4gICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICY6aG92ZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSwgbmVhcik7XHJcbiAgICB9XHJcbiAgICAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1hbGxcclxuICAgICZbdHlwZT0nbnVtYmVyJ10ge1xyXG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICAgIC8vIG1vei1hcHBlYXJhbmNlIGhhcyB0byBjb21lIGFmdGVyIHdlYmtpdC1hcHBlYXJhbmNlIGluIG9yZGVyIHRvIHRha2UgcHJpb3JpdHkgaW4gRmlyZWZveFxyXG4gICAgICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgJjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcclxuICAgICAgJjo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XHJcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy8gc2Fzcy1saW50OmVuYWJsZS1hbGxcclxuICB9XHJcbiAgLm1pbnVzLFxyXG4gIC5wbHVzIHtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGZsZXgtYmFzaXM6IDIycHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcclxuICAgICY6OmFmdGVyLFxyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoZ3JheSk7XHJcbiAgICAgIGJvdHRvbTogMDtcclxuICAgICAgY29udGVudDogJyc7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICBtYXJnaW46IGF1dG87XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgIHRvcDogMDtcclxuICAgIH1cclxuICAgICY6aG92ZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihncmF5LCB4LWxpZ2h0KTtcclxuICAgIH1cclxuICAgICYuZGlzYWJsZWQge1xyXG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xyXG4gICAgICBvcGFjaXR5OiAuNTtcclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUsIG5lYXIpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5taW51cyB7XHJcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICB3aWR0aDogNXB4O1xyXG4gICAgfVxyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbiAgLnBsdXMge1xyXG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICB3aWR0aDogN3B4O1xyXG4gICAgfVxyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgaGVpZ2h0OiA3cHg7XHJcbiAgICAgIHdpZHRoOiAxcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uc3Bpbm5lci0tYnJpZ2h0IHtcclxuICBpbnB1dCxcclxuICAubWludXMsXHJcbiAgLnBsdXMge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUpO1xyXG4gIH1cclxufVxyXG5cclxuLnNwaW5uZXItLWwge1xyXG4gIGhlaWdodDogNTBweDtcclxuICBtaW4td2lkdGg6IDEwcHg7XHJcbiAgd2lkdGg6IDEwMHB4O1xyXG4gIGlucHV0LFxyXG4gIC5taW51cyxcclxuICAucGx1cyB7XHJcbiAgICBjb2xvcjogY29sb3IoZ3JheSwgeC1kYXJrKTtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIGhlaWdodDogNTBweDtcclxuICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xyXG4gIH1cclxuICBpbnB1dCB7XHJcbiAgICBtaW4td2lkdGg6IDQwcHg7XHJcbiAgfVxyXG4gIC5taW51cyxcclxuICAucGx1cyB7XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUsIG5lYXIpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLnNwaW5uZXItLXMge1xyXG4gIGhlaWdodDogMzBweDtcclxuICBtaW4td2lkdGg6IDEwcHg7XHJcbiAgd2lkdGg6IDQuNWVtO1xyXG4gIGlucHV0LFxyXG4gIC5taW51cyxcclxuICAucGx1cyB7XHJcbiAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICBsaW5lLWhlaWdodDogMzBweDtcclxuICB9XHJcbiAgaW5wdXQge1xyXG4gICAgbWluLXdpZHRoOiAyNXB4O1xyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBjb3JlIChvcHRpb25hbCkgZm9ybSB0ZXh0XHJcbi8vXHJcbi8vIGRpc2FibGUgYWxsIHZlbmRvciBwcmVmaXggZXJyb3JzLCB3ZSBrbm93IHdoYXQncyB1cFxyXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZSBuby12ZW5kb3ItcHJlZml4ZXNcclxuXHJcbi5oaWRlLXdlYmtpdC1idXR0b25zIHtcclxuICAmOjotd2Via2l0LWF1dG8tZmlsbC1idXR0b24sXHJcbiAgJjo6LXdlYmtpdC1jb250YWN0cy1hdXRvLWZpbGwtYnV0dG9uIHtcclxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1pbXBvcnRhbnRcclxuICB9XHJcbn1cclxuXHJcbi5pbnB1dC10ZXh0IHtcclxuICAkaW5wdXQtcGFkOiAxNnB4OyAvLyBEZWZhdWx0IHBhZGRpbmcgZm9yIGlucHV0c1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlcjogMDtcclxuICBib3JkZXItcmFkaXVzOiAwO1xyXG4gIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgY29sb3I6IGNvbG9yKGdyYXksIHgtZGFyayk7XHJcbiAgZm9udC1mYW1pbHk6IGZvbnQtZmFtaWx5KHNhbnMpO1xyXG4gIGZvbnQtc2l6ZTogMTZweDtcclxuICBoZWlnaHQ6IDI4cHg7XHJcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gIHBhZGRpbmc6IDAgJGlucHV0LXBhZDtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMnMgZWFzZS1vdXQ7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgLy8gcmVtb3ZlcyB5ZWxsb3cgYmFja2dyb3VuZCBvbiBhdXRvZmlsbFxyXG4gICY6LXdlYmtpdC1hdXRvZmlsbCB7XHJcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAwIDEwMDBweCBjb2xvcih3aGl0ZSkgaW5zZXQ7XHJcbiAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLWltcG9ydGFudFxyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciA1MDAwcyBlYXNlLWluLW91dCAwcztcclxuICB9XHJcbiAgLmZvcm0tY29sdW1uLmhhcy12YWx1ZSAmIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7XHJcbiAgICAmOjotd2Via2l0LWNvbnRhY3RzLWF1dG8tZmlsbC1idXR0b24ge1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcclxuICAgIH1cclxuICAgICY6Oi13ZWJraXQtYXV0by1maWxsLWJ1dHRvbixcclxuICAgICY6Oi13ZWJraXQtY3JlZGVudGlhbHMtYXV0by1maWxsLWJ1dHRvbiB7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xyXG4gICAgfVxyXG4gIH1cclxuICAmOmZvY3VzIHtcclxuICAgIGNvbG9yOiBjb2xvcihibGFjaywgbmVhcik7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG4gIH1cclxuICAmOjpwbGFjZWhvbGRlciB7XHJcbiAgICBjb2xvcjogY29sb3IoZ3JheSwgbGlnaHQpO1xyXG4gIH1cclxuICAmOjotbW96LXBsYWNlaG9sZGVyIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG4gICY6Oi13ZWJraXQtYXV0b2ZpbGwge1xyXG4gICAgLy8gaGlkZSBhdXRvZmlsbCBiZyBjb2xvclxyXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMCAzMHB4IHdoaXRlIGluc2V0O1xyXG4gICAgLy8gYW5kIHJlcG9zaXRpb24gc28gaXQgZG9lc24ndCBmbG9hdCBvdXQgb2YgdGhlIGJveFxyXG4gICAgLy8gKG5vcm1hbCBzdHlsZSBoYXMgYSB0cmFuc3BhcmVudCBCRyBzbyB3ZSBkb250IG5lZWQgdG8gd29ycnkgYWJvdXQgaXQpXHJcbiAgICAvLyAoY2FuJ3QganVzdCB1c2Ugb3ZlcmZsb3cgb24gY29udGFpbmVyIG9yIHRvb2x0aXBzIHdvbid0IHNob3cpXHJcbiAgICBoZWlnaHQ6IDM5cHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB0b3A6IDlweDtcclxuICB9XHJcbiAgLy8gdGhpcyByZW1vdmVzIHRoZSBjbGVhciAneCcgZnJvbSBJRSB0ZXh0IGlucHV0c1xyXG4gICY6Oi1tcy1jbGVhciB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuICAmLS10aWdodCB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gIH1cclxuICAmLS10aWdodC1sZWZ0IHtcclxuICAgIHBhZGRpbmctbGVmdDogMDtcclxuICB9XHJcbiAgJi0tdGlnaHQtcmlnaHQge1xyXG4gICAgcGFkZGluZy1yaWdodDogMDtcclxuICB9XHJcbiAgJi5oaWRlIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4uaW5wdXQtdGV4dC1zdGF0aWMge1xyXG4gIGNvbG9yOiBjb2xvcihncmF5LCBsaWdodCk7XHJcbiAgZm9udC1zaXplOiAxNnB4O1xyXG4gIGhlaWdodDogMzhweDtcclxuICBsaW5lLWhlaWdodDogMzhweDtcclxuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAuZm9ybS1jb2x1bW4uaGFzLXZhbHVlICYge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcclxuICB9XHJcbiAgLmVkZ2UgW2RhdGEtYmVoYXZpb3J+PSdhdXRvLXNpemUnXSArICYsXHJcbiAgLmlvcyBbZGF0YS1iZWhhdmlvcn49J2F1dG8tc2l6ZSddICsgJiB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0ycHgsIDAsIDApO1xyXG4gIH1cclxuICAuZWRnZSAuZm9ybS1jb2x1bW4uaGFzLXZhbHVlIFtkYXRhLWJlaGF2aW9yfj0nYXV0by1zaXplJ10gKyAmLFxyXG4gIC5pb3MgLmZvcm0tY29sdW1uLmhhcy12YWx1ZSBbZGF0YS1iZWhhdmlvcn49J2F1dG8tc2l6ZSddICsgJiB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0ycHgsIDEwcHgsIDApO1xyXG4gIH1cclxuICAmLmhhcy12YWx1ZSB7XHJcbiAgICBjb2xvcjogY29sb3IoZ3JheSwgeC1kYXJrKTtcclxuICB9XHJcbn1cclxuXHJcbi5pbnB1dC10ZXh0LS10ZXh0YXJlYSB7XHJcbiAgaGVpZ2h0OiAxMTZweDtcclxuICBsaW5lLWhlaWdodDogbGluZS1oZWlnaHQocCk7XHJcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XHJcbiAgcGFkZGluZy1sZWZ0OiAxNnB4O1xyXG4gIHBhZGRpbmctcmlnaHQ6IDE2cHg7XHJcbiAgcGFkZGluZy10b3A6IDIwcHg7XHJcbiAgcmVzaXplOiBub25lO1xyXG59XHJcblxyXG4ucGFzc3dvcmQtdG9nZ2xlIHtcclxuICBhbGlnbi1zZWxmOiBjZW50ZXI7XHJcbiAgYmFja2dyb3VuZDogbm9uZTtcclxuICBib3JkZXI6IDA7XHJcbiAgY29sb3I6IGNvbG9yKGJsdWUsIGRhcmspO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBsaW5lLWhlaWdodDogMzJweDtcclxuICBtYXJnaW4tcmlnaHQ6IDE2cHg7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgJjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICB9XHJcbiAgJjphY3RpdmUge1xyXG4gICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgIHRvcDogNTAlO1xyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBjb3JlIChvcHRpb25hbCkgaGVhZGVyIGJhclxyXG4vL1xyXG5cclxuLmhlYWRlci1iYXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGJsYWNrLCBuZWFyKTtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGhlaWdodDogNDBweDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgbGV0dGVyLXNwYWNpbmc6IGxldHRlci1zcGFjaW5nKGV4cGFuZGVkKTtcclxuICBtYXgtaGVpZ2h0OiA0MHB4O1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIC5oZWFkZXItY29weSB7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgY29sb3I6IGNvbG9yKHdoaXRlKTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcclxuICAgIHBhZGRpbmctbGVmdDogMjBweDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIH1cclxufVxyXG5cclxuLmhlYWRlci1iYXIgLmF2YXRhciB7XHJcbiAgaGVpZ2h0OiA0MHB4O1xyXG4gIHdpZHRoOiA0MHB4O1xyXG59XHJcblxyXG4uaGVhZGVyLWNvbHVtbiB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUocC14eHMpO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIHotaW5kZXg6IDE7XHJcbiAgJltkYXRhLWJlaGF2aW9yXSxcclxuICAmW2hyZWZdIHtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2Utb3V0O1xyXG4gICAgJjpob3ZlcixcclxuICAgICY6YWN0aXZlIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IobWludHkpO1xyXG4gICAgfVxyXG4gIH1cclxuICAmLmhlYWRlci1tYWluIHtcclxuICAgIGZsZXg6IDE7XHJcbiAgfVxyXG59XHJcblxyXG4uaGVhZGVyLWNvbHVtbiAuY29weSB7XHJcbiAgY29sb3I6IGNvbG9yKHdoaXRlKTtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4uaGVhZGVyLWNvbHVtbi5ib3JkZXItbGVmdCB7XHJcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBjb2xvcihncmF5LCBkYXJrKTtcclxufVxyXG5cclxuLmhlYWRlci1jb2x1bW4uYm9yZGVyLXJpZ2h0IHtcclxuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBjb2xvcihncmF5LCBkYXJrKTtcclxufVxyXG5cclxuLmhlYWRlci1jb2x1bW4uY2FydCB7XHJcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBjb2xvcihncmF5LCBkYXJrKTtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG4gIHBhZGRpbmctcmlnaHQ6IDFlbTtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xyXG4gICAgcGFkZGluZy1yaWdodDogMS41ZW07XHJcbiAgfVxyXG4gICY6aG92ZXIge1xyXG4gICAgLnRvdGFsIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUpO1xyXG4gICAgICBjb2xvcjogY29sb3IoYmx1ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5jb3B5IHtcclxuICAgIHBhZGRpbmctbGVmdDogMS41ZW07XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHplcm8sIHRhYmxldCkge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuICAudG90YWwge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoYmx1ZSk7XHJcbiAgICBib3JkZXItcmFkaXVzOiBib3JkZXItcmFkaXVzKG0pO1xyXG4gICAgY29sb3I6IGNvbG9yKHdoaXRlKTtcclxuICAgIGxldHRlci1zcGFjaW5nOiAwO1xyXG4gICAgcGFkZGluZzogLjRlbSAuN2VtO1xyXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1vdXQsIGNvbG9yIC4ycyBlYXNlLW91dDtcclxuICB9XHJcbiAgJi0tZXJyb3Ige1xyXG4gICAgLnRvdGFsIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoZXJyb3IpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmhlYWRlci1jb2x1bW4uYWNjb3VudCB7XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcclxuICB9XHJcbiAgLmNvcHkge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAxLjJlbTtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoemVybywgdGFibGV0KSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uaGVhZGVyLWNvbHVtbiAuZmxhZyB7XHJcbiAgbWFyZ2luOiAwIDE1cHg7XHJcbiAgd2lkdGg6IDE2cHg7XHJcbn1cclxuXHJcbi5oZWFkZXItY29sdW1uLnNwb25zb3Ige1xyXG4gIC5jb3B5IHtcclxuICAgIHBhZGRpbmc6IDAgLjkyZW07XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHplcm8sIHRhYmxldCkge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBjb3JlIHJlcXVpcmVkIGxheW91dFxyXG4vL1xyXG5cclxuLy9cclxuLy8gYnkgdGFnLCBhbHBoYWJldGljYWxcclxuLy9cclxuXHJcbioge1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbn1cclxuXHJcbmh0bWwge1xyXG4gICYubm8tc2Nyb2xsIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBib2R5IHtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbmxhYmVsIHtcclxuICAmW2Zvcl0ge1xyXG4gICAgJjpub3QoW2Zvcj0nJ10pIHtcclxuICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy9cclxuLy8gYnkgY2xhc3MsIGFscGhhYmV0aWNhbFxyXG4vL1xyXG5cclxuLmFwcC1kb3dubG9hZC1saW5rLWxpc3Qge1xyXG4gIC5hcHAtZG93bmxvYWQtbGluayB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBtYXJnaW46IDAgNXB4O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHdpZHRoOiAxNzVweDtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoemVybywgbW9iaWxlLXhsKSB7XHJcbiAgICAgICY6bnRoLWNoaWxkKDJuKzEpIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuaW1nIHtcclxuICAgICAgaGVpZ2h0OiA1NHB4O1xyXG4gICAgICB3aWR0aDogMTc1cHg7XHJcbiAgICB9XHJcbiAgICAubGluayB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5hdmF0YXIge1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUsIG5lYXIpO1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgaGVpZ2h0OiA1MHB4O1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHdpZHRoOiA1MHB4O1xyXG4gICY6bm90KC5hdmF0YXItLWZ1bGwpIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICB9XHJcbn1cclxuXHJcbi5hdmF0YXIgLmltYWdlIHtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgYm90dG9tOiAwO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBsZWZ0OiAwO1xyXG4gIG1hcmdpbjogYXV0bztcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgdG9wOiAwO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIHotaW5kZXg6IDI7XHJcbn1cclxuXHJcbi5hdmF0YXIgLmluaXRpYWxzIHtcclxuICBmb250LXNpemU6IDEzcHg7XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICBsZXR0ZXItc3BhY2luZzogLjA1ZW07XHJcbiAgbWFyZ2luLXJpZ2h0OiAtLjAyNWVtO1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgei1pbmRleDogMTtcclxuICAmLFxyXG4gIGEgJiB7XHJcbiAgICBjb2xvcjogY29sb3IoZ3JheSk7XHJcbiAgfVxyXG59XHJcblxyXG4uY29udGVudC13cmFwcGVyIHtcclxuICBAaW5jbHVkZSBtYXRjaC1ndXR0ZXItc2l6ZShwYWRkaW5nLWxlZnQgcGFkZGluZy1yaWdodCk7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gIG1heC13aWR0aDogd2lkdGgobWF4LXdpZHRoKTtcclxufVxyXG5cclxuLmNvbnRlbnQtd3JhcHBlci0tZmx1aWQge1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWF4LXdpZHRoLWZsdWlkKSB7XHJcbiAgICAvLyBmbHVpZCBncmlkcyBoYXZlIDR4IHRoZSBvdXRzaWRlIGd1dHRlcnMgb24gdGhlIGxlZnQgYW5kIHJpZ2h0XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSAoI3t3aWR0aChndXR0ZXItZmx1aWQtbCl9ICogNCAqIDIpKTtcclxuICB9XHJcbn1cclxuXHJcbi5jb250ZW50LXdyYXBwZXItLWZ1bGwtYmxlZWQge1xyXG4gIHBhZGRpbmctbGVmdDogMDtcclxuICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG59XHJcblxyXG4uY29udGVudC13cmFwcGVyLS1uYXJyb3cge1xyXG4gIG1heC13aWR0aDogd2lkdGgobWF4LXdpZHRoLW5hcnJvdyk7XHJcbn1cclxuXHJcbi5oaWRlIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4uaGlkZS1ieS1kZWZhdWx0IHtcclxuICAmOm5vdCguc2hvdykge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi5oci1pbmxpbmUge1xyXG4gIGJvcmRlcjogMDtcclxuICBmbGV4OiAxO1xyXG4gIC8vIHdpdGhvdXQgYSBoZWlnaHQsIHRoaXMgd2lsbCBub3Qgc2hvdyBpbiBDaHJvbWVcclxuICBoZWlnaHQ6IDJweDtcclxuICBtYXJnaW4tbGVmdDogMTBweDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgJjo6YWZ0ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoZ3JheSwgeHgtbGlnaHQpO1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgICBoZWlnaHQ6IDFweDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IGNhbGMoNTAlIC0gMXB4KTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgQG1lZGlhIHByaW50IHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBjb2xvcihibGFjayk7XHJcbiAgICAgIHRvcDogY2FsYyg1MCUgLSAzcHgpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLnBheW1lbnQtbm90ZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUsIG5lYXIpO1xyXG4gIGNvbG9yOiBjb2xvcihncmF5KTtcclxuICBmb250LXNpemU6IDEycHg7XHJcbiAgbWFyZ2luLXRvcDogMTBweDtcclxuICBwYWRkaW5nOiAyMHB4IDMwcHg7XHJcbn1cclxuXHJcbi5sYXlvdXQtdHdvLWNvbHVtbiB7XHJcbiAgJHVuLXN0YWNrLWF0OiB0YWJsZXQtbDtcclxuICAkd2VpZ2h0LWF0OiBkZXNrdG9wO1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KCR1bi1zdGFjay1hdCkge1xyXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICB9XHJcbiAgJi0tY2VudGVyIHtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIH1cclxuICAmLS13cmFwIHtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIC5sYXlvdXQtY29sdW1uIHtcclxuICAgICAgQGluY2x1ZGUgbWF0Y2gtZ3V0dGVyLXNpemUobWFyZ2luLWJvdHRvbSwgMSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5sYXlvdXQtY29sdW1uIHtcclxuICAgICY6b25seS1jaGlsZCB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdW4tc3RhY2stYXQpIHtcclxuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMjVweCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5sYXlvdXQtY29sdW1uLS1tYXJnaW4tbCB7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCR1bi1zdGFjay1hdCkge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSA1MHB4KTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5sYXlvdXQtdHdvLWNvbHVtbi0td2VpZ2h0ZWQge1xyXG4gICR1bi1zdGFjay1hdDogdGFibGV0LWw7XHJcbiAgJHdlaWdodC1hdDogZGVza3RvcDtcclxuICAubGF5b3V0LWNvbHVtbiB7XHJcbiAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkd2VpZ2h0LWF0KSB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMCU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5vZmZzY3JlZW4ge1xyXG4gIEBpbmNsdWRlIG9mZnNjcmVlbjtcclxufVxyXG5cclxuLnBhZ2luYXRpb24tbmF2IHtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgaGVpZ2h0OiA0MHB4O1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIC5saW5rIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoY29sb3IoYmxhY2spLCAuMzUpO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBoZWlnaHQ6IDhweDtcclxuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDRweDtcclxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2Utb3V0LCBib3JkZXItY29sb3IgLjJzIGVhc2Utb3V0O1xyXG4gICAgd2lkdGg6IDhweDtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgYW5pbWF0aW9uOiBwdWxzZSAuMnMgZWFzZS1vdXQgMTtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoYmxhY2spO1xyXG4gICAgICBib3JkZXItY29sb3I6IGNvbG9yKGJsYWNrKTtcclxuICAgIH1cclxuICAgIC50ZXh0IHtcclxuICAgICAgQGluY2x1ZGUgb2Zmc2NyZWVuO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLnBhZ2luYXRpb24tbmF2LS1yZXZlcnNlZCB7XHJcbiAgLmxpbmsge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYShjb2xvcih3aGl0ZSksIC4zNSk7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHdoaXRlKTtcclxuICAgICAgYm9yZGVyLWNvbG9yOiBjb2xvcih3aGl0ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4udGV4dC1jZW50ZXIge1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLy9cclxuLy8gYnkgYXR0cmlidXRlLCBhbHBoYWJldGljYWxcclxuLy9cclxuXHJcblt2LWNsb2FrXSB7XHJcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLWltcG9ydGFudFxyXG59XHJcbiIsIi8vXHJcbi8vIGNvcmUgKG9wdGlvbmFsKSBsb2FkZXJcclxuLy9cclxuXHJcbi5lbGxpcHNpcy1sb2FkZXIge1xyXG4gICRhbmltYXRpb24tZHVyYXRpb246IDEuNXM7XHJcbiAgJHNpemU6IDZweDtcclxuICAuZG90IHtcclxuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogJGFuaW1hdGlvbi1kdXJhdGlvbjtcclxuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGVsbGlwc2lzLWxvYWRlcjtcclxuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Uob3V0LXF1YWQpO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoYmx1ZSk7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBoZWlnaHQ6ICRzaXplO1xyXG4gICAgbWFyZ2luLWxlZnQ6ICRzaXplIC8gNjtcclxuICAgIG1hcmdpbi1yaWdodDogJHNpemUgLyA2O1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHdpZHRoOiAkc2l6ZTtcclxuICAgICY6bnRoLWNoaWxkKDIpIHtcclxuICAgICAgYW5pbWF0aW9uLWRlbGF5OiAkYW5pbWF0aW9uLWR1cmF0aW9uIC8gNTtcclxuICAgIH1cclxuICAgICY6bnRoLWNoaWxkKDMpIHtcclxuICAgICAgYW5pbWF0aW9uLWRlbGF5OiAkYW5pbWF0aW9uLWR1cmF0aW9uIC8gNSAqIDI7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC50ZXh0IHtcclxuICAgIEBpbmNsdWRlIG9mZnNjcmVlbjtcclxuICB9XHJcbn1cclxuXHJcbi5lbGxpcHNpcy1sb2FkZXItLXJldmVyc2VkIHtcclxuICAuZG90IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHdoaXRlKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZWxsaXBzaXMtbG9hZGVyIHtcclxuICAwJSB7XHJcbiAgICBvcGFjaXR5OiAuNTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoLjUpO1xyXG4gIH1cclxuICAzNSUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgfVxyXG4gIDEwMCUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIGNvcmUgKG9wdGlvbmFsKSBtb2RhbFxyXG4vL1xyXG5cclxuLm1vZGFsIHtcclxuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXHJcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUpO1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIGxlZnQ6IDA7XHJcbiAgbWFyZ2luOiBhdXRvO1xyXG4gIG1heC1oZWlnaHQ6IDEwMCU7XHJcbiAgbWF4LXdpZHRoOiA1MDBweDtcclxuICBvcGFjaXR5OiAwO1xyXG4gIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgcGFkZGluZy1ib3R0b206IDQwcHg7XHJcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcbiAgcGFkZGluZy10b3A6IDIwcHg7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIHRvcDogMDtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzBweCk7XHJcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgZWFzZS1vdXQsIHRyYW5zZm9ybSAuMnMgZWFzZS1vdXQsIHZpc2liaWxpdHkgMHMgLjJzO1xyXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICB3aWR0aDogMTAwJTtcclxuICB6LWluZGV4OiB6LWluZGV4KG1vZGFsKTtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xyXG4gICAgbWF4LWhlaWdodDogOTV2aDtcclxuICAgIG1heC13aWR0aDogNzAwcHg7XHJcbiAgICB0b3A6IDIuNXZoO1xyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xyXG4gICAgcGFkZGluZy10b3A6IDQwcHg7XHJcbiAgfVxyXG4gICYuc2hvdyB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgdHJhbnNpdGlvbjogdmlzaWJpbGl0eSAwcywgb3BhY2l0eSAuMnMgZWFzZS1vdXQsIHRyYW5zZm9ybSAuMnMgZWFzZS1vdXQ7XHJcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gIH1cclxuICAuaGVhZGluZyB7XHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShoKTtcclxuICAgIGNvbG9yOiBjb2xvcihibHVlKTtcclxuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgICBsaW5lLWhlaWdodDogbGluZS1oZWlnaHQocCk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlLXhsKSB7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5tb2RhbCAuZm9ybS1jb250YWluZXIge1xyXG4gIG1hcmdpbi1ib3R0b206IDA7XHJcbn1cclxuXHJcbi5tb2RhbC1jb2x1bW4ge1xyXG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcclxuICAgIGZsZXgtYmFzaXM6IGNhbGMoNTAlIC0gMTBweCk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIH1cclxuICAmLmNoZWNrZWQge1xyXG4gICAgLm1pcnJvci1jaGVja2VkIHtcclxuICAgICAgYW5pbWF0aW9uOiBmbGFzaCAuMnMgZWFzZS1vdXQ7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAuMXM7XHJcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLm1vZGFsLWNvbHVtbi0tZnVsbCB7XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcclxuICAgIGZsZXgtYmFzaXM6IDEwMCU7XHJcbiAgfVxyXG59XHJcblxyXG4ubW9kYWwtcm93IHtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgfVxyXG4gIC5mb3JtLW1vZHVsZSB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICB9XHJcbiAgLmhpZGUtaWYtdW5jaGVja2VkIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG4gIC5taXJyb3ItY2hlY2tlZCB7XHJcbiAgICBvcGFjaXR5OiAuMzU7XHJcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLW91dDtcclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gY29yZSAob3B0aW9uYWwpIG92ZXJsYXlcclxuLy9cclxuXHJcbi5vdmVybGF5IHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihibGFjayk7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIGxlZnQ6IDA7XHJcbiAgb3BhY2l0eTogMDtcclxuICBvdmVyZmxvdy14OiBoaWRkZW47XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHRvcDogMDtcclxuICB0cmFuc2l0aW9uOiAuMnMgb3BhY2l0eSBlYXNlLW91dCwgMHMgdmlzaWJpbGl0eSAuMnM7XHJcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIHotaW5kZXg6IHotaW5kZXgob3ZlcmxheSk7XHJcbiAgJi5pbnZpc2libGUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgfVxyXG4gICYubGlnaHQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUpO1xyXG4gICAgJi5zaG93IHtcclxuICAgICAgb3BhY2l0eTogLjk1O1xyXG4gICAgfVxyXG4gIH1cclxuICAmLnNob3cge1xyXG4gICAgb3BhY2l0eTogLjg7XHJcbiAgICB0cmFuc2l0aW9uOiAwcyB2aXNpYmlsaXR5LCAuMnMgb3BhY2l0eSBlYXNlLW91dDtcclxuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgfVxyXG59XHJcblxyXG5bZGF0YS1iZWhhdmlvcn49J2JsdXItYmVoaW5kLW92ZXJsYXknXSB7XHJcbiAgdHJhbnNpdGlvbjogZmlsdGVyIC4ycyBlYXNlLW91dDtcclxuICAmLmJsdXJyZWQge1xyXG4gICAgZmlsdGVyOiBibHVyKDVweCk7XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIGNvcmUgKG9wdGlvbmFsKSBmdWxsIHNjcmVlbiBtb2RhbFxyXG4vL1xyXG5cclxuLnByb2Nlc3NpbmctbW9kYWwge1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUpO1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgbGVmdDogMDtcclxuICBvcGFjaXR5OiAwO1xyXG4gIHBhZGRpbmctbGVmdDogMjBweDtcclxuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICB0b3A6IDA7XHJcbiAgdHJhbnNmb3JtOiBzY2FsZSgyKTtcclxuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC40cyBlYXNpbmcob3V0LWV4cG8pLCB0cmFuc2Zvcm0gLjRzIGVhc2luZyhvdXQtZXhwbyksIHZpc2liaWxpdHkgMHMgLjRzO1xyXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICB3aWR0aDogMTAwJTtcclxuICB6LWluZGV4OiB6LWluZGV4KG1vZGFsKTtcclxuICAmLnNob3cge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDBzLCBvcGFjaXR5IC40cyBlYXNlLW91dCwgdHJhbnNmb3JtIC40cyBlYXNlLW91dDtcclxuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgfVxyXG4gIC5idXR0b24sXHJcbiAgLmJ0biB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xyXG4gICAgJi5oaWRkZW4ge1xyXG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5oZWFkaW5nIHtcclxuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKHAteGwpO1xyXG4gICAgY29sb3I6IGNvbG9yKGdyYXkpO1xyXG4gICAgbGluZS1oZWlnaHQ6IGxpbmUtaGVpZ2h0KHAtdGlnaHQpO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMi41ZW07XHJcbiAgICBtYXgtd2lkdGg6IDE3ZW07XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgfVxyXG4gIC5pbWcge1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh6ZXJvLCB0YWJsZXQpIHtcclxuICAgICAgd2lkdGg6IDE1MHB4O1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQsIGRlc2t0b3ApIHtcclxuICAgICAgd2lkdGg6IDIyNXB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBjb3JlIHByb2R1Y3QgY2xhaW0gc3RhdGVtZW50IChvcHRpb25hbClcclxuLy9cclxuXHJcbi5wcm9kdWN0LWNsYWltLXN0YXRlbWVudCB7XHJcbiAgQGluY2x1ZGUgbWF0Y2gtZ3V0dGVyLXNpemUobWFyZ2luLWJvdHRvbSBtYXJnaW4tdG9wLCAxLjUpO1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKHAteHhzKTtcclxuICBib3JkZXI6IDFweCBzb2xpZCBjb2xvcih3aGl0ZSwgb2ZmKTtcclxuICBsaW5lLWhlaWdodDogbGluZS1oZWlnaHQocC10aWdodCk7XHJcbiAgbWFyZ2luLWJvdHRvbTogbGluZS1oZWlnaHQocCk7XHJcbiAgbWFyZ2luLXRvcDogbGluZS1oZWlnaHQocCk7XHJcbiAgcGFkZGluZzogbGluZS1oZWlnaHQocC10aWdodCkgLyAxLjUgbGluZS1oZWlnaHQocC10aWdodCk7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICY6ZW1wdHkge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gY29yZSAob3B0aW9uYWwpIHByb2R1Y3QgdGFibGVcclxuLy9cclxuXHJcbi5wcm9kdWN0cy1lbXB0eS1jYXJ0IHtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwLXMpO1xyXG4gIGNvbG9yOiBjb2xvcihncmF5KTtcclxuICBsaW5lLWhlaWdodDogbGluZS1oZWlnaHQocCk7XHJcbiAgcGFkZGluZy1ib3R0b206IDRlbTtcclxuICBwYWRkaW5nLWxlZnQ6IDEuNWVtO1xyXG4gIHBhZGRpbmctcmlnaHQ6IDEuNWVtO1xyXG4gIHBhZGRpbmctdG9wOiA0ZW07XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIC5oZWFkaW5nIHtcclxuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKHApO1xyXG4gICAgY29sb3I6IGNvbG9yKGJsYWNrLCBuZWFyKTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogbGV0dGVyLXNwYWNpbmcoZXhwYW5kZWQpO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogLjNlbTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgfVxyXG4gIC5idG4sXHJcbiAgLmJ1dHRvbiB7XHJcbiAgICBtYXJnaW4tdG9wOiAyZW07XHJcbiAgfVxyXG59XHJcblxyXG4ucHJvZHVjdHMtdGFibGUge1xyXG4gICRjZWxsLXBhZGRpbmctYm90dG9tOiAyMHB4O1xyXG4gICRjZWxsLXBhZGRpbmctdG9wOiAxNXB4O1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xyXG4gIH1cclxuICB0ZCxcclxuICB0aCB7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcclxuICB9XHJcbiAgLmxpbmUtMSB7XHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwKTtcclxuICAgIGNvbG9yOiBjb2xvcihibGFjaywgbmVhcik7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIC51aS1pY29uIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAtMTRweDtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcclxuICAgICAgbWFyZ2luLXRvcDogLTE0cHg7XHJcbiAgICB9XHJcbiAgICAudWktaWNvbi1zdWJzY3JpcHRpb24ge1xyXG4gICAgICBmaWxsOiBjb2xvcihzcGVjaWFsKTtcclxuICAgIH1cclxuICB9XHJcbiAgLmxpbmUtMiB7XHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwLXMpO1xyXG4gICAgY29sb3I6IGNvbG9yKGdyYXkpO1xyXG4gICAgbWFyZ2luLXRvcDogNnB4O1xyXG4gICAgJi0tY2hvaWNlIHtcclxuICAgICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUocC14eHMpO1xyXG4gICAgICBjb2xvcjogY29sb3IoYmx1ZSk7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjJzIGVhc2Utb3V0O1xyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICBjb2xvcjogY29sb3IoYmx1ZSwgZGFyayk7XHJcbiAgICAgICAgb3V0bGluZTogMDtcclxuICAgICAgfVxyXG4gICAgICAmOmhvdmVyLFxyXG4gICAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgY29sb3I6IGNvbG9yKGJsdWUsIGRhcmspO1xyXG4gICAgICAgIC5jYXJldCB7XHJcbiAgICAgICAgICBhbmltYXRpb246IHRlZXRlci1yaWdodCAuMnMgbGluZWFyIDE7XHJcbiAgICAgICAgICBmaWxsOiBjb2xvcihibHVlLCBkYXJrKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYtLWxhYmVsIHtcclxuICAgICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUocC14eHMpO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgfVxyXG4gICAgJi0tcmVhZC1vbmx5IHtcclxuICAgICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUocC14eHMpO1xyXG4gICAgfVxyXG4gICAgJi5hIHtcclxuICAgICAgY29sb3I6IGNvbG9yKGdyYXkpO1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciAuMnMgZWFzZS1vdXQ7XHJcbiAgICAgICY6aG92ZXIsXHJcbiAgICAgICY6YWN0aXZlIHtcclxuICAgICAgICBjb2xvcjogY29sb3IoYmx1ZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLnByaWNlLWNvbnRhaW5lciB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogJGNlbGwtcGFkZGluZy1ib3R0b207XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xyXG4gICAgcGFkZGluZy10b3A6ICRjZWxsLXBhZGRpbmctdG9wO1xyXG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICB3aWR0aDogNzBweDtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoemVybywgbW9iaWxlLWwpIHtcclxuICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgICB9XHJcbiAgICAmLmhhcy1mcmVxdWVuY3kge1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xyXG4gICAgICAuc2VsZWN0LXdyYXBwZXIge1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xyXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTJweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5iYWRnZSB7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogbGluZS1oZWlnaHQocC10aWdodCkgLyA0O1xyXG4gICAgfVxyXG4gICAgLmJlc3QtcHJpY2Uge1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgYW5pbWF0aW9uOiAycyB0YWRhLXBhdXNlIGluZmluaXRlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuY2FyZXQge1xyXG4gICAgICBmaWxsOiBjb2xvcihncmF5KTtcclxuICAgICAgaGVpZ2h0OiA4cHg7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XHJcbiAgICAgIHRyYW5zaXRpb246IGZpbGwgLjJzIGVhc2Utb3V0O1xyXG4gICAgICB3aWR0aDogOHB4O1xyXG4gICAgfVxyXG4gICAgLmZyZXF1ZW5jeSB7XHJcbiAgICAgIGhlaWdodDogMWVtO1xyXG4gICAgICBsaW5lLWhlaWdodDogMWVtO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICB3aGl0ZS1zcGFjZTogcHJlO1xyXG4gICAgfVxyXG4gICAgLmxpbmUtMSB7XHJcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgIC8vIG9uIHNtYWxsIG1vYmlsZSBzaXplcyBzdGFjayB0aGUgcHYgYmFkZ2Ugc28gd2UgaGF2ZSBwbGVudHkgb2Ygcm9vbVxyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHplcm8sIG1vYmlsZS1zKSB7XHJcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG87XHJcbiAgICAgICAgLmJhZGdlIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IGxpbmUtaGVpZ2h0KHApIC8gMjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5wcmUtZGlzY291bnQge1xyXG4gICAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwLXhzKTtcclxuICAgICAgY29sb3I6IGNvbG9yKGdyYXkpO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogM3B4O1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcclxuICAgIH1cclxuICB9XHJcbiAgLnByb2R1Y3QtYWhlbS1jb250YWluZXIge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDE1cHg7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gIH1cclxuICAucHJvZHVjdC1iYWRnZS1jb250YWluZXIge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDE1cHg7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gIH1cclxuICAucHJvZHVjdC1pbWFnZS1jb250YWluZXIge1xyXG4gICAgaGVpZ2h0OiA3MHB4O1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIHdpZHRoOiA3MHB4O1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh6ZXJvLCBtb2JpbGUtbCkge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wLWwpIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG4gICAgICB3aWR0aDogODBweDtcclxuICAgIH1cclxuICAgIGltZyB7XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5wcm9kdWN0LXRleHQtY29udGFpbmVyIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAkY2VsbC1wYWRkaW5nLWJvdHRvbTtcclxuICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XHJcbiAgICBwYWRkaW5nLXRvcDogJGNlbGwtcGFkZGluZy10b3A7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCwgZGVza3RvcC1sKSB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcclxuICAgIH1cclxuICB9XHJcbiAgLnByb2R1Y3Qtcm93IHtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBjb2xvcihncmF5LCB4eC1saWdodCk7XHJcbiAgICAmOmxhc3Qtb2YtdHlwZSB7XHJcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XHJcbiAgICB9XHJcbiAgICAmLnJlbW92aW5nIHtcclxuICAgICAgdGQsXHJcbiAgICAgIHRoIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjRzIGVhc2Utb3V0O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5xdWFudGl0eS1jb250YWluZXIge1xyXG4gICAgcGFkZGluZy1ib3R0b206ICRjZWxsLXBhZGRpbmctYm90dG9tO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcclxuICAgIHBhZGRpbmctdG9wOiAkY2VsbC1wYWRkaW5nLXRvcDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIC5saW5lLTItLWxhYmVsIHtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IGluaGVyaXQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5zZWxlY3Qtd3JhcHBlciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAuZGVjb3kge1xyXG4gICAgICBoZWlnaHQ6IDFlbTtcclxuICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcclxuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICAgd2hpdGUtc3BhY2U6IHByZTtcclxuICAgIH1cclxuICAgIHNlbGVjdCB7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAuaW9zICYge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgfVxyXG4gICAgICAmOmZvY3VzICsgLmRlY295IHtcclxuICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgIGNvbG9yOiBjb2xvcihibHVlLCBkYXJrKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAuc3Bpbm5lci1jb250YWluZXIge1xyXG4gICAgaGVpZ2h0OiA2MHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206ICRjZWxsLXBhZGRpbmctYm90dG9tO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcclxuICAgIHBhZGRpbmctdG9wOiAkY2VsbC1wYWRkaW5nLXRvcDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHdpZHRoOiA0LjVlbTtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoemVybywgbW9iaWxlLWwpIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xyXG4gICAgfVxyXG4gICAgLnNwaW5uZXIge1xyXG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLnByb2R1Y3RzLXRhYmxlIC5iYWRnZS1yb3cge1xyXG4gIHRoIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB9XHJcbiAgLmJhZGdlIHtcclxuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XHJcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcclxuICB9XHJcbn1cclxuXHJcbi8vIEBUT0RPIGRvZXMgdGhpcyB3b3JrPyBJc24ndCB0aGUgLnJlcXVpcmUtc3NvIGFsd2F5cyBuZXN0ZWQgaW4gdGhlIC5wcm9kdWN0cy10YWJsZT9cclxuLnByb2R1Y3RzLXRhYmxlICsgLnJlcXVpcmUtc3NvIHtcclxuICBib3JkZXItdG9wOiAxcHggc29saWQgY29sb3IoZ3JheSwgeHgtbGlnaHQpO1xyXG59XHJcblxyXG4ucmVxdWlyZS1zc28ge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHdoaXRlLCBuZWFyKTtcclxuICBwYWRkaW5nLXRvcDogMDtcclxufVxyXG5cclxuLnJlcXVpcmUtc3NvIC5saW5lLTItLWxhYmVsIHtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4ucmVxdWlyZS1zc28gLnNwaW5uZXIge1xyXG4gIGlucHV0LFxyXG4gIC5taW51cyxcclxuICAucGx1cyB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSk7XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIGNvcmUgKG9wdGlvbmFsKSBzdGF0dXMgbWVzc2FnZVxyXG4vL1xyXG5cclxuLnN0YXR1cy1tZXNzYWdlIHtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICBtYXJnaW4tYm90dG9tOiA1MHB4O1xyXG4gIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDEwMHB4O1xyXG4gICAgbWFyZ2luLXRvcDogMjBweDtcclxuICB9XHJcbiAgLmhlYWRpbmcge1xyXG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUocC14bCk7XHJcbiAgICBjb2xvcjogY29sb3IoZ3JheSk7XHJcbiAgICBsaW5lLWhlaWdodDogbGluZS1oZWlnaHQocC10aWdodCk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyLjVlbTtcclxuICAgIG1heC13aWR0aDogMjRlbTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB9XHJcbiAgLmltZyB7XHJcbiAgICBoZWlnaHQ6IDIyNXB4O1xyXG4gICAgd2lkdGg6IDIyNXB4O1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcclxuICAgICAgaGVpZ2h0OiAyNTBweDtcclxuICAgICAgd2lkdGg6IDI1MHB4O1xyXG4gICAgfVxyXG4gIH1cclxuICAucCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIGNvcmUgdHlwZSwgYnkgdGFnLCBhbHBoYWJldGljYWxcclxuLy9cclxuXHJcbmEge1xyXG4gICZbZGF0YS1iZWhhdmlvcl0ge1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIH1cclxufVxyXG5cclxuYm9keSB7XHJcbiAgQGluY2x1ZGUgZm9udC1zbW9vdGhpbmc7XHJcbiAgY29sb3I6IGNvbG9yKGdyYXkpO1xyXG4gIGZvbnQtZGlzcGxheTogc3dhcDtcclxuICBmb250LWZhbWlseTogZm9udC1mYW1pbHkoc2Fucyk7XHJcbn1cclxuXHJcbi8vXHJcbi8vIGNvcmUgdHlwZSwgc2l6aW5nIGRlYnVnIGNsYXNzZXNcclxuLy8gKsKgbWVhbnQgZm9yIGRlYnVnZ2luZyBmb250IHNpemVzLCBub3QgcHJvZHVjdGlvbiB1c2FnZVxyXG4vL1xyXG5cclxuLmZvbnQtc2l6ZS1kZWJ1ZyB7XHJcbiAgaDEsXHJcbiAgaDIsXHJcbiAgaDMsXHJcbiAgaDQsXHJcbiAgaDUsXHJcbiAgaDYsXHJcbiAgcCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XHJcbiAgfVxyXG4gIHAge1xyXG4gICAgbGluZS1oZWlnaHQ6IGxpbmUtaGVpZ2h0KHApO1xyXG4gIH1cclxuICBAZWFjaCAkcmVzcG9uc2l2ZS1mb250LXNpemUsICRsaXN0IGluICRyZXNwb25zaXZlLWZvbnQtc2l6ZXMge1xyXG4gICAgLiN7JHJlc3BvbnNpdmUtZm9udC1zaXplfSB7XHJcbiAgICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKCRyZXNwb25zaXZlLWZvbnQtc2l6ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vL1xyXG4vLyBjb3JlIHR5cGUsIGJ5IGNsYXNzLCBhbHBoYWJldGljYWxcclxuLy9cclxuXHJcbi5haGVtIHtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwLXh4cyk7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGxpbmUtaGVpZ2h0OiBsaW5lLWhlaWdodChwKTtcclxuICAmLnBlbmRpbmcge1xyXG4gICAgYW5pbWF0aW9uOiB1cGRhdGluZyAycyBlYXNlLW91dCBpbmZpbml0ZTtcclxuICB9XHJcbiAgLmEge1xyXG4gICAgY29sb3I6IGNvbG9yKGJsdWUpO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgfVxyXG4gIC5iYWRnZSB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IC44ZW07XHJcbiAgfVxyXG59XHJcblxyXG4uZm9vdG5vdGUge1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKHAteHhzKTtcclxuICBjb2xvcjogY29sb3IoZ3JheSk7XHJcbiAgbGluZS1oZWlnaHQ6IGxpbmUtaGVpZ2h0KHApO1xyXG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgbWFyZ2luLXRvcDogMTBweDtcclxuICAmLmFmdGVyLWZvcm0ge1xyXG4gICAgbWFyZ2luLXRvcDogMjBweDtcclxuICB9XHJcbn1cclxuXHJcbi5oZWFkaW5nLXBhZ2Uge1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKGgpO1xyXG4gIGNvbG9yOiBjb2xvcihibHVlKTtcclxuICBmb250LXdlaWdodDogMzAwO1xyXG4gIGxpbmUtaGVpZ2h0OiBsaW5lLWhlaWdodChoKTtcclxuICBtYXJnaW4tYm90dG9tOiAyZW07XHJcbiAgbWFyZ2luLXRvcDogMWVtO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB3aWR0aDogMTAwJTtcclxuICAmLS1tYXJnaW4tdG9wIHtcclxuICAgIG1hcmdpbi10b3A6IDJlbTtcclxuICB9XHJcbiAgJi0tcmV2ZXJzZWQge1xyXG4gICAgY29sb3I6IGNvbG9yKHdoaXRlKTtcclxuICB9XHJcbn1cclxuXHJcbi5oaWRkZW4tYXQtcHJpbnQge1xyXG4gIEBtZWRpYSBwcmludCB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuLnNlY3Rpb24taGVhZGluZy1jb250YWluZXIge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICB9XHJcbiAgLy8gdGhpcyBtb2RpZmllciBoYXMgdG8gY29tZSBhZnRlciB0aGUgYnJlYWtwb2ludCBkZWNsYXJhdGlvbiBvciBpdCB3b24ndCB3b3JrXHJcbiAgLnNlY3Rpb24taGVhZGluZyB7XHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwLXMpO1xyXG4gICAgY29sb3I6IGNvbG9yKGdyYXksIGRhcmspO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIGxldHRlci1zcGFjaW5nOiAuMDJlbTtcclxuICAgIEBtZWRpYSBwcmludCB7XHJcbiAgICAgIGNvbG9yOiBjb2xvcihibGFjayk7XHJcbiAgICAgIGZvbnQtc2l6ZTogOXB0O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLnNlY3Rpb24taGVhZGluZy1jb250YWluZXItLXRpZ2h0IHtcclxuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gIH1cclxufVxyXG5cclxuLnN1Yi1oZWFkaW5nLXBhZ2Uge1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKGgteHhzKTtcclxuICBsaW5lLWhlaWdodDogbGluZS1oZWlnaHQocCk7XHJcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAuaWQtbnVtYmVyIHtcclxuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKHAteGwpO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICB9XHJcbiAgLmhlYWRpbmctcGFnZSArICYge1xyXG4gICAgbWFyZ2luLXRvcDogLTEuNWVtO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcclxuICAgICAgbWFyZ2luLXRvcDogLTIuNWVtO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLnRleHQtY2VudGVyIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuIiwiLy9cclxuLy8gY29yZSAob3B0aW9uYWwpIHVpLWljb25cclxuLy9cclxuXHJcbi8vIGJhc2VcclxuLnVpLWljb24ge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBmaWxsOiBjb2xvcihncmF5KTtcclxuICBoZWlnaHQ6IDQwcHg7XHJcbiAgdHJhbnNpdGlvbjogZmlsbCAuMnMgZWFzZS1vdXQsIHRyYW5zZm9ybSAuMnMgZWFzZS1vdXQ7XHJcbiAgd2lkdGg6IDQwcHg7XHJcbiAgLnVpLWljb24tYnV0dG9uICYge1xyXG4gICAgZmlsbDogY29sb3IoYmx1ZSk7XHJcbiAgICAmOmFjdGl2ZSxcclxuICAgICY6aG92ZXIge1xyXG4gICAgICBmaWxsOiBjb2xvcihibHVlLCBkYXJrKTtcclxuICAgIH1cclxuICB9XHJcbiAgLnVpLWljb24tYnV0dG9uW2Rpc2FibGVkXSAmIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBmb3JjZS1hdHRyaWJ1dGUtbmVzdGluZ1xyXG4gICAgJixcclxuICAgICY6YWN0aXZlLFxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGZpbGw6IGNvbG9yKGdyYXksIHgtbGlnaHQpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gbW9kaWZpZXJzXHJcbi51aS1pY29uLS1yZXZlcnNlZCB7XHJcbiAgZmlsbDogY29sb3Iod2hpdGUpO1xyXG4gIC51aS1pY29uLWJ1dHRvbiAmIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgZmlsbDogY29sb3Iod2hpdGUpO1xyXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1vdXQ7XHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjphY3RpdmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihibHVlKTtcclxuICAgICAgZmlsbDogY29sb3Iod2hpdGUpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLnVpLWljb24tLWRhcmsge1xyXG4gIGZpbGw6IGNvbG9yKGJsYWNrLCBuZWFyKTtcclxuICAmOmhvdmVyIHtcclxuICAgIGZpbGw6IGJsYWNrO1xyXG4gIH1cclxufVxyXG5cclxuLnVpLWljb24tLXMge1xyXG4gIGhlaWdodDogMjRweDtcclxuICB3aWR0aDogMjRweDtcclxufVxyXG5cclxuLnVpLWljb24tLW0ge1xyXG4gIGhlaWdodDogMzJweDtcclxuICB3aWR0aDogMzJweDtcclxufVxyXG5cclxuLnVpLWljb24tLWwge1xyXG4gIGhlaWdodDogNDhweDtcclxuICB3aWR0aDogNDhweDtcclxufVxyXG5cclxuLnVpLWljb24tLXhsIHtcclxuICBoZWlnaHQ6IDY0cHg7XHJcbiAgd2lkdGg6IDY0cHg7XHJcbn1cclxuXHJcbi51aS1pY29uLS14eGwge1xyXG4gIGhlaWdodDogODBweDtcclxuICB3aWR0aDogODBweDtcclxufVxyXG5cclxuLnVpLWljb24tLWJnLXJvdW5kIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKGNvbG9yKHdoaXRlLCBuZWFyKSwgLjg1KTtcclxuICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1pbi1vdXQ7XHJcbiAgJjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihncmF5LCB4eC1saWdodCk7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBAVE9ETyBMdWNhcywgZG8gd2Ugd2FudCB0aGlzIHRvIGJlIGEgbWl4aW4/IGEgY2xhc3MgdG8gdXRpbGl6ZSB0aGlzOlxyXG4vLyBodHRwczovL2Nzcy10cmlja3MuY29tL2Nhc2NhZGluZy1zdmctZmlsbC1jb2xvci9cclxuLy8gLnVpLWljb24tLW1hdGNoLWNvbG9yIHtcclxuXHJcbi8vIH1cclxuXHJcbi8vIGxheW91dFxyXG4udWktaWNvbi1jaGV2cm9uIHtcclxuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcclxufVxyXG5cclxuLnVpLWljb24tY2hldnJvbi0tbGVmdCB7XHJcbiAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xyXG59XHJcblxyXG4udWktaWNvbi1jaGV2cm9uLS1yaWdodCB7XHJcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcclxufVxyXG5cclxuLnVpLWljb24tY2hldnJvbi0tdXAge1xyXG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbn1cclxuXHJcbi51aS1pY29uLWJ1dHRvbiB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBtYXJnaW46IDA7XHJcbiAgb3V0bGluZTogMDtcclxuICBwYWRkaW5nOiAwO1xyXG4gICYucG9pbnRlcixcclxuICAmW2hyZWZdLFxyXG4gICZbZGF0YS1iZWhhdmlvcl0ge1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIH1cclxuICAmW2Rpc2FibGVkXSB7XHJcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBjb3JlIChvcHRpb25hbCkgdmFuaWxsYSBzdHlsZXNcclxuLy8gKiBhbHBoYWJldGljYWwgYnkgdGFnXHJcbi8vXHJcblxyXG5hIHtcclxuICBAaW5jbHVkZSB2YW5pbGxhIHtcclxuICAgIGNvbG9yOiBjb2xvcihibHVlKTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgdHJhbnNpdGlvbjogY29sb3IgLjJzIGVhc2Utb3V0O1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGNvbG9yOiBjb2xvcihibHVlLCBkYXJrKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbmFiYnIge1xyXG4gIEBpbmNsdWRlIHZhbmlsbGEge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuYWNyb255bSB7XHJcbiAgQGluY2x1ZGUgdmFuaWxsYSB7XHJcbiAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgY3Vyc29yOiBpbmhlcml0O1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuYixcclxuc3Ryb25nIHtcclxuICBAaW5jbHVkZSB2YW5pbGxhIHtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgfVxyXG59XHJcblxyXG5kbCB7XHJcbiAgQGluY2x1ZGUgdmFuaWxsYSB7XHJcbiAgICBkZCB7XHJcbiAgICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKHApO1xyXG4gICAgICBjb2xvcjogY29sb3IoZ3JheSwgeC1kYXJrKTtcclxuICAgICAgbGluZS1oZWlnaHQ6IGxpbmUtaGVpZ2h0KHAtdGlnaHQpO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjI1ZW07XHJcbiAgICAgIEBtZWRpYSBwcmludCB7XHJcbiAgICAgICAgY29sb3I6IGNvbG9yKGJsYWNrKTtcclxuICAgICAgICBmb250LXNpemU6IDEwcHQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGR0IHtcclxuICAgICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUocC14eHMpO1xyXG4gICAgICBjb2xvcjogY29sb3IoZ3JheSwgbGlnaHQpO1xyXG4gICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAuMmVtO1xyXG4gICAgICBAbWVkaWEgcHJpbnQge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogOHB0O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5oMSB7XHJcbiAgQGluY2x1ZGUgdmFuaWxsYSB7XHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShoLXhsKTtcclxuICB9XHJcbn1cclxuXHJcbmgyIHtcclxuICBAaW5jbHVkZSB2YW5pbGxhIHtcclxuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKGgtbCk7XHJcbiAgfVxyXG59XHJcblxyXG5oMyB7XHJcbiAgQGluY2x1ZGUgdmFuaWxsYSB7XHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShoKTtcclxuICB9XHJcbn1cclxuXHJcbmg0IHtcclxuICBAaW5jbHVkZSB2YW5pbGxhIHtcclxuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKGgtcyk7XHJcbiAgfVxyXG59XHJcblxyXG5oNSB7XHJcbiAgQGluY2x1ZGUgdmFuaWxsYSB7XHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShoLXhzKTtcclxuICB9XHJcbn1cclxuXHJcbmg2IHtcclxuICBAaW5jbHVkZSB2YW5pbGxhIHtcclxuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKGgteHhzKTtcclxuICB9XHJcbn1cclxuXHJcbnAge1xyXG4gIEBpbmNsdWRlIHZhbmlsbGEge1xyXG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUocCk7XHJcbiAgICBsaW5lLWhlaWdodDogbGluZS1oZWlnaHQocCk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiBsaW5lLWhlaWdodChwKSAvIDI7XHJcbiAgfVxyXG59XHJcblxyXG5zZWN0aW9uIHtcclxuICBAaW5jbHVkZSB2YW5pbGxhIHtcclxuICAgIEBpbmNsdWRlIG1hdGNoLWd1dHRlci1zaXplKG1hcmdpbi1ib3R0b20gbWFyZ2luLXRvcCk7XHJcbiAgfVxyXG59XHJcblxyXG51bCB7XHJcbiAgQGluY2x1ZGUgdmFuaWxsYSB7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lIG91dHNpZGU7XHJcbiAgICBsaSB7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBsaW5lLWhlaWdodChwKTtcclxuICAgICAgcGFkZGluZy1ib3R0b206IC43NWVtO1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDFlbTtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6ICfigKInO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB9XHJcbiAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gcGF5IGxvY2FsIHN0eWxlc1xyXG4vL1xyXG5cclxuLmNjLXR5cGUtb3B0aW9ucyB7XHJcbiAgLmlucHV0LXJhZGlvICsgLmRlY295IHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQ6IGNvbG9yKG1pZG5pZ2h0LCBiYXNlKTtcclxuICAgIH1cclxuICB9XHJcbiAgLmtleSB7XHJcbiAgICBjb2xvcjogY29sb3IoYmxhY2ssIG5lYXIpO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICB9XHJcbiAgLnJhZGlvLWFuZC1sYWJlbCB7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIH1cclxuICB9XHJcbiAgLnJhZGlvLWFuZC1sYWJlbCAuY3VzdG9tLXJhZGlvIHtcclxuICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICB9XHJcbiAgLnJhZGlvLXdyYXBwZXIge1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICBtYXgtd2lkdGg6IDQ1NXB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG4gIC5yYWRpby13cmFwcGVyIGZpZWxkc2V0IHtcclxuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XHJcbiAgfVxyXG4gIC5zZWN0aW9uLWhlYWRpbmcge1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICB9XHJcbn1cclxuXHJcbi5lbXB0eS1jYXJ0IC5sYXlvdXQtdHdvLWNvbHVtbiB7XHJcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgLy8gd2hlbiBpbiBhbiBlbXB0eSBjYXJ0LCBhbHdheXMgc2hvdyB0aGUgY29udHJvbHMgZm9yIHRoZSBmaXJzdCBjb2x1bW5cclxuICAuY2FydC1zdW1tYXJ5LWNvbnRyb2xzLTEtY29sIHtcclxuICAgIGRpc3BsYXk6IGluaXRpYWw7XHJcbiAgfVxyXG4gIC5sYXlvdXQtY29sdW1uIHtcclxuICAgIHBhZGRpbmctbGVmdDogNSU7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiA1JTtcclxuICAgICY6b25seS1jaGlsZCB7XHJcbiAgICAgIG1heC13aWR0aDogNjAwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uaGVhZGluZy1wYWdlIHtcclxuICBtYXJnaW4tdG9wOiAyZW07XHJcbn1cclxuXHJcbiJdfQ== */
