/* 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); } }

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

.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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LG1CQUFrQixFQUNuQjtFQTdCTDtJdkJ1TkksZ0JDZlU7SXNCdktWLGV0Qm1CYTtJc0JsQmIsbUJ0QnFJWTtJc0JwSVoscUJBQW9CO0lBQ3BCLGdCQUFlO0lBQ2YsbUJBQWtCLEVBQ25CO0l2QkNDO011QnZDSjtRdkJ5Tk0sZ0JDakJjLEVzQmxLakIsRUFBQTtJdkJDQztNdUJ2Q0o7UXZCNE5NLGdCQ3BCb0IsRXNCbEt2QixFQUFBO0l2QkNDO011QnZDSjtRdkIrTk0sZ0JDdkIwQixFc0JsSzdCLEVBQUE7SXZCQ0M7TXVCdkNKO1F2QmtPTSxnQkMxQmdDLEVzQmxLbkMsRUFBQTtFdkJKQztJdUJsQ0o7TUF5Q00sYUFBWSxFQUtmLEVBQUE7RXZCWkM7SXVCbENKO01BNENNLGFBQVksRUFFZixFQUFBOztBQzlDSDtFeEIwTEksb0JBQXNDO0VBQXRDLGlCQUFzQztFQTZCdEMsZ0JDVlU7RXVCMU1aLDBCdkJ3R2M7RXVCdkdkLG1CdkJtS2M7RXVCbEtkLHFCdkJpS1E7RXVCaEtSLGtCdkJnS1E7RXVCL0pSLHlCdkJnS2M7RXVCL0pkLG1CQUFrQixFQUluQjtFeEIyQkc7SXdCdkNKO014QjhMTSxvQkFBc0M7TUFBdEMsaUJBQXNDLEV3QmxMM0MsRUFBQTtFeEIyQkc7SXdCdkNKO014Qm1NTSxvQkFBc0M7TUFBdEMsaUJBQXNDLEV3QnZMM0MsRUFBQTtFeEIyQkc7SXdCdkNKO014QnlOTSxnQkNaYyxFdUJqTW5CLEVBQUE7RXhCMkJHO0l3QnZDSjtNeEI0Tk0sZ0JDZm9CLEV1QmpNekIsRUFBQTtFeEIyQkc7SXdCdkNKO014QitOTSxnQkNsQjBCLEV1QmpNL0IsRUFBQTtFeEIyQkc7SXdCdkNKO014QmtPTSxnQkNyQmdDLEV1QmpNckMsRUFBQTtFQVpEO0lBVUksY0FBYSxFQUNkOztBQ1hIO0V6QnVOSSxnQkNaVTtFd0J6TVosZXhCa0RlO0V3QmpEZixtQnhCbUtRO0V3QmxLUixvQkFBbUI7RUFDbkIsb0JBQW1CO0VBQ25CLHFCQUFvQjtFQUNwQixpQkFBZ0I7RUFDaEIsbUJBQWtCLEVBYW5CO0V6QmtCRztJeUJ2Q0o7TXpCeU5NLGdCQ2RjLEV3QnRMbkIsRUFBQTtFekJrQkc7SXlCdkNKO016QjROTSxnQkNqQm9CLEV3QnRMekIsRUFBQTtFekJrQkc7SXlCdkNKO016QitOTSxnQkNwQjBCLEV3QnRML0IsRUFBQTtFekJrQkc7SXlCdkNKO016QmtPTSxnQkN2QmdDLEV3QnRMckMsRUFBQTtFQXJCRDtJekJ1TkksZ0JDYlU7SXdCL0xWLGV4QnNCYTtJd0JyQmIsaUJBQWdCO0lBQ2hCLHNCeEJpSlk7SXdCaEpaLG9CQUFtQjtJQUNuQiwwQkFBeUIsRUFDMUI7SXpCdUJDO015QnZDSjtRekJ5Tk0sZ0JDZmMsRXdCMUxqQixFQUFBO0l6QnVCQztNeUJ2Q0o7UXpCNE5NLGdCQ2xCb0IsRXdCMUx2QixFQUFBO0l6QnVCQztNeUJ2Q0o7UXpCK05NLGdCQ3JCMEIsRXdCMUw3QixFQUFBO0l6QnVCQztNeUJ2Q0o7UXpCa09NLGdCQ3hCZ0MsRXdCMUxuQyxFQUFBO0VBaEJIOztJQW1CSSxnQkFBZSxFQUNoQjs7QUFHSDtFQUdFLFlBQVcsRUEyT1o7RXpCOU5HO0l5QmhCSjtNQUtJLHFCQUFvQjtNQUNwQixrQkFBaUIsRUF3T3BCLEVBQUE7RUE5T0Q7O0lBVUksaUJBQWdCO0lBQ2hCLHVCQUFzQixFQUN2QjtFQVpIO0l6QmdNSSxnQkNiVTtJd0JwS1YsZXhCTGE7SXdCTWIsaUJBQWdCO0lBQ2hCLDBCQUF5QixFQVUxQjtJekJYQztNeUJoQko7UXpCa01NLGdCQ2ZjLEV3QnhKakIsRUFBQTtJekJYQztNeUJoQko7UXpCcU1NLGdCQ2xCb0IsRXdCeEp2QixFQUFBO0l6QlhDO015QmhCSjtRekJ3TU0sZ0JDckIwQixFd0J4SjdCLEVBQUE7SXpCWEM7TXlCaEJKO1F6QjJNTSxnQkN4QmdDLEV3QnhKbkMsRUFBQTtJQTNCSDtNQW1CTSxzQkFBcUI7TUFDckIscUJBQW9CO01BQ3BCLG9CQUFtQjtNQUNuQixrQkFBaUIsRUFDbEI7SUF2Qkw7TUF5Qk0sV3hCcURRLEV3QnBEVDtFQTFCTDtJekJnTUksZ0JDWlU7SXdCdEpWLGV4QkRhO0l3QkViLGdCQUFlLEVBb0NoQjtJekJuREM7TXlCaEJKO1F6QmtNTSxnQkNkYyxFd0JqSGpCLEVBQUE7SXpCbkRDO015QmhCSjtRekJxTU0sZ0JDakJvQixFd0JqSHZCLEVBQUE7SXpCbkRDO015QmhCSjtRekJ3TU0sZ0JDcEIwQixFd0JqSDdCLEVBQUE7SXpCbkRDO015QmhCSjtRekIyTU0sZ0JDdkJnQyxFd0JqSG5DLEVBQUE7SUFuRUg7TXpCZ01JLGdCQ1ZVO013QnBKUixleEJuQlc7TXdCb0JYLGdCQUFlO01BQ2YsdUNBQThCO01BQTlCLCtCQUE4QixFQWEvQjtNekJqQ0Q7UXlCaEJKO1V6QmtNTSxnQkNaYyxFd0JySWYsRUFBQTtNekJqQ0Q7UXlCaEJKO1V6QnFNTSxnQkNmb0IsRXdCcklyQixFQUFBO016QmpDRDtReUJoQko7VXpCd01NLGdCQ2xCMEIsRXdCckkzQixFQUFBO016QmpDRDtReUJoQko7VXpCMk1NLGdCQ3JCZ0MsRXdCcklqQyxFQUFBO01BakRMO1FBc0NRLGV4QnRCUztRd0J1QlQsV0FBVSxFQUNYO01BeENQO1FBMkNRLGV4QjNCUyxFd0JnQ1Y7UUFoRFA7VUE2Q1UsNkNBQW9DO2tCQUFwQyxxQ0FBb0M7VUFDcEMsY3hCOUJPLEV3QitCUjtJQS9DVDtNekJnTUksZ0JDVlU7TXdCbElSLDBCQUF5QixFQUMxQjtNekJyQ0Q7UXlCaEJKO1V6QmtNTSxnQkNaYyxFd0JqSWYsRUFBQTtNekJyQ0Q7UXlCaEJKO1V6QnFNTSxnQkNmb0IsRXdCaklyQixFQUFBO016QnJDRDtReUJoQko7VXpCd01NLGdCQ2xCMEIsRXdCakkzQixFQUFBO016QnJDRDtReUJoQko7VXpCMk1NLGdCQ3JCZ0MsRXdCaklqQyxFQUFBO0lBckRMO016QmdNSSxnQkNWVSxFd0I5SFQ7TXpCeENEO1F5QmhCSjtVekJrTU0sZ0JDWmMsRXdCOUhmLEVBQUE7TXpCeENEO1F5QmhCSjtVekJxTU0sZ0JDZm9CLEV3QjlIckIsRUFBQTtNekJ4Q0Q7UXlCaEJKO1V6QndNTSxnQkNsQjBCLEV3QjlIM0IsRUFBQTtNekJ4Q0Q7UXlCaEJKO1V6QjJNTSxnQkNyQmdDLEV3QjlIakMsRUFBQTtJQXhETDtNQTBETSxleEI3Qlc7TXdCOEJYLGdCQUFlO01BQ2YsZUFBYztNQUNkLHVDQUE4QjtNQUE5QiwrQkFBOEIsRUFLL0I7TUFsRUw7UUFnRVEsZXhCakRTLEV3QmtEVjtFQWpFUDtJQXFFSSxxQkFwRXdCO0lBcUV4QixvQkFBbUI7SUFDbkIsa0JBckVxQjtJQXNFckIsa0JBQWlCO0lBQ2pCLFlBQVcsRUE4RFo7SXpCNUhDO015QlhKO1FBMkVNLG9CQUFtQixFQTREdEIsRUFBQTtJekJ2SEM7TXlCaEJKO1FBOEVNLG1CQUFrQixFQXlEckIsRUFBQTtJQXZJSDtNQWlGTSx1QkFBc0IsRUFVdkI7TUEzRkw7UUFtRlEsMEJBQW1CO1lBQW5CLHVCQUFtQjtnQkFBbkIsb0JBQW1CO1FBQ25CLHFCQUFhO1FBQWIscUJBQWE7UUFBYixjQUFhO1FBQ2Isc0JBQXlCO1lBQXpCLG1CQUF5QjtnQkFBekIsMEJBQXlCO1FBQ3pCLG1CQUFrQixFQUluQjtRekIxRUg7VXlCaEJKO1lBd0ZVLG9CQUFtQixFQUV0QixFQUFBO0lBMUZQO01BNkZNLHNCQUFzQyxFQUN2QztJQTlGTDtNQWdHTSxnQkFBZTtNQUNmLHNCQUFxQixFQUl0QjtNQXJHTDtRQW1HUSwwQ0FBaUM7Z0JBQWpDLGtDQUFpQyxFQUNsQztJQXBHUDtNQXVHTSxjeEIxRVc7TXdCMkVYLFlBQVc7TUFDWCxpQkFBZ0I7TUFDaEIsc0NBQTZCO01BQTdCLDhCQUE2QjtNQUM3QixXQUFVLEVBQ1g7SUE1R0w7TUE4R00sWUFBVztNQUNYLGlCQUFnQjtNQUNoQixvQkFBbUI7TUFDbkIsaUJBQWdCLEVBQ2pCO0lBbEhMO01Bb0hNLG9CQUFtQixFQVVwQjtNekJuSEQ7UXlCWEo7VUF1SFEsY0FBYTtVQUNiLDRCQUEyQixFQU05QjtVQTlITDtZQTBIVSxzQkFBcUI7WUFDckIsc0JBQWlDLEVBQ2xDLEVBQUE7SUE1SFQ7TXpCZ01JLGdCQ1hVO013QnBEUixleEJwR1c7TXdCcUdYLGVBQWM7TUFDZCxvQkFBbUI7TUFDbkIsbUJBQWtCO01BQ2xCLDhCQUE2QixFQUM5QjtNekJ0SEQ7UXlCaEJKO1V6QmtNTSxnQkNiYyxFd0IvQ2YsRUFBQTtNekJ0SEQ7UXlCaEJKO1V6QnFNTSxnQkNoQm9CLEV3Qi9DckIsRUFBQTtNekJ0SEQ7UXlCaEJKO1V6QndNTSxnQkNuQjBCLEV3Qi9DM0IsRUFBQTtNekJ0SEQ7UXlCaEJKO1V6QjJNTSxnQkN0QmdDLEV3Qi9DakMsRUFBQTtFQXRJTDtJQXlJSSxxQkFBb0I7SUFDcEIsbUJBQWtCO0lBQ2xCLHVCQUFzQixFQUN2QjtFQTVJSDtJQThJSSxxQkFBb0I7SUFDcEIsbUJBQWtCO0lBQ2xCLHVCQUFzQixFQUN2QjtFQWpKSDtJQW1KSSxhQUFZO0lBQ1osdUJBQXNCO0lBQ3RCLFlBQVcsRUFZWjtJekJ0SkM7TXlCWEo7UUF1Sk0sY0FBYSxFQVVoQixFQUFBO0l6QmpKQztNeUJoQko7UUEwSk0sbUJBQWtCO1FBQ2xCLFlBQVcsRUFNZCxFQUFBO0lBaktIO01BOEpNLGFBQVk7TUFDWixZQUFXLEVBQ1o7RUFoS0w7SUFtS0kscUJBbEt3QjtJQW1LeEIsbUJBQWtCO0lBQ2xCLG9CQUFtQjtJQUNuQixrQkFwS3FCLEVBd0t0QjtJekIvSkM7TXlCWEo7UUF3S00sbUJBQWtCLEVBRXJCLEVBQUE7RUExS0g7SUE0S0ksaUN4QmxKaUIsRXdCNkpsQjtJQXZMSDtNQThLTSxpQkFBZ0IsRUFDakI7SUEvS0w7O01BbUxRLFdBQVU7TUFDVix5Q0FBZ0M7TUFBaEMsaUNBQWdDLEVBQ2pDO0VBckxQO0lBeUxJLHFCQXhMd0I7SUF5THhCLG1CQUFrQjtJQUNsQixvQkFBbUI7SUFDbkIsa0JBMUxxQjtJQTJMckIsbUJBQWtCLEVBSW5CO0lBak1IO01BK0xNLHdCQUF1QixFQUN4QjtFQWhNTDtJQW1NSSxtQkFBa0IsRUF5Qm5CO0lBNU5IO01BcU1NLFlBQVc7TUFDWCxpQkFBZ0I7TUFDaEIsb0JBQW1CO01BQ25CLGlCQUFnQixFQUNqQjtJQXpNTDtNQTJNTSxnQkFBZTtNQUNmLGVBQWM7TUFDZCxhQUFZO01BQ1osUUFBTztNQUNQLFdBQVU7TUFDVixtQkFBa0I7TUFDbEIsT0FBTTtNQUNOLFlBQVc7TUFDWCxXQUFVLEVBUVg7TUFqQkQ7UUFXSSxnQkFBZSxFQUNoQjtNQXROUDtRQXdOUSx5QkFBZ0I7Z0JBQWhCLGlCQUFnQjtRQUNoQixleEJ6TVMsRXdCME1WO0VBMU5QO0lBOE5JLGFBQVk7SUFDWixxQkE5TndCO0lBK054QixtQkFBa0I7SUFDbEIsb0JBQW1CO0lBQ25CLGtCQWhPcUI7SUFpT3JCLG1CQUFrQjtJQUNsQixhQUFZLEVBU2I7SXpCbE9DO015QlhKO1FBc09NLG1CQUFrQjtRQUNsQixvQkFBbUIsRUFNdEIsRUFBQTtJQTdPSDtNQTBPTSxrQkFBaUI7TUFDakIsbUJBQWtCLEVBQ25COztBQUlMO0VBRUksbUJBQWtCLEVBQ25COztBQUhIO0VBS0ksMEJBQXlCO0VBQ3pCLDJCQUEwQjtFQUMxQixzQkFBcUI7RUFDckIsbUJBQWtCLEVBQ25COztBQUlIO0VBQ0UsOEJ4QnBPbUIsRXdCcU9wQjs7QUFFRDtFQUNFLDBCeEIvS2U7RXdCZ0xmLGVBQWMsRUFDZjs7QUFFRDtFQUNFLG9CQUFtQixFQUNwQjs7QUFFRDs7O0VBSUksdUJ4QjVMVSxFd0I2TFg7O0FDdFNIO0VBQ0UsMEJBQW1CO01BQW5CLHVCQUFtQjtVQUFuQixvQkFBbUI7RUFDbkIscUJBQWE7RUFBYixxQkFBYTtFQUFiLGNBQWE7RUFDYiw2QkFBc0I7RUFBdEIsOEJBQXNCO01BQXRCLDJCQUFzQjtVQUF0Qix1QkFBc0I7RUFDdEIsb0JBQW1CO0VBQ25CLGlCQUFnQixFQXlCakI7RTFCU0c7STBCdkNKO01BT0kscUJBQW9CO01BQ3BCLGlCQUFnQixFQXNCbkIsRUFBQTtFQTlCRDtJMUJ1TkksZ0JDZlU7SXlCNUxWLGV6QndDYTtJeUJ2Q2IsbUJ6QjBKWTtJeUJ6SloscUJBQW9CO0lBQ3BCLGdCQUFlO0lBQ2YsbUJBQWtCLEVBQ25CO0kxQnNCQztNMEJ2Q0o7UTFCeU5NLGdCQ2pCYyxFeUJ2TGpCLEVBQUE7STFCc0JDO00wQnZDSjtRMUI0Tk0sZ0JDcEJvQixFeUJ2THZCLEVBQUE7STFCc0JDO00wQnZDSjtRMUIrTk0sZ0JDdkIwQixFeUJ2TDdCLEVBQUE7STFCc0JDO00wQnZDSjtRMUJrT00sZ0JDMUJnQyxFeUJ2TG5DLEVBQUE7RUFqQkg7SUFtQkksY0FBYTtJQUNiLGFBQVksRUFLYjtJMUJjQztNMEJ2Q0o7UUFzQk0sY0FBYTtRQUNiLGFBQVksRUFFZixFQUFBO0VBekJIO0lBMkJJLG1CQUFrQjtJQUNsQixtQkFBa0IsRUFDbkI7O0FDN0JIO0VBRUksZ0JBQWUsRUFDaEI7O0FBR0g7RTNCK0pJLG1DQUFrQztFQUNsQyxvQ0FBbUM7RTJCOUpyQyxlMUI0Q2U7RTBCM0NmLG1CQUFrQjtFQUNsQix5RnhCcUN3RCxFd0JwQ3pEOztBQU9EOzs7Ozs7O0VBUUksbUJBQWtCLEVBQ25COztBQVRIO0VBV0ksbUIxQnlJTSxFMEJ4SVA7O0FBWkg7RTNCcU1JLGdCQ3pCVSxFMEI1SlQ7RTNCS0Q7STJCckJKO00zQnVNTSxnQkMzQmMsRTBCNUpmLEVBQUE7RTNCS0Q7STJCckJKO00zQjBNTSxnQkM5Qm9CLEUwQjVKckIsRUFBQTtFM0JLRDtJMkJyQko7TTNCNk1NLGdCQ2pDMEIsRTBCNUozQixFQUFBO0UzQktEO0kyQnJCSjtNM0JnTk0saUJDcENpQyxFMEI1SmxDLEVBQUE7O0FBaEJMO0UzQnFNSSxnQkN4QlUsRTBCN0pUO0UzQktEO0kyQnJCSjtNM0J1TU0sZ0JDMUJjLEUwQjdKZixFQUFBO0UzQktEO0kyQnJCSjtNM0IwTU0sZ0JDN0JvQixFMEI3SnJCLEVBQUE7RTNCS0Q7STJCckJKO00zQjZNTSxnQkNoQzBCLEUwQjdKM0IsRUFBQTtFM0JLRDtJMkJyQko7TTNCZ05NLGdCQ25DZ0MsRTBCN0pqQyxFQUFBOztBQWhCTDtFM0JxTUksZ0JDdkJVLEUwQjlKVDtFM0JLRDtJMkJyQko7TTNCdU1NLGdCQ3pCYyxFMEI5SmYsRUFBQTtFM0JLRDtJMkJyQko7TTNCME1NLGdCQzVCb0IsRTBCOUpyQixFQUFBO0UzQktEO0kyQnJCSjtNM0I2TU0sZ0JDL0IwQixFMEI5SjNCLEVBQUE7RTNCS0Q7STJCckJKO00zQmdOTSxnQkNsQ2dDLEUwQjlKakMsRUFBQTs7QUFoQkw7RTNCcU1JLGdCQ3RCVSxFMEIvSlQ7RTNCS0Q7STJCckJKO00zQnVNTSxnQkN4QmMsRTBCL0pmLEVBQUE7RTNCS0Q7STJCckJKO00zQjBNTSxnQkMzQm9CLEUwQi9KckIsRUFBQTtFM0JLRDtJMkJyQko7TTNCNk1NLGdCQzlCMEIsRTBCL0ozQixFQUFBO0UzQktEO0kyQnJCSjtNM0JnTk0sZ0JDakNnQyxFMEIvSmpDLEVBQUE7O0FBaEJMO0UzQnFNSSxnQkNyQlUsRTBCaEtUO0UzQktEO0kyQnJCSjtNM0J1TU0sZ0JDdkJjLEUwQmhLZixFQUFBO0UzQktEO0kyQnJCSjtNM0IwTU0sZ0JDMUJvQixFMEJoS3JCLEVBQUE7RTNCS0Q7STJCckJKO00zQjZNTSxnQkM3QjBCLEUwQmhLM0IsRUFBQTtFM0JLRDtJMkJyQko7TTNCZ05NLGdCQ2hDZ0MsRTBCaEtqQyxFQUFBOztBQWhCTDtFM0JxTUksZ0JDcEJVLEUwQmpLVDtFM0JLRDtJMkJyQko7TTNCdU1NLGdCQ3RCYyxFMEJqS2YsRUFBQTtFM0JLRDtJMkJyQko7TTNCME1NLGdCQ3pCb0IsRTBCaktyQixFQUFBO0UzQktEO0kyQnJCSjtNM0I2TU0sZ0JDNUIwQixFMEJqSzNCLEVBQUE7RTNCS0Q7STJCckJKO00zQmdOTSxnQkMvQmdDLEUwQmpLakMsRUFBQTs7QUFoQkw7RTNCcU1JLGdCQ25CVSxFMEJsS1Q7RTNCS0Q7STJCckJKO00zQnVNTSxnQkNyQmMsRTBCbEtmLEVBQUE7RTNCS0Q7STJCckJKO00zQjBNTSxnQkN4Qm9CLEUwQmxLckIsRUFBQTtFM0JLRDtJMkJyQko7TTNCNk1NLGdCQzNCMEIsRTBCbEszQixFQUFBO0UzQktEO0kyQnJCSjtNM0JnTk0sZ0JDOUJnQyxFMEJsS2pDLEVBQUE7O0FBaEJMO0UzQnFNSSxnQkNoQlUsRTBCcktUO0UzQktEO0kyQnJCSjtNM0J1TU0sZ0JDbEJjLEUwQnJLZixFQUFBO0UzQktEO0kyQnJCSjtNM0IwTU0sZ0JDckJvQixFMEJyS3JCLEVBQUE7RTNCS0Q7STJCckJKO00zQjZNTSxnQkN4QjBCLEUwQnJLM0IsRUFBQTtFM0JLRDtJMkJyQko7TTNCZ05NLGdCQzNCZ0MsRTBCcktqQyxFQUFBOztBQWhCTDtFM0JxTUksZ0JDZlUsRTBCdEtUO0UzQktEO0kyQnJCSjtNM0J1TU0sZ0JDakJjLEUwQnRLZixFQUFBO0UzQktEO0kyQnJCSjtNM0IwTU0sZ0JDcEJvQixFMEJ0S3JCLEVBQUE7RTNCS0Q7STJCckJKO00zQjZNTSxnQkN2QjBCLEUwQnRLM0IsRUFBQTtFM0JLRDtJMkJyQko7TTNCZ05NLGdCQzFCZ0MsRTBCdEtqQyxFQUFBOztBQWhCTDtFM0JxTUksZ0JDZFUsRTBCdktUO0UzQktEO0kyQnJCSjtNM0J1TU0sZ0JDaEJjLEUwQnZLZixFQUFBO0UzQktEO0kyQnJCSjtNM0IwTU0sZ0JDbkJvQixFMEJ2S3JCLEVBQUE7RTNCS0Q7STJCckJKO00zQjZNTSxnQkN0QjBCLEUwQnZLM0IsRUFBQTtFM0JLRDtJMkJyQko7TTNCZ05NLGdCQ3pCZ0MsRTBCdktqQyxFQUFBOztBQWhCTDtFM0JxTUksZ0JDYlUsRTBCeEtUO0UzQktEO0kyQnJCSjtNM0J1TU0sZ0JDZmMsRTBCeEtmLEVBQUE7RTNCS0Q7STJCckJKO00zQjBNTSxnQkNsQm9CLEUwQnhLckIsRUFBQTtFM0JLRDtJMkJyQko7TTNCNk1NLGdCQ3JCMEIsRTBCeEszQixFQUFBO0UzQktEO0kyQnJCSjtNM0JnTk0sZ0JDeEJnQyxFMEJ4S2pDLEVBQUE7O0FBaEJMO0UzQnFNSSxnQkNaVSxFMEJ6S1Q7RTNCS0Q7STJCckJKO00zQnVNTSxnQkNkYyxFMEJ6S2YsRUFBQTtFM0JLRDtJMkJyQko7TTNCME1NLGdCQ2pCb0IsRTBCektyQixFQUFBO0UzQktEO0kyQnJCSjtNM0I2TU0sZ0JDcEIwQixFMEJ6SzNCLEVBQUE7RTNCS0Q7STJCckJKO00zQmdOTSxnQkN2QmdDLEUwQnpLakMsRUFBQTs7QUFoQkw7RTNCcU1JLGdCQ1hVLEUwQjFLVDtFM0JLRDtJMkJyQko7TTNCdU1NLGdCQ2JjLEUwQjFLZixFQUFBO0UzQktEO0kyQnJCSjtNM0IwTU0sZ0JDaEJvQixFMEIxS3JCLEVBQUE7RTNCS0Q7STJCckJKO00zQjZNTSxnQkNuQjBCLEUwQjFLM0IsRUFBQTtFM0JLRDtJMkJyQko7TTNCZ05NLGdCQ3RCZ0MsRTBCMUtqQyxFQUFBOztBQWhCTDtFM0JxTUksZ0JDVlUsRTBCM0tUO0UzQktEO0kyQnJCSjtNM0J1TU0sZ0JDWmMsRTBCM0tmLEVBQUE7RTNCS0Q7STJCckJKO00zQjBNTSxnQkNmb0IsRTBCM0tyQixFQUFBO0UzQktEO0kyQnJCSjtNM0I2TU0sZ0JDbEIwQixFMEIzSzNCLEVBQUE7RTNCS0Q7STJCckJKO00zQmdOTSxnQkNyQmdDLEUwQjNLakMsRUFBQTs7QUFRTDtFM0I2S0ksZ0JDVlU7RTBCaktaLDBCQUFtQjtNQUFuQix1QkFBbUI7VUFBbkIsb0JBQW1CO0VBQ25CLHFCQUFhO0VBQWIscUJBQWE7RUFBYixjQUFhO0VBQ2IsbUIxQndIUSxFMEI3R1Q7RTNCbEJHO0kyQkdKO00zQitLTSxnQkNaYyxFMEJwSm5CLEVBQUE7RTNCbEJHO0kyQkdKO00zQmtMTSxnQkNmb0IsRTBCcEp6QixFQUFBO0UzQmxCRztJMkJHSjtNM0JxTE0sZ0JDbEIwQixFMEJwSi9CLEVBQUE7RTNCbEJHO0kyQkdKO00zQndMTSxnQkNyQmdDLEUwQnBKckMsRUFBQTtFQWZEO0lBTUksaURBQXdDO1lBQXhDLHlDQUF3QyxFQUN6QztFQVBIO0lBU0ksZTFCYmE7STBCY2IsMkJBQTBCLEVBQzNCO0VBWEg7SUFhSSxtQkFBa0IsRUFDbkI7O0FBR0g7RTNCNEpJLGdCQ1ZVO0UwQmhKWixlMUJUZTtFMEJVZixtQjFCd0dRO0UwQnZHUixvQkFBbUI7RUFDbkIsaUJBQWdCLEVBSWpCO0UzQjdCRztJMkJvQko7TTNCOEpNLGdCQ1pjLEUwQnpJbkIsRUFBQTtFM0I3Qkc7STJCb0JKO00zQmlLTSxnQkNmb0IsRTBCekl6QixFQUFBO0UzQjdCRztJMkJvQko7TTNCb0tNLGdCQ2xCMEIsRTBCekkvQixFQUFBO0UzQjdCRztJMkJvQko7TTNCdUtNLGdCQ3JCZ0MsRTBCeklyQyxFQUFBO0VBVEQ7SUFPSSxpQkFBZ0IsRUFDakI7O0FBR0g7RTNCaUpJLGdCQ3RCVTtFMEJ6SFosZTFCbENlO0UwQm1DZixpQkFBZ0I7RUFDaEIsbUIxQjBGUTtFMEJ6RlIsbUJBQWtCO0VBQ2xCLGdCQUFlO0VBQ2YsbUJBQWtCO0VBQ2xCLFlBQVcsRUFPWjtFM0I5Q0c7STJCK0JKO00zQm1KTSxnQkN4QmMsRTBCNUduQixFQUFBO0UzQjlDRztJMkIrQko7TTNCc0pNLGdCQzNCb0IsRTBCNUd6QixFQUFBO0UzQjlDRztJMkIrQko7TTNCeUpNLGdCQzlCMEIsRTBCNUcvQixFQUFBO0UzQjlDRztJMkIrQko7TTNCNEpNLGdCQ2pDZ0MsRTBCNUdyQyxFQUFBO0VBTkM7SUFDRSxnQkFBZSxFQUNoQjtFQUNEO0lBQ0UsWTFCc0JVLEUwQnJCWDs7QUFJRDtFQURGO0lBRUksY0FBYSxFQUVoQixFQUFBOztBQUVEO0VBQ0UscUJBQWE7RUFBYixxQkFBYTtFQUFiLGNBQWE7RUFDYixvQkFBbUIsRUFlcEI7RTNCdkVHO0kyQnNESjtNQUlJLG9CQUFtQixFQWF0QixFQUFBO0VBakJEO0kzQjBISSxnQkNaVTtJMEJyR1YsZTFCakRhO0kwQmtEYixpQkFBZ0I7SUFDaEIsc0JBQXFCLEVBS3RCO0kzQnRFQztNMkJzREo7UTNCNEhNLGdCQ2RjLEUwQjlGakIsRUFBQTtJM0J0RUM7TTJCc0RKO1EzQitITSxnQkNqQm9CLEUwQjlGdkIsRUFBQTtJM0J0RUM7TTJCc0RKO1EzQmtJTSxnQkNwQjBCLEUwQjlGN0IsRUFBQTtJM0J0RUM7TTJCc0RKO1EzQnFJTSxnQkN2QmdDLEUwQjlGbkMsRUFBQTtJQUpDO01BWko7UUFhTSxZMUIxRVE7UTBCMkVSLGVBQWMsRUFFakIsRUFBQTs7QUFHSDtFQUNFLG9CQUFtQixFQUlwQjtFM0I5RUc7STJCeUVKO01BR0ksb0JBQW1CLEVBRXRCLEVBQUE7O0FBRUQ7RTNCZ0dJLGdCQ25CVTtFMEIzRVosbUIxQjZDUTtFMEI1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QVNRLGFBQVM7TUFDVCxlQUFjO01BQ2QsUUFBTztNQUNQLG1CQUFrQixFQUNuQjtJQWJQO01BZVEsa0JBQWlCLEVBQ2xCOztBQzVIUDtFQUdNLG9CN0I4RVcsRTZCN0VaOztBQUpMO0VBT0ksZTdCMEJhO0U2QnpCYixpQkFBZ0IsRUFDakI7O0FBVEg7RUFXSSwwQkFBbUI7TUFBbkIsdUJBQW1CO1VBQW5CLG9CQUFtQixFQUlwQjtFQWZIO0lBYU0sZ0JBQWUsRUFDaEI7O0FBZEw7RUFpQkksd0JBQWU7VUFBZixnQkFBZSxFQUNoQjs7QUFsQkg7RUFvQkksZUFBYztFQUNkLGlCQUFnQjtFQUNoQixZQUFXLEVBQ1o7O0FBdkJIO0VBeUJJLG9CQUFtQixFQUNwQjs7QUExQkg7RUE0QkksaUJBQWdCLEVBQ2pCOztBQUdIO0VBQ0UseUJBQXVCO01BQXZCLHNCQUF1QjtVQUF2Qix3QkFBdUIsRUFTeEI7RUFWRDtJQUlJLGlCQUFnQixFQUNqQjtFQUxIO0lBT0ksaUJBQWdCO0lBQ2hCLGtCQUFpQixFQUNsQjs7QUFHSDtFQUNFLGdCQUFlLEVBQ2hCIiwiZmlsZSI6ImNvbWJpbmVkLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGh0dHA6Ly9tZXllcndlYi5jb20vZXJpYy90b29scy9jc3MvcmVzZXQvXHJcbiAgIHYyLjAgfCAyMDExMDEyNlxyXG4gICBMaWNlbnNlOiBub25lIChwdWJsaWMgZG9tYWluKVxyXG4qL1xyXG5cclxuaHRtbCwgYm9keSwgZGl2LCBzcGFuLCBhcHBsZXQsIG9iamVjdCwgaWZyYW1lLFxyXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwLCBibG9ja3F1b3RlLCBwcmUsXHJcbmEsIGFiYnIsIGFjcm9ueW0sIGFkZHJlc3MsIGJpZywgY2l0ZSwgY29kZSxcclxuZGVsLCBkZm4sIGVtLCBpbWcsIGlucywga2JkLCBxLCBzLCBzYW1wLFxyXG5zbWFsbCwgc3RyaWtlLCBzdHJvbmcsIHN1Yiwgc3VwLCB0dCwgdmFyLFxyXG5iLCB1LCBpLCBjZW50ZXIsXHJcbmRsLCBkdCwgZGQsIG9sLCB1bCwgbGksXHJcbmZpZWxkc2V0LCBmb3JtLCBsYWJlbCwgbGVnZW5kLFxyXG50YWJsZSwgY2FwdGlvbiwgdGJvZHksIHRmb290LCB0aGVhZCwgdHIsIHRoLCB0ZCxcclxuYXJ0aWNsZSwgYXNpZGUsIGNhbnZhcywgZGV0YWlscywgZW1iZWQsXHJcbmZpZ3VyZSwgZmlnY2FwdGlvbiwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCxcclxubWVudSwgbmF2LCBvdXRwdXQsIHJ1YnksIHNlY3Rpb24sIHN1bW1hcnksXHJcbnRpbWUsIG1hcmssIGF1ZGlvLCB2aWRlbyB7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIGZvbnQtc2l6ZTogMTAwJTtcclxuICBmb250OiBpbmhlcml0O1xyXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcclxufVxyXG4vKiBIVE1MNSBkaXNwbGF5LXJvbGUgcmVzZXQgZm9yIG9sZGVyIGJyb3dzZXJzICovXHJcbmFydGljbGUsIGFzaWRlLCBkZXRhaWxzLCBmaWdjYXB0aW9uLCBmaWd1cmUsXHJcbmZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1lbnUsIG5hdiwgc2VjdGlvbiB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuYm9keSB7XHJcbiAgbGluZS1oZWlnaHQ6IDE7XHJcbn1cclxub2wsIHVsIHtcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG59XHJcbmJsb2NrcXVvdGUsIHEge1xyXG4gIHF1b3Rlczogbm9uZTtcclxufVxyXG5ibG9ja3F1b3RlOmJlZm9yZSwgYmxvY2txdW90ZTphZnRlcixcclxucTpiZWZvcmUsIHE6YWZ0ZXIge1xyXG4gIGNvbnRlbnQ6ICcnO1xyXG4gIGNvbnRlbnQ6IG5vbmU7XHJcbn1cclxudGFibGUge1xyXG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XHJcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XHJcbn1cclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuQGtleWZyYW1lcyBmbGFzaCB7XG4gIDAlLFxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA0KTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9IH1cblxuQGtleWZyYW1lcyBwdWxzZSB7XG4gIDAlLFxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG4gIDMwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpOyB9IH1cblxuQGtleWZyYW1lcyBzaGFrZSB7XG4gIDAlLFxuICA1MCUsXG4gIDg1JSxcbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuICA1NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwcHgsIDAsIDApOyB9XG4gIDY1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTVweCwgMCwgMCk7IH1cbiAgNzUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTsgfVxuICA2MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjBweCwgMCwgMCk7IH1cbiAgNzAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDE1cHgsIDAsIDApOyB9XG4gIDgwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTsgfSB9XG5cbkBrZXlmcmFtZXMgdGFkYS1wYXVzZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7IH1cbiAgNSUsXG4gIDEwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTsgfVxuICAxNSUsXG4gIDI1JSxcbiAgMzUlLFxuICA0NSUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUzZCgwLCAwLCAxLCAzZGVnKTsgfVxuICAyMCUsXG4gIDMwJSxcbiAgNDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpOyB9XG4gIDUwJSxcbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOyB9IH1cblxuQGtleWZyYW1lcyB0ZWV0ZXItcmlnaHQge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7IH1cbiAgNSUsXG4gIDk1JSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMjBkZWcpOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApOyB9IH1cblxuQGtleWZyYW1lcyB1cGRhdGluZyB7XG4gIDAlLFxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAuNTsgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IC4yNTsgfSB9XG5cbi5iYWRnZSB7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzkzOTE5MTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC4wNWVtO1xuICBtYXJnaW4tbGVmdDogLjI1ZW07XG4gIHBhZGRpbmc6IC4yNWVtIC40NWVtIC4yNWVtIC41ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHZlcnRpY2FsLWFsaWduOiAxcHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgIC5iYWRnZSB7XG4gICAgICBmb250LXNpemU6IDEwcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmJhZGdlIHtcbiAgICAgIGZvbnQtc2l6ZTogMTFweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuYmFkZ2Uge1xuICAgICAgZm9udC1zaXplOiAxMXB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuYmFkZ2Uge1xuICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgQG1lZGlhIHByaW50IHtcbiAgICAuYmFkZ2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwO1xuICAgICAgY29sb3I6ICMwMDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogLjFlbTtcbiAgICAgIHBhZGRpbmctdG9wOiAuMWVtOyB9IH1cbiAgLmJhZGdlOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIGRkID4gLmJhZGdlOmZpcnN0LWNoaWxkIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAtLjNlbTsgfVxuICAuYmFkZ2UtLWNvbXBsZXRlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2NiODc4OyB9XG4gIC5iYWRnZS0tZXJyb3Ige1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlYTNmM2Y7IH1cbiAgLmJhZGdlLS1leHBpcmVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjOyB9XG4gIC5iYWRnZS0tZmVhdHVyZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGE3ZTA7IH1cbiAgLmJhZGdlLS1wdiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzVhNjA2NjtcbiAgICBjb2xvcjogIzVhNjA2NjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsaW5lLWhlaWdodDogMS4wNjI1ZW07XG4gICAgcGFkZGluZzogLjI1ZW07IH1cbiAgICBkZCA+IC5iYWRnZS0tcHY6Zmlyc3QtY2hpbGQge1xuICAgICAgdmVydGljYWwtYWxpZ246IGluaGVyaXQ7IH1cbiAgLmJhZGdlLS1zcGVjaWFsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjY2OyB9XG5cbi5uZXctYmFkZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAxZjQ1O1xuICBjb2xvcjogI2ZmZjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuM2VtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAuNGVtIC44ZW07IH1cbiAgLm5ldy1iYWRnZS0tc3BlY2lhbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZTBkODtcbiAgICBjb2xvcjogIzAwMWY0NTsgfVxuXG4uYnV0dG9uIHtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhN2UwO1xuICBib3JkZXI6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGNvbG9yOiAjZmZmO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6IFwiUHJveGltYSBOb3ZhIFcwMVwiLCBcIkhlbHZldGljYSBOZXVlXCIsIENhbGlicmksIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDAuOTNlbSAxLjY3ZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0cmFuc2l0aW9uOiBjb2xvciAuMnMgZWFzZS1vdXQsIGJvcmRlciAuMnMgZWFzZS1vdXQsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2Utb3V0O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAuYnV0dG9uIHtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAuYnV0dG9uIHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuYnV0dG9uIHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmJ1dHRvbiB7XG4gICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuICAuYnV0dG9uOjpzZWxlY3Rpb24ge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIC5idXR0b246YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA1YjdhOyB9XG4gIC5idXR0b246Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6IDAgMTBweCAxMHB4IC0xMHB4IHJnYmEoMCwgMCwgMCwgMC4zNSk7IH1cbiAgLmJ1dHRvbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNmRiYTsgfVxuXG4uYnV0dG9uLS1kaXNjcmV0aW9uYXJ5IHtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICMwMGE3ZTA7XG4gIHBhZGRpbmc6IDEuMmVtIDEuOTNlbTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgLmJ1dHRvbi0tZGlzY3JldGlvbmFyeSB7XG4gICAgICBmb250LXNpemU6IDExcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmJ1dHRvbi0tZGlzY3JldGlvbmFyeSB7XG4gICAgICBmb250LXNpemU6IDEycHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmJ1dHRvbi0tZGlzY3JldGlvbmFyeSB7XG4gICAgICBmb250LXNpemU6IDEycHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5idXR0b24tLWRpc2NyZXRpb25hcnkge1xuICAgICAgZm9udC1zaXplOiAxM3B4OyB9IH1cbiAgLmJ1dHRvbi0tZGlzY3JldGlvbmFyeTpmb2N1cyB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB0ZXh0LXNoYWRvdzogMCAycHggM3B4IHJnYmEoMCwgMCwgMCwgMC4zNSk7IH1cbiAgLmJ1dHRvbi0tZGlzY3JldGlvbmFyeTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICMwMDZkYmE7IH1cbiAgLmJ1dHRvbi0tZGlzY3JldGlvbmFyeS5idXR0b24tLXJldmVyc2VkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5idXR0b24tLWRpc2NyZXRpb25hcnkuYnV0dG9uLS1yZXZlcnNlZDpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiAjMDBhN2UwOyB9XG5cbi5idXR0b24tLXJldmVyc2VkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgY29sb3I6ICMwMGE3ZTA7IH1cbiAgLmJ1dHRvbi0tcmV2ZXJzZWQ6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGNvbG9yOiAjMDA1YjdhOyB9XG4gIC5idXR0b24tLXJldmVyc2VkOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIG91dGxpbmU6IDJweCBzb2xpZCAjMDBhN2UwOyB9XG4gIC5idXR0b24tLXJldmVyc2VkOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGNvbG9yOiAjMDA2ZGJhOyB9XG5cbi5idXR0b24tLXNwZWNpYWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjY2O1xuICBjb2xvcjogI2ZmZjsgfVxuICAuYnV0dG9uLS1zcGVjaWFsOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmVkO1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5idXR0b24tLXNwZWNpYWw6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzUyNTI7XG4gICAgY29sb3I6ICNmZmY7IH1cblxuLmJ1dHRvbi0tc3Ryb2tlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDJweCBzb2xpZCAjMDBhN2UwO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjb2xvcjogIzAwYTdlMDtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoMC45M2VtIC0gMnB4KTtcbiAgcGFkZGluZy10b3A6IGNhbGMoMC45M2VtIC0gMnB4KTsgfVxuICAuYnV0dG9uLS1zdHJva2VkOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjMDA1YjdhO1xuICAgIGNvbG9yOiAjMDA1YjdhOyB9XG4gIC5idXR0b24tLXN0cm9rZWQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogIzAwNmRiYTtcbiAgICBjb2xvcjogIzAwNmRiYTsgfVxuICAuYnV0dG9uLS1zdHJva2VkLmJ1dHRvbi0tcmV2ZXJzZWQge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICNmZmY7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICAuYnV0dG9uLS1zdHJva2VkLmJ1dHRvbi0tcmV2ZXJzZWQ6YWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiAjY2NjY2NjO1xuICAgICAgY29sb3I6ICNjY2NjY2M7IH1cbiAgICAuYnV0dG9uLS1zdHJva2VkLmJ1dHRvbi0tcmV2ZXJzZWQ6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItY29sb3I6ICMwMGE3ZTA7XG4gICAgICBjb2xvcjogIzAwYTdlMDsgfVxuXG4uYnV0dG9uLXJvdW5kZWQge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGFsbDogdW5zZXQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDFmNDU7XG4gIGJvcmRlci1yYWRpdXM6IDMwcHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNvbG9yOiAjZmZmO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xuICBsaW5lLWhlaWdodDogMS41ZW07XG4gIHBhZGRpbmc6IDAuN2VtIDEuNzVlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLW91dDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgLmJ1dHRvbi1yb3VuZGVkIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAuYnV0dG9uLXJvdW5kZWQge1xuICAgICAgZm9udC1zaXplOiAxN3B4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5idXR0b24tcm91bmRlZCB7XG4gICAgICBmb250LXNpemU6IDE3cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5idXR0b24tcm91bmRlZCB7XG4gICAgICBmb250LXNpemU6IDE4cHg7IH0gfVxuICAuYnV0dG9uLXJvdW5kZWQ6ZGlzYWJsZWQsIC5idXR0b24tcm91bmRlZC5kaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAuYnV0dG9uLXJvdW5kZWQ6Zm9jdXMsIC5idXR0b24tcm91bmRlZDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzM2ZDJiNjsgfVxuXG4uYnV0dG9uLXJvdW5kZWQtLXMge1xuICBmb250LXNpemU6IDExcHg7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgIC5idXR0b24tcm91bmRlZC0tcyB7XG4gICAgICBmb250LXNpemU6IDExcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmJ1dHRvbi1yb3VuZGVkLS1zIHtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuYnV0dG9uLXJvdW5kZWQtLXMge1xuICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuYnV0dG9uLXJvdW5kZWQtLXMge1xuICAgICAgZm9udC1zaXplOiAxM3B4OyB9IH1cblxuLmJ1dHRvbi1yb3VuZGVkLS1zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAycHggc29saWQgIzAwMWY0NTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY29sb3I6ICMwMDFmNDU7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDAuN2VtIC0gMnB4KTtcbiAgcGFkZGluZy10b3A6IGNhbGMoMC43ZW0gLSAycHgpO1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgLjJzIGVhc2Utb3V0OyB9XG4gIC5idXR0b24tcm91bmRlZC0tc2Vjb25kYXJ5OmZvY3VzLCAuYnV0dG9uLXJvdW5kZWQtLXNlY29uZGFyeTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjMzZkMmI2OyB9XG5cbi5idXR0b24tbm90ZSB7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgY29sb3I6ICM5MzkxOTE7XG4gIHBhZGRpbmctbGVmdDogMS41ZW07IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgIC5idXR0b24tbm90ZSB7XG4gICAgICBmb250LXNpemU6IDExcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmJ1dHRvbi1ub3RlIHtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuYnV0dG9uLW5vdGUge1xuICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuYnV0dG9uLW5vdGUge1xuICAgICAgZm9udC1zaXplOiAxM3B4OyB9IH1cbiAgLmJ1dHRvbi1ub3RlW2RhdGEtYmVoYXZpb3JdLCAuYnV0dG9uLW5vdGVbaHJlZl0ge1xuICAgIGNvbG9yOiAjMDBhN2UwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAuMnMgZWFzZS1vdXQ7IH1cbiAgICAuYnV0dG9uLW5vdGVbZGF0YS1iZWhhdmlvcl06aG92ZXIsIC5idXR0b24tbm90ZVtocmVmXTpob3ZlciB7XG4gICAgICBjb2xvcjogIzAwNmRiYTsgfVxuXG4uYnV0dG9uLW5vdGUtY29udGFpbmVyIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDsgfVxuXG4uYnV0dG9uLS1jZW50ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmJ1dHRvbi0tY2VudGVyIHtcbiAgICAgIG1heC13aWR0aDogMzcwcHg7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi5idXR0b24tLWZ1bGwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmJ1dHRvbi0taGFzLWxvYWRlciB7XG4gIC8qIHNhc3MtbGludDpkaXNhYmxlLWFsbFxyXG5cclxuICBleGFtcGxlOlxyXG5cclxuICA8YnV0dG9uIGNsYXNzPVwiYnV0dG9uIGJ1dHRvbi0tbG9hZCBsb2FkaW5nXCI+XHJcbiAgICA8c3BhbiBjbGFzcz1cInRleHRcIj5cclxuICAgICAgU3VibWl0XHJcbiAgICA8L3NwYW4+XHJcbiAgICA8c3BhbiBjbGFzcz1cImVsbGlwc2lzLWxvYWRlclwiPlxyXG4gICAgICA8c3BhbiBjbGFzcz1cImRvdFwiPjwvc3Bhbj5cclxuICAgICAgPHNwYW4gY2xhc3M9XCJkb3RcIj48L3NwYW4+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwiZG90XCI+PC9zcGFuPlxyXG4gICAgICA8c3BhbiBjbGFzcz1cInRleHRcIj5Mb2FkaW5nPC9zcGFuPlxyXG4gICAgPC9zcGFuPlxyXG4gIDwvYnV0dG9uPlxyXG5cclxuICBzYXNzLWxpbnQ6ZW5hYmxlLWFsbCAqLyB9XG4gIC5idXR0b24tLWhhcy1sb2FkZXIgLnRleHQge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTsgfVxuICAuYnV0dG9uLS1oYXMtbG9hZGVyIC5lbGxpcHNpcy1sb2FkZXIge1xuICAgIGJvdHRvbTogMDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKSwgdHJhbnNmb3JtIDAuNXMgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpOyB9XG5cbi5idXR0b24tLWhhcy1sb2FkZXIubG9hZGluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2M7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmJ1dHRvbi0taGFzLWxvYWRlci5sb2FkaW5nIC50ZXh0IHtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIC5idXR0b24tLWhhcy1sb2FkZXIubG9hZGluZyAuZWxsaXBzaXMtbG9hZGVyIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cblxuLmJ1dHRvbi0taWNvbiB7XG4gIHBhZGRpbmctbGVmdDogMi42N2VtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmJ1dHRvbi0taWNvbiAudWktaWNvbiB7XG4gICAgYm90dG9tOiAwO1xuICAgIGhlaWdodDogMi42N2VtO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogYXV0bztcbiAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDIuNjdlbTsgfVxuXG4uYnV0dG9uLS1sIHtcbiAgcGFkZGluZy1ib3R0b206IDEuMTNlbTtcbiAgcGFkZGluZy10b3A6IDEuMmVtOyB9XG5cbi5idXR0b24tLXJvdW5kZWQtY29ybmVycy1sIHtcbiAgYm9yZGVyLXJhZGl1czogOXB4OyB9XG5cbi5idXR0b24tLXJvdW5kZWQtY29ybmVycy1tIHtcbiAgYm9yZGVyLXJhZGl1czogNnB4OyB9XG5cbi5idXR0b24tLXJvdW5kZWQtY29ybmVycy1zIHtcbiAgYm9yZGVyLXJhZGl1czogM3B4OyB9XG5cbi5idXR0b24tLXMge1xuICBmb250LXNpemU6IDExcHg7XG4gIHBhZGRpbmc6IC41NWVtIDEuMTVlbTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgLmJ1dHRvbi0tcyB7XG4gICAgICBmb250LXNpemU6IDExcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmJ1dHRvbi0tcyB7XG4gICAgICBmb250LXNpemU6IDEycHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmJ1dHRvbi0tcyB7XG4gICAgICBmb250LXNpemU6IDEycHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5idXR0b24tLXMge1xuICAgICAgZm9udC1zaXplOiAxM3B4OyB9IH1cbiAgLmJ1dHRvbi0tcy5idXR0b24tLWljb24gLnVpLWljb24ge1xuICAgIGhlaWdodDogMS44NWVtO1xuICAgIHdpZHRoOiAxLjg1ZW07IH1cbiAgLmJ1dHRvbi0tcy5idXR0b24tLXN0cm9rZWQge1xuICAgIHBhZGRpbmctYm90dG9tOiAuNGVtO1xuICAgIHBhZGRpbmctdG9wOiAuNGVtOyB9XG5cbi5idXR0b24tLXN1Y2Nlc3Mge1xuICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLmJ1dHRvbi0tc3VjY2VzcyAudWktaWNvbiB7XG4gICAgZmlsbDogIzAwYTdlMDtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAyZW07IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKSBhbmQgKG1heC13aWR0aDogMzg5cHgpIHtcbiAgLmJ1dHRvbi0td2lkZSB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM5MHB4KSB7XG4gIC5idXR0b24tLXdpZGUge1xuICAgIG1pbi13aWR0aDogMzUwcHg7IH0gfVxuXG4uYnV0dG9uW2Rpc2FibGVkXSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2M7XG4gIGNvbG9yOiAjZmZmO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gIC5idXR0b25bZGlzYWJsZWRdLmJ1dHRvbi0tZGlzY3JldGlvbmFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICNjY2M7IH1cbiAgLmJ1dHRvbltkaXNhYmxlZF0uYnV0dG9uLS1yZXZlcnNlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNjA2NjtcbiAgICBjb2xvcjogIzkzOTE5MTsgfVxuICAuYnV0dG9uW2Rpc2FibGVkXS5idXR0b24tLXN0cm9rZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICNjY2M7XG4gICAgY29sb3I6ICNjY2M7IH1cblxuLmJ1dHRvbi5lcnJvciB7XG4gIGFuaW1hdGlvbjogc2hha2UgMXMgZWFzZS1vdXQgZm9yd2FyZHM7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYTNmM2Y7XG4gIGNvbG9yOiAjZmZmOyB9XG4gIC5idXR0b24uZXJyb3I6YWN0aXZlLCAuYnV0dG9uLmVycm9yOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWEzZjNmOyB9XG4gIC5idXR0b24uZXJyb3IuYnV0dG9uLS1kaXNjcmV0aW9uYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogI2VhM2YzZjsgfVxuICAuYnV0dG9uLmVycm9yLmJ1dHRvbi0tc3Ryb2tlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAycHggc29saWQgI2VhM2YzZjtcbiAgICBjb2xvcjogI2VhM2YzZjsgfVxuXG4uY2FyZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmY0ZjU7XG4gIGNvbG9yOiAjNjE2MDYwO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBtYXgtd2lkdGg6IDY1MHB4O1xuICBtaW4taGVpZ2h0OiA5MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICBwYWRkaW5nLXRvcDogMzBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjUwcHgpIHtcbiAgICAuY2FyZCB7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfSB9XG4gIC5jYXJkLS1mdWxsLXdpZHRoIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gICAgcGFkZGluZy10b3A6IDQwcHg7IH1cbiAgICAuY2FyZC0tZnVsbC13aWR0aCBwIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgbWF4LXdpZHRoOiAzNWVtOyB9XG4gIC5jYXJkLS10aWdodC10b3Age1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLmNhcmQtLXdpdGgtaWNvbiB7XG4gICAgbWFyZ2luLXRvcDogMzVweDsgfVxuICAuY2FyZCBwIHtcbiAgICBsaW5lLWhlaWdodDogMS41ZW07IH1cbiAgLmNhcmQgLmJ0bixcbiAgLmNhcmQgLmJ1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogMS43ZW07IH1cbiAgLmNhcmQgLmhlYWRpbmcge1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBjb2xvcjogIzYxNjA2MDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIG1hcmdpbi1ib3R0b206IC43ZW07IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgICAuY2FyZCAuaGVhZGluZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgICAgLmNhcmQgLmhlYWRpbmcge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5jYXJkIC5oZWFkaW5nIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLmNhcmQgLmhlYWRpbmcge1xuICAgICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuICAuY2FyZCAuaGVhZGluZy1sIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgY29sb3I6ICM1YTYwNjY7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBtYXJnaW4tYm90dG9tOiAuOGVtOyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgICAgLmNhcmQgLmhlYWRpbmctbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTlweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgICAgLmNhcmQgLmhlYWRpbmctbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLmNhcmQgLmhlYWRpbmctbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5jYXJkIC5oZWFkaW5nLWwge1xuICAgICAgICBmb250LXNpemU6IDI0cHg7IH0gfVxuICAuY2FyZCAucHJlLWhlYWRpbmcge1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBjb2xvcjogIzkzOTE5MTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjFlbTtcbiAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgICAuY2FyZCAucHJlLWhlYWRpbmcge1xuICAgICAgICBmb250LXNpemU6IDEzcHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAgIC5jYXJkIC5wcmUtaGVhZGluZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLmNhcmQgLnByZS1oZWFkaW5nIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLmNhcmQgLnByZS1oZWFkaW5nIHtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4OyB9IH1cbiAgLnJhZGlvLWFuZC1sYWJlbCArIC5jYXJkIHtcbiAgICBtYXJnaW4tdG9wOiAxNnB4OyB9XG4gIC5jYXJkIC5zZWFsLWljb24ge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzNjYjg3OCwgIzI5N2U1Mik7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjhweCwgMCk7XG4gICAgd2lkdGg6IDUwcHg7IH1cbiAgICAuY2FyZCAuc2VhbC1pY29uIC5jaGVjayB7XG4gICAgICBmaWxsOiAjZmZmO1xuICAgICAgaGVpZ2h0OiAyMnB4O1xuICAgICAgd2lkdGg6IDIycHg7IH1cbiAgLmNhcmQgLnNob3dyb29tLW5vdGUge1xuICAgIGZvbnQtc2l6ZTogMTJweDsgfVxuXG4uY2FyZC0tZXh0cmEtcGFkZGluZyB7XG4gIHBhZGRpbmctdG9wOiA0MHB4OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuY2FyZC0tZXh0cmEtcGFkZGluZyB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogNzBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDcwcHg7XG4gICAgICBwYWRkaW5nLXRvcDogNTBweDsgfSB9XG5cbi5jYXJkLS1zdHJva2VkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogNHB4IHNvbGlkICNmMmY0ZjU7IH1cblxuLmNhcmQtLXRpZ2h0IHtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gIHBhZGRpbmctbGVmdDogMjVweDtcbiAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgcGFkZGluZy10b3A6IDE1cHg7IH1cblxuLmNhcmQud2FybmluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmU3ZTk7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1hcmdpbi10b3A6IDEuNWVtOyB9XG4gIC5jYXJkLndhcm5pbmcgcCB7XG4gICAgZm9udC1zaXplOiAxM3B4OyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgICAgLmNhcmQud2FybmluZyBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgICAuY2FyZC53YXJuaW5nIHAge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5jYXJkLndhcm5pbmcgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5jYXJkLndhcm5pbmcgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDsgfSB9XG5cbi5zaG93cm9vbS1waWNrdXAtY2FyZCB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlcjogc29saWQgNHB4ICNmMmY0ZjU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWFyZ2luLWJvdHRvbTogMS41ZW07XG4gIHBhZGRpbmctYm90dG9tOiAxLjdlbTtcbiAgcGFkZGluZy1sZWZ0OiAxLjdlbTtcbiAgcGFkZGluZy1yaWdodDogMS43ZW07XG4gIHBhZGRpbmctdG9wOiAxLjllbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuc2hvd3Jvb20tcGlja3VwLWNhcmQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMy43NWVtOyB9IH1cbiAgLnNob3dyb29tLXBpY2t1cC1jYXJkIC5oZWFkaW5nIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgY29sb3I6ICMyZTMxMzQ7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBtYXJnaW4tYm90dG9tOiAuNmVtOyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgICAgLnNob3dyb29tLXBpY2t1cC1jYXJkIC5oZWFkaW5nIHtcbiAgICAgICAgZm9udC1zaXplOiAxOXB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgICAuc2hvd3Jvb20tcGlja3VwLWNhcmQgLmhlYWRpbmcge1xuICAgICAgICBmb250LXNpemU6IDIwcHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5zaG93cm9vbS1waWNrdXAtY2FyZCAuaGVhZGluZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5zaG93cm9vbS1waWNrdXAtY2FyZCAuaGVhZGluZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDsgfSB9XG4gIC5zaG93cm9vbS1waWNrdXAtY2FyZCAubWVzc2FnZSB7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS44ZW07IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgICAuc2hvd3Jvb20tcGlja3VwLWNhcmQgLm1lc3NhZ2Uge1xuICAgICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAgIC5zaG93cm9vbS1waWNrdXAtY2FyZCAubWVzc2FnZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLnNob3dyb29tLXBpY2t1cC1jYXJkIC5tZXNzYWdlIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLnNob3dyb29tLXBpY2t1cC1jYXJkIC5tZXNzYWdlIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cblxuLmNhcnQtc3VtbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuY2FydC1zdW1tYXJ5IHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHotaW5kZXg6IDEwOyB9XG4gICAgICAuY2FydC1zdW1tYXJ5IC5jaGFyZ2VzLFxuICAgICAgLmNhcnQtc3VtbWFyeSAuY3JlZGl0LFxuICAgICAgLmNhcnQtc3VtbWFyeSAuZGlzY291bnQsXG4gICAgICAuY2FydC1zdW1tYXJ5IC5wcm9kdWN0cy1lbXB0eS1jYXJ0LFxuICAgICAgLmNhcnQtc3VtbWFyeSAucHJvZHVjdHMtdGFibGUsXG4gICAgICAuY2FydC1zdW1tYXJ5IC5wcm9tby1kaXNjbGFpbWVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgLmNhcnQtc3VtbWFyeS5lbXB0eSwgLmNhcnQtc3VtbWFyeS5vcGVuIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvOyB9XG4gICAgICAgIC5jYXJ0LXN1bW1hcnkuZW1wdHkgLnByb2R1Y3RzLWNvbnRhaW5lciwgLmNhcnQtc3VtbWFyeS5vcGVuIC5wcm9kdWN0cy1jb250YWluZXIge1xuICAgICAgICAgIGZsZXgtZ3JvdzogMTsgfVxuICAgICAgLmNhcnQtc3VtbWFyeS5lbXB0eSAuaGVhZGVyIHtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0OyB9XG4gICAgICAuY2FydC1zdW1tYXJ5LmVtcHR5IC5wcm9kdWN0cy1jb250YWluZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgICAgLmNhcnQtc3VtbWFyeS5lbXB0eSAucHJvZHVjdHMtZW1wdHktY2FydCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAuY2FydC1zdW1tYXJ5Lm9wZW4gLmFoZW0ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgICAuY2FydC1zdW1tYXJ5Lm9wZW4gLmNoZXZyb24tdGlnaHQge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9XG4gICAgICAuY2FydC1zdW1tYXJ5Lm9wZW4gLmNoYXJnZXMge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgLmNhcnQtc3VtbWFyeS5vcGVuIC5jcmVkaXQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgICAuY2FydC1zdW1tYXJ5Lm9wZW4gLmRpc2NvdW50IHtcbiAgICAgICAgZGlzcGxheTogZmxleDsgfVxuICAgICAgLmNhcnQtc3VtbWFyeS5vcGVuIC5wcm9kdWN0cy10YWJsZSB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gICAgICAuY2FydC1zdW1tYXJ5Lm9wZW4gLnByb21vLWRpc2NsYWltZXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbi5jYXJ0LXN1bW1hcnkuZW1wdHkgLmNoYXJnZXMsIC5jYXJ0LXN1bW1hcnkuZW1wdHkub3BlbiAuY2hhcmdlcyB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmNhcnQtc3VtbWFyeSAuYWhlbSB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmNhcnQtc3VtbWFyeSAuYWhlbSB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2Q5ZDlkOTtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBwYWRkaW5nOiAyMHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5jYXJ0LXN1bW1hcnkgLmFoZW0ge1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4OyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkOWQ5ZDk7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jYXJ0LXN1bW1hcnkgLmNoYXJnZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGxlZnQ6IDRweDtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICByaWdodDogNHB4OyB9IH1cblxuLmNhcnQtc3VtbWFyeSAuY2hhcmdlcy5wZW5kaW5nIHtcbiAgYW5pbWF0aW9uOiB1cGRhdGluZyAycyBlYXNlLW91dCBpbmZpbml0ZTsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jYXJ0LXN1bW1hcnkgLmNoYXJnZXMuZ3JhbmQtdG90YWwtb25seSAuZ3JhbmQtdG90YWwge1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgbWFyZ2luLXRvcDogMDsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcy50YXgtaXMtaW5jbHVkZWQgLmxpbmUtaXRlbTpudGgtY2hpbGQoMSkge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NiU7IH1cbiAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcy50YXgtaXMtaW5jbHVkZWQgLmxpbmUtaXRlbTpudGgtY2hpbGQoMikge1xuICAgIG1hcmdpbi1yaWdodDogMTYuNjYlOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyAua2V5IHtcbiAgICBjb2xvcjogIzkzOTE5MTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbGV4LXNocmluazogMDsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyAua2V5IHtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gICAgY29sb3I6ICM2MTYwNjA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC4wOGVtO1xuICAgIG1hcmdpbi10b3A6IDZweDtcbiAgICBvcmRlcjogMjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyAua2V5IHtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5jYXJ0LXN1bW1hcnkgLmNoYXJnZXMgLmtleSB7XG4gICAgICBmb250LXNpemU6IDExcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuY2FydC1zdW1tYXJ5IC5jaGFyZ2VzIC5rZXkge1xuICAgICAgZm9udC1zaXplOiAxMXB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5jYXJ0LXN1bW1hcnkgLmNoYXJnZXMgLmtleSB7XG4gICAgICBmb250LXNpemU6IDEycHg7IH0gfVxuXG4uY2FydC1zdW1tYXJ5IC5jaGFyZ2VzIC5ncmFuZC10b3RhbCxcbi5jYXJ0LXN1bW1hcnkgLmNoYXJnZXMgLmxpbmUtaXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuY2FydC1zdW1tYXJ5IC5jaGFyZ2VzIC5ncmFuZC10b3RhbCxcbiAgICAuY2FydC1zdW1tYXJ5IC5jaGFyZ2VzIC5saW5lLWl0ZW0ge1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApIGFuZCAobWF4LXdpZHRoOiA3NjdweCkgYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyAuZ3JhbmQtdG90YWwsXG4gICAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyAubGluZS1pdGVtIHtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAuY2FydC1zdW1tYXJ5IC5jaGFyZ2VzIC5ncmFuZC10b3RhbCxcbiAgICAuY2FydC1zdW1tYXJ5IC5jaGFyZ2VzIC5saW5lLWl0ZW0ge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKSBhbmQgKG1heC13aWR0aDogNzY3cHgpIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5jYXJ0LXN1bW1hcnkgLmNoYXJnZXMgLmdyYW5kLXRvdGFsLFxuICAgIC5jYXJ0LXN1bW1hcnkgLmNoYXJnZXMgLmxpbmUtaXRlbSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApIGFuZCAobWF4LXdpZHRoOiA3NjdweCkgYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5jYXJ0LXN1bW1hcnkgLmNoYXJnZXMgLmdyYW5kLXRvdGFsLFxuICAgIC5jYXJ0LXN1bW1hcnkgLmNoYXJnZXMgLmxpbmUtaXRlbSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyAuZ3JhbmQtdG90YWwsXG4gICAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyAubGluZS1pdGVtIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuY2FydC1zdW1tYXJ5IC5jaGFyZ2VzIC5ncmFuZC10b3RhbCAua2V5LFxuICAuY2FydC1zdW1tYXJ5IC5jaGFyZ2VzIC5ncmFuZC10b3RhbCAudmFsdWUge1xuICAgIGNvbG9yOiAjMTYxYTFkO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jYXJ0LXN1bW1hcnkgLmNoYXJnZXMgLmdyYW5kLXRvdGFsIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2Q5ZDlkOTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyAuZ3JhbmQtdG90YWwgLmtleSxcbiAgICAuY2FydC1zdW1tYXJ5IC5jaGFyZ2VzIC5ncmFuZC10b3RhbCAudmFsdWUge1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogLjFlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogLjFlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lOyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAgIC5jYXJ0LXN1bW1hcnkgLmNoYXJnZXMgLmdyYW5kLXRvdGFsIC5rZXksXG4gICAgICAuY2FydC1zdW1tYXJ5IC5jaGFyZ2VzIC5ncmFuZC10b3RhbCAudmFsdWUge1xuICAgICAgICBmb250LXNpemU6IDE5cHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgICAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyAuZ3JhbmQtdG90YWwgLmtleSxcbiAgICAgIC5jYXJ0LXN1bW1hcnkgLmNoYXJnZXMgLmdyYW5kLXRvdGFsIC52YWx1ZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAuY2FydC1zdW1tYXJ5IC5jaGFyZ2VzIC5ncmFuZC10b3RhbCAua2V5LFxuICAgICAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyAuZ3JhbmQtdG90YWwgLnZhbHVlIHtcbiAgICAgICAgZm9udC1zaXplOiAyMXB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuY2FydC1zdW1tYXJ5IC5jaGFyZ2VzIC5ncmFuZC10b3RhbCAua2V5LFxuICAgICAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyAuZ3JhbmQtdG90YWwgLnZhbHVlIHtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4OyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY2FydC1zdW1tYXJ5IC5jaGFyZ2VzIC5saW5lLWl0ZW0ge1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiAzMy4zMyU7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuY2FydC1zdW1tYXJ5IC5jaGFyZ2VzIC52YWx1ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxleDogMTtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyAudmFsdWUge1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBjb2xvcjogIzE2MWExZDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIG9yZGVyOiAxO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAuY2FydC1zdW1tYXJ5IC5jaGFyZ2VzIC52YWx1ZSB7XG4gICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAuY2FydC1zdW1tYXJ5IC5jaGFyZ2VzIC52YWx1ZSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuY2FydC1zdW1tYXJ5IC5jaGFyZ2VzIC52YWx1ZSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyAudmFsdWUge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cblxuLmNhcnQtc3VtbWFyeSAuY2hhcmdlcyAudmFsdWUgLmJhZGdlIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjMyNWVtO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0ycHgsIDApOyB9XG5cbi5jYXJ0LXN1bW1hcnkgLmNoZXZyb24tdGlnaHQge1xuICBmaWxsOiAjMDBhN2UwO1xuICBoZWlnaHQ6IDhweDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycyBlYXNlLW91dDtcbiAgd2lkdGg6IDhweDsgfVxuXG4uY2FydC1zdW1tYXJ5IC5kaXNjb3VudCB7XG4gIHBhZGRpbmc6IDIwcHggMjBweCAwOyB9XG4gIC5jYXJ0LXN1bW1hcnkgLmRpc2NvdW50IC5saW5lLWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5jYXJ0LXN1bW1hcnkgLmRpc2NvdW50IHtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZDlkOWQ5O1xuICAgICAgcGFkZGluZy10b3A6IDIwcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmNhcnQtc3VtbWFyeSAuZGlzY291bnQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkOWQ5ZDk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgcGFkZGluZy10b3A6IDEwcHg7IH0gfVxuICAuY2FydC1zdW1tYXJ5IC5kaXNjb3VudCBkbCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gYXV0bzsgfVxuICAuY2FydC1zdW1tYXJ5IC5kaXNjb3VudCBkZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAuY2FydC1zdW1tYXJ5IC5kaXNjb3VudCAua2V5LFxuICAuY2FydC1zdW1tYXJ5IC5kaXNjb3VudCAudmFsdWUge1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBjb2xvcjogIzYxNjA2MDsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAgIC5jYXJ0LXN1bW1hcnkgLmRpc2NvdW50IC5rZXksXG4gICAgICAuY2FydC1zdW1tYXJ5IC5kaXNjb3VudCAudmFsdWUge1xuICAgICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAgIC5jYXJ0LXN1bW1hcnkgLmRpc2NvdW50IC5rZXksXG4gICAgICAuY2FydC1zdW1tYXJ5IC5kaXNjb3VudCAudmFsdWUge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5jYXJ0LXN1bW1hcnkgLmRpc2NvdW50IC5rZXksXG4gICAgICAuY2FydC1zdW1tYXJ5IC5kaXNjb3VudCAudmFsdWUge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuY2FydC1zdW1tYXJ5IC5kaXNjb3VudCAua2V5LFxuICAgICAgLmNhcnQtc3VtbWFyeSAuZGlzY291bnQgLnZhbHVlIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgLmNhcnQtc3VtbWFyeSAuZGlzY291bnQgLnRvdGFsIHtcbiAgICBjb2xvcjogIzE2MWExZDtcbiAgICBmb250LXdlaWdodDogNzAwOyB9XG5cbi5jYXJ0LXN1bW1hcnkgLmhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogNHB4IHNvbGlkICMwMGE3ZTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIHBhZGRpbmctdG9wOiAxMHB4OyB9XG4gIC5jYXJ0LXN1bW1hcnkgLmhlYWRlcjo6YmVmb3JlIHtcbiAgICBib3gtc2hhZG93OiAwIC0xMHB4IDE1cHggcmdiYSgwLCAwLCAwLCAwLjM1KTtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgbGVmdDogNSU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTJweDtcbiAgICB3aWR0aDogOTAlO1xuICAgIHotaW5kZXg6IC0xOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuY2FydC1zdW1tYXJ5IC5oZWFkZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5jYXJ0LXN1bW1hcnkgLmhlYWRlciAubGluZS0xIHtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLjFlbTtcbiAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAgIC5jYXJ0LXN1bW1hcnkgLmhlYWRlciAubGluZS0xIHtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgICAuY2FydC1zdW1tYXJ5IC5oZWFkZXIgLmxpbmUtMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLmNhcnQtc3VtbWFyeSAuaGVhZGVyIC5saW5lLTEge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuY2FydC1zdW1tYXJ5IC5oZWFkZXIgLmxpbmUtMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gICAgLmNhcnQtc3VtbWFyeSAuaGVhZGVyIC5saW5lLTEuYW1vdW50IHtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwOyB9XG4gIC5jYXJ0LXN1bW1hcnkgLmhlYWRlciAuaXRlbXMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQxNHB4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5jYXJ0LXN1bW1hcnkgLmhlYWRlciAuaXRlbXMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4OyB9IH1cbiAgLmNhcnQtc3VtbWFyeSAuaGVhZGVyIC5saW5lLTIge1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICBjb2xvcjogIzE2MWExZDtcbiAgICBsZXR0ZXItc3BhY2luZzogLjFlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgICAgLmNhcnQtc3VtbWFyeSAuaGVhZGVyIC5saW5lLTIge1xuICAgICAgICBmb250LXNpemU6IDEwcHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAgIC5jYXJ0LXN1bW1hcnkgLmhlYWRlciAubGluZS0yIHtcbiAgICAgICAgZm9udC1zaXplOiAxMXB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAuY2FydC1zdW1tYXJ5IC5oZWFkZXIgLmxpbmUtMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTFweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5jYXJ0LXN1bW1hcnkgLmhlYWRlciAubGluZS0yIHtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgLmNhcnQtc3VtbWFyeSAuaGVhZGVyIC5ub3RlLXN5bWJvbCxcbiAgLmNhcnQtc3VtbWFyeSAuaGVhZGVyIC50b3RhbC1pcy1wZW5kaW5nLXN5bWJvbCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0uMzVlbTsgfVxuICAuY2FydC1zdW1tYXJ5IC5oZWFkZXIgLnRvdGFsLWNvbnRhaW5lciB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLmNhcnQtc3VtbWFyeSAuaGVhZGVyIC55b3VyLW9yZGVyIHtcbiAgICBmbGV4OiAxOyB9XG5cbi5jYXJ0LXN1bW1hcnkgLnByZS1jYWxjdWxhdGUtaXMtcGVuZGluZyB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmY0ZjU7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbGluZS1oZWlnaHQ6IDEuM2VtO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBtYXJnaW4tbGVmdDogMjBweDtcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICBwYWRkaW5nOiAyMHB4OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuY2FydC1zdW1tYXJ5IC5wcmUtY2FsY3VsYXRlLWlzLXBlbmRpbmcge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAuY2FydC1zdW1tYXJ5IC5wcmUtY2FsY3VsYXRlLWlzLXBlbmRpbmcgLm5vdGUge1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBjb2xvcjogIzYxNjA2MDtcbiAgICBtYXJnaW4tdG9wOiAxLjNlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgICAgLmNhcnQtc3VtbWFyeSAucHJlLWNhbGN1bGF0ZS1pcy1wZW5kaW5nIC5ub3RlIHtcbiAgICAgICAgZm9udC1zaXplOiAxMXB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgICAuY2FydC1zdW1tYXJ5IC5wcmUtY2FsY3VsYXRlLWlzLXBlbmRpbmcgLm5vdGUge1xuICAgICAgICBmb250LXNpemU6IDEycHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5jYXJ0LXN1bW1hcnkgLnByZS1jYWxjdWxhdGUtaXMtcGVuZGluZyAubm90ZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5jYXJ0LXN1bW1hcnkgLnByZS1jYWxjdWxhdGUtaXMtcGVuZGluZyAubm90ZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDsgfSB9XG5cbi5jYXJ0LXN1bW1hcnkgLnByb2R1Y3RzLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmNhcnQtc3VtbWFyeSAucHJvZHVjdHMtY29udGFpbmVyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgICAgIC5jYXJ0LXN1bW1hcnkgLnByb2R1Y3RzLWNvbnRhaW5lcjo6YWZ0ZXIge1xuICAgICAgICBib3JkZXI6IDRweCBzb2xpZCAjMDBhN2UwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB6LWluZGV4OiAzOyB9XG4gICAgICAuY2FydC1zdW1tYXJ5IC5wcm9kdWN0cy1jb250YWluZXI6OmJlZm9yZSB7XG4gICAgICAgIGJvdHRvbTogOHB4O1xuICAgICAgICBib3gtc2hhZG93OiAwIDEwcHggMTVweCByZ2JhKDAsIDAsIDAsIDAuMzUpO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgbGVmdDogNSU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgei1pbmRleDogMjsgfVxuICAgICAgLmNhcnQtc3VtbWFyeSAucHJvZHVjdHMtY29udGFpbmVyIC5wcm9kdWN0cy1lbXB0eS1jYXJ0LFxuICAgICAgLmNhcnQtc3VtbWFyeSAucHJvZHVjdHMtY29udGFpbmVyIC5wcm9kdWN0cy10YWJsZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMzsgfVxuICAgICAgICAuY2FydC1zdW1tYXJ5IC5wcm9kdWN0cy1jb250YWluZXIgLnByb2R1Y3RzLWVtcHR5LWNhcnQ6bm90KC5yZXF1aXJlLXNzbyksXG4gICAgICAgIC5jYXJ0LXN1bW1hcnkgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtdGFibGU6bm90KC5yZXF1aXJlLXNzbykge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gICAgLmNhcnQtc3VtbWFyeSAucHJvZHVjdHMtY29udGFpbmVyIC5wcm9kdWN0LWltYWdlLWNvbnRhaW5lciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmNhcnQtc3VtbWFyeSAucHJvbW8tZGlzY2xhaW1lciB7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjRmNTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBsaW5lLWhlaWdodDogMS4zZW07XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgLmNhcnQtc3VtbWFyeSAucHJvbW8tZGlzY2xhaW1lciB7XG4gICAgICBmb250LXNpemU6IDExcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmNhcnQtc3VtbWFyeSAucHJvbW8tZGlzY2xhaW1lciB7XG4gICAgICBmb250LXNpemU6IDEycHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmNhcnQtc3VtbWFyeSAucHJvbW8tZGlzY2xhaW1lciB7XG4gICAgICBmb250LXNpemU6IDEycHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5jYXJ0LXN1bW1hcnkgLnByb21vLWRpc2NsYWltZXIge1xuICAgICAgZm9udC1zaXplOiAxM3B4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5jYXJ0LXN1bW1hcnkgLnByb21vLWRpc2NsYWltZXIge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jYXJ0LXN1bW1hcnkgLnN0aWNreSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkOWQ5ZDk7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7IH1cbiAgICAuY2FydC1zdW1tYXJ5IC5zdGlja3kuc3R1Y2sge1xuICAgICAgYm9yZGVyLXdpZHRoOiAwO1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgdG9wOiAwOyB9IH1cblxuLmNhcnQtc3VtbWFyeSAubm90ZSxcbi5jYXJ0LXN1bW1hcnkgLnRheC1pcy1pbmNsdWRlZC1ub3RlLFxuLmNhcnQtc3VtbWFyeSAudG90YWwtaXMtcGVuZGluZy1ub3RlIHtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBjb2xvcjogIzkzOTE5MTtcbiAgZmxleDogMSAwIGF1dG87IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgIC5jYXJ0LXN1bW1hcnkgLm5vdGUsXG4gICAgLmNhcnQtc3VtbWFyeSAudGF4LWlzLWluY2x1ZGVkLW5vdGUsXG4gICAgLmNhcnQtc3VtbWFyeSAudG90YWwtaXMtcGVuZGluZy1ub3RlIHtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAuY2FydC1zdW1tYXJ5IC5ub3RlLFxuICAgIC5jYXJ0LXN1bW1hcnkgLnRheC1pcy1pbmNsdWRlZC1ub3RlLFxuICAgIC5jYXJ0LXN1bW1hcnkgLnRvdGFsLWlzLXBlbmRpbmctbm90ZSB7XG4gICAgICBmb250LXNpemU6IDE0cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmNhcnQtc3VtbWFyeSAubm90ZSxcbiAgICAuY2FydC1zdW1tYXJ5IC50YXgtaXMtaW5jbHVkZWQtbm90ZSxcbiAgICAuY2FydC1zdW1tYXJ5IC50b3RhbC1pcy1wZW5kaW5nLW5vdGUge1xuICAgICAgZm9udC1zaXplOiAxNHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuY2FydC1zdW1tYXJ5IC5ub3RlLFxuICAgIC5jYXJ0LXN1bW1hcnkgLnRheC1pcy1pbmNsdWRlZC1ub3RlLFxuICAgIC5jYXJ0LXN1bW1hcnkgLnRvdGFsLWlzLXBlbmRpbmctbm90ZSB7XG4gICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5jYXJ0LXN1bW1hcnkgLm5vdGUsXG4gICAgLmNhcnQtc3VtbWFyeSAudGF4LWlzLWluY2x1ZGVkLW5vdGUsXG4gICAgLmNhcnQtc3VtbWFyeSAudG90YWwtaXMtcGVuZGluZy1ub3RlIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuY2FydC1zdW1tYXJ5IC5ub3RlLFxuICAgIC5jYXJ0LXN1bW1hcnkgLnRheC1pcy1pbmNsdWRlZC1ub3RlLFxuICAgIC5jYXJ0LXN1bW1hcnkgLnRvdGFsLWlzLXBlbmRpbmctbm90ZSB7XG4gICAgICBsaW5lLWhlaWdodDogMS4zZW07XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1JSk7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi5jYXJ0LXN1bW1hcnkgLnRvZ2dsZSB7XG4gIGNvbG9yOiAjMDBhN2UwOyB9XG5cbi5jYXJ0LXN1bW1hcnkgLnRvdGFsLWlzLXBlbmRpbmctc3ltYm9sIHtcbiAgY29sb3I6ICM5MzkxOTE7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5jYXJ0LXN1bW1hcnkgLnRvdGFsLWlzLXBlbmRpbmctc3ltYm9sIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtLjFlbTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5jYXJ0LXN1bW1hcnktY29udHJvbHMtMS1jb2wge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY2FydC1zdW1tYXJ5LWNvbnRyb2xzLTEtY29sIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmNhcnQtc3VtbWFyeS1jb250cm9scy0xLWNvbCAuYWhlbSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDlkOWQ5O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2Q5ZDlkOTtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBwYWRkaW5nLXRvcDogMjBweDsgfVxuXG4uY2FydC1zdW1tYXJ5LWNvbnRyb2xzLTItY29sIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmNhcnQtc3VtbWFyeS1jb250cm9scy0yLWNvbCB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbi5jb250YWN0LW1vZGFsIHtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICBib3R0b206IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgei1pbmRleDogMzA7IH1cbiAgLmNvbnRhY3QtbW9kYWwuc2hvdyB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNpdGlvbjogdmlzaWJpbGl0eSAwcywgb3BhY2l0eSAuMnMgZWFzZS1vdXQ7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5jb250YWN0LW1vZGFsLnNob3cgLmNvbnRhY3QtdGlsZS1saXN0IC5jb250YWN0LXRpbGUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxuXG4uY29udGFjdC1tb2RhbCAuYmcge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTsgfVxuXG4uY29udGFjdC1tb2RhbCAuY2xvc2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IDE7IH1cblxuLmNvbnRhY3QtbW9kYWwgLmNvbnRlbnQge1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uY29udGFjdC1tb2RhbCAuY29udGFjdC10aWxlLWxpc3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLWxlZnQ6IC0xNnB4O1xuICBtYXJnaW4tcmlnaHQ6IC0xNnB4OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjA4cHgpIHtcbiAgICAuY29udGFjdC1tb2RhbCAuY29udGFjdC10aWxlLWxpc3Qge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWF4LXdpZHRoOiA2MDhweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTEycHgpIHtcbiAgICAuY29udGFjdC1tb2RhbCAuY29udGFjdC10aWxlLWxpc3Qge1xuICAgICAgbWF4LXdpZHRoOiA5MTJweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIxNnB4KSB7XG4gICAgLmNvbnRhY3QtbW9kYWwgLmNvbnRhY3QtdGlsZS1saXN0IHtcbiAgICAgIG1heC13aWR0aDogMTIxNnB4OyB9IH1cbiAgLmNvbnRhY3QtbW9kYWwgLmNvbnRhY3QtdGlsZS1saXN0IC5jb250YWN0LXRpbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIGJveC1zaGFkb3c6IDAgMTBweCAxMHB4IC0xMHB4IHJnYmEoMCwgMCwgMCwgMC4zNSk7XG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICBtaW4taGVpZ2h0OiAyODhweDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMCUpO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gLjJzIGVhc2Utb3V0O1xuICAgIHdpZHRoOiAyODhweDsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjA4cHgpIHtcbiAgICAgIC5jb250YWN0LW1vZGFsIC5jb250YWN0LXRpbGUtbGlzdCAuY29udGFjdC10aWxlIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNnB4OyB9IH1cbiAgICAuY29udGFjdC1tb2RhbCAuY29udGFjdC10aWxlLWxpc3QgLmNvbnRhY3QtdGlsZTpudGgtY2hpbGQoMikge1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogLjA1czsgfVxuICAgIC5jb250YWN0LW1vZGFsIC5jb250YWN0LXRpbGUtbGlzdCAuY29udGFjdC10aWxlOm50aC1jaGlsZCgzKSB7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAuMXM7IH1cbiAgICAuY29udGFjdC1tb2RhbCAuY29udGFjdC10aWxlLWxpc3QgLmNvbnRhY3QtdGlsZTpudGgtY2hpbGQoNCkge1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogLjJzOyB9XG4gICAgLmNvbnRhY3QtbW9kYWwgLmNvbnRhY3QtdGlsZS1saXN0IC5jb250YWN0LXRpbGU6aG92ZXIgLmNvbnRhY3QtaWNvbiB7XG4gICAgICBmaWxsOiAjMzZkMmI2OyB9XG5cbi5jb250YWN0LW1vZGFsIC5oZWFkaW5nLFxuLmNvbnRhY3QtbW9kYWwgLnN1Yi1oZWFkaW5nIHtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBsaW5lLWhlaWdodDogMS41ZW07XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMnMgZWFzZS1vdXQ7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgIC5jb250YWN0LW1vZGFsIC5oZWFkaW5nLFxuICAgIC5jb250YWN0LW1vZGFsIC5zdWItaGVhZGluZyB7XG4gICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmNvbnRhY3QtbW9kYWwgLmhlYWRpbmcsXG4gICAgLmNvbnRhY3QtbW9kYWwgLnN1Yi1oZWFkaW5nIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuY29udGFjdC1tb2RhbCAuaGVhZGluZyxcbiAgICAuY29udGFjdC1tb2RhbCAuc3ViLWhlYWRpbmcge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuY29udGFjdC1tb2RhbCAuaGVhZGluZyxcbiAgICAuY29udGFjdC1tb2RhbCAuc3ViLWhlYWRpbmcge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cblxuLmNvbnRhY3QtbW9kYWwgLmhlYWRpbmcge1xuICBjb2xvcjogIzJlMzEzNDtcbiAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG4uY29udGFjdC1tb2RhbCAuaGVhZGluZy1wYWdlIHtcbiAgbWFyZ2luLXRvcDogMmVtOyB9XG5cbi5jb250YWN0LW1vZGFsIC5pbWcge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgd2lkdGg6IDE1MHB4OyB9XG4gIC5jb250YWN0LW1vZGFsIC5pbWcgLmNvbnRhY3QtaWNvbiB7XG4gICAgZmlsbDogIzAwMWY0NTtcbiAgICB0cmFuc2l0aW9uOiBmaWxsIC4ycyBlYXNlLW91dDsgfVxuXG4uY29udGFjdC1tb2RhbCAuaW5mbyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLWJvdHRvbTogMzVweDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICBwYWRkaW5nLXRvcDogNDBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHotaW5kZXg6IDQ7IH1cblxuLmNvbnRhY3QtbW9kYWwgLnN1Yi1oZWFkaW5nIHtcbiAgY29sb3I6ICM1YTYwNjY7IH1cblxuLmVycm9yLXBhZ2Uge1xuICBib3R0b206IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwOyB9XG5cbi5lcnJvci1wYWdlIC5ib2R5IHtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBjb2xvcjogIzVhNjA2NjtcbiAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICBtYXgtd2lkdGg6IDMyZW07IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgIC5lcnJvci1wYWdlIC5ib2R5IHtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAuZXJyb3ItcGFnZSAuYm9keSB7XG4gICAgICBmb250LXNpemU6IDExcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmVycm9yLXBhZ2UgLmJvZHkge1xuICAgICAgZm9udC1zaXplOiAxMXB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuZXJyb3ItcGFnZSAuYm9keSB7XG4gICAgICBmb250LXNpemU6IDEycHg7IH0gfVxuXG4uZXJyb3ItcGFnZSAuY29sdW1uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5lcnJvci1wYWdlIC5jb2x1bW4uY29weS1jb250YWluZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogNDBweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmVycm9yLXBhZ2UgLmNvbHVtbi5pbWctY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAuZXJyb3ItcGFnZSAuY29sdW1uLmltZy1jb250YWluZXIgLmltZyB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1heC13aWR0aDogMzUwcHg7XG4gICAgd2lkdGg6IDEwMCU7IH1cblxuLmVycm9yLXBhZ2UgLmVycm9yLWZvb3RlciB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gIHBhZGRpbmctdG9wOiA0MHB4OyB9XG5cbi5lcnJvci1wYWdlIC5oZWFkZXIge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICBtYXJnaW4tdG9wOiA0MHB4OyB9XG5cbi5lcnJvci1wYWdlIC5oZWFkaW5nIHtcbiAgZm9udC1zaXplOiAyMXB4O1xuICBjb2xvcjogIzAwYTdlMDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICBtYXJnaW4tYm90dG9tOiAuNWVtO1xuICBtYXgtd2lkdGg6IDEyZW07IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgIC5lcnJvci1wYWdlIC5oZWFkaW5nIHtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAuZXJyb3ItcGFnZSAuaGVhZGluZyB7XG4gICAgICBmb250LXNpemU6IDI0cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmVycm9yLXBhZ2UgLmhlYWRpbmcge1xuICAgICAgZm9udC1zaXplOiAyOHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuZXJyb3ItcGFnZSAuaGVhZGluZyB7XG4gICAgICBmb250LXNpemU6IDMycHg7IH0gfVxuXG4uZXJyb3ItcGFnZSAubG9nbyB7XG4gIGhlaWdodDogMzNweDtcbiAgd2lkdGg6IDE3NXB4OyB9XG5cbi5lcnJvci1wYWdlIC5tYWluIHtcbiAgZmxleDogMTsgfVxuICAuZXJyb3ItcGFnZSAubWFpbiAuY29udGVudC13cmFwcGVyIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuXG4uZXJyb3ItcGFnZSAucm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDIwNXB4KTsgfVxuICAuYW5kcm9pZCAuZXJyb3ItcGFnZSAucm93LFxuICAuaW9zIC5lcnJvci1wYWdlIC5yb3cge1xuICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSAyNzVweCk7IH1cblxuLmVycm9yLXBhZ2UgLnN1Yi1oZWFkaW5nIHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBsaW5lLWhlaWdodDogMS4yZW07XG4gIG1hcmdpbi1ib3R0b206IDEuMmVtO1xuICBtYXgtd2lkdGg6IDE4ZW07IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgIC5lcnJvci1wYWdlIC5zdWItaGVhZGluZyB7XG4gICAgICBmb250LXNpemU6IDE5cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmVycm9yLXBhZ2UgLnN1Yi1oZWFkaW5nIHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuZXJyb3ItcGFnZSAuc3ViLWhlYWRpbmcge1xuICAgICAgZm9udC1zaXplOiAyMnB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuZXJyb3ItcGFnZSAuc3ViLWhlYWRpbmcge1xuICAgICAgZm9udC1zaXplOiAyNHB4OyB9IH1cblxuLmZvb3RlciB7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5mb290ZXIge1xuICAgICAgcGFkZGluZy1ib3R0b206IDYwcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5mb290ZXIge1xuICAgICAgcGFkZGluZy1ib3R0b206IDgwcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmZvb3RlciB7XG4gICAgICBwYWRkaW5nLXRvcDogMzBweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmZvb3RlciB7XG4gICAgICBwYWRkaW5nLXRvcDogNDBweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAuZm9vdGVyIHtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAuZm9vdGVyIHtcbiAgICAgIGZvbnQtc2l6ZTogMTFweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuZm9vdGVyIHtcbiAgICAgIGZvbnQtc2l6ZTogMTFweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmZvb3RlciB7XG4gICAgICBmb250LXNpemU6IDEycHg7IH0gfVxuICAuZm9vdGVyLmZpeGVkIHtcbiAgICBib3R0b206IDA7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHdpZHRoOiAxMDAlOyB9XG5cbi5mb290ZXIgLmNvcHlyaWdodCB7XG4gIHBhZGRpbmctdG9wOiAxMHB4O1xuICBkaXNwbGF5OiBibG9jazsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmZvb3RlciAuY29weXJpZ2h0IHtcbiAgICAgIHBhZGRpbmctdG9wOiAxNXB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuZm9vdGVyIC5jb3B5cmlnaHQge1xuICAgICAgcGFkZGluZy10b3A6IDIwcHg7IH0gfVxuXG4uZm9vdGVyIC5kbmEtY2hhaW4ge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTsgfVxuXG4uZm9vdGVyIC5kbmEtY2hhaW4tbG9nby1tYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDYwcHg7XG4gIGhlaWdodDogNjBweDtcbiAgbWluLXdpZHRoOiAxMDB2dzsgfVxuICAud2VicCAuZm9vdGVyIC5kbmEtY2hhaW4tbG9nby1tYXJrIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29yZS9kbmEtY2hhaW4tbG9nby1tYXJrLnBuZy53ZWJwXCIpOyB9XG4gIC5uby13ZWJwIC5mb290ZXIgLmRuYS1jaGFpbi1sb2dvLW1hcmsge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2RuYS1jaGFpbi1sb2dvLW1hcmsucG5nXCIpOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzIwcHgpIHtcbiAgICAuZm9vdGVyIC5kbmEtY2hhaW4tbG9nby1tYXJrIHtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byA2MHB4O1xuICAgICAgbWluLXdpZHRoOiAyODRweDsgfSB9XG5cbi5mb290ZXIgLmRuYS1jaGFpbi1sZWZ0LFxuLmZvb3RlciAuZG5hLWNoYWluLXJpZ2h0IHtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gNjBweDtcbiAgaGVpZ2h0OiA2MHB4O1xuICB3aWR0aDogMTAwJTsgfVxuXG4uZm9vdGVyIC5kbmEtY2hhaW4tbGVmdCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciByaWdodDsgfVxuICAud2VicCAuZm9vdGVyIC5kbmEtY2hhaW4tbGVmdCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NvcmUvZG5hLWNoYWluLWxlZnQucG5nLndlYnBcIik7IH1cbiAgLm5vLXdlYnAgLmZvb3RlciAuZG5hLWNoYWluLWxlZnQge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2RuYS1jaGFpbi1sZWZ0LnBuZ1wiKTsgfVxuXG4uZm9vdGVyIC5kbmEtY2hhaW4tcmlnaHQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgbGVmdDsgfVxuICAud2VicCAuZm9vdGVyIC5kbmEtY2hhaW4tcmlnaHQge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2RuYS1jaGFpbi1yaWdodC5wbmcud2VicFwiKTsgfVxuICAubm8td2VicCAuZm9vdGVyIC5kbmEtY2hhaW4tcmlnaHQge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2RuYS1jaGFpbi1yaWdodC5wbmdcIik7IH1cblxuLmZvb3RlciAubGluay1saXN0ID4gLmxpbmstaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgbWFyZ2luLWxlZnQ6IC4yNWVtO1xuICBtYXJnaW4tcmlnaHQ6IC4yNWVtOyB9XG5cbi5mb290ZXIgLmxpbmstbGlzdCA+IC5saW5rLWl0ZW0gPiBhIHtcbiAgY29sb3I6ICM2MTYwNjA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogY29sb3IgLjJzIGVhc2Utb3V0OyB9XG4gIC5mb290ZXIgLmxpbmstbGlzdCA+IC5saW5rLWl0ZW0gPiBhOmFjdGl2ZSwgLmZvb3RlciAubGluay1saXN0ID4gLmxpbmstaXRlbSA+IGE6aG92ZXIge1xuICAgIGNvbG9yOiAjMDA2ZGJhOyB9XG5cbi5jaGVja2JveC1hbmQtbGFiZWwsXG4ucmFkaW8tYW5kLWxhYmVsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5ibG9jay1sYWJlbCArIC5jaGVja2JveC1hbmQtbGFiZWwsXG4gIC5jaGVja2JveC1hbmQtbGFiZWwgKyAuY2hlY2tib3gtYW5kLWxhYmVsLFxuICAuZm9ybS1yb3cgKyAuY2hlY2tib3gtYW5kLWxhYmVsLFxuICAucmFkaW8tYW5kLWxhYmVsICsgLmNoZWNrYm94LWFuZC1sYWJlbCwgLmJsb2NrLWxhYmVsICtcbiAgLnJhZGlvLWFuZC1sYWJlbCxcbiAgLmNoZWNrYm94LWFuZC1sYWJlbCArXG4gIC5yYWRpby1hbmQtbGFiZWwsXG4gIC5mb3JtLXJvdyArXG4gIC5yYWRpby1hbmQtbGFiZWwsXG4gIC5yYWRpby1hbmQtbGFiZWwgK1xuICAucmFkaW8tYW5kLWxhYmVsIHtcbiAgICBtYXJnaW4tdG9wOiAxZW07IH1cbiAgLmNoZWNrYm94LWFuZC1sYWJlbCAuY3VzdG9tLWNoZWNrYm94LFxuICAuY2hlY2tib3gtYW5kLWxhYmVsIC5jdXN0b20tcmFkaW8sXG4gIC5yYWRpby1hbmQtbGFiZWwgLmN1c3RvbS1jaGVja2JveCxcbiAgLnJhZGlvLWFuZC1sYWJlbCAuY3VzdG9tLXJhZGlvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDFweCwgMCk7IH1cbiAgICAuY2hlY2tib3gtYW5kLWxhYmVsIC5jdXN0b20tY2hlY2tib3guaGFzLWVycm9yIC5kZWNveSxcbiAgICAuY2hlY2tib3gtYW5kLWxhYmVsIC5jdXN0b20tcmFkaW8uaGFzLWVycm9yIC5kZWNveSxcbiAgICAucmFkaW8tYW5kLWxhYmVsIC5jdXN0b20tY2hlY2tib3guaGFzLWVycm9yIC5kZWNveSxcbiAgICAucmFkaW8tYW5kLWxhYmVsIC5jdXN0b20tcmFkaW8uaGFzLWVycm9yIC5kZWNveSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlN2U5O1xuICAgICAgYm9yZGVyLWNvbG9yOiAjZWEzZjNmOyB9XG4gIC5jaGVja2JveC1hbmQtbGFiZWwgLmRlY295LFxuICAucmFkaW8tYW5kLWxhYmVsIC5kZWNveSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjRmNTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IDE2cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIHdpZHRoOiAxNnB4OyB9XG4gIC5jaGVja2JveC1hbmQtbGFiZWwgLmxhYmVsLFxuICAucmFkaW8tYW5kLWxhYmVsIC5sYWJlbCB7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGNvbG9yOiAjNjE2MDYwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAgIC5jaGVja2JveC1hbmQtbGFiZWwgLmxhYmVsLFxuICAgICAgLnJhZGlvLWFuZC1sYWJlbCAubGFiZWwge1xuICAgICAgICBmb250LXNpemU6IDEzcHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAgIC5jaGVja2JveC1hbmQtbGFiZWwgLmxhYmVsLFxuICAgICAgLnJhZGlvLWFuZC1sYWJlbCAubGFiZWwge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5jaGVja2JveC1hbmQtbGFiZWwgLmxhYmVsLFxuICAgICAgLnJhZGlvLWFuZC1sYWJlbCAubGFiZWwge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuY2hlY2tib3gtYW5kLWxhYmVsIC5sYWJlbCxcbiAgICAgIC5yYWRpby1hbmQtbGFiZWwgLmxhYmVsIHtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4OyB9IH1cbiAgICAuY2hlY2tib3gtYW5kLWxhYmVsIC5sYWJlbC5sb2FkaW5nLFxuICAgIC5yYWRpby1hbmQtbGFiZWwgLmxhYmVsLmxvYWRpbmcge1xuICAgICAgYW5pbWF0aW9uOiB1cGRhdGluZyAycyBlYXNlLW91dCBpbmZpbml0ZTsgfVxuICAgIC5jaGVja2JveC1hbmQtbGFiZWwgLmxhYmVsIC5saW5lLTEsXG4gICAgLmNoZWNrYm94LWFuZC1sYWJlbCAubGFiZWwgLmxpbmUtMixcbiAgICAucmFkaW8tYW5kLWxhYmVsIC5sYWJlbCAubGluZS0xLFxuICAgIC5yYWRpby1hbmQtbGFiZWwgLmxhYmVsIC5saW5lLTIge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAuY2hlY2tib3gtYW5kLWxhYmVsIC5sYWJlbCAubGluZS0xLFxuICAgIC5yYWRpby1hbmQtbGFiZWwgLmxhYmVsIC5saW5lLTEge1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgY29sb3I6ICMxNjFhMWQ7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC4wN2VtO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgICAgICAuY2hlY2tib3gtYW5kLWxhYmVsIC5sYWJlbCAubGluZS0xLFxuICAgICAgICAucmFkaW8tYW5kLWxhYmVsIC5sYWJlbCAubGluZS0xIHtcbiAgICAgICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgICAgICAuY2hlY2tib3gtYW5kLWxhYmVsIC5sYWJlbCAubGluZS0xLFxuICAgICAgICAucmFkaW8tYW5kLWxhYmVsIC5sYWJlbCAubGluZS0xIHtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAuY2hlY2tib3gtYW5kLWxhYmVsIC5sYWJlbCAubGluZS0xLFxuICAgICAgICAucmFkaW8tYW5kLWxhYmVsIC5sYWJlbCAubGluZS0xIHtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgLmNoZWNrYm94LWFuZC1sYWJlbCAubGFiZWwgLmxpbmUtMSxcbiAgICAgICAgLnJhZGlvLWFuZC1sYWJlbCAubGFiZWwgLmxpbmUtMSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgICAuY2hlY2tib3gtYW5kLWxhYmVsIC5sYWJlbCAubGluZS0xICsgLmxpbmUtMixcbiAgICAucmFkaW8tYW5kLWxhYmVsIC5sYWJlbCAubGluZS0xICsgLmxpbmUtMiB7XG4gICAgICBtYXJnaW4tdG9wOiAuMjVlbTsgfVxuXG4uaW5wdXQtY2hlY2tib3gge1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIGhlaWdodDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHdpZHRoOiAxcHg7IH1cbiAgLmlucHV0LWNoZWNrYm94ICsgLmRlY295IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuaW5wdXQtY2hlY2tib3ggKyAuZGVjb3kgLmNoZWNrIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZmlsbDogIzAwNmRiYTtcbiAgICAgIGhlaWdodDogMTJweDtcbiAgICAgIGxlZnQ6IDNweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxLjI3NSk7XG4gICAgICB3aWR0aDogMTVweDtcbiAgICAgIHotaW5kZXg6IDI7IH1cbiAgLmlucHV0LWNoZWNrYm94OmNoZWNrZWQgKyAuZGVjb3kgLmNoZWNrIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG4gIC5pbnB1dC1jaGVja2JveDpmb2N1cyArIC5kZWNveSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBvdXRsaW5lOiAycHggc29saWQgIzAwYTdlMDsgfVxuXG4uaW5wdXQtcmFkaW8ge1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIGhlaWdodDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHdpZHRoOiAxcHg7IH1cbiAgLmlucHV0LXJhZGlvICsgLmRlY295IHtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7IH1cbiAgICAuaW5wdXQtcmFkaW8gKyAuZGVjb3k6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA2ZGJhO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogOHB4O1xuICAgICAgbGVmdDogM3B4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAzcHg7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMS4yNzUpO1xuICAgICAgd2lkdGg6IDhweDtcbiAgICAgIHotaW5kZXg6IDI7IH1cbiAgLmlucHV0LXJhZGlvOmNoZWNrZWQgKyAuZGVjb3k6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxuICAuaW5wdXQtcmFkaW86Zm9jdXMgKyAuZGVjb3kge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgb3V0bGluZTogMnB4IHNvbGlkICMwMGE3ZTA7IH1cblxuLmN2di1kZXNjcmlwdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogYXV0byA4NSU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gIGJvdHRvbTogMDtcbiAgaGVpZ2h0OiAxMjVweDtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDExMCUpO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAycHgpO1xuICB6LWluZGV4OiAxOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuY3Z2LWRlc2NyaXB0aW9uIHtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogODUlIGF1dG87XG4gICAgICBoZWlnaHQ6IDIyNXB4OyB9IH1cbiAgLmN2di1kZXNjcmlwdGlvbjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2NjO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGhlaWdodDogMTBweDtcbiAgICBsZWZ0OiAxMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGVZKC05cHgpO1xuICAgIHdpZHRoOiAxMHB4OyB9XG4gIC5jdnYtZGVzY3JpcHRpb24uc2hvdyB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKSwgdHJhbnNmb3JtIDAuNXMgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgLndlYnAgLmN2di1kZXNjcmlwdGlvbi5hbWV4LmVuIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29yZS9jdnYtZGVzY3JpcHRpb24tNC1kaWdpdC1lbi5qcGcud2VicFwiKTsgfVxuICAubm8td2VicCAuY3Z2LWRlc2NyaXB0aW9uLmFtZXguZW4ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2N2di1kZXNjcmlwdGlvbi00LWRpZ2l0LWVuLmpwZ1wiKTsgfVxuICAud2VicCAuY3Z2LWRlc2NyaXB0aW9uLmFtZXguZXMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2N2di1kZXNjcmlwdGlvbi00LWRpZ2l0LWVzLmpwZy53ZWJwXCIpOyB9XG4gIC5uby13ZWJwIC5jdnYtZGVzY3JpcHRpb24uYW1leC5lcyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NvcmUvY3Z2LWRlc2NyaXB0aW9uLTQtZGlnaXQtZXMuanBnXCIpOyB9XG4gIC53ZWJwIC5jdnYtZGVzY3JpcHRpb24uYW1leC5mciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NvcmUvY3Z2LWRlc2NyaXB0aW9uLTQtZGlnaXQtZnIuanBnLndlYnBcIik7IH1cbiAgLm5vLXdlYnAgLmN2di1kZXNjcmlwdGlvbi5hbWV4LmZyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29yZS9jdnYtZGVzY3JpcHRpb24tNC1kaWdpdC1mci5qcGdcIik7IH1cbiAgLndlYnAgLmN2di1kZXNjcmlwdGlvbi5hbWV4Lm5sIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29yZS9jdnYtZGVzY3JpcHRpb24tNC1kaWdpdC1ubC5qcGcud2VicFwiKTsgfVxuICAubm8td2VicCAuY3Z2LWRlc2NyaXB0aW9uLmFtZXgubmwge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2N2di1kZXNjcmlwdGlvbi00LWRpZ2l0LW5sLmpwZ1wiKTsgfVxuICAud2VicCAuY3Z2LWRlc2NyaXB0aW9uLmFtZXguemgge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2N2di1kZXNjcmlwdGlvbi00LWRpZ2l0LXpoLmpwZy53ZWJwXCIpOyB9XG4gIC5uby13ZWJwIC5jdnYtZGVzY3JpcHRpb24uYW1leC56aCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NvcmUvY3Z2LWRlc2NyaXB0aW9uLTQtZGlnaXQtemguanBnXCIpOyB9XG4gIC5jdnYtZGVzY3JpcHRpb24uYW1leCAudGV4dC0zLWRpZ2l0IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5jdnYtZGVzY3JpcHRpb24uYW1leCAudGV4dC00LWRpZ2l0IHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAud2VicCAuY3Z2LWRlc2NyaXB0aW9uLmVuLCAud2VicCAuY3Z2LWRlc2NyaXB0aW9uLmRpc2NvdmVyLmVuLCAud2VicCAuY3Z2LWRlc2NyaXB0aW9uLm1hc3RlcmNhcmQuZW4sIC53ZWJwIC5jdnYtZGVzY3JpcHRpb24udmlzYS5lbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NvcmUvY3Z2LWRlc2NyaXB0aW9uLTMtZGlnaXQtZW4uanBnLndlYnBcIik7IH1cbiAgLm5vLXdlYnAgLmN2di1kZXNjcmlwdGlvbi5lbiwgLm5vLXdlYnAgLmN2di1kZXNjcmlwdGlvbi5kaXNjb3Zlci5lbiwgLm5vLXdlYnAgLmN2di1kZXNjcmlwdGlvbi5tYXN0ZXJjYXJkLmVuLCAubm8td2VicCAuY3Z2LWRlc2NyaXB0aW9uLnZpc2EuZW4ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2N2di1kZXNjcmlwdGlvbi0zLWRpZ2l0LWVuLmpwZ1wiKTsgfVxuICAud2VicCAuY3Z2LWRlc2NyaXB0aW9uLmVzLCAud2VicCAuY3Z2LWRlc2NyaXB0aW9uLmRpc2NvdmVyLmVzLCAud2VicCAuY3Z2LWRlc2NyaXB0aW9uLm1hc3RlcmNhcmQuZXMsIC53ZWJwIC5jdnYtZGVzY3JpcHRpb24udmlzYS5lcyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NvcmUvY3Z2LWRlc2NyaXB0aW9uLTMtZGlnaXQtZXMuanBnLndlYnBcIik7IH1cbiAgLm5vLXdlYnAgLmN2di1kZXNjcmlwdGlvbi5lcywgLm5vLXdlYnAgLmN2di1kZXNjcmlwdGlvbi5kaXNjb3Zlci5lcywgLm5vLXdlYnAgLmN2di1kZXNjcmlwdGlvbi5tYXN0ZXJjYXJkLmVzLCAubm8td2VicCAuY3Z2LWRlc2NyaXB0aW9uLnZpc2EuZXMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2N2di1kZXNjcmlwdGlvbi0zLWRpZ2l0LWVzLmpwZ1wiKTsgfVxuICAud2VicCAuY3Z2LWRlc2NyaXB0aW9uLmZyLCAud2VicCAuY3Z2LWRlc2NyaXB0aW9uLmRpc2NvdmVyLmZyLCAud2VicCAuY3Z2LWRlc2NyaXB0aW9uLm1hc3RlcmNhcmQuZnIsIC53ZWJwIC5jdnYtZGVzY3JpcHRpb24udmlzYS5mciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NvcmUvY3Z2LWRlc2NyaXB0aW9uLTMtZGlnaXQtZnIuanBnLndlYnBcIik7IH1cbiAgLm5vLXdlYnAgLmN2di1kZXNjcmlwdGlvbi5mciwgLm5vLXdlYnAgLmN2di1kZXNjcmlwdGlvbi5kaXNjb3Zlci5mciwgLm5vLXdlYnAgLmN2di1kZXNjcmlwdGlvbi5tYXN0ZXJjYXJkLmZyLCAubm8td2VicCAuY3Z2LWRlc2NyaXB0aW9uLnZpc2EuZnIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2N2di1kZXNjcmlwdGlvbi0zLWRpZ2l0LWZyLmpwZ1wiKTsgfVxuICAud2VicCAuY3Z2LWRlc2NyaXB0aW9uLm5sLCAud2VicCAuY3Z2LWRlc2NyaXB0aW9uLmRpc2NvdmVyLm5sLCAud2VicCAuY3Z2LWRlc2NyaXB0aW9uLm1hc3RlcmNhcmQubmwsIC53ZWJwIC5jdnYtZGVzY3JpcHRpb24udmlzYS5ubCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NvcmUvY3Z2LWRlc2NyaXB0aW9uLTMtZGlnaXQtbmwuanBnLndlYnBcIik7IH1cbiAgLm5vLXdlYnAgLmN2di1kZXNjcmlwdGlvbi5ubCwgLm5vLXdlYnAgLmN2di1kZXNjcmlwdGlvbi5kaXNjb3Zlci5ubCwgLm5vLXdlYnAgLmN2di1kZXNjcmlwdGlvbi5tYXN0ZXJjYXJkLm5sLCAubm8td2VicCAuY3Z2LWRlc2NyaXB0aW9uLnZpc2Eubmwge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2N2di1kZXNjcmlwdGlvbi0zLWRpZ2l0LW5sLmpwZ1wiKTsgfVxuICAud2VicCAuY3Z2LWRlc2NyaXB0aW9uLnpoLCAud2VicCAuY3Z2LWRlc2NyaXB0aW9uLmRpc2NvdmVyLnpoLCAud2VicCAuY3Z2LWRlc2NyaXB0aW9uLm1hc3RlcmNhcmQuemgsIC53ZWJwIC5jdnYtZGVzY3JpcHRpb24udmlzYS56aCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NvcmUvY3Z2LWRlc2NyaXB0aW9uLTMtZGlnaXQtemguanBnLndlYnBcIik7IH1cbiAgLm5vLXdlYnAgLmN2di1kZXNjcmlwdGlvbi56aCwgLm5vLXdlYnAgLmN2di1kZXNjcmlwdGlvbi5kaXNjb3Zlci56aCwgLm5vLXdlYnAgLmN2di1kZXNjcmlwdGlvbi5tYXN0ZXJjYXJkLnpoLCAubm8td2VicCAuY3Z2LWRlc2NyaXB0aW9uLnZpc2Euemgge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2N2di1kZXNjcmlwdGlvbi0zLWRpZ2l0LXpoLmpwZ1wiKTsgfVxuICAuY3Z2LWRlc2NyaXB0aW9uIC50ZXh0LTQtZGlnaXQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLmN2di1oaW50IHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTZweCBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGNvbG9yOiAjMDBhN2UwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICBsZXR0ZXItc3BhY2luZzogLjA3NWVtO1xuICBwYWRkaW5nLWxlZnQ6IDcwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdG9wOiAwO1xuICB0cmFuc2l0aW9uOiBjb2xvciAuMnMgZWFzZS1vdXQ7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC53ZWJwIC5jdnYtaGludCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NvcmUvY3Z2LWhpbnQtMy1kaWdpdC5wbmcud2VicFwiKTsgfVxuICAubm8td2VicCAuY3Z2LWhpbnQge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2N2di1oaW50LTMtZGlnaXQucG5nXCIpOyB9XG4gIC5jdnYtaGludDpob3ZlciwgLmN2di1oaW50OmFjdGl2ZSB7XG4gICAgY29sb3I6ICMwMDZkYmE7IH1cbiAgLndlYnAgLmN2di1oaW50LmFtZXgge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2N2di1oaW50LTQtZGlnaXQucG5nLndlYnBcIik7IH1cbiAgLm5vLXdlYnAgLmN2di1oaW50LmFtZXgge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2N2di1oaW50LTQtZGlnaXQucG5nXCIpOyB9XG4gIC53ZWJwIC5jdnYtaGludC5kaXNjb3ZlciwgLndlYnAgLmN2di1oaW50Lm1hc3RlcmNhcmQsIC53ZWJwIC5jdnYtaGludC52aXNhIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29yZS9jdnYtaGludC0zLWRpZ2l0LnBuZy53ZWJwXCIpOyB9XG4gIC5uby13ZWJwIC5jdnYtaGludC5kaXNjb3ZlciwgLm5vLXdlYnAgLmN2di1oaW50Lm1hc3RlcmNhcmQsIC5uby13ZWJwIC5jdnYtaGludC52aXNhIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29yZS9jdnYtaGludC0zLWRpZ2l0LnBuZ1wiKTsgfVxuICAuY3Z2LWhpbnQgc3BhbiB7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5jcmVkaXQtY2FyZC1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmNyZWRpdC1jYXJkLWljb246OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBib3R0b206IDA7XG4gICAgY29udGVudDogJyc7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDEwMCUgKyAxMHB4KSk7XG4gICAgd2lkdGg6IDMwcHg7IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogODk1cHgpIHtcbiAgICAgIC5jcmVkaXQtY2FyZC1pY29uOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAud2VicCAuY3JlZGl0LWNhcmQtaWNvbi5hbWV4OjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NvcmUvY2MtYW1leC5wbmcud2VicFwiKTsgfVxuICAubm8td2VicCAuY3JlZGl0LWNhcmQtaWNvbi5hbWV4OjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NvcmUvY2MtYW1leC5wbmdcIik7IH1cbiAgLndlYnAgLmNyZWRpdC1jYXJkLWljb24uZGlzY292ZXI6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29yZS9jYy1kaXNjb3Zlci5wbmcud2VicFwiKTsgfVxuICAubm8td2VicCAuY3JlZGl0LWNhcmQtaWNvbi5kaXNjb3Zlcjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2NjLWRpc2NvdmVyLnBuZ1wiKTsgfVxuICAud2VicCAuY3JlZGl0LWNhcmQtaWNvbi5tYXN0ZXJjYXJkOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NvcmUvY2MtbWFzdGVyY2FyZC5wbmcud2VicFwiKTsgfVxuICAubm8td2VicCAuY3JlZGl0LWNhcmQtaWNvbi5tYXN0ZXJjYXJkOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NvcmUvY2MtbWFzdGVyY2FyZC5wbmdcIik7IH1cbiAgLndlYnAgLmNyZWRpdC1jYXJkLWljb24udmlzYTo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2NjLXZpc2EucG5nLndlYnBcIik7IH1cbiAgLm5vLXdlYnAgLmNyZWRpdC1jYXJkLWljb24udmlzYTo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2NjLXZpc2EucG5nXCIpOyB9XG5cbi5jcmVkaXQtY2FyZC10aHVtYiB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDMwcHg7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMTZweDtcbiAgdG9wOiAwO1xuICB3aWR0aDogNTBweDsgfVxuICAud2VicCAuY3JlZGl0LWNhcmQtdGh1bWIuYW1leCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NvcmUvY2MtYW1leC5wbmcud2VicFwiKTsgfVxuICAubm8td2VicCAuY3JlZGl0LWNhcmQtdGh1bWIuYW1leCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NvcmUvY2MtYW1leC5wbmdcIik7IH1cbiAgLndlYnAgLmNyZWRpdC1jYXJkLXRodW1iLmRpc2NvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29yZS9jYy1kaXNjb3Zlci5wbmcud2VicFwiKTsgfVxuICAubm8td2VicCAuY3JlZGl0LWNhcmQtdGh1bWIuZGlzY292ZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2NjLWRpc2NvdmVyLnBuZ1wiKTsgfVxuICAud2VicCAuY3JlZGl0LWNhcmQtdGh1bWIubWFzdGVyY2FyZCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NvcmUvY2MtbWFzdGVyY2FyZC5wbmcud2VicFwiKTsgfVxuICAubm8td2VicCAuY3JlZGl0LWNhcmQtdGh1bWIubWFzdGVyY2FyZCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NvcmUvY2MtbWFzdGVyY2FyZC5wbmdcIik7IH1cbiAgLndlYnAgLmNyZWRpdC1jYXJkLXRodW1iLnZpc2Ege1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2NjLXZpc2EucG5nLndlYnBcIik7IH1cbiAgLm5vLXdlYnAgLmNyZWRpdC1jYXJkLXRodW1iLnZpc2Ege1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb3JlL2NjLXZpc2EucG5nXCIpOyB9XG4gIC5jcmVkaXQtY2FyZC10aHVtYiAuZm9ybS1jb2x1bW4uaGFzLWVycm9yIC5jcmVkaXQtY2FyZC10aHVtYiAuZm9ybS1jb2x1bW4ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cblxuaW5wdXRbZGF0YS1iZWhhdmlvcn49J2Rpc2FibGUtZm9jdXMnXSxcbnNlbGVjdFtkYXRhLWJlaGF2aW9yfj0nZGlzYWJsZS1mb2N1cyddLFxudGV4dGFyZWFbZGF0YS1iZWhhdmlvcn49J2Rpc2FibGUtZm9jdXMnXSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbi5lcnJvci1saXN0IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICAuZXJyb3ItbGlzdDpub3QoOmVtcHR5KTpub3QoLmhpZGUpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWEzZjNmO1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgcGFkZGluZzogMTZweDsgfVxuICAgIC5lcnJvci1saXN0Om5vdCg6ZW1wdHkpOm5vdCguaGlkZSkuc2hvdyB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5lcnJvci1saXN0Om5vdCg6ZW1wdHkpOm5vdCguaGlkZSkgYSB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gICAgLmVycm9yLWxpc3Q6bm90KDplbXB0eSk6bm90KC5oaWRlKSAuZXJyb3ItbGlzdC1pdGVtIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjNlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAuNWVtOyB9XG4gICAgICAuZXJyb3ItbGlzdDpub3QoOmVtcHR5KTpub3QoLmhpZGUpIC5lcnJvci1saXN0LWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG5cbi5mb3JtLW1vZHVsZSAuc3VjY2Vzcy1saXN0IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICAuZm9ybS1tb2R1bGUgLnN1Y2Nlc3MtbGlzdDpub3QoOmVtcHR5KTpub3QoLmhpZGUpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2NiODc4O1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgcGFkZGluZzogMTZweDsgfVxuICAgIC5mb3JtLW1vZHVsZSAuc3VjY2Vzcy1saXN0Om5vdCg6ZW1wdHkpOm5vdCguaGlkZSkuc2hvdyB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5mb3JtLW1vZHVsZSAuc3VjY2Vzcy1saXN0Om5vdCg6ZW1wdHkpOm5vdCguaGlkZSkgYSB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gICAgLmZvcm0tbW9kdWxlIC5zdWNjZXNzLWxpc3Q6bm90KDplbXB0eSk6bm90KC5oaWRlKSAuc3VjY2Vzc3MtbGlzdC1pdGVtIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjNlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAuNWVtOyB9XG4gICAgICAuZm9ybS1tb2R1bGUgLnN1Y2Nlc3MtbGlzdDpub3QoOmVtcHR5KTpub3QoLmhpZGUpIC5zdWNjZXNzcy1saXN0LWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG5cbi5mb3JtLW1vZHVsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuZm9ybS1tb2R1bGU6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuZm9ybS1tb2R1bGU6bm90KDplbXB0eSkge1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICAgIHBhZGRpbmctdG9wOiAxMHB4OyB9XG4gIC5mb3JtLW1vZHVsZS5sb2FkaW5nID4gW2RhdGEtYmVoYXZpb3I9J2xvYWRlciddIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLW91dCwgdHJhbnNmb3JtIDAuNHMgY3ViaWMtYmV6aWVyKDAuMjUsIDAuNDYsIDAuNDUsIDAuOTQpOyB9XG4gICAgLmZvcm0tbW9kdWxlLmxvYWRpbmcgPiBbZGF0YS1iZWhhdmlvcj0nbG9hZGVyJ10gLnRleHQge1xuICAgICAgZGlzcGxheTogaW5saW5lOyB9XG4gIC5mb3JtLW1vZHVsZS5sb2FkaW5nID4gKjpub3QoW2RhdGEtYmVoYXZpb3I9J2xvYWRlciddKSB7XG4gICAgb3BhY2l0eTogLjM1O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cbiAgLmZvcm0tbW9kdWxlID4gW2RhdGEtYmVoYXZpb3I9J2xvYWRlciddIHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMjUwJSk7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gMC40cyBjdWJpYy1iZXppZXIoMC41NSwgMC4wODUsIDAuNjgsIDAuNTMpOyB9XG4gICAgLmZvcm0tbW9kdWxlID4gW2RhdGEtYmVoYXZpb3I9J2xvYWRlciddIC50ZXh0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmZvcm0tbW9kdWxlID4gKjpub3QoW2RhdGEtYmVoYXZpb3I9J2xvYWRlciddKSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLW91dCAuNHM7IH1cbiAgLmZvcm0tbW9kdWxlIGRkOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmZvcm0tbW9kdWxlLS1jb25kaXRpb25hbCB7XG4gIG9wYWNpdHk6IC41O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLW91dDsgfVxuICAuZm9ybS1tb2R1bGUtLWNvbmRpdGlvbmFsIC5lcnJvci1saXN0IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5mb3JtLW1vZHVsZS0tY29uZGl0aW9uYWwuY2hlY2tlZCB7XG4gICAgb3BhY2l0eTogMTsgfVxuICAgIC5mb3JtLW1vZHVsZS0tY29uZGl0aW9uYWwuY2hlY2tlZCAuZXJyb3ItbGlzdDpub3QoOmVtcHR5KSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4uZm9ybS1zZWN0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAuZm9ybS1zZWN0aW9uOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmZvcm0tY29udGFpbmVyIHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmZvcm0tY29udGFpbmVyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5mb3JtLWNvbnRhaW5lciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA4MHB4OyB9IH1cbiAgLmZvcm0tY29udGFpbmVyIC5ib3JkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyOiAwIHNvbGlkICNjY2M7XG4gICAgei1pbmRleDogMjsgfVxuICAgIC5mb3JtLWNvbnRhaW5lciAuYm9yZGVyLS10cmFuc3BhcmVudCB7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmZvcm0tY29udGFpbmVyIC5ib3JkZXIudG9wIHtcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDsgfVxuICAgIC5mb3JtLWNvbnRhaW5lciAuYm9yZGVyLnJpZ2h0IHtcbiAgICAgIGJvcmRlci1yaWdodC13aWR0aDogMXB4OyB9XG4gICAgLmZvcm0tY29udGFpbmVyIC5ib3JkZXIuYm90dG9tIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDsgfVxuICAgIC5mb3JtLWNvbnRhaW5lciAuYm9yZGVyLmxlZnQge1xuICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDsgfVxuICAuZm9ybS1jb250YWluZXIgLmNvcHkge1xuICAgIGNvbG9yOiAjNjE2MDYwO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBtYXJnaW4tdG9wOiAxMHB4OyB9XG4gIC5mb3JtLWNvbnRhaW5lciAuZGlzY3JldGlvbmFyeSB7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICAgIGNvbG9yOiAjNjE2MDYwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgICBtYXJnaW4tdG9wOiAxLjllbTsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAgIC5mb3JtLWNvbnRhaW5lciAuZGlzY3JldGlvbmFyeSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTBweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgICAgLmZvcm0tY29udGFpbmVyIC5kaXNjcmV0aW9uYXJ5IHtcbiAgICAgICAgZm9udC1zaXplOiAxMXB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAuZm9ybS1jb250YWluZXIgLmRpc2NyZXRpb25hcnkge1xuICAgICAgICBmb250LXNpemU6IDExcHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuZm9ybS1jb250YWluZXIgLmRpc2NyZXRpb25hcnkge1xuICAgICAgICBmb250LXNpemU6IDEycHg7IH0gfVxuICAuZm9ybS1jb250YWluZXIgLmhlbHAtYmxvY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmZvcm0tY29udGFpbmVyIC5pbnRyby1wYXJhZ3JhcGgge1xuICAgIGNvbG9yOiAjNWE2MDY2O1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAuZm9ybS1jb250YWluZXIgLmNvbmRpdGlvbmFsLmhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLmZvcm0tcm93IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgwLCAxZnIpKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5mb3JtLXJvdy5mb2N1cyB7XG4gICAgei1pbmRleDogMjsgfVxuICAuZm9ybS1yb3cubWFyZ2luLXRvcCB7XG4gICAgbWFyZ2luLXRvcDogMjBweDsgfVxuICAuZm9ybS1yb3cucmVhZC1vbmx5LFxuICAuZm9ybS1yb3cucmVhZC1vbmx5IC5ib3JkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmY0ZjU7XG4gICAgYm9yZGVyLWNvbG9yOiAjZTVlNWU1OyB9XG4gIC5mb3JtLXJvdyAuZm9ybS1jb2x1bW4ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7IH1cbiAgICAuZm9ybS1yb3cgLmZvcm0tY29sdW1uLS1mbGV4IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgICAgIC5mb3JtLXJvdyAuZm9ybS1jb2x1bW4tLWZsZXggKiB7XG4gICAgICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gICAgICAuZm9ybS1yb3cgLmZvcm0tY29sdW1uLS1mbGV4IC5mbGV4aWJsZSB7XG4gICAgICAgIGZsZXg6IDEgMSBhdXRvOyB9XG4gICAgLmZvcm0tcm93IC5mb3JtLWNvbHVtbi0tb3ZlcmZsb3cge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7IH1cbiAgICAuZm9ybS1yb3cgLmZvcm0tY29sdW1uLmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggIzAwNmRiYTtcbiAgICAgIHotaW5kZXg6IDM7IH1cbiAgICAuZm9ybS1yb3cgLmZvcm0tY29sdW1uLmhhcy1lcnJvciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlN2U5OyB9XG5cbi5sYWJlbC1mbG9hdCB7XG4gIGNvbG9yOiAjMDA2ZGJhO1xuICBmb250LXNpemU6IDExcHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxlZnQ6IDE2cHg7XG4gIGxldHRlci1zcGFjaW5nOiAuMDVlbTtcbiAgb3BhY2l0eTogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdG9wOiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMThweCk7XG4gIHotaW5kZXg6IDE7IH1cbiAgLmxhYmVsLWZsb2F0LmlzLXJlcXVpcmVkOjphZnRlciB7XG4gICAgY29udGVudDogJyAqJzsgfVxuICAubGFiZWwtZmxvYXQuaXMtcmVxdWlyZWQgfiBpbnB1dDo6cGxhY2Vob2xkZXI6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnIConOyB9XG4gIC5mb3JtLWNvbHVtbi5oYXMtdmFsdWUgLmxhYmVsLWZsb2F0IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxM3B4KTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLW91dCwgdHJhbnNmb3JtIC4ycyBlYXNlLW91dDsgfVxuXG4uYmxvY2stbGFiZWwge1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICBsaW5lLWhlaWdodDogMS41ZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctYm90dG9tOiAxNnB4O1xuICBwYWRkaW5nLWxlZnQ6IDE2cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDE2cHg7XG4gIHBhZGRpbmctdG9wOiAxNnB4OyB9XG4gIC5yYWRpby1hbmQtbGFiZWwgKyAuYmxvY2stbGFiZWwge1xuICAgIG1hcmdpbi10b3A6IDEwcHg7IH1cbiAgLmJsb2NrLWxhYmVsIC5sYWJlbCB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuYmxvY2stbGFiZWwgLmN1c3RvbS1jaGVja2JveCB7XG4gICAgbWFyZ2luLXRvcDogMjBweDsgfVxuXG4uc2hpcHBpbmctY29zdCB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBmb250LXdlaWdodDogNzAwOyB9XG4gIC5zaGlwcGluZy1jb3N0IC5mcmVlLXNoaXBwaW5nIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbi5jdXN0b20tc2VsZWN0IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBoZWlnaHQ6IDU4cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmN1c3RvbS1zZWxlY3QtLWZpbGxlZCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2ZmZiwgI2YyZjRmNSk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2NjYzsgfVxuICAuY3VzdG9tLXNlbGVjdDpob3ZlciAuc2VsZWN0LWNoZXZyb24ge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgLmNvbHVtbiA+IC5jdXN0b20tc2VsZWN0IHtcbiAgICBoZWlnaHQ6IDYwcHg7IH1cbiAgLmN1c3RvbS1zZWxlY3QuaGFzLWVycm9yIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlN2U5OyB9XG4gIC5jdXN0b20tc2VsZWN0IHNlbGVjdCB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBtZW51bGlzdC1idXR0b247XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAyOyB9XG4gICAgLmlvcyAuY3VzdG9tLXNlbGVjdCBzZWxlY3Qge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9XG4gIC5jdXN0b20tc2VsZWN0IC5kZWNveSB7XG4gICAgY29sb3I6ICM5MzkxOTE7XG4gICAgaGVpZ2h0OiA1OHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA1OHB4O1xuICAgIHBhZGRpbmc6IDAgNDBweCAwIDE2cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmZvcm0tY29sdW1uLmhhcy12YWx1ZSAuY3VzdG9tLXNlbGVjdCAuZGVjb3kgLnRleHQge1xuICAgICAgY29sb3I6ICMxNjFhMWQ7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApOyB9XG4gICAgLmN1c3RvbS1zZWxlY3QgLmRlY295IC50ZXh0IHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzIGVhc2Utb3V0O1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAuY3VzdG9tLXNlbGVjdCAuc2VsZWN0LWNoZXZyb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogN3B4O1xuICAgIG1hcmdpbi10b3A6IC0zLjVweDtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDFlbTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgY3ViaWMtYmV6aWVyKDAuNDU1LCAwLjAzLCAwLjUxNSwgMC45NTUpO1xuICAgIHdpZHRoOiAxMXB4O1xuICAgIHotaW5kZXg6IDE7IH1cblxuLmN1c3RvbS1zZWxlY3QtLXRpZ2h0IHtcbiAgaGVpZ2h0OiA0MHB4OyB9XG4gIC5jdXN0b20tc2VsZWN0LS10aWdodCAuZGVjb3kge1xuICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHBhZGRpbmctdG9wOiAwOyB9XG5cbi5zZWxlY3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzc3NztcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjYjNiM2IzO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjNzc3O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2NjYztcbiAgY29sb3I6ICM5MzkxOTE7XG4gIGZvbnQtZmFtaWx5OiBcIlByb3hpbWEgTm92YSBXMDFcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBDYWxpYnJpLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDFyZW07XG4gIHBhZGRpbmc6IDFweCAzcHg7IH1cblxuLnNwaW5uZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IDQ0cHg7XG4gIHdpZHRoOiA4MHB4OyB9XG4gIC5zcGlubmVyIGlucHV0LFxuICAuc3Bpbm5lciAubWludXMsXG4gIC5zcGlubmVyIC5wbHVzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmNGY1O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNkOWQ5ZDk7XG4gICAgaGVpZ2h0OiA0NHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuc3Bpbm5lciBpbnB1dCB7XG4gICAgZmxleDogMTtcbiAgICBmb250LWZhbWlseTogXCJQcm94aW1hIE5vdmEgVzAxXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgQ2FsaWJyaSwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWluLXdpZHRoOiAzMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2Utb3V0OyB9XG4gICAgLnNwaW5uZXIgaW5wdXQ6Zm9jdXMsIC5zcGlubmVyIGlucHV0OmZvY3VzOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICBib3JkZXItY29sb3I6ICMwMGE3ZTA7XG4gICAgICBvdXRsaW5lOiBub25lOyB9XG4gICAgLnNwaW5uZXIgaW5wdXQ6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjRmNTsgfVxuICAgIC5zcGlubmVyIGlucHV0W3R5cGU9J251bWJlciddIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICAgICAgYm9yZGVyLXJhZGl1czogMDsgfVxuICAgICAgLnNwaW5uZXIgaW5wdXRbdHlwZT0nbnVtYmVyJ106Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sIC5zcGlubmVyIGlucHV0W3R5cGU9J251bWJlciddOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7IH1cbiAgLnNwaW5uZXIgLm1pbnVzLFxuICAuc3Bpbm5lciAucGx1cyB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZsZXgtYmFzaXM6IDIycHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHVzZXItc2VsZWN0OiBub25lOyB9XG4gICAgLnNwaW5uZXIgLm1pbnVzOjphZnRlciwgLnNwaW5uZXIgLm1pbnVzOjpiZWZvcmUsXG4gICAgLnNwaW5uZXIgLnBsdXM6OmFmdGVyLFxuICAgIC5zcGlubmVyIC5wbHVzOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzYxNjA2MDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0b3A6IDA7IH1cbiAgICAuc3Bpbm5lciAubWludXM6aG92ZXIsXG4gICAgLnNwaW5uZXIgLnBsdXM6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NjYzsgfVxuICAgIC5zcGlubmVyIC5taW51cy5kaXNhYmxlZCxcbiAgICAuc3Bpbm5lciAucGx1cy5kaXNhYmxlZCB7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgb3BhY2l0eTogLjU7IH1cbiAgICAgIC5zcGlubmVyIC5taW51cy5kaXNhYmxlZDpob3ZlcixcbiAgICAgIC5zcGlubmVyIC5wbHVzLmRpc2FibGVkOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjRmNTsgfVxuICAuc3Bpbm5lciAubWludXMge1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDsgfVxuICAgIC5zcGlubmVyIC5taW51czo6YWZ0ZXIge1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICB3aWR0aDogNXB4OyB9XG4gICAgLnNwaW5uZXIgLm1pbnVzOjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAuc3Bpbm5lciAucGx1cyB7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7IH1cbiAgICAuc3Bpbm5lciAucGx1czo6YWZ0ZXIge1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICB3aWR0aDogN3B4OyB9XG4gICAgLnNwaW5uZXIgLnBsdXM6OmJlZm9yZSB7XG4gICAgICBoZWlnaHQ6IDdweDtcbiAgICAgIHdpZHRoOiAxcHg7IH1cblxuLnNwaW5uZXItLWJyaWdodCBpbnB1dCxcbi5zcGlubmVyLS1icmlnaHQgLm1pbnVzLFxuLnNwaW5uZXItLWJyaWdodCAucGx1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cblxuLnNwaW5uZXItLWwge1xuICBoZWlnaHQ6IDUwcHg7XG4gIG1pbi13aWR0aDogMTBweDtcbiAgd2lkdGg6IDEwMHB4OyB9XG4gIC5zcGlubmVyLS1sIGlucHV0LFxuICAuc3Bpbm5lci0tbCAubWludXMsXG4gIC5zcGlubmVyLS1sIC5wbHVzIHtcbiAgICBjb2xvcjogIzJlMzEzNDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA1MHB4OyB9XG4gIC5zcGlubmVyLS1sIGlucHV0IHtcbiAgICBtaW4td2lkdGg6IDQwcHg7IH1cbiAgLnNwaW5uZXItLWwgLm1pbnVzOmhvdmVyLFxuICAuc3Bpbm5lci0tbCAucGx1czpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjRmNTsgfVxuXG4uc3Bpbm5lci0tcyB7XG4gIGhlaWdodDogMzBweDtcbiAgbWluLXdpZHRoOiAxMHB4O1xuICB3aWR0aDogNC41ZW07IH1cbiAgLnNwaW5uZXItLXMgaW5wdXQsXG4gIC5zcGlubmVyLS1zIC5taW51cyxcbiAgLnNwaW5uZXItLXMgLnBsdXMge1xuICAgIGhlaWdodDogMzBweDtcbiAgICBsaW5lLWhlaWdodDogMzBweDsgfVxuICAuc3Bpbm5lci0tcyBpbnB1dCB7XG4gICAgbWluLXdpZHRoOiAyNXB4OyB9XG5cbi5oaWRlLXdlYmtpdC1idXR0b25zOjotd2Via2l0LWF1dG8tZmlsbC1idXR0b24sIC5oaWRlLXdlYmtpdC1idXR0b25zOjotd2Via2l0LWNvbnRhY3RzLWF1dG8tZmlsbC1idXR0b24ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmlucHV0LXRleHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3gtc2hhZG93OiBub25lO1xuICBjb2xvcjogIzJlMzEzNDtcbiAgZm9udC1mYW1pbHk6IFwiUHJveGltYSBOb3ZhIFcwMVwiLCBcIkhlbHZldGljYSBOZXVlXCIsIENhbGlicmksIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgaGVpZ2h0OiAyOHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBwYWRkaW5nOiAwIDE2cHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMnMgZWFzZS1vdXQ7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5pbnB1dC10ZXh0Oi13ZWJraXQtYXV0b2ZpbGwge1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDAgMTAwMHB4ICNmZmYgaW5zZXQ7XG4gICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDA7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciA1MDAwcyBlYXNlLWluLW91dCAwczsgfVxuICAuZm9ybS1jb2x1bW4uaGFzLXZhbHVlIC5pbnB1dC10ZXh0IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApOyB9XG4gICAgLmZvcm0tY29sdW1uLmhhcy12YWx1ZSAuaW5wdXQtdGV4dDo6LXdlYmtpdC1jb250YWN0cy1hdXRvLWZpbGwtYnV0dG9uIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApOyB9XG4gICAgLmZvcm0tY29sdW1uLmhhcy12YWx1ZSAuaW5wdXQtdGV4dDo6LXdlYmtpdC1hdXRvLWZpbGwtYnV0dG9uLCAuZm9ybS1jb2x1bW4uaGFzLXZhbHVlIC5pbnB1dC10ZXh0Ojotd2Via2l0LWNyZWRlbnRpYWxzLWF1dG8tZmlsbC1idXR0b24ge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7IH1cbiAgLmlucHV0LXRleHQ6Zm9jdXMge1xuICAgIGNvbG9yOiAjMTYxYTFkO1xuICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgLmlucHV0LXRleHQ6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogIzkzOTE5MTsgfVxuICAuaW5wdXQtdGV4dDo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgb3BhY2l0eTogMTsgfVxuICAuaW5wdXQtdGV4dDo6LXdlYmtpdC1hdXRvZmlsbCB7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMCAzMHB4IHdoaXRlIGluc2V0O1xuICAgIGhlaWdodDogMzlweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiA5cHg7IH1cbiAgLmlucHV0LXRleHQ6Oi1tcy1jbGVhciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuaW5wdXQtdGV4dC0tdGlnaHQge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC5pbnB1dC10ZXh0LS10aWdodC1sZWZ0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLmlucHV0LXRleHQtLXRpZ2h0LXJpZ2h0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC5pbnB1dC10ZXh0LmhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLmlucHV0LXRleHQtc3RhdGljIHtcbiAgY29sb3I6ICM5MzkxOTE7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgaGVpZ2h0OiAzOHB4O1xuICBsaW5lLWhlaWdodDogMzhweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cbiAgLmZvcm0tY29sdW1uLmhhcy12YWx1ZSAuaW5wdXQtdGV4dC1zdGF0aWMge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7IH1cbiAgLmVkZ2UgW2RhdGEtYmVoYXZpb3J+PSdhdXRvLXNpemUnXSArIC5pbnB1dC10ZXh0LXN0YXRpYyxcbiAgLmlvcyBbZGF0YS1iZWhhdmlvcn49J2F1dG8tc2l6ZSddICsgLmlucHV0LXRleHQtc3RhdGljIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0ycHgsIDAsIDApOyB9XG4gIC5lZGdlIC5mb3JtLWNvbHVtbi5oYXMtdmFsdWUgW2RhdGEtYmVoYXZpb3J+PSdhdXRvLXNpemUnXSArIC5pbnB1dC10ZXh0LXN0YXRpYyxcbiAgLmlvcyAuZm9ybS1jb2x1bW4uaGFzLXZhbHVlIFtkYXRhLWJlaGF2aW9yfj0nYXV0by1zaXplJ10gKyAuaW5wdXQtdGV4dC1zdGF0aWMge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTJweCwgMTBweCwgMCk7IH1cbiAgLmlucHV0LXRleHQtc3RhdGljLmhhcy12YWx1ZSB7XG4gICAgY29sb3I6ICMyZTMxMzQ7IH1cblxuLmlucHV0LXRleHQtLXRleHRhcmVhIHtcbiAgaGVpZ2h0OiAxMTZweDtcbiAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgcGFkZGluZy1sZWZ0OiAxNnB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxNnB4O1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcmVzaXplOiBub25lOyB9XG5cbi5wYXNzd29yZC10b2dnbGUge1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY29sb3I6ICMwMDZkYmE7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDMycHg7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG4gIC5wYXNzd29yZC10b2dnbGU6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5wYXNzd29yZC10b2dnbGU6YWN0aXZlIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIHRvcDogNTAlOyB9XG5cbi5oZWFkZXItYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE2MWExZDtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGxldHRlci1zcGFjaW5nOiAwLjFlbTtcbiAgbWF4LWhlaWdodDogNDBweDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmhlYWRlci1iYXIgLmhlYWRlci1jb3B5IHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbi5oZWFkZXItYmFyIC5hdmF0YXIge1xuICBoZWlnaHQ6IDQwcHg7XG4gIHdpZHRoOiA0MHB4OyB9XG5cbi5oZWFkZXItY29sdW1uIHtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB6LWluZGV4OiAxOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAuaGVhZGVyLWNvbHVtbiB7XG4gICAgICBmb250LXNpemU6IDEwcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmhlYWRlci1jb2x1bW4ge1xuICAgICAgZm9udC1zaXplOiAxMXB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5oZWFkZXItY29sdW1uIHtcbiAgICAgIGZvbnQtc2l6ZTogMTFweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmhlYWRlci1jb2x1bW4ge1xuICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgLmhlYWRlci1jb2x1bW5bZGF0YS1iZWhhdmlvcl0sIC5oZWFkZXItY29sdW1uW2hyZWZdIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1vdXQ7IH1cbiAgICAuaGVhZGVyLWNvbHVtbltkYXRhLWJlaGF2aW9yXTpob3ZlciwgLmhlYWRlci1jb2x1bW5bZGF0YS1iZWhhdmlvcl06YWN0aXZlLCAuaGVhZGVyLWNvbHVtbltocmVmXTpob3ZlciwgLmhlYWRlci1jb2x1bW5baHJlZl06YWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzNmQyYjY7IH1cbiAgLmhlYWRlci1jb2x1bW4uaGVhZGVyLW1haW4ge1xuICAgIGZsZXg6IDE7IH1cblxuLmhlYWRlci1jb2x1bW4gLmNvcHkge1xuICBjb2xvcjogI2ZmZjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4uaGVhZGVyLWNvbHVtbi5ib3JkZXItbGVmdCB7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzVhNjA2NjsgfVxuXG4uaGVhZGVyLWNvbHVtbi5ib3JkZXItcmlnaHQge1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjNWE2MDY2OyB9XG5cbi5oZWFkZXItY29sdW1uLmNhcnQge1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICM1YTYwNjY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHBhZGRpbmctcmlnaHQ6IDFlbTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmhlYWRlci1jb2x1bW4uY2FydCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjVlbTsgfSB9XG4gIC5oZWFkZXItY29sdW1uLmNhcnQ6aG92ZXIgLnRvdGFsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGNvbG9yOiAjMDBhN2UwOyB9XG4gIC5oZWFkZXItY29sdW1uLmNhcnQgLmNvcHkge1xuICAgIHBhZGRpbmctbGVmdDogMS41ZW07IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLmhlYWRlci1jb2x1bW4uY2FydCAuY29weSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAuaGVhZGVyLWNvbHVtbi5jYXJ0IC50b3RhbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwYTdlMDtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgcGFkZGluZzogLjRlbSAuN2VtO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2Utb3V0LCBjb2xvciAuMnMgZWFzZS1vdXQ7IH1cbiAgLmhlYWRlci1jb2x1bW4uY2FydC0tZXJyb3IgLnRvdGFsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWEzZjNmOyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlci1jb2x1bW4uYWNjb3VudCB7XG4gICAgcGFkZGluZy1yaWdodDogNXB4OyB9IH1cblxuLmhlYWRlci1jb2x1bW4uYWNjb3VudCAuY29weSB7XG4gIHBhZGRpbmctbGVmdDogMS4yZW07IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuaGVhZGVyLWNvbHVtbi5hY2NvdW50IC5jb3B5IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uaGVhZGVyLWNvbHVtbiAuZmxhZyB7XG4gIG1hcmdpbjogMCAxNXB4O1xuICB3aWR0aDogMTZweDsgfVxuXG4uaGVhZGVyLWNvbHVtbi5zcG9uc29yIC5jb3B5IHtcbiAgcGFkZGluZzogMCAuOTJlbTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5oZWFkZXItY29sdW1uLnNwb25zb3IgLmNvcHkge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbioge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbmh0bWwubm8tc2Nyb2xsIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICBodG1sLm5vLXNjcm9sbCBib2R5IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbmxhYmVsW2Zvcl06bm90KFtmb3I9JyddKSB7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4uYXBwLWRvd25sb2FkLWxpbmstbGlzdCAuYXBwLWRvd25sb2FkLWxpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMCA1cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxNzVweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApIGFuZCAobWF4LXdpZHRoOiA1MzFweCkge1xuICAgIC5hcHAtZG93bmxvYWQtbGluay1saXN0IC5hcHAtZG93bmxvYWQtbGluazpudGgtY2hpbGQoMm4rMSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfSB9XG4gIC5hcHAtZG93bmxvYWQtbGluay1saXN0IC5hcHAtZG93bmxvYWQtbGluayAuaW1nIHtcbiAgICBoZWlnaHQ6IDU0cHg7XG4gICAgd2lkdGg6IDE3NXB4OyB9XG4gIC5hcHAtZG93bmxvYWQtbGluay1saXN0IC5hcHAtZG93bmxvYWQtbGluayAubGluayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi5hdmF0YXIge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmNGY1O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiA1MHB4OyB9XG4gIC5hdmF0YXI6bm90KC5hdmF0YXItLWZ1bGwpIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7IH1cblxuLmF2YXRhciAuaW1hZ2Uge1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBib3R0b206IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgbWFyZ2luOiBhdXRvO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAyOyB9XG5cbi5hdmF0YXIgLmluaXRpYWxzIHtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBsZXR0ZXItc3BhY2luZzogLjA1ZW07XG4gIG1hcmdpbi1yaWdodDogLS4wMjVlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgei1pbmRleDogMTsgfVxuICAuYXZhdGFyIC5pbml0aWFscyxcbiAgYSAuYXZhdGFyIC5pbml0aWFscyB7XG4gICAgY29sb3I6ICM2MTYwNjA7IH1cblxuLmNvbnRlbnQtd3JhcHBlciB7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1heC13aWR0aDogMTI4MHB4OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAuY29udGVudC13cmFwcGVyIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5jb250ZW50LXdyYXBwZXIge1xuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogNDBweDsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTQwOHB4KSB7XG4gIC5jb250ZW50LXdyYXBwZXItLWZsdWlkIHtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSAoMTVweCAqIDQgKiAyKSk7IH0gfVxuXG4uY29udGVudC13cmFwcGVyLS1mdWxsLWJsZWVkIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG5cbi5jb250ZW50LXdyYXBwZXItLW5hcnJvdyB7XG4gIG1heC13aWR0aDogODk2cHg7IH1cblxuLmhpZGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5oaWRlLWJ5LWRlZmF1bHQ6bm90KC5zaG93KSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmhyLWlubGluZSB7XG4gIGJvcmRlcjogMDtcbiAgZmxleDogMTtcbiAgaGVpZ2h0OiAycHg7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmhyLWlubGluZTo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkOWQ5ZDk7XG4gICAgY29udGVudDogJyc7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiBjYWxjKDUwJSAtIDFweCk7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICBAbWVkaWEgcHJpbnQge1xuICAgICAgLmhyLWlubGluZTo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMwMDA7XG4gICAgICAgIHRvcDogY2FsYyg1MCUgLSAzcHgpOyB9IH1cblxuLmxheW91dC10d28tY29sdW1uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg5NnB4KSB7XG4gICAgLmxheW91dC10d28tY29sdW1uIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH0gfVxuICAubGF5b3V0LXR3by1jb2x1bW4tLWNlbnRlciB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLmxheW91dC10d28tY29sdW1uLS13cmFwIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubGF5b3V0LXR3by1jb2x1bW4tLXdyYXAgLmxheW91dC1jb2x1bW4ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgICAgICAubGF5b3V0LXR3by1jb2x1bW4tLXdyYXAgLmxheW91dC1jb2x1bW4ge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH0gfVxuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgLmxheW91dC10d28tY29sdW1uLS13cmFwIC5sYXlvdXQtY29sdW1uIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9IH1cbiAgLmxheW91dC10d28tY29sdW1uIC5sYXlvdXQtY29sdW1uOm9ubHktY2hpbGQge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODk2cHgpIHtcbiAgICAubGF5b3V0LXR3by1jb2x1bW4gLmxheW91dC1jb2x1bW4ge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMjVweCk7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg5NnB4KSB7XG4gICAgLmxheW91dC10d28tY29sdW1uIC5sYXlvdXQtY29sdW1uLS1tYXJnaW4tbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gNTBweCk7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAubGF5b3V0LXR3by1jb2x1bW4tLXdlaWdodGVkIC5sYXlvdXQtY29sdW1uOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwJTsgfSB9XG5cbi5vZmZzY3JlZW4ge1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIGhlaWdodDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHdpZHRoOiAxcHg7IH1cblxuLnBhZ2luYXRpb24tbmF2IHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAucGFnaW5hdGlvbi1uYXYgLmxpbmsge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zNSk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiA4cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLW91dCwgYm9yZGVyLWNvbG9yIC4ycyBlYXNlLW91dDtcbiAgICB3aWR0aDogOHB4OyB9XG4gICAgLnBhZ2luYXRpb24tbmF2IC5saW5rLmFjdGl2ZSB7XG4gICAgICBhbmltYXRpb246IHB1bHNlIC4ycyBlYXNlLW91dCAxO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgICAgIGJvcmRlci1jb2xvcjogIzAwMDsgfVxuICAgIC5wYWdpbmF0aW9uLW5hdiAubGluayAudGV4dCB7XG4gICAgICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgd2lkdGg6IDFweDsgfVxuXG4ucGFnaW5hdGlvbi1uYXYtLXJldmVyc2VkIC5saW5rIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM1KTsgfVxuICAucGFnaW5hdGlvbi1uYXYtLXJldmVyc2VkIC5saW5rLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBib3JkZXItY29sb3I6ICNmZmY7IH1cblxuLnRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cblt2LWNsb2FrXSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4uZWxsaXBzaXMtbG9hZGVyIC5kb3Qge1xuICBhbmltYXRpb24tZHVyYXRpb246IDEuNXM7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICBhbmltYXRpb24tbmFtZTogZWxsaXBzaXMtbG9hZGVyO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlKG91dC1xdWFkKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwYTdlMDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogNnB4O1xuICBtYXJnaW4tbGVmdDogMXB4O1xuICBtYXJnaW4tcmlnaHQ6IDFweDtcbiAgb3BhY2l0eTogMDtcbiAgd2lkdGg6IDZweDsgfVxuICAuZWxsaXBzaXMtbG9hZGVyIC5kb3Q6bnRoLWNoaWxkKDIpIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuM3M7IH1cbiAgLmVsbGlwc2lzLWxvYWRlciAuZG90Om50aC1jaGlsZCgzKSB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAwLjZzOyB9XG5cbi5lbGxpcHNpcy1sb2FkZXIgLnRleHQge1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIGhlaWdodDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHdpZHRoOiAxcHg7IH1cblxuLmVsbGlwc2lzLWxvYWRlci0tcmV2ZXJzZWQgLmRvdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cblxuQGtleWZyYW1lcyBlbGxpcHNpcy1sb2FkZXIge1xuICAwJSB7XG4gICAgb3BhY2l0eTogLjU7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjUpOyB9XG4gIDM1JSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTsgfSB9XG5cbi5tb2RhbCB7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbjogYXV0bztcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgbWF4LXdpZHRoOiA1MDBweDtcbiAgb3BhY2l0eTogMDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwcHgpO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLW91dCwgdHJhbnNmb3JtIC4ycyBlYXNlLW91dCwgdmlzaWJpbGl0eSAwcyAuMnM7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDMwOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAubW9kYWwge1xuICAgICAgbWF4LWhlaWdodDogOTV2aDtcbiAgICAgIG1heC13aWR0aDogNzAwcHg7XG4gICAgICB0b3A6IDIuNXZoOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5tb2RhbCB7XG4gICAgICBwYWRkaW5nLXRvcDogNDBweDsgfSB9XG4gIC5tb2RhbC5zaG93IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDBzLCBvcGFjaXR5IC4ycyBlYXNlLW91dCwgdHJhbnNmb3JtIC4ycyBlYXNlLW91dDtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gIC5tb2RhbCAuaGVhZGluZyB7XG4gICAgZm9udC1zaXplOiAyMXB4O1xuICAgIGNvbG9yOiAjMDBhN2UwO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgICAubW9kYWwgLmhlYWRpbmcge1xuICAgICAgICBmb250LXNpemU6IDIycHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAgIC5tb2RhbCAuaGVhZGluZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLm1vZGFsIC5oZWFkaW5nIHtcbiAgICAgICAgZm9udC1zaXplOiAyOHB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLm1vZGFsIC5oZWFkaW5nIHtcbiAgICAgICAgZm9udC1zaXplOiAzMnB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgICAubW9kYWwgLmhlYWRpbmcge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG4ubW9kYWwgLmZvcm0tY29udGFpbmVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ubW9kYWwtY29sdW1uIHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLm1vZGFsLWNvbHVtbiB7XG4gICAgICBmbGV4LWJhc2lzOiBjYWxjKDUwJSAtIDEwcHgpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIC5tb2RhbC1jb2x1bW4uY2hlY2tlZCAubWlycm9yLWNoZWNrZWQge1xuICAgIGFuaW1hdGlvbjogZmxhc2ggLjJzIGVhc2Utb3V0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogLjFzO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1vZGFsLWNvbHVtbi0tZnVsbCB7XG4gICAgZmxleC1iYXNpczogMTAwJTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1vZGFsLXJvdyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDsgfSB9XG5cbi5tb2RhbC1yb3cgLmZvcm0tbW9kdWxlIHtcbiAgcGFkZGluZy1ib3R0b206IDA7IH1cblxuLm1vZGFsLXJvdyAuaGlkZS1pZi11bmNoZWNrZWQge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5tb2RhbC1yb3cgLm1pcnJvci1jaGVja2VkIHtcbiAgb3BhY2l0eTogLjM1O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLW91dDsgfVxuXG4ub3ZlcmxheSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgb3BhY2l0eTogMDtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgdHJhbnNpdGlvbjogLjJzIG9wYWNpdHkgZWFzZS1vdXQsIDBzIHZpc2liaWxpdHkgLjJzO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAyMDsgfVxuICAub3ZlcmxheS5pbnZpc2libGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5vdmVybGF5LmxpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gICAgLm92ZXJsYXkubGlnaHQuc2hvdyB7XG4gICAgICBvcGFjaXR5OiAuOTU7IH1cbiAgLm92ZXJsYXkuc2hvdyB7XG4gICAgb3BhY2l0eTogLjg7XG4gICAgdHJhbnNpdGlvbjogMHMgdmlzaWJpbGl0eSwgLjJzIG9wYWNpdHkgZWFzZS1vdXQ7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuXG5bZGF0YS1iZWhhdmlvcn49J2JsdXItYmVoaW5kLW92ZXJsYXknXSB7XG4gIHRyYW5zaXRpb246IGZpbHRlciAuMnMgZWFzZS1vdXQ7IH1cbiAgW2RhdGEtYmVoYXZpb3J+PSdibHVyLWJlaGluZC1vdmVybGF5J10uYmx1cnJlZCB7XG4gICAgZmlsdGVyOiBibHVyKDVweCk7IH1cblxuLnByb2Nlc3NpbmctbW9kYWwge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBsZWZ0OiAwO1xuICBvcGFjaXR5OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICB0cmFuc2Zvcm06IHNjYWxlKDIpO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNHMgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpLCB0cmFuc2Zvcm0gMC40cyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSksIHZpc2liaWxpdHkgMHMgMC40cztcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMzA7IH1cbiAgLnByb2Nlc3NpbmctbW9kYWwuc2hvdyB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zaXRpb246IHZpc2liaWxpdHkgMHMsIG9wYWNpdHkgLjRzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gLjRzIGVhc2Utb3V0O1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgLnByb2Nlc3NpbmctbW9kYWwgLmJ1dHRvbixcbiAgLnByb2Nlc3NpbmctbW9kYWwgLmJ0biB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzVweDsgfVxuICAgIC5wcm9jZXNzaW5nLW1vZGFsIC5idXR0b24uaGlkZGVuLFxuICAgIC5wcm9jZXNzaW5nLW1vZGFsIC5idG4uaGlkZGVuIHtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAucHJvY2Vzc2luZy1tb2RhbCAuaGVhZGluZyB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGNvbG9yOiAjNjE2MDYwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjNlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjVlbTtcbiAgICBtYXgtd2lkdGg6IDE3ZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgICAgLnByb2Nlc3NpbmctbW9kYWwgLmhlYWRpbmcge1xuICAgICAgICBmb250LXNpemU6IDE5cHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAgIC5wcm9jZXNzaW5nLW1vZGFsIC5oZWFkaW5nIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAucHJvY2Vzc2luZy1tb2RhbCAuaGVhZGluZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjFweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5wcm9jZXNzaW5nLW1vZGFsIC5oZWFkaW5nIHtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAucHJvY2Vzc2luZy1tb2RhbCAuaW1nIHtcbiAgICAgIHdpZHRoOiAxNTBweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgICAucHJvY2Vzc2luZy1tb2RhbCAuaW1nIHtcbiAgICAgIHdpZHRoOiAyMjVweDsgfSB9XG5cbi5wcm9kdWN0LWNsYWltLXN0YXRlbWVudCB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U1ZTVlNTtcbiAgbGluZS1oZWlnaHQ6IDEuM2VtO1xuICBtYXJnaW4tYm90dG9tOiAxLjVlbTtcbiAgbWFyZ2luLXRvcDogMS41ZW07XG4gIHBhZGRpbmc6IDAuODY2NjdlbSAxLjNlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAucHJvZHVjdC1jbGFpbS1zdGF0ZW1lbnQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgICAgIG1hcmdpbi10b3A6IDQ1cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5wcm9kdWN0LWNsYWltLXN0YXRlbWVudCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgICAgbWFyZ2luLXRvcDogNjBweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAucHJvZHVjdC1jbGFpbS1zdGF0ZW1lbnQge1xuICAgICAgZm9udC1zaXplOiAxMHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5wcm9kdWN0LWNsYWltLXN0YXRlbWVudCB7XG4gICAgICBmb250LXNpemU6IDExcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLnByb2R1Y3QtY2xhaW0tc3RhdGVtZW50IHtcbiAgICAgIGZvbnQtc2l6ZTogMTFweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLnByb2R1Y3QtY2xhaW0tc3RhdGVtZW50IHtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDsgfSB9XG4gIC5wcm9kdWN0LWNsYWltLXN0YXRlbWVudDplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4ucHJvZHVjdHMtZW1wdHktY2FydCB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgY29sb3I6ICM2MTYwNjA7XG4gIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgcGFkZGluZy1ib3R0b206IDRlbTtcbiAgcGFkZGluZy1sZWZ0OiAxLjVlbTtcbiAgcGFkZGluZy1yaWdodDogMS41ZW07XG4gIHBhZGRpbmctdG9wOiA0ZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgLnByb2R1Y3RzLWVtcHR5LWNhcnQge1xuICAgICAgZm9udC1zaXplOiAxM3B4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5wcm9kdWN0cy1lbXB0eS1jYXJ0IHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAucHJvZHVjdHMtZW1wdHktY2FydCB7XG4gICAgICBmb250LXNpemU6IDE0cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5wcm9kdWN0cy1lbXB0eS1jYXJ0IHtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDsgfSB9XG4gIC5wcm9kdWN0cy1lbXB0eS1jYXJ0IC5oZWFkaW5nIHtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgY29sb3I6ICMxNjFhMWQ7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG4gICAgbWFyZ2luLWJvdHRvbTogLjNlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgICAgLnByb2R1Y3RzLWVtcHR5LWNhcnQgLmhlYWRpbmcge1xuICAgICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAgIC5wcm9kdWN0cy1lbXB0eS1jYXJ0IC5oZWFkaW5nIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAucHJvZHVjdHMtZW1wdHktY2FydCAuaGVhZGluZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5wcm9kdWN0cy1lbXB0eS1jYXJ0IC5oZWFkaW5nIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgLnByb2R1Y3RzLWVtcHR5LWNhcnQgLmJ0bixcbiAgLnByb2R1Y3RzLWVtcHR5LWNhcnQgLmJ1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogMmVtOyB9XG5cbi5wcm9kdWN0cy10YWJsZSB7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAucHJvZHVjdHMtdGFibGUge1xuICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICBwYWRkaW5nLXRvcDogMTBweDsgfSB9XG4gIC5wcm9kdWN0cy10YWJsZSB0ZCxcbiAgLnByb2R1Y3RzLXRhYmxlIHRoIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207IH1cbiAgLnByb2R1Y3RzLXRhYmxlIC5saW5lLTEge1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBjb2xvcjogIzE2MWExZDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgICAucHJvZHVjdHMtdGFibGUgLmxpbmUtMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgICAgLnByb2R1Y3RzLXRhYmxlIC5saW5lLTEge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5wcm9kdWN0cy10YWJsZSAubGluZS0xIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLnByb2R1Y3RzLXRhYmxlIC5saW5lLTEge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICAgIC5wcm9kdWN0cy10YWJsZSAubGluZS0xIC51aS1pY29uIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IC0xNHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcbiAgICAgIG1hcmdpbi10b3A6IC0xNHB4OyB9XG4gICAgLnByb2R1Y3RzLXRhYmxlIC5saW5lLTEgLnVpLWljb24tc3Vic2NyaXB0aW9uIHtcbiAgICAgIGZpbGw6ICNmNjY7IH1cbiAgLnByb2R1Y3RzLXRhYmxlIC5saW5lLTIge1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBjb2xvcjogIzYxNjA2MDtcbiAgICBtYXJnaW4tdG9wOiA2cHg7IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgICAucHJvZHVjdHMtdGFibGUgLmxpbmUtMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgICAgLnByb2R1Y3RzLXRhYmxlIC5saW5lLTIge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5wcm9kdWN0cy10YWJsZSAubGluZS0yIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLnByb2R1Y3RzLXRhYmxlIC5saW5lLTIge1xuICAgICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuICAgIC5wcm9kdWN0cy10YWJsZSAubGluZS0yLS1jaG9pY2Uge1xuICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgY29sb3I6ICMwMGE3ZTA7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciAuMnMgZWFzZS1vdXQ7IH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAgICAgLnByb2R1Y3RzLXRhYmxlIC5saW5lLTItLWNob2ljZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMHB4OyB9IH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAgICAgLnByb2R1Y3RzLXRhYmxlIC5saW5lLTItLWNob2ljZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMXB4OyB9IH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgLnByb2R1Y3RzLXRhYmxlIC5saW5lLTItLWNob2ljZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMXB4OyB9IH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgIC5wcm9kdWN0cy10YWJsZSAubGluZS0yLS1jaG9pY2Uge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDsgfSB9XG4gICAgICAucHJvZHVjdHMtdGFibGUgLmxpbmUtMi0tY2hvaWNlOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICMwMDZkYmE7XG4gICAgICAgIG91dGxpbmU6IDA7IH1cbiAgICAgIC5wcm9kdWN0cy10YWJsZSAubGluZS0yLS1jaG9pY2U6aG92ZXIsIC5wcm9kdWN0cy10YWJsZSAubGluZS0yLS1jaG9pY2U6YWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICMwMDZkYmE7IH1cbiAgICAgICAgLnByb2R1Y3RzLXRhYmxlIC5saW5lLTItLWNob2ljZTpob3ZlciAuY2FyZXQsIC5wcm9kdWN0cy10YWJsZSAubGluZS0yLS1jaG9pY2U6YWN0aXZlIC5jYXJldCB7XG4gICAgICAgICAgYW5pbWF0aW9uOiB0ZWV0ZXItcmlnaHQgLjJzIGxpbmVhciAxO1xuICAgICAgICAgIGZpbGw6ICMwMDZkYmE7IH1cbiAgICAucHJvZHVjdHMtdGFibGUgLmxpbmUtMi0tbGFiZWwge1xuICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgICAgICAucHJvZHVjdHMtdGFibGUgLmxpbmUtMi0tbGFiZWwge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDsgfSB9XG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgICAgIC5wcm9kdWN0cy10YWJsZSAubGluZS0yLS1sYWJlbCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMXB4OyB9IH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgLnByb2R1Y3RzLXRhYmxlIC5saW5lLTItLWxhYmVsIHtcbiAgICAgICAgICBmb250LXNpemU6IDExcHg7IH0gfVxuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgLnByb2R1Y3RzLXRhYmxlIC5saW5lLTItLWxhYmVsIHtcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7IH0gfVxuICAgIC5wcm9kdWN0cy10YWJsZSAubGluZS0yLS1yZWFkLW9ubHkge1xuICAgICAgZm9udC1zaXplOiAxMHB4OyB9XG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgICAgIC5wcm9kdWN0cy10YWJsZSAubGluZS0yLS1yZWFkLW9ubHkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDsgfSB9XG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgICAgIC5wcm9kdWN0cy10YWJsZSAubGluZS0yLS1yZWFkLW9ubHkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDsgfSB9XG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIC5wcm9kdWN0cy10YWJsZSAubGluZS0yLS1yZWFkLW9ubHkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDsgfSB9XG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAucHJvZHVjdHMtdGFibGUgLmxpbmUtMi0tcmVhZC1vbmx5IHtcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7IH0gfVxuICAgIC5wcm9kdWN0cy10YWJsZSAubGluZS0yLmEge1xuICAgICAgY29sb3I6ICM2MTYwNjA7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIC4ycyBlYXNlLW91dDsgfVxuICAgICAgLnByb2R1Y3RzLXRhYmxlIC5saW5lLTIuYTpob3ZlciwgLnByb2R1Y3RzLXRhYmxlIC5saW5lLTIuYTphY3RpdmUge1xuICAgICAgICBjb2xvcjogIzAwYTdlMDsgfVxuICAucHJvZHVjdHMtdGFibGUgLnByaWNlLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB3aWR0aDogNzBweDsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkgYW5kIChtYXgtd2lkdGg6IDQxM3B4KSB7XG4gICAgICAucHJvZHVjdHMtdGFibGUgLnByaWNlLWNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAucHJvZHVjdHMtdGFibGUgLnByaWNlLWNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDsgfSB9XG4gICAgLnByb2R1Y3RzLXRhYmxlIC5wcmljZS1jb250YWluZXIuaGFzLWZyZXF1ZW5jeSB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tOyB9XG4gICAgICAucHJvZHVjdHMtdGFibGUgLnByaWNlLWNvbnRhaW5lci5oYXMtZnJlcXVlbmN5IC5zZWxlY3Qtd3JhcHBlciB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgLnByb2R1Y3RzLXRhYmxlIC5wcmljZS1jb250YWluZXIuaGFzLWZyZXF1ZW5jeSAuc2VsZWN0LXdyYXBwZXIge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTJweDsgfSB9XG4gICAgLnByb2R1Y3RzLXRhYmxlIC5wcmljZS1jb250YWluZXIgLmJhZGdlIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMC4zMjVlbTsgfVxuICAgIC5wcm9kdWN0cy10YWJsZSAucHJpY2UtY29udGFpbmVyIC5iZXN0LXByaWNlIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgLnByb2R1Y3RzLXRhYmxlIC5wcmljZS1jb250YWluZXIgLmJlc3QtcHJpY2U6aG92ZXIge1xuICAgICAgICBhbmltYXRpb246IDJzIHRhZGEtcGF1c2UgaW5maW5pdGU7IH1cbiAgICAucHJvZHVjdHMtdGFibGUgLnByaWNlLWNvbnRhaW5lciAuY2FyZXQge1xuICAgICAgZmlsbDogIzYxNjA2MDtcbiAgICAgIGhlaWdodDogOHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgICAgIHRyYW5zaXRpb246IGZpbGwgLjJzIGVhc2Utb3V0O1xuICAgICAgd2lkdGg6IDhweDsgfVxuICAgIC5wcm9kdWN0cy10YWJsZSAucHJpY2UtY29udGFpbmVyIC5mcmVxdWVuY3kge1xuICAgICAgaGVpZ2h0OiAxZW07XG4gICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIHdoaXRlLXNwYWNlOiBwcmU7IH1cbiAgICAucHJvZHVjdHMtdGFibGUgLnByaWNlLWNvbnRhaW5lciAubGluZS0xIHtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkgYW5kIChtYXgtd2lkdGg6IDMxOXB4KSB7XG4gICAgICAgIC5wcm9kdWN0cy10YWJsZSAucHJpY2UtY29udGFpbmVyIC5saW5lLTEge1xuICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvOyB9XG4gICAgICAgICAgLnByb2R1Y3RzLXRhYmxlIC5wcmljZS1jb250YWluZXIgLmxpbmUtMSAuYmFkZ2Uge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC43NWVtOyB9IH1cbiAgICAucHJvZHVjdHMtdGFibGUgLnByaWNlLWNvbnRhaW5lciAucHJlLWRpc2NvdW50IHtcbiAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgIGNvbG9yOiAjNjE2MDYwO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgbWFyZ2luLWJvdHRvbTogM3B4O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7IH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAgICAgLnByb2R1Y3RzLXRhYmxlIC5wcmljZS1jb250YWluZXIgLnByZS1kaXNjb3VudCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMXB4OyB9IH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAgICAgLnByb2R1Y3RzLXRhYmxlIC5wcmljZS1jb250YWluZXIgLnByZS1kaXNjb3VudCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgLnByb2R1Y3RzLXRhYmxlIC5wcmljZS1jb250YWluZXIgLnByZS1kaXNjb3VudCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgIC5wcm9kdWN0cy10YWJsZSAucHJpY2UtY29udGFpbmVyIC5wcmUtZGlzY291bnQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDsgfSB9XG4gIC5wcm9kdWN0cy10YWJsZSAucHJvZHVjdC1haGVtLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgLnByb2R1Y3RzLXRhYmxlIC5wcm9kdWN0LWJhZGdlLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgLnByb2R1Y3RzLXRhYmxlIC5wcm9kdWN0LWltYWdlLWNvbnRhaW5lciB7XG4gICAgaGVpZ2h0OiA3MHB4O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgd2lkdGg6IDcwcHg7IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApIGFuZCAobWF4LXdpZHRoOiA0MTNweCkge1xuICAgICAgLnByb2R1Y3RzLXRhYmxlIC5wcm9kdWN0LWltYWdlLWNvbnRhaW5lciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE0NnB4KSB7XG4gICAgICAucHJvZHVjdHMtdGFibGUgLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICB3aWR0aDogODBweDsgfSB9XG4gICAgLnByb2R1Y3RzLXRhYmxlIC5wcm9kdWN0LWltYWdlLWNvbnRhaW5lciBpbWcge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgLnByb2R1Y3RzLXRhYmxlIC5wcm9kdWN0LXRleHQtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICBwYWRkaW5nLXRvcDogMTVweDsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxMTQ1cHgpIHtcbiAgICAgIC5wcm9kdWN0cy10YWJsZSAucHJvZHVjdC10ZXh0LWNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDsgfSB9XG4gIC5wcm9kdWN0cy10YWJsZSAucHJvZHVjdC1yb3cge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDlkOWQ5OyB9XG4gICAgLnByb2R1Y3RzLXRhYmxlIC5wcm9kdWN0LXJvdzpsYXN0LW9mLXR5cGUge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDsgfVxuICAgIC5wcm9kdWN0cy10YWJsZSAucHJvZHVjdC1yb3cucmVtb3ZpbmcgdGQsXG4gICAgLnByb2R1Y3RzLXRhYmxlIC5wcm9kdWN0LXJvdy5yZW1vdmluZyB0aCB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNHMgZWFzZS1vdXQ7IH1cbiAgLnByb2R1Y3RzLXRhYmxlIC5xdWFudGl0eS1jb250YWluZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIHBhZGRpbmctdG9wOiAxNXB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5wcm9kdWN0cy10YWJsZSAucXVhbnRpdHktY29udGFpbmVyIC5saW5lLTItLWxhYmVsIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0OyB9XG4gIC5wcm9kdWN0cy10YWJsZSAuc2VsZWN0LXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5wcm9kdWN0cy10YWJsZSAuc2VsZWN0LXdyYXBwZXIgLmRlY295IHtcbiAgICAgIGhlaWdodDogMWVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICB3aGl0ZS1zcGFjZTogcHJlOyB9XG4gICAgLnByb2R1Y3RzLXRhYmxlIC5zZWxlY3Qtd3JhcHBlciBzZWxlY3Qge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgei1pbmRleDogMjsgfVxuICAgICAgLmlvcyAucHJvZHVjdHMtdGFibGUgLnNlbGVjdC13cmFwcGVyIHNlbGVjdCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfVxuICAgICAgLnByb2R1Y3RzLXRhYmxlIC5zZWxlY3Qtd3JhcHBlciBzZWxlY3Q6Zm9jdXMgKyAuZGVjb3kge1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBjb2xvcjogIzAwNmRiYTsgfVxuICAucHJvZHVjdHMtdGFibGUgLnNwaW5uZXItY29udGFpbmVyIHtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiA0LjVlbTsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkgYW5kIChtYXgtd2lkdGg6IDQxM3B4KSB7XG4gICAgICAucHJvZHVjdHMtdGFibGUgLnNwaW5uZXItY29udGFpbmVyIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4OyB9IH1cbiAgICAucHJvZHVjdHMtdGFibGUgLnNwaW5uZXItY29udGFpbmVyIC5zcGlubmVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG5cbi5wcm9kdWN0cy10YWJsZSAuYmFkZ2Utcm93IHRoIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5wcm9kdWN0cy10YWJsZSAuYmFkZ2Utcm93IC5iYWRnZSB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxLjVlbTsgfVxuXG4ucHJvZHVjdHMtdGFibGUgKyAucmVxdWlyZS1zc28ge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2Q5ZDlkOTsgfVxuXG4ucmVxdWlyZS1zc28ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmNGY1O1xuICBwYWRkaW5nLXRvcDogMDsgfVxuXG4ucmVxdWlyZS1zc28gLmxpbmUtMi0tbGFiZWwge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi5yZXF1aXJlLXNzbyAuc3Bpbm5lciBpbnB1dCxcbi5yZXF1aXJlLXNzbyAuc3Bpbm5lciAubWludXMsXG4ucmVxdWlyZS1zc28gLnNwaW5uZXIgLnBsdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG5cbi5zdGF0dXMtbWVzc2FnZSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gIG1hcmdpbi10b3A6IDEwcHg7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5zdGF0dXMtbWVzc2FnZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMDBweDtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH0gfVxuICAuc3RhdHVzLW1lc3NhZ2UgLmhlYWRpbmcge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBjb2xvcjogIzYxNjA2MDtcbiAgICBsaW5lLWhlaWdodDogMS4zZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMi41ZW07XG4gICAgbWF4LXdpZHRoOiAyNGVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAgIC5zdGF0dXMtbWVzc2FnZSAuaGVhZGluZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTlweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgICAgLnN0YXR1cy1tZXNzYWdlIC5oZWFkaW5nIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAuc3RhdHVzLW1lc3NhZ2UgLmhlYWRpbmcge1xuICAgICAgICBmb250LXNpemU6IDIxcHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuc3RhdHVzLW1lc3NhZ2UgLmhlYWRpbmcge1xuICAgICAgICBmb250LXNpemU6IDI0cHg7IH0gfVxuICAuc3RhdHVzLW1lc3NhZ2UgLmltZyB7XG4gICAgaGVpZ2h0OiAyMjVweDtcbiAgICB3aWR0aDogMjI1cHg7IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAuc3RhdHVzLW1lc3NhZ2UgLmltZyB7XG4gICAgICAgIGhlaWdodDogMjUwcHg7XG4gICAgICAgIHdpZHRoOiAyNTBweDsgfSB9XG4gIC5zdGF0dXMtbWVzc2FnZSAucCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG5hW2RhdGEtYmVoYXZpb3JdIHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbmJvZHkge1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgY29sb3I6ICM2MTYwNjA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgZm9udC1mYW1pbHk6IFwiUHJveGltYSBOb3ZhIFcwMVwiLCBcIkhlbHZldGljYSBOZXVlXCIsIENhbGlicmksIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7IH1cblxuLmZvbnQtc2l6ZS1kZWJ1ZyBoMSxcbi5mb250LXNpemUtZGVidWcgaDIsXG4uZm9udC1zaXplLWRlYnVnIGgzLFxuLmZvbnQtc2l6ZS1kZWJ1ZyBoNCxcbi5mb250LXNpemUtZGVidWcgaDUsXG4uZm9udC1zaXplLWRlYnVnIGg2LFxuLmZvbnQtc2l6ZS1kZWJ1ZyBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMWVtOyB9XG5cbi5mb250LXNpemUtZGVidWcgcCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjVlbTsgfVxuXG4uZm9udC1zaXplLWRlYnVnIC5oLXh4bCB7XG4gIGZvbnQtc2l6ZTogMzJweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAuaC14eGwge1xuICAgICAgZm9udC1zaXplOiA0OHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLmgteHhsIHtcbiAgICAgIGZvbnQtc2l6ZTogNTZweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5oLXh4bCB7XG4gICAgICBmb250LXNpemU6IDcycHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLmgteHhsIHtcbiAgICAgIGZvbnQtc2l6ZTogMTAwcHg7IH0gfVxuXG4uZm9udC1zaXplLWRlYnVnIC5oLXhsIHtcbiAgZm9udC1zaXplOiAyOHB4OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5oLXhsIHtcbiAgICAgIGZvbnQtc2l6ZTogMzZweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5oLXhsIHtcbiAgICAgIGZvbnQtc2l6ZTogNDhweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5oLXhsIHtcbiAgICAgIGZvbnQtc2l6ZTogNjBweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAuaC14bCB7XG4gICAgICBmb250LXNpemU6IDcycHg7IH0gfVxuXG4uZm9udC1zaXplLWRlYnVnIC5oLWwge1xuICBmb250LXNpemU6IDI0cHg7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLmgtbCB7XG4gICAgICBmb250LXNpemU6IDI4cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAuaC1sIHtcbiAgICAgIGZvbnQtc2l6ZTogMzJweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5oLWwge1xuICAgICAgZm9udC1zaXplOiA0MHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5oLWwge1xuICAgICAgZm9udC1zaXplOiA0OHB4OyB9IH1cblxuLmZvbnQtc2l6ZS1kZWJ1ZyAuaCB7XG4gIGZvbnQtc2l6ZTogMjFweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAuaCB7XG4gICAgICBmb250LXNpemU6IDIycHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAuaCB7XG4gICAgICBmb250LXNpemU6IDI0cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAuaCB7XG4gICAgICBmb250LXNpemU6IDI4cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLmgge1xuICAgICAgZm9udC1zaXplOiAzMnB4OyB9IH1cblxuLmZvbnQtc2l6ZS1kZWJ1ZyAuaC1zIHtcbiAgZm9udC1zaXplOiAxOHB4OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5oLXMge1xuICAgICAgZm9udC1zaXplOiAxOXB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLmgtcyB7XG4gICAgICBmb250LXNpemU6IDIwcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAuaC1zIHtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAuaC1zIHtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDsgfSB9XG5cbi5mb250LXNpemUtZGVidWcgLmgteHMge1xuICBmb250LXNpemU6IDE2cHg7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLmgteHMge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLmgteHMge1xuICAgICAgZm9udC1zaXplOiAxN3B4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLmgteHMge1xuICAgICAgZm9udC1zaXplOiAxN3B4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5oLXhzIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDsgfSB9XG5cbi5mb250LXNpemUtZGVidWcgLmgteHhzIHtcbiAgZm9udC1zaXplOiAxNXB4OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5oLXh4cyB7XG4gICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAuaC14eHMge1xuICAgICAgZm9udC1zaXplOiAxNXB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLmgteHhzIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAuaC14eHMge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cblxuLmZvbnQtc2l6ZS1kZWJ1ZyAucC14eGwge1xuICBmb250LXNpemU6IDIxcHg7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLnAteHhsIHtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5wLXh4bCB7XG4gICAgICBmb250LXNpemU6IDI0cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAucC14eGwge1xuICAgICAgZm9udC1zaXplOiAyOHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5wLXh4bCB7XG4gICAgICBmb250LXNpemU6IDMycHg7IH0gfVxuXG4uZm9udC1zaXplLWRlYnVnIC5wLXhsIHtcbiAgZm9udC1zaXplOiAxOHB4OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5wLXhsIHtcbiAgICAgIGZvbnQtc2l6ZTogMTlweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5wLXhsIHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5wLXhsIHtcbiAgICAgIGZvbnQtc2l6ZTogMjFweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAucC14bCB7XG4gICAgICBmb250LXNpemU6IDI0cHg7IH0gfVxuXG4uZm9udC1zaXplLWRlYnVnIC5wLWwge1xuICBmb250LXNpemU6IDE2cHg7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLnAtbCB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAucC1sIHtcbiAgICAgIGZvbnQtc2l6ZTogMTdweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5wLWwge1xuICAgICAgZm9udC1zaXplOiAxN3B4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5wLWwge1xuICAgICAgZm9udC1zaXplOiAxOHB4OyB9IH1cblxuLmZvbnQtc2l6ZS1kZWJ1ZyAucCB7XG4gIGZvbnQtc2l6ZTogMTVweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAucCB7XG4gICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAucCB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAucCB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLnAge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cblxuLmZvbnQtc2l6ZS1kZWJ1ZyAucC1zIHtcbiAgZm9udC1zaXplOiAxM3B4OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5wLXMge1xuICAgICAgZm9udC1zaXplOiAxM3B4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLnAtcyB7XG4gICAgICBmb250LXNpemU6IDE0cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAucC1zIHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAucC1zIHtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDsgfSB9XG5cbi5mb250LXNpemUtZGVidWcgLnAteHMge1xuICBmb250LXNpemU6IDExcHg7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLnAteHMge1xuICAgICAgZm9udC1zaXplOiAxMXB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLnAteHMge1xuICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLnAteHMge1xuICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5wLXhzIHtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDsgfSB9XG5cbi5mb250LXNpemUtZGVidWcgLnAteHhzIHtcbiAgZm9udC1zaXplOiAxMHB4OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAuZm9udC1zaXplLWRlYnVnIC5wLXh4cyB7XG4gICAgICBmb250LXNpemU6IDEwcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAucC14eHMge1xuICAgICAgZm9udC1zaXplOiAxMXB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5mb250LXNpemUtZGVidWcgLnAteHhzIHtcbiAgICAgIGZvbnQtc2l6ZTogMTFweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmZvbnQtc2l6ZS1kZWJ1ZyAucC14eHMge1xuICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cblxuLmFoZW0ge1xuICBmb250LXNpemU6IDEwcHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGxpbmUtaGVpZ2h0OiAxLjVlbTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgLmFoZW0ge1xuICAgICAgZm9udC1zaXplOiAxMHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5haGVtIHtcbiAgICAgIGZvbnQtc2l6ZTogMTFweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuYWhlbSB7XG4gICAgICBmb250LXNpemU6IDExcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5haGVtIHtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDsgfSB9XG4gIC5haGVtLnBlbmRpbmcge1xuICAgIGFuaW1hdGlvbjogdXBkYXRpbmcgMnMgZWFzZS1vdXQgaW5maW5pdGU7IH1cbiAgLmFoZW0gLmEge1xuICAgIGNvbG9yOiAjMDBhN2UwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIC5haGVtIC5iYWRnZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAuOGVtOyB9XG5cbi5mb290bm90ZSB7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgY29sb3I6ICM2MTYwNjA7XG4gIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgbWFyZ2luLXRvcDogMTBweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgLmZvb3Rub3RlIHtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICAuZm9vdG5vdGUge1xuICAgICAgZm9udC1zaXplOiAxMXB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5mb290bm90ZSB7XG4gICAgICBmb250LXNpemU6IDExcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5mb290bm90ZSB7XG4gICAgICBmb250LXNpemU6IDEycHg7IH0gfVxuICAuZm9vdG5vdGUuYWZ0ZXItZm9ybSB7XG4gICAgbWFyZ2luLXRvcDogMjBweDsgfVxuXG4uaGVhZGluZy1wYWdlIHtcbiAgZm9udC1zaXplOiAyMXB4O1xuICBjb2xvcjogIzAwYTdlMDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICBtYXJnaW4tYm90dG9tOiAyZW07XG4gIG1hcmdpbi10b3A6IDFlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgLmhlYWRpbmctcGFnZSB7XG4gICAgICBmb250LXNpemU6IDIycHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgLmhlYWRpbmctcGFnZSB7XG4gICAgICBmb250LXNpemU6IDI0cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmhlYWRpbmctcGFnZSB7XG4gICAgICBmb250LXNpemU6IDI4cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5oZWFkaW5nLXBhZ2Uge1xuICAgICAgZm9udC1zaXplOiAzMnB4OyB9IH1cbiAgLmhlYWRpbmctcGFnZS0tbWFyZ2luLXRvcCB7XG4gICAgbWFyZ2luLXRvcDogMmVtOyB9XG4gIC5oZWFkaW5nLXBhZ2UtLXJldmVyc2VkIHtcbiAgICBjb2xvcjogI2ZmZjsgfVxuXG5AbWVkaWEgcHJpbnQge1xuICAuaGlkZGVuLWF0LXByaW50IHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLnNlY3Rpb24taGVhZGluZy1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuc2VjdGlvbi1oZWFkaW5nLWNvbnRhaW5lciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9IH1cbiAgLnNlY3Rpb24taGVhZGluZy1jb250YWluZXIgLnNlY3Rpb24taGVhZGluZyB7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGNvbG9yOiAjNWE2MDY2O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC4wMmVtOyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgICAgLnNlY3Rpb24taGVhZGluZy1jb250YWluZXIgLnNlY3Rpb24taGVhZGluZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgICAgLnNlY3Rpb24taGVhZGluZy1jb250YWluZXIgLnNlY3Rpb24taGVhZGluZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLnNlY3Rpb24taGVhZGluZy1jb250YWluZXIgLnNlY3Rpb24taGVhZGluZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5zZWN0aW9uLWhlYWRpbmctY29udGFpbmVyIC5zZWN0aW9uLWhlYWRpbmcge1xuICAgICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuICAgIEBtZWRpYSBwcmludCB7XG4gICAgICAuc2VjdGlvbi1oZWFkaW5nLWNvbnRhaW5lciAuc2VjdGlvbi1oZWFkaW5nIHtcbiAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgIGZvbnQtc2l6ZTogOXB0OyB9IH1cblxuLnNlY3Rpb24taGVhZGluZy1jb250YWluZXItLXRpZ2h0IHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLnNlY3Rpb24taGVhZGluZy1jb250YWluZXItLXRpZ2h0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH0gfVxuXG4uc3ViLWhlYWRpbmctcGFnZSB7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgLnN1Yi1oZWFkaW5nLXBhZ2Uge1xuICAgICAgZm9udC1zaXplOiAxNXB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIC5zdWItaGVhZGluZy1wYWdlIHtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuc3ViLWhlYWRpbmctcGFnZSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5zdWItaGVhZGluZy1wYWdlIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gIC5zdWItaGVhZGluZy1wYWdlIC5pZC1udW1iZXIge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBmb250LXdlaWdodDogNzAwOyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgICAgLnN1Yi1oZWFkaW5nLXBhZ2UgLmlkLW51bWJlciB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTlweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgICAgLnN1Yi1oZWFkaW5nLXBhZ2UgLmlkLW51bWJlciB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLnN1Yi1oZWFkaW5nLXBhZ2UgLmlkLW51bWJlciB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjFweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5zdWItaGVhZGluZy1wYWdlIC5pZC1udW1iZXIge1xuICAgICAgICBmb250LXNpemU6IDI0cHg7IH0gfVxuICAuaGVhZGluZy1wYWdlICsgLnN1Yi1oZWFkaW5nLXBhZ2Uge1xuICAgIG1hcmdpbi10b3A6IC0xLjVlbTsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5oZWFkaW5nLXBhZ2UgKyAuc3ViLWhlYWRpbmctcGFnZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0yLjVlbTsgfSB9XG5cbi50ZXh0LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4udWktaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmlsbDogIzYxNjA2MDtcbiAgaGVpZ2h0OiA0MHB4O1xuICB0cmFuc2l0aW9uOiBmaWxsIC4ycyBlYXNlLW91dCwgdHJhbnNmb3JtIC4ycyBlYXNlLW91dDtcbiAgd2lkdGg6IDQwcHg7IH1cbiAgLnVpLWljb24tYnV0dG9uIC51aS1pY29uIHtcbiAgICBmaWxsOiAjMDBhN2UwOyB9XG4gICAgLnVpLWljb24tYnV0dG9uIC51aS1pY29uOmFjdGl2ZSwgLnVpLWljb24tYnV0dG9uIC51aS1pY29uOmhvdmVyIHtcbiAgICAgIGZpbGw6ICMwMDZkYmE7IH1cbiAgLnVpLWljb24tYnV0dG9uW2Rpc2FibGVkXSAudWktaWNvbiwgLnVpLWljb24tYnV0dG9uW2Rpc2FibGVkXSAudWktaWNvbjphY3RpdmUsIC51aS1pY29uLWJ1dHRvbltkaXNhYmxlZF0gLnVpLWljb246aG92ZXIge1xuICAgIGZpbGw6ICNjY2M7IH1cblxuLnVpLWljb24tLXJldmVyc2VkIHtcbiAgZmlsbDogI2ZmZjsgfVxuICAudWktaWNvbi1idXR0b24gLnVpLWljb24tLXJldmVyc2VkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBmaWxsOiAjZmZmO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2Utb3V0OyB9XG4gICAgLnVpLWljb24tYnV0dG9uIC51aS1pY29uLS1yZXZlcnNlZDpob3ZlciwgLnVpLWljb24tYnV0dG9uIC51aS1pY29uLS1yZXZlcnNlZDphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwYTdlMDtcbiAgICAgIGZpbGw6ICNmZmY7IH1cblxuLnVpLWljb24tLWRhcmsge1xuICBmaWxsOiAjMTYxYTFkOyB9XG4gIC51aS1pY29uLS1kYXJrOmhvdmVyIHtcbiAgICBmaWxsOiBibGFjazsgfVxuXG4udWktaWNvbi0tcyB7XG4gIGhlaWdodDogMjRweDtcbiAgd2lkdGg6IDI0cHg7IH1cblxuLnVpLWljb24tLW0ge1xuICBoZWlnaHQ6IDMycHg7XG4gIHdpZHRoOiAzMnB4OyB9XG5cbi51aS1pY29uLS1sIHtcbiAgaGVpZ2h0OiA0OHB4O1xuICB3aWR0aDogNDhweDsgfVxuXG4udWktaWNvbi0teGwge1xuICBoZWlnaHQ6IDY0cHg7XG4gIHdpZHRoOiA2NHB4OyB9XG5cbi51aS1pY29uLS14eGwge1xuICBoZWlnaHQ6IDgwcHg7XG4gIHdpZHRoOiA4MHB4OyB9XG5cbi51aS1pY29uLS1iZy1yb3VuZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQyLCAyNDQsIDI0NSwgMC44NSk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1pbi1vdXQ7IH1cbiAgLnVpLWljb24tLWJnLXJvdW5kOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDlkOWQ5OyB9XG5cbi51aS1pY29uLWNoZXZyb24ge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTsgfVxuXG4udWktaWNvbi1jaGV2cm9uLS1sZWZ0IHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpOyB9XG5cbi51aS1pY29uLWNoZXZyb24tLXJpZ2h0IHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTsgfVxuXG4udWktaWNvbi1jaGV2cm9uLS11cCB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH1cblxuLnVpLWljb24tYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDA7XG4gIG91dGxpbmU6IDA7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLnVpLWljb24tYnV0dG9uLnBvaW50ZXIsIC51aS1pY29uLWJ1dHRvbltocmVmXSwgLnVpLWljb24tYnV0dG9uW2RhdGEtYmVoYXZpb3JdIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLnVpLWljb24tYnV0dG9uW2Rpc2FibGVkXSB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG5hLnZhbmlsbGEsIGFbY2xhc3M9JyddLCBhOm5vdChbY2xhc3NdKSB7XG4gIGNvbG9yOiAjMDBhN2UwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB0cmFuc2l0aW9uOiBjb2xvciAuMnMgZWFzZS1vdXQ7IH1cbiAgYS52YW5pbGxhOmhvdmVyLCBhW2NsYXNzPScnXTpob3ZlciwgYTpub3QoW2NsYXNzXSk6aG92ZXIge1xuICAgIGNvbG9yOiAjMDA2ZGJhOyB9XG5cbmFiYnIudmFuaWxsYSwgYWJicltjbGFzcz0nJ10sIGFiYnI6bm90KFtjbGFzc10pIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbmFjcm9ueW0udmFuaWxsYSwgYWNyb255bVtjbGFzcz0nJ10sIGFjcm9ueW06bm90KFtjbGFzc10pIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgY3Vyc29yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuYi52YW5pbGxhLCBiW2NsYXNzPScnXSwgYjpub3QoW2NsYXNzXSksXG5zdHJvbmcudmFuaWxsYSxcbnN0cm9uZ1tjbGFzcz0nJ10sXG5zdHJvbmc6bm90KFtjbGFzc10pIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG5kbC52YW5pbGxhIGRkLCBkbFtjbGFzcz0nJ10gZGQsIGRsOm5vdChbY2xhc3NdKSBkZCB7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgY29sb3I6ICMyZTMxMzQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjNlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNWVtOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICBkbC52YW5pbGxhIGRkLCBkbFtjbGFzcz0nJ10gZGQsIGRsOm5vdChbY2xhc3NdKSBkZCB7XG4gICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgZGwudmFuaWxsYSBkZCwgZGxbY2xhc3M9JyddIGRkLCBkbDpub3QoW2NsYXNzXSkgZGQge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGRsLnZhbmlsbGEgZGQsIGRsW2NsYXNzPScnXSBkZCwgZGw6bm90KFtjbGFzc10pIGRkIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgZGwudmFuaWxsYSBkZCwgZGxbY2xhc3M9JyddIGRkLCBkbDpub3QoW2NsYXNzXSkgZGQge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgQG1lZGlhIHByaW50IHtcbiAgICBkbC52YW5pbGxhIGRkLCBkbFtjbGFzcz0nJ10gZGQsIGRsOm5vdChbY2xhc3NdKSBkZCB7XG4gICAgICBjb2xvcjogIzAwMDtcbiAgICAgIGZvbnQtc2l6ZTogMTBwdDsgfSB9XG5cbmRsLnZhbmlsbGEgZHQsIGRsW2NsYXNzPScnXSBkdCwgZGw6bm90KFtjbGFzc10pIGR0IHtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBjb2xvcjogIzkzOTE5MTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbWFyZ2luLWJvdHRvbTogLjJlbTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgZGwudmFuaWxsYSBkdCwgZGxbY2xhc3M9JyddIGR0LCBkbDpub3QoW2NsYXNzXSkgZHQge1xuICAgICAgZm9udC1zaXplOiAxMHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIGRsLnZhbmlsbGEgZHQsIGRsW2NsYXNzPScnXSBkdCwgZGw6bm90KFtjbGFzc10pIGR0IHtcbiAgICAgIGZvbnQtc2l6ZTogMTFweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBkbC52YW5pbGxhIGR0LCBkbFtjbGFzcz0nJ10gZHQsIGRsOm5vdChbY2xhc3NdKSBkdCB7XG4gICAgICBmb250LXNpemU6IDExcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIGRsLnZhbmlsbGEgZHQsIGRsW2NsYXNzPScnXSBkdCwgZGw6bm90KFtjbGFzc10pIGR0IHtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDsgfSB9XG4gIEBtZWRpYSBwcmludCB7XG4gICAgZGwudmFuaWxsYSBkdCwgZGxbY2xhc3M9JyddIGR0LCBkbDpub3QoW2NsYXNzXSkgZHQge1xuICAgICAgZm9udC1zaXplOiA4cHQ7IH0gfVxuXG5oMS52YW5pbGxhLCBoMVtjbGFzcz0nJ10sIGgxOm5vdChbY2xhc3NdKSB7XG4gIGZvbnQtc2l6ZTogMjhweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgaDEudmFuaWxsYSwgaDFbY2xhc3M9JyddLCBoMTpub3QoW2NsYXNzXSkge1xuICAgICAgZm9udC1zaXplOiAzNnB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIGgxLnZhbmlsbGEsIGgxW2NsYXNzPScnXSwgaDE6bm90KFtjbGFzc10pIHtcbiAgICAgIGZvbnQtc2l6ZTogNDhweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBoMS52YW5pbGxhLCBoMVtjbGFzcz0nJ10sIGgxOm5vdChbY2xhc3NdKSB7XG4gICAgICBmb250LXNpemU6IDYwcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIGgxLnZhbmlsbGEsIGgxW2NsYXNzPScnXSwgaDE6bm90KFtjbGFzc10pIHtcbiAgICAgIGZvbnQtc2l6ZTogNzJweDsgfSB9XG5cbmgyLnZhbmlsbGEsIGgyW2NsYXNzPScnXSwgaDI6bm90KFtjbGFzc10pIHtcbiAgZm9udC1zaXplOiAyNHB4OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICBoMi52YW5pbGxhLCBoMltjbGFzcz0nJ10sIGgyOm5vdChbY2xhc3NdKSB7XG4gICAgICBmb250LXNpemU6IDI4cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgaDIudmFuaWxsYSwgaDJbY2xhc3M9JyddLCBoMjpub3QoW2NsYXNzXSkge1xuICAgICAgZm9udC1zaXplOiAzMnB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGgyLnZhbmlsbGEsIGgyW2NsYXNzPScnXSwgaDI6bm90KFtjbGFzc10pIHtcbiAgICAgIGZvbnQtc2l6ZTogNDBweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgaDIudmFuaWxsYSwgaDJbY2xhc3M9JyddLCBoMjpub3QoW2NsYXNzXSkge1xuICAgICAgZm9udC1zaXplOiA0OHB4OyB9IH1cblxuaDMudmFuaWxsYSwgaDNbY2xhc3M9JyddLCBoMzpub3QoW2NsYXNzXSkge1xuICBmb250LXNpemU6IDIxcHg7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgIGgzLnZhbmlsbGEsIGgzW2NsYXNzPScnXSwgaDM6bm90KFtjbGFzc10pIHtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICBoMy52YW5pbGxhLCBoM1tjbGFzcz0nJ10sIGgzOm5vdChbY2xhc3NdKSB7XG4gICAgICBmb250LXNpemU6IDI0cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgaDMudmFuaWxsYSwgaDNbY2xhc3M9JyddLCBoMzpub3QoW2NsYXNzXSkge1xuICAgICAgZm9udC1zaXplOiAyOHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICBoMy52YW5pbGxhLCBoM1tjbGFzcz0nJ10sIGgzOm5vdChbY2xhc3NdKSB7XG4gICAgICBmb250LXNpemU6IDMycHg7IH0gfVxuXG5oNC52YW5pbGxhLCBoNFtjbGFzcz0nJ10sIGg0Om5vdChbY2xhc3NdKSB7XG4gIGZvbnQtc2l6ZTogMThweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgaDQudmFuaWxsYSwgaDRbY2xhc3M9JyddLCBoNDpub3QoW2NsYXNzXSkge1xuICAgICAgZm9udC1zaXplOiAxOXB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIGg0LnZhbmlsbGEsIGg0W2NsYXNzPScnXSwgaDQ6bm90KFtjbGFzc10pIHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBoNC52YW5pbGxhLCBoNFtjbGFzcz0nJ10sIGg0Om5vdChbY2xhc3NdKSB7XG4gICAgICBmb250LXNpemU6IDIycHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIGg0LnZhbmlsbGEsIGg0W2NsYXNzPScnXSwgaDQ6bm90KFtjbGFzc10pIHtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDsgfSB9XG5cbmg1LnZhbmlsbGEsIGg1W2NsYXNzPScnXSwgaDU6bm90KFtjbGFzc10pIHtcbiAgZm9udC1zaXplOiAxNnB4OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICBoNS52YW5pbGxhLCBoNVtjbGFzcz0nJ10sIGg1Om5vdChbY2xhc3NdKSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzMnB4KSB7XG4gICAgaDUudmFuaWxsYSwgaDVbY2xhc3M9JyddLCBoNTpub3QoW2NsYXNzXSkge1xuICAgICAgZm9udC1zaXplOiAxN3B4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGg1LnZhbmlsbGEsIGg1W2NsYXNzPScnXSwgaDU6bm90KFtjbGFzc10pIHtcbiAgICAgIGZvbnQtc2l6ZTogMTdweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgaDUudmFuaWxsYSwgaDVbY2xhc3M9JyddLCBoNTpub3QoW2NsYXNzXSkge1xuICAgICAgZm9udC1zaXplOiAxOHB4OyB9IH1cblxuaDYudmFuaWxsYSwgaDZbY2xhc3M9JyddLCBoNjpub3QoW2NsYXNzXSkge1xuICBmb250LXNpemU6IDE1cHg7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgIGg2LnZhbmlsbGEsIGg2W2NsYXNzPScnXSwgaDY6bm90KFtjbGFzc10pIHtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICBoNi52YW5pbGxhLCBoNltjbGFzcz0nJ10sIGg2Om5vdChbY2xhc3NdKSB7XG4gICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgaDYudmFuaWxsYSwgaDZbY2xhc3M9JyddLCBoNjpub3QoW2NsYXNzXSkge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICBoNi52YW5pbGxhLCBoNltjbGFzcz0nJ10sIGg2Om5vdChbY2xhc3NdKSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuXG5wLnZhbmlsbGEsIHBbY2xhc3M9JyddLCBwOm5vdChbY2xhc3NdKSB7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjc1ZW07IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAgIHAudmFuaWxsYSwgcFtjbGFzcz0nJ10sIHA6bm90KFtjbGFzc10pIHtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTMycHgpIHtcbiAgICBwLnZhbmlsbGEsIHBbY2xhc3M9JyddLCBwOm5vdChbY2xhc3NdKSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgcC52YW5pbGxhLCBwW2NsYXNzPScnXSwgcDpub3QoW2NsYXNzXSkge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICBwLnZhbmlsbGEsIHBbY2xhc3M9JyddLCBwOm5vdChbY2xhc3NdKSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuXG5zZWN0aW9uLnZhbmlsbGEsIHNlY3Rpb25bY2xhc3M9JyddLCBzZWN0aW9uOm5vdChbY2xhc3NdKSB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MzJweCkge1xuICAgIHNlY3Rpb24udmFuaWxsYSwgc2VjdGlvbltjbGFzcz0nJ10sIHNlY3Rpb246bm90KFtjbGFzc10pIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICBzZWN0aW9uLnZhbmlsbGEsIHNlY3Rpb25bY2xhc3M9JyddLCBzZWN0aW9uOm5vdChbY2xhc3NdKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgbWFyZ2luLXRvcDogNDBweDsgfSB9XG5cbnVsLnZhbmlsbGEsIHVsW2NsYXNzPScnXSwgdWw6bm90KFtjbGFzc10pIHtcbiAgbGlzdC1zdHlsZTogbm9uZSBvdXRzaWRlOyB9XG4gIHVsLnZhbmlsbGEgbGksIHVsW2NsYXNzPScnXSBsaSwgdWw6bm90KFtjbGFzc10pIGxpIHtcbiAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgcGFkZGluZy1ib3R0b206IC43NWVtO1xuICAgIHBhZGRpbmctbGVmdDogMWVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIHVsLnZhbmlsbGEgbGk6OmJlZm9yZSwgdWxbY2xhc3M9JyddIGxpOjpiZWZvcmUsIHVsOm5vdChbY2xhc3NdKSBsaTo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICfigKInO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gICAgdWwudmFuaWxsYSBsaTpsYXN0LWNoaWxkLCB1bFtjbGFzcz0nJ10gbGk6bGFzdC1jaGlsZCwgdWw6bm90KFtjbGFzc10pIGxpOmxhc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7IH1cblxuLmNjLXR5cGUtb3B0aW9ucyAuaW5wdXQtcmFkaW8gKyAuZGVjb3k6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6ICMwMDFmNDU7IH1cblxuLmNjLXR5cGUtb3B0aW9ucyAua2V5IHtcbiAgY29sb3I6ICMxNjFhMWQ7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuLmNjLXR5cGUtb3B0aW9ucyAucmFkaW8tYW5kLWxhYmVsIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuY2MtdHlwZS1vcHRpb25zIC5yYWRpby1hbmQtbGFiZWw6aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4uY2MtdHlwZS1vcHRpb25zIC5yYWRpby1hbmQtbGFiZWwgLmN1c3RvbS1yYWRpbyB7XG4gIHRyYW5zZm9ybTogbm9uZTsgfVxuXG4uY2MtdHlwZS1vcHRpb25zIC5yYWRpby13cmFwcGVyIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogNDU1cHg7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5jYy10eXBlLW9wdGlvbnMgLnJhZGlvLXdyYXBwZXIgZmllbGRzZXQge1xuICBtYXJnaW4tYm90dG9tOiA1MHB4OyB9XG5cbi5jYy10eXBlLW9wdGlvbnMgLnNlY3Rpb24taGVhZGluZyB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7IH1cblxuLmVtcHR5LWNhcnQgLmxheW91dC10d28tY29sdW1uIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLmVtcHR5LWNhcnQgLmxheW91dC10d28tY29sdW1uIC5jYXJ0LXN1bW1hcnktY29udHJvbHMtMS1jb2wge1xuICAgIGRpc3BsYXk6IGluaXRpYWw7IH1cbiAgLmVtcHR5LWNhcnQgLmxheW91dC10d28tY29sdW1uIC5sYXlvdXQtY29sdW1uIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDUlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDUlOyB9XG5cbi5oZWFkaW5nLXBhZ2Uge1xuICBtYXJnaW4tdG9wOiAyZW07IH1cbiIsIi8vXHJcbi8vIGNvcmUgKG9wdGlvbmFsKSBhbmltYXRpb25cclxuLy8g4oCiwqBmb3IgZ2VuZXJpYyBhbmltYXRpb25zIC8gbm90IGludGVuZGVkIGZvciBzcGVjaWZpYyBhbmltYXRpb25zXHJcbi8vXHJcblxyXG5Aa2V5ZnJhbWVzIGZsYXNoIHtcclxuICAwJSxcclxuICAxMDAlIHtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgfVxyXG4gIDUwJSB7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDQpO1xyXG4gIH1cclxuICAxMDAlIHtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHB1bHNlIHtcclxuICAwJSxcclxuICAxMDAlIHtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgfVxyXG4gIDMwJSB7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHNoYWtlIHtcclxuICAwJSxcclxuICA1MCUsXHJcbiAgODUlLFxyXG4gIDEwMCUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICB9XHJcbiAgNTUlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwcHgsIDAsIDApO1xyXG4gIH1cclxuICA2NSUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTVweCwgMCwgMCk7XHJcbiAgfVxyXG4gIDc1JSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcclxuICB9XHJcbiAgNjAlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjBweCwgMCwgMCk7XHJcbiAgfVxyXG4gIDcwJSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDE1cHgsIDAsIDApO1xyXG4gIH1cclxuICA4MCUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgdGFkYS1wYXVzZSB7XHJcbiAgMCUge1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gIH1cclxuICA1JSxcclxuICAxMCUge1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcclxuICB9XHJcbiAgMTUlLFxyXG4gIDI1JSxcclxuICAzNSUsXHJcbiAgNDUlIHtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUzZCgwLCAwLCAxLCAzZGVnKTtcclxuICB9XHJcbiAgMjAlLFxyXG4gIDMwJSxcclxuICA0MCUge1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcclxuICB9XHJcbiAgNTAlLFxyXG4gIDEwMCUge1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyB0ZWV0ZXItcmlnaHQge1xyXG4gIDAlIHtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xyXG4gIH1cclxuICA1JSxcclxuICA5NSUge1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMjBkZWcpO1xyXG4gIH1cclxuICAxMDAlIHtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyB1cGRhdGluZyB7XHJcbiAgMCUsXHJcbiAgMTAwJSB7XHJcbiAgICBvcGFjaXR5OiAuNTtcclxuICB9XHJcbiAgNTAlIHtcclxuICAgIG9wYWNpdHk6IC4yNTtcclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gY29yZSAob3B0aW9uYWwpIGJhZGdlIHN0eWxlc1xyXG4vL1xyXG5cclxuLmJhZGdlIHtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwLXh4cyk7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoZ3JheSwgbGlnaHQpO1xyXG4gIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICBjb2xvcjogY29sb3Iod2hpdGUpO1xyXG4gIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgbGV0dGVyLXNwYWNpbmc6IC4wNWVtO1xyXG4gIG1hcmdpbi1sZWZ0OiAuMjVlbTtcclxuICBwYWRkaW5nOiAuMjVlbSAuNDVlbSAuMjVlbSAuNWVtO1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgdmVydGljYWwtYWxpZ246IDFweDtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIEBtZWRpYSBwcmludCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIGNvbG9yKGJsYWNrKTtcclxuICAgIGNvbG9yOiBjb2xvcihibGFjayk7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogLjFlbTtcclxuICAgIHBhZGRpbmctdG9wOiAuMWVtO1xyXG4gIH1cclxuICAmOmZpcnN0LWNoaWxkIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgZGQgPiAmIHtcclxuICAgICAgdmVydGljYWwtYWxpZ246IC0uM2VtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmLS1jb21wbGV0ZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihncmVlbik7XHJcbiAgfVxyXG4gICYtLWVycm9yIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGVycm9yKTtcclxuICB9XHJcbiAgJi0tZXhwaXJlZCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihncmF5LCB4LWxpZ2h0KTtcclxuICB9XHJcbiAgJi0tZmVhdHVyZWQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoYmx1ZSk7XHJcbiAgfVxyXG4gICYtLXB2IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgY29sb3IoZ3JheSwgZGFyayk7XHJcbiAgICBjb2xvcjogY29sb3IoZ3JheSwgZGFyayk7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgbGluZS1oZWlnaHQ6IGxpbmUtaGVpZ2h0KGgtdGlnaHQpO1xyXG4gICAgcGFkZGluZzogLjI1ZW07XHJcbiAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgZGQgPiAmIHtcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogaW5oZXJpdDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLS1zcGVjaWFsIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHNwZWNpYWwpO1xyXG4gIH1cclxufVxyXG5cclxuLm5ldy1iYWRnZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IobWlkbmlnaHQpO1xyXG4gIGNvbG9yOiBjb2xvcih3aGl0ZSk7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIGZvbnQtc2l6ZTogMTJweDtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG4gIGxldHRlci1zcGFjaW5nOiBsZXR0ZXItc3BhY2luZyhleHBhbmRlZCk7XHJcbiAgbGluZS1oZWlnaHQ6IGxpbmUtaGVpZ2h0KHAtdGlnaHQpO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgcGFkZGluZzogLjRlbSAuOGVtO1xyXG4gICYtLXNwZWNpYWwge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IobWVsb24sIHgtbGlnaHQpO1xyXG4gICAgY29sb3I6IGNvbG9yKG1pZG5pZ2h0KTtcclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gY29yZSByZXF1aXJlZCBtaXhpbnMsIGFscGhhYmV0aWNhbFxyXG4vL1xyXG5cclxuLy8gZ2VuZXJhdGUgbWVkaWEgcXVlcmllcyBmb3IgdGFyZ2V0aW5nIGEgbWluLWFzcGVjdCByYXRpb1xyXG5AbWl4aW4gYXNwZWN0LXJhdGlvLW1pbigkaG9yaXpvbnRhbCwgJHZlcnRpY2FsKSB7XHJcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLWFzcGVjdC1yYXRpbzogJGhvcml6b250YWwgI3snLyd9ICR2ZXJ0aWNhbCkge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBnZW5lcmF0ZSBtZWRpYSBxdWVyaWVzIGZvciB0YXJnZXRpbmcgYSBtYXgtYXNwZWN0IHJhdGlvXHJcbkBtaXhpbiBhc3BlY3QtcmF0aW8tbWF4KCRob3Jpem9udGFsLCAkdmVydGljYWwpIHtcclxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtYXNwZWN0LXJhdGlvOiAkaG9yaXpvbnRhbCAjeycvJ30gJHZlcnRpY2FsKSB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcbn1cclxuXHJcbi8vIGJhY2tncm91bmQgaW1hZ2UgbWF5YmUgd2VicFxyXG5AbWl4aW4gYmFja2dyb3VuZC1pbWFnZS1tYXliZS13ZWJwKCRzcmMpIHtcclxuICAud2VicCAmIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkc3JjICsgJy53ZWJwJyk7XHJcbiAgfVxyXG4gIC5uby13ZWJwICYge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRzcmMpO1xyXG4gIH1cclxufVxyXG5cclxuLy8gZ2VuZXJhdGUgbWVkaWEgcXVlcmllcyBmb3IgdGFyZ2V0aW5nIHdpZHRoc1xyXG5AbWl4aW4gYnJlYWtwb2ludCgkbWluLXdpZHRoLCAkbWF4LXdpZHRoOiBudWxsLCAkdXNlLW5hbWVkLXdpZHRoczogdHJ1ZSkge1xyXG4gIEBpZiAoJHVzZS1uYW1lZC13aWR0aHMpIHtcclxuICAgICRtaW4td2lkdGg6IHdpZHRoKCRtaW4td2lkdGgpO1xyXG4gICAgQGlmICgkbWF4LXdpZHRoKSB7XHJcbiAgICAgICRtYXgtd2lkdGg6IHdpZHRoKCRtYXgtd2lkdGgpO1xyXG4gICAgfVxyXG4gIH1cclxuICBAaWYgKCRtYXgtd2lkdGgpIHtcclxuICAgICRtYXgtd2lkdGg6ICRtYXgtd2lkdGggLSAxO1xyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWluLXdpZHRoKSBhbmQgKG1heC13aWR0aDogJG1heC13aWR0aCkge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcbiAgQGVsc2Uge1xyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWluLXdpZHRoKSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGJ0bi1jb2xvcnMoJGNvbG9yLW1hcCkge1xyXG4gIC8vIGNvbmZpZ3VyYWJsZSBvcHRpb25zIHRvIGJlIHVzZWQgd2l0aCB0aGlzIG1peGluXHJcbiAgLy8gdGV4dFxyXG4gIC8vIHRleHQtaG92ZXJcclxuICAvLyB0ZXh0LWFjdGl2ZVxyXG4gIC8vIGJnLWNvbG9yXHJcbiAgLy8gYmctY29sb3ItaG92ZXJcclxuICAvLyBiZy1jb2xvci1hY3RpdmVcclxuICBAaWYgKCAkY29sb3ItbWFwICkge1xyXG4gICAgLy8gY2hhbmdlIGJhY2tncm91bmQgY29sb3JcclxuICAgIEBpZiBtYXAtZ2V0KCRjb2xvci1tYXAsIGJnLWNvbG9yKSB7XHJcbiAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkY29sb3ItbWFwLCBiZy1jb2xvcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC8vIGNoYW5nZSBiYWNrZ3JvdW5kIGNvbG9yIG9uIGFjdGl2ZVxyXG4gICAgQGlmIG1hcC1nZXQoJGNvbG9yLW1hcCwgYmctY29sb3ItYWN0aXZlKSB7XHJcbiAgICAgICY6YWN0aXZlIHtcclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkY29sb3ItbWFwLCBiZy1jb2xvci1hY3RpdmUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy8gaWYgYW4gYWN0aXZlIHN0YXRlIGlzbid0IHNldCwgdXRpbGl6ZSBkZWZhdWx0IGNvbG9yIGRhcmtlbmVkXHJcbiAgICBAZWxzZSB7XHJcbiAgICAgICRiZy1jb2xvci1hY3RpdmU6IG1hcC1nZXQoJGNvbG9yLW1hcCwgYmctY29sb3IpO1xyXG4gICAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmctY29sb3ItYWN0aXZlLCAyMCUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy8gY2hhbmdlIGJhY2tncm91bmQgY29sb3Igb24gZm9jdXNcclxuICAgIEBpZiBtYXAtZ2V0KCRjb2xvci1tYXAsIGJnLWNvbG9yLWZvY3VzKSB7XHJcbiAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjb2xvci1tYXAsIGJnLWNvbG9yLWZvY3VzKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC8vIGlmIGEgZm9jdXMgc3RhdGUgaXNuJ3Qgc2V0LCB1dGlsaXplIGRlZmF1bHQgY29sb3IgZGFya2VuZWRcclxuICAgIEBlbHNlIHtcclxuICAgICAgJGJnLWNvbG9yLWZvY3VzOiBtYXAtZ2V0KCRjb2xvci1tYXAsIGJnLWNvbG9yKTtcclxuICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmctY29sb3ItZm9jdXMsIDEwJSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAvLyBjaGFuZ2UgYmFja2dyb3VuZCBjb2xvciBvbiBob3ZlclxyXG4gICAgQGlmIG1hcC1nZXQoJGNvbG9yLW1hcCwgYmctY29sb3ItaG92ZXIpIHtcclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJGNvbG9yLW1hcCwgYmctY29sb3ItaG92ZXIpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy8gY2hhbmdlIHRleHQgY29sb3JcclxuICAgIEBpZiBtYXAtZ2V0KCRjb2xvci1tYXAsIHRleHQpIHtcclxuICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9yLW1hcCwgdGV4dCk7XHJcbiAgICB9XHJcbiAgICAvLyBjaGFuZ2UgdGV4dCBjb2xvciBvbiBhY3RpdmVcclxuICAgIEBpZiBtYXAtZ2V0KCRjb2xvci1tYXAsIHRleHQtYWN0aXZlKSB7XHJcbiAgICAgICY6YWN0aXZlIHtcclxuICAgICAgICBjb2xvcjogbWFwLWdldCgkY29sb3ItbWFwLCB0ZXh0LWFjdGl2ZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC8vIGNoYW5nZSB0ZXh0IGNvbG9yIG9uIGhvdmVyXHJcbiAgICBAaWYgbWFwLWdldCgkY29sb3ItbWFwLCB0ZXh0LWhvdmVyKSB7XHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvci1tYXAsIHRleHQtaG92ZXIpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBlbHNlIHtcclxuICAgIEB3YXJuICdPb3BzLCB5b3UgZGlkblxcJ3QgcHJvdmlkZSBhIGJ0bi1jb2xvciBwYXJhbWV0ZXInO1xyXG4gIH1cclxufVxyXG5cclxuLy8gY29uc3RyYWluIHByb3BvcnRpb25zXHJcbkBtaXhpbiBjb25zdHJhaW4tcHJvcG9ydGlvbnMoJHdpZHRoLCAkaGVpZ2h0LXBlcmNlbnQpIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICB3aWR0aDogJHdpZHRoO1xyXG4gICY6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiAnJztcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcGFkZGluZy10b3A6ICRoZWlnaHQtcGVyY2VudDtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBmb2N1cy1kZWZhdWx0LXN0eWxlcyB7XHJcbiAgb3V0bGluZS1jb2xvcjogSGlnaGxpZ2h0O1xyXG4gIG91dGxpbmUtc3R5bGU6IGF1dG87XHJcbiAgb3V0bGluZS13aWR0aDogNXB4O1xyXG4gIHotaW5kZXg6IDI7XHJcbn1cclxuXHJcbi8vIGdlbmVyYXRlIGEgQGZvbnQtZmFjZSBydWxlXHJcbkBtaXhpbiBmb250LWZhY2UoJGZhbWlseSwgJHBhdGgsICR3ZWlnaHQ6IDQwMCwgJHN0eWxlOiBub3JtYWwsICRleHRzOiBlb3Qgd29mZjIgd29mZiB0dGYgc3ZnKSB7XHJcbiAgJGV4dC1tb2RzOiAoIGVvdDogJz8nLCBzdmc6ICcjJyArIHN0ci1yZXBsYWNlKCRmYW1pbHksICcgJywgJycpICk7XHJcbiAgJGZvcm1hdHM6ICggb3RmOiAnb3BlbnR5cGUnLCB0dGY6ICd0cnVldHlwZScgKTtcclxuICAkc3JjOiBudWxsO1xyXG4gIEBlYWNoICRleHQgaW4gJGV4dHMge1xyXG4gICAgJGV4dC1tb2Q6IGlmKG1hcC1oYXMta2V5KCRleHQtbW9kcywgJGV4dCksICRleHQgKyBtYXAtZ2V0KCRleHQtbW9kcywgJGV4dCksICRleHQpO1xyXG4gICAgJGZvcm1hdDogaWYobWFwLWhhcy1rZXkoJGZvcm1hdHMsICRleHQpLCBtYXAtZ2V0KCRmb3JtYXRzLCAkZXh0KSwgJGV4dCk7XHJcbiAgICAkc3JjOiBhcHBlbmQoJHNyYywgdXJsKHF1b3RlKCRwYXRoICsgJy4nICsgJGV4dC1tb2QpKSBmb3JtYXQocXVvdGUoJGZvcm1hdCkpLCBjb21tYSk7XHJcbiAgfVxyXG4gIEBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6IHF1b3RlKCRmYW1pbHkpO1xyXG4gICAgZm9udC1zdHlsZTogJHN0eWxlO1xyXG4gICAgZm9udC13ZWlnaHQ6ICR3ZWlnaHQ7XHJcbiAgICBzcmM6ICRzcmM7XHJcbiAgfVxyXG59XHJcblxyXG4vLyB0dXJuIGZvbnQtc21vb3RoaW5nIG9uIG9yIG9mZlxyXG5AbWl4aW4gZm9udC1zbW9vdGhpbmcoJGVuYWJsZTogdHJ1ZSkge1xyXG4gIEBpZiAoJGVuYWJsZSkge1xyXG4gICAgLy8gZGlzYWJsZSBhbGwgdmVuZG9yIHByZWZpeCBlcnJvcnMsIHdlIGtub3cgd2hhdCdzIHVwXHJcbiAgICAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1ibG9jayBuby12ZW5kb3ItcHJlZml4ZXNcclxuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICB9XHJcbiAgQGVsc2Uge1xyXG4gICAgLy8gZGlzYWJsZSBhbGwgdmVuZG9yIHByZWZpeCBlcnJvcnMsIHdlIGtub3cgd2hhdCdzIHVwXHJcbiAgICAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1ibG9jayBuby12ZW5kb3ItcHJlZml4ZXNcclxuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBhdXRvO1xyXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogc3VicGl4ZWwtYW50aWFsaWFzZWQ7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBnZW5lcmF0ZSBtZWRpYSBxdWVyeSBmb3IgdGFyZ2V0aW5nIGxhbmRzY2FwZSBvcmllbnRhdGlvbnNcclxuQG1peGluIGxhbmRzY2FwZSB7XHJcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBnZW5lcmF0ZSBzdHlsZXMgdG8gbWF0Y2ggZ3V0dGVyIHNpemUgdG8gJHByb3BlcnRpZXNcclxuQG1peGluIG1hdGNoLWd1dHRlci1zaXplKCRwcm9wZXJ0aWVzLCAkc2NhbGU6IDEpIHtcclxuICBAZWFjaCAkcHJvcGVydHkgaW4gJHByb3BlcnRpZXMge1xyXG4gICAgI3skcHJvcGVydHl9OiB3aWR0aChndXR0ZXItcykgKiAkc2NhbGU7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlLXhsKSB7XHJcbiAgICBAZWFjaCAkcHJvcGVydHkgaW4gJHByb3BlcnRpZXMge1xyXG4gICAgICAjeyRwcm9wZXJ0eX06IHdpZHRoKGd1dHRlci1tKSAqICRzY2FsZTtcclxuICAgIH1cclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wKSB7XHJcbiAgICBAZWFjaCAkcHJvcGVydHkgaW4gJHByb3BlcnRpZXMge1xyXG4gICAgICAjeyRwcm9wZXJ0eX06IHdpZHRoKGd1dHRlci1sKSAqICRzY2FsZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIGhpZGUgZnJvbSB2aXNpYmxlIGRpc3BsYXkgYnV0IHJlbWFpbiBhdmFpbGFibGUgZm9yIHNjcmVlbiByZWFkZXJzXHJcbi8vIChodHRwczovL2RldmVsb3Blci5wYWNpZWxsb2dyb3VwLmNvbS9ibG9nLzIwMTIvMDUvaHRtbDUtYWNjZXNzaWJpbGl0eS1jaG9wcy1oaWRkZW4tYW5kLWFyaWEtaGlkZGVuLylcclxuQG1peGluIG9mZnNjcmVlbiB7XHJcbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xyXG4gIGhlaWdodDogMXB4O1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgd2lkdGg6IDFweDtcclxufVxyXG5cclxuLy8gZ2VuZXJhdGUgcmVzcG9uc2l2ZSBmb250IHNpemVzXHJcbkBtaXhpbiByZXNwb25zaXZlLWZvbnQtc2l6ZSgkcmVzcG9uc2l2ZS1mb250LXNpemUpIHtcclxuICAkcmVzcG9uc2l2ZS1mb250LXNpemU6IHJlc3BvbnNpdmUtZm9udC1zaXplKCRyZXNwb25zaXZlLWZvbnQtc2l6ZSk7XHJcbiAgQGlmICRyZXNwb25zaXZlLWZvbnQtc2l6ZSB7XHJcbiAgICBmb250LXNpemU6IG50aCgkcmVzcG9uc2l2ZS1mb250LXNpemUsIDEpO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcclxuICAgICAgZm9udC1zaXplOiBudGgoJHJlc3BvbnNpdmUtZm9udC1zaXplLCAyKTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlLXhsKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogbnRoKCRyZXNwb25zaXZlLWZvbnQtc2l6ZSwgMyk7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xyXG4gICAgICBmb250LXNpemU6IG50aCgkcmVzcG9uc2l2ZS1mb250LXNpemUsIDQpO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogbnRoKCRyZXNwb25zaXZlLWZvbnQtc2l6ZSwgNSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gc2VsZWN0aW9uLXRyYW5zcGFyZW50IHtcclxuICAmOjpzZWxlY3Rpb24ge1xyXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBnZW5lcmF0ZSB1bmJvdW5kZWQgZG90c1xyXG4vLyAqIHJlcXVpcmVzIGJvdGggcm93IGFuZCBjb2x1bW4gaW5wdXRzXHJcbi8vICogJHJvdyBpcyB0aGUgbnVtYmVyIG9mIGRvdHMgYWNyb3NzIGFuZCAkY29sdW1uIGlzIHRoZSBudW1iZXIgb2YgZG90cyBkb3duXHJcbkBtaXhpbiB1bmJvdW5kZWQtZG90cy1ncmlkKCRyb3csICRjb2x1bW4pIHtcclxuICBoZWlnaHQ6ICRjb2x1bW4gKiB3aWR0aCh1bmJvdW5kZWQtZG90KTtcclxuICB3aWR0aDogJHJvdyAqIHdpZHRoKHVuYm91bmRlZC1kb3QpO1xyXG59XHJcblxyXG4vLyB0YXJnZXQgZWxlbWVudHMgd2l0aG91dCBhIGNsYXNzIG9yIHdpdGggdGhlIGNsYXNzICd2YW5pbGxhJ1xyXG5AbWl4aW4gdmFuaWxsYSB7XHJcbiAgJi52YW5pbGxhLFxyXG4gICZbY2xhc3M9JyddLFxyXG4gICY6bm90KFtjbGFzc10pIHtcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxufVxyXG5cclxuLy8gZ2VuZXJhdGUgbWVkaWEgcXVlcmllcyBmb3IgdGFyZ2V0aW5nIGhlaWdodHNcclxuQG1peGluIHZlcnRpY2FsLWJyZWFrcG9pbnQoJG1pbi1oZWlnaHQsICRtYXgtaGVpZ2h0OiBudWxsLCAkdXNlLW5hbWVkLWhlaWdodHM6IHRydWUpIHtcclxuICBAaWYgKCR1c2UtbmFtZWQtaGVpZ2h0cykge1xyXG4gICAgJG1pbi1oZWlnaHQ6IGhlaWdodCgkbWluLWhlaWdodCk7XHJcbiAgICBAaWYgKCRtYXgtaGVpZ2h0KSB7XHJcbiAgICAgICRtYXgtaGVpZ2h0OiBoZWlnaHQoJG1heC1oZWlnaHQpO1xyXG4gICAgfVxyXG4gIH1cclxuICBAaWYgKCRtYXgtaGVpZ2h0KSB7XHJcbiAgICAkbWF4LWhlaWdodDogJG1heC1oZWlnaHQgLSAxO1xyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLWhlaWdodDogJG1pbi1oZWlnaHQpIGFuZCAobWF4LWhlaWdodDogJG1heC1oZWlnaHQpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBlbHNlIHtcclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1oZWlnaHQ6ICRtaW4taGVpZ2h0KSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBjb3JlIHJlcXVpcmVkIHNldHRpbmdzXHJcbi8vICrCoGNvcmUgJGNvbG9ycywgJGVhc2luZ3MsICRmb250cywgJGhlaWdodHMsICRzcGFjaW5ncywgJHdpZHRocyBhbmQgJHotaW5kZXhlc1xyXG4vLyAqwqBpbnRlbmRlZCB0byBiZSBleHRlbmRlZCBvciBvdmVyd3JpdHRlbiBpbiBwcm9wZXJ0aWVzIHVzaW5nIGNvcmVcclxuLy8gKsKgZXh0ZW5kIGNvcmUgc2V0dGluZ3Mgd2l0aCBtYXAtZXh0ZW5kIGZ1bmN0aW9uXHJcbi8vXHJcblxyXG4vLyBleGFtcGxlOiBleHRlbmQgYSBzZXR0aW5ncyBtYXAgd2l0aCBhZGRpdGlvbmFsIGtleSB2YWx1ZSBwYWlyc1xyXG4vLyAkY29sb3JzOiBtYXAtZXh0ZW5kKCRjb2xvcnMsIChcclxuLy8gICBuZXctY29sb3I6IChcclxuLy8gICAgIGJhc2U6ICNkODUxNDEsXHJcbi8vICAgICBkYXJrOiAjYjE0NDM2LFxyXG4vLyAgICksXHJcbi8vICkpO1xyXG5cclxuLy8gYm9yZGVyIHJhZGlpXHJcbi8vIOKAoiBib3JkZXIgcmFkaWkgc2hvdWxkdSBiZSBkZWNsYXJlZCBmcm9tIHNtYWxsZXN0IHRvIGxhcmdlc3QsIHRvcCB0byBib3R0b21cclxuJGJvcmRlci1yYWRpaTogKFxyXG4gIHM6IDNweCxcclxuICBtOiA2cHgsXHJcbiAgbDogOXB4LFxyXG4pO1xyXG5cclxuLy8gYm94IHNoYWRvd3NcclxuLy8g4oCiIGJveCBzaGFkb3cgdmFyaWFudHMgc2hvdWxkIGJlIGRlY2xhcmVkIGZyb20gc21hbGxlc3QgdG8gbGFyZ2VzdCwgdG9wIHRvIGJvdHRvbVxyXG4kYm94LXNoYWRvdy1zaXplczogKFxyXG4gIHM6IDAgMTBweCAxMHB4IC0xMHB4LFxyXG4gIG06IDAgMjVweCAyNXB4IC0yNXB4LFxyXG4gIGw6IDAgNTBweCA1MHB4IC01MHB4LFxyXG4pO1xyXG5cclxuLy8gY29sb3JzXHJcbi8vIOKAoiBjb2xvciB2YXJpYW50cyBzaG91bGQgYmUgZGVjbGFyZWQgZnJvbSBsaWdodGVzdCB0byBkYXJrZXN0LCB0b3AgdG8gYm90dG9tXHJcbi8vIOKAoiBvbmx5IGJsYWNrIGFuZCB3aGl0ZSBtYXkgaGF2ZSBuZWFyIGFuZCBvZmYgY29sb3JzXHJcbiRjb2xvcnM6IChcclxuICBibGFjazogKFxyXG4gICAgYmFzZTogIzAwMCxcclxuICAgIG5lYXI6ICMxNjFhMWQsXHJcbiAgKSxcclxuICBibHVlOiAoXHJcbiAgICB4LWxpZ2h0OiAjYmNlZWZlLFxyXG4gICAgbGlnaHQ6ICM4N2UxZmYsXHJcbiAgICBiYXNlOiAjMDBhN2UwLFxyXG4gICAgZGFyazogIzAwNmRiYSxcclxuICApLFxyXG4gIGJsdWUtYWx0OiAoXHJcbiAgICBiYXNlOiAjMDAyODU1LFxyXG4gICksXHJcbiAgZXJyb3I6IChcclxuICAgIGJhc2U6ICNlYTNmM2YsXHJcbiAgICBsaWdodDogI2ZmZTdlOSxcclxuICApLFxyXG4gIGdyYXk6IChcclxuICAgIHh4LWxpZ2h0OiAjZDlkOWQ5LFxyXG4gICAgeC1saWdodDogI2NjYyxcclxuICAgIGxpZ2h0OiAjOTM5MTkxLFxyXG4gICAgYmFzZTogIzYxNjA2MCxcclxuICAgIGRhcms6ICM1YTYwNjYsXHJcbiAgICB4LWRhcms6ICMyZTMxMzQsXHJcbiAgICBuZWFyOiAjZDJkN2Q5LFxyXG4gICksXHJcbiAgZ3JlZW46IChcclxuICAgIGJhc2U6ICMzY2I4NzgsXHJcbiAgKSxcclxuICBtYXJhc2NoaW5vOiAoXHJcbiAgICB4LWxpZ2h0OiAjZmZlNmU2LFxyXG4gICAgbGlnaHQ6ICNmMGE4YTgsXHJcbiAgICBiYXNlOiAjZGIyYjRlLFxyXG4gICAgbmVhcjogI2U2YmFiMSxcclxuICApLFxyXG4gIG1hcmluZTogKFxyXG4gICAgbGlnaHQ6ICM3MmM1ZmQsXHJcbiAgICBiYXNlOiAjMDA5OWRjLFxyXG4gICAgbmVhcjogI2QxZWNmNSxcclxuICApLFxyXG4gIG1lbG9uOiAoXHJcbiAgICB4eC1saWdodDogI2YyZDhkMSxcclxuICAgIHgtbGlnaHQ6ICNmZmUwZDgsXHJcbiAgICBsaWdodDogI2ZmYjRhOCxcclxuICAgIGJhc2U6ICNmZDQxMjQsXHJcbiAgICBuZWFyOiAjZjVjNWMxLFxyXG4gICksXHJcbiAgbWlkbmlnaHQ6IChcclxuICAgIHgtbGlnaHQ6ICNiOWUzZmUsXHJcbiAgICBsaWdodDogIzU0YTZkYixcclxuICAgIGJhc2U6ICMwMDFmNDUsXHJcbiAgICBuZWFyOiAjY2VlNmY1LFxyXG4gICksXHJcbiAgbWludHk6IChcclxuICAgIHgtbGlnaHQ6ICNkYWY1ZjAsXHJcbiAgICBsaWdodDogI2I2ZThkZixcclxuICAgIGJhc2U6ICMzNmQyYjYsXHJcbiAgICBuZWFyOiAjYzRlMWRjLFxyXG4gICksXHJcbiAgbXVzdGFyZDogKFxyXG4gICAgeC1saWdodDogI2ZmZjBjZSxcclxuICAgIGxpZ2h0OiAjZjVlMmI2LFxyXG4gICAgYmFzZTogI2ZjYWUyOSxcclxuICAgIG5lYXI6ICNlZmQ3YTEsXHJcbiAgKSxcclxuICBzaGFkb3c6IChcclxuICAgIGJhc2U6IHJnYmEoMCwgMCwgMCwgLjIpLFxyXG4gICAgZGFyazogcmdiYSgwLCAwLCAwLCAuMzUpLFxyXG4gICksXHJcbiAgc3BlY2lhbDogKFxyXG4gICAgYmFzZTogI2Y2NixcclxuICAgIGRhcms6ICNjYzUyNTIsXHJcbiAgKSxcclxuICB3aGl0ZTogKFxyXG4gICAgYmFzZTogI2ZmZixcclxuICAgIG5lYXI6ICNmMmY0ZjUsXHJcbiAgICBvZmY6ICNlNWU1ZTUsXHJcbiAgKSxcclxuKTtcclxuXHJcbi8vIGVhc2luZ3NcclxuLy8gKiBmcm9tIFtlYXNpbmdzLm5ldF0oaHR0cDovL2Vhc2luZ3MubmV0KVxyXG4kZWFzaW5nczogKFxyXG4gIGluLWJhY2s6IGN1YmljLWJlemllciguNiwgLS4yOCwgLjczNSwgLjA0NSksXHJcbiAgaW4tY2lyYzogY3ViaWMtYmV6aWVyKC42LCAuMDQsIC45OCwgLjMzNSksXHJcbiAgaW4tY3ViaWM6IGN1YmljLWJlemllciguNTUsIC4wNTUsIC42NzUsIC4xOSksXHJcbiAgaW4tZXhwbzogY3ViaWMtYmV6aWVyKC45NSwgLjA1LCAuNzk1LCAuMDM1KSxcclxuICBpbi1xdWFkOiBjdWJpYy1iZXppZXIoLjU1LCAuMDg1LCAuNjgsIC41MyksXHJcbiAgaW4tcXVhcnQ6IGN1YmljLWJlemllciguODk1LCAuMDMsIC42ODUsIC4yMiksXHJcbiAgaW4tcXVpbnQ6IGN1YmljLWJlemllciguNzU1LCAuMDUsIC44NTUsIC4wNiksXHJcbiAgaW4tc2luZTogY3ViaWMtYmV6aWVyKC40NywgMCwgLjc0NSwgLjcxNSksXHJcbiAgaW4tb3V0LWJhY2s6IGN1YmljLWJlemllciguNjgsIC0uNTUsIC4yNjUsIDEuNTUpLFxyXG4gIGluLW91dC1jaXJjOiBjdWJpYy1iZXppZXIoLjc4NSwgLjEzNSwgLjE1LCAuODYpLFxyXG4gIGluLW91dC1jdWJpYzogY3ViaWMtYmV6aWVyKC42NDUsIC4wNDUsIC4zNTUsIDEpLFxyXG4gIGluLW91dC1leHBvOiBjdWJpYy1iZXppZXIoMSwgMCwgMCwgMSksXHJcbiAgaW4tb3V0LXF1YWQ6IGN1YmljLWJlemllciguNDU1LCAuMDMsIC41MTUsIC45NTUpLFxyXG4gIGluLW91dC1xdWFydDogY3ViaWMtYmV6aWVyKC43NywgMCwgLjE3NSwgMSksXHJcbiAgaW4tb3V0LXF1aW50OiBjdWJpYy1iZXppZXIoLjg2LCAwLCAuMDcsIDEpLFxyXG4gIGluLW91dC1zaW5lOiBjdWJpYy1iZXppZXIoLjQ0NSwgLjA1LCAuNTUsIC45NSksXHJcbiAgb3V0LWJhY2s6IGN1YmljLWJlemllciguMTc1LCAuODg1LCAuMzIsIDEuMjc1KSxcclxuICBvdXQtY2lyYzogY3ViaWMtYmV6aWVyKC4wNzUsIC44MiwgLjE2NSwgMSksXHJcbiAgb3V0LWN1YmljOiBjdWJpYy1iZXppZXIoLjIxNSwgLjYxLCAuMzU1LCAxKSxcclxuICBvdXQtZXhwbzogY3ViaWMtYmV6aWVyKC4xOSwgMSwgLjIyLCAxKSxcclxuICBvdXQtcXVhZDogY3ViaWMtYmV6aWVyKC4yNSwgLjQ2LCAuNDUsIC45NCksXHJcbiAgb3V0LXF1YXJ0OiBjdWJpYy1iZXppZXIoLjE2NSwgLjg0LCAuNDQsIDEpLFxyXG4gIG91dC1xdWludDogY3ViaWMtYmV6aWVyKC4yMywgMSwgLjMyLCAxKSxcclxuICBvdXQtc2luZTogY3ViaWMtYmV6aWVyKC4zOSwgLjU3NSwgLjU2NSwgMSksXHJcbik7XHJcblxyXG4vLyBmb250IGZhbWlsZXNcclxuJGZvbnQtZmFtaWxpZXM6IChcclxuICBtb25vOiAnXCJBbmRhbGUgTW9ub1wiLCBDb3VyaWVyIE5ldywgbW9ub3NwYWNlJyxcclxuICBzYW5zOiAnXCJQcm94aW1hIE5vdmEgVzAxXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgQ2FsaWJyaSwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZicsXHJcbiAgc2VyaWY6ICdcIlF1YXJ0byBBXCIsIFwiUXVhcnRvIEJcIiwgR2VvcmdpYSwgc2VyaWYnLFxyXG4pO1xyXG5cclxuLy8gbmFtZWQgaGVpZ2h0c1xyXG4vLyAqIGN1cnJlbnRseSBubyBjb3JlIG5hbWVkIGhlaWdodHNcclxuJGhlaWdodHM6IChcclxuKTtcclxuXHJcbi8vIGxldHRlciBzcGFjaW5nc1xyXG4kbGV0dGVyLXNwYWNpbmdzOiAoXHJcbiAgY29uZGVuc2VkOiAtLjAyZW0sXHJcbiAgZXhwYW5kZWQteHhzOiAuMDEyNWVtLFxyXG4gIGV4cGFuZGVkLXhzOiAuMDI1ZW0sXHJcbiAgZXhwYW5kZWQtczogLjA1ZW0sXHJcbiAgZXhwYW5kZWQ6IC4xZW0sXHJcbiAgLy8gZXhwYW5kZWQteGw6ICxcclxuKTtcclxuXHJcbi8vIGxpbmUgaGVpZ2h0c1xyXG4kbGluZS1oZWlnaHRzOiAoXHJcbiAgaDogMS4yZW0sXHJcbiAgaC10aWdodDogMS4wNjI1ZW0sXHJcbiAgcDogMS41ZW0sXHJcbiAgcC10aWdodDogMS4zZW0sXHJcbik7XHJcblxyXG4vLyB0aGUgYmFzZSBwYXRoIHRvIHByb3hpbWEgZm9udHNcclxuJHByb3hpbWEtYmFzZS1wYXRoOiAnaHR0cHM6Ly9jZG4ubGlmZXZhbnRhZ2UuY29tL2ZpbGVzL2ZvbnQvcHJveGltYS1ub3ZhLycgIWRlZmF1bHQ7XHJcblxyXG4vLyB3aGljaCBjdXRzIG9mIHByb3hpbWEgbm92YSB0byBpbmNsdWRlXHJcbiRwcm94aW1hLWZvbnQtZmFjZXM6IChcclxuICAvLyAxMDA6ICgnbm9ybWFsJywgJ2l0YWxpYycpLFxyXG4gIDMwMDogKCdub3JtYWwnLCAnaXRhbGljJyksXHJcbiAgNDAwOiAoJ25vcm1hbCcsICdpdGFsaWMnKSxcclxuICAvLyA1MDA6ICgnbm9ybWFsJywgJ2l0YWxpYycpLFxyXG4gIC8vIDYwMDogKCdub3JtYWwnLCAnaXRhbGljJyksXHJcbiAgNzAwOiAoJ25vcm1hbCcsICdpdGFsaWMnKSxcclxuICA4MDA6ICgnbm9ybWFsJywgJ2l0YWxpYycpLFxyXG4gIC8vIDkwMDogKCdub3JtYWwnLCAnaXRhbGljJyksXHJcbikgIWRlZmF1bHQ7XHJcblxyXG4vLyByZXNwb25zaXZlIGZvbnQgc2l6ZXNcclxuLy8gc2l6ZS1uYW1lOiAoQHplcm8sIEBtb2JpbGUsIEBtb2JpbGUteGwsIEB0YWJsZXQsIEBkZXNrdG9wKVxyXG4kcmVzcG9uc2l2ZS1mb250LXNpemVzOiAoXHJcblxyXG4gIC8vIGhlYWRlciBzaXplc1xyXG4gIGgteHhsOiAoMzJweCwgNDhweCwgNTZweCwgNzJweCwgMTAwcHgpLFxyXG4gIGgteGw6ICAoMjhweCwgMzZweCwgNDhweCwgNjBweCwgNzJweCksXHJcbiAgaC1sOiAgICgyNHB4LCAyOHB4LCAzMnB4LCA0MHB4LCA0OHB4KSxcclxuICBoOiAgICAgKDIxcHgsIDIycHgsIDI0cHgsIDI4cHgsIDMycHgpLFxyXG4gIGgtczogICAoMThweCwgMTlweCwgMjBweCwgMjJweCwgMjRweCksXHJcbiAgaC14czogICgxNnB4LCAxNnB4LCAxN3B4LCAxN3B4LCAxOHB4KSxcclxuICBoLXh4czogKDE1cHgsIDE1cHgsIDE1cHgsIDE2cHgsIDE2cHgpLFxyXG5cclxuICAvLyBwYXJhZ3JhcGggc2l6ZXNcclxuICBwLXh4bDogKDIxcHgsIDIycHgsIDI0cHgsIDI4cHgsIDMycHgpLFxyXG4gIHAteGw6ICAoMThweCwgMTlweCwgMjBweCwgMjFweCwgMjRweCksXHJcbiAgcC1sOiAgICgxNnB4LCAxNnB4LCAxN3B4LCAxN3B4LCAxOHB4KSxcclxuICBwOiAgICAgKDE1cHgsIDE1cHgsIDE2cHgsIDE2cHgsIDE2cHgpLFxyXG4gIHAtczogICAoMTNweCwgMTNweCwgMTRweCwgMTRweCwgMTVweCksXHJcbiAgcC14czogICgxMXB4LCAxMXB4LCAxMnB4LCAxMnB4LCAxM3B4KSxcclxuICBwLXh4czogKDEwcHgsIDEwcHgsIDExcHgsIDExcHgsIDEycHgpLFxyXG5cclxuKTtcclxuXHJcbi8vIG5hbWVkIHNwYWNpbmdzXHJcbiRzcGFjaW5nczogKFxyXG4gIHM6IDVweCxcclxuICBtOiAxMHB4LFxyXG4gIGw6IDIwcHgsXHJcbiAgeGw6IDMwcHgsXHJcbiAgeHhsOiA0MHB4LFxyXG4pO1xyXG5cclxuLy8gbmFtZWQgd2lkdGhzXHJcbiR3aWR0aHM6IChcclxuICB6ZXJvOiAwLFxyXG4gIGd1dHRlci1mbHVpZC1zOiA1cHgsXHJcbiAgZ3V0dGVyLWZsdWlkLW06IDEwcHgsXHJcbiAgZ3V0dGVyLWZsdWlkLWw6IDE1cHgsXHJcbiAgZ3V0dGVyLXM6IDIwcHgsXHJcbiAgZ3V0dGVyLW06IDMwcHgsXHJcbiAgZ3V0dGVyLWw6IDQwcHgsXHJcbiAgZ3V0dGVyLXhsOiA1MHB4LFxyXG4gIG1vYmlsZS1zOiAzMjBweCxcclxuICBtb2JpbGU6IDM3NXB4LFxyXG4gIG1vYmlsZS1sOiA0MTRweCxcclxuICBtb2JpbGUteGw6IDUzMnB4LFxyXG4gIHRhYmxldC1zOiA2NTBweCxcclxuICB0YWJsZXQ6IDc2OHB4LFxyXG4gIHRhYmxldC1sOiA4OTZweCxcclxuICBkZXNrdG9wOiAxMDI0cHgsXHJcbiAgZGVza3RvcC1sOiAxMTQ2cHgsXHJcbiAgZGVza3RvcC14bDogMTI2OHB4LFxyXG4gIG1heC13aWR0aC1uYXJyb3c6IDg5NnB4LCAvLyA4MTYgKyAoZ3V0dGVyLWwgKiAyKVxyXG4gIG1heC13aWR0aDogMTI4MHB4LCAvLyAxMjAwICsgKGd1dHRlci1sICogMilcclxuICBtYXgtd2lkdGgtZmx1aWQ6IDE0MDhweCwgLy8gMTI4MCArICgoZ3V0dGVyLWZsdWlkLWwgKiA0KSAqIDIpXHJcbiAgbWF4LXdpZHRoLXByb2R1Y3RzLXdhbGw6IDE2MjVweCxcclxuICB1bmJvdW5kZWQtZG90OiAyMHB4LFxyXG4pO1xyXG5cclxuLy8gei1pbmRleGVzXHJcbiR6LWluZGV4ZXM6IChcclxuICBjYXJ0LXN1bW1hcnk6IDEwLFxyXG4gIGNoYXQ6IDE1LFxyXG4gIG92ZXJsYXk6IDIwLFxyXG4gIG1vZGFsOiAzMCxcclxuKTtcclxuIiwiLy9cclxuLy8gY29yZSAob3B0aW9uYWwpIGJ1dHRvbiBiYXNlXHJcbi8vXHJcblxyXG4vLyBidXR0b24gc2V0dGluZ3NcclxuJGJ1dHRvbi1yb3VuZGVkLXBhZGRpbmctdG9wLWJvdHRvbTogLjdlbTtcclxuJGJ1dHRvbi1wYWRkaW5nLXRvcC1ib3R0b206IC45M2VtO1xyXG4kYnV0dG9uLXBhZGRpbmctcmlnaHQtbGVmdDogMS42N2VtO1xyXG5cclxuLmJ1dHRvbiB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUocC1zKTtcclxuICBAaW5jbHVkZSBzZWxlY3Rpb24tdHJhbnNwYXJlbnQ7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoYmx1ZSk7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgY29sb3I6IGNvbG9yKHdoaXRlKTtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIGZvbnQtZmFtaWx5OiBmb250LWZhbWlseShzYW5zKTtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG4gIGxldHRlci1zcGFjaW5nOiBsZXR0ZXItc3BhY2luZyhleHBhbmRlZCk7XHJcbiAgLy8gbGluZS1oZWlnaHQgaXMgbmVjZXNzYXJ5IHRvIGtlZXAgdGhlIGJ1dHRvbiBoZWlnaHQgY29uc2lzdGVudCBiZXR3ZWVuIGA8YnV0dG9uPmBzIGFuZCBgPGE+YHMuXHJcbiAgbGluZS1oZWlnaHQ6IDEuNWVtO1xyXG4gIG1hcmdpbjogMDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHBhZGRpbmc6ICRidXR0b24tcGFkZGluZy10b3AtYm90dG9tICRidXR0b24tcGFkZGluZy1yaWdodC1sZWZ0O1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICB0cmFuc2l0aW9uOiBjb2xvciAuMnMgZWFzZS1vdXQsIGJvcmRlciAuMnMgZWFzZS1vdXQsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2Utb3V0O1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgJjphY3RpdmUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKGNvbG9yKGJsdWUpLCAyMCUpO1xyXG4gIH1cclxuICAmOmZvY3VzIHtcclxuICAgIGJveC1zaGFkb3c6IGJveC1zaGFkb3ctc2l6ZShzKSBjb2xvcihzaGFkb3csIGRhcmspO1xyXG4gIH1cclxuICAmOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGJsdWUsIGRhcmspO1xyXG4gIH1cclxufVxyXG5cclxuLmJ1dHRvbi0tZGlzY3JldGlvbmFyeSB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUocC14cyk7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgY29sb3I6IGNvbG9yKGJsdWUpO1xyXG4gIHBhZGRpbmc6IDEuMmVtIDEuOTNlbTtcclxuICAmOmZvY3VzIHtcclxuICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICB0ZXh0LXNoYWRvdzogMCAycHggM3B4IGNvbG9yKHNoYWRvdywgZGFyayk7XHJcbiAgfVxyXG4gICY6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBjb2xvcjogY29sb3IoYmx1ZSwgZGFyayk7XHJcbiAgfVxyXG4gICYuYnV0dG9uLS1yZXZlcnNlZCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGNvbG9yOiBjb2xvcih3aGl0ZSk7XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgIGNvbG9yOiBjb2xvcihibHVlKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5idXR0b24tLXJldmVyc2VkIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSk7XHJcbiAgY29sb3I6IGNvbG9yKGJsdWUpO1xyXG4gICY6YWN0aXZlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHdoaXRlKTtcclxuICAgIGNvbG9yOiBkYXJrZW4oY29sb3IoYmx1ZSksIDIwJSk7XHJcbiAgfVxyXG4gICY6Zm9jdXMge1xyXG4gICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgIG91dGxpbmU6IDJweCBzb2xpZCBjb2xvcihibHVlKTtcclxuICB9XHJcbiAgJjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSk7XHJcbiAgICBjb2xvcjogY29sb3IoYmx1ZSwgZGFyayk7XHJcbiAgfVxyXG59XHJcblxyXG4uYnV0dG9uLS1zcGVjaWFsIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihzcGVjaWFsKTtcclxuICBjb2xvcjogY29sb3Iod2hpdGUpO1xyXG4gICY6YWN0aXZlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihjb2xvcihzcGVjaWFsKSwgMjAlKTtcclxuICAgIGNvbG9yOiBjb2xvcih3aGl0ZSk7XHJcbiAgfVxyXG4gICY6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Ioc3BlY2lhbCwgZGFyayk7XHJcbiAgICBjb2xvcjogY29sb3Iod2hpdGUpO1xyXG4gIH1cclxufVxyXG5cclxuLmJ1dHRvbi0tc3Ryb2tlZCB7XHJcbiAgLy8gdGhlIHBhZGRpbmcgYm90dG9tIGFuZCB0b3AgbmVlZHMgdG8gYmUgc2xpZ2h0bHkgc21hbGxlciB0byBhY2NvbW9kYXRlIGZvciB0aGUgMnB4IGJvcmRlclxyXG4gICRwYWRkaW5nOiBjYWxjKCN7JGJ1dHRvbi1wYWRkaW5nLXRvcC1ib3R0b219IC0gMnB4KTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICBib3JkZXI6IDJweCBzb2xpZCBjb2xvcihibHVlKTtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIGNvbG9yOiBjb2xvcihibHVlKTtcclxuICBwYWRkaW5nLWJvdHRvbTogJHBhZGRpbmc7XHJcbiAgcGFkZGluZy10b3A6ICRwYWRkaW5nO1xyXG4gICY6YWN0aXZlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oY29sb3IoYmx1ZSksIDIwJSk7XHJcbiAgICBjb2xvcjogZGFya2VuKGNvbG9yKGJsdWUpLCAyMCUpO1xyXG4gIH1cclxuICAmOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyLWNvbG9yOiBjb2xvcihibHVlLCBkYXJrKTtcclxuICAgIGNvbG9yOiBjb2xvcihibHVlLCBkYXJrKTtcclxuICB9XHJcbiAgJi5idXR0b24tLXJldmVyc2VkIHtcclxuICAgIGJvcmRlcjogMnB4IHNvbGlkIGNvbG9yKHdoaXRlKTtcclxuICAgIGNvbG9yOiBjb2xvcih3aGl0ZSk7XHJcbiAgICAmOmFjdGl2ZSB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICBib3JkZXItY29sb3I6IGRhcmtlbihjb2xvcih3aGl0ZSksIDIwJSk7XHJcbiAgICAgIGNvbG9yOiBkYXJrZW4oY29sb3Iod2hpdGUpLCAyMCUpO1xyXG4gICAgfVxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICBib3JkZXItY29sb3I6IGNvbG9yKGJsdWUpO1xyXG4gICAgICBjb2xvcjogY29sb3IoYmx1ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uYnV0dG9uLXJvdW5kZWQge1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKHAtbCk7XHJcbiAgYWxsOiB1bnNldDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihtaWRuaWdodCk7XHJcbiAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIGNvbG9yOiBjb2xvcih3aGl0ZSk7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBmb250LXdlaWdodDogNjAwO1xyXG4gIGxldHRlci1zcGFjaW5nOiBsZXR0ZXItc3BhY2luZyhleHBhbmRlZCk7XHJcbiAgbGluZS1oZWlnaHQ6IDEuNWVtO1xyXG4gIHBhZGRpbmc6ICRidXR0b24tcm91bmRlZC1wYWRkaW5nLXRvcC1ib3R0b20gMS43NWVtO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2Utb3V0O1xyXG4gICY6ZGlzYWJsZWQsXHJcbiAgJi5kaXNhYmxlZCB7XHJcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xyXG4gIH1cclxuICAmOmZvY3VzLFxyXG4gICY6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IobWludHkpO1xyXG4gIH1cclxufVxyXG5cclxuLmJ1dHRvbi1yb3VuZGVkLS1zIHtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwLXhzKTtcclxufVxyXG5cclxuLmJ1dHRvbi1yb3VuZGVkLS1zZWNvbmRhcnkge1xyXG4gIC8vIHRoZSBwYWRkaW5nIGJvdHRvbSBhbmQgdG9wIG5lZWRzIHRvIGJlIHNsaWdodGx5IHNtYWxsZXIgdG8gYWNjb21vZGF0ZSBmb3IgdGhlIDJweCBib3JkZXJcclxuICAkcGFkZGluZzogY2FsYygjeyRidXR0b24tcm91bmRlZC1wYWRkaW5nLXRvcC1ib3R0b219IC0gMnB4KTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICBib3JkZXI6IDJweCBzb2xpZCBjb2xvcihtaWRuaWdodCk7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICBjb2xvcjogY29sb3IobWlkbmlnaHQpO1xyXG4gIHBhZGRpbmctYm90dG9tOiAkcGFkZGluZztcclxuICBwYWRkaW5nLXRvcDogJHBhZGRpbmc7XHJcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIC4ycyBlYXNlLW91dDtcclxuICAmOmZvY3VzLFxyXG4gICY6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXItY29sb3I6IGNvbG9yKG1pbnR5KTtcclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gY29yZSByZXF1aXJlZCBmdW5jdGlvbnNcclxuLy9cclxuXHJcbi8vIHJldHVybiBhIGJvcmRlci1yYWRpdXNlcyBtYXAgdmFsdWVcclxuQGZ1bmN0aW9uIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXM6IG0sICRib3JkZXItcmFkaWk6ICRib3JkZXItcmFkaWkpIHtcclxuICBAaWYgbWFwLWhhcy1rZXkoJGJvcmRlci1yYWRpaSwgJGJvcmRlci1yYWRpdXMpIHtcclxuICAgIEByZXR1cm4gbWFwLWdldCgkYm9yZGVyLXJhZGlpLCAkYm9yZGVyLXJhZGl1cyk7XHJcbiAgfVxyXG4gIEBlbHNlIHtcclxuICAgIEB3YXJuICdib3JkZXItcmFkaXVzKCN7JGJvcmRlci1yYWRpdXN9KSBpcyBub3QgYSB2YWxpZCBib3ggc2hhZG93IHNpemUnO1xyXG4gICAgQHJldHVybiAnaW52YWxpZC1ib3JkZXItcmFkaXVzLW1hcC1zZXR0aW5nJztcclxuICB9XHJcbn1cclxuXHJcbi8vIHJldHVybiBhIGJveC1zaGFkb3ctc2l6ZXMgbWFwIHZhbHVlXHJcbkBmdW5jdGlvbiBib3gtc2hhZG93LXNpemUoJGJveC1zaGFkb3ctc2l6ZSwgJGJveC1zaGFkb3ctc2l6ZXM6ICRib3gtc2hhZG93LXNpemVzKSB7XHJcbiAgQGlmIG1hcC1oYXMta2V5KCRib3gtc2hhZG93LXNpemVzLCAkYm94LXNoYWRvdy1zaXplKSB7XHJcbiAgICBAcmV0dXJuIG1hcC1nZXQoJGJveC1zaGFkb3ctc2l6ZXMsICRib3gtc2hhZG93LXNpemUpO1xyXG4gIH1cclxuICBAZWxzZSB7XHJcbiAgICBAd2FybiAnYm94LXNoYWRvdy1zaXplKCN7JGJveC1zaGFkb3ctc2l6ZX0pIGlzIG5vdCBhIHZhbGlkIGJveCBzaGFkb3cgc2l6ZSc7XHJcbiAgICBAcmV0dXJuICdpbnZhbGlkLWJveC1zaGFkb3ctc2l6ZS1tYXAtc2V0dGluZyc7XHJcbiAgfVxyXG59XHJcblxyXG4vLyByZXR1cm4gYSBjb2xvciBtYXAgdmFsdWUsIGRlZmF1bHQgdG8gdGhlIHNldHRpbmdzIGNvbG9yIG1hcFxyXG5AZnVuY3Rpb24gY29sb3IoJGNvbG9yLCAkdmFsdWU6IGJhc2UsICRjb2xvcnM6ICRjb2xvcnMpIHtcclxuICBAaWYgbWFwLWhhcy1rZXkoJGNvbG9ycywgJGNvbG9yKSBhbmQgbWFwLWhhcy1rZXkobWFwLWdldCgkY29sb3JzLCAkY29sb3IpLCAkdmFsdWUpIHtcclxuICAgIEByZXR1cm4gbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICRjb2xvciksICR2YWx1ZSk7XHJcbiAgfVxyXG4gIEBlbHNlIHtcclxuICAgIEB3YXJuICdjb2xvcigjeyRjb2xvcn0sICN7JHZhbHVlfSkgaXMgbm90IGEgdmFsaWQgY29sb3IgbWFwIHNldHRpbmcnO1xyXG4gICAgQHJldHVybiAnaW52YWxpZC1jb2xvci1tYXAtc2V0dGluZyc7XHJcbiAgfVxyXG59XHJcblxyXG4vLyByZXR1cm4gYW4gZWFzaW5nIG1hcCB2YWx1ZSwgZGVmYXVsdCB0byB0aGUgc2V0dGluZ3MgZWFzaW5nIG1hcFxyXG5AZnVuY3Rpb24gZWFzaW5nKCRlYXNpbmcsICRlYXNpbmdzOiAkZWFzaW5ncykge1xyXG4gIEBpZiBtYXAtaGFzLWtleSgkZWFzaW5ncywgJGVhc2luZykge1xyXG4gICAgQHJldHVybiBtYXAtZ2V0KCRlYXNpbmdzLCAkZWFzaW5nKTtcclxuICB9XHJcbiAgQGVsc2Uge1xyXG4gICAgQHdhcm4gJ2Vhc2luZygjeyRlYXNpbmd9KSBpcyBub3QgYSB2YWxpZCBlYXNpbmcgbWFwIHNldHRpbmcnO1xyXG4gICAgQHJldHVybiAnaW52YWxpZC1lYXNpbmctbWFwLXNldHRpbmcnO1xyXG4gIH1cclxufVxyXG5cclxuLy8gcmV0dXJuIGEgZm9udCBtYXAgdmFsdWUsIGRlZmF1bHQgdG8gdGhlIHNldHRpbmdzIGZvbnRzIG1hcFxyXG5AZnVuY3Rpb24gZm9udC1mYW1pbHkoJGZvbnQtZmFtaWx5LCAkZm9udC1mYW1pbGllczogJGZvbnQtZmFtaWxpZXMpIHtcclxuICBAaWYgbWFwLWhhcy1rZXkoJGZvbnQtZmFtaWxpZXMsICRmb250LWZhbWlseSkge1xyXG4gICAgQHJldHVybiB1bnF1b3RlKG1hcC1nZXQoJGZvbnQtZmFtaWxpZXMsICRmb250LWZhbWlseSkpO1xyXG4gIH1cclxuICBAZWxzZSB7XHJcbiAgICBAd2FybiAnZm9udC1mYW1pbHkoI3skZm9udC1mYW1pbHl9KSBpcyBub3QgYSB2YWxpZCBmb250LWZhbWlsaWVzIG1hcCBzZXR0aW5nJztcclxuICAgIEByZXR1cm4gJ2ludmFsaWQtZm9udC1tYXAtc2V0dGluZyc7XHJcbiAgfVxyXG59XHJcblxyXG4vLyByZXR1cm4gYSBuYW1lZCBoZWlnaHQgbWFwIHZhbHVlLCBkZWZhdWx0IHRvIHRoZSBzZXR0aW5ncyBoZWlnaHRzIG1hcFxyXG5AZnVuY3Rpb24gaGVpZ2h0KCRoZWlnaHQsICRoZWlnaHRzOiAkaGVpZ2h0cykge1xyXG4gIEBpZiBtYXAtaGFzLWtleSgkaGVpZ2h0cywgJGhlaWdodCkge1xyXG4gICAgQHJldHVybiBtYXAtZ2V0KCRoZWlnaHRzLCAkaGVpZ2h0KTtcclxuICB9XHJcbiAgQGVsc2Uge1xyXG4gICAgQHdhcm4gJ2hlaWdodCgjeyRoZWlnaHR9KSBpcyBub3QgYSB2YWxpZCBoZWlnaHQgbWFwIHNldHRpbmcnO1xyXG4gICAgQHJldHVybiAnaW52YWxpZC1oZWlnaHQtbWFwLXNldHRpbmcnO1xyXG4gIH1cclxufVxyXG5cclxuLy8gcmV0dXJuIGEgbGV0dGVyLXNwYWNpbmcgbWFwIHZhbHVlLCBkZWZhdWx0IHRvIHRoZSBzZXR0aW5ncyBsZXR0ZXItc3BhY2luZyBtYXBcclxuQGZ1bmN0aW9uIGxldHRlci1zcGFjaW5nKCRsZXR0ZXItc3BhY2luZywgJGxldHRlci1zcGFjaW5nczogJGxldHRlci1zcGFjaW5ncykge1xyXG4gIEBpZiBtYXAtaGFzLWtleSgkbGV0dGVyLXNwYWNpbmdzLCAkbGV0dGVyLXNwYWNpbmcpIHtcclxuICAgIEByZXR1cm4gbWFwLWdldCgkbGV0dGVyLXNwYWNpbmdzLCAkbGV0dGVyLXNwYWNpbmcpO1xyXG4gIH1cclxuICBAZWxzZSB7XHJcbiAgICBAd2FybiAnbGV0dGVyLXNwYWNpbmcoI3skbGV0dGVyLXNwYWNpbmd9KSBpcyBub3QgYSB2YWxpZCBsZXR0ZXItc3BhY2luZyc7XHJcbiAgICBAcmV0dXJuICdpbnZhbGlkLWxldHRlci1zcGFjaW5nLW1hcC1zZXR0aW5nJztcclxuICB9XHJcbn1cclxuXHJcbi8vIHJldHVybiBhIGxpbmUtaGVpZ2h0IG1hcCB2YWx1ZSwgZGVmYXVsdCB0byB0aGUgc2V0dGluZ3MgbGluZS1oZWlnaHQgbWFwXHJcbkBmdW5jdGlvbiBsaW5lLWhlaWdodCgkbGluZS1oZWlnaHQsICRsaW5lLWhlaWdodHM6ICRsaW5lLWhlaWdodHMpIHtcclxuICBAaWYgbWFwLWhhcy1rZXkoJGxpbmUtaGVpZ2h0cywgJGxpbmUtaGVpZ2h0KSB7XHJcbiAgICBAcmV0dXJuIG1hcC1nZXQoJGxpbmUtaGVpZ2h0cywgJGxpbmUtaGVpZ2h0KTtcclxuICB9XHJcbiAgQGVsc2Uge1xyXG4gICAgQHdhcm4gJ2xpbmUtaGVpZ2h0KCN7JGxpbmUtaGVpZ2h0fSkgaXMgbm90IGEgdmFsaWQgbGluZS1oZWlnaHQnO1xyXG4gICAgQHJldHVybiAnaW52YWxpZC1saW5lLWhlaWdodC1tYXAtc2V0dGluZyc7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBtYXAgZXh0ZW5kXHJcbi8vICogbW9kaWZpZWQgZnJvbSB2aWEgaHR0cHM6Ly93d3cuc2l0ZXBvaW50LmNvbS9leHRyYS1tYXAtZnVuY3Rpb25zLXNhc3MvXHJcbi8vICogZGVlcCBleHRlbmRzIG9ubHlcclxuQGZ1bmN0aW9uIG1hcC1leHRlbmQoJG1hcCwgJG1hcHMuLi4pIHtcclxuICAvLyBsb29wIHRocm91Z2ggJG1hcHMuLi5cclxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIGxlbmd0aCgkbWFwcykge1xyXG4gICAgLy8gc3RvcmUgY3VycmVudCBtYXBcclxuICAgICRjdXJyZW50OiBudGgoJG1hcHMsICRpKTtcclxuICAgIC8vIGxvb3AgdGhyb3VnaCBhbGwga2V5IHBhaXJzIGluIGN1cnJlbnQgbWFwXHJcbiAgICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJGN1cnJlbnQge1xyXG4gICAgICAvLyBpZiB2YWx1ZSBpcyBhIG5lc3RlZCBtYXAgYW5kIHNhbWUga2V5IGZyb20gbWFwIGlzIGEgbmVzdGVkIG1hcCBhcyB3ZWxsXHJcbiAgICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ21hcCcgYW5kIHR5cGUtb2YobWFwLWdldCgkbWFwLCAka2V5KSkgPT0gJ21hcCcge1xyXG4gICAgICAgIC8vIHJlY3Vyc2l2ZSBleHRlbmRcclxuICAgICAgICAkdmFsdWU6IG1hcC1leHRlbmQobWFwLWdldCgkbWFwLCAka2V5KSwgJHZhbHVlKTtcclxuICAgICAgfVxyXG4gICAgICAvLyBtZXJnZSBjdXJyZW50IGtleSBwYWlyIHdpdGggbWFwXHJcbiAgICAgICRtYXA6IG1hcC1tZXJnZSgkbWFwLCAoJGtleTogJHZhbHVlKSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8vIHJldHVyblxyXG4gIEByZXR1cm4gJG1hcDtcclxufVxyXG5cclxuLy8gcmV0dXJuIGEgcmVzcG9uc2l2ZSBmb250IHNpemUgbWFwXHJcbkBmdW5jdGlvbiByZXNwb25zaXZlLWZvbnQtc2l6ZSgkcmVzcG9uc2l2ZS1mb250LXNpemUsICRyZXNwb25zaXZlLWZvbnQtc2l6ZXM6ICRyZXNwb25zaXZlLWZvbnQtc2l6ZXMpIHtcclxuICBAaWYgbWFwLWhhcy1rZXkoJHJlc3BvbnNpdmUtZm9udC1zaXplcywgJHJlc3BvbnNpdmUtZm9udC1zaXplKSB7XHJcbiAgICBAcmV0dXJuIG1hcC1nZXQoJHJlc3BvbnNpdmUtZm9udC1zaXplcywgJHJlc3BvbnNpdmUtZm9udC1zaXplKTtcclxuICB9XHJcbiAgQGVsc2Uge1xyXG4gICAgQHdhcm4gJ3Jlc3BvbnNpdmUtZm9udC1zaXplKCN7JHJlc3BvbnNpdmUtZm9udC1zaXplfSkgaXMgbm90IGEgdmFsaWQgcmVzcG9uc2l2ZS1mb250LXNpemUnO1xyXG4gICAgQHJldHVybiAnaW52YWxpZC1mb250LXNpemUtbGlzdC1zZXR0aW5nJztcclxuICB9XHJcbn1cclxuXHJcbi8vIHJldHVybiBhIG5hbWVkIHNwYWNpbmcgbWFwIHZhbHVlLCBkZWZhdWx0IHRvIHRoZSBzZXR0aW5ncyBzcGFjaW5ncyBtYXBcclxuQGZ1bmN0aW9uIHNwYWNpbmcoJHNwYWNpbmcsICRzcGFjaW5nczogJHNwYWNpbmdzKSB7XHJcbiAgQGlmIG1hcC1oYXMta2V5KCRzcGFjaW5ncywgJHNwYWNpbmcpIHtcclxuICAgIEByZXR1cm4gbWFwLWdldCgkc3BhY2luZ3MsICRzcGFjaW5nKTtcclxuICB9XHJcbiAgQGVsc2Uge1xyXG4gICAgQHdhcm4gJ3NwYWNpbmcoI3skc3BhY2luZ30pIGlzIG5vdCBhIHZhbGlkIHNwYWNpbmcgbWFwIHNldHRpbmcnO1xyXG4gICAgQHJldHVybiAnaW52YWxpZC1zcGFjZS1tYXAtc2V0dGluZyc7XHJcbiAgfVxyXG59XHJcblxyXG4vLyByZXR1cm4gYSBzdHJpbmcgd2l0aCAkc2VhcmNoIHJlcGxhY2VkIHdpdGggJHJlcGxhY2VcclxuQGZ1bmN0aW9uIHN0ci1yZXBsYWNlKCRzdHJpbmcsICRzZWFyY2gsICRyZXBsYWNlOiAnJykge1xyXG4gICRpbmRleDogc3RyLWluZGV4KCRzdHJpbmcsICRzZWFyY2gpO1xyXG4gIEBpZiAkaW5kZXgge1xyXG4gICAgQHJldHVybiBzdHItc2xpY2UoJHN0cmluZywgMSwgJGluZGV4IC0gMSkgKyAkcmVwbGFjZSArIHN0ci1yZXBsYWNlKHN0ci1zbGljZSgkc3RyaW5nLCAkaW5kZXggKyBzdHItbGVuZ3RoKCRzZWFyY2gpKSwgJHNlYXJjaCwgJHJlcGxhY2UpO1xyXG4gIH1cclxuICBAcmV0dXJuICRzdHJpbmc7XHJcbn1cclxuXHJcbi8vIHJldHVybiBhIG5hbWVkIHdpZHRoIG1hcCB2YWx1ZSwgZGVmYXVsdCB0byB0aGUgc2V0dGluZ3Mgd2lkdGhzIG1hcFxyXG5AZnVuY3Rpb24gd2lkdGgoJHdpZHRoLCAkd2lkdGhzOiAkd2lkdGhzKSB7XHJcbiAgQGlmIG1hcC1oYXMta2V5KCR3aWR0aHMsICR3aWR0aCkge1xyXG4gICAgQHJldHVybiBtYXAtZ2V0KCR3aWR0aHMsICR3aWR0aCk7XHJcbiAgfVxyXG4gIEBlbHNlIHtcclxuICAgIEB3YXJuICd3aWR0aCgjeyR3aWR0aH0pIGlzIG5vdCBhIHZhbGlkIHdpZHRoIG1hcCBzZXR0aW5nJztcclxuICAgIEByZXR1cm4gJ2ludmFsaWQtd2lkdGgtbWFwLXNldHRpbmcnO1xyXG4gIH1cclxufVxyXG5cclxuLy8gcmV0dXJuIGEgei1pbmRleCBtYXAgdmFsdWUsIGRlZmF1bHQgdG8gdGhlIHNldHRpbmdzIHotaW5kZXhlcyBtYXBcclxuQGZ1bmN0aW9uIHotaW5kZXgoJHotaW5kZXgsICR6LWluZGV4ZXM6ICR6LWluZGV4ZXMpIHtcclxuICBAaWYgbWFwLWhhcy1rZXkoJHotaW5kZXhlcywgJHotaW5kZXgpIHtcclxuICAgIEByZXR1cm4gbWFwLWdldCgkei1pbmRleGVzLCAkei1pbmRleCk7XHJcbiAgfVxyXG4gIEBlbHNlIHtcclxuICAgIEB3YXJuICd6LWluZGV4KCN7JHotaW5kZXh9KSBpcyBub3QgYSB2YWxpZCB6LWluZGV4JztcclxuICAgIEByZXR1cm4gJ2ludmFsaWQtei1pbmRleC1tYXAtc2V0dGluZyc7XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIGNvcmUgKG9wdGlvbmFsKSBidXR0b24gbGF5b3V0XHJcbi8vXHJcblxyXG4uYnV0dG9uLW5vdGUge1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKHAteHMpO1xyXG4gIGNvbG9yOiBjb2xvcihncmF5LCBsaWdodCk7XHJcbiAgcGFkZGluZy1sZWZ0OiAxLjVlbTtcclxuICAmW2RhdGEtYmVoYXZpb3JdLFxyXG4gICZbaHJlZl0ge1xyXG4gICAgY29sb3I6IGNvbG9yKGJsdWUpO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgdHJhbnNpdGlvbjogY29sb3IgLjJzIGVhc2Utb3V0O1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGNvbG9yOiBjb2xvcihibHVlLCBkYXJrKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5idXR0b24tbm90ZS1jb250YWluZXIge1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgZGlzcGxheTogZmxleDtcclxufVxyXG4iLCIvL1xyXG4vLyBjb3JlIChvcHRpb25hbCkgYnV0dG9uIG1vZGlmaWVyc1xyXG4vL1xyXG5cclxuLmJ1dHRvbi0tY2VudGVyIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW4tbGVmdDogYXV0bztcclxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUteGwpIHtcclxuICAgIG1heC13aWR0aDogMzcwcHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcbn1cclxuXHJcbi5idXR0b24tLWZ1bGwge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5idXR0b24tLWhhcy1sb2FkZXIge1xyXG4gIC8vIGNvcmUgYnV0dG9uIGxvYWRcclxuICAvLyAqIHRoaXMgbW9kaWZpZXIgY2xhc3Mgd2lsbCBnaXZlIGEgYnV0dG9uIHRoZSBhYmlsaXR5IHRvIHB1bGwgaW4gdGhlIGVsaXBzaXMgbG9hZGluZyBhbmltYXRpb25cclxuICAvLyAqIGBjb3JlLWxvYWRlci5zY3NzYCBpcyByZXF1aXJlZCBmb3IgdGhpcyBtb2RpZmllciBjbGFzcyB0byBmdW5jdGlvbiBwcm9wZXJseVxyXG5cclxuICAvKiBzYXNzLWxpbnQ6ZGlzYWJsZS1hbGxcclxuXHJcbiAgZXhhbXBsZTpcclxuXHJcbiAgPGJ1dHRvbiBjbGFzcz1cImJ1dHRvbiBidXR0b24tLWxvYWQgbG9hZGluZ1wiPlxyXG4gICAgPHNwYW4gY2xhc3M9XCJ0ZXh0XCI+XHJcbiAgICAgIFN1Ym1pdFxyXG4gICAgPC9zcGFuPlxyXG4gICAgPHNwYW4gY2xhc3M9XCJlbGxpcHNpcy1sb2FkZXJcIj5cclxuICAgICAgPHNwYW4gY2xhc3M9XCJkb3RcIj48L3NwYW4+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwiZG90XCI+PC9zcGFuPlxyXG4gICAgICA8c3BhbiBjbGFzcz1cImRvdFwiPjwvc3Bhbj5cclxuICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0XCI+TG9hZGluZzwvc3Bhbj5cclxuICAgIDwvc3Bhbj5cclxuICA8L2J1dHRvbj5cclxuXHJcbiAgc2Fzcy1saW50OmVuYWJsZS1hbGwgKi9cclxuXHJcbiAgJGVhc2luZzogZWFzaW5nKG91dC1leHBvKTtcclxuICAudGV4dCB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNXMgJGVhc2luZztcclxuICB9XHJcbiAgLmVsbGlwc2lzLWxvYWRlciB7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICB0b3A6IDA7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNXMgJGVhc2luZywgdHJhbnNmb3JtIC41cyAkZWFzaW5nO1xyXG4gIH1cclxufVxyXG5cclxuLmJ1dHRvbi0taGFzLWxvYWRlci5sb2FkaW5nIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihncmF5LCB4LWxpZ2h0KTtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAvLyBAVE9ETyBpcyB0aGVyZSBhIGJldHRlciB3YXkgdG8gZG8gdGhpcyBmb3IgYWNjZXNzaWJpbGl0eVxyXG4gIC50ZXh0IHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG4gIC5lbGxpcHNpcy1sb2FkZXIge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgfVxyXG59XHJcblxyXG4uYnV0dG9uLS1pY29uIHtcclxuICBwYWRkaW5nLWxlZnQ6IDIuNjdlbTtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgLnVpLWljb24ge1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgaGVpZ2h0OiAyLjY3ZW07XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogYXV0bztcclxuICAgIG1hcmdpbi10b3A6IGF1dG87XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICB3aWR0aDogMi42N2VtO1xyXG4gIH1cclxufVxyXG5cclxuLmJ1dHRvbi0tbCB7XHJcbiAgcGFkZGluZy1ib3R0b206IDEuMTNlbTtcclxuICBwYWRkaW5nLXRvcDogMS4yZW07XHJcbn1cclxuXHJcbi5idXR0b24tLXJvdW5kZWQtY29ybmVycy1sIHtcclxuICBib3JkZXItcmFkaXVzOiBib3JkZXItcmFkaXVzKGwpO1xyXG59XHJcblxyXG4uYnV0dG9uLS1yb3VuZGVkLWNvcm5lcnMtbSB7XHJcbiAgYm9yZGVyLXJhZGl1czogYm9yZGVyLXJhZGl1cyhtKTtcclxufVxyXG5cclxuLmJ1dHRvbi0tcm91bmRlZC1jb3JuZXJzLXMge1xyXG4gIGJvcmRlci1yYWRpdXM6IGJvcmRlci1yYWRpdXMocyk7XHJcbn1cclxuXHJcblxyXG4uYnV0dG9uLS1zIHtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwLXhzKTtcclxuICBwYWRkaW5nOiAuNTVlbSAxLjE1ZW07XHJcbiAgJi5idXR0b24tLWljb24ge1xyXG4gICAgLnVpLWljb24ge1xyXG4gICAgICBoZWlnaHQ6IDEuODVlbTtcclxuICAgICAgd2lkdGg6IDEuODVlbTtcclxuICAgIH1cclxuICB9XHJcbiAgJi5idXR0b24tLXN0cm9rZWQge1xyXG4gICAgcGFkZGluZy1ib3R0b206IC40ZW07XHJcbiAgICBwYWRkaW5nLXRvcDogLjRlbTtcclxuICB9XHJcbn1cclxuXHJcbi5idXR0b24tLXN1Y2Nlc3Mge1xyXG4gIHBhZGRpbmctbGVmdDogMDtcclxuICAudWktaWNvbiB7XHJcbiAgICBmaWxsOiBjb2xvcihibHVlKTtcclxuICAgIGxlZnQ6IGF1dG87XHJcbiAgICByaWdodDogMmVtO1xyXG4gIH1cclxufVxyXG5cclxuLmJ1dHRvbi0td2lkZSB7XHJcbiAgLy8gQE5PVEUsIHRoZSBtaW4vbWF4IHN0eWxlcyBhcmUgYSBsaXR0bGUgZnJhZ2lsZSAvIGFzc3VtZSB0aGUgYnV0dG9uIGlzIGluc2lkZSBhIGNvbnRlbnQtd3JhcHBlclxyXG4gICRtaW4td2lkdGg6IDM1MHB4O1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoMCwgJG1pbi13aWR0aCArICh3aWR0aChndXR0ZXItcykgKiAyKSwgZmFsc2UpIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50KDM5MHB4LCBmYWxzZSwgZmFsc2UpIHtcclxuICAgIG1pbi13aWR0aDogJG1pbi13aWR0aDtcclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gY29yZSAob3B0aW9uYWwpIGJ1dHRvbiBzdGF0ZXNcclxuLy9cclxuXHJcbi5idXR0b25bZGlzYWJsZWRdIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBmb3JjZS1hdHRyaWJ1dGUtbmVzdGluZ1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGdyYXksIHgtbGlnaHQpO1xyXG4gIGNvbG9yOiBjb2xvcih3aGl0ZSk7XHJcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcclxuICAmLmJ1dHRvbi0tZGlzY3JldGlvbmFyeSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGNvbG9yOiBjb2xvcihncmF5LCB4LWxpZ2h0KTtcclxuICB9XHJcbiAgJi5idXR0b24tLXJldmVyc2VkIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGdyYXksIGRhcmspO1xyXG4gICAgY29sb3I6IGNvbG9yKGdyYXksIGxpZ2h0KTtcclxuICB9XHJcbiAgJi5idXR0b24tLXN0cm9rZWQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXI6IDJweCBzb2xpZCBjb2xvcihncmF5LCB4LWxpZ2h0KTtcclxuICAgIGNvbG9yOiBjb2xvcihncmF5LCB4LWxpZ2h0KTtcclxuICB9XHJcbn1cclxuXHJcbi5idXR0b24uZXJyb3Ige1xyXG4gIGFuaW1hdGlvbjogc2hha2UgMXMgZWFzZS1vdXQgZm9yd2FyZHM7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoZXJyb3IpO1xyXG4gIGNvbG9yOiBjb2xvcih3aGl0ZSk7XHJcbiAgJjphY3RpdmUsXHJcbiAgJjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihlcnJvcik7XHJcbiAgfVxyXG4gICYuYnV0dG9uLS1kaXNjcmV0aW9uYXJ5IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgY29sb3I6IGNvbG9yKGVycm9yKTtcclxuICB9XHJcbiAgJi5idXR0b24tLXN0cm9rZWQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXI6IDJweCBzb2xpZCBjb2xvcihlcnJvcik7XHJcbiAgICBjb2xvcjogY29sb3IoZXJyb3IpO1xyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBjb3JlIChvcHRpb25hbCkgY2FyZFxyXG4vL1xyXG5cclxuLmNhcmQge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHdoaXRlLCBuZWFyKTtcclxuICBjb2xvcjogY29sb3IoZ3JheSk7XHJcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gIG1heC13aWR0aDogd2lkdGgodGFibGV0LXMpO1xyXG4gIG1pbi1oZWlnaHQ6IDkwcHg7XHJcbiAgcGFkZGluZy1ib3R0b206IDMwcHg7XHJcbiAgcGFkZGluZy1sZWZ0OiAzMHB4O1xyXG4gIHBhZGRpbmctcmlnaHQ6IDMwcHg7XHJcbiAgcGFkZGluZy10b3A6IDMwcHg7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0LXMpIHtcclxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gIH1cclxuICAmLS1mdWxsLXdpZHRoIHtcclxuICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xyXG4gICAgcGFkZGluZy10b3A6IDQwcHg7XHJcbiAgICBwIHtcclxuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgICAgbWF4LXdpZHRoOiAzNWVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmLS10aWdodC10b3Age1xyXG4gICAgbWFyZ2luLXRvcDogMDtcclxuICB9XHJcbiAgJi0td2l0aC1pY29uIHtcclxuICAgIG1hcmdpbi10b3A6IDM1cHg7XHJcbiAgfVxyXG4gIHAge1xyXG4gICAgbGluZS1oZWlnaHQ6IGxpbmUtaGVpZ2h0KHApO1xyXG4gIH1cclxuICAuYnRuLFxyXG4gIC5idXR0b24ge1xyXG4gICAgbWFyZ2luLXRvcDogMS43ZW07XHJcbiAgfVxyXG4gIC5oZWFkaW5nIHtcclxuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKHAtcyk7XHJcbiAgICBjb2xvcjogY29sb3IoZ3JheSk7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogLjdlbTtcclxuICB9XHJcbiAgLmhlYWRpbmctbCB7XHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShoLXMpO1xyXG4gICAgY29sb3I6IGNvbG9yKGdyYXksIGRhcmspO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIG1hcmdpbi1ib3R0b206IC44ZW07XHJcbiAgfVxyXG4gIC5wcmUtaGVhZGluZyB7XHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwLXMpO1xyXG4gICAgY29sb3I6IGNvbG9yKGdyYXksIGxpZ2h0KTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogbGV0dGVyLXNwYWNpbmcoZXhwYW5kZWQpO1xyXG4gICAgbGluZS1oZWlnaHQ6IGxpbmUtaGVpZ2h0KHApO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICB9XHJcbiAgLnJhZGlvLWFuZC1sYWJlbCArICYge1xyXG4gICAgbWFyZ2luLXRvcDogMTZweDtcclxuICB9XHJcbiAgLnNlYWwtaWNvbiB7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgY29sb3IoZ3JlZW4pLCBkYXJrZW4oY29sb3IoZ3JlZW4pLCAxNSUpKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBoZWlnaHQ6IDUwcHg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjhweCwgMCk7XHJcbiAgICB3aWR0aDogNTBweDtcclxuICAgIC5jaGVjayB7XHJcbiAgICAgIGZpbGw6IGNvbG9yKHdoaXRlKTtcclxuICAgICAgaGVpZ2h0OiAyMnB4O1xyXG4gICAgICB3aWR0aDogMjJweDtcclxuICAgIH1cclxuICB9XHJcbiAgLnNob3dyb29tLW5vdGUge1xyXG4gICAgZm9udC1zaXplOiAxMnB4O1xyXG4gIH1cclxufVxyXG5cclxuLmNhcmQtLWV4dHJhLXBhZGRpbmcge1xyXG4gIHBhZGRpbmctdG9wOiA0MHB4O1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcclxuICAgIHBhZGRpbmctbGVmdDogNzBweDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDcwcHg7XHJcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcclxuICB9XHJcbn1cclxuXHJcbi5jYXJkLS1zdHJva2VkIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICBib3JkZXI6IDRweCBzb2xpZCBjb2xvcih3aGl0ZSwgbmVhcik7XHJcbn1cclxuXHJcbi5jYXJkLS10aWdodCB7XHJcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgcGFkZGluZy1sZWZ0OiAyNXB4O1xyXG4gIHBhZGRpbmctcmlnaHQ6IDI1cHg7XHJcbiAgcGFkZGluZy10b3A6IDE1cHg7XHJcbn1cclxuXHJcbi8vIHRoZSBhc3N1bXB0aW9uIGlzIHRoYXQgdGhpcyB3aWxsIGNvbWUgbGFzdCB3aXRoaW4gYSBmaWVsZHNldC5mb3JtLW1vZHVsZSwgaGVuY2Ugbm8gbWFyZ2luLWJvdHRvbVxyXG4uY2FyZC53YXJuaW5nIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihlcnJvciwgbGlnaHQpO1xyXG4gIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgbWFyZ2luLXRvcDogMS41ZW07XHJcbiAgcCB7XHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwLXMpO1xyXG4gIH1cclxufVxyXG5cclxuLnNob3dyb29tLXBpY2t1cC1jYXJkIHtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGJvcmRlcjogc29saWQgNHB4IGNvbG9yKHdoaXRlLCBuZWFyKTtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gIG1hcmdpbi1ib3R0b206IDEuNWVtO1xyXG4gIHBhZGRpbmctYm90dG9tOiAxLjdlbTtcclxuICBwYWRkaW5nLWxlZnQ6IDEuN2VtO1xyXG4gIHBhZGRpbmctcmlnaHQ6IDEuN2VtO1xyXG4gIHBhZGRpbmctdG9wOiAxLjllbTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDMuNzVlbTtcclxuICB9XHJcbiAgLmhlYWRpbmcge1xyXG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUoaC1zKTtcclxuICAgIGNvbG9yOiBjb2xvcihncmF5LCB4LWRhcmspO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIG1hcmdpbi1ib3R0b206IC42ZW07XHJcbiAgfVxyXG4gIC5tZXNzYWdlIHtcclxuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKHApO1xyXG4gICAgbGluZS1oZWlnaHQ6IGxpbmUtaGVpZ2h0KHApO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDEuOGVtO1xyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBwYXRjaCBjb3JlIGNhcnQgc3VtbWFyeSBzdHlsZXNcclxuLy8gKiB0aGlzIHRlbXBvcmFyaWx5IGJyaW5ncyB0aGUgbGF0ZXN0IGNhcnQgc3VtbWFyeSBzdHlsZXMgaW4gdy9vdXQgaGF2aW5nIHRvIHVwZGF0ZSBjb3JlXHJcbi8vXHJcblxyXG4uY2FydC1zdW1tYXJ5IHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSk7XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh6ZXJvLCB0YWJsZXQpIHtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHotaW5kZXg6IHotaW5kZXgoY2FydC1zdW1tYXJ5KTtcclxuICAgIC5jaGFyZ2VzLFxyXG4gICAgLmNyZWRpdCxcclxuICAgIC5kaXNjb3VudCxcclxuICAgIC5wcm9kdWN0cy1lbXB0eS1jYXJ0LFxyXG4gICAgLnByb2R1Y3RzLXRhYmxlLFxyXG4gICAgLnByb21vLWRpc2NsYWltZXIge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gICAgJi5lbXB0eSxcclxuICAgICYub3BlbiB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgb3ZlcmZsb3cteTogYXV0bztcclxuICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lciB7XHJcbiAgICAgICAgZmxleC1ncm93OiAxO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLmVtcHR5IHtcclxuICAgICAgLmhlYWRlciB7XHJcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xyXG4gICAgICB9XHJcbiAgICAgIC5wcm9kdWN0cy1jb250YWluZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgfVxyXG4gICAgICAucHJvZHVjdHMtZW1wdHktY2FydCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYub3BlbiB7XHJcbiAgICAgIC5haGVtIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICB9XHJcbiAgICAgIC5jaGV2cm9uLXRpZ2h0IHtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICB9XHJcbiAgICAgIC5jaGFyZ2VzIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgfVxyXG4gICAgICAuY3JlZGl0IHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICB9XHJcbiAgICAgIC5kaXNjb3VudCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgfVxyXG4gICAgICAucHJvZHVjdHMtdGFibGUge1xyXG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gICAgICB9XHJcbiAgICAgIC5wcm9tby1kaXNjbGFpbWVyIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmNhcnQtc3VtbWFyeS5lbXB0eSB7XHJcbiAgJixcclxuICAmLm9wZW4ge1xyXG4gICAgLmNoYXJnZXMge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmNhcnQtc3VtbWFyeSAuYWhlbSB7XHJcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh6ZXJvLCB0YWJsZXQpIHtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBjb2xvcihncmF5LCB4eC1saWdodCk7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgcGFkZGluZzogMjBweDtcclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcclxuICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcclxuICB9XHJcbn1cclxuXHJcbi5jYXJ0LXN1bW1hcnkgLmNoYXJnZXMge1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoemVybywgdGFibGV0KSB7XHJcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgY29sb3IoZ3JheSwgeHgtbGlnaHQpO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICBsZWZ0OiA0cHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICByaWdodDogNHB4O1xyXG4gIH1cclxuICAmLnBlbmRpbmcge1xyXG4gICAgYW5pbWF0aW9uOiB1cGRhdGluZyAycyBlYXNlLW91dCBpbmZpbml0ZTtcclxuICB9XHJcbiAgJi5ncmFuZC10b3RhbC1vbmx5IHtcclxuICAgIC5ncmFuZC10b3RhbCB7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYudGF4LWlzLWluY2x1ZGVkIHtcclxuICAgIC5saW5lLWl0ZW0ge1xyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xyXG4gICAgICAgICY6bnRoLWNoaWxkKDEpIHtcclxuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAgMTYuNjYlO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOm50aC1jaGlsZCgyKSB7XHJcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE2LjY2JTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLmtleSB7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHplcm8sIHRhYmxldCkge1xyXG4gICAgICBjb2xvcjogY29sb3IoZ3JheSwgbGlnaHQpO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xyXG4gICAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwLXh4cyk7XHJcbiAgICAgIGNvbG9yOiBjb2xvcihncmF5KTtcclxuICAgICAgbGV0dGVyLXNwYWNpbmc6IC4wOGVtO1xyXG4gICAgICBtYXJnaW4tdG9wOiA2cHg7XHJcbiAgICAgIG9yZGVyOiAyO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgfVxyXG4gIH1cclxuICAuZ3JhbmQtdG90YWwsXHJcbiAgLmxpbmUtaXRlbSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh6ZXJvLCB0YWJsZXQpIHtcclxuICAgICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUocCk7XHJcbiAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgfVxyXG4gIH1cclxuICAuZ3JhbmQtdG90YWwge1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh6ZXJvLCB0YWJsZXQpIHtcclxuICAgICAgLmtleSxcclxuICAgICAgLnZhbHVlIHtcclxuICAgICAgICBjb2xvcjogY29sb3IoYmxhY2ssIG5lYXIpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XHJcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBjb2xvcihncmF5LCB4eC1saWdodCk7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICBwYWRkaW5nOiAxNXB4O1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAua2V5LFxyXG4gICAgICAudmFsdWUge1xyXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKHAteGwpO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcclxuICAgICAgICBtYXJnaW4tbGVmdDogLjFlbTtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IC4xZW07XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLmxpbmUtaXRlbSB7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xyXG4gICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIHdpZHRoOiAzMy4zMyU7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC52YWx1ZSB7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHplcm8sIHRhYmxldCkge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgZmxleDogMTtcclxuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xyXG4gICAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwKTtcclxuICAgICAgY29sb3I6IGNvbG9yKGJsYWNrLCBuZWFyKTtcclxuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgb3JkZXI6IDE7XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICB9XHJcbiAgICAuYmFkZ2Uge1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IGxpbmUtaGVpZ2h0KHAtdGlnaHQpIC8gNDtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMnB4LCAwKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5jYXJ0LXN1bW1hcnkgLmNoZXZyb24tdGlnaHQge1xyXG4gIGZpbGw6IGNvbG9yKGJsdWUpO1xyXG4gIGhlaWdodDogOHB4O1xyXG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMnMgZWFzZS1vdXQ7XHJcbiAgd2lkdGg6IDhweDtcclxufVxyXG5cclxuLmNhcnQtc3VtbWFyeSAuZGlzY291bnQge1xyXG4gIHBhZGRpbmc6IDIwcHggMjBweCAwO1xyXG4gIC5saW5lLWl0ZW0ge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoemVybywgdGFibGV0KSB7XHJcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgY29sb3IoZ3JheSwgeHgtbGlnaHQpO1xyXG4gICAgcGFkZGluZy10b3A6IDIwcHg7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgY29sb3IoZ3JheSwgeHgtbGlnaHQpO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xyXG4gIH1cclxuICBkbCB7XHJcbiAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIGF1dG87XHJcbiAgfVxyXG4gIGRkIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICB9XHJcbiAgLmtleSxcclxuICAudmFsdWUge1xyXG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUocCk7XHJcbiAgICBjb2xvcjogY29sb3IoZ3JheSwgYmFzZSk7XHJcbiAgfVxyXG4gIC50b3RhbCB7XHJcbiAgICBjb2xvcjogY29sb3IoYmxhY2ssIG5lYXIpO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuXHJcbiAgfVxyXG59XHJcblxyXG4uY2FydC1zdW1tYXJ5IC5oZWFkZXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHdoaXRlKTtcclxuICBib3JkZXI6IDRweCBzb2xpZCBjb2xvcihibHVlKTtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG4gIHBhZGRpbmctbGVmdDogMjBweDtcclxuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xyXG4gIHBhZGRpbmctdG9wOiAxMHB4O1xyXG4gICY6OmJlZm9yZSB7XHJcbiAgICBib3gtc2hhZG93OiAwIC0xMHB4IDE1cHggcmdiYSgwLCAwLCAwLCAuMzUpO1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGhlaWdodDogMjBweDtcclxuICAgIGxlZnQ6IDUlO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAxMnB4O1xyXG4gICAgd2lkdGg6IDkwJTtcclxuICAgIHotaW5kZXg6IC0xO1xyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbiAgLmxpbmUtMSB7XHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwKTtcclxuICAgIGNvbG9yOiBjb2xvcihibGFjayk7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IC4xZW07XHJcbiAgICBsaW5lLWhlaWdodDogbGluZS1oZWlnaHQocCk7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgJi5hbW91bnQge1xyXG4gICAgICBsZXR0ZXItc3BhY2luZzogMDtcclxuICAgIH1cclxuICB9XHJcbiAgLml0ZW1zIHtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlLWwsIHRhYmxldCkge1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuICAubGluZS0yIHtcclxuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKHAteHhzKTtcclxuICAgIGNvbG9yOiBjb2xvcihibGFjaywgbmVhcik7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogLjFlbTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgfVxyXG4gIC5ub3RlLXN5bWJvbCxcclxuICAudG90YWwtaXMtcGVuZGluZy1zeW1ib2wge1xyXG4gICAgbWFyZ2luLWxlZnQ6IC0uMzVlbTtcclxuICB9XHJcbiAgLnRvdGFsLWNvbnRhaW5lciB7XHJcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICB9XHJcbiAgLnlvdXItb3JkZXIge1xyXG4gICAgZmxleDogMTtcclxuICB9XHJcbn1cclxuXHJcbi5jYXJ0LXN1bW1hcnkgLnByZS1jYWxjdWxhdGUtaXMtcGVuZGluZyB7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSwgbmVhcik7XHJcbiAgYm9yZGVyLXJhZGl1czogYm9yZGVyLXJhZGl1cyhzKTtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgbGluZS1oZWlnaHQ6IGxpbmUtaGVpZ2h0KHAtdGlnaHQpO1xyXG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgbWFyZ2luLWxlZnQ6IDIwcHg7XHJcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xyXG4gIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgcGFkZGluZzogMjBweDtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgfVxyXG4gIC5ub3RlIHtcclxuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKHAteHMpO1xyXG4gICAgY29sb3I6IGNvbG9yKGdyYXkpO1xyXG4gICAgbWFyZ2luLXRvcDogbGluZS1oZWlnaHQocC10aWdodCk7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gIH1cclxufVxyXG5cclxuLmNhcnQtc3VtbWFyeSAucHJvZHVjdHMtY29udGFpbmVyIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgei1pbmRleDogMTtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgYm9yZGVyOiA0cHggc29saWQgY29sb3IoYmx1ZSk7XHJcbiAgICAgIGJvdHRvbTogMDtcclxuICAgICAgY29udGVudDogJyc7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIHotaW5kZXg6IDM7XHJcbiAgICB9XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBib3R0b206IDhweDtcclxuICAgICAgYm94LXNoYWRvdzogMCAxMHB4IDE1cHggcmdiYSgwLCAwLCAwLCAuMzUpO1xyXG4gICAgICBjb250ZW50OiAnJztcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgbGVmdDogNSU7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgd2lkdGg6IDkwJTtcclxuICAgICAgei1pbmRleDogMjtcclxuICAgIH1cclxuICAgIC5wcm9kdWN0cy1lbXB0eS1jYXJ0LFxyXG4gICAgLnByb2R1Y3RzLXRhYmxlIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB6LWluZGV4OiAzO1xyXG4gICAgICAmOm5vdCgucmVxdWlyZS1zc28pIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQsIGRlc2t0b3ApIHtcclxuICAgIC5wcm9kdWN0LWltYWdlLWNvbnRhaW5lciB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uY2FydC1zdW1tYXJ5IC5wcm9tby1kaXNjbGFpbWVyIHtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwLXhzKTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSwgbmVhcik7XHJcbiAgYm9yZGVyLXJhZGl1czogYm9yZGVyLXJhZGl1cyhzKTtcclxuICBsaW5lLWhlaWdodDogbGluZS1oZWlnaHQocC10aWdodCk7XHJcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICBtYXJnaW4tbGVmdDogMjBweDtcclxuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XHJcbiAgcGFkZGluZzogMjBweDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gIH1cclxufVxyXG5cclxuLmNhcnQtc3VtbWFyeSAuc3RpY2t5IHtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGNvbG9yKGdyYXksIHh4LWxpZ2h0KTtcclxuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xyXG4gICAgJi5zdHVjayB7XHJcbiAgICAgIGJvcmRlci13aWR0aDogMDtcclxuICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uY2FydC1zdW1tYXJ5IC5ub3RlLFxyXG4uY2FydC1zdW1tYXJ5IC50YXgtaXMtaW5jbHVkZWQtbm90ZSxcclxuLmNhcnQtc3VtbWFyeSAudG90YWwtaXMtcGVuZGluZy1ub3RlIHtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwLXMpO1xyXG4gIGNvbG9yOiBjb2xvcihncmF5LCBsaWdodCk7XHJcbiAgZmxleDogMSAwIGF1dG87XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh6ZXJvLCB0YWJsZXQpIHtcclxuICAgIGxpbmUtaGVpZ2h0OiBsaW5lLWhlaWdodChwKTtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcclxuICAgIGxpbmUtaGVpZ2h0OiBsaW5lLWhlaWdodChwLXRpZ2h0KTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjUlKTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxufVxyXG5cclxuLmNhcnQtc3VtbWFyeSAudG9nZ2xlIHtcclxuICBjb2xvcjogY29sb3IoYmx1ZSk7XHJcbn1cclxuXHJcbi5jYXJ0LXN1bW1hcnkgLnRvdGFsLWlzLXBlbmRpbmctc3ltYm9sIHtcclxuICBjb2xvcjogY29sb3IoZ3JheSwgbGlnaHQpO1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XHJcbiAgICBtYXJnaW4tbGVmdDogLS4xZW07XHJcbiAgfVxyXG59XHJcblxyXG4uY2FydC1zdW1tYXJ5LWNvbnRyb2xzLTEtY29sIHtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KHplcm8sIHRhYmxldCkge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuICAuYWhlbSB7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgY29sb3IoZ3JheSwgeHgtbGlnaHQpO1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGNvbG9yKGdyYXksIHh4LWxpZ2h0KTtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xyXG4gICAgcGFkZGluZy10b3A6IDIwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4uY2FydC1zdW1tYXJ5LWNvbnRyb2xzLTItY29sIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gY29yZSAob3B0aW9uYWwpIGNvbnRhY3QgbW9kYWxcclxuLy9cclxuXHJcbi5jb250YWN0LW1vZGFsIHtcclxuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXHJcbiAgYm90dG9tOiAwO1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICBsZWZ0OiAwO1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICByaWdodDogMDtcclxuICB0b3A6IDA7XHJcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gIHotaW5kZXg6IHotaW5kZXgobW9kYWwpO1xyXG4gICYuc2hvdyB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgdHJhbnNpdGlvbjogdmlzaWJpbGl0eSAwcywgb3BhY2l0eSAuMnMgZWFzZS1vdXQ7XHJcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgLmNvbnRhY3QtdGlsZS1saXN0IC5jb250YWN0LXRpbGUge1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uY29udGFjdC1tb2RhbCAuYmcge1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBsZWZ0OiAwO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5jb250YWN0LW1vZGFsIC5jbG9zZSB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIHRvcDogMDtcclxuICB6LWluZGV4OiAxO1xyXG59XHJcblxyXG4uY29udGFjdC1tb2RhbCAuY29udGVudCB7XHJcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xyXG4gIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4uY29udGFjdC1tb2RhbCAuY29udGFjdC10aWxlLWxpc3Qge1xyXG4gICRndXR0ZXItd2lkdGg6IDE2cHg7XHJcbiAgJHRpbGUtd2lkdGg6IDI4OHB4O1xyXG4gICRjb2wtMi1hdDogKCR0aWxlLXdpZHRoICogMikgKyAoJGd1dHRlci13aWR0aCAqIDIpO1xyXG4gICRjb2wtMy1hdDogKCR0aWxlLXdpZHRoICogMykgKyAoJGd1dHRlci13aWR0aCAqIDMpO1xyXG4gICRjb2wtNC1hdDogKCR0aWxlLXdpZHRoICogNCkgKyAoJGd1dHRlci13aWR0aCAqIDQpO1xyXG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgZmxleC13cmFwOiB3cmFwO1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIG1hcmdpbi1sZWZ0OiAkZ3V0dGVyLXdpZHRoICogLTE7XHJcbiAgbWFyZ2luLXJpZ2h0OiAkZ3V0dGVyLXdpZHRoICogLTE7XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkY29sLTItYXQsIG51bGwsIGZhbHNlKSB7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICBtYXgtd2lkdGg6ICRjb2wtMi1hdDtcclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkY29sLTMtYXQsIG51bGwsIGZhbHNlKSB7XHJcbiAgICBtYXgtd2lkdGg6ICRjb2wtMy1hdDtcclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkY29sLTQtYXQsIG51bGwsIGZhbHNlKSB7XHJcbiAgICBtYXgtd2lkdGg6ICRjb2wtNC1hdDtcclxuICB9XHJcbiAgLmNvbnRhY3QtdGlsZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSk7XHJcbiAgICBib3JkZXItcmFkaXVzOiBib3JkZXItcmFkaXVzKG0pO1xyXG4gICAgYm94LXNoYWRvdzogYm94LXNoYWRvdy1zaXplKHMpIGNvbG9yKHNoYWRvdywgZGFyayk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAkZ3V0dGVyLXdpZHRoO1xyXG4gICAgbWluLWhlaWdodDogJHRpbGUtd2lkdGg7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwJSk7XHJcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLW91dCwgdHJhbnNmb3JtIC4ycyBlYXNlLW91dDtcclxuICAgIHdpZHRoOiAkdGlsZS13aWR0aDtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGNvbC0yLWF0LCBudWxsLCBmYWxzZSkge1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6ICRndXR0ZXItd2lkdGg7XHJcbiAgICB9XHJcbiAgICAmOm50aC1jaGlsZCgyKSB7XHJcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IC4wNXM7XHJcbiAgICB9XHJcbiAgICAmOm50aC1jaGlsZCgzKSB7XHJcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IC4xcztcclxuICAgIH1cclxuICAgICY6bnRoLWNoaWxkKDQpIHtcclxuICAgICAgdHJhbnNpdGlvbi1kZWxheTogLjJzO1xyXG4gICAgfVxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIC5jb250YWN0LWljb24ge1xyXG4gICAgICAgIGZpbGw6IGNvbG9yKG1pbnR5KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmNvbnRhY3QtbW9kYWwgLmhlYWRpbmcsXHJcbi5jb250YWN0LW1vZGFsIC5zdWItaGVhZGluZyB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUocCk7XHJcbiAgbGluZS1oZWlnaHQ6IGxpbmUtaGVpZ2h0KHApO1xyXG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMnMgZWFzZS1vdXQ7XHJcbn1cclxuXHJcbi5jb250YWN0LW1vZGFsIC5oZWFkaW5nIHtcclxuICBjb2xvcjogY29sb3IoZ3JheSwgeC1kYXJrKTtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG59XHJcblxyXG4uY29udGFjdC1tb2RhbCAuaGVhZGluZy1wYWdlIHtcclxuICBtYXJnaW4tdG9wOiAyZW07XHJcbn1cclxuXHJcbi5jb250YWN0LW1vZGFsIC5pbWcge1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICBtYXJnaW4tbGVmdDogYXV0bztcclxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgcGFkZGluZy1ib3R0b206IDVweDtcclxuICB3aWR0aDogMTUwcHg7XHJcbiAgLmNvbnRhY3QtaWNvbiB7XHJcbiAgICBmaWxsOiBjb2xvcihtaWRuaWdodCk7XHJcbiAgICB0cmFuc2l0aW9uOiBmaWxsIC4ycyBlYXNlLW91dDtcclxuICB9XHJcbn1cclxuXHJcbi5jb250YWN0LW1vZGFsIC5pbmZvIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwYWRkaW5nLWJvdHRvbTogMzVweDtcclxuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgcGFkZGluZy1yaWdodDogMjBweDtcclxuICBwYWRkaW5nLXRvcDogNDBweDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIHotaW5kZXg6IDQ7XHJcbn1cclxuXHJcbi5jb250YWN0LW1vZGFsIC5zdWItaGVhZGluZyB7XHJcbiAgY29sb3I6IGNvbG9yKGdyYXksIGRhcmspO1xyXG59XHJcbiIsIi8vXHJcbi8vIGNvcmUgKG9wdGlvbmFsKSBlcnJvciBwYWdlXHJcbi8vICogbGV2ZXJhZ2VzIGJvZHkgYC5pb3NgIGFuZCBgLmFuZHJvaWRgIGNsYXNzZXMgYWRkZWQgYnkgYGNvcmUtYnJvd3Nlci5qc2BcclxuLy9cclxuXHJcbi5lcnJvci1wYWdlIHtcclxuICBib3R0b206IDA7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBsZWZ0OiAwO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICByaWdodDogMDtcclxuICB0b3A6IDA7XHJcbn1cclxuXHJcbi5lcnJvci1wYWdlIC5ib2R5IHtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwLXh4cyk7XHJcbiAgY29sb3I6IGNvbG9yKGdyYXksIGRhcmspO1xyXG4gIGxpbmUtaGVpZ2h0OiBsaW5lLWhlaWdodChwKTtcclxuICBtYXgtd2lkdGg6IDMyZW07XHJcbn1cclxuXHJcbi5lcnJvci1wYWdlIC5jb2x1bW4ge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAmLmNvcHktY29udGFpbmVyIHtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYuaW1nLWNvbnRhaW5lciB7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHplcm8sIHRhYmxldCkge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gICAgLmltZyB7XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgbWF4LXdpZHRoOiAzNTBweDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uZXJyb3ItcGFnZSAuZXJyb3ItZm9vdGVyIHtcclxuICBmb250LXNpemU6IDEycHg7XHJcbiAgcGFkZGluZy1ib3R0b206IDQwcHg7XHJcbiAgcGFkZGluZy10b3A6IDQwcHg7XHJcbn1cclxuXHJcbi5lcnJvci1wYWdlIC5oZWFkZXIge1xyXG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgbWFyZ2luLXRvcDogNDBweDtcclxufVxyXG5cclxuLmVycm9yLXBhZ2UgLmhlYWRpbmcge1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKGgpO1xyXG4gIGNvbG9yOiBjb2xvcihibHVlKTtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG4gIGxpbmUtaGVpZ2h0OiBsaW5lLWhlaWdodChoKTtcclxuICBtYXJnaW4tYm90dG9tOiAuNWVtO1xyXG4gIG1heC13aWR0aDogMTJlbTtcclxufVxyXG5cclxuLmVycm9yLXBhZ2UgLmxvZ28ge1xyXG4gIGhlaWdodDogMzNweDtcclxuICB3aWR0aDogMTc1cHg7XHJcbn1cclxuXHJcbi5lcnJvci1wYWdlIC5tYWluIHtcclxuICBmbGV4OiAxO1xyXG4gIC5jb250ZW50LXdyYXBwZXIge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG59XHJcblxyXG4uZXJyb3ItcGFnZSAucm93IHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSAyMDVweCk7XHJcbiAgLmFuZHJvaWQgJixcclxuICAuaW9zICYge1xyXG4gICAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDI3NXB4KTtcclxuICB9XHJcbn1cclxuXHJcbi5lcnJvci1wYWdlIC5zdWItaGVhZGluZyB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUoaC1zKTtcclxuICBsaW5lLWhlaWdodDogbGluZS1oZWlnaHQoaCk7XHJcbiAgbWFyZ2luLWJvdHRvbTogMS4yZW07XHJcbiAgbWF4LXdpZHRoOiAxOGVtO1xyXG59XHJcbiIsIi8vXHJcbi8vIGNvcmUgKG9wdGlvbmFsKSBmb290ZXJcclxuLy9cclxuXHJcbi5mb290ZXIge1xyXG4gIEBpbmNsdWRlIG1hdGNoLWd1dHRlci1zaXplKHBhZGRpbmctYm90dG9tLCAyKTtcclxuICBAaW5jbHVkZSBtYXRjaC1ndXR0ZXItc2l6ZShwYWRkaW5nLXRvcCk7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUocC14eHMpO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIGxpbmUtaGVpZ2h0OiBsaW5lLWhlaWdodChwKTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgJi5maXhlZCB7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcbn1cclxuXHJcbi5mb290ZXIgLmNvcHlyaWdodCB7XHJcbiAgQGluY2x1ZGUgbWF0Y2gtZ3V0dGVyLXNpemUocGFkZGluZy10b3AsIC41KTtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLmZvb3RlciAuZG5hLWNoYWluIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uZm9vdGVyIC5kbmEtY2hhaW4tbG9nby1tYXJrIHtcclxuICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWltYWdlLW1heWJlLXdlYnAoJy4uL2ltZy9jb3JlL2RuYS1jaGFpbi1sb2dvLW1hcmsucG5nJyk7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUpO1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gNjBweDtcclxuICBoZWlnaHQ6IDYwcHg7XHJcbiAgbWluLXdpZHRoOiAxMDB2dztcclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZS1zKSB7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gNjBweDtcclxuICAgIG1pbi13aWR0aDogMjg0cHg7XHJcbiAgfVxyXG59XHJcblxyXG4uZm9vdGVyIC5kbmEtY2hhaW4tbGVmdCxcclxuLmZvb3RlciAuZG5hLWNoYWluLXJpZ2h0IHtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XHJcbiAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDYwcHg7XHJcbiAgaGVpZ2h0OiA2MHB4O1xyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uZm9vdGVyIC5kbmEtY2hhaW4tbGVmdCB7XHJcbiAgQGluY2x1ZGUgYmFja2dyb3VuZC1pbWFnZS1tYXliZS13ZWJwKCcuLi9pbWcvY29yZS9kbmEtY2hhaW4tbGVmdC5wbmcnKTtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQ7XHJcbn1cclxuXHJcbi5mb290ZXIgLmRuYS1jaGFpbi1yaWdodCB7XHJcbiAgQGluY2x1ZGUgYmFja2dyb3VuZC1pbWFnZS1tYXliZS13ZWJwKCcuLi9pbWcvY29yZS9kbmEtY2hhaW4tcmlnaHQucG5nJyk7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGxlZnQ7XHJcbn1cclxuXHJcbi5mb290ZXIgLmxpbmstbGlzdCB7XHJcbiAgPiAubGluay1pdGVtIHtcclxuICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgIG1hcmdpbi1sZWZ0OiAuMjVlbTtcclxuICAgIG1hcmdpbi1yaWdodDogLjI1ZW07XHJcbiAgfVxyXG4gID4gLmxpbmstaXRlbSA+IGEge1xyXG4gICAgY29sb3I6IGNvbG9yKGdyYXkpO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgdHJhbnNpdGlvbjogY29sb3IgLjJzIGVhc2Utb3V0O1xyXG4gICAgJjphY3RpdmUsXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgY29sb3I6IGNvbG9yKGJsdWUsIGRhcmspO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBjb3JlIChvcHRpb25hbCkgZm9ybSBjaGVja2JveCBhbmQgcmFkaW9zXHJcbi8vXHJcblxyXG4uY2hlY2tib3gtYW5kLWxhYmVsLFxyXG4ucmFkaW8tYW5kLWxhYmVsIHtcclxuICAkc2l6ZTogMTY7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgLmJsb2NrLWxhYmVsICsgJixcclxuICAuY2hlY2tib3gtYW5kLWxhYmVsICsgJixcclxuICAuZm9ybS1yb3cgKyAmLFxyXG4gIC5yYWRpby1hbmQtbGFiZWwgKyAmIHtcclxuICAgIG1hcmdpbi10b3A6IDFlbTtcclxuICB9XHJcbiAgLmN1c3RvbS1jaGVja2JveCxcclxuICAuY3VzdG9tLXJhZGlvIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMXB4LCAwKTtcclxuICAgICYuaGFzLWVycm9yIHtcclxuICAgICAgLmRlY295IHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihlcnJvciwgbGlnaHQpO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogY29sb3IoZXJyb3IpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5kZWNveSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSwgbmVhcik7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCBjb2xvcihncmF5LCB4LWxpZ2h0KTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGhlaWdodDogJHNpemUgKyBweDtcclxuICAgIG1hcmdpbi1yaWdodDogMTVweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICB3aWR0aDogJHNpemUgKyBweDtcclxuICB9XHJcbiAgLmxhYmVsIHtcclxuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKHAtcyk7XHJcbiAgICBjb2xvcjogY29sb3IoZ3JheSk7XHJcbiAgICBsaW5lLWhlaWdodDogbGluZS1oZWlnaHQocCk7XHJcbiAgICAmLmxvYWRpbmcge1xyXG4gICAgICBhbmltYXRpb246IHVwZGF0aW5nIDJzIGVhc2Utb3V0IGluZmluaXRlO1xyXG4gICAgfVxyXG4gICAgLmxpbmUtMSxcclxuICAgIC5saW5lLTIge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuICAgIC5saW5lLTEge1xyXG4gICAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwKTtcclxuICAgICAgY29sb3I6IGNvbG9yKGJsYWNrLCBuZWFyKTtcclxuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgbGV0dGVyLXNwYWNpbmc6IC4wN2VtO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgfVxyXG4gICAgLmxpbmUtMSArIC5saW5lLTIge1xyXG4gICAgICBtYXJnaW4tdG9wOiAuMjVlbTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5pbnB1dC1jaGVja2JveCB7XHJcbiAgQGluY2x1ZGUgb2Zmc2NyZWVuO1xyXG4gICYgKyAuZGVjb3kge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgLmNoZWNrIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGZpbGw6IGNvbG9yKGJsdWUsIGRhcmspO1xyXG4gICAgICBoZWlnaHQ6IDEycHg7XHJcbiAgICAgIGxlZnQ6IDNweDtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMnMgZWFzaW5nKG91dC1iYWNrKTtcclxuICAgICAgd2lkdGg6IDE1cHg7XHJcbiAgICAgIHotaW5kZXg6IDI7XHJcbiAgICB9XHJcbiAgfVxyXG4gICY6Y2hlY2tlZCArIC5kZWNveSB7XHJcbiAgICAuY2hlY2sge1xyXG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgfVxyXG4gIH1cclxuICAmOmZvY3VzICsgLmRlY295IHtcclxuICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICBvdXRsaW5lOiAycHggc29saWQgY29sb3IoYmx1ZSk7XHJcbiAgfVxyXG59XHJcblxyXG4uaW5wdXQtcmFkaW8ge1xyXG4gIEBpbmNsdWRlIG9mZnNjcmVlbjtcclxuICAkc2l6ZTogMTY7XHJcbiAgJiArIC5kZWNveSB7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihibHVlLCBkYXJrKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICBjb250ZW50OiAnJztcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGhlaWdodDogKCRzaXplIC0gOCkgKyBweDtcclxuICAgICAgbGVmdDogM3B4O1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogM3B4O1xyXG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzIGVhc2luZyhvdXQtYmFjayk7XHJcbiAgICAgIHdpZHRoOiAoJHNpemUgLSA4KSArIHB4O1xyXG4gICAgICB6LWluZGV4OiAyO1xyXG4gICAgfVxyXG4gIH1cclxuICAmOmNoZWNrZWQgKyAuZGVjb3kge1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgIH1cclxuICB9XHJcbiAgJjpmb2N1cyArIC5kZWNveSB7XHJcbiAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgb3V0bGluZTogMnB4IHNvbGlkIGNvbG9yKGJsdWUpO1xyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBjb3JlIChvcHRpb25hbCkgZm9ybSBjcmVkaXQgY2FyZFxyXG4vL1xyXG5cclxuLmN2di1kZXNjcmlwdGlvbiB7XHJcbiAgJGVhc2luZzogZWFzaW5nKG91dC1leHBvKTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSk7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIGJhY2tncm91bmQtc2l6ZTogYXV0byA4NSU7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgY29sb3IoZ3JheSwgeC1saWdodCk7XHJcbiAgYm90dG9tOiAwO1xyXG4gIGhlaWdodDogMTI1cHg7XHJcbiAgb3BhY2l0eTogMDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDExMCUpO1xyXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICB3aWR0aDogY2FsYygxMDAlIC0gMnB4KTtcclxuICB6LWluZGV4OiAxO1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDg1JSBhdXRvO1xyXG4gICAgaGVpZ2h0OiAyMjVweDtcclxuICB9XHJcbiAgJjo6YWZ0ZXIge1xyXG4gICAgYmFja2dyb3VuZDogY29sb3Iod2hpdGUpO1xyXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBjb2xvcihncmF5LCB4LWxpZ2h0KTtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBjb2xvcihncmF5LCB4LWxpZ2h0KTtcclxuICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgbGVmdDogMTAlO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZVkoLTlweCk7XHJcbiAgICB3aWR0aDogMTBweDtcclxuICB9XHJcbiAgJi5zaG93IHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XHJcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC41cyAkZWFzaW5nLCB0cmFuc2Zvcm0gLjVzICRlYXNpbmc7XHJcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gIH1cclxuICAmLmFtZXgge1xyXG4gICAgJi5lbiB7XHJcbiAgICAgIEBpbmNsdWRlIGJhY2tncm91bmQtaW1hZ2UtbWF5YmUtd2VicCgnLi4vaW1nL2NvcmUvY3Z2LWRlc2NyaXB0aW9uLTQtZGlnaXQtZW4uanBnJyk7XHJcbiAgICB9XHJcbiAgICAmLmVzIHtcclxuICAgICAgQGluY2x1ZGUgYmFja2dyb3VuZC1pbWFnZS1tYXliZS13ZWJwKCcuLi9pbWcvY29yZS9jdnYtZGVzY3JpcHRpb24tNC1kaWdpdC1lcy5qcGcnKTtcclxuICAgIH1cclxuICAgICYuZnIge1xyXG4gICAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWltYWdlLW1heWJlLXdlYnAoJy4uL2ltZy9jb3JlL2N2di1kZXNjcmlwdGlvbi00LWRpZ2l0LWZyLmpwZycpO1xyXG4gICAgfVxyXG4gICAgJi5ubCB7XHJcbiAgICAgIEBpbmNsdWRlIGJhY2tncm91bmQtaW1hZ2UtbWF5YmUtd2VicCgnLi4vaW1nL2NvcmUvY3Z2LWRlc2NyaXB0aW9uLTQtZGlnaXQtbmwuanBnJyk7XHJcbiAgICB9XHJcbiAgICAmLnpoIHtcclxuICAgICAgQGluY2x1ZGUgYmFja2dyb3VuZC1pbWFnZS1tYXliZS13ZWJwKCcuLi9pbWcvY29yZS9jdnYtZGVzY3JpcHRpb24tNC1kaWdpdC16aC5qcGcnKTtcclxuICAgIH1cclxuICAgIC50ZXh0LTMtZGlnaXQge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gICAgLnRleHQtNC1kaWdpdCB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG4gIH1cclxuICAmLFxyXG4gICYuZGlzY292ZXIsXHJcbiAgJi5tYXN0ZXJjYXJkLFxyXG4gICYudmlzYSB7XHJcbiAgICAmLmVuIHtcclxuICAgICAgQGluY2x1ZGUgYmFja2dyb3VuZC1pbWFnZS1tYXliZS13ZWJwKCcuLi9pbWcvY29yZS9jdnYtZGVzY3JpcHRpb24tMy1kaWdpdC1lbi5qcGcnKTtcclxuICAgIH1cclxuICAgICYuZXMge1xyXG4gICAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWltYWdlLW1heWJlLXdlYnAoJy4uL2ltZy9jb3JlL2N2di1kZXNjcmlwdGlvbi0zLWRpZ2l0LWVzLmpwZycpO1xyXG4gICAgfVxyXG4gICAgJi5mciB7XHJcbiAgICAgIEBpbmNsdWRlIGJhY2tncm91bmQtaW1hZ2UtbWF5YmUtd2VicCgnLi4vaW1nL2NvcmUvY3Z2LWRlc2NyaXB0aW9uLTMtZGlnaXQtZnIuanBnJyk7XHJcbiAgICB9XHJcbiAgICAmLm5sIHtcclxuICAgICAgQGluY2x1ZGUgYmFja2dyb3VuZC1pbWFnZS1tYXliZS13ZWJwKCcuLi9pbWcvY29yZS9jdnYtZGVzY3JpcHRpb24tMy1kaWdpdC1ubC5qcGcnKTtcclxuICAgIH1cclxuICAgICYuemgge1xyXG4gICAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWltYWdlLW1heWJlLXdlYnAoJy4uL2ltZy9jb3JlL2N2di1kZXNjcmlwdGlvbi0zLWRpZ2l0LXpoLmpwZycpO1xyXG4gICAgfVxyXG4gIH1cclxuICAudGV4dC00LWRpZ2l0IHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4uY3Z2LWhpbnQge1xyXG4gIEBpbmNsdWRlIGJhY2tncm91bmQtaW1hZ2UtbWF5YmUtd2VicCgnLi4vaW1nL2NvcmUvY3Z2LWhpbnQtMy1kaWdpdC5wbmcnKTtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IDE2cHggY2VudGVyO1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgY29sb3I6IGNvbG9yKGJsdWUpO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZvbnQtc2l6ZTogMTBweDtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBsZWZ0OiAwO1xyXG4gIGxldHRlci1zcGFjaW5nOiAuMDc1ZW07XHJcbiAgcGFkZGluZy1sZWZ0OiA3MHB4O1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIHRvcDogMDtcclxuICB0cmFuc2l0aW9uOiBjb2xvciAuMnMgZWFzZS1vdXQ7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgJjpob3ZlcixcclxuICAmOmFjdGl2ZSB7XHJcbiAgICBjb2xvcjogY29sb3IoYmx1ZSwgZGFyayk7XHJcbiAgfVxyXG4gICYuYW1leCB7XHJcbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWltYWdlLW1heWJlLXdlYnAoJy4uL2ltZy9jb3JlL2N2di1oaW50LTQtZGlnaXQucG5nJyk7XHJcbiAgfVxyXG4gICYuZGlzY292ZXIsXHJcbiAgJi5tYXN0ZXJjYXJkLFxyXG4gICYudmlzYSB7XHJcbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWltYWdlLW1heWJlLXdlYnAoJy4uL2ltZy9jb3JlL2N2di1oaW50LTMtZGlnaXQucG5nJyk7XHJcbiAgfVxyXG4gIHNwYW4ge1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIH1cclxufVxyXG5cclxuLmNyZWRpdC1jYXJkLWljb24ge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgJjo6YWZ0ZXIge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICByaWdodDogMDtcclxuICAgIHRvcDogMDtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDEwMCUgKyAxMHB4KSk7XHJcbiAgICB3aWR0aDogMzBweDtcclxuICAgIC8vIHJlbW92ZSB3aGVuIGdyaWQgaXMgc3VwZXIgdGlnaHQgb24gdGFibGV0XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCwgdGFibGV0LWwpIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbiAgJi5hbWV4IHtcclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgQGluY2x1ZGUgYmFja2dyb3VuZC1pbWFnZS1tYXliZS13ZWJwKCcuLi9pbWcvY29yZS9jYy1hbWV4LnBuZycpO1xyXG4gICAgfVxyXG4gIH1cclxuICAmLmRpc2NvdmVyIHtcclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgQGluY2x1ZGUgYmFja2dyb3VuZC1pbWFnZS1tYXliZS13ZWJwKCcuLi9pbWcvY29yZS9jYy1kaXNjb3Zlci5wbmcnKTtcclxuICAgIH1cclxuICB9XHJcbiAgJi5tYXN0ZXJjYXJkIHtcclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgQGluY2x1ZGUgYmFja2dyb3VuZC1pbWFnZS1tYXliZS13ZWJwKCcuLi9pbWcvY29yZS9jYy1tYXN0ZXJjYXJkLnBuZycpO1xyXG4gICAgfVxyXG4gIH1cclxuICAmLnZpc2Ege1xyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWltYWdlLW1heWJlLXdlYnAoJy4uL2ltZy9jb3JlL2NjLXZpc2EucG5nJyk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uY3JlZGl0LWNhcmQtdGh1bWIge1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIGJhY2tncm91bmQtc2l6ZTogYXV0byAzMHB4O1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgcmlnaHQ6IDE2cHg7XHJcbiAgdG9wOiAwO1xyXG4gIHdpZHRoOiA1MHB4O1xyXG4gICYuYW1leCB7XHJcbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWltYWdlLW1heWJlLXdlYnAoJy4uL2ltZy9jb3JlL2NjLWFtZXgucG5nJyk7XHJcbiAgfVxyXG4gICYuZGlzY292ZXIge1xyXG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZC1pbWFnZS1tYXliZS13ZWJwKCcuLi9pbWcvY29yZS9jYy1kaXNjb3Zlci5wbmcnKTtcclxuICB9XHJcbiAgJi5tYXN0ZXJjYXJkIHtcclxuICAgIEBpbmNsdWRlIGJhY2tncm91bmQtaW1hZ2UtbWF5YmUtd2VicCgnLi4vaW1nL2NvcmUvY2MtbWFzdGVyY2FyZC5wbmcnKTtcclxuICB9XHJcbiAgJi52aXNhIHtcclxuICAgIEBpbmNsdWRlIGJhY2tncm91bmQtaW1hZ2UtbWF5YmUtd2VicCgnLi4vaW1nL2NvcmUvY2MtdmlzYS5wbmcnKTtcclxuICB9XHJcbiAgLmZvcm0tY29sdW1uIHtcclxuICAgICYuaGFzLWVycm9yICYge1xyXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBjb3JlIChvcHRpb25hbCkgZm9ybSBsYXlvdXRcclxuLy9cclxuXHJcbmlucHV0LFxyXG5zZWxlY3QsXHJcbnRleHRhcmVhIHtcclxuICAmW2RhdGEtYmVoYXZpb3J+PSdkaXNhYmxlLWZvY3VzJ10ge1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4uZXJyb3ItbGlzdCB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuICAmOm5vdCg6ZW1wdHkpOm5vdCguaGlkZSkgeyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIGZvcmNlLXBzZXVkby1uZXN0aW5nXHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihlcnJvcik7XHJcbiAgICBib3JkZXItcmFkaXVzOiBib3JkZXItcmFkaXVzKG0pO1xyXG4gICAgY29sb3I6IGNvbG9yKHdoaXRlKTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xyXG4gICAgcGFkZGluZzogMTZweDtcclxuICAgICYuc2hvdyB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG4gICAgYSB7XHJcbiAgICAgIGNvbG9yOiBjb2xvcih3aGl0ZSk7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgfVxyXG4gICAgLmVycm9yLWxpc3QtaXRlbSB7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBsaW5lLWhlaWdodChwLXRpZ2h0KTtcclxuICAgICAgcGFkZGluZy1ib3R0b206IC41ZW07XHJcbiAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5mb3JtLW1vZHVsZSAuc3VjY2Vzcy1saXN0IHtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gICY6bm90KDplbXB0eSk6bm90KC5oaWRlKSB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgZm9yY2UtcHNldWRvLW5lc3RpbmdcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGdyZWVuKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IGJvcmRlci1yYWRpdXMobSk7XHJcbiAgICBjb2xvcjogY29sb3Iod2hpdGUpO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XHJcbiAgICBwYWRkaW5nOiAxNnB4O1xyXG4gICAgJi5zaG93IHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbiAgICBhIHtcclxuICAgICAgY29sb3I6IGNvbG9yKHdoaXRlKTtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICB9XHJcbiAgICAuc3VjY2Vzc3MtbGlzdC1pdGVtIHtcclxuICAgICAgbGluZS1oZWlnaHQ6IGxpbmUtaGVpZ2h0KHAtdGlnaHQpO1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogLjVlbTtcclxuICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmZvcm0tbW9kdWxlIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgJjpsYXN0LWNoaWxkIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgfVxyXG4gICY6bm90KDplbXB0eSkge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XHJcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcclxuICB9XHJcbiAgJi5sb2FkaW5nIHtcclxuICAgICYgPiBbZGF0YS1iZWhhdmlvcj0nbG9hZGVyJ10ge1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgZWFzZS1vdXQsIHRyYW5zZm9ybSAuNHMgZWFzaW5nKG91dC1xdWFkKTtcclxuICAgICAgLnRleHQge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJiA+ICoge1xyXG4gICAgICAmOm5vdChbZGF0YS1iZWhhdmlvcj0nbG9hZGVyJ10pIHtcclxuICAgICAgICBvcGFjaXR5OiAuMzU7XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmID4gW2RhdGEtYmVoYXZpb3I9J2xvYWRlciddIHtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMjUwJSk7XHJcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLW91dCwgdHJhbnNmb3JtIC40cyBlYXNpbmcoaW4tcXVhZCk7XHJcbiAgICAudGV4dCB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYgPiAqIHtcclxuICAgICY6bm90KFtkYXRhLWJlaGF2aW9yPSdsb2FkZXInXSkge1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLW91dCAuNHM7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGRkIHtcclxuICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uZm9ybS1tb2R1bGUtLWNvbmRpdGlvbmFsIHtcclxuICBvcGFjaXR5OiAuNTtcclxuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLW91dDtcclxuICAuZXJyb3ItbGlzdCB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuICAmLmNoZWNrZWQge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC5lcnJvci1saXN0IHtcclxuICAgICAgJjpub3QoOmVtcHR5KSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5mb3JtLXNlY3Rpb24ge1xyXG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgJjpsYXN0LWNoaWxkIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgfVxyXG59XHJcblxyXG4uZm9ybS1jb250YWluZXIge1xyXG4gIEBpbmNsdWRlIG1hdGNoLWd1dHRlci1zaXplKG1hcmdpbi1ib3R0b20sIDIpO1xyXG4gICRpbnB1dC1wYWQ6IDE2cHg7IC8vIERlZmF1bHQgcGFkZGluZyBmb3IgaW5wdXRzXHJcbiAgLmJvcmRlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSk7XHJcbiAgICBib3JkZXI6IDAgc29saWQgY29sb3IoZ3JheSwgeC1saWdodCk7XHJcbiAgICAvLyB0aGlzIG5lZWRzIHRvIGJlIGF0IGxlYXN0IHotaW5kZXg6IDI7IHRvIGtlZXAgdGhlIGZvcm0gaW5wdXQgaGludHMgYWJvdmUgdGhlIGJ1dHRvbnNcclxuICAgIHotaW5kZXg6IDI7XHJcbiAgICAvLyB0aGlzIGlzIG5lZWRlZCBmb3IgcHJvcGVyIHNwYWNpbmcgd2hlbiBhIGNvbHVtbiBkb2Vzbid0IGhhdmUgYSBib3JkZXJcclxuICAgICYtLXRyYW5zcGFyZW50IHtcclxuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIH1cclxuICAgICYudG9wIHtcclxuICAgICAgYm9yZGVyLXRvcC13aWR0aDogMXB4O1xyXG4gICAgfVxyXG4gICAgJi5yaWdodCB7XHJcbiAgICAgIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xyXG4gICAgfVxyXG4gICAgJi5ib3R0b20ge1xyXG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7XHJcbiAgICB9XHJcbiAgICAmLmxlZnQge1xyXG4gICAgICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xyXG4gICAgfVxyXG4gIH1cclxuICAuY29weSB7XHJcbiAgICBjb2xvcjogY29sb3IoZ3JheSk7XHJcbiAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICBsaW5lLWhlaWdodDogbGluZS1oZWlnaHQocCk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgbWFyZ2luLXRvcDogMTBweDtcclxuICB9XHJcbiAgLmRpc2NyZXRpb25hcnkge1xyXG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUocC14eHMpO1xyXG4gICAgY29sb3I6IGNvbG9yKGdyYXkpO1xyXG4gICAgbGluZS1oZWlnaHQ6IGxpbmUtaGVpZ2h0KHApO1xyXG4gICAgbWFyZ2luLXRvcDogMS45ZW07XHJcbiAgfVxyXG4gIC5oZWxwLWJsb2NrIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG4gIC5pbnRyby1wYXJhZ3JhcGgge1xyXG4gICAgY29sb3I6IGNvbG9yKGdyYXksIGRhcmspO1xyXG4gICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICAgbGluZS1oZWlnaHQ6IGxpbmUtaGVpZ2h0KHApO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICB9XHJcbiAgLmNvbmRpdGlvbmFsIHtcclxuICAgICYuaGlkZSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uZm9ybS1yb3cge1xyXG4gIGRpc3BsYXk6IGdyaWQ7XHJcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgwLCAxZnIpKTtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgJi5mb2N1cyB7XHJcbiAgICB6LWluZGV4OiAyO1xyXG4gIH1cclxuICAmLm1hcmdpbi10b3Age1xyXG4gICAgbWFyZ2luLXRvcDogMjBweDtcclxuICB9XHJcbiAgJi5yZWFkLW9ubHksXHJcbiAgJi5yZWFkLW9ubHkgLmJvcmRlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSwgbmVhcik7XHJcbiAgICBib3JkZXItY29sb3I6IGNvbG9yKHdoaXRlLCBvZmYpO1xyXG4gIH1cclxuICAuZm9ybS1jb2x1bW4ge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICAmLS1mbGV4IHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgKiB7XHJcbiAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgIH1cclxuICAgICAgLmZsZXhpYmxlIHtcclxuICAgICAgICBmbGV4OiAxIDEgYXV0bztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi0tb3ZlcmZsb3cge1xyXG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcclxuICAgIH1cclxuICAgICYuZm9jdXMge1xyXG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggY29sb3IoYmx1ZSwgZGFyayk7XHJcbiAgICAgIHotaW5kZXg6IDM7XHJcbiAgICB9XHJcbiAgICAmLmhhcy1lcnJvciB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGVycm9yLCBsaWdodCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ubGFiZWwtZmxvYXQge1xyXG4gICRpbnB1dC1wYWQ6IDE2cHg7IC8vIGRlZmF1bHQgcGFkZGluZyBmb3IgaW5wdXRzXHJcbiAgY29sb3I6IGNvbG9yKGJsdWUsIGRhcmspO1xyXG4gIGZvbnQtc2l6ZTogMTFweDtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG4gIGxlZnQ6ICRpbnB1dC1wYWQ7XHJcbiAgbGV0dGVyLXNwYWNpbmc6IC4wNWVtO1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgdG9wOiAwO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxOHB4KTtcclxuICB6LWluZGV4OiAxO1xyXG4gICYuaXMtcmVxdWlyZWQge1xyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiAnIConO1xyXG4gICAgfVxyXG4gIH1cclxuICAmLmlzLXJlcXVpcmVkIH4gaW5wdXQge1xyXG4gICAgJjo6cGxhY2Vob2xkZXIge1xyXG4gICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogJyAqJztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAuZm9ybS1jb2x1bW4uaGFzLXZhbHVlICYge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxM3B4KTtcclxuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gLjJzIGVhc2Utb3V0O1xyXG4gIH1cclxufVxyXG5cclxuLmJsb2NrLWxhYmVsIHtcclxuICBib3JkZXI6IDFweCBzb2xpZCBjb2xvcihncmF5LCB4LWxpZ2h0KTtcclxuICBsaW5lLWhlaWdodDogbGluZS1oZWlnaHQocCk7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxuICBwYWRkaW5nLWJvdHRvbTogMTZweDtcclxuICBwYWRkaW5nLWxlZnQ6IDE2cHg7XHJcbiAgcGFkZGluZy1yaWdodDogMTZweDtcclxuICBwYWRkaW5nLXRvcDogMTZweDtcclxuICAucmFkaW8tYW5kLWxhYmVsICsgJiB7XHJcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gIH1cclxuICAubGFiZWwge1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG4gIC5jdXN0b20tY2hlY2tib3gge1xyXG4gICAgbWFyZ2luLXRvcDogMjBweDtcclxuICB9XHJcbn1cclxuXHJcbi5zaGlwcGluZy1jb3N0IHtcclxuICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgZmxvYXQ6IHJpZ2h0O1xyXG4gIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgLmZyZWUtc2hpcHBpbmcge1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gY29yZSAob3B0aW9uYWwpIGZvcm0gc2VsZWN0XHJcbi8vXHJcblxyXG4uY3VzdG9tLXNlbGVjdCB7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGhlaWdodDogNThweDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgJi0tZmlsbGVkIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIGNvbG9yKHdoaXRlKSwgY29sb3Iod2hpdGUsIG5lYXIpKTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIGNvbG9yKGdyYXksIHgtbGlnaHQpO1xyXG4gIH1cclxuICAmOmhvdmVyIHtcclxuICAgIC5zZWxlY3QtY2hldnJvbiB7XHJcbiAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5jb2x1bW4gPiAmIHtcclxuICAgIGhlaWdodDogNjBweDtcclxuICB9XHJcbiAgJi5oYXMtZXJyb3Ige1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoZXJyb3IsIGxpZ2h0KTtcclxuICB9XHJcbiAgc2VsZWN0IHtcclxuICAgIC8vIGRpc2FibGUgYWxsIHZlbmRvciBwcmVmaXggZXJyb3JzLCB3ZSBrbm93IHdoYXQncyB1cFxyXG4gICAgLy8gc2Fzcy1saW50OmRpc2FibGUtYmxvY2sgbm8tdmVuZG9yLXByZWZpeGVzXHJcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG1lbnVsaXN0LWJ1dHRvbjtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHotaW5kZXg6IDI7XHJcbiAgICAuaW9zICYge1xyXG4gICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5kZWNveSB7XHJcbiAgICBjb2xvcjogY29sb3IoZ3JheSwgbGlnaHQpO1xyXG4gICAgaGVpZ2h0OiA1OHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDU4cHg7XHJcbiAgICBwYWRkaW5nOiAwIDQwcHggMCAxNnB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgLmZvcm0tY29sdW1uLmhhcy12YWx1ZSAmIHtcclxuICAgICAgLnRleHQge1xyXG4gICAgICAgIGNvbG9yOiBjb2xvcihibGFjaywgbmVhcik7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnRleHQge1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycyBlYXNlLW91dDtcclxuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIH1cclxuICB9XHJcbiAgLnNlbGVjdC1jaGV2cm9uIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgaGVpZ2h0OiA3cHg7XHJcbiAgICBtYXJnaW4tdG9wOiAtMy41cHg7XHJcbiAgICBvcGFjaXR5OiAuNTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAxZW07XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2luZyhpbi1vdXQtcXVhZCk7XHJcbiAgICB3aWR0aDogMTFweDtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgfVxyXG59XHJcblxyXG4uY3VzdG9tLXNlbGVjdC0tdGlnaHQge1xyXG4gIGhlaWdodDogNDBweDtcclxuICAuZGVjb3kge1xyXG4gICAgbGluZS1oZWlnaHQ6IDQwcHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gIH1cclxufVxyXG5cclxuLnNlbGVjdCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzc3NztcclxuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNiM2IzYjM7XHJcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzc3NztcclxuICBib3JkZXItdG9wOiAxcHggc29saWQgI2NjYztcclxuICBjb2xvcjogY29sb3IoZ3JheSwgbGlnaHQpO1xyXG4gIGZvbnQtZmFtaWx5OiBmb250LWZhbWlseShzYW5zKTtcclxuICBmb250LXNpemU6IDFyZW07XHJcbiAgcGFkZGluZzogMXB4IDNweDtcclxufVxyXG4iLCIvL1xyXG4vLyBjb3JlIChvcHRpb25hbCkgZm9ybSBzcGlubmVyXHJcbi8vXHJcblxyXG4uc3Bpbm5lciB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBoZWlnaHQ6IDQ0cHg7XHJcbiAgd2lkdGg6IDgwcHg7XHJcbiAgaW5wdXQsXHJcbiAgLm1pbnVzLFxyXG4gIC5wbHVzIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHdoaXRlLCBuZWFyKTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIGNvbG9yKGdyYXksIHh4LWxpZ2h0KTtcclxuICAgIGhlaWdodDogNDRweDtcclxuICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIH1cclxuICBpbnB1dCB7XHJcbiAgICBmbGV4OiAxO1xyXG4gICAgZm9udC1mYW1pbHk6IGZvbnQtZmFtaWx5KHNhbnMpO1xyXG4gICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICBtaW4td2lkdGg6IDMwcHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1vdXQ7XHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgJixcclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUpO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogY29sb3IoYmx1ZSk7XHJcbiAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHdoaXRlLCBuZWFyKTtcclxuICAgIH1cclxuICAgIC8vIHNhc3MtbGludDpkaXNhYmxlLWFsbFxyXG4gICAgJlt0eXBlPSdudW1iZXInXSB7XHJcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICAgICAgLy8gbW96LWFwcGVhcmFuY2UgaGFzIHRvIGNvbWUgYWZ0ZXIgd2Via2l0LWFwcGVhcmFuY2UgaW4gb3JkZXIgdG8gdGFrZSBwcmlvcml0eSBpbiBGaXJlZm94XHJcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAmOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxyXG4gICAgICAmOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcclxuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAvLyBzYXNzLWxpbnQ6ZW5hYmxlLWFsbFxyXG4gIH1cclxuICAubWludXMsXHJcbiAgLnBsdXMge1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgZmxleC1iYXNpczogMjJweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgJjo6YWZ0ZXIsXHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihncmF5KTtcclxuICAgICAgYm90dG9tOiAwO1xyXG4gICAgICBjb250ZW50OiAnJztcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIG1hcmdpbjogYXV0bztcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICByaWdodDogMDtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgfVxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGdyYXksIHgtbGlnaHQpO1xyXG4gICAgfVxyXG4gICAgJi5kaXNhYmxlZCB7XHJcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcbiAgICAgIG9wYWNpdHk6IC41O1xyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSwgbmVhcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLm1pbnVzIHtcclxuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgIHdpZHRoOiA1cHg7XHJcbiAgICB9XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuICAucGx1cyB7XHJcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgIHdpZHRoOiA3cHg7XHJcbiAgICB9XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBoZWlnaHQ6IDdweDtcclxuICAgICAgd2lkdGg6IDFweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5zcGlubmVyLS1icmlnaHQge1xyXG4gIGlucHV0LFxyXG4gIC5taW51cyxcclxuICAucGx1cyB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSk7XHJcbiAgfVxyXG59XHJcblxyXG4uc3Bpbm5lci0tbCB7XHJcbiAgaGVpZ2h0OiA1MHB4O1xyXG4gIG1pbi13aWR0aDogMTBweDtcclxuICB3aWR0aDogMTAwcHg7XHJcbiAgaW5wdXQsXHJcbiAgLm1pbnVzLFxyXG4gIC5wbHVzIHtcclxuICAgIGNvbG9yOiBjb2xvcihncmF5LCB4LWRhcmspO1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgaGVpZ2h0OiA1MHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDUwcHg7XHJcbiAgfVxyXG4gIGlucHV0IHtcclxuICAgIG1pbi13aWR0aDogNDBweDtcclxuICB9XHJcbiAgLm1pbnVzLFxyXG4gIC5wbHVzIHtcclxuICAgICY6aG92ZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSwgbmVhcik7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uc3Bpbm5lci0tcyB7XHJcbiAgaGVpZ2h0OiAzMHB4O1xyXG4gIG1pbi13aWR0aDogMTBweDtcclxuICB3aWR0aDogNC41ZW07XHJcbiAgaW5wdXQsXHJcbiAgLm1pbnVzLFxyXG4gIC5wbHVzIHtcclxuICAgIGhlaWdodDogMzBweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xyXG4gIH1cclxuICBpbnB1dCB7XHJcbiAgICBtaW4td2lkdGg6IDI1cHg7XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIGNvcmUgKG9wdGlvbmFsKSBmb3JtIHRleHRcclxuLy9cclxuLy8gZGlzYWJsZSBhbGwgdmVuZG9yIHByZWZpeCBlcnJvcnMsIHdlIGtub3cgd2hhdCdzIHVwXHJcbi8vIHNhc3MtbGludDpkaXNhYmxlIG5vLXZlbmRvci1wcmVmaXhlc1xyXG5cclxuLmhpZGUtd2Via2l0LWJ1dHRvbnMge1xyXG4gICY6Oi13ZWJraXQtYXV0by1maWxsLWJ1dHRvbixcclxuICAmOjotd2Via2l0LWNvbnRhY3RzLWF1dG8tZmlsbC1idXR0b24ge1xyXG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLWltcG9ydGFudFxyXG4gIH1cclxufVxyXG5cclxuLmlucHV0LXRleHQge1xyXG4gICRpbnB1dC1wYWQ6IDE2cHg7IC8vIERlZmF1bHQgcGFkZGluZyBmb3IgaW5wdXRzXHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgYm94LXNoYWRvdzogbm9uZTtcclxuICBjb2xvcjogY29sb3IoZ3JheSwgeC1kYXJrKTtcclxuICBmb250LWZhbWlseTogZm9udC1mYW1pbHkoc2Fucyk7XHJcbiAgZm9udC1zaXplOiAxNnB4O1xyXG4gIGhlaWdodDogMjhweDtcclxuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgcGFkZGluZzogMCAkaW5wdXQtcGFkO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycyBlYXNlLW91dDtcclxuICB3aWR0aDogMTAwJTtcclxuICAvLyByZW1vdmVzIHllbGxvdyBiYWNrZ3JvdW5kIG9uIGF1dG9maWxsXHJcbiAgJjotd2Via2l0LWF1dG9maWxsIHtcclxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDAgMTAwMHB4IGNvbG9yKHdoaXRlKSBpbnNldDtcclxuICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8taW1wb3J0YW50XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDUwMDBzIGVhc2UtaW4tb3V0IDBzO1xyXG4gIH1cclxuICAuZm9ybS1jb2x1bW4uaGFzLXZhbHVlICYge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcclxuICAgICY6Oi13ZWJraXQtY29udGFjdHMtYXV0by1maWxsLWJ1dHRvbiB7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xyXG4gICAgfVxyXG4gICAgJjo6LXdlYmtpdC1hdXRvLWZpbGwtYnV0dG9uLFxyXG4gICAgJjo6LXdlYmtpdC1jcmVkZW50aWFscy1hdXRvLWZpbGwtYnV0dG9uIHtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gICY6Zm9jdXMge1xyXG4gICAgY29sb3I6IGNvbG9yKGJsYWNrLCBuZWFyKTtcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgfVxyXG4gICY6OnBsYWNlaG9sZGVyIHtcclxuICAgIGNvbG9yOiBjb2xvcihncmF5LCBsaWdodCk7XHJcbiAgfVxyXG4gICY6Oi1tb3otcGxhY2Vob2xkZXIge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcbiAgJjo6LXdlYmtpdC1hdXRvZmlsbCB7XHJcbiAgICAvLyBoaWRlIGF1dG9maWxsIGJnIGNvbG9yXHJcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAwIDMwcHggd2hpdGUgaW5zZXQ7XHJcbiAgICAvLyBhbmQgcmVwb3NpdGlvbiBzbyBpdCBkb2Vzbid0IGZsb2F0IG91dCBvZiB0aGUgYm94XHJcbiAgICAvLyAobm9ybWFsIHN0eWxlIGhhcyBhIHRyYW5zcGFyZW50IEJHIHNvIHdlIGRvbnQgbmVlZCB0byB3b3JyeSBhYm91dCBpdClcclxuICAgIC8vIChjYW4ndCBqdXN0IHVzZSBvdmVyZmxvdyBvbiBjb250YWluZXIgb3IgdG9vbHRpcHMgd29uJ3Qgc2hvdylcclxuICAgIGhlaWdodDogMzlweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRvcDogOXB4O1xyXG4gIH1cclxuICAvLyB0aGlzIHJlbW92ZXMgdGhlIGNsZWFyICd4JyBmcm9tIElFIHRleHQgaW5wdXRzXHJcbiAgJjo6LW1zLWNsZWFyIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG4gICYtLXRpZ2h0IHtcclxuICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgfVxyXG4gICYtLXRpZ2h0LWxlZnQge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gIH1cclxuICAmLS10aWdodC1yaWdodCB7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gIH1cclxuICAmLmhpZGUge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi5pbnB1dC10ZXh0LXN0YXRpYyB7XHJcbiAgY29sb3I6IGNvbG9yKGdyYXksIGxpZ2h0KTtcclxuICBmb250LXNpemU6IDE2cHg7XHJcbiAgaGVpZ2h0OiAzOHB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAzOHB4O1xyXG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgbWFyZ2luLXRvcDogMTBweDtcclxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gIC5mb3JtLWNvbHVtbi5oYXMtdmFsdWUgJiB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApO1xyXG4gIH1cclxuICAuZWRnZSBbZGF0YS1iZWhhdmlvcn49J2F1dG8tc2l6ZSddICsgJixcclxuICAuaW9zIFtkYXRhLWJlaGF2aW9yfj0nYXV0by1zaXplJ10gKyAmIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTJweCwgMCwgMCk7XHJcbiAgfVxyXG4gIC5lZGdlIC5mb3JtLWNvbHVtbi5oYXMtdmFsdWUgW2RhdGEtYmVoYXZpb3J+PSdhdXRvLXNpemUnXSArICYsXHJcbiAgLmlvcyAuZm9ybS1jb2x1bW4uaGFzLXZhbHVlIFtkYXRhLWJlaGF2aW9yfj0nYXV0by1zaXplJ10gKyAmIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTJweCwgMTBweCwgMCk7XHJcbiAgfVxyXG4gICYuaGFzLXZhbHVlIHtcclxuICAgIGNvbG9yOiBjb2xvcihncmF5LCB4LWRhcmspO1xyXG4gIH1cclxufVxyXG5cclxuLmlucHV0LXRleHQtLXRleHRhcmVhIHtcclxuICBoZWlnaHQ6IDExNnB4O1xyXG4gIGxpbmUtaGVpZ2h0OiBsaW5lLWhlaWdodChwKTtcclxuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcclxuICBwYWRkaW5nLWxlZnQ6IDE2cHg7XHJcbiAgcGFkZGluZy1yaWdodDogMTZweDtcclxuICBwYWRkaW5nLXRvcDogMjBweDtcclxuICByZXNpemU6IG5vbmU7XHJcbn1cclxuXHJcbi5wYXNzd29yZC10b2dnbGUge1xyXG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcclxuICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gIGJvcmRlcjogMDtcclxuICBjb2xvcjogY29sb3IoYmx1ZSwgZGFyayk7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGxpbmUtaGVpZ2h0OiAzMnB4O1xyXG4gIG1hcmdpbi1yaWdodDogMTZweDtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAmOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIH1cclxuICAmOmFjdGl2ZSB7XHJcbiAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIGNvcmUgKG9wdGlvbmFsKSBoZWFkZXIgYmFyXHJcbi8vXHJcblxyXG4uaGVhZGVyLWJhciB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoYmxhY2ssIG5lYXIpO1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgaGVpZ2h0OiA0MHB4O1xyXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICBsZXR0ZXItc3BhY2luZzogbGV0dGVyLXNwYWNpbmcoZXhwYW5kZWQpO1xyXG4gIG1heC1oZWlnaHQ6IDQwcHg7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgLmhlYWRlci1jb3B5IHtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBjb2xvcjogY29sb3Iod2hpdGUpO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgfVxyXG59XHJcblxyXG4uaGVhZGVyLWJhciAuYXZhdGFyIHtcclxuICBoZWlnaHQ6IDQwcHg7XHJcbiAgd2lkdGg6IDQwcHg7XHJcbn1cclxuXHJcbi5oZWFkZXItY29sdW1uIHtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwLXh4cyk7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgei1pbmRleDogMTtcclxuICAmW2RhdGEtYmVoYXZpb3JdLFxyXG4gICZbaHJlZl0ge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1vdXQ7XHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjphY3RpdmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihtaW50eSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYuaGVhZGVyLW1haW4ge1xyXG4gICAgZmxleDogMTtcclxuICB9XHJcbn1cclxuXHJcbi5oZWFkZXItY29sdW1uIC5jb3B5IHtcclxuICBjb2xvcjogY29sb3Iod2hpdGUpO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi5oZWFkZXItY29sdW1uLmJvcmRlci1sZWZ0IHtcclxuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIGNvbG9yKGdyYXksIGRhcmspO1xyXG59XHJcblxyXG4uaGVhZGVyLWNvbHVtbi5ib3JkZXItcmlnaHQge1xyXG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIGNvbG9yKGdyYXksIGRhcmspO1xyXG59XHJcblxyXG4uaGVhZGVyLWNvbHVtbi5jYXJ0IHtcclxuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIGNvbG9yKGdyYXksIGRhcmspO1xyXG4gIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgcGFkZGluZy1yaWdodDogMWVtO1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVlbTtcclxuICB9XHJcbiAgJjpob3ZlciB7XHJcbiAgICAudG90YWwge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSk7XHJcbiAgICAgIGNvbG9yOiBjb2xvcihibHVlKTtcclxuICAgIH1cclxuICB9XHJcbiAgLmNvcHkge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAxLjVlbTtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoemVybywgdGFibGV0KSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC50b3RhbCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihibHVlKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IGJvcmRlci1yYWRpdXMobSk7XHJcbiAgICBjb2xvcjogY29sb3Iod2hpdGUpO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgICBwYWRkaW5nOiAuNGVtIC43ZW07XHJcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLW91dCwgY29sb3IgLjJzIGVhc2Utb3V0O1xyXG4gIH1cclxuICAmLS1lcnJvciB7XHJcbiAgICAudG90YWwge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihlcnJvcik7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uaGVhZGVyLWNvbHVtbi5hY2NvdW50IHtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xyXG4gICAgcGFkZGluZy1yaWdodDogNXB4O1xyXG4gIH1cclxuICAuY29weSB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDEuMmVtO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh6ZXJvLCB0YWJsZXQpIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5oZWFkZXItY29sdW1uIC5mbGFnIHtcclxuICBtYXJnaW46IDAgMTVweDtcclxuICB3aWR0aDogMTZweDtcclxufVxyXG5cclxuLmhlYWRlci1jb2x1bW4uc3BvbnNvciB7XHJcbiAgLmNvcHkge1xyXG4gICAgcGFkZGluZzogMCAuOTJlbTtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoemVybywgdGFibGV0KSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIGNvcmUgcmVxdWlyZWQgbGF5b3V0XHJcbi8vXHJcblxyXG4vL1xyXG4vLyBieSB0YWcsIGFscGhhYmV0aWNhbFxyXG4vL1xyXG5cclxuKiB7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxufVxyXG5cclxuaHRtbCB7XHJcbiAgJi5uby1zY3JvbGwge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGJvZHkge1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxubGFiZWwge1xyXG4gICZbZm9yXSB7XHJcbiAgICAmOm5vdChbZm9yPScnXSkge1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vL1xyXG4vLyBieSBjbGFzcywgYWxwaGFiZXRpY2FsXHJcbi8vXHJcblxyXG4uYXBwLWRvd25sb2FkLWxpbmstbGlzdCB7XHJcbiAgLmFwcC1kb3dubG9hZC1saW5rIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIG1hcmdpbjogMCA1cHg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgd2lkdGg6IDE3NXB4O1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh6ZXJvLCBtb2JpbGUteGwpIHtcclxuICAgICAgJjpudGgtY2hpbGQoMm4rMSkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5pbWcge1xyXG4gICAgICBoZWlnaHQ6IDU0cHg7XHJcbiAgICAgIHdpZHRoOiAxNzVweDtcclxuICAgIH1cclxuICAgIC5saW5rIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmF2YXRhciB7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSwgbmVhcik7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBoZWlnaHQ6IDUwcHg7XHJcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgd2lkdGg6IDUwcHg7XHJcbiAgJjpub3QoLmF2YXRhci0tZnVsbCkge1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gIH1cclxufVxyXG5cclxuLmF2YXRhciAuaW1hZ2Uge1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICBib3R0b206IDA7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIGxlZnQ6IDA7XHJcbiAgbWFyZ2luOiBhdXRvO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICByaWdodDogMDtcclxuICB0b3A6IDA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgei1pbmRleDogMjtcclxufVxyXG5cclxuLmF2YXRhciAuaW5pdGlhbHMge1xyXG4gIGZvbnQtc2l6ZTogMTNweDtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG4gIGxldHRlci1zcGFjaW5nOiAuMDVlbTtcclxuICBtYXJnaW4tcmlnaHQ6IC0uMDI1ZW07XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICB6LWluZGV4OiAxO1xyXG4gICYsXHJcbiAgYSAmIHtcclxuICAgIGNvbG9yOiBjb2xvcihncmF5KTtcclxuICB9XHJcbn1cclxuXHJcbi5jb250ZW50LXdyYXBwZXIge1xyXG4gIEBpbmNsdWRlIG1hdGNoLWd1dHRlci1zaXplKHBhZGRpbmctbGVmdCBwYWRkaW5nLXJpZ2h0KTtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW4tbGVmdDogYXV0bztcclxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgbWF4LXdpZHRoOiB3aWR0aChtYXgtd2lkdGgpO1xyXG59XHJcblxyXG4uY29udGVudC13cmFwcGVyLS1mbHVpZCB7XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtYXgtd2lkdGgtZmx1aWQpIHtcclxuICAgIC8vIGZsdWlkIGdyaWRzIGhhdmUgNHggdGhlIG91dHNpZGUgZ3V0dGVycyBvbiB0aGUgbGVmdCBhbmQgcmlnaHRcclxuICAgIG1heC13aWR0aDogY2FsYygxMDB2dyAtICgje3dpZHRoKGd1dHRlci1mbHVpZC1sKX0gKiA0ICogMikpO1xyXG4gIH1cclxufVxyXG5cclxuLmNvbnRlbnQtd3JhcHBlci0tZnVsbC1ibGVlZCB7XHJcbiAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gIHBhZGRpbmctcmlnaHQ6IDA7XHJcbn1cclxuXHJcbi5jb250ZW50LXdyYXBwZXItLW5hcnJvdyB7XHJcbiAgbWF4LXdpZHRoOiB3aWR0aChtYXgtd2lkdGgtbmFycm93KTtcclxufVxyXG5cclxuLmhpZGUge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5oaWRlLWJ5LWRlZmF1bHQge1xyXG4gICY6bm90KC5zaG93KSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuLmhyLWlubGluZSB7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIGZsZXg6IDE7XHJcbiAgLy8gd2l0aG91dCBhIGhlaWdodCwgdGhpcyB3aWxsIG5vdCBzaG93IGluIENocm9tZVxyXG4gIGhlaWdodDogMnB4O1xyXG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAmOjphZnRlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihncmF5LCB4eC1saWdodCk7XHJcbiAgICBjb250ZW50OiAnJztcclxuICAgIGhlaWdodDogMXB4O1xyXG4gICAgbGVmdDogMDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogY2FsYyg1MCUgLSAxcHgpO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBAbWVkaWEgcHJpbnQge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGNvbG9yKGJsYWNrKTtcclxuICAgICAgdG9wOiBjYWxjKDUwJSAtIDNweCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ubGF5b3V0LXR3by1jb2x1bW4ge1xyXG4gICR1bi1zdGFjay1hdDogdGFibGV0LWw7XHJcbiAgJHdlaWdodC1hdDogZGVza3RvcDtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdW4tc3RhY2stYXQpIHtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgfVxyXG4gICYtLWNlbnRlciB7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICB9XHJcbiAgJi0td3JhcCB7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAubGF5b3V0LWNvbHVtbiB7XHJcbiAgICAgIEBpbmNsdWRlIG1hdGNoLWd1dHRlci1zaXplKG1hcmdpbi1ib3R0b20sIDEpO1xyXG4gICAgfVxyXG4gIH1cclxuICAubGF5b3V0LWNvbHVtbiB7XHJcbiAgICAmOm9ubHktY2hpbGQge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHVuLXN0YWNrLWF0KSB7XHJcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDI1cHgpO1xyXG4gICAgfVxyXG4gIH1cclxuICAubGF5b3V0LWNvbHVtbi0tbWFyZ2luLWwge1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdW4tc3RhY2stYXQpIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gNTBweCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ubGF5b3V0LXR3by1jb2x1bW4tLXdlaWdodGVkIHtcclxuICAkdW4tc3RhY2stYXQ6IHRhYmxldC1sO1xyXG4gICR3ZWlnaHQtYXQ6IGRlc2t0b3A7XHJcbiAgLmxheW91dC1jb2x1bW4ge1xyXG4gICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHdlaWdodC1hdCkge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMTAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ub2Zmc2NyZWVuIHtcclxuICBAaW5jbHVkZSBvZmZzY3JlZW47XHJcbn1cclxuXHJcbi5wYWdpbmF0aW9uLW5hdiB7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGhlaWdodDogNDBweDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAubGluayB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKGNvbG9yKGJsYWNrKSwgLjM1KTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgaGVpZ2h0OiA4cHg7XHJcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7XHJcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLW91dCwgYm9yZGVyLWNvbG9yIC4ycyBlYXNlLW91dDtcclxuICAgIHdpZHRoOiA4cHg7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgIGFuaW1hdGlvbjogcHVsc2UgLjJzIGVhc2Utb3V0IDE7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGJsYWNrKTtcclxuICAgICAgYm9yZGVyLWNvbG9yOiBjb2xvcihibGFjayk7XHJcbiAgICB9XHJcbiAgICAudGV4dCB7XHJcbiAgICAgIEBpbmNsdWRlIG9mZnNjcmVlbjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5wYWdpbmF0aW9uLW5hdi0tcmV2ZXJzZWQge1xyXG4gIC5saW5rIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoY29sb3Iod2hpdGUpLCAuMzUpO1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSk7XHJcbiAgICAgIGJvcmRlci1jb2xvcjogY29sb3Iod2hpdGUpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLnRleHQtY2VudGVyIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi8vXHJcbi8vIGJ5IGF0dHJpYnV0ZSwgYWxwaGFiZXRpY2FsXHJcbi8vXHJcblxyXG5bdi1jbG9ha10ge1xyXG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1pbXBvcnRhbnRcclxufVxyXG4iLCIvL1xyXG4vLyBjb3JlIChvcHRpb25hbCkgbG9hZGVyXHJcbi8vXHJcblxyXG4uZWxsaXBzaXMtbG9hZGVyIHtcclxuICAkYW5pbWF0aW9uLWR1cmF0aW9uOiAxLjVzO1xyXG4gICRzaXplOiA2cHg7XHJcbiAgLmRvdCB7XHJcbiAgICBhbmltYXRpb24tZHVyYXRpb246ICRhbmltYXRpb24tZHVyYXRpb247XHJcbiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBlbGxpcHNpcy1sb2FkZXI7XHJcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlKG91dC1xdWFkKTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGJsdWUpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgaGVpZ2h0OiAkc2l6ZTtcclxuICAgIG1hcmdpbi1sZWZ0OiAkc2l6ZSAvIDY7XHJcbiAgICBtYXJnaW4tcmlnaHQ6ICRzaXplIC8gNjtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICB3aWR0aDogJHNpemU7XHJcbiAgICAmOm50aC1jaGlsZCgyKSB7XHJcbiAgICAgIGFuaW1hdGlvbi1kZWxheTogJGFuaW1hdGlvbi1kdXJhdGlvbiAvIDU7XHJcbiAgICB9XHJcbiAgICAmOm50aC1jaGlsZCgzKSB7XHJcbiAgICAgIGFuaW1hdGlvbi1kZWxheTogJGFuaW1hdGlvbi1kdXJhdGlvbiAvIDUgKiAyO1xyXG4gICAgfVxyXG4gIH1cclxuICAudGV4dCB7XHJcbiAgICBAaW5jbHVkZSBvZmZzY3JlZW47XHJcbiAgfVxyXG59XHJcblxyXG4uZWxsaXBzaXMtbG9hZGVyLS1yZXZlcnNlZCB7XHJcbiAgLmRvdCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSk7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGVsbGlwc2lzLWxvYWRlciB7XHJcbiAgMCUge1xyXG4gICAgb3BhY2l0eTogLjU7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlKC41KTtcclxuICB9XHJcbiAgMzUlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gIH1cclxuICAxMDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBjb3JlIChvcHRpb25hbCkgbW9kYWxcclxuLy9cclxuXHJcbi5tb2RhbCB7XHJcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHdoaXRlKTtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICBsZWZ0OiAwO1xyXG4gIG1hcmdpbjogYXV0bztcclxuICBtYXgtaGVpZ2h0OiAxMDAlO1xyXG4gIG1heC13aWR0aDogNTAwcHg7XHJcbiAgb3BhY2l0eTogMDtcclxuICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gIHBhZGRpbmctYm90dG9tOiA0MHB4O1xyXG4gIHBhZGRpbmctbGVmdDogMjBweDtcclxuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xyXG4gIHBhZGRpbmctdG9wOiAyMHB4O1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICByaWdodDogMDtcclxuICB0b3A6IDA7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwcHgpO1xyXG4gIHRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gLjJzIGVhc2Utb3V0LCB2aXNpYmlsaXR5IDBzIC4ycztcclxuICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgei1pbmRleDogei1pbmRleChtb2RhbCk7XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcclxuICAgIG1heC1oZWlnaHQ6IDk1dmg7XHJcbiAgICBtYXgtd2lkdGg6IDcwMHB4O1xyXG4gICAgdG9wOiAyLjV2aDtcclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcclxuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xyXG4gIH1cclxuICAmLnNob3cge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICAgIHRyYW5zaXRpb246IHZpc2liaWxpdHkgMHMsIG9wYWNpdHkgLjJzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gLjJzIGVhc2Utb3V0O1xyXG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICB9XHJcbiAgLmhlYWRpbmcge1xyXG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUoaCk7XHJcbiAgICBjb2xvcjogY29sb3IoYmx1ZSk7XHJcbiAgICBmb250LXdlaWdodDogMzAwO1xyXG4gICAgbGluZS1oZWlnaHQ6IGxpbmUtaGVpZ2h0KHApO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgIHBhZGRpbmctbGVmdDogMjBweDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZS14bCkge1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ubW9kYWwgLmZvcm0tY29udGFpbmVyIHtcclxuICBtYXJnaW4tYm90dG9tOiAwO1xyXG59XHJcblxyXG4ubW9kYWwtY29sdW1uIHtcclxuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XHJcbiAgICBmbGV4LWJhc2lzOiBjYWxjKDUwJSAtIDEwcHgpO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICB9XHJcbiAgJi5jaGVja2VkIHtcclxuICAgIC5taXJyb3ItY2hlY2tlZCB7XHJcbiAgICAgIGFuaW1hdGlvbjogZmxhc2ggLjJzIGVhc2Utb3V0O1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogLjFzO1xyXG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5tb2RhbC1jb2x1bW4tLWZ1bGwge1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XHJcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xyXG4gIH1cclxufVxyXG5cclxuLm1vZGFsLXJvdyB7XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gIH1cclxuICAuZm9ybS1tb2R1bGUge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgfVxyXG4gIC5oaWRlLWlmLXVuY2hlY2tlZCB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuICAubWlycm9yLWNoZWNrZWQge1xyXG4gICAgb3BhY2l0eTogLjM1O1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgZWFzZS1vdXQ7XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIGNvcmUgKG9wdGlvbmFsKSBvdmVybGF5XHJcbi8vXHJcblxyXG4ub3ZlcmxheSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoYmxhY2spO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBsZWZ0OiAwO1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICB0b3A6IDA7XHJcbiAgdHJhbnNpdGlvbjogLjJzIG9wYWNpdHkgZWFzZS1vdXQsIDBzIHZpc2liaWxpdHkgLjJzO1xyXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICB3aWR0aDogMTAwJTtcclxuICB6LWluZGV4OiB6LWluZGV4KG92ZXJsYXkpO1xyXG4gICYuaW52aXNpYmxlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIH1cclxuICAmLmxpZ2h0IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHdoaXRlKTtcclxuICAgICYuc2hvdyB7XHJcbiAgICAgIG9wYWNpdHk6IC45NTtcclxuICAgIH1cclxuICB9XHJcbiAgJi5zaG93IHtcclxuICAgIG9wYWNpdHk6IC44O1xyXG4gICAgdHJhbnNpdGlvbjogMHMgdmlzaWJpbGl0eSwgLjJzIG9wYWNpdHkgZWFzZS1vdXQ7XHJcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gIH1cclxufVxyXG5cclxuW2RhdGEtYmVoYXZpb3J+PSdibHVyLWJlaGluZC1vdmVybGF5J10ge1xyXG4gIHRyYW5zaXRpb246IGZpbHRlciAuMnMgZWFzZS1vdXQ7XHJcbiAgJi5ibHVycmVkIHtcclxuICAgIGZpbHRlcjogYmx1cig1cHgpO1xyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBjb3JlIChvcHRpb25hbCkgZnVsbCBzY3JlZW4gbW9kYWxcclxuLy9cclxuXHJcbi5wcm9jZXNzaW5nLW1vZGFsIHtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHdoaXRlKTtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIGxlZnQ6IDA7XHJcbiAgb3BhY2l0eTogMDtcclxuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgcGFkZGluZy1yaWdodDogMjBweDtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgdG9wOiAwO1xyXG4gIHRyYW5zZm9ybTogc2NhbGUoMik7XHJcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNHMgZWFzaW5nKG91dC1leHBvKSwgdHJhbnNmb3JtIC40cyBlYXNpbmcob3V0LWV4cG8pLCB2aXNpYmlsaXR5IDBzIC40cztcclxuICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgei1pbmRleDogei1pbmRleChtb2RhbCk7XHJcbiAgJi5zaG93IHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgdHJhbnNpdGlvbjogdmlzaWJpbGl0eSAwcywgb3BhY2l0eSAuNHMgZWFzZS1vdXQsIHRyYW5zZm9ybSAuNHMgZWFzZS1vdXQ7XHJcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gIH1cclxuICAuYnV0dG9uLFxyXG4gIC5idG4ge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMzVweDtcclxuICAgICYuaGlkZGVuIHtcclxuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgfVxyXG4gIH1cclxuICAuaGVhZGluZyB7XHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwLXhsKTtcclxuICAgIGNvbG9yOiBjb2xvcihncmF5KTtcclxuICAgIGxpbmUtaGVpZ2h0OiBsaW5lLWhlaWdodChwLXRpZ2h0KTtcclxuICAgIG1hcmdpbi1ib3R0b206IDIuNWVtO1xyXG4gICAgbWF4LXdpZHRoOiAxN2VtO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIH1cclxuICAuaW1nIHtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoemVybywgdGFibGV0KSB7XHJcbiAgICAgIHdpZHRoOiAxNTBweDtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0LCBkZXNrdG9wKSB7XHJcbiAgICAgIHdpZHRoOiAyMjVweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gY29yZSBwcm9kdWN0IGNsYWltIHN0YXRlbWVudCAob3B0aW9uYWwpXHJcbi8vXHJcblxyXG4ucHJvZHVjdC1jbGFpbS1zdGF0ZW1lbnQge1xyXG4gIEBpbmNsdWRlIG1hdGNoLWd1dHRlci1zaXplKG1hcmdpbi1ib3R0b20gbWFyZ2luLXRvcCwgMS41KTtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwLXh4cyk7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgY29sb3Iod2hpdGUsIG9mZik7XHJcbiAgbGluZS1oZWlnaHQ6IGxpbmUtaGVpZ2h0KHAtdGlnaHQpO1xyXG4gIG1hcmdpbi1ib3R0b206IGxpbmUtaGVpZ2h0KHApO1xyXG4gIG1hcmdpbi10b3A6IGxpbmUtaGVpZ2h0KHApO1xyXG4gIHBhZGRpbmc6IGxpbmUtaGVpZ2h0KHAtdGlnaHQpIC8gMS41IGxpbmUtaGVpZ2h0KHAtdGlnaHQpO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAmOmVtcHR5IHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIGNvcmUgKG9wdGlvbmFsKSBwcm9kdWN0IHRhYmxlXHJcbi8vXHJcblxyXG4ucHJvZHVjdHMtZW1wdHktY2FydCB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUocC1zKTtcclxuICBjb2xvcjogY29sb3IoZ3JheSk7XHJcbiAgbGluZS1oZWlnaHQ6IGxpbmUtaGVpZ2h0KHApO1xyXG4gIHBhZGRpbmctYm90dG9tOiA0ZW07XHJcbiAgcGFkZGluZy1sZWZ0OiAxLjVlbTtcclxuICBwYWRkaW5nLXJpZ2h0OiAxLjVlbTtcclxuICBwYWRkaW5nLXRvcDogNGVtO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAuaGVhZGluZyB7XHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwKTtcclxuICAgIGNvbG9yOiBjb2xvcihibGFjaywgbmVhcik7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IGxldHRlci1zcGFjaW5nKGV4cGFuZGVkKTtcclxuICAgIG1hcmdpbi1ib3R0b206IC4zZW07XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIH1cclxuICAuYnRuLFxyXG4gIC5idXR0b24ge1xyXG4gICAgbWFyZ2luLXRvcDogMmVtO1xyXG4gIH1cclxufVxyXG5cclxuLnByb2R1Y3RzLXRhYmxlIHtcclxuICAkY2VsbC1wYWRkaW5nLWJvdHRvbTogMjBweDtcclxuICAkY2VsbC1wYWRkaW5nLXRvcDogMTVweDtcclxuICB3aWR0aDogMTAwJTtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcclxuICB9XHJcbiAgdGQsXHJcbiAgdGgge1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XHJcbiAgfVxyXG4gIC5saW5lLTEge1xyXG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUocCk7XHJcbiAgICBjb2xvcjogY29sb3IoYmxhY2ssIG5lYXIpO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAudWktaWNvbiB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgbWFyZ2luLWJvdHRvbTogLTE0cHg7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XHJcbiAgICAgIG1hcmdpbi10b3A6IC0xNHB4O1xyXG4gICAgfVxyXG4gICAgLnVpLWljb24tc3Vic2NyaXB0aW9uIHtcclxuICAgICAgZmlsbDogY29sb3Ioc3BlY2lhbCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5saW5lLTIge1xyXG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUocC1zKTtcclxuICAgIGNvbG9yOiBjb2xvcihncmF5KTtcclxuICAgIG1hcmdpbi10b3A6IDZweDtcclxuICAgICYtLWNob2ljZSB7XHJcbiAgICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKHAteHhzKTtcclxuICAgICAgY29sb3I6IGNvbG9yKGJsdWUpO1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIC4ycyBlYXNlLW91dDtcclxuICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgY29sb3I6IGNvbG9yKGJsdWUsIGRhcmspO1xyXG4gICAgICAgIG91dGxpbmU6IDA7XHJcbiAgICAgIH1cclxuICAgICAgJjpob3ZlcixcclxuICAgICAgJjphY3RpdmUge1xyXG4gICAgICAgIGNvbG9yOiBjb2xvcihibHVlLCBkYXJrKTtcclxuICAgICAgICAuY2FyZXQge1xyXG4gICAgICAgICAgYW5pbWF0aW9uOiB0ZWV0ZXItcmlnaHQgLjJzIGxpbmVhciAxO1xyXG4gICAgICAgICAgZmlsbDogY29sb3IoYmx1ZSwgZGFyayk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLS1sYWJlbCB7XHJcbiAgICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKHAteHhzKTtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIH1cclxuICAgICYtLXJlYWQtb25seSB7XHJcbiAgICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKHAteHhzKTtcclxuICAgIH1cclxuICAgICYuYSB7XHJcbiAgICAgIGNvbG9yOiBjb2xvcihncmF5KTtcclxuICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjJzIGVhc2Utb3V0O1xyXG4gICAgICAmOmhvdmVyLFxyXG4gICAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgY29sb3I6IGNvbG9yKGJsdWUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5wcmljZS1jb250YWluZXIge1xyXG4gICAgcGFkZGluZy1ib3R0b206ICRjZWxsLXBhZGRpbmctYm90dG9tO1xyXG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcclxuICAgIHBhZGRpbmctdG9wOiAkY2VsbC1wYWRkaW5nLXRvcDtcclxuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgd2lkdGg6IDcwcHg7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHplcm8sIG1vYmlsZS1sKSB7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4gICAgfVxyXG4gICAgJi5oYXMtZnJlcXVlbmN5IHtcclxuICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcclxuICAgICAgLnNlbGVjdC13cmFwcGVyIHtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcclxuICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEycHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuYmFkZ2Uge1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IGxpbmUtaGVpZ2h0KHAtdGlnaHQpIC8gNDtcclxuICAgIH1cclxuICAgIC5iZXN0LXByaWNlIHtcclxuICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGFuaW1hdGlvbjogMnMgdGFkYS1wYXVzZSBpbmZpbml0ZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmNhcmV0IHtcclxuICAgICAgZmlsbDogY29sb3IoZ3JheSk7XHJcbiAgICAgIGhlaWdodDogOHB4O1xyXG4gICAgICBtYXJnaW4tbGVmdDogNHB4O1xyXG4gICAgICB0cmFuc2l0aW9uOiBmaWxsIC4ycyBlYXNlLW91dDtcclxuICAgICAgd2lkdGg6IDhweDtcclxuICAgIH1cclxuICAgIC5mcmVxdWVuY3kge1xyXG4gICAgICBoZWlnaHQ6IDFlbTtcclxuICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcclxuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICAgd2hpdGUtc3BhY2U6IHByZTtcclxuICAgIH1cclxuICAgIC5saW5lLTEge1xyXG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAvLyBvbiBzbWFsbCBtb2JpbGUgc2l6ZXMgc3RhY2sgdGhlIHB2IGJhZGdlIHNvIHdlIGhhdmUgcGxlbnR5IG9mIHJvb21cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh6ZXJvLCBtb2JpbGUtcykge1xyXG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvO1xyXG4gICAgICAgIC5iYWRnZSB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiBsaW5lLWhlaWdodChwKSAvIDI7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAucHJlLWRpc2NvdW50IHtcclxuICAgICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUocC14cyk7XHJcbiAgICAgIGNvbG9yOiBjb2xvcihncmF5KTtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDNweDtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5wcm9kdWN0LWFoZW0tY29udGFpbmVyIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xyXG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICB9XHJcbiAgLnByb2R1Y3QtYmFkZ2UtY29udGFpbmVyIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICB9XHJcbiAgLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyIHtcclxuICAgIGhlaWdodDogNzBweDtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICB3aWR0aDogNzBweDtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoemVybywgbW9iaWxlLWwpIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcC1sKSB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuICAgICAgd2lkdGg6IDgwcHg7XHJcbiAgICB9XHJcbiAgICBpbWcge1xyXG4gICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxuICAucHJvZHVjdC10ZXh0LWNvbnRhaW5lciB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogJGNlbGwtcGFkZGluZy1ib3R0b207XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xyXG4gICAgcGFkZGluZy10b3A6ICRjZWxsLXBhZGRpbmctdG9wO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQsIGRlc2t0b3AtbCkge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5wcm9kdWN0LXJvdyB7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgY29sb3IoZ3JheSwgeHgtbGlnaHQpO1xyXG4gICAgJjpsYXN0LW9mLXR5cGUge1xyXG4gICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgfVxyXG4gICAgJi5yZW1vdmluZyB7XHJcbiAgICAgIHRkLFxyXG4gICAgICB0aCB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC40cyBlYXNlLW91dDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAucXVhbnRpdHktY29udGFpbmVyIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAkY2VsbC1wYWRkaW5nLWJvdHRvbTtcclxuICAgIHBhZGRpbmctbGVmdDogMjBweDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcbiAgICBwYWRkaW5nLXRvcDogJGNlbGwtcGFkZGluZy10b3A7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAubGluZS0yLS1sYWJlbCB7XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0O1xyXG4gICAgfVxyXG4gIH1cclxuICAuc2VsZWN0LXdyYXBwZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgLmRlY295IHtcclxuICAgICAgaGVpZ2h0OiAxZW07XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICAgIHdoaXRlLXNwYWNlOiBwcmU7XHJcbiAgICB9XHJcbiAgICBzZWxlY3Qge1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgei1pbmRleDogMjtcclxuICAgICAgLmlvcyAmIHtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgIH1cclxuICAgICAgJjpmb2N1cyArIC5kZWNveSB7XHJcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgICAgICBjb2xvcjogY29sb3IoYmx1ZSwgZGFyayk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLnNwaW5uZXItY29udGFpbmVyIHtcclxuICAgIGhlaWdodDogNjBweDtcclxuICAgIHBhZGRpbmctYm90dG9tOiAkY2VsbC1wYWRkaW5nLWJvdHRvbTtcclxuICAgIHBhZGRpbmctbGVmdDogMjBweDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcbiAgICBwYWRkaW5nLXRvcDogJGNlbGwtcGFkZGluZy10b3A7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB3aWR0aDogNC41ZW07XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHplcm8sIG1vYmlsZS1sKSB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcclxuICAgIH1cclxuICAgIC5zcGlubmVyIHtcclxuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5wcm9kdWN0cy10YWJsZSAuYmFkZ2Utcm93IHtcclxuICB0aCB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgfVxyXG4gIC5iYWRnZSB7XHJcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xyXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBsaW5lLWhlaWdodDogMS41ZW07XHJcbiAgfVxyXG59XHJcblxyXG4vLyBAVE9ETyBkb2VzIHRoaXMgd29yaz8gSXNuJ3QgdGhlIC5yZXF1aXJlLXNzbyBhbHdheXMgbmVzdGVkIGluIHRoZSAucHJvZHVjdHMtdGFibGU/XHJcbi5wcm9kdWN0cy10YWJsZSArIC5yZXF1aXJlLXNzbyB7XHJcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGNvbG9yKGdyYXksIHh4LWxpZ2h0KTtcclxufVxyXG5cclxuLnJlcXVpcmUtc3NvIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSwgbmVhcik7XHJcbiAgcGFkZGluZy10b3A6IDA7XHJcbn1cclxuXHJcbi5yZXF1aXJlLXNzbyAubGluZS0yLS1sYWJlbCB7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLnJlcXVpcmUtc3NvIC5zcGlubmVyIHtcclxuICBpbnB1dCxcclxuICAubWludXMsXHJcbiAgLnBsdXMge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUpO1xyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBjb3JlIChvcHRpb25hbCkgc3RhdHVzIG1lc3NhZ2VcclxuLy9cclxuXHJcbi5zdGF0dXMtbWVzc2FnZSB7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxuICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMDBweDtcclxuICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgfVxyXG4gIC5oZWFkaW5nIHtcclxuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKHAteGwpO1xyXG4gICAgY29sb3I6IGNvbG9yKGdyYXkpO1xyXG4gICAgbGluZS1oZWlnaHQ6IGxpbmUtaGVpZ2h0KHAtdGlnaHQpO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMi41ZW07XHJcbiAgICBtYXgtd2lkdGg6IDI0ZW07XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgfVxyXG4gIC5pbWcge1xyXG4gICAgaGVpZ2h0OiAyMjVweDtcclxuICAgIHdpZHRoOiAyMjVweDtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XHJcbiAgICAgIGhlaWdodDogMjUwcHg7XHJcbiAgICAgIHdpZHRoOiAyNTBweDtcclxuICAgIH1cclxuICB9XHJcbiAgLnAge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBjb3JlIHR5cGUsIGJ5IHRhZywgYWxwaGFiZXRpY2FsXHJcbi8vXHJcblxyXG5hIHtcclxuICAmW2RhdGEtYmVoYXZpb3JdIHtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICB9XHJcbn1cclxuXHJcbmJvZHkge1xyXG4gIEBpbmNsdWRlIGZvbnQtc21vb3RoaW5nO1xyXG4gIGNvbG9yOiBjb2xvcihncmF5KTtcclxuICBmb250LWRpc3BsYXk6IHN3YXA7XHJcbiAgZm9udC1mYW1pbHk6IGZvbnQtZmFtaWx5KHNhbnMpO1xyXG59XHJcblxyXG4vL1xyXG4vLyBjb3JlIHR5cGUsIHNpemluZyBkZWJ1ZyBjbGFzc2VzXHJcbi8vICrCoG1lYW50IGZvciBkZWJ1Z2dpbmcgZm9udCBzaXplcywgbm90IHByb2R1Y3Rpb24gdXNhZ2VcclxuLy9cclxuXHJcbi5mb250LXNpemUtZGVidWcge1xyXG4gIGgxLFxyXG4gIGgyLFxyXG4gIGgzLFxyXG4gIGg0LFxyXG4gIGg1LFxyXG4gIGg2LFxyXG4gIHAge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xyXG4gIH1cclxuICBwIHtcclxuICAgIGxpbmUtaGVpZ2h0OiBsaW5lLWhlaWdodChwKTtcclxuICB9XHJcbiAgQGVhY2ggJHJlc3BvbnNpdmUtZm9udC1zaXplLCAkbGlzdCBpbiAkcmVzcG9uc2l2ZS1mb250LXNpemVzIHtcclxuICAgIC4jeyRyZXNwb25zaXZlLWZvbnQtc2l6ZX0ge1xyXG4gICAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZSgkcmVzcG9uc2l2ZS1mb250LXNpemUpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy9cclxuLy8gY29yZSB0eXBlLCBieSBjbGFzcywgYWxwaGFiZXRpY2FsXHJcbi8vXHJcblxyXG4uYWhlbSB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUocC14eHMpO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBsaW5lLWhlaWdodDogbGluZS1oZWlnaHQocCk7XHJcbiAgJi5wZW5kaW5nIHtcclxuICAgIGFuaW1hdGlvbjogdXBkYXRpbmcgMnMgZWFzZS1vdXQgaW5maW5pdGU7XHJcbiAgfVxyXG4gIC5hIHtcclxuICAgIGNvbG9yOiBjb2xvcihibHVlKTtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gIH1cclxuICAuYmFkZ2Uge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAuOGVtO1xyXG4gIH1cclxufVxyXG5cclxuLmZvb3Rub3RlIHtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwLXh4cyk7XHJcbiAgY29sb3I6IGNvbG9yKGdyYXkpO1xyXG4gIGxpbmUtaGVpZ2h0OiBsaW5lLWhlaWdodChwKTtcclxuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgJi5hZnRlci1mb3JtIHtcclxuICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4uaGVhZGluZy1wYWdlIHtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShoKTtcclxuICBjb2xvcjogY29sb3IoYmx1ZSk7XHJcbiAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICBsaW5lLWhlaWdodDogbGluZS1oZWlnaHQoaCk7XHJcbiAgbWFyZ2luLWJvdHRvbTogMmVtO1xyXG4gIG1hcmdpbi10b3A6IDFlbTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgJi0tbWFyZ2luLXRvcCB7XHJcbiAgICBtYXJnaW4tdG9wOiAyZW07XHJcbiAgfVxyXG4gICYtLXJldmVyc2VkIHtcclxuICAgIGNvbG9yOiBjb2xvcih3aGl0ZSk7XHJcbiAgfVxyXG59XHJcblxyXG4uaGlkZGVuLWF0LXByaW50IHtcclxuICBAbWVkaWEgcHJpbnQge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi5zZWN0aW9uLWhlYWRpbmctY29udGFpbmVyIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgfVxyXG4gIC8vIHRoaXMgbW9kaWZpZXIgaGFzIHRvIGNvbWUgYWZ0ZXIgdGhlIGJyZWFrcG9pbnQgZGVjbGFyYXRpb24gb3IgaXQgd29uJ3Qgd29ya1xyXG4gIC5zZWN0aW9uLWhlYWRpbmcge1xyXG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUocC1zKTtcclxuICAgIGNvbG9yOiBjb2xvcihncmF5LCBkYXJrKTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogLjAyZW07XHJcbiAgICBAbWVkaWEgcHJpbnQge1xyXG4gICAgICBjb2xvcjogY29sb3IoYmxhY2spO1xyXG4gICAgICBmb250LXNpemU6IDlwdDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5zZWN0aW9uLWhlYWRpbmctY29udGFpbmVyLS10aWdodCB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICB9XHJcbn1cclxuXHJcbi5zdWItaGVhZGluZy1wYWdlIHtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShoLXh4cyk7XHJcbiAgbGluZS1oZWlnaHQ6IGxpbmUtaGVpZ2h0KHApO1xyXG4gIG1hcmdpbi1ib3R0b206IDFlbTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgLmlkLW51bWJlciB7XHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwLXhsKTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgfVxyXG4gIC5oZWFkaW5nLXBhZ2UgKyAmIHtcclxuICAgIG1hcmdpbi10b3A6IC0xLjVlbTtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XHJcbiAgICAgIG1hcmdpbi10b3A6IC0yLjVlbTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi50ZXh0LWNlbnRlciB7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcbiIsIi8vXHJcbi8vIGNvcmUgKG9wdGlvbmFsKSB1aS1pY29uXHJcbi8vXHJcblxyXG4vLyBiYXNlXHJcbi51aS1pY29uIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgZmlsbDogY29sb3IoZ3JheSk7XHJcbiAgaGVpZ2h0OiA0MHB4O1xyXG4gIHRyYW5zaXRpb246IGZpbGwgLjJzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gLjJzIGVhc2Utb3V0O1xyXG4gIHdpZHRoOiA0MHB4O1xyXG4gIC51aS1pY29uLWJ1dHRvbiAmIHtcclxuICAgIGZpbGw6IGNvbG9yKGJsdWUpO1xyXG4gICAgJjphY3RpdmUsXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgZmlsbDogY29sb3IoYmx1ZSwgZGFyayk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC51aS1pY29uLWJ1dHRvbltkaXNhYmxlZF0gJiB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgZm9yY2UtYXR0cmlidXRlLW5lc3RpbmdcclxuICAgICYsXHJcbiAgICAmOmFjdGl2ZSxcclxuICAgICY6aG92ZXIge1xyXG4gICAgICBmaWxsOiBjb2xvcihncmF5LCB4LWxpZ2h0KTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIG1vZGlmaWVyc1xyXG4udWktaWNvbi0tcmV2ZXJzZWQge1xyXG4gIGZpbGw6IGNvbG9yKHdoaXRlKTtcclxuICAudWktaWNvbi1idXR0b24gJiB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGZpbGw6IGNvbG9yKHdoaXRlKTtcclxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2Utb3V0O1xyXG4gICAgJjpob3ZlcixcclxuICAgICY6YWN0aXZlIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoYmx1ZSk7XHJcbiAgICAgIGZpbGw6IGNvbG9yKHdoaXRlKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi51aS1pY29uLS1kYXJrIHtcclxuICBmaWxsOiBjb2xvcihibGFjaywgbmVhcik7XHJcbiAgJjpob3ZlciB7XHJcbiAgICBmaWxsOiBibGFjaztcclxuICB9XHJcbn1cclxuXHJcbi51aS1pY29uLS1zIHtcclxuICBoZWlnaHQ6IDI0cHg7XHJcbiAgd2lkdGg6IDI0cHg7XHJcbn1cclxuXHJcbi51aS1pY29uLS1tIHtcclxuICBoZWlnaHQ6IDMycHg7XHJcbiAgd2lkdGg6IDMycHg7XHJcbn1cclxuXHJcbi51aS1pY29uLS1sIHtcclxuICBoZWlnaHQ6IDQ4cHg7XHJcbiAgd2lkdGg6IDQ4cHg7XHJcbn1cclxuXHJcbi51aS1pY29uLS14bCB7XHJcbiAgaGVpZ2h0OiA2NHB4O1xyXG4gIHdpZHRoOiA2NHB4O1xyXG59XHJcblxyXG4udWktaWNvbi0teHhsIHtcclxuICBoZWlnaHQ6IDgwcHg7XHJcbiAgd2lkdGg6IDgwcHg7XHJcbn1cclxuXHJcbi51aS1pY29uLS1iZy1yb3VuZCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYShjb2xvcih3aGl0ZSwgbmVhciksIC44NSk7XHJcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0O1xyXG4gICY6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoZ3JheSwgeHgtbGlnaHQpO1xyXG4gIH1cclxufVxyXG5cclxuLy8gQFRPRE8gTHVjYXMsIGRvIHdlIHdhbnQgdGhpcyB0byBiZSBhIG1peGluPyBhIGNsYXNzIHRvIHV0aWxpemUgdGhpczpcclxuLy8gaHR0cHM6Ly9jc3MtdHJpY2tzLmNvbS9jYXNjYWRpbmctc3ZnLWZpbGwtY29sb3IvXHJcbi8vIC51aS1pY29uLS1tYXRjaC1jb2xvciB7XHJcblxyXG4vLyB9XHJcblxyXG4vLyBsYXlvdXRcclxuLnVpLWljb24tY2hldnJvbiB7XHJcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XHJcbn1cclxuXHJcbi51aS1pY29uLWNoZXZyb24tLWxlZnQge1xyXG4gIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcclxufVxyXG5cclxuLnVpLWljb24tY2hldnJvbi0tcmlnaHQge1xyXG4gIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XHJcbn1cclxuXHJcbi51aS1pY29uLWNoZXZyb24tLXVwIHtcclxuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG59XHJcblxyXG4udWktaWNvbi1idXR0b24ge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlcjogMDtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIG91dGxpbmU6IDA7XHJcbiAgcGFkZGluZzogMDtcclxuICAmLnBvaW50ZXIsXHJcbiAgJltocmVmXSxcclxuICAmW2RhdGEtYmVoYXZpb3JdIHtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICB9XHJcbiAgJltkaXNhYmxlZF0ge1xyXG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gY29yZSAob3B0aW9uYWwpIHZhbmlsbGEgc3R5bGVzXHJcbi8vICogYWxwaGFiZXRpY2FsIGJ5IHRhZ1xyXG4vL1xyXG5cclxuYSB7XHJcbiAgQGluY2x1ZGUgdmFuaWxsYSB7XHJcbiAgICBjb2xvcjogY29sb3IoYmx1ZSk7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgIHRyYW5zaXRpb246IGNvbG9yIC4ycyBlYXNlLW91dDtcclxuICAgICY6aG92ZXIge1xyXG4gICAgICBjb2xvcjogY29sb3IoYmx1ZSwgZGFyayk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5hYmJyIHtcclxuICBAaW5jbHVkZSB2YW5pbGxhIHtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbmFjcm9ueW0ge1xyXG4gIEBpbmNsdWRlIHZhbmlsbGEge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMDtcclxuICAgIGN1cnNvcjogaW5oZXJpdDtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbmIsXHJcbnN0cm9uZyB7XHJcbiAgQGluY2x1ZGUgdmFuaWxsYSB7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gIH1cclxufVxyXG5cclxuZGwge1xyXG4gIEBpbmNsdWRlIHZhbmlsbGEge1xyXG4gICAgZGQge1xyXG4gICAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShwKTtcclxuICAgICAgY29sb3I6IGNvbG9yKGdyYXksIHgtZGFyayk7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBsaW5lLWhlaWdodChwLXRpZ2h0KTtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMS4yNWVtO1xyXG4gICAgICBAbWVkaWEgcHJpbnQge1xyXG4gICAgICAgIGNvbG9yOiBjb2xvcihibGFjayk7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMHB0O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBkdCB7XHJcbiAgICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKHAteHhzKTtcclxuICAgICAgY29sb3I6IGNvbG9yKGdyYXksIGxpZ2h0KTtcclxuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogLjJlbTtcclxuICAgICAgQG1lZGlhIHByaW50IHtcclxuICAgICAgICBmb250LXNpemU6IDhwdDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuaDEge1xyXG4gIEBpbmNsdWRlIHZhbmlsbGEge1xyXG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUoaC14bCk7XHJcbiAgfVxyXG59XHJcblxyXG5oMiB7XHJcbiAgQGluY2x1ZGUgdmFuaWxsYSB7XHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShoLWwpO1xyXG4gIH1cclxufVxyXG5cclxuaDMge1xyXG4gIEBpbmNsdWRlIHZhbmlsbGEge1xyXG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUoaCk7XHJcbiAgfVxyXG59XHJcblxyXG5oNCB7XHJcbiAgQGluY2x1ZGUgdmFuaWxsYSB7XHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShoLXMpO1xyXG4gIH1cclxufVxyXG5cclxuaDUge1xyXG4gIEBpbmNsdWRlIHZhbmlsbGEge1xyXG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUoaC14cyk7XHJcbiAgfVxyXG59XHJcblxyXG5oNiB7XHJcbiAgQGluY2x1ZGUgdmFuaWxsYSB7XHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZShoLXh4cyk7XHJcbiAgfVxyXG59XHJcblxyXG5wIHtcclxuICBAaW5jbHVkZSB2YW5pbGxhIHtcclxuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKHApO1xyXG4gICAgbGluZS1oZWlnaHQ6IGxpbmUtaGVpZ2h0KHApO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogbGluZS1oZWlnaHQocCkgLyAyO1xyXG4gIH1cclxufVxyXG5cclxuc2VjdGlvbiB7XHJcbiAgQGluY2x1ZGUgdmFuaWxsYSB7XHJcbiAgICBAaW5jbHVkZSBtYXRjaC1ndXR0ZXItc2l6ZShtYXJnaW4tYm90dG9tIG1hcmdpbi10b3ApO1xyXG4gIH1cclxufVxyXG5cclxudWwge1xyXG4gIEBpbmNsdWRlIHZhbmlsbGEge1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZSBvdXRzaWRlO1xyXG4gICAgbGkge1xyXG4gICAgICBsaW5lLWhlaWdodDogbGluZS1oZWlnaHQocCk7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiAuNzVlbTtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAxZW07XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiAn4oCiJztcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgfVxyXG4gICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIHBheSBsb2NhbCBzdHlsZXNcclxuLy9cclxuXHJcbi5jYy10eXBlLW9wdGlvbnMge1xyXG4gIC5pbnB1dC1yYWRpbyArIC5kZWNveSB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kOiBjb2xvcihtaWRuaWdodCwgYmFzZSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5rZXkge1xyXG4gICAgY29sb3I6IGNvbG9yKGJsYWNrLCBuZWFyKTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgfVxyXG4gIC5yYWRpby1hbmQtbGFiZWwge1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICY6aG92ZXIge1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5yYWRpby1hbmQtbGFiZWwgLmN1c3RvbS1yYWRpbyB7XHJcbiAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgfVxyXG4gIC5yYWRpby13cmFwcGVyIHtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgbWF4LXdpZHRoOiA0NTVweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuICAucmFkaW8td3JhcHBlciBmaWVsZHNldCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xyXG4gIH1cclxuICAuc2VjdGlvbi1oZWFkaW5nIHtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgfVxyXG59XHJcblxyXG4uZW1wdHktY2FydCAubGF5b3V0LXR3by1jb2x1bW4ge1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIC8vIHdoZW4gaW4gYW4gZW1wdHkgY2FydCwgYWx3YXlzIHNob3cgdGhlIGNvbnRyb2xzIGZvciB0aGUgZmlyc3QgY29sdW1uXHJcbiAgLmNhcnQtc3VtbWFyeS1jb250cm9scy0xLWNvbCB7XHJcbiAgICBkaXNwbGF5OiBpbml0aWFsO1xyXG4gIH1cclxuICAubGF5b3V0LWNvbHVtbiB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDUlO1xyXG4gICAgcGFkZGluZy1yaWdodDogNSU7XHJcbiAgfVxyXG59XHJcblxyXG4uaGVhZGluZy1wYWdlIHtcclxuICBtYXJnaW4tdG9wOiAyZW07XHJcbn1cclxuXHJcbiJdfQ== */
